@feedlog-ai/webcomponents 0.0.39 → 0.0.41
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/dist/cjs/feedlog-badge.cjs.entry.js +3 -3
- package/dist/cjs/feedlog-button_3.cjs.entry.js +8 -8
- package/dist/cjs/feedlog-card.cjs.entry.js +3 -3
- package/dist/cjs/feedlog-issues-client.cjs.entry.js +2 -2
- package/dist/cjs/feedlog-issues.cjs.entry.js +4 -4
- package/dist/cjs/feedlog-toolkit.cjs.js +2 -2
- package/dist/cjs/{index-prPyjPBk.js → index-CXKBwRlh.js} +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/collection/components/feedlog-badge/feedlog-badge.css +45 -35
- package/dist/collection/components/feedlog-badge/feedlog-badge.js +1 -1
- package/dist/collection/components/feedlog-button/feedlog-button.css +66 -16
- package/dist/collection/components/feedlog-button/feedlog-button.js +1 -1
- package/dist/collection/components/feedlog-card/feedlog-card.css +24 -22
- package/dist/collection/components/feedlog-card/feedlog-card.js +1 -1
- package/dist/collection/components/feedlog-issue/feedlog-issue.css +187 -99
- package/dist/collection/components/feedlog-issue/feedlog-issue.js +1 -1
- package/dist/collection/components/feedlog-issues/feedlog-issues.css +63 -34
- package/dist/collection/components/feedlog-issues/feedlog-issues.js +2 -2
- package/dist/collection/components/feedlog-issues-client/feedlog-issues-client.js +1 -1
- package/dist/collection/components/feedlog-issues-list/feedlog-issues-list.js +3 -3
- package/dist/components/feedlog-badge.js +1 -1
- package/dist/components/feedlog-button.js +1 -1
- package/dist/components/feedlog-card.js +1 -1
- package/dist/components/feedlog-issue.js +1 -1
- package/dist/components/feedlog-issues-client.js +1 -1
- package/dist/components/feedlog-issues-list.js +1 -1
- package/dist/components/feedlog-issues.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/{p-CvIMO_S7.js → p-2RPRQcjh.js} +2 -2
- package/dist/components/p-CVEXMLCP.js +1 -0
- package/dist/components/p-DMdb-G26.js +1 -0
- package/dist/components/p-DsLDsYLY.js +1 -0
- package/dist/components/p-DzATWlAC.js +1 -0
- package/dist/esm/feedlog-badge.entry.js +3 -3
- package/dist/esm/feedlog-button_3.entry.js +8 -8
- package/dist/esm/feedlog-card.entry.js +3 -3
- package/dist/esm/feedlog-issues-client.entry.js +2 -2
- package/dist/esm/feedlog-issues.entry.js +4 -4
- package/dist/esm/feedlog-toolkit.js +3 -3
- package/dist/esm/{index-Cu1eYdKa.js → index-CgNWSmzU.js} +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/feedlog-toolkit/feedlog-toolkit.css +1 -1
- package/dist/feedlog-toolkit/feedlog-toolkit.esm.js +1 -1
- package/dist/feedlog-toolkit/p-2901a753.entry.js +1 -0
- package/dist/feedlog-toolkit/p-32663f65.entry.js +1 -0
- package/dist/feedlog-toolkit/{p-ca90ade9.entry.js → p-8ab2cdd9.entry.js} +1 -1
- package/dist/feedlog-toolkit/p-CgNWSmzU.js +2 -0
- package/dist/feedlog-toolkit/p-c1e83493.entry.js +1 -0
- package/dist/feedlog-toolkit/p-da0268a8.entry.js +1 -0
- package/dist/types/index.d.ts +1 -1
- package/hydrate/index.js +19 -19
- package/hydrate/index.mjs +19 -19
- package/package.json +7 -4
- package/dist/components/p-BoxVrJId.js +0 -1
- package/dist/components/p-DFD585IK.js +0 -1
- package/dist/components/p-I6NOP29P.js +0 -1
- package/dist/components/p-fDVosM5p.js +0 -1
- package/dist/feedlog-toolkit/p-001d7353.entry.js +0 -1
- package/dist/feedlog-toolkit/p-556062d0.entry.js +0 -1
- package/dist/feedlog-toolkit/p-62554649.entry.js +0 -1
- package/dist/feedlog-toolkit/p-Cu1eYdKa.js +0 -2
- package/dist/feedlog-toolkit/p-b558fc9f.entry.js +0 -1
|
@@ -1,32 +1,78 @@
|
|
|
1
1
|
:host {
|
|
2
2
|
display: block;
|
|
3
|
-
font-family:
|
|
3
|
+
font-family:
|
|
4
|
+
ui-sans-serif,
|
|
5
|
+
system-ui,
|
|
6
|
+
-apple-system,
|
|
7
|
+
BlinkMacSystemFont,
|
|
8
|
+
'Segoe UI',
|
|
9
|
+
Roboto,
|
|
10
|
+
'Helvetica Neue',
|
|
11
|
+
Arial,
|
|
12
|
+
sans-serif;
|
|
13
|
+
|
|
14
|
+
/* Light theme defaults */
|
|
15
|
+
--feedlog-background: #ffffff;
|
|
16
|
+
--feedlog-foreground: oklch(0.145 0 0);
|
|
17
|
+
--feedlog-card: #ffffff;
|
|
18
|
+
--feedlog-card-foreground: oklch(0.145 0 0);
|
|
19
|
+
--feedlog-muted: #f1f5f9;
|
|
20
|
+
--feedlog-muted-foreground: #64748b;
|
|
21
|
+
--feedlog-border: rgba(0, 0, 0, 0.08);
|
|
22
|
+
--feedlog-accent-color: #2563eb;
|
|
23
|
+
--feedlog-destructive: #d4183d;
|
|
24
|
+
--feedlog-blue-400: oklch(0.707 0.165 254.624);
|
|
25
|
+
--feedlog-blue-600: oklch(0.546 0.245 262.881);
|
|
26
|
+
--feedlog-red-600: #db2777;
|
|
27
|
+
--feedlog-radius: 0.625rem;
|
|
28
|
+
--feedlog-gap: 0.5rem;
|
|
4
29
|
|
|
5
30
|
/* Customization variables */
|
|
6
|
-
--feedlog-card-padding:
|
|
7
|
-
--feedlog-title-font-size:
|
|
8
|
-
--feedlog-title-font-weight:
|
|
9
|
-
--feedlog-body-font-size:
|
|
31
|
+
--feedlog-card-padding: 1.25rem;
|
|
32
|
+
--feedlog-title-font-size: 1.125rem;
|
|
33
|
+
--feedlog-title-font-weight: 600;
|
|
34
|
+
--feedlog-body-font-size: 0.875rem;
|
|
10
35
|
--feedlog-body-line-height: 1.6;
|
|
11
|
-
--feedlog-timestamp-font-size:
|
|
36
|
+
--feedlog-timestamp-font-size: 0.6875rem;
|
|
12
37
|
--feedlog-timestamp-color: var(--feedlog-muted-foreground);
|
|
13
|
-
--feedlog-card-radius:
|
|
38
|
+
--feedlog-card-radius: 0.75rem;
|
|
14
39
|
--feedlog-icon-color: var(--feedlog-muted-foreground);
|
|
15
40
|
--feedlog-icon-color-muted: var(--feedlog-muted-foreground);
|
|
16
|
-
--feedlog-pin-color: var(--feedlog-
|
|
17
|
-
--feedlog-upvote-icon-color: var(--feedlog-
|
|
18
|
-
--feedlog-upvote-icon-filled-color: var(--feedlog-
|
|
41
|
+
--feedlog-pin-color: var(--feedlog-accent-color);
|
|
42
|
+
--feedlog-upvote-icon-color: var(--feedlog-blue-600);
|
|
43
|
+
--feedlog-upvote-icon-filled-color: var(--feedlog-red-600);
|
|
44
|
+
/* Layered shadows for depth */
|
|
45
|
+
--feedlog-shadow: 0 1px 2px rgba(0, 0, 0, 0.04), 0 4px 12px rgba(0, 0, 0, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.5);
|
|
46
|
+
--feedlog-shadow-hover-enhancement: 0 8px 16px rgba(37, 99, 235, 0.08), 0 12px 24px rgba(37, 99, 235, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.6);
|
|
47
|
+
--feedlog-shadow-hover-bug: 0 8px 16px rgba(212, 24, 61, 0.08), 0 12px 24px rgba(212, 24, 61, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.6);
|
|
19
48
|
}
|
|
20
49
|
|
|
21
50
|
:host(.dark) {
|
|
22
51
|
/* Dark theme values */
|
|
52
|
+
--feedlog-background: oklch(0.18 0.01 260);
|
|
53
|
+
--feedlog-foreground: oklch(0.985 0 0);
|
|
54
|
+
--feedlog-card: oklch(0.24 0.01 260);
|
|
55
|
+
--feedlog-card-foreground: oklch(0.985 0 0);
|
|
56
|
+
--feedlog-muted: oklch(0.32 0.01 260);
|
|
57
|
+
--feedlog-muted-foreground: oklch(0.72 0.02 260);
|
|
58
|
+
--feedlog-border: oklch(0.34 0.01 260);
|
|
59
|
+
--feedlog-accent-color: #3b82f6;
|
|
60
|
+
--feedlog-destructive: oklch(0.396 0.141 25.723);
|
|
61
|
+
--feedlog-blue-300: oklch(0.78 0.12 255);
|
|
62
|
+
--feedlog-blue-400: oklch(0.707 0.165 254.624);
|
|
63
|
+
--feedlog-blue-600: oklch(0.546 0.245 262.881);
|
|
64
|
+
--feedlog-upvote-icon-color: var(--feedlog-blue-400);
|
|
65
|
+
--feedlog-upvote-icon-filled-color: var(--feedlog-red-600);
|
|
66
|
+
--feedlog-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 4px 12px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.05);
|
|
67
|
+
--feedlog-shadow-hover-enhancement: 0 8px 16px rgba(59, 130, 246, 0.15), 0 12px 24px rgba(59, 130, 246, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.08);
|
|
68
|
+
--feedlog-shadow-hover-bug: 0 8px 16px rgba(220, 38, 38, 0.15), 0 12px 24px rgba(220, 38, 38, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.08);
|
|
23
69
|
}
|
|
24
70
|
|
|
25
71
|
.issue-card {
|
|
26
|
-
background-color
|
|
72
|
+
background: linear-gradient(180deg, var(--feedlog-card) 0%, color-mix(in oklab, var(--feedlog-card) 98%, var(--feedlog-muted) 2%) 100%);
|
|
27
73
|
border: 1px solid var(--feedlog-border);
|
|
28
74
|
border-radius: var(--feedlog-card-radius, var(--feedlog-radius));
|
|
29
|
-
box-shadow: var(--feedlog-shadow
|
|
75
|
+
box-shadow: var(--feedlog-shadow);
|
|
30
76
|
transition:
|
|
31
77
|
box-shadow 0.2s ease,
|
|
32
78
|
transform 0.2s ease;
|
|
@@ -35,8 +81,14 @@
|
|
|
35
81
|
}
|
|
36
82
|
|
|
37
83
|
.issue-card:hover {
|
|
38
|
-
|
|
39
|
-
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.issue-card.issue-type-enhancement:hover {
|
|
87
|
+
box-shadow: var(--feedlog-shadow-hover-enhancement);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.issue-card.issue-type-bug:hover {
|
|
91
|
+
box-shadow: var(--feedlog-shadow-hover-bug);
|
|
40
92
|
}
|
|
41
93
|
|
|
42
94
|
/* Media area - ready for future images/videos. Hidden until media support is added. */
|
|
@@ -65,21 +117,21 @@
|
|
|
65
117
|
padding: var(--feedlog-card-padding);
|
|
66
118
|
display: flex;
|
|
67
119
|
flex-direction: column;
|
|
68
|
-
gap:
|
|
120
|
+
gap: 0.875rem;
|
|
69
121
|
}
|
|
70
122
|
|
|
71
123
|
.issue-header-top {
|
|
72
124
|
display: flex;
|
|
73
125
|
align-items: flex-start;
|
|
74
126
|
justify-content: space-between;
|
|
75
|
-
gap:
|
|
76
|
-
margin-bottom:
|
|
127
|
+
gap: 1rem;
|
|
128
|
+
margin-bottom: 0.875rem;
|
|
77
129
|
}
|
|
78
130
|
|
|
79
131
|
.issue-badges {
|
|
80
132
|
display: flex;
|
|
81
133
|
align-items: center;
|
|
82
|
-
gap:
|
|
134
|
+
gap: 0.375rem;
|
|
83
135
|
flex-wrap: wrap;
|
|
84
136
|
margin-left: -0.25rem;
|
|
85
137
|
}
|
|
@@ -87,13 +139,13 @@
|
|
|
87
139
|
.issue-meta-right {
|
|
88
140
|
display: flex;
|
|
89
141
|
align-items: center;
|
|
90
|
-
gap:
|
|
142
|
+
gap: 0.5rem;
|
|
91
143
|
}
|
|
92
144
|
|
|
93
145
|
.pinned-indicator {
|
|
94
146
|
display: flex;
|
|
95
147
|
align-items: center;
|
|
96
|
-
color: var(--feedlog-pin-color, var(--feedlog-
|
|
148
|
+
color: var(--feedlog-pin-color, var(--feedlog-accent-color));
|
|
97
149
|
opacity: 0.9;
|
|
98
150
|
}
|
|
99
151
|
|
|
@@ -122,9 +174,9 @@
|
|
|
122
174
|
flex-direction: row;
|
|
123
175
|
align-items: center;
|
|
124
176
|
justify-content: space-between;
|
|
125
|
-
gap:
|
|
126
|
-
margin-top:
|
|
127
|
-
padding-top:
|
|
177
|
+
gap: 0.75rem;
|
|
178
|
+
margin-top: 0.75rem;
|
|
179
|
+
padding-top: 1rem;
|
|
128
180
|
border-top: 1px solid var(--feedlog-border);
|
|
129
181
|
flex-wrap: wrap;
|
|
130
182
|
}
|
|
@@ -132,24 +184,19 @@
|
|
|
132
184
|
.issue-footer-meta {
|
|
133
185
|
display: flex;
|
|
134
186
|
align-items: center;
|
|
135
|
-
gap:
|
|
136
|
-
font-size:
|
|
187
|
+
gap: 0.5rem;
|
|
188
|
+
font-size: 0.75rem;
|
|
137
189
|
color: var(--feedlog-muted-foreground);
|
|
138
190
|
flex-wrap: wrap;
|
|
139
191
|
}
|
|
140
192
|
|
|
141
|
-
/* Keeps upvote on the right when footer-meta is omitted (e.g. null repo name, no GitHub link) */
|
|
142
|
-
.issue-footer .upvote-button {
|
|
143
|
-
margin-left: auto;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
193
|
.issue-title {
|
|
147
194
|
color: var(--feedlog-card-foreground);
|
|
148
195
|
font-size: var(--feedlog-title-font-size);
|
|
149
196
|
font-weight: var(--feedlog-title-font-weight);
|
|
150
|
-
margin: 0 0
|
|
197
|
+
margin: 0 0 0.5rem 0;
|
|
151
198
|
line-height: 1.3;
|
|
152
|
-
letter-spacing: -0.
|
|
199
|
+
letter-spacing: -0.015em;
|
|
153
200
|
word-break: break-word;
|
|
154
201
|
}
|
|
155
202
|
|
|
@@ -157,27 +204,10 @@
|
|
|
157
204
|
color: var(--feedlog-muted-foreground);
|
|
158
205
|
font-size: var(--feedlog-body-font-size);
|
|
159
206
|
line-height: var(--feedlog-body-line-height);
|
|
160
|
-
margin: 0 0
|
|
207
|
+
margin: 0 0 0.75rem 0;
|
|
161
208
|
word-break: break-word;
|
|
162
209
|
}
|
|
163
210
|
|
|
164
|
-
.issue-body h1,
|
|
165
|
-
.issue-body h2,
|
|
166
|
-
.issue-body h3,
|
|
167
|
-
.issue-body h4,
|
|
168
|
-
.issue-body h5,
|
|
169
|
-
.issue-body h6 {
|
|
170
|
-
color: var(--feedlog-card-foreground);
|
|
171
|
-
margin-top: 1.5em;
|
|
172
|
-
margin-bottom: 0.5em;
|
|
173
|
-
font-weight: var(--feedlog-font-semibold);
|
|
174
|
-
letter-spacing: -0.01em;
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
.issue-body h1 { font-size: 1.5em; }
|
|
178
|
-
.issue-body h2 { font-size: 1.25em; }
|
|
179
|
-
.issue-body h3 { font-size: 1.125em; }
|
|
180
|
-
|
|
181
211
|
.issue-body :first-child {
|
|
182
212
|
margin-top: 0;
|
|
183
213
|
}
|
|
@@ -195,7 +225,7 @@
|
|
|
195
225
|
}
|
|
196
226
|
|
|
197
227
|
.issue-body a {
|
|
198
|
-
color: var(--feedlog-
|
|
228
|
+
color: var(--feedlog-accent-color);
|
|
199
229
|
text-decoration: none;
|
|
200
230
|
}
|
|
201
231
|
|
|
@@ -206,15 +236,15 @@
|
|
|
206
236
|
.issue-body code {
|
|
207
237
|
background-color: var(--feedlog-muted);
|
|
208
238
|
padding: 0.125em 0.375em;
|
|
209
|
-
border-radius:
|
|
239
|
+
border-radius: 0.25rem;
|
|
210
240
|
font-size: 0.9em;
|
|
211
241
|
}
|
|
212
242
|
|
|
213
243
|
.issue-body pre {
|
|
214
244
|
margin: 0.5em 0;
|
|
215
|
-
padding:
|
|
245
|
+
padding: 0.75rem;
|
|
216
246
|
background-color: var(--feedlog-muted);
|
|
217
|
-
border-radius:
|
|
247
|
+
border-radius: 0.25rem;
|
|
218
248
|
overflow-x: auto;
|
|
219
249
|
font-size: 0.85em;
|
|
220
250
|
}
|
|
@@ -225,7 +255,7 @@
|
|
|
225
255
|
}
|
|
226
256
|
|
|
227
257
|
.issue-body strong {
|
|
228
|
-
font-weight:
|
|
258
|
+
font-weight: 600;
|
|
229
259
|
}
|
|
230
260
|
|
|
231
261
|
.issue-body ul,
|
|
@@ -246,19 +276,19 @@
|
|
|
246
276
|
}
|
|
247
277
|
|
|
248
278
|
.repo-name {
|
|
249
|
-
font-weight:
|
|
279
|
+
font-weight: 500;
|
|
250
280
|
}
|
|
251
281
|
|
|
252
282
|
.github-link {
|
|
253
283
|
display: inline-flex;
|
|
254
284
|
align-items: center;
|
|
255
|
-
gap:
|
|
285
|
+
gap: 0.25rem;
|
|
256
286
|
color: var(--feedlog-muted-foreground);
|
|
257
287
|
text-decoration: none;
|
|
258
|
-
font-weight:
|
|
259
|
-
font-size:
|
|
260
|
-
padding:
|
|
261
|
-
border-radius:
|
|
288
|
+
font-weight: 500;
|
|
289
|
+
font-size: 0.75rem;
|
|
290
|
+
padding: 0.25rem 0.5rem;
|
|
291
|
+
border-radius: 0.375rem;
|
|
262
292
|
transition:
|
|
263
293
|
background-color 0.2s ease,
|
|
264
294
|
color 0.2s ease;
|
|
@@ -279,12 +309,12 @@
|
|
|
279
309
|
}
|
|
280
310
|
|
|
281
311
|
.github-number {
|
|
282
|
-
color: var(--feedlog-
|
|
283
|
-
font-weight:
|
|
312
|
+
color: var(--feedlog-blue-600);
|
|
313
|
+
font-weight: 600;
|
|
284
314
|
}
|
|
285
315
|
|
|
286
316
|
:host(.dark) .github-number {
|
|
287
|
-
color: var(--feedlog-
|
|
317
|
+
color: var(--feedlog-blue-400);
|
|
288
318
|
}
|
|
289
319
|
|
|
290
320
|
.upvote-button {
|
|
@@ -292,56 +322,64 @@
|
|
|
292
322
|
flex-direction: row;
|
|
293
323
|
align-items: center;
|
|
294
324
|
border-radius: 9999px;
|
|
295
|
-
background
|
|
296
|
-
border: 1px solid
|
|
325
|
+
background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
|
|
326
|
+
border: 1px solid #e2e8f0;
|
|
297
327
|
cursor: pointer;
|
|
298
|
-
transition: all 0.
|
|
328
|
+
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
|
|
299
329
|
flex-shrink: 0;
|
|
330
|
+
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
|
|
300
331
|
overflow: hidden;
|
|
301
|
-
padding:
|
|
302
|
-
gap:
|
|
332
|
+
padding: 0.375rem 0.875rem;
|
|
333
|
+
gap: 0.5rem;
|
|
303
334
|
font-family: inherit;
|
|
304
335
|
line-height: 1;
|
|
305
336
|
}
|
|
306
337
|
|
|
307
338
|
.upvote-button:hover {
|
|
308
|
-
background
|
|
339
|
+
background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);
|
|
340
|
+
border-color: #cbd5e1;
|
|
341
|
+
transform: translateY(-1px);
|
|
342
|
+
box-shadow:
|
|
343
|
+
0 4px 6px -1px rgba(0, 0, 0, 0.08),
|
|
344
|
+
0 2px 4px -2px rgba(0, 0, 0, 0.04);
|
|
309
345
|
}
|
|
310
346
|
|
|
311
347
|
.upvote-button:active {
|
|
312
|
-
transform: translateY(
|
|
348
|
+
transform: translateY(0);
|
|
349
|
+
box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
|
|
313
350
|
}
|
|
314
351
|
|
|
315
352
|
.upvote-button.upvoted {
|
|
316
|
-
background
|
|
317
|
-
border-color:
|
|
353
|
+
background: linear-gradient(180deg, #eff6ff 0%, #e0e7ff 100%);
|
|
354
|
+
border-color: #bfdbfe;
|
|
318
355
|
}
|
|
319
356
|
|
|
320
357
|
.upvote-button.upvoted:hover {
|
|
321
|
-
|
|
358
|
+
background: linear-gradient(180deg, #dbeafe 0%, #c7d2fe 100%);
|
|
359
|
+
border-color: #93c5fd;
|
|
322
360
|
}
|
|
323
361
|
|
|
324
362
|
.upvote-action {
|
|
325
363
|
display: flex;
|
|
326
364
|
flex-direction: row;
|
|
327
365
|
align-items: center;
|
|
328
|
-
gap:
|
|
329
|
-
color:
|
|
330
|
-
font-size:
|
|
331
|
-
font-weight:
|
|
366
|
+
gap: 0.375rem;
|
|
367
|
+
color: #475569;
|
|
368
|
+
font-size: 0.875rem;
|
|
369
|
+
font-weight: 600;
|
|
332
370
|
transition: color 0.2s ease;
|
|
333
371
|
}
|
|
334
372
|
|
|
335
373
|
.upvote-button:hover .upvote-action {
|
|
336
|
-
color:
|
|
374
|
+
color: #0f172a;
|
|
337
375
|
}
|
|
338
376
|
|
|
339
377
|
.upvote-button.upvoted .upvote-action {
|
|
340
|
-
color:
|
|
378
|
+
color: #2563eb;
|
|
341
379
|
}
|
|
342
380
|
|
|
343
381
|
.upvote-button.upvoted:hover .upvote-action {
|
|
344
|
-
color:
|
|
382
|
+
color: #1d4ed8;
|
|
345
383
|
}
|
|
346
384
|
|
|
347
385
|
.upvote-icon {
|
|
@@ -353,15 +391,15 @@
|
|
|
353
391
|
flex-shrink: 0;
|
|
354
392
|
display: block;
|
|
355
393
|
vertical-align: middle;
|
|
356
|
-
transition: transform 0.
|
|
394
|
+
transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
|
|
357
395
|
}
|
|
358
396
|
|
|
359
397
|
.upvote-button:hover .upvote-icon {
|
|
360
|
-
transform: translateY(-
|
|
398
|
+
transform: translateY(-2px);
|
|
361
399
|
}
|
|
362
400
|
|
|
363
401
|
.upvote-button:active .upvote-icon {
|
|
364
|
-
transform: translateY(0) scale(0.
|
|
402
|
+
transform: translateY(0) scale(0.9);
|
|
365
403
|
}
|
|
366
404
|
|
|
367
405
|
.upvote-icon.filled {
|
|
@@ -378,38 +416,46 @@
|
|
|
378
416
|
align-items: center;
|
|
379
417
|
height: 1.25rem;
|
|
380
418
|
overflow: hidden;
|
|
381
|
-
border-left: 1px solid
|
|
382
|
-
padding-left:
|
|
419
|
+
border-left: 1px solid #e2e8f0;
|
|
420
|
+
padding-left: 0.5rem;
|
|
383
421
|
transition: border-color 0.2s ease;
|
|
384
422
|
}
|
|
385
423
|
|
|
424
|
+
.upvote-button:hover .reel-container {
|
|
425
|
+
border-color: #cbd5e1;
|
|
426
|
+
}
|
|
427
|
+
|
|
386
428
|
.upvote-button.upvoted .reel-container {
|
|
387
|
-
border-color:
|
|
429
|
+
border-color: #bfdbfe;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
.upvote-button.upvoted:hover .reel-container {
|
|
433
|
+
border-color: #93c5fd;
|
|
388
434
|
}
|
|
389
435
|
|
|
390
436
|
.upvote-count {
|
|
391
|
-
font-size:
|
|
392
|
-
font-weight:
|
|
393
|
-
color:
|
|
437
|
+
font-size: 0.875rem;
|
|
438
|
+
font-weight: 600;
|
|
439
|
+
color: #475569;
|
|
394
440
|
transition: color 0.2s ease;
|
|
395
441
|
line-height: 1.25rem;
|
|
396
442
|
}
|
|
397
443
|
|
|
398
444
|
.upvote-button:hover .upvote-count {
|
|
399
|
-
color:
|
|
445
|
+
color: #0f172a;
|
|
400
446
|
}
|
|
401
447
|
|
|
402
448
|
.upvote-button.upvoted .upvote-count {
|
|
403
|
-
color:
|
|
449
|
+
color: #2563eb;
|
|
404
450
|
}
|
|
405
451
|
|
|
406
452
|
.upvote-button.upvoted:hover .upvote-count {
|
|
407
|
-
color:
|
|
453
|
+
color: #1d4ed8;
|
|
408
454
|
}
|
|
409
455
|
|
|
410
456
|
.reel-number {
|
|
411
457
|
display: inline-block;
|
|
412
|
-
animation: reelIn 0.
|
|
458
|
+
animation: reelIn 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
|
|
413
459
|
}
|
|
414
460
|
|
|
415
461
|
@keyframes reelIn {
|
|
@@ -425,15 +471,57 @@
|
|
|
425
471
|
|
|
426
472
|
/* Dark theme overrides */
|
|
427
473
|
:host(.dark) .upvote-button {
|
|
428
|
-
background-color
|
|
429
|
-
border-color:
|
|
474
|
+
background: linear-gradient(180deg, var(--feedlog-card) 0%, color-mix(in oklab, var(--feedlog-card) 95%, var(--feedlog-muted) 5%) 100%);
|
|
475
|
+
border-color: var(--feedlog-border);
|
|
430
476
|
}
|
|
431
477
|
|
|
432
478
|
:host(.dark) .upvote-button:hover {
|
|
433
|
-
background
|
|
479
|
+
background: var(--feedlog-muted);
|
|
480
|
+
border-color: var(--feedlog-muted-foreground);
|
|
434
481
|
}
|
|
435
482
|
|
|
436
483
|
:host(.dark) .upvote-button.upvoted {
|
|
437
|
-
background
|
|
438
|
-
border-color:
|
|
484
|
+
background: linear-gradient(180deg, rgba(37, 99, 235, 0.15) 0%, rgba(37, 99, 235, 0.2) 100%);
|
|
485
|
+
border-color: rgba(37, 99, 235, 0.3);
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
:host(.dark) .upvote-button.upvoted:hover {
|
|
489
|
+
background: linear-gradient(180deg, rgba(37, 99, 235, 0.25) 0%, rgba(37, 99, 235, 0.3) 100%);
|
|
490
|
+
border-color: rgba(37, 99, 235, 0.4);
|
|
491
|
+
}
|
|
492
|
+
|
|
493
|
+
:host(.dark) .upvote-action,
|
|
494
|
+
:host(.dark) .upvote-count {
|
|
495
|
+
color: var(--feedlog-muted-foreground);
|
|
496
|
+
}
|
|
497
|
+
|
|
498
|
+
:host(.dark) .upvote-button:hover .upvote-action,
|
|
499
|
+
:host(.dark) .upvote-button:hover .upvote-count {
|
|
500
|
+
color: var(--feedlog-card-foreground);
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
:host(.dark) .upvote-button.upvoted .upvote-action,
|
|
504
|
+
:host(.dark) .upvote-button.upvoted .upvote-count {
|
|
505
|
+
color: var(--feedlog-blue-400);
|
|
506
|
+
}
|
|
507
|
+
|
|
508
|
+
:host(.dark) .upvote-button.upvoted:hover .upvote-action,
|
|
509
|
+
:host(.dark) .upvote-button.upvoted:hover .upvote-count {
|
|
510
|
+
color: var(--feedlog-blue-300);
|
|
511
|
+
}
|
|
512
|
+
|
|
513
|
+
:host(.dark) .reel-container {
|
|
514
|
+
border-color: var(--feedlog-border);
|
|
515
|
+
}
|
|
516
|
+
|
|
517
|
+
:host(.dark) .upvote-button:hover .reel-container {
|
|
518
|
+
border-color: var(--feedlog-muted-foreground);
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
:host(.dark) .upvote-button.upvoted .reel-container {
|
|
522
|
+
border-color: rgba(37, 99, 235, 0.3);
|
|
523
|
+
}
|
|
524
|
+
|
|
525
|
+
:host(.dark) .upvote-button.upvoted:hover .reel-container {
|
|
526
|
+
border-color: rgba(37, 99, 235, 0.4);
|
|
439
527
|
}
|
|
@@ -130,7 +130,7 @@ export class FeedlogIssueComponent {
|
|
|
130
130
|
const statusBadgeLabel = this.getStatusBadgeLabel();
|
|
131
131
|
const githubUrl = (_b = issue.githubIssueLink) !== null && _b !== void 0 ? _b : issueUrl;
|
|
132
132
|
const showGithubButton = githubUrl != null && githubUrl !== '';
|
|
133
|
-
return (h(Host, { class: this.theme === 'dark' ? 'dark' : '', "data-upvoted": issue.hasUpvoted ? 'true' : 'false' }, h("div", { class: `issue-card issue-type-${issue.type}
|
|
133
|
+
return (h(Host, { class: this.theme === 'dark' ? 'dark' : '', "data-upvoted": issue.hasUpvoted ? 'true' : 'false' }, h("div", { class: `issue-card issue-type-${issue.type}` }, h("div", { class: "issue-media", part: "media" }, h("slot", { name: "media" })), h("div", { class: "issue-content" }, h("div", { class: "issue-main" }, h("div", { class: "issue-header-top" }, h("div", { class: "issue-badges" }, issue.type === 'bug' ? (h("feedlog-badge", { variant: "destructive" }, "Bug")) : (h("feedlog-badge", { variant: "enhancement" }, "Enhancement")), statusBadgeLabel && (h("feedlog-badge", { variant: "secondary" }, statusBadgeLabel))), h("div", { class: "issue-meta-right" }, issue.pinnedAt && (h("div", { class: "pinned-indicator", title: "Pinned issue" }, this.renderPinIcon())), h("span", { class: "issue-timestamp", title: timestampTitle }, timestampLabel, " ", this.formatDate(timestampDate)))), h("h3", { class: "issue-title" }, displayTitle), issue.body != null && issue.body !== '' && (h("div", { class: "issue-body", innerHTML: parseMarkdown(issue.body) })), (repoName != null || showGithubButton || issue.type !== 'bug') && (h("div", { class: "issue-footer" }, (repoName != null || showGithubButton) && (h("div", { class: "issue-footer-meta" }, repoName != null && (h("span", { class: "repo-name", title: repoTooltip }, repoName)), showGithubButton && (h("a", { part: "github-link", class: "github-link", href: githubUrl, target: "_blank", rel: "noopener noreferrer", title: "View on GitHub" }, this.renderExternalLinkIcon(), h("span", { class: "github-link-text" }, "View on GitHub"))))), issue.type !== 'bug' && (h("button", { part: "upvote-button", class: `upvote-button ${issue.hasUpvoted ? 'upvoted' : ''}`, onClick: (e) => this.handleUpvote(e), title: issue.hasUpvoted ? 'Remove upvote' : 'Upvote this issue' }, h("div", { class: "upvote-action" }, h("slot", { name: "upvote-icon" }, this.renderUpvoteIcon(issue.hasUpvoted)), h("span", { class: "upvote-label" }, "Upvote")), h("div", { class: "reel-container" }, h("span", { class: "upvote-count reel-number", key: issue.upvoteCount }, issue.upvoteCount)))))))))));
|
|
134
134
|
}
|
|
135
135
|
static get is() { return "feedlog-issue"; }
|
|
136
136
|
static get encapsulation() { return "shadow"; }
|