Tracking de l'application VApp (IHM du jeu)

This commit is contained in:
2025-05-11 18:04:12 +02:00
commit 89e9db9b62
17763 changed files with 3718499 additions and 0 deletions

View File

@@ -0,0 +1,224 @@
.v-skeleton-loader {
align-items: center;
background: rgb(var(--v-theme-surface));
border-radius: 4px;
display: flex;
flex-wrap: wrap;
position: relative;
vertical-align: top;
}
.v-skeleton-loader__actions {
justify-content: end;
}
.v-skeleton-loader .v-skeleton-loader__ossein {
height: 100%;
}
.v-skeleton-loader .v-skeleton-loader__avatar,
.v-skeleton-loader .v-skeleton-loader__button,
.v-skeleton-loader .v-skeleton-loader__chip,
.v-skeleton-loader .v-skeleton-loader__divider,
.v-skeleton-loader .v-skeleton-loader__heading,
.v-skeleton-loader .v-skeleton-loader__image,
.v-skeleton-loader .v-skeleton-loader__ossein,
.v-skeleton-loader .v-skeleton-loader__text {
background: rgba(var(--v-theme-on-surface), var(--v-border-opacity));
}
.v-skeleton-loader .v-skeleton-loader__list-item,
.v-skeleton-loader .v-skeleton-loader__list-item-avatar,
.v-skeleton-loader .v-skeleton-loader__list-item-text,
.v-skeleton-loader .v-skeleton-loader__list-item-two-line,
.v-skeleton-loader .v-skeleton-loader__list-item-avatar-two-line,
.v-skeleton-loader .v-skeleton-loader__list-item-three-line,
.v-skeleton-loader .v-skeleton-loader__list-item-avatar-three-line {
border-radius: 4px;
}
.v-skeleton-loader__bone {
align-items: center;
border-radius: inherit;
display: flex;
flex: 1 1 100%;
flex-wrap: wrap;
overflow: hidden;
position: relative;
}
.v-skeleton-loader__bone::after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
animation: loading 1.5s infinite;
background: linear-gradient(90deg, rgba(var(--v-theme-surface), 0), rgba(var(--v-theme-surface), 0.3), rgba(var(--v-theme-surface), 0));
transform: translateX(-100%);
z-index: 1;
}
.v-skeleton-loader__avatar {
border-radius: 50%;
flex: 0 1 auto;
margin: 8px 16px;
max-height: 48px;
min-height: 48px;
height: 48px;
max-width: 48px;
min-width: 48px;
width: 48px;
}
.v-skeleton-loader__avatar + .v-skeleton-loader__bone {
flex: 1 1 auto;
margin-inline-start: 0;
}
.v-skeleton-loader__avatar + .v-skeleton-loader__sentences > .v-skeleton-loader__text,
.v-skeleton-loader__avatar + .v-skeleton-loader__paragraph > .v-skeleton-loader__text {
margin-inline-start: 0;
}
.v-skeleton-loader__button {
border-radius: 4px;
height: 36px;
margin: 16px;
max-width: 64px;
}
.v-skeleton-loader__button + .v-skeleton-loader__bone {
flex: 1 1 auto;
margin-inline-start: 0;
}
.v-skeleton-loader__button + .v-skeleton-loader__sentences > .v-skeleton-loader__text,
.v-skeleton-loader__button + .v-skeleton-loader__paragraph > .v-skeleton-loader__text {
margin-inline-start: 0;
}
.v-skeleton-loader__chip {
border-radius: 16px;
margin: 16px;
height: 32px;
max-width: 96px;
}
.v-skeleton-loader__chip + .v-skeleton-loader__bone {
flex: 1 1 auto;
margin-inline-start: 0;
}
.v-skeleton-loader__chip + .v-skeleton-loader__sentences > .v-skeleton-loader__text,
.v-skeleton-loader__chip + .v-skeleton-loader__paragraph > .v-skeleton-loader__text {
margin-inline-start: 0;
}
.v-skeleton-loader__date-picker {
border-radius: inherit;
}
.v-skeleton-loader__date-picker .v-skeleton-loader__list-item:first-child .v-skeleton-loader__text {
max-width: 88px;
width: 20%;
}
.v-skeleton-loader__date-picker .v-skeleton-loader__heading {
max-width: 256px;
width: 40%;
}
.v-skeleton-loader__date-picker-days {
flex-wrap: wrap;
margin: 16px;
}
.v-skeleton-loader__date-picker-days .v-skeleton-loader__avatar {
border-radius: 4px;
margin: 4px;
max-width: 100%;
}
.v-skeleton-loader__date-picker-options {
flex-wrap: nowrap;
}
.v-skeleton-loader__date-picker-options .v-skeleton-loader__text {
flex: 1 1 auto;
}
.v-skeleton-loader__divider {
border-radius: 1px;
height: 2px;
}
.v-skeleton-loader__heading {
border-radius: 12px;
margin: 16px;
height: 24px;
}
.v-skeleton-loader__heading + .v-skeleton-loader__subtitle {
margin-top: -16px;
}
.v-skeleton-loader__image {
height: 150px;
border-radius: 0;
}
.v-skeleton-loader__card .v-skeleton-loader__image {
border-radius: 0;
}
.v-skeleton-loader__list-item {
margin: 16px;
}
.v-skeleton-loader__list-item .v-skeleton-loader__text {
margin: 0;
}
.v-skeleton-loader__table-thead {
justify-content: space-between;
}
.v-skeleton-loader__table-thead .v-skeleton-loader__heading {
margin-top: 16px;
max-width: 16px;
}
.v-skeleton-loader__table-tfoot {
flex-wrap: nowrap;
}
.v-skeleton-loader__table-tfoot > .v-skeleton-loader__text.v-skeleton-loader__bone {
margin-top: 16px;
}
.v-skeleton-loader__table-row {
align-items: baseline;
margin: 0 8px;
justify-content: space-evenly;
flex-wrap: nowrap;
}
.v-skeleton-loader__table-row > .v-skeleton-loader__text.v-skeleton-loader__bone {
margin-inline: 8px;
}
.v-skeleton-loader__table-row + .v-skeleton-loader__divider {
margin: 0 16px;
}
.v-skeleton-loader__table-cell {
align-items: center;
display: flex;
height: 48px;
width: 88px;
}
.v-skeleton-loader__table-cell .v-skeleton-loader__text {
margin-bottom: 0;
}
.v-skeleton-loader__subtitle {
max-width: 70%;
}
.v-skeleton-loader__subtitle > .v-skeleton-loader__text {
height: 16px;
border-radius: 8px;
}
.v-skeleton-loader__text {
border-radius: 6px;
margin: 16px;
height: 12px;
}
.v-skeleton-loader__text + .v-skeleton-loader__text {
margin-top: -8px;
max-width: 50%;
}
.v-skeleton-loader__text + .v-skeleton-loader__text + .v-skeleton-loader__text {
max-width: 70%;
}
.v-skeleton-loader--boilerplate .v-skeleton-loader__bone:after {
display: none;
}
.v-skeleton-loader--is-loading {
overflow: hidden;
}
.v-skeleton-loader--tile {
border-radius: 0;
}
.v-skeleton-loader--tile .v-skeleton-loader__bone {
border-radius: 0;
}
@keyframes loading {
100% {
transform: translateX(100%);
}
}

View File

@@ -0,0 +1,144 @@
import { createVNode as _createVNode } from "vue";
// Styles
import "./VSkeletonLoader.css";
// Composables
import { useBackgroundColor } from "../../composables/color.mjs";
import { makeDimensionProps, useDimension } from "../../composables/dimensions.mjs";
import { makeElevationProps, useElevation } from "../../composables/elevation.mjs";
import { useLocale } from "../../composables/locale.mjs";
import { makeThemeProps, provideTheme } from "../../composables/theme.mjs"; // Utilities
import { computed, toRef } from 'vue';
import { genericComponent, propsFactory, useRender, wrapInArray } from "../../util/index.mjs"; // Types
export const rootTypes = {
actions: 'button@2',
article: 'heading, paragraph',
avatar: 'avatar',
button: 'button',
card: 'image, heading',
'card-avatar': 'image, list-item-avatar',
chip: 'chip',
'date-picker': 'list-item, heading, divider, date-picker-options, date-picker-days, actions',
'date-picker-options': 'text, avatar@2',
'date-picker-days': 'avatar@28',
divider: 'divider',
heading: 'heading',
image: 'image',
'list-item': 'text',
'list-item-avatar': 'avatar, text',
'list-item-two-line': 'sentences',
'list-item-avatar-two-line': 'avatar, sentences',
'list-item-three-line': 'paragraph',
'list-item-avatar-three-line': 'avatar, paragraph',
ossein: 'ossein',
paragraph: 'text@3',
sentences: 'text@2',
subtitle: 'text',
table: 'table-heading, table-thead, table-tbody, table-tfoot',
'table-heading': 'chip, text',
'table-thead': 'heading@6',
'table-tbody': 'table-row-divider@6',
'table-row-divider': 'table-row, divider',
'table-row': 'text@6',
'table-tfoot': 'text@2, avatar@2',
text: 'text'
};
function genBone(type) {
let children = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
return _createVNode("div", {
"class": ['v-skeleton-loader__bone', `v-skeleton-loader__${type}`]
}, [children]);
}
function genBones(bone) {
// e.g. 'text@3'
const [type, length] = bone.split('@');
// Generate a length array based upon
// value after @ in the bone string
return Array.from({
length
}).map(() => genStructure(type));
}
function genStructure(type) {
let children = [];
if (!type) return children;
// TODO: figure out a better way to type this
const bone = rootTypes[type];
// End of recursion, do nothing
/* eslint-disable-next-line no-empty, brace-style */
if (type === bone) {}
// Array of values - e.g. 'heading, paragraph, text@2'
else if (type.includes(',')) return mapBones(type);
// Array of values - e.g. 'paragraph@4'
else if (type.includes('@')) return genBones(type);
// Array of values - e.g. 'card@2'
else if (bone.includes(',')) children = mapBones(bone);
// Array of values - e.g. 'list-item@2'
else if (bone.includes('@')) children = genBones(bone);
// Single value - e.g. 'card-heading'
else if (bone) children.push(genStructure(bone));
return [genBone(type, children)];
}
function mapBones(bones) {
// Remove spaces and return array of structures
return bones.replace(/\s/g, '').split(',').map(genStructure);
}
export const makeVSkeletonLoaderProps = propsFactory({
boilerplate: Boolean,
color: String,
loading: Boolean,
loadingText: {
type: String,
default: '$vuetify.loading'
},
type: {
type: [String, Array],
default: 'ossein'
},
...makeDimensionProps(),
...makeElevationProps(),
...makeThemeProps()
}, 'VSkeletonLoader');
export const VSkeletonLoader = genericComponent()({
name: 'VSkeletonLoader',
props: makeVSkeletonLoaderProps(),
setup(props, _ref) {
let {
slots
} = _ref;
const {
backgroundColorClasses,
backgroundColorStyles
} = useBackgroundColor(toRef(props, 'color'));
const {
dimensionStyles
} = useDimension(props);
const {
elevationClasses
} = useElevation(props);
const {
themeClasses
} = provideTheme(props);
const {
t
} = useLocale();
const items = computed(() => genStructure(wrapInArray(props.type).join(',')));
useRender(() => {
const isLoading = !slots.default || props.loading;
return _createVNode("div", {
"class": ['v-skeleton-loader', {
'v-skeleton-loader--boilerplate': props.boilerplate
}, themeClasses.value, backgroundColorClasses.value, elevationClasses.value],
"style": [backgroundColorStyles.value, isLoading ? dimensionStyles.value : {}],
"aria-busy": !props.boilerplate ? isLoading : undefined,
"aria-live": !props.boilerplate ? 'polite' : undefined,
"aria-label": !props.boilerplate ? t(props.loadingText) : undefined,
"role": !props.boilerplate ? 'alert' : undefined
}, [isLoading ? items.value : slots.default?.()]);
});
return {};
}
});
//# sourceMappingURL=VSkeletonLoader.mjs.map

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,228 @@
// Imports
@use '../../styles/settings'
@use '../../styles/tools'
@use './variables' as *
.v-skeleton-loader
align-items: center
background: $skeleton-loader-background
border-radius: $skeleton-loader-border-radius
display: flex
flex-wrap: wrap
position: relative
vertical-align: top
&__actions
justify-content: end
.v-skeleton-loader__ossein
height: 100%
.v-skeleton-loader__avatar,
.v-skeleton-loader__button,
.v-skeleton-loader__chip,
.v-skeleton-loader__divider,
.v-skeleton-loader__heading,
.v-skeleton-loader__image,
.v-skeleton-loader__ossein,
.v-skeleton-loader__text
background: $skeleton-loader-text-background
.v-skeleton-loader__list-item,
.v-skeleton-loader__list-item-avatar,
.v-skeleton-loader__list-item-text,
.v-skeleton-loader__list-item-two-line,
.v-skeleton-loader__list-item-avatar-two-line,
.v-skeleton-loader__list-item-three-line,
.v-skeleton-loader__list-item-avatar-three-line
border-radius: $skeleton-loader-border-radius
&__bone
align-items: center
border-radius: inherit
display: flex
flex: 1 1 100%
flex-wrap: wrap
overflow: hidden
position: relative
&::after
@include tools.absolute(true)
animation: $skeleton-loader-loading-animation
background: $skeleton-loader-bone-background
transform: $skeleton-loader-loading-transform
z-index: 1
&__avatar
border-radius: 50%
flex: 0 1 auto
margin: $skeleton-loader-avatar-margin
max-height: $skeleton-loader-avatar-height
min-height: $skeleton-loader-avatar-height
height: $skeleton-loader-avatar-height
max-width: $skeleton-loader-avatar-width
min-width: $skeleton-loader-avatar-width
width: $skeleton-loader-avatar-width
+ .v-skeleton-loader__bone
flex: 1 1 auto
margin-inline-start: 0
+ .v-skeleton-loader__sentences,
+ .v-skeleton-loader__paragraph
> .v-skeleton-loader__text
margin-inline-start: 0
&__button
border-radius: $skeleton-loader-button-border-radius
height: $skeleton-loader-button-height
margin: $skeleton-loader-gutter
max-width: $skeleton-loader-button-width
+ .v-skeleton-loader__bone
flex: 1 1 auto
margin-inline-start: 0
+ .v-skeleton-loader__sentences,
+ .v-skeleton-loader__paragraph
> .v-skeleton-loader__text
margin-inline-start: 0
&__chip
border-radius: $skeleton-loader-chip-border-radius
margin: $skeleton-loader-gutter
height: $skeleton-loader-chip-height
max-width: $skeleton-loader-chip-width
+ .v-skeleton-loader__bone
flex: 1 1 auto
margin-inline-start: 0
+ .v-skeleton-loader__sentences,
+ .v-skeleton-loader__paragraph
> .v-skeleton-loader__text
margin-inline-start: 0
&__date-picker
border-radius: $skeleton-loader-date-picker-border-radius
.v-skeleton-loader__list-item:first-child
.v-skeleton-loader__text
max-width: $skeleton-loader-date-picker-text-max-width
width: $skeleton-loader-date-picker-text-width
.v-skeleton-loader__heading
max-width: $skeleton-loader-date-picker-heading-max-width
width: $skeleton-loader-date-picker-heading-width
&__date-picker-days
flex-wrap: wrap
margin: $skeleton-loader-gutter
.v-skeleton-loader__avatar
border-radius: $skeleton-loader-border-radius
margin: $skeleton-loader-date-picker-days-margin
max-width: 100%
&__date-picker-options
flex-wrap: nowrap
.v-skeleton-loader__text
flex: 1 1 auto
&__divider
border-radius: $skeleton-loader-divider-border-radius
height: $skeleton-loader-divider-height
&__heading
border-radius: $skeleton-loader-heading-border-radius
margin: $skeleton-loader-gutter
height: $skeleton-loader-heading-height
+ .v-skeleton-loader__subtitle
margin-top: -$skeleton-loader-gutter
&__image
height: $skeleton-loader-image-height
border-radius: 0
&__card
.v-skeleton-loader__image
border-radius: 0
&__list-item
margin: $skeleton-loader-gutter
.v-skeleton-loader__text
margin: 0
&__table-thead
justify-content: space-between
.v-skeleton-loader__heading
margin-top: $skeleton-loader-gutter
max-width: $skeleton-loader-gutter
&__table-tfoot
flex-wrap: nowrap
> .v-skeleton-loader__text.v-skeleton-loader__bone
margin-top: $skeleton-loader-gutter
&__table-row
align-items: baseline
margin: $skeleton-loader-table-row-margin
justify-content: space-evenly
flex-wrap: nowrap
> .v-skeleton-loader__text.v-skeleton-loader__bone
margin-inline: $skeleton-loader-table-row-text-margin
+ .v-skeleton-loader__divider
margin: 0 $skeleton-loader-gutter
&__table-cell
align-items: center
display: flex
height: $skeleton-loader-table-cell-height
width: $skeleton-loader-table-cell-width
.v-skeleton-loader__text
margin-bottom: 0
&__subtitle
max-width: $skeleton-loader-subtitle-max-width
> .v-skeleton-loader__text
height: $skeleton-loader-subtitle-text-height
border-radius: $skeleton-loader-subtitle-text-border-radius
&__text
border-radius: $skeleton-loader-text-border-radius
margin: $skeleton-loader-gutter
height: $skeleton-loader-text-height
+ .v-skeleton-loader__text
margin-top: $skeleton-loader-text-two-text-margin-top
max-width: $skeleton-loader-text-two-text-max-width
+ .v-skeleton-loader__text
max-width: $skeleton-loader-text-three-text-max-width
&--boilerplate
.v-skeleton-loader__bone:after
display: none
&--is-loading
overflow: hidden
&--tile
border-radius: 0
.v-skeleton-loader__bone
border-radius: 0
@keyframes loading
100%
transform: translateX(100%)

View File

@@ -0,0 +1,44 @@
@use '../../styles/settings';
@use '../../styles/tools';
$skeleton-loader-actions-button-margin: 12px !default;
$skeleton-loader-actions-padding: 16px 16px 8px !default;
$skeleton-loader-avatar-height: 48px !default;
$skeleton-loader-avatar-margin: 8px 16px !default;
$skeleton-loader-avatar-width: 48px !default;
$skeleton-loader-background: rgb(var(--v-theme-surface)) !default;
$skeleton-loader-bone-background: linear-gradient(90deg, rgba(var(--v-theme-surface), 0), rgba(var(--v-theme-surface), .3), rgba(var(--v-theme-surface), 0)) !default;
$skeleton-loader-border-radius: settings.$border-radius-root !default;
$skeleton-loader-button-border-radius: settings.$border-radius-root !default;
$skeleton-loader-button-height: 36px !default;
$skeleton-loader-button-width: 64px !default;
$skeleton-loader-chip-border-radius: 16px !default;
$skeleton-loader-chip-height: 32px !default;
$skeleton-loader-chip-width: 96px !default;
$skeleton-loader-date-picker-border-radius: inherit !default;
$skeleton-loader-date-picker-days-margin: 4px !default;
$skeleton-loader-date-picker-heading-max-width: 256px !default;
$skeleton-loader-date-picker-heading-width: 40% !default;
$skeleton-loader-date-picker-text-max-width: 88px !default;
$skeleton-loader-date-picker-text-width: 20% !default;
$skeleton-loader-divider-border-radius: 1px !default;
$skeleton-loader-divider-height: 2px !default;
$skeleton-loader-gutter: 16px !default;
$skeleton-loader-heading-border-radius: 12px !default;
$skeleton-loader-heading-height: 24px !default;
$skeleton-loader-image-height: 150px !default;
$skeleton-loader-loading-animation: loading 1.5s infinite !default;
$skeleton-loader-loading-transform: translateX(-100%) !default;
$skeleton-loader-subtitle-max-width: 70% !default;
$skeleton-loader-subtitle-text-border-radius: 8px !default;
$skeleton-loader-subtitle-text-height: 16px !default;
$skeleton-loader-table-cell-height: 48px !default;
$skeleton-loader-table-cell-width: 88px !default;
$skeleton-loader-table-row-margin: 0 8px !default;
$skeleton-loader-table-row-text-margin: 8px !default;
$skeleton-loader-text-background: rgba(var(--v-theme-on-surface), var(--v-border-opacity)) !default;
$skeleton-loader-text-border-radius: 6px !default;
$skeleton-loader-text-height: 12px !default;
$skeleton-loader-text-three-text-max-width: 70% !default;
$skeleton-loader-text-two-text-margin-top: -8px !default;
$skeleton-loader-text-two-text-max-width: 50% !default;

View File

@@ -0,0 +1,188 @@
import * as vue from 'vue';
import { ComponentPropsOptions, ExtractPropTypes, VNode, PropType } from 'vue';
interface FilterPropsOptions<PropsOptions extends Readonly<ComponentPropsOptions>, Props = ExtractPropTypes<PropsOptions>> {
filterProps<T extends Partial<Props>, U extends Exclude<keyof Props, Exclude<keyof Props, keyof T>>>(props: T): Partial<Pick<T, U>>;
}
declare const VSkeletonLoader: {
new (...args: any[]): vue.CreateComponentPublicInstance<{
type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
loading: boolean;
loadingText: string;
boilerplate: boolean;
} & {
height?: string | number | undefined;
width?: string | number | undefined;
color?: string | undefined;
maxHeight?: string | number | undefined;
maxWidth?: string | number | undefined;
minHeight?: string | number | undefined;
minWidth?: string | number | undefined;
elevation?: string | number | undefined;
theme?: string | undefined;
} & {
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
default?: (() => vue.VNodeChild) | undefined;
};
'v-slots'?: {
default?: false | (() => vue.VNodeChild) | undefined;
} | undefined;
} & {
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & {
type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
loading: boolean;
loadingText: string;
boilerplate: boolean;
} & {
height?: string | number | undefined;
width?: string | number | undefined;
color?: string | undefined;
maxHeight?: string | number | undefined;
maxWidth?: string | number | undefined;
minHeight?: string | number | undefined;
minWidth?: string | number | undefined;
elevation?: string | number | undefined;
theme?: string | undefined;
} & {
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
default?: (() => vue.VNodeChild) | undefined;
};
'v-slots'?: {
default?: false | (() => vue.VNodeChild) | undefined;
} | undefined;
} & {
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
}, {
type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
loading: boolean;
loadingText: string;
boilerplate: boolean;
}, true, {}, vue.SlotsType<Partial<{
default: () => VNode<vue.RendererNode, vue.RendererElement, {
[key: string]: any;
}>[];
}>>, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, {
type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
loading: boolean;
loadingText: string;
boilerplate: boolean;
} & {
height?: string | number | undefined;
width?: string | number | undefined;
color?: string | undefined;
maxHeight?: string | number | undefined;
maxWidth?: string | number | undefined;
minHeight?: string | number | undefined;
minWidth?: string | number | undefined;
elevation?: string | number | undefined;
theme?: string | undefined;
} & {
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
default?: (() => vue.VNodeChild) | undefined;
};
'v-slots'?: {
default?: false | (() => vue.VNodeChild) | undefined;
} | undefined;
} & {
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
}, {}, {}, {}, {}, {
type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
loading: boolean;
loadingText: string;
boilerplate: boolean;
}>;
__isFragment?: undefined;
__isTeleport?: undefined;
__isSuspense?: undefined;
} & vue.ComponentOptionsBase<{
type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
loading: boolean;
loadingText: string;
boilerplate: boolean;
} & {
height?: string | number | undefined;
width?: string | number | undefined;
color?: string | undefined;
maxHeight?: string | number | undefined;
maxWidth?: string | number | undefined;
minHeight?: string | number | undefined;
minWidth?: string | number | undefined;
elevation?: string | number | undefined;
theme?: string | undefined;
} & {
$children?: vue.VNodeChild | (() => vue.VNodeChild) | {
default?: (() => vue.VNodeChild) | undefined;
};
'v-slots'?: {
default?: false | (() => vue.VNodeChild) | undefined;
} | undefined;
} & {
"v-slot:default"?: false | (() => vue.VNodeChild) | undefined;
}, {}, unknown, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, Record<string, any>, string, {
type: "button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[];
loading: boolean;
loadingText: string;
boilerplate: boolean;
}, {}, string, vue.SlotsType<Partial<{
default: () => VNode<vue.RendererNode, vue.RendererElement, {
[key: string]: any;
}>[];
}>>> & vue.VNodeProps & vue.AllowedComponentProps & vue.ComponentCustomProps & FilterPropsOptions<{
theme: StringConstructor;
elevation: {
type: (StringConstructor | NumberConstructor)[];
validator(v: any): boolean;
};
height: (StringConstructor | NumberConstructor)[];
maxHeight: (StringConstructor | NumberConstructor)[];
maxWidth: (StringConstructor | NumberConstructor)[];
minHeight: (StringConstructor | NumberConstructor)[];
minWidth: (StringConstructor | NumberConstructor)[];
width: (StringConstructor | NumberConstructor)[];
boilerplate: BooleanConstructor;
color: StringConstructor;
loading: BooleanConstructor;
loadingText: {
type: StringConstructor;
default: string;
};
type: {
type: PropType<"button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[]>;
default: string;
};
}, vue.ExtractPropTypes<{
theme: StringConstructor;
elevation: {
type: (StringConstructor | NumberConstructor)[];
validator(v: any): boolean;
};
height: (StringConstructor | NumberConstructor)[];
maxHeight: (StringConstructor | NumberConstructor)[];
maxWidth: (StringConstructor | NumberConstructor)[];
minHeight: (StringConstructor | NumberConstructor)[];
minWidth: (StringConstructor | NumberConstructor)[];
width: (StringConstructor | NumberConstructor)[];
boilerplate: BooleanConstructor;
color: StringConstructor;
loading: BooleanConstructor;
loadingText: {
type: StringConstructor;
default: string;
};
type: {
type: PropType<"button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot" | readonly ("button" | "article" | "table" | "image" | "text" | (string & {}) | "table-row" | "list-item" | "sentences" | "heading" | "divider" | "subtitle" | "chip" | "avatar" | "actions" | "paragraph" | "ossein" | "card" | "card-avatar" | "date-picker" | "date-picker-options" | "date-picker-days" | "list-item-avatar" | "list-item-two-line" | "list-item-avatar-two-line" | "list-item-three-line" | "list-item-avatar-three-line" | "table-heading" | "table-thead" | "table-tbody" | "table-row-divider" | "table-tfoot")[]>;
default: string;
};
}>>;
type VSkeletonLoader = InstanceType<typeof VSkeletonLoader>;
export { VSkeletonLoader };

View File

@@ -0,0 +1,2 @@
export { VSkeletonLoader } from "./VSkeletonLoader.mjs";
//# sourceMappingURL=index.mjs.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index.mjs","names":["VSkeletonLoader"],"sources":["../../../src/components/VSkeletonLoader/index.ts"],"sourcesContent":["export { VSkeletonLoader } from './VSkeletonLoader'\n"],"mappings":"SAASA,eAAe"}