PYPI Version Badge - Svelte Shields

Props #

- packageName
- pypiBaseUrl
- style
- logo
- logoColor
- logoSize
- label
- labelColor
- color
- cacheSeconds
- link
- class: classname
- ...attributes

Types #

import type { HTMLImgAttributes } from 'svelte/elements';

export type LinkType = string[] | [string, string];
export interface BaseBadgePropsType {
  style?: 'flat' | 'flat-square' | 'for-the-badge' | 'plastic' | 'social';
  logo?: string | undefined | null;
  logoColor?: string | undefined | null;
  logoSize?: string | undefined | null;
  label?: string | undefined | null;
  labelColor?: string | undefined | null;
  color?: string | undefined | null;
  cacheSeconds?: string | undefined | null;
  link?: LinkType;
  class?: string | undefined | null;
}
interface ExtendedStyle extends BaseBadgePropsType, HTMLImgAttributes {
  style?: 'flat' | 'flat-square' | 'for-the-badge' | 'plastic' | 'social';
}
export interface JsrVersionPropsType extends ExtendedStyle {
  scope: string;
  packageName: string;
}

Examples #

Basic usage #

packageName may be the name of an unscoped package like package-name or a scoped package like @author/package-name.

tag can be next, v1, v2, beta, etc.

Pypi version of vennfig
<script lang="ts">
  import { PypiVersion } from 'svelte-shields'
  import type { PypiVersionPropsType } from 'svelte-shields';
  
  const basic: PypiVersionPropsType = {
    packageName: 'vennfig' 
  }
</script>

<PypiVersion {...basic} />

Style #

Possible values: flat, flat-square, plastic, for-the-badge, social. If not specified, the default style for this badge is "flat".

Pypi version of vennfig Pypi version of vennfig Pypi version of vennfig Pypi version of vennfig Pypi version of vennfig
<script lang="ts">
  import { PypiVersion } from 'svelte-shields'
  import type { PypiVersionPropsType } from 'svelte-shields';

  const style1: PypiVersionPropsType = {
    packageName: 'vennfig',
    style: 'flat',
  }
  const style2: PypiVersionPropsType = {
    packageName: 'vennfig',
    style: 'flat-square',
  }
  const style3: PypiVersionPropsType = {
    packageName: 'vennfig',
    style: 'for-the-badge',
  }
  const style4: PypiVersionPropsType = {
    packageName: 'vennfig',
    style: 'plastic',
  }
  const style5: PypiVersionPropsType = {
    packageName: 'vennfig',
    style: 'social',
  }
</script>

<PypiVersion {...style1} />
<PypiVersion {...style2} />
<PypiVersion {...style3} />
<PypiVersion {...style4} />
<PypiVersion {...style5} />

Color #

Background color of the right part (hex, rgb, rgba, hsl, hsla and css named colors supported).

Pypi version of vennfig Pypi version of vennfig Pypi version of vennfig Pypi version of vennfig Pypi version of vennfig Pypi version of vennfig
<script lang="ts">
  import { PypiVersion } from 'svelte-shields'
  import type { PypiVersionPropsType } from 'svelte-shields';

  const color1: PypiVersionPropsType = {
    packageName: 'vennfig',
    color: 'green'
  }

  const color2: PypiVersionPropsType = {
    packageName: 'vennfig',
    color: '00FF00' 
  }

  const color3: PypiVersionPropsType = {
    packageName: 'vennfig',
    color: 'rgb(0, 255, 0)' 
  }

  const color4: PypiVersionPropsType = {
    packageName: 'vennfig',
    color: 'rgba(0, 255, 0, 1)' 
  }

  const color5: PypiVersionPropsType = {
    packageName: 'vennfig',
    color: 'hsl(120, 100%, 50%)' 
  }

  const color6: PypiVersionPropsType = {
    packageName: 'vennfig',
    color: 'hsla(120, 100%, 50%, 1)' 
  }
</script>

<PypiVersion {...color1} />
<PypiVersion {...color2} />
<PypiVersion {...color3} />
<PypiVersion {...color4} />
<PypiVersion {...color5} />
<PypiVersion {...color6} />

Logo & Label #

Pypi version of vennfig
<script lang="ts">
  import { PypiVersion } from 'svelte-shields'
  import type { PypiVersionPropsType } from 'svelte-shields';
  
  const logo_label: PypiVersionPropsType = {
    packageName: 'vennfig',
    logo: 'python',
    label: 'VENNFIG'
  }
</script>

<PypiVersion {...logo_label} />

Link #

Specify what clicking on the left/right of a badge should do.

<script lang="ts">
  import { PypiVersion } from 'svelte-shields'
  import type { PypiVersionPropsType } from 'svelte-shields';

  const link: PypiVersionPropsType = {
    packageName: 'vennfig',
    label: 'VENNFIG',
    link: ['https://vennfig.codewithshin.com', 'https://github.com/shinokada/vennfig']
  }
</script>

<PypiVersion {...link} />

Other #

cacheSeconds is HTTP cache lifetime (rules are applied to infer a default value on a per-badge basis, any values specified below the default will be ignored).

Pypi version of vennfig
<script lang="ts">
  import { PypiVersion } from 'svelte-shields'
  import type { PypiVersionPropsType } from 'svelte-shields';

  const other: PypiVersionPropsType = {
    packageName: 'vennfig',
    cacheSeconds: '86400',
  }
</script>

<PypiVersion {...other} />