web_lib

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

entry-wrap.svelte (959B)


      1 <script lang="ts">
      2     import {
      3         fmt_cl,
      4         type IBasisOpt,
      5         type IEntryWrap,
      6         parse_layer,
      7     } from "@radroots/apps-lib";
      8     import type { Snippet } from "svelte";
      9 
     10     let {
     11         basis = undefined,
     12         children,
     13     }: {
     14         basis?: IBasisOpt<IEntryWrap>;
     15         children: Snippet;
     16     } = $props();
     17 
     18     const layer = $derived(
     19         typeof basis?.layer === `boolean`
     20             ? parse_layer(0)
     21             : parse_layer(basis?.layer),
     22     );
     23 
     24     const classes_layer = $derived(
     25         typeof basis?.layer === `boolean`
     26             ? `bg-transparent`
     27             : `bg-ly${layer} ${basis?.style_a ? `active:bg-ly${layer}-a` : ``}`,
     28     );
     29 </script>
     30 
     31 <button
     32     id={basis?.id || null}
     33     class={`${fmt_cl(basis?.classes)} relative entry-line-wrap ${!basis?.no_pad ? ` pl-6 pr-4` : ``} h-entry_${basis?.style ? basis.style : `line`} rounded-touch ${classes_layer} el-re`}
     34 >
     35     {@render children()}
     36 </button>