web_lib

Common web application libraries
git clone https://radroots.dev/git/web_lib.git
Log | Files | Refs | LICENSE

commit 7719c7fbc5bc591c6bb8cd904214ea65e3a36369
parent c195821520bceb72d1cae1fbe760e27016c4b337
Author: triesap <137732411+triesap@users.noreply.github.com>
Date:   Sat, 15 Feb 2025 06:13:17 +0000

apps-lib: edit profile view, add splash screen, edit components, stores

Diffstat:
Mapps-lib/src/lib/components/button/float-page-button.svelte | 3+++
Mapps-lib/src/lib/components/carousel/carousel-flow.svelte | 2+-
Aapps-lib/src/lib/components/lib/splash_screen.svelte | 14++++++++++++++
Mapps-lib/src/lib/index.ts | 1+
Mapps-lib/src/lib/store/app.ts | 1+
Mapps-lib/src/lib/view/profile.svelte | 6+++---
6 files changed, 23 insertions(+), 4 deletions(-)

diff --git a/apps-lib/src/lib/components/button/float-page-button.svelte b/apps-lib/src/lib/components/button/float-page-button.svelte @@ -3,6 +3,7 @@ import { type GeometryScreenPositionHorizontal, type ICb, + type IDisabledOpt, type IGlyphKey, type ILoadingOpt, } from "@radroots/util"; @@ -11,6 +12,7 @@ basis, }: { basis: ICb & + IDisabledOpt & ILoadingOpt & IGlyphKey & { posx: Omit<GeometryScreenPositionHorizontal, "center">; @@ -21,6 +23,7 @@ <div class={`absolute top-10 ${basis.posx}-6 flex flex-row`}> <button class={`flex flex-row h-12 w-12 justify-center items-center bg-layer-1-surface rounded-full el-re`} + disabled={!!basis.disabled} onclick={basis.callback} > {#if basis.loading} diff --git a/apps-lib/src/lib/components/carousel/carousel-flow.svelte b/apps-lib/src/lib/components/carousel/carousel-flow.svelte @@ -42,7 +42,7 @@ }; </script> -<div class={`${fmt_cl(basis?.classes)}relative flex flex-col h-full w-full`}> +<div class={`${fmt_cl(basis?.classes)}relative flex flex-col w-full`}> <div bind:this={el_parent} class={`flex flex-grow transition-transform`} diff --git a/apps-lib/src/lib/components/lib/splash_screen.svelte b/apps-lib/src/lib/components/lib/splash_screen.svelte @@ -0,0 +1,14 @@ +<script lang="ts"> + import { LogoCircle } from "$root"; +</script> + +<div + class={`z-50 absolute top-0 left-0 flex flex-col h-[100vh] w-full justify-center items-center bg-layer-0-surface`} +> + <LogoCircle /> + <p + class={`font-sansd italic font-[700] text-[1.2rem] text-layer-0-glyph lowercase -translate-y-2`} + > + {`radroots`} + </p> +</div> diff --git a/apps-lib/src/lib/index.ts b/apps-lib/src/lib/index.ts @@ -56,6 +56,7 @@ export { default as LogoLetters } from "./components/lib/logo-letters.svelte" export { default as LogoCircle } from "./components/lib/logo_circle.svelte" export { default as SelectMenu } from "./components/lib/select-menu.svelte" export { default as Select } from "./components/lib/select.svelte" +export { default as SplashScreen } from "./components/lib/splash_screen.svelte" export { default as TextArea } from "./components/lib/text-area.svelte" export { default as Theme } from "./components/lib/theme.svelte" export { default as Toast } from "./components/lib/toast.svelte" diff --git a/apps-lib/src/lib/store/app.ts b/apps-lib/src/lib/store/app.ts @@ -18,6 +18,7 @@ export const app_thc = writable<ColorMode>(`light`); export const app_th = writable<ThemeKey>(); export const key_nostr = writable<string>(``); export const app_nostr_profiles = writable<string[]>([]); +export const app_load = writable<boolean>(false); export const search_results = writable<any[]>([]); diff --git a/apps-lib/src/lib/view/profile.svelte b/apps-lib/src/lib/view/profile.svelte @@ -7,7 +7,6 @@ ImagePath, ImageUploadAddPhoto, kv_init_page, - NavigationTabs, } from "$root"; import { ascii, @@ -80,6 +79,7 @@ posx: `left`, glyph: `arrow-left`, loading: loading_photo_upload, + disabled: loading_photo_upload, callback: async () => { if (basis.data) await basis.lc_handle_back(basis.data.id); }, @@ -89,7 +89,8 @@ basis={{ posx: `right`, glyph: `images-square`, - loading: loading_photo_upload, + loading: false, + disabled: loading_photo_upload, callback: basis.lc_handle_photo_options, }} /> @@ -246,4 +247,3 @@ </p> {/if} </div> -<NavigationTabs />