@feedlog-ai/webcomponents 0.0.22 → 0.0.24
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/README.md +12 -12
- package/dist/cjs/{feedlog-button_2.cjs.entry.js → feedlog-button_3.cjs.entry.js} +32 -0
- package/dist/cjs/{feedlog-github-issues-client.cjs.entry.js → feedlog-issues-client.cjs.entry.js} +3 -3
- package/dist/cjs/feedlog-issues.cjs.entry.js +71 -0
- package/dist/cjs/feedlog-toolkit.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +2 -2
- package/dist/collection/components/{feedlog-github-issues/feedlog-github-issues.css → feedlog-issues/feedlog-issues.css} +6 -53
- package/dist/collection/components/{feedlog-github-issues/feedlog-github-issues.js → feedlog-issues/feedlog-issues.js} +9 -15
- package/dist/collection/components/{feedlog-github-issues/feedlog-github-issues.stories.js → feedlog-issues/feedlog-issues.stories.js} +17 -17
- package/dist/collection/components/{feedlog-github-issues-client/feedlog-github-issues-client.js → feedlog-issues-client/feedlog-issues-client.js} +7 -7
- package/dist/collection/components/feedlog-issues-list/feedlog-issues-list.css +36 -0
- package/dist/collection/components/feedlog-issues-list/feedlog-issues-list.js +42 -1
- package/dist/collection/components/index.js +2 -2
- package/dist/components/{feedlog-github-issues.d.ts → feedlog-issues-client.d.ts} +4 -4
- package/dist/components/feedlog-issues-client.js +1 -0
- package/dist/components/feedlog-issues-list.js +1 -1
- package/dist/components/feedlog-issues.d.ts +11 -0
- package/dist/components/feedlog-issues.js +1 -0
- package/dist/components/p-BR3ookRG.js +1 -0
- package/dist/components/p-DKGIKLzX.js +1 -0
- package/dist/esm/{feedlog-button_2.entry.js → feedlog-button_3.entry.js} +32 -1
- package/dist/esm/{feedlog-github-issues-client.entry.js → feedlog-issues-client.entry.js} +3 -3
- package/dist/esm/feedlog-issues.entry.js +69 -0
- package/dist/esm/feedlog-toolkit.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/feedlog-toolkit/feedlog-toolkit.esm.js +1 -1
- package/dist/feedlog-toolkit/p-2fbb5aad.entry.js +1 -0
- package/dist/feedlog-toolkit/{p-9b515728.entry.js → p-6737a3f4.entry.js} +1 -1
- package/dist/feedlog-toolkit/{p-dad7b157.entry.js → p-f8e5e975.entry.js} +2 -2
- package/dist/types/components/{feedlog-github-issues/feedlog-github-issues.d.ts → feedlog-issues/feedlog-issues.d.ts} +4 -5
- package/dist/types/components/{feedlog-github-issues-client/feedlog-github-issues-client.d.ts → feedlog-issues-client/feedlog-issues-client.d.ts} +5 -5
- package/dist/types/components/feedlog-issues-list/feedlog-issues-list.d.ts +9 -0
- package/dist/types/components/index.d.ts +2 -2
- package/dist/types/components.d.ts +140 -124
- package/package.json +2 -2
- package/dist/cjs/feedlog-github-issues.cjs.entry.js +0 -77
- package/dist/cjs/feedlog-issues-list.cjs.entry.js +0 -33
- package/dist/components/feedlog-github-issues-client.d.ts +0 -11
- package/dist/components/feedlog-github-issues-client.js +0 -1
- package/dist/components/feedlog-github-issues.js +0 -1
- package/dist/components/p-cag4iyHV.js +0 -1
- package/dist/esm/feedlog-github-issues.entry.js +0 -75
- package/dist/esm/feedlog-issues-list.entry.js +0 -31
- package/dist/feedlog-toolkit/p-13773ed6.entry.js +0 -1
- package/dist/feedlog-toolkit/p-e5ba7dd7.entry.js +0 -1
- /package/dist/types/components/{feedlog-github-issues/feedlog-github-issues.stories.d.ts → feedlog-issues/feedlog-issues.stories.d.ts} +0 -0
|
@@ -52,11 +52,30 @@ export namespace Components {
|
|
|
52
52
|
interface FeedlogCard {
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
|
-
* Feedlog
|
|
56
|
-
*
|
|
55
|
+
* Feedlog Issue Component
|
|
56
|
+
* A component for displaying a single GitHub issue.
|
|
57
|
+
*/
|
|
58
|
+
interface FeedlogIssue {
|
|
59
|
+
/**
|
|
60
|
+
* The issue to display
|
|
61
|
+
*/
|
|
62
|
+
"issue": FeedlogIssueType;
|
|
63
|
+
/**
|
|
64
|
+
* Optional URL for the GitHub issue. When provided along with githubIssueLink, shows a "View on GitHub" button. Required because owner is no longer in the API response.
|
|
65
|
+
*/
|
|
66
|
+
"issueUrl"?: string | null;
|
|
67
|
+
/**
|
|
68
|
+
* Theme variant: 'light' or 'dark'
|
|
69
|
+
* @default 'light'
|
|
70
|
+
*/
|
|
71
|
+
"theme": 'light' | 'dark';
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Feedlog Issues Component
|
|
75
|
+
* Component for displaying issues with support for bugs and enhancements.
|
|
57
76
|
* Includes full list rendering, loading/error states, and pagination support.
|
|
58
77
|
*/
|
|
59
|
-
interface
|
|
78
|
+
interface FeedlogIssues {
|
|
60
79
|
/**
|
|
61
80
|
* Empty state message. Defaults to "Check back later for new updates.".
|
|
62
81
|
*/
|
|
@@ -71,7 +90,7 @@ export namespace Components {
|
|
|
71
90
|
*/
|
|
72
91
|
"error": string | null;
|
|
73
92
|
/**
|
|
74
|
-
* Optional callback to resolve
|
|
93
|
+
* Optional callback to resolve issue URL when githubIssueLink is not available. Required because repository.owner was removed from the API for privacy.
|
|
75
94
|
*/
|
|
76
95
|
"getIssueUrl"?: GetIssueUrlFn;
|
|
77
96
|
/**
|
|
@@ -114,11 +133,11 @@ export namespace Components {
|
|
|
114
133
|
"theme": 'light' | 'dark';
|
|
115
134
|
}
|
|
116
135
|
/**
|
|
117
|
-
* Feedlog
|
|
118
|
-
* A component for displaying
|
|
119
|
-
* This component uses the SDK internally to fetch data and delegates to feedlog-
|
|
136
|
+
* Feedlog Issues Client Component
|
|
137
|
+
* A component for displaying issues fetched using the Feedlog SDK.
|
|
138
|
+
* This component uses the SDK internally to fetch data and delegates to feedlog-issues for rendering.
|
|
120
139
|
*/
|
|
121
|
-
interface
|
|
140
|
+
interface FeedlogIssuesClient {
|
|
122
141
|
/**
|
|
123
142
|
* API key for Feedlog authentication (required) The API key determines which repositories' issues are fetched
|
|
124
143
|
*/
|
|
@@ -136,7 +155,7 @@ export namespace Components {
|
|
|
136
155
|
*/
|
|
137
156
|
"endpoint"?: string;
|
|
138
157
|
/**
|
|
139
|
-
* Optional callback to resolve
|
|
158
|
+
* Optional callback to resolve issue URL when githubIssueLink is not available. Required because repository.owner was removed from the API for privacy.
|
|
140
159
|
*/
|
|
141
160
|
"getIssueUrl"?: GetIssueUrlFn;
|
|
142
161
|
/**
|
|
@@ -171,29 +190,18 @@ export namespace Components {
|
|
|
171
190
|
"type"?: 'bug' | 'enhancement';
|
|
172
191
|
}
|
|
173
192
|
/**
|
|
174
|
-
* Feedlog
|
|
175
|
-
* A component for displaying a
|
|
193
|
+
* Feedlog Issues List Component
|
|
194
|
+
* A component for displaying a list of GitHub issues with support for bugs and enhancements.
|
|
176
195
|
*/
|
|
177
|
-
interface
|
|
178
|
-
/**
|
|
179
|
-
* The issue to display
|
|
180
|
-
*/
|
|
181
|
-
"issue": FeedlogIssueType;
|
|
196
|
+
interface FeedlogIssuesList {
|
|
182
197
|
/**
|
|
183
|
-
*
|
|
198
|
+
* Empty state message. When provided with emptyStateTitle, shows a richer empty state with illustration.
|
|
184
199
|
*/
|
|
185
|
-
"
|
|
200
|
+
"emptyStateMessage"?: string;
|
|
186
201
|
/**
|
|
187
|
-
*
|
|
188
|
-
* @default 'light'
|
|
202
|
+
* Empty state title. When provided with emptyStateMessage, shows a richer empty state with illustration.
|
|
189
203
|
*/
|
|
190
|
-
"
|
|
191
|
-
}
|
|
192
|
-
/**
|
|
193
|
-
* Feedlog Issues List Component
|
|
194
|
-
* A component for displaying a list of GitHub issues with support for bugs and enhancements.
|
|
195
|
-
*/
|
|
196
|
-
interface FeedlogIssuesList {
|
|
204
|
+
"emptyStateTitle"?: string;
|
|
197
205
|
/**
|
|
198
206
|
* Optional callback to resolve GitHub issue URL when githubIssueLink is not available.
|
|
199
207
|
*/
|
|
@@ -214,17 +222,17 @@ export interface FeedlogButtonCustomEvent<T> extends CustomEvent<T> {
|
|
|
214
222
|
detail: T;
|
|
215
223
|
target: HTMLFeedlogButtonElement;
|
|
216
224
|
}
|
|
217
|
-
export interface
|
|
225
|
+
export interface FeedlogIssueCustomEvent<T> extends CustomEvent<T> {
|
|
218
226
|
detail: T;
|
|
219
|
-
target:
|
|
227
|
+
target: HTMLFeedlogIssueElement;
|
|
220
228
|
}
|
|
221
|
-
export interface
|
|
229
|
+
export interface FeedlogIssuesCustomEvent<T> extends CustomEvent<T> {
|
|
222
230
|
detail: T;
|
|
223
|
-
target:
|
|
231
|
+
target: HTMLFeedlogIssuesElement;
|
|
224
232
|
}
|
|
225
|
-
export interface
|
|
233
|
+
export interface FeedlogIssuesClientCustomEvent<T> extends CustomEvent<T> {
|
|
226
234
|
detail: T;
|
|
227
|
-
target:
|
|
235
|
+
target: HTMLFeedlogIssuesClientElement;
|
|
228
236
|
}
|
|
229
237
|
export interface FeedlogIssuesListCustomEvent<T> extends CustomEvent<T> {
|
|
230
238
|
detail: T;
|
|
@@ -272,80 +280,80 @@ declare global {
|
|
|
272
280
|
prototype: HTMLFeedlogCardElement;
|
|
273
281
|
new (): HTMLFeedlogCardElement;
|
|
274
282
|
};
|
|
275
|
-
interface
|
|
283
|
+
interface HTMLFeedlogIssueElementEventMap {
|
|
276
284
|
"feedlogUpvote": {
|
|
277
285
|
issueId: string;
|
|
278
286
|
currentUpvoted: boolean;
|
|
279
287
|
currentCount: number;
|
|
280
288
|
};
|
|
281
|
-
"feedlogLoadMore": void;
|
|
282
289
|
}
|
|
283
290
|
/**
|
|
284
|
-
* Feedlog
|
|
285
|
-
*
|
|
286
|
-
* Includes full list rendering, loading/error states, and pagination support.
|
|
291
|
+
* Feedlog Issue Component
|
|
292
|
+
* A component for displaying a single GitHub issue.
|
|
287
293
|
*/
|
|
288
|
-
interface
|
|
289
|
-
addEventListener<K extends keyof
|
|
294
|
+
interface HTMLFeedlogIssueElement extends Components.FeedlogIssue, HTMLStencilElement {
|
|
295
|
+
addEventListener<K extends keyof HTMLFeedlogIssueElementEventMap>(type: K, listener: (this: HTMLFeedlogIssueElement, ev: FeedlogIssueCustomEvent<HTMLFeedlogIssueElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
290
296
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
291
297
|
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
292
298
|
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
293
|
-
removeEventListener<K extends keyof
|
|
299
|
+
removeEventListener<K extends keyof HTMLFeedlogIssueElementEventMap>(type: K, listener: (this: HTMLFeedlogIssueElement, ev: FeedlogIssueCustomEvent<HTMLFeedlogIssueElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
294
300
|
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
295
301
|
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
296
302
|
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
297
303
|
}
|
|
298
|
-
var
|
|
299
|
-
prototype:
|
|
300
|
-
new ():
|
|
304
|
+
var HTMLFeedlogIssueElement: {
|
|
305
|
+
prototype: HTMLFeedlogIssueElement;
|
|
306
|
+
new (): HTMLFeedlogIssueElement;
|
|
301
307
|
};
|
|
302
|
-
interface
|
|
303
|
-
"feedlogUpvote": {
|
|
304
|
-
|
|
308
|
+
interface HTMLFeedlogIssuesElementEventMap {
|
|
309
|
+
"feedlogUpvote": {
|
|
310
|
+
issueId: string;
|
|
311
|
+
currentUpvoted: boolean;
|
|
312
|
+
currentCount: number;
|
|
313
|
+
};
|
|
314
|
+
"feedlogLoadMore": void;
|
|
305
315
|
}
|
|
306
316
|
/**
|
|
307
|
-
* Feedlog
|
|
308
|
-
*
|
|
309
|
-
*
|
|
317
|
+
* Feedlog Issues Component
|
|
318
|
+
* Component for displaying issues with support for bugs and enhancements.
|
|
319
|
+
* Includes full list rendering, loading/error states, and pagination support.
|
|
310
320
|
*/
|
|
311
|
-
interface
|
|
312
|
-
addEventListener<K extends keyof
|
|
321
|
+
interface HTMLFeedlogIssuesElement extends Components.FeedlogIssues, HTMLStencilElement {
|
|
322
|
+
addEventListener<K extends keyof HTMLFeedlogIssuesElementEventMap>(type: K, listener: (this: HTMLFeedlogIssuesElement, ev: FeedlogIssuesCustomEvent<HTMLFeedlogIssuesElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
313
323
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
314
324
|
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
315
325
|
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
316
|
-
removeEventListener<K extends keyof
|
|
326
|
+
removeEventListener<K extends keyof HTMLFeedlogIssuesElementEventMap>(type: K, listener: (this: HTMLFeedlogIssuesElement, ev: FeedlogIssuesCustomEvent<HTMLFeedlogIssuesElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
317
327
|
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
318
328
|
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
319
329
|
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
320
330
|
}
|
|
321
|
-
var
|
|
322
|
-
prototype:
|
|
323
|
-
new ():
|
|
331
|
+
var HTMLFeedlogIssuesElement: {
|
|
332
|
+
prototype: HTMLFeedlogIssuesElement;
|
|
333
|
+
new (): HTMLFeedlogIssuesElement;
|
|
324
334
|
};
|
|
325
|
-
interface
|
|
326
|
-
"feedlogUpvote": {
|
|
327
|
-
|
|
328
|
-
currentUpvoted: boolean;
|
|
329
|
-
currentCount: number;
|
|
330
|
-
};
|
|
335
|
+
interface HTMLFeedlogIssuesClientElementEventMap {
|
|
336
|
+
"feedlogUpvote": { issueId: string; upvoted: boolean; upvoteCount: number };
|
|
337
|
+
"feedlogError": { error: string; code?: number };
|
|
331
338
|
}
|
|
332
339
|
/**
|
|
333
|
-
* Feedlog
|
|
334
|
-
* A component for displaying
|
|
340
|
+
* Feedlog Issues Client Component
|
|
341
|
+
* A component for displaying issues fetched using the Feedlog SDK.
|
|
342
|
+
* This component uses the SDK internally to fetch data and delegates to feedlog-issues for rendering.
|
|
335
343
|
*/
|
|
336
|
-
interface
|
|
337
|
-
addEventListener<K extends keyof
|
|
344
|
+
interface HTMLFeedlogIssuesClientElement extends Components.FeedlogIssuesClient, HTMLStencilElement {
|
|
345
|
+
addEventListener<K extends keyof HTMLFeedlogIssuesClientElementEventMap>(type: K, listener: (this: HTMLFeedlogIssuesClientElement, ev: FeedlogIssuesClientCustomEvent<HTMLFeedlogIssuesClientElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
338
346
|
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
339
347
|
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
340
348
|
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
341
|
-
removeEventListener<K extends keyof
|
|
349
|
+
removeEventListener<K extends keyof HTMLFeedlogIssuesClientElementEventMap>(type: K, listener: (this: HTMLFeedlogIssuesClientElement, ev: FeedlogIssuesClientCustomEvent<HTMLFeedlogIssuesClientElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
342
350
|
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
343
351
|
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
344
352
|
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
345
353
|
}
|
|
346
|
-
var
|
|
347
|
-
prototype:
|
|
348
|
-
new ():
|
|
354
|
+
var HTMLFeedlogIssuesClientElement: {
|
|
355
|
+
prototype: HTMLFeedlogIssuesClientElement;
|
|
356
|
+
new (): HTMLFeedlogIssuesClientElement;
|
|
349
357
|
};
|
|
350
358
|
interface HTMLFeedlogIssuesListElementEventMap {
|
|
351
359
|
"feedlogUpvote": {
|
|
@@ -376,9 +384,9 @@ declare global {
|
|
|
376
384
|
"feedlog-badge": HTMLFeedlogBadgeElement;
|
|
377
385
|
"feedlog-button": HTMLFeedlogButtonElement;
|
|
378
386
|
"feedlog-card": HTMLFeedlogCardElement;
|
|
379
|
-
"feedlog-github-issues": HTMLFeedlogGithubIssuesElement;
|
|
380
|
-
"feedlog-github-issues-client": HTMLFeedlogGithubIssuesClientElement;
|
|
381
387
|
"feedlog-issue": HTMLFeedlogIssueElement;
|
|
388
|
+
"feedlog-issues": HTMLFeedlogIssuesElement;
|
|
389
|
+
"feedlog-issues-client": HTMLFeedlogIssuesClientElement;
|
|
382
390
|
"feedlog-issues-list": HTMLFeedlogIssuesListElement;
|
|
383
391
|
}
|
|
384
392
|
}
|
|
@@ -431,11 +439,38 @@ declare namespace LocalJSX {
|
|
|
431
439
|
interface FeedlogCard {
|
|
432
440
|
}
|
|
433
441
|
/**
|
|
434
|
-
* Feedlog
|
|
435
|
-
*
|
|
442
|
+
* Feedlog Issue Component
|
|
443
|
+
* A component for displaying a single GitHub issue.
|
|
444
|
+
*/
|
|
445
|
+
interface FeedlogIssue {
|
|
446
|
+
/**
|
|
447
|
+
* The issue to display
|
|
448
|
+
*/
|
|
449
|
+
"issue": FeedlogIssueType;
|
|
450
|
+
/**
|
|
451
|
+
* Optional URL for the GitHub issue. When provided along with githubIssueLink, shows a "View on GitHub" button. Required because owner is no longer in the API response.
|
|
452
|
+
*/
|
|
453
|
+
"issueUrl"?: string | null;
|
|
454
|
+
/**
|
|
455
|
+
* Event emitted when the issue is upvoted
|
|
456
|
+
*/
|
|
457
|
+
"onFeedlogUpvote"?: (event: FeedlogIssueCustomEvent<{
|
|
458
|
+
issueId: string;
|
|
459
|
+
currentUpvoted: boolean;
|
|
460
|
+
currentCount: number;
|
|
461
|
+
}>) => void;
|
|
462
|
+
/**
|
|
463
|
+
* Theme variant: 'light' or 'dark'
|
|
464
|
+
* @default 'light'
|
|
465
|
+
*/
|
|
466
|
+
"theme"?: 'light' | 'dark';
|
|
467
|
+
}
|
|
468
|
+
/**
|
|
469
|
+
* Feedlog Issues Component
|
|
470
|
+
* Component for displaying issues with support for bugs and enhancements.
|
|
436
471
|
* Includes full list rendering, loading/error states, and pagination support.
|
|
437
472
|
*/
|
|
438
|
-
interface
|
|
473
|
+
interface FeedlogIssues {
|
|
439
474
|
/**
|
|
440
475
|
* Empty state message. Defaults to "Check back later for new updates.".
|
|
441
476
|
*/
|
|
@@ -450,7 +485,7 @@ declare namespace LocalJSX {
|
|
|
450
485
|
*/
|
|
451
486
|
"error"?: string | null;
|
|
452
487
|
/**
|
|
453
|
-
* Optional callback to resolve
|
|
488
|
+
* Optional callback to resolve issue URL when githubIssueLink is not available. Required because repository.owner was removed from the API for privacy.
|
|
454
489
|
*/
|
|
455
490
|
"getIssueUrl"?: GetIssueUrlFn;
|
|
456
491
|
/**
|
|
@@ -485,11 +520,11 @@ declare namespace LocalJSX {
|
|
|
485
520
|
/**
|
|
486
521
|
* Event emitted to load more issues
|
|
487
522
|
*/
|
|
488
|
-
"onFeedlogLoadMore"?: (event:
|
|
523
|
+
"onFeedlogLoadMore"?: (event: FeedlogIssuesCustomEvent<void>) => void;
|
|
489
524
|
/**
|
|
490
525
|
* Event emitted when an issue is upvoted
|
|
491
526
|
*/
|
|
492
|
-
"onFeedlogUpvote"?: (event:
|
|
527
|
+
"onFeedlogUpvote"?: (event: FeedlogIssuesCustomEvent<{
|
|
493
528
|
issueId: string;
|
|
494
529
|
currentUpvoted: boolean;
|
|
495
530
|
currentCount: number;
|
|
@@ -505,11 +540,11 @@ declare namespace LocalJSX {
|
|
|
505
540
|
"theme"?: 'light' | 'dark';
|
|
506
541
|
}
|
|
507
542
|
/**
|
|
508
|
-
* Feedlog
|
|
509
|
-
* A component for displaying
|
|
510
|
-
* This component uses the SDK internally to fetch data and delegates to feedlog-
|
|
543
|
+
* Feedlog Issues Client Component
|
|
544
|
+
* A component for displaying issues fetched using the Feedlog SDK.
|
|
545
|
+
* This component uses the SDK internally to fetch data and delegates to feedlog-issues for rendering.
|
|
511
546
|
*/
|
|
512
|
-
interface
|
|
547
|
+
interface FeedlogIssuesClient {
|
|
513
548
|
/**
|
|
514
549
|
* API key for Feedlog authentication (required) The API key determines which repositories' issues are fetched
|
|
515
550
|
*/
|
|
@@ -527,7 +562,7 @@ declare namespace LocalJSX {
|
|
|
527
562
|
*/
|
|
528
563
|
"endpoint"?: string;
|
|
529
564
|
/**
|
|
530
|
-
* Optional callback to resolve
|
|
565
|
+
* Optional callback to resolve issue URL when githubIssueLink is not available. Required because repository.owner was removed from the API for privacy.
|
|
531
566
|
*/
|
|
532
567
|
"getIssueUrl"?: GetIssueUrlFn;
|
|
533
568
|
/**
|
|
@@ -546,11 +581,11 @@ declare namespace LocalJSX {
|
|
|
546
581
|
/**
|
|
547
582
|
* Event emitted on error
|
|
548
583
|
*/
|
|
549
|
-
"onFeedlogError"?: (event:
|
|
584
|
+
"onFeedlogError"?: (event: FeedlogIssuesClientCustomEvent<{ error: string; code?: number }>) => void;
|
|
550
585
|
/**
|
|
551
586
|
* Event emitted when an issue is upvoted
|
|
552
587
|
*/
|
|
553
|
-
"onFeedlogUpvote"?: (event:
|
|
588
|
+
"onFeedlogUpvote"?: (event: FeedlogIssuesClientCustomEvent<{ issueId: string; upvoted: boolean; upvoteCount: number }>) => void;
|
|
554
589
|
/**
|
|
555
590
|
* Sort issues by field: 'createdAt' or 'updatedAt'
|
|
556
591
|
*/
|
|
@@ -570,37 +605,18 @@ declare namespace LocalJSX {
|
|
|
570
605
|
"type"?: 'bug' | 'enhancement';
|
|
571
606
|
}
|
|
572
607
|
/**
|
|
573
|
-
* Feedlog
|
|
574
|
-
* A component for displaying a
|
|
608
|
+
* Feedlog Issues List Component
|
|
609
|
+
* A component for displaying a list of GitHub issues with support for bugs and enhancements.
|
|
575
610
|
*/
|
|
576
|
-
interface
|
|
577
|
-
/**
|
|
578
|
-
* The issue to display
|
|
579
|
-
*/
|
|
580
|
-
"issue": FeedlogIssueType;
|
|
611
|
+
interface FeedlogIssuesList {
|
|
581
612
|
/**
|
|
582
|
-
*
|
|
613
|
+
* Empty state message. When provided with emptyStateTitle, shows a richer empty state with illustration.
|
|
583
614
|
*/
|
|
584
|
-
"
|
|
615
|
+
"emptyStateMessage"?: string;
|
|
585
616
|
/**
|
|
586
|
-
*
|
|
617
|
+
* Empty state title. When provided with emptyStateMessage, shows a richer empty state with illustration.
|
|
587
618
|
*/
|
|
588
|
-
"
|
|
589
|
-
issueId: string;
|
|
590
|
-
currentUpvoted: boolean;
|
|
591
|
-
currentCount: number;
|
|
592
|
-
}>) => void;
|
|
593
|
-
/**
|
|
594
|
-
* Theme variant: 'light' or 'dark'
|
|
595
|
-
* @default 'light'
|
|
596
|
-
*/
|
|
597
|
-
"theme"?: 'light' | 'dark';
|
|
598
|
-
}
|
|
599
|
-
/**
|
|
600
|
-
* Feedlog Issues List Component
|
|
601
|
-
* A component for displaying a list of GitHub issues with support for bugs and enhancements.
|
|
602
|
-
*/
|
|
603
|
-
interface FeedlogIssuesList {
|
|
619
|
+
"emptyStateTitle"?: string;
|
|
604
620
|
/**
|
|
605
621
|
* Optional callback to resolve GitHub issue URL when githubIssueLink is not available.
|
|
606
622
|
*/
|
|
@@ -628,9 +644,9 @@ declare namespace LocalJSX {
|
|
|
628
644
|
"feedlog-badge": FeedlogBadge;
|
|
629
645
|
"feedlog-button": FeedlogButton;
|
|
630
646
|
"feedlog-card": FeedlogCard;
|
|
631
|
-
"feedlog-github-issues": FeedlogGithubIssues;
|
|
632
|
-
"feedlog-github-issues-client": FeedlogGithubIssuesClient;
|
|
633
647
|
"feedlog-issue": FeedlogIssue;
|
|
648
|
+
"feedlog-issues": FeedlogIssues;
|
|
649
|
+
"feedlog-issues-client": FeedlogIssuesClient;
|
|
634
650
|
"feedlog-issues-list": FeedlogIssuesList;
|
|
635
651
|
}
|
|
636
652
|
}
|
|
@@ -654,22 +670,22 @@ declare module "@stencil/core" {
|
|
|
654
670
|
*/
|
|
655
671
|
"feedlog-card": LocalJSX.FeedlogCard & JSXBase.HTMLAttributes<HTMLFeedlogCardElement>;
|
|
656
672
|
/**
|
|
657
|
-
* Feedlog
|
|
658
|
-
*
|
|
659
|
-
* Includes full list rendering, loading/error states, and pagination support.
|
|
673
|
+
* Feedlog Issue Component
|
|
674
|
+
* A component for displaying a single GitHub issue.
|
|
660
675
|
*/
|
|
661
|
-
"feedlog-
|
|
676
|
+
"feedlog-issue": LocalJSX.FeedlogIssue & JSXBase.HTMLAttributes<HTMLFeedlogIssueElement>;
|
|
662
677
|
/**
|
|
663
|
-
* Feedlog
|
|
664
|
-
*
|
|
665
|
-
*
|
|
678
|
+
* Feedlog Issues Component
|
|
679
|
+
* Component for displaying issues with support for bugs and enhancements.
|
|
680
|
+
* Includes full list rendering, loading/error states, and pagination support.
|
|
666
681
|
*/
|
|
667
|
-
"feedlog-
|
|
682
|
+
"feedlog-issues": LocalJSX.FeedlogIssues & JSXBase.HTMLAttributes<HTMLFeedlogIssuesElement>;
|
|
668
683
|
/**
|
|
669
|
-
* Feedlog
|
|
670
|
-
* A component for displaying
|
|
684
|
+
* Feedlog Issues Client Component
|
|
685
|
+
* A component for displaying issues fetched using the Feedlog SDK.
|
|
686
|
+
* This component uses the SDK internally to fetch data and delegates to feedlog-issues for rendering.
|
|
671
687
|
*/
|
|
672
|
-
"feedlog-
|
|
688
|
+
"feedlog-issues-client": LocalJSX.FeedlogIssuesClient & JSXBase.HTMLAttributes<HTMLFeedlogIssuesClientElement>;
|
|
673
689
|
/**
|
|
674
690
|
* Feedlog Issues List Component
|
|
675
691
|
* A component for displaying a list of GitHub issues with support for bugs and enhancements.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@feedlog-ai/webcomponents",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.24",
|
|
4
4
|
"description": "Stencil web components for Feedlog Toolkit - Data visualization components",
|
|
5
5
|
"main": "./dist/index.cjs.js",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"clean": "rm -rf dist loader"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
|
-
"@feedlog-ai/core": "^0.0.
|
|
62
|
+
"@feedlog-ai/core": "^0.0.24",
|
|
63
63
|
"dompurify": "^3.3.1",
|
|
64
64
|
"marked": "^17.0.2"
|
|
65
65
|
},
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var index = require('./index-DnsqTPII.js');
|
|
4
|
-
|
|
5
|
-
const feedlogGithubIssuesCss = () => `:host{display:block;font-family:ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace;--feedlog-background:#ffffff;--feedlog-foreground:oklch(0.145 0 0);--feedlog-card:#ffffff;--feedlog-card-foreground:oklch(0.145 0 0);--feedlog-muted:#ececf0;--feedlog-muted-foreground:#717182;--feedlog-border:rgba(0, 0, 0, 0.1);--feedlog-accent-color:#2563eb;--feedlog-destructive:#d4183d;--feedlog-blue-400:oklch(0.707 0.165 254.624);--feedlog-blue-600:oklch(0.546 0.245 262.881);--feedlog-blue-100:oklch(0.932 0.032 255.585);--feedlog-red-100:#fce7f3;--feedlog-red-400:#f472b6;--feedlog-red-600:#db2777;--feedlog-radius:0.625rem;--feedlog-gap:0.5rem;--feedlog-padding:2rem;--feedlog-shadow:0 1px 3px 0 rgba(0, 0, 0, 0.08), 0 1px 2px -1px rgba(0, 0, 0, 0.08);--feedlog-empty-illustration-bg:oklch(0.96 0.01 260);--feedlog-empty-illustration-stroke:oklch(0.75 0.02 260);--feedlog-empty-illustration-muted:oklch(0.82 0.01 260)}:host(.dark){--feedlog-background:oklch(0.18 0.01 260);--feedlog-foreground:oklch(0.985 0 0);--feedlog-card:oklch(0.24 0.01 260);--feedlog-card-foreground:oklch(0.985 0 0);--feedlog-muted:oklch(0.32 0.01 260);--feedlog-muted-foreground:oklch(0.72 0.02 260);--feedlog-border:oklch(0.34 0.01 260);--feedlog-accent-color:#3b82f6;--feedlog-destructive:oklch(0.396 0.141 25.723);--feedlog-blue-400:oklch(0.707 0.165 254.624);--feedlog-blue-600:oklch(0.546 0.245 262.881);--feedlog-blue-900-30:color-mix(in oklab, oklch(0.379 0.146 265.522) 30%, transparent);--feedlog-red-900-30:color-mix(in oklab, oklch(0.396 0.141 25.723) 30%, transparent);--feedlog-shadow:0 1px 3px 0 rgba(0, 0, 0, 0.3);--feedlog-empty-illustration-bg:oklch(0.28 0.02 260);--feedlog-empty-illustration-stroke:oklch(0.45 0.02 260);--feedlog-empty-illustration-muted:oklch(0.38 0.02 260)}.github-issues-container{min-height:100vh;background-color:var(--feedlog-background);padding:var(--feedlog-padding);margin:0 auto}.issues-header{margin-bottom:1.5rem;display:flex;align-items:flex-start;justify-content:space-between}.header-content{flex:1}.issues-title{color:var(--feedlog-foreground);margin:0 0 0.25rem 0;font-size:1.5rem;font-weight:500;line-height:1.5}.issues-subtitle{color:var(--feedlog-muted-foreground);font-size:0.875rem;margin:0}.loading-state{padding:0}.loading-skeletons{display:flex;flex-direction:column;gap:var(--feedlog-gap)}.skeleton-card{background-color:var(--feedlog-card);border:1px solid var(--feedlog-border);border-radius:var(--feedlog-radius);box-shadow:var(--feedlog-shadow);position:relative;overflow:hidden}.skeleton-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--feedlog-muted)}.skeleton-content{padding:1.25rem;padding-left:calc(1.25rem + 3px);display:flex;flex-direction:column;gap:0.875rem}.skeleton-header{display:flex;align-items:center;justify-content:space-between;gap:0.75rem}.skeleton-badge{width:4.5rem;height:1.25rem;border-radius:0.375rem;background-color:var(--feedlog-muted);animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-timestamp{width:3rem;height:0.75rem;border-radius:0.25rem;background-color:var(--feedlog-muted);animation:skeleton-pulse 1.5s ease-in-out infinite 0.2s}.skeleton-main{display:flex;flex-direction:column;gap:0.5rem}.skeleton-title{height:0.9375rem;border-radius:0.25rem;background-color:var(--feedlog-muted);animation:skeleton-pulse 1.5s ease-in-out infinite 0.1s;width:85%}.skeleton-body{display:flex;flex-direction:column;gap:0.375rem}.skeleton-line{height:0.8125rem;border-radius:0.25rem;background-color:var(--feedlog-muted);animation:skeleton-pulse 1.5s ease-in-out infinite 0.15s;width:100%}.skeleton-line.short{width:70%}.skeleton-repo{width:6rem;height:0.75rem;border-radius:0.25rem;background-color:var(--feedlog-muted);animation:skeleton-pulse 1.5s ease-in-out infinite 0.25s}.skeleton-footer{display:flex;justify-content:flex-end}.skeleton-upvote{width:2.5rem;height:2rem;border-radius:0.5rem;background-color:var(--feedlog-muted);animation:skeleton-pulse 1.5s ease-in-out infinite 0.3s}@keyframes skeleton-pulse{0%,100%{opacity:1}50%{opacity:0.5}}.error-state{display:flex;align-items:center;justify-content:center;padding:3rem 2rem;min-height:12rem}.error-state-content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:20rem;padding:2rem}.error-icon{color:var(--feedlog-muted-foreground);opacity:0.8;margin-bottom:1rem}.error-state-title{margin:0 0 0.5rem 0;font-size:1.125rem;font-weight:600;color:var(--feedlog-foreground);line-height:1.4}.error-state-message{margin:0 0 1.25rem 0;font-size:0.875rem;color:var(--feedlog-muted-foreground);line-height:1.5}.issues-list{display:flex;flex-direction:column;gap:var(--feedlog-gap)}.empty-state{display:flex;align-items:center;justify-content:center;padding:4rem 2rem;min-height:16rem}.empty-state-content{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:20rem}.empty-state-illustration{margin-bottom:1.5rem;opacity:0.9}.empty-state-title{margin:0 0 0.5rem 0;font-size:1.125rem;font-weight:600;color:var(--feedlog-foreground);line-height:1.4}.empty-state-message{margin:0;font-size:0.875rem;color:var(--feedlog-muted-foreground);line-height:1.5}.load-more-container{display:flex;justify-content:center;padding:2rem 0;gap:1rem}`;
|
|
6
|
-
|
|
7
|
-
const FeedlogGithubIssues = class {
|
|
8
|
-
constructor(hostRef) {
|
|
9
|
-
index.registerInstance(this, hostRef);
|
|
10
|
-
this.feedlogUpvote = index.createEvent(this, "feedlogUpvote");
|
|
11
|
-
this.feedlogLoadMore = index.createEvent(this, "feedlogLoadMore");
|
|
12
|
-
/**
|
|
13
|
-
* Array of issues to display
|
|
14
|
-
*/
|
|
15
|
-
this.issues = [];
|
|
16
|
-
/**
|
|
17
|
-
* Maximum width of the container
|
|
18
|
-
*/
|
|
19
|
-
this.maxWidth = '42rem';
|
|
20
|
-
/**
|
|
21
|
-
* Theme variant: 'light' or 'dark'
|
|
22
|
-
*/
|
|
23
|
-
this.theme = 'light';
|
|
24
|
-
/**
|
|
25
|
-
* Loading state - shows loading indicator when true
|
|
26
|
-
*/
|
|
27
|
-
this.loading = false;
|
|
28
|
-
/**
|
|
29
|
-
* Error message - shows error state when set
|
|
30
|
-
*/
|
|
31
|
-
this.error = null;
|
|
32
|
-
/**
|
|
33
|
-
* Whether there are more issues to load
|
|
34
|
-
*/
|
|
35
|
-
this.hasMore = false;
|
|
36
|
-
/**
|
|
37
|
-
* Whether more issues are currently loading
|
|
38
|
-
*/
|
|
39
|
-
this.isLoadingMore = false;
|
|
40
|
-
/**
|
|
41
|
-
* Internal state for theme
|
|
42
|
-
*/
|
|
43
|
-
this.currentTheme = 'light';
|
|
44
|
-
this.handleUpvote = (event) => {
|
|
45
|
-
event.stopPropagation();
|
|
46
|
-
this.feedlogUpvote.emit(event.detail);
|
|
47
|
-
};
|
|
48
|
-
this.handleLoadMore = () => {
|
|
49
|
-
this.feedlogLoadMore.emit();
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
componentWillLoad() {
|
|
53
|
-
this.currentTheme = this.theme;
|
|
54
|
-
}
|
|
55
|
-
renderEmptyStateIllustration() {
|
|
56
|
-
return (index.h("svg", { class: "empty-state-illustration", xmlns: "http://www.w3.org/2000/svg", width: "120", height: "96", viewBox: "0 0 120 96", fill: "none", "aria-hidden": "true" }, index.h("path", { d: "M20 36h80v44c0 4.4-3.6 8-8 8H28c-4.4 0-8-3.6-8-8V36z", fill: "var(--feedlog-empty-illustration-bg)", stroke: "var(--feedlog-empty-illustration-stroke)", "stroke-width": "1.5", "stroke-linejoin": "round" }), index.h("path", { d: "M20 36l20-24h40l20 24", fill: "none", stroke: "var(--feedlog-empty-illustration-stroke)", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round" }), index.h("path", { d: "M44 52h32M44 60h24M44 68h28", stroke: "var(--feedlog-empty-illustration-muted)", "stroke-width": "1.25", "stroke-linecap": "round" })));
|
|
57
|
-
}
|
|
58
|
-
renderErrorIcon() {
|
|
59
|
-
return (index.h("svg", { class: "error-icon", xmlns: "http://www.w3.org/2000/svg", width: "48", height: "48", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", "stroke-width": "1.5", "stroke-linecap": "round", "stroke-linejoin": "round", "aria-hidden": "true" }, index.h("circle", { cx: "12", cy: "12", r: "10" }), index.h("line", { x1: "12", y1: "8", x2: "12", y2: "12" }), index.h("line", { x1: "12", y1: "16", x2: "12.01", y2: "16" })));
|
|
60
|
-
}
|
|
61
|
-
renderIssuesList() {
|
|
62
|
-
var _a, _b;
|
|
63
|
-
return (index.h("div", { class: "issues-list" }, this.issues.length === 0 ? (index.h("div", { class: "empty-state" }, index.h("div", { class: "empty-state-content" }, this.renderEmptyStateIllustration(), index.h("h2", { class: "empty-state-title" }, (_a = this.emptyStateTitle) !== null && _a !== void 0 ? _a : 'No updates yet'), index.h("p", { class: "empty-state-message" }, (_b = this.emptyStateMessage) !== null && _b !== void 0 ? _b : 'Check back later for new updates.')))) : (this.issues.map(issue => {
|
|
64
|
-
var _a, _b;
|
|
65
|
-
return (index.h("feedlog-issue", { key: issue.id, issue: issue, issueUrl: (_b = (_a = this.getIssueUrl) === null || _a === void 0 ? void 0 : _a.call(this, issue)) !== null && _b !== void 0 ? _b : undefined, theme: this.currentTheme, onFeedlogUpvote: (e) => this.handleUpvote(e) }));
|
|
66
|
-
}))));
|
|
67
|
-
}
|
|
68
|
-
render() {
|
|
69
|
-
const containerStyle = {
|
|
70
|
-
maxWidth: this.maxWidth,
|
|
71
|
-
};
|
|
72
|
-
return (index.h(index.Host, { key: 'fbd1890061b47db8b850a8d993e2ac5432c4b3f6', class: this.currentTheme === 'dark' ? 'dark' : '' }, index.h("div", { key: '5ce9267da314ebb69ed8ee00f28015fdad73ab8a', class: "github-issues-container", style: containerStyle }, (this.heading || this.subtitle) && (index.h("header", { key: '461c707df1e5dc7eaab15462de975fafdce872df', class: "issues-header" }, index.h("div", { key: 'e6972c2f0cfe5630cc73fb41a2103c9b0118179c', class: "header-content" }, this.heading && index.h("h1", { key: 'd74e89c1ad981da6c4287e5b75256bfb831f1172', class: "issues-title" }, this.heading), this.subtitle && index.h("p", { key: 'c820d8e3beaa57c0c193ceaace1d13e94a2a6290', class: "issues-subtitle" }, this.subtitle)))), this.loading && (index.h("div", { key: '959be24cb77b257fba5197302448f78af553817e', class: "loading-state", role: "status", "aria-label": "Loading issues" }, index.h("div", { key: 'e69594f18e3268208634a3ad82cb2ae0bc552c11', class: "loading-skeletons" }, [1, 2, 3].map(i => (index.h("div", { key: i, class: "skeleton-card" }, index.h("div", { class: "skeleton-content" }, index.h("div", { class: "skeleton-header" }, index.h("div", { class: "skeleton-badge" }), index.h("div", { class: "skeleton-timestamp" })), index.h("div", { class: "skeleton-main" }, index.h("div", { class: "skeleton-title" }), index.h("div", { class: "skeleton-body" }, index.h("div", { class: "skeleton-line" }), index.h("div", { class: "skeleton-line short" })), index.h("div", { class: "skeleton-repo" })), index.h("div", { class: "skeleton-footer" }, index.h("div", { class: "skeleton-upvote" }))))))))), this.error && (index.h("div", { key: '93e82b0beca0b96c23803b1abfc3d50fe099fa6a', class: "error-state", role: "alert" }, index.h("div", { key: '9276d85925d02bd4c81d5ee44a5d6a8af986c4c9', class: "error-state-content" }, this.renderErrorIcon(), index.h("h2", { key: '6f5762740f908712a46cddeafae675294d3bcc40', class: "error-state-title" }, "Something went wrong"), index.h("p", { key: 'f1587bd9a2abe250aa730d64498a5105a412d657', class: "error-state-message" }, this.error)))), !this.loading && !this.error && (index.h("div", { key: '22c68553352358a9a408ea763af1e63c9c84eabd' }, this.renderIssuesList(), this.hasMore && (index.h("div", { key: '231ec6f4680b4b114ba72c657f9801d84951a6d6', class: "load-more-container" }, index.h("feedlog-button", { key: '18fa475708fe233f3f9d0ec85bf0f8daea9a4a0a', onFeedlogClick: this.handleLoadMore, disabled: this.isLoadingMore, variant: "outline" }, this.isLoadingMore ? 'Loading...' : 'Load More Issues'))))))));
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
FeedlogGithubIssues.style = feedlogGithubIssuesCss();
|
|
76
|
-
|
|
77
|
-
exports.feedlog_github_issues = FeedlogGithubIssues;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var index = require('./index-DnsqTPII.js');
|
|
4
|
-
|
|
5
|
-
const feedlogIssuesListCss = () => `:host{display:block;--feedlog-muted-foreground:#64748b}:host(.dark){--feedlog-muted-foreground:oklch(0.72 0.02 260)}.issues-list{display:flex;flex-direction:column;gap:0.5rem}.empty-state{text-align:center;padding:3rem 1.5rem;color:var(--feedlog-muted-foreground);font-size:0.875rem}`;
|
|
6
|
-
|
|
7
|
-
const FeedlogIssuesList = class {
|
|
8
|
-
constructor(hostRef) {
|
|
9
|
-
index.registerInstance(this, hostRef);
|
|
10
|
-
this.feedlogUpvote = index.createEvent(this, "feedlogUpvote");
|
|
11
|
-
/**
|
|
12
|
-
* Array of issues to display
|
|
13
|
-
*/
|
|
14
|
-
this.issues = [];
|
|
15
|
-
/**
|
|
16
|
-
* Theme variant: 'light' or 'dark'
|
|
17
|
-
*/
|
|
18
|
-
this.theme = 'light';
|
|
19
|
-
this.handleUpvote = (event) => {
|
|
20
|
-
event.stopPropagation();
|
|
21
|
-
this.feedlogUpvote.emit(event.detail);
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
render() {
|
|
25
|
-
return (index.h(index.Host, { key: '005de8cf99383128f6973be57d84499c8ca9afd3', class: this.theme === 'dark' ? 'dark' : '' }, index.h("div", { key: '60edc37014f6703b9400dc8bf06726c9a8428a3b', class: "issues-list" }, this.issues.length === 0 ? (index.h("div", { class: "empty-state" }, index.h("p", null, "No issues found"))) : (this.issues.map(issue => {
|
|
26
|
-
var _a, _b;
|
|
27
|
-
return (index.h("feedlog-issue", { key: issue.id, issue: issue, issueUrl: (_b = (_a = this.getIssueUrl) === null || _a === void 0 ? void 0 : _a.call(this, issue)) !== null && _b !== void 0 ? _b : undefined, theme: this.theme, onFeedlogUpvote: (e) => this.handleUpvote(e) }));
|
|
28
|
-
})))));
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
FeedlogIssuesList.style = feedlogIssuesListCss();
|
|
32
|
-
|
|
33
|
-
exports.feedlog_issues_list = FeedlogIssuesList;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Components, JSX } from "../types/components";
|
|
2
|
-
|
|
3
|
-
interface FeedlogGithubIssuesClient extends Components.FeedlogGithubIssuesClient, HTMLElement {}
|
|
4
|
-
export const FeedlogGithubIssuesClient: {
|
|
5
|
-
prototype: FeedlogGithubIssuesClient;
|
|
6
|
-
new (): FeedlogGithubIssuesClient;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Used to define this component and all nested components recursively.
|
|
10
|
-
*/
|
|
11
|
-
export const defineCustomElement: () => void;
|