@quilltap/theme-storybook 1.0.11 → 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 CHANGED
@@ -2,6 +2,14 @@
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
+
5
13
  ## [1.0.11] - 2026-01-23
6
14
 
7
15
  ### Added
package/dist/index.css CHANGED
@@ -255,6 +255,19 @@ body {
255
255
  --qt-highlight-radius: 0.125rem;
256
256
  --qt-highlight-padding-x: 0.125rem;
257
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%);
258
271
  }
259
272
  .qt-button {
260
273
  display: inline-flex;
@@ -1009,6 +1022,40 @@ body {
1009
1022
  padding-right: var(--qt-highlight-padding-x);
1010
1023
  font-weight: var(--qt-highlight-font-weight);
1011
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
+ }
1012
1059
  @keyframes pulse {
1013
1060
  0%, 100% {
1014
1061
  opacity: 1;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quilltap/theme-storybook",
3
- "version": "1.0.11",
3
+ "version": "1.0.12",
4
4
  "description": "Storybook preset and stories for developing Quilltap theme plugins",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -139,6 +139,25 @@
139
139
  --qt-highlight-radius: 0.125rem;
140
140
  --qt-highlight-padding-x: 0.125rem;
141
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%);
142
161
  }
143
162
 
144
163
  /* ==========================================================================
@@ -1070,6 +1089,55 @@
1070
1089
  font-weight: var(--qt-highlight-font-weight);
1071
1090
  }
1072
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
+
1073
1141
  @keyframes pulse {
1074
1142
  0%, 100% {
1075
1143
  opacity: 1;