tangled
alpha
login
or
join now
flo-bit.dev
/
blento
21
fork
atom
your personal website on atproto - mirror
blento.app
21
fork
atom
overview
issues
pulls
pipelines
some fixes, update scopes
Florian
1 month ago
d3e12191
9acfe288
+65
-25
8 changed files
expand all
collapse all
unified
split
docs
CardIdeas.md
src
lib
cards
FluidTextCard
index.ts
PopfeedReviews
PopfeedReviewsCard.svelte
components
bluesky-post
BlueskyPost.svelte
post
Post.svelte
PostAction.svelte
oauth
const.ts
vite.config.ts
+5
-1
docs/CardIdeas.md
···
45
45
- [x] latest ratings
46
46
- lists
47
47
- smokesignal.events (https://pdsls.dev/at://did:plc:xbtmt2zjwlrfegqvch7fboei/events.smokesignal.calendar.event/3ltn2qrxf3626)
48
48
-
- statusphere.xyz
48
48
+
- statusphere.xyz (https://googlefonts.github.io/noto-emoji-animation/, https://gist.github.com/sanjacob/a0ccdf6d88f15bf158d8895090722d14)
49
49
- goals.garden
50
50
- flashes.blue (https://pdsls.dev/at://did:plc:aytgljyikzbtgrnac2u4ccft/blue.flashes.actor.portfolio, https://app.flashes.blue/profile/j4ck.xyz)
51
51
- room: flo-bit.dev/room
···
66
66
- memory
67
67
- pinball esque
68
68
- 2048
69
69
+
70
70
+
## various
71
71
+
72
72
+
- eyes tracking cursor (https://blento.app/jumpcity.blacksky.app)
+5
-6
src/lib/cards/FluidTextCard/index.ts
···
13
13
card.cardData = {
14
14
text: ''
15
15
};
16
16
-
card.w = 4;
17
17
-
card.h = 2;
18
18
-
card.mobileW = 4;
19
19
-
card.mobileH = 2;
16
16
+
card.w = 8;
17
17
+
card.h = 3;
18
18
+
card.mobileW = 8;
19
19
+
card.mobileH = 4;
20
20
},
21
21
creationModalComponent: CreateFluidTextCardModal,
22
22
settingsComponent: FluidTextCardSettings,
23
23
sidebarButtonText: 'Fluid Text',
24
24
defaultColor: 'transparent',
25
25
allowSetColor: false,
26
26
-
minW: 2,
27
27
-
minH: 2
26
26
+
minW: 2
28
27
} as CardDefinition & { type: 'fluid-text' };
+21
-14
src/lib/cards/PopfeedReviews/PopfeedReviewsCard.svelte
···
31
31
32
32
<div class="z-10 flex h-full gap-4 overflow-x-scroll p-4">
33
33
{#each feed ?? [] as review}
34
34
-
<a
35
35
-
rel="noopener noreferrer"
36
36
-
target="_blank"
37
37
-
class="flex"
38
38
-
href="https://popfeed.social/review/{review.uri}"
39
39
-
>
40
40
-
<div
41
41
-
class="relative flex aspect-[2/3] h-full flex-col items-center justify-end overflow-hidden rounded-xl p-1"
34
34
+
{#if review.value.rating !== undefined && review.value.posterUrl}
35
35
+
<a
36
36
+
rel="noopener noreferrer"
37
37
+
target="_blank"
38
38
+
class="flex"
39
39
+
href="https://popfeed.social/review/{review.uri}"
42
40
>
43
43
-
<img src={review.value.posterUrl} alt="" class="absolute inset-0 -z-10" />
44
41
<div
45
45
-
class="from-base-900/80 absolute right-0 bottom-0 left-0 h-1/3 bg-gradient-to-t via-transparent"
46
46
-
></div>
42
42
+
class="relative flex aspect-[2/3] h-full flex-col items-center justify-end overflow-hidden rounded-xl p-1"
43
43
+
>
44
44
+
<img
45
45
+
src={review.value.posterUrl}
46
46
+
alt=""
47
47
+
class="bg-base-200 absolute inset-0 -z-10 h-full w-full object-cover"
48
48
+
/>
49
49
+
50
50
+
<div
51
51
+
class="from-base-900/80 absolute right-0 bottom-0 left-0 h-1/3 bg-gradient-to-t via-transparent"
52
52
+
></div>
47
53
48
48
-
<Rating class="z-10 text-lg" rating={review.value.rating} />
49
49
-
</div>
50
50
-
</a>
54
54
+
<Rating class="z-10 text-lg" rating={review.value.rating} />
55
55
+
</div>
56
56
+
</a>
57
57
+
{/if}
51
58
{/each}
52
59
</div>
+9
-1
src/lib/components/bluesky-post/BlueskyPost.svelte
···
30
30
{/snippet}
31
31
32
32
{#if postData}
33
33
-
<Post data={postData} showBookmark={false} logo={showLogo ? logo : undefined} {...restProps}>
33
33
+
<Post
34
34
+
data={postData}
35
35
+
replyHref={postData?.href}
36
36
+
repostHref={postData?.href}
37
37
+
likeHref={postData?.href}
38
38
+
showBookmark={false}
39
39
+
logo={showLogo ? logo : undefined}
40
40
+
{...restProps}
41
41
+
>
34
42
{@render children?.()}
35
43
</Post>
36
44
{/if}
+11
-2
src/lib/components/post/Post.svelte
···
26
26
onLikeClick,
27
27
onBookmarkClick,
28
28
29
29
+
replyHref,
30
30
+
repostHref,
31
31
+
likeHref,
32
32
+
29
33
customActions,
30
34
31
35
children,
···
47
51
onRepostClick?: () => void;
48
52
onLikeClick?: () => void;
49
53
onBookmarkClick?: () => void;
54
54
+
55
55
+
replyHref?: string;
56
56
+
repostHref?: string;
57
57
+
likeHref?: string;
50
58
51
59
customActions?: Snippet;
52
60
···
182
190
class="text-base-500 dark:text-base-400 accent:text-base-900 mt-4 flex justify-between gap-2"
183
191
>
184
192
{#if showReply}
185
185
-
<PostAction onclick={onReplyClick}>
193
193
+
<PostAction onclick={onReplyClick} href={replyHref}>
186
194
<svg
187
195
xmlns="http://www.w3.org/2000/svg"
188
196
fill="none"
···
204
212
{/if}
205
213
206
214
{#if showRepost}
207
207
-
<PostAction onclick={onRepostClick}>
215
215
+
<PostAction onclick={onRepostClick} href={repostHref}>
208
216
<svg
209
217
xmlns="http://www.w3.org/2000/svg"
210
218
fill="none"
···
228
236
<PostAction
229
237
class={liked ? 'text-accent-700 dark:text-accent-500 font-semibold' : ''}
230
238
onclick={onLikeClick}
239
239
+
href={likeHref}
231
240
>
232
241
{#if liked}
233
242
<svg
+10
src/lib/components/post/PostAction.svelte
···
5
5
let {
6
6
onclick,
7
7
children,
8
8
+
href,
8
9
class: className
9
10
}: {
10
11
onclick?: () => void;
11
12
children: Snippet;
12
13
class?: string;
14
14
+
href?: string;
13
15
} = $props();
14
16
</script>
15
17
···
20
22
>
21
23
{@render children?.()}
22
24
</button>
25
25
+
{:else if href}
26
26
+
<a
27
27
+
class={cn('group/post-action inline-flex cursor-pointer items-center gap-2 text-sm', className)}
28
28
+
{href}
29
29
+
target="_blank"
30
30
+
>
31
31
+
{@render children?.()}
32
32
+
</a>
23
33
{:else}
24
34
<div class={cn('inline-flex items-center gap-2 text-sm', className)}>
25
35
{@render children?.()}
+1
-1
src/lib/oauth/const.ts
···
8
8
redirect_uris: [env.PUBLIC_DOMAIN + base],
9
9
10
10
scope:
11
11
-
'atproto repo:app.blento.card repo:app.blento.page repo:app.blento.settings repo:app.blento.comment repo:site.standard.publication repo:site.standard.document repo:app.blento.guestbook.entry blob:*/* rpc:app.bsky.actor.getProfile?aud=did:web:api.bsky.app%23bsky_appview',
11
11
+
'atproto repo:app.blento.card repo:app.blento.page repo:app.blento.settings repo:app.blento.comment repo:site.standard.publication repo:site.standard.document repo:app.blento.guestbook.entry repo:xyz.statusphere.status repo:app.bsky.feed.like blob:*/* rpc:app.bsky.actor.getProfile?aud=did:web:api.bsky.app%23bsky_appview',
12
12
grant_types: ['authorization_code', 'refresh_token'],
13
13
response_types: ['code'],
14
14
token_endpoint_auth_method: 'none',
+3
vite.config.ts
···
8
8
server: {
9
9
host: '127.0.0.1',
10
10
port: 5179
11
11
+
},
12
12
+
build: {
13
13
+
sourcemap: true
11
14
}
12
15
});