twntyx-css 1.0.3 → 1.0.6

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 (71) hide show
  1. package/llm/components/ai-perl.json +5 -12
  2. package/llm/components/all-components.json +13 -5
  3. package/llm/components/{banner-marketplace.json → banner-funding.json} +8 -8
  4. package/llm/components/breadcrumb.json +0 -1
  5. package/llm/components/button-container.json +1 -0
  6. package/llm/components/{card-assessment.json → card-draggable.json} +17 -25
  7. package/llm/components/chat-ai.json +100 -6
  8. package/llm/components/chat-footer.json +24 -3
  9. package/llm/components/checkmark.json +0 -1
  10. package/llm/components/command-palette.json +0 -1
  11. package/llm/components/countdown.json +1 -1
  12. package/llm/components/divider.json +1 -1
  13. package/llm/components/illustrations-library.json +1 -1
  14. package/llm/components/kbd.json +1 -1
  15. package/llm/components/key-value.json +2 -10
  16. package/llm/components/loader-symbol.json +0 -4
  17. package/llm/components/loader-text.json +2 -20
  18. package/llm/components/progress-bullet.json +0 -1
  19. package/llm/components/state.json +2 -1
  20. package/llm/components/stepper.json +1 -1
  21. package/llm/components/steps.json +6 -95
  22. package/llm/components/surface.json +2 -0
  23. package/llm/components/tabs.json +1 -0
  24. package/llm/components/{input-group.json → template-navbar.json} +28 -43
  25. package/llm/components/{empty-state.json → template-onboarding.json} +27 -25
  26. package/llm/components/template-stats.json +2 -2
  27. package/llm/components/text-input.json +8 -169
  28. package/llm/components/toast.json +0 -2
  29. package/llm/components/tooltip.json +1 -1
  30. package/llm/examples/ai-perl.html +1 -1
  31. package/llm/examples/banner-funding.html +1 -0
  32. package/llm/examples/card-draggable.html +1 -0
  33. package/llm/examples/chat-ai.html +1 -1
  34. package/llm/examples/chat-footer.html +1 -1
  35. package/llm/examples/key-value.html +1 -1
  36. package/llm/examples/loader-text.html +1 -1
  37. package/llm/examples/steps.html +1 -1
  38. package/llm/examples/template-navbar.html +1 -0
  39. package/llm/examples/template-onboarding.html +1 -0
  40. package/llm/examples/template-stats.html +1 -1
  41. package/llm/index.json +57 -84
  42. package/llm/patterns.json +2 -2
  43. package/llm/tokens.json +30 -30
  44. package/package.json +1 -1
  45. package/styles/animation.css +69 -47
  46. package/styles/colors.css +306 -90
  47. package/styles/countdown.css +15 -28
  48. package/styles/datepicker.css +8 -15
  49. package/styles/divider.css +1 -1
  50. package/styles/form.css +6 -8
  51. package/styles/globals.css +62 -64
  52. package/styles/key-value.css +4 -3
  53. package/styles/loader.css +0 -6
  54. package/styles/logotype.css +6 -6
  55. package/styles/progress.css +110 -108
  56. package/styles/scrollbar.css +2 -2
  57. package/styles/shared.css +17 -17
  58. package/styles/state.css +109 -97
  59. package/styles/stepper.css +10 -13
  60. package/styles/steps.css +2 -2
  61. package/styles/surface.css +74 -90
  62. package/styles/table.css +3 -3
  63. package/styles/toast.css +3 -5
  64. package/llm/components/navbar.json +0 -158
  65. package/llm/examples/banner-marketplace.html +0 -1
  66. package/llm/examples/card-assessment.html +0 -1
  67. package/llm/examples/empty-state.html +0 -1
  68. package/llm/examples/input-group.html +0 -1
  69. package/llm/examples/navbar.html +0 -1
  70. package/styles/empty-state.css +0 -48
  71. package/styles/navbar.css +0 -48
@@ -1,18 +1,11 @@
1
1
  {
2
2
  "id": "ai-perl",
3
- "name": "Perl",
4
- "status": "stable",
5
- "summary": "Animated AI loader with circular glow ring and letter pulse.",
3
+ "name": "Ai Perl",
4
+ "status": "preview",
5
+ "summary": "Documentation and contract metadata for Ai Perl in the twntyX design system.",
6
6
  "keywords": [
7
- "ai",
8
7
  "ai perl",
9
- "ai-perl",
10
- "animation",
11
- "generating",
12
- "loading",
13
- "overlay",
14
- "perl",
15
- "spinner"
8
+ "ai-perl"
16
9
  ],
17
10
  "sourcePaths": [
18
11
  "app/design-system/ai-perl/page.js",
@@ -75,7 +68,7 @@
75
68
  {
76
69
  "id": "canonical",
77
70
  "file": "examples/ai-perl.html",
78
- "description": "Minimal canonical Perl usage."
71
+ "description": "Minimal canonical Ai Perl usage."
79
72
  }
80
73
  ],
81
74
  "composition": {
@@ -49,27 +49,35 @@
49
49
  "class"
50
50
  ],
51
51
  "required": [],
52
- "dataAttributes": [
53
- "data-value"
54
- ],
52
+ "dataAttributes": [],
55
53
  "roles": [
54
+ "progressbar",
56
55
  "separator",
57
56
  "status"
58
57
  ],
59
58
  "aria": [
60
59
  "aria-current",
61
- "aria-label"
60
+ "aria-hidden",
61
+ "aria-label",
62
+ "aria-valuemax",
63
+ "aria-valuemin",
64
+ "aria-valuenow"
62
65
  ]
63
66
  },
64
67
  "a11y": {
65
68
  "interactive": false,
66
69
  "requiredRoles": [
70
+ "progressbar",
67
71
  "separator",
68
72
  "status"
69
73
  ],
70
74
  "requiredAria": [
71
75
  "aria-current",
72
- "aria-label"
76
+ "aria-hidden",
77
+ "aria-label",
78
+ "aria-valuemax",
79
+ "aria-valuemin",
80
+ "aria-valuenow"
73
81
  ],
74
82
  "keyboardSupport": [],
75
83
  "focusBehavior": "No keyboard interaction is required unless nested interactive children are introduced."
@@ -1,5 +1,5 @@
1
1
  {
2
- "id": "banner-marketplace",
2
+ "id": "banner-funding",
3
3
  "name": "Funding banner",
4
4
  "status": "preview",
5
5
  "summary": "A marketing banner component designed for promoting fundraising workflows and investor outreach actions.",
@@ -8,8 +8,8 @@
8
8
  "alert",
9
9
  "announcement",
10
10
  "banner",
11
- "banner marketplace",
12
- "banner-marketplace",
11
+ "banner funding",
12
+ "banner-funding",
13
13
  "capital raise",
14
14
  "fundraising",
15
15
  "investor",
@@ -19,17 +19,17 @@
19
19
  "promotion"
20
20
  ],
21
21
  "sourcePaths": [
22
- "app/design-system/banner-marketplace/page.js"
22
+ "app/design-system/banner-funding/page.js"
23
23
  ],
24
24
  "apiModel": "html-class",
25
- "baseClass": "banner-marketplace",
25
+ "baseClass": "banner-funding",
26
26
  "variants": [],
27
27
  "sizes": [],
28
28
  "states": [],
29
29
  "structure": {
30
30
  "rootElement": "div",
31
31
  "requiredClasses": [
32
- "banner-marketplace"
32
+ "banner-funding"
33
33
  ],
34
34
  "optionalClasses": [],
35
35
  "requiredChildren": [],
@@ -52,7 +52,7 @@
52
52
  "focusBehavior": "No keyboard interaction is required unless nested interactive children are introduced."
53
53
  },
54
54
  "dos": [
55
- "Apply the base class 'banner-marketplace' on the root element.",
55
+ "Apply the base class 'banner-funding' on the root element.",
56
56
  "Use documented modifiers for visual variants instead of ad-hoc custom classes.",
57
57
  "Keep semantic color usage aligned with token classes for light/dark support."
58
58
  ],
@@ -65,7 +65,7 @@
65
65
  "examples": [
66
66
  {
67
67
  "id": "canonical",
68
- "file": "examples/banner-marketplace.html",
68
+ "file": "examples/banner-funding.html",
69
69
  "description": "Minimal canonical Funding banner usage."
70
70
  }
71
71
  ],
@@ -21,7 +21,6 @@
21
21
  "assets/styles/command.css",
22
22
  "assets/styles/form-text-select.css",
23
23
  "assets/styles/menu.css",
24
- "assets/styles/navbar.css",
25
24
  "assets/styles/pagination.css",
26
25
  "assets/styles/progress.css",
27
26
  "assets/styles/steps.css",
@@ -109,6 +109,7 @@
109
109
  "core-ui-800",
110
110
  "core-white",
111
111
  "line-attention",
112
+ "line-brand",
112
113
  "line-default",
113
114
  "line-error",
114
115
  "line-focus",
@@ -1,39 +1,31 @@
1
1
  {
2
- "id": "card-assessment",
3
- "name": "Investor fit card",
2
+ "id": "card-draggable",
3
+ "name": "Draggable card",
4
4
  "status": "preview",
5
- "summary": "A versatile card component for displaying investor-fit insights, outreach criteria, and funding-readiness signals.",
5
+ "summary": "A versatile draggablecard component for displaying various items.",
6
6
  "keywords": [
7
7
  "card",
8
- "card assessment",
9
- "card-assessment",
10
- "criteria",
11
- "evaluation",
12
- "feedback",
13
- "fundraising",
14
- "investor",
15
- "investor fit",
16
- "outreach",
17
- "pipeline",
18
- "pitch call",
19
- "profile",
20
- "progress",
21
- "readiness",
22
- "results",
23
- "review"
8
+ "card draggable",
9
+ "card-draggable",
10
+ "drag and drop",
11
+ "draggable",
12
+ "items",
13
+ "list",
14
+ "reorderable",
15
+ "sortable"
24
16
  ],
25
17
  "sourcePaths": [
26
- "app/design-system/card-assessment/page.js"
18
+ "app/design-system/card-draggable/page.js"
27
19
  ],
28
20
  "apiModel": "html-class",
29
- "baseClass": "card-assessment",
21
+ "baseClass": "card-draggable",
30
22
  "variants": [],
31
23
  "sizes": [],
32
24
  "states": [],
33
25
  "structure": {
34
26
  "rootElement": "div",
35
27
  "requiredClasses": [
36
- "card-assessment"
28
+ "card-draggable"
37
29
  ],
38
30
  "optionalClasses": [],
39
31
  "requiredChildren": [],
@@ -64,7 +56,7 @@
64
56
  "focusBehavior": "No keyboard interaction is required unless nested interactive children are introduced."
65
57
  },
66
58
  "dos": [
67
- "Apply the base class 'card-assessment' on the root element.",
59
+ "Apply the base class 'card-draggable' on the root element.",
68
60
  "Use documented modifiers for visual variants instead of ad-hoc custom classes.",
69
61
  "Keep semantic color usage aligned with token classes for light/dark support."
70
62
  ],
@@ -77,8 +69,8 @@
77
69
  "examples": [
78
70
  {
79
71
  "id": "canonical",
80
- "file": "examples/card-assessment.html",
81
- "description": "Minimal canonical Investor fit card usage."
72
+ "file": "examples/card-draggable.html",
73
+ "description": "Minimal canonical Draggable card usage."
82
74
  }
83
75
  ],
84
76
  "composition": {
@@ -17,19 +17,64 @@
17
17
  "new message state"
18
18
  ],
19
19
  "sourcePaths": [
20
- "app/design-system/chat-ai/page.js"
20
+ "app/design-system/chat-ai/page.js",
21
+ "assets/styles/button.css",
22
+ "assets/styles/chat.css",
23
+ "assets/styles/form-text-select.css",
24
+ "assets/styles/panel.css",
25
+ "assets/styles/toast.css"
21
26
  ],
22
27
  "apiModel": "html-class",
23
28
  "baseClass": "chat-ai",
24
- "variants": [],
25
- "sizes": [],
26
- "states": [],
29
+ "variants": [
30
+ {
31
+ "name": "chat-secondary",
32
+ "className": "chat-secondary",
33
+ "description": "AI chat visual variant styling."
34
+ }
35
+ ],
36
+ "sizes": [
37
+ {
38
+ "name": "chat-loop-stack-lg",
39
+ "className": "chat-loop-stack-lg",
40
+ "description": "Large min-height variant for loop stack."
41
+ }
42
+ ],
43
+ "states": [
44
+ {
45
+ "name": "chat-loop-loading",
46
+ "className": "chat-loop-loading",
47
+ "description": "Animated loading row in loop simulation."
48
+ },
49
+ {
50
+ "name": "chat-loop-message",
51
+ "className": "chat-loop-message",
52
+ "description": "Animated resolved message row in loop simulation."
53
+ },
54
+ {
55
+ "name": "is-owner",
56
+ "className": "is-owner",
57
+ "description": "Marks messages authored by the current user."
58
+ },
59
+ {
60
+ "name": "is-loading",
61
+ "className": "is-loading",
62
+ "description": "Shows loading placeholder behavior for a message group."
63
+ }
64
+ ],
27
65
  "structure": {
28
66
  "rootElement": "div",
29
67
  "requiredClasses": [
30
68
  "chat-ai"
31
69
  ],
32
- "optionalClasses": [],
70
+ "optionalClasses": [
71
+ "chat-secondary",
72
+ "chat-loop-stack-lg",
73
+ "chat-loop-loading",
74
+ "chat-loop-message",
75
+ "is-owner",
76
+ "is-loading"
77
+ ],
33
78
  "requiredChildren": [],
34
79
  "optionalChildren": []
35
80
  },
@@ -69,7 +114,56 @@
69
114
  "Do not rely on undocumented internal classes in production templates.",
70
115
  "Do not remove required accessibility attributes when component is interactive."
71
116
  ],
72
- "tokenUsage": [],
117
+ "tokenUsage": [
118
+ "background-brand",
119
+ "background-brand-active",
120
+ "background-error",
121
+ "background-error-active",
122
+ "background-info",
123
+ "background-info-active",
124
+ "background-inverted",
125
+ "background-page",
126
+ "background-success",
127
+ "background-success-active",
128
+ "background-surface",
129
+ "background-surface-elevated",
130
+ "background-surface-sunken",
131
+ "background-warning",
132
+ "background-warning-active",
133
+ "brand-default",
134
+ "brand-moderate",
135
+ "brand-strong",
136
+ "core-black",
137
+ "core-ui-100",
138
+ "core-ui-50",
139
+ "core-ui-700",
140
+ "core-ui-800",
141
+ "core-ui-900",
142
+ "core-white",
143
+ "line-default",
144
+ "line-error",
145
+ "line-focus",
146
+ "line-highlight",
147
+ "line-info",
148
+ "line-strong",
149
+ "line-success",
150
+ "line-warning",
151
+ "text-attention",
152
+ "text-brand",
153
+ "text-brand-active",
154
+ "text-brand-hover",
155
+ "text-default",
156
+ "text-disabled",
157
+ "text-error",
158
+ "text-info",
159
+ "text-inverted",
160
+ "text-link",
161
+ "text-link-hover",
162
+ "text-secondary",
163
+ "text-success",
164
+ "text-tertiary",
165
+ "text-warning"
166
+ ],
73
167
  "examples": [
74
168
  {
75
169
  "id": "canonical",
@@ -22,15 +22,36 @@
22
22
  ],
23
23
  "apiModel": "html-class",
24
24
  "baseClass": "chat-footer",
25
- "variants": [],
25
+ "variants": [
26
+ {
27
+ "name": "chat-footer-full",
28
+ "className": "chat-footer-full",
29
+ "description": "Extended footer layout for full chat composer demo."
30
+ },
31
+ {
32
+ "name": "chat-input-full",
33
+ "className": "chat-input-full",
34
+ "description": "Expanded input row behavior used in full footer mode."
35
+ }
36
+ ],
26
37
  "sizes": [],
27
- "states": [],
38
+ "states": [
39
+ {
40
+ "name": "is-listening",
41
+ "className": "is-listening",
42
+ "description": "Active dictation state with listening indicator."
43
+ }
44
+ ],
28
45
  "structure": {
29
46
  "rootElement": "div",
30
47
  "requiredClasses": [
31
48
  "chat-footer"
32
49
  ],
33
- "optionalClasses": [],
50
+ "optionalClasses": [
51
+ "chat-footer-full",
52
+ "chat-input-full",
53
+ "is-listening"
54
+ ],
34
55
  "requiredChildren": [],
35
56
  "optionalChildren": []
36
57
  },
@@ -25,7 +25,6 @@
25
25
  "assets/styles/command.css",
26
26
  "assets/styles/form-text-select.css",
27
27
  "assets/styles/menu.css",
28
- "assets/styles/navbar.css",
29
28
  "assets/styles/pagination.css",
30
29
  "assets/styles/progress.css",
31
30
  "assets/styles/steps.css",
@@ -23,7 +23,6 @@
23
23
  "assets/styles/command.css",
24
24
  "assets/styles/form-text-select.css",
25
25
  "assets/styles/menu.css",
26
- "assets/styles/navbar.css",
27
26
  "assets/styles/pagination.css",
28
27
  "assets/styles/progress.css",
29
28
  "assets/styles/steps.css",
@@ -81,9 +81,9 @@
81
81
  "Do not remove required accessibility attributes when component is interactive."
82
82
  ],
83
83
  "tokenUsage": [
84
+ "background-brand",
84
85
  "background-surface",
85
86
  "background-surface-elevated",
86
- "brand-default",
87
87
  "brand-moderate",
88
88
  "line-brand",
89
89
  "line-default",
@@ -81,8 +81,8 @@
81
81
  "Do not remove required accessibility attributes when component is interactive."
82
82
  ],
83
83
  "tokenUsage": [
84
- "line-default",
85
84
  "line-highlight",
85
+ "text-default",
86
86
  "text-tertiary"
87
87
  ],
88
88
  "examples": [
@@ -2,7 +2,7 @@
2
2
  "id": "illustrations-library",
3
3
  "name": "Illustrations library",
4
4
  "status": "stable",
5
- "summary": "Browse our collection of custom illustrations and visual elements used to enhance the user experience and reinforce our brand identity across the application. The source assets located in [Figma](https://www.figma.com/design/1zI7ewgpqCGoxrPpiu6w2R/Product-illustrations?m=auto&t=LU9WIUq52kD6qdO8-1) *(Marketing / Assets)*, which can also be downloaded as a [.fig file](/figma/Product_illustrations.fig).",
5
+ "summary": "Browse our collection of custom illustrations and visual elements used to enhance the user experience and reinforce our brand identity across the application.",
6
6
  "keywords": [
7
7
  "artwork",
8
8
  "assets",
@@ -104,10 +104,10 @@
104
104
  "Do not remove required accessibility attributes when component is interactive."
105
105
  ],
106
106
  "tokenUsage": [
107
+ "background-brand",
107
108
  "background-page",
108
109
  "background-surface",
109
110
  "background-surface-elevated",
110
- "brand-default",
111
111
  "brand-moderate",
112
112
  "line-brand",
113
113
  "line-default",
@@ -17,13 +17,7 @@
17
17
  ],
18
18
  "apiModel": "html-class",
19
19
  "baseClass": "key-value",
20
- "variants": [
21
- {
22
- "name": "key-value-compact",
23
- "className": "key-value-compact",
24
- "description": "Compact spacing variant."
25
- }
26
- ],
20
+ "variants": [],
27
21
  "sizes": [],
28
22
  "states": [],
29
23
  "structure": {
@@ -31,9 +25,7 @@
31
25
  "requiredClasses": [
32
26
  "key-value"
33
27
  ],
34
- "optionalClasses": [
35
- "key-value-compact"
36
- ],
28
+ "optionalClasses": [],
37
29
  "requiredChildren": [],
38
30
  "optionalChildren": []
39
31
  },
@@ -94,10 +94,6 @@
94
94
  "Do not remove required accessibility attributes when component is interactive."
95
95
  ],
96
96
  "tokenUsage": [
97
- "core-black",
98
- "core-ui-200",
99
- "core-ui-700",
100
- "core-white",
101
97
  "line-strong",
102
98
  "text-default"
103
99
  ],
@@ -21,18 +21,7 @@
21
21
  ],
22
22
  "apiModel": "html-class",
23
23
  "baseClass": "loader-text",
24
- "variants": [
25
- {
26
- "name": "from-[color]",
27
- "className": "from-[color]",
28
- "description": "Set the starting color of the text loader"
29
- },
30
- {
31
- "name": "to-[color]",
32
- "className": "to-[color]",
33
- "description": "Set the ending color of the text loader"
34
- }
35
- ],
24
+ "variants": [],
36
25
  "sizes": [],
37
26
  "states": [],
38
27
  "structure": {
@@ -40,10 +29,7 @@
40
29
  "requiredClasses": [
41
30
  "loader-text"
42
31
  ],
43
- "optionalClasses": [
44
- "from-[color]",
45
- "to-[color]"
46
- ],
32
+ "optionalClasses": [],
47
33
  "requiredChildren": [],
48
34
  "optionalChildren": []
49
35
  },
@@ -74,10 +60,6 @@
74
60
  "Do not remove required accessibility attributes when component is interactive."
75
61
  ],
76
62
  "tokenUsage": [
77
- "core-black",
78
- "core-ui-200",
79
- "core-ui-700",
80
- "core-white",
81
63
  "line-strong",
82
64
  "text-default"
83
65
  ],
@@ -35,7 +35,6 @@
35
35
  "assets/styles/command.css",
36
36
  "assets/styles/form-text-select.css",
37
37
  "assets/styles/menu.css",
38
- "assets/styles/navbar.css",
39
38
  "assets/styles/pagination.css",
40
39
  "assets/styles/progress.css",
41
40
  "assets/styles/steps.css",
@@ -110,8 +110,9 @@
110
110
  "Do not remove required accessibility attributes when component is interactive."
111
111
  ],
112
112
  "tokenUsage": [
113
+ "background-brand",
113
114
  "brand-default",
114
- "brand-soft",
115
+ "line-brand",
115
116
  "line-default",
116
117
  "line-error",
117
118
  "line-success",
@@ -63,9 +63,9 @@
63
63
  "Do not remove required accessibility attributes when component is interactive."
64
64
  ],
65
65
  "tokenUsage": [
66
+ "background-brand",
66
67
  "background-surface",
67
68
  "background-surface-elevated",
68
- "brand-default",
69
69
  "brand-moderate",
70
70
  "line-brand",
71
71
  "line-default",