@quilltap/theme-storybook 1.0.10 → 1.0.12
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.
- package/CHANGELOG.md +14 -0
- package/dist/index.css +60 -0
- package/package.json +1 -1
- package/src/css/qt-components.css +93 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `@quilltap/theme-storybook` will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## [1.0.12] - 2026-01-23
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
- Filter chip classes (`qt-filter-chip`, `qt-filter-chip-active`) for themeable search filter toggles
|
|
9
|
+
- CSS variables: `--qt-filter-chip-radius`, `--qt-filter-chip-padding-x`, `--qt-filter-chip-padding-y`, `--qt-filter-chip-font-size`, `--qt-filter-chip-font-weight`, `--qt-filter-chip-transition`
|
|
10
|
+
- Active state variables: `--qt-filter-chip-active-bg`, `--qt-filter-chip-active-fg`, `--qt-filter-chip-active-border`
|
|
11
|
+
- Inactive state variables: `--qt-filter-chip-inactive-bg`, `--qt-filter-chip-inactive-fg`, `--qt-filter-chip-inactive-border`, `--qt-filter-chip-inactive-hover-bg`
|
|
12
|
+
|
|
13
|
+
## [1.0.11] - 2026-01-23
|
|
14
|
+
|
|
15
|
+
### Added
|
|
16
|
+
- Search highlight class (`qt-highlight`) for consistent search result text highlighting
|
|
17
|
+
- CSS variables: `--qt-highlight-bg`, `--qt-highlight-fg`, `--qt-highlight-radius`, `--qt-highlight-padding-x`, `--qt-highlight-font-weight`
|
|
18
|
+
|
|
5
19
|
## [1.0.10] - 2026-01-16
|
|
6
20
|
|
|
7
21
|
### Added
|
package/dist/index.css
CHANGED
|
@@ -250,6 +250,24 @@ body {
|
|
|
250
250
|
"Liberation Mono",
|
|
251
251
|
"Courier New",
|
|
252
252
|
monospace;
|
|
253
|
+
--qt-highlight-bg: hsl(50 100% 50%);
|
|
254
|
+
--qt-highlight-fg: hsl(40 100% 10%);
|
|
255
|
+
--qt-highlight-radius: 0.125rem;
|
|
256
|
+
--qt-highlight-padding-x: 0.125rem;
|
|
257
|
+
--qt-highlight-font-weight: 500;
|
|
258
|
+
--qt-filter-chip-radius: 9999px;
|
|
259
|
+
--qt-filter-chip-padding-x: 0.5rem;
|
|
260
|
+
--qt-filter-chip-padding-y: 0.25rem;
|
|
261
|
+
--qt-filter-chip-font-size: 0.75rem;
|
|
262
|
+
--qt-filter-chip-font-weight: 500;
|
|
263
|
+
--qt-filter-chip-transition: all 150ms ease;
|
|
264
|
+
--qt-filter-chip-active-bg: var(--color-primary);
|
|
265
|
+
--qt-filter-chip-active-fg: var(--color-primary-foreground);
|
|
266
|
+
--qt-filter-chip-active-border: transparent;
|
|
267
|
+
--qt-filter-chip-inactive-bg: var(--color-muted);
|
|
268
|
+
--qt-filter-chip-inactive-fg: var(--color-muted-foreground);
|
|
269
|
+
--qt-filter-chip-inactive-border: transparent;
|
|
270
|
+
--qt-filter-chip-inactive-hover-bg: color-mix(in srgb, var(--color-muted) 80%, var(--color-foreground) 5%);
|
|
253
271
|
}
|
|
254
272
|
.qt-button {
|
|
255
273
|
display: inline-flex;
|
|
@@ -996,6 +1014,48 @@ body {
|
|
|
996
1014
|
background: var(--color-muted);
|
|
997
1015
|
text-decoration: line-through;
|
|
998
1016
|
}
|
|
1017
|
+
.qt-highlight {
|
|
1018
|
+
background-color: var(--qt-highlight-bg);
|
|
1019
|
+
color: var(--qt-highlight-fg);
|
|
1020
|
+
border-radius: var(--qt-highlight-radius);
|
|
1021
|
+
padding-left: var(--qt-highlight-padding-x);
|
|
1022
|
+
padding-right: var(--qt-highlight-padding-x);
|
|
1023
|
+
font-weight: var(--qt-highlight-font-weight);
|
|
1024
|
+
}
|
|
1025
|
+
.qt-filter-chip {
|
|
1026
|
+
display: inline-flex;
|
|
1027
|
+
align-items: center;
|
|
1028
|
+
justify-content: center;
|
|
1029
|
+
cursor: pointer;
|
|
1030
|
+
padding: var(--qt-filter-chip-padding-y) var(--qt-filter-chip-padding-x);
|
|
1031
|
+
border-radius: var(--qt-filter-chip-radius);
|
|
1032
|
+
font-size: var(--qt-filter-chip-font-size);
|
|
1033
|
+
font-weight: var(--qt-filter-chip-font-weight);
|
|
1034
|
+
transition: var(--qt-filter-chip-transition);
|
|
1035
|
+
border: 1px solid var(--qt-filter-chip-inactive-border);
|
|
1036
|
+
background: var(--qt-filter-chip-inactive-bg);
|
|
1037
|
+
color: var(--qt-filter-chip-inactive-fg);
|
|
1038
|
+
}
|
|
1039
|
+
.qt-filter-chip:hover {
|
|
1040
|
+
background: var(--qt-filter-chip-inactive-hover-bg);
|
|
1041
|
+
}
|
|
1042
|
+
.qt-filter-chip-active {
|
|
1043
|
+
display: inline-flex;
|
|
1044
|
+
align-items: center;
|
|
1045
|
+
justify-content: center;
|
|
1046
|
+
cursor: pointer;
|
|
1047
|
+
padding: var(--qt-filter-chip-padding-y) var(--qt-filter-chip-padding-x);
|
|
1048
|
+
border-radius: var(--qt-filter-chip-radius);
|
|
1049
|
+
font-size: var(--qt-filter-chip-font-size);
|
|
1050
|
+
font-weight: var(--qt-filter-chip-font-weight);
|
|
1051
|
+
transition: var(--qt-filter-chip-transition);
|
|
1052
|
+
border: 1px solid var(--qt-filter-chip-active-border);
|
|
1053
|
+
background: var(--qt-filter-chip-active-bg);
|
|
1054
|
+
color: var(--qt-filter-chip-active-fg);
|
|
1055
|
+
}
|
|
1056
|
+
.qt-filter-chip-active:hover {
|
|
1057
|
+
opacity: 0.9;
|
|
1058
|
+
}
|
|
999
1059
|
@keyframes pulse {
|
|
1000
1060
|
0%, 100% {
|
|
1001
1061
|
opacity: 1;
|
package/package.json
CHANGED
|
@@ -132,6 +132,32 @@
|
|
|
132
132
|
--qt-code-bg: var(--color-muted);
|
|
133
133
|
--qt-code-fg: var(--color-foreground);
|
|
134
134
|
--qt-code-font: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
135
|
+
|
|
136
|
+
/* Highlight variables (search result highlighting) */
|
|
137
|
+
--qt-highlight-bg: hsl(50 100% 50%);
|
|
138
|
+
--qt-highlight-fg: hsl(40 100% 10%);
|
|
139
|
+
--qt-highlight-radius: 0.125rem;
|
|
140
|
+
--qt-highlight-padding-x: 0.125rem;
|
|
141
|
+
--qt-highlight-font-weight: 500;
|
|
142
|
+
|
|
143
|
+
/* Filter chip variables (search filter toggles) */
|
|
144
|
+
--qt-filter-chip-radius: 9999px;
|
|
145
|
+
--qt-filter-chip-padding-x: 0.5rem;
|
|
146
|
+
--qt-filter-chip-padding-y: 0.25rem;
|
|
147
|
+
--qt-filter-chip-font-size: 0.75rem;
|
|
148
|
+
--qt-filter-chip-font-weight: 500;
|
|
149
|
+
--qt-filter-chip-transition: all 150ms ease;
|
|
150
|
+
|
|
151
|
+
/* Active state (filter is enabled, showing results) */
|
|
152
|
+
--qt-filter-chip-active-bg: var(--color-primary);
|
|
153
|
+
--qt-filter-chip-active-fg: var(--color-primary-foreground);
|
|
154
|
+
--qt-filter-chip-active-border: transparent;
|
|
155
|
+
|
|
156
|
+
/* Inactive state (filter is disabled, hiding results) */
|
|
157
|
+
--qt-filter-chip-inactive-bg: var(--color-muted);
|
|
158
|
+
--qt-filter-chip-inactive-fg: var(--color-muted-foreground);
|
|
159
|
+
--qt-filter-chip-inactive-border: transparent;
|
|
160
|
+
--qt-filter-chip-inactive-hover-bg: color-mix(in srgb, var(--color-muted) 80%, var(--color-foreground) 5%);
|
|
135
161
|
}
|
|
136
162
|
|
|
137
163
|
/* ==========================================================================
|
|
@@ -1045,6 +1071,73 @@
|
|
|
1045
1071
|
text-decoration: line-through;
|
|
1046
1072
|
}
|
|
1047
1073
|
|
|
1074
|
+
/* ==========================================================================
|
|
1075
|
+
SEARCH HIGHLIGHT
|
|
1076
|
+
========================================================================== */
|
|
1077
|
+
|
|
1078
|
+
/**
|
|
1079
|
+
* Search result text highlight
|
|
1080
|
+
* Used to highlight matching search terms in results
|
|
1081
|
+
* Designed for high contrast in both light and dark themes
|
|
1082
|
+
*/
|
|
1083
|
+
.qt-highlight {
|
|
1084
|
+
background-color: var(--qt-highlight-bg);
|
|
1085
|
+
color: var(--qt-highlight-fg);
|
|
1086
|
+
border-radius: var(--qt-highlight-radius);
|
|
1087
|
+
padding-left: var(--qt-highlight-padding-x);
|
|
1088
|
+
padding-right: var(--qt-highlight-padding-x);
|
|
1089
|
+
font-weight: var(--qt-highlight-font-weight);
|
|
1090
|
+
}
|
|
1091
|
+
|
|
1092
|
+
/* ==========================================================================
|
|
1093
|
+
FILTER CHIPS (Search filter toggles)
|
|
1094
|
+
========================================================================== */
|
|
1095
|
+
|
|
1096
|
+
/**
|
|
1097
|
+
* Base filter chip styles (inactive state)
|
|
1098
|
+
* Used for toggling search result filters
|
|
1099
|
+
*/
|
|
1100
|
+
.qt-filter-chip {
|
|
1101
|
+
display: inline-flex;
|
|
1102
|
+
align-items: center;
|
|
1103
|
+
justify-content: center;
|
|
1104
|
+
cursor: pointer;
|
|
1105
|
+
padding: var(--qt-filter-chip-padding-y) var(--qt-filter-chip-padding-x);
|
|
1106
|
+
border-radius: var(--qt-filter-chip-radius);
|
|
1107
|
+
font-size: var(--qt-filter-chip-font-size);
|
|
1108
|
+
font-weight: var(--qt-filter-chip-font-weight);
|
|
1109
|
+
transition: var(--qt-filter-chip-transition);
|
|
1110
|
+
border: 1px solid var(--qt-filter-chip-inactive-border);
|
|
1111
|
+
background: var(--qt-filter-chip-inactive-bg);
|
|
1112
|
+
color: var(--qt-filter-chip-inactive-fg);
|
|
1113
|
+
}
|
|
1114
|
+
|
|
1115
|
+
.qt-filter-chip:hover {
|
|
1116
|
+
background: var(--qt-filter-chip-inactive-hover-bg);
|
|
1117
|
+
}
|
|
1118
|
+
|
|
1119
|
+
/**
|
|
1120
|
+
* Active filter chip (filter is enabled, showing results)
|
|
1121
|
+
*/
|
|
1122
|
+
.qt-filter-chip-active {
|
|
1123
|
+
display: inline-flex;
|
|
1124
|
+
align-items: center;
|
|
1125
|
+
justify-content: center;
|
|
1126
|
+
cursor: pointer;
|
|
1127
|
+
padding: var(--qt-filter-chip-padding-y) var(--qt-filter-chip-padding-x);
|
|
1128
|
+
border-radius: var(--qt-filter-chip-radius);
|
|
1129
|
+
font-size: var(--qt-filter-chip-font-size);
|
|
1130
|
+
font-weight: var(--qt-filter-chip-font-weight);
|
|
1131
|
+
transition: var(--qt-filter-chip-transition);
|
|
1132
|
+
border: 1px solid var(--qt-filter-chip-active-border);
|
|
1133
|
+
background: var(--qt-filter-chip-active-bg);
|
|
1134
|
+
color: var(--qt-filter-chip-active-fg);
|
|
1135
|
+
}
|
|
1136
|
+
|
|
1137
|
+
.qt-filter-chip-active:hover {
|
|
1138
|
+
opacity: 0.9;
|
|
1139
|
+
}
|
|
1140
|
+
|
|
1048
1141
|
@keyframes pulse {
|
|
1049
1142
|
0%, 100% {
|
|
1050
1143
|
opacity: 1;
|