firstly 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +52 -0
- package/esm/SqlDatabase/FF_LogToConsole.js +9 -14
- package/esm/carbone/CarboneController.js +2 -1
- package/esm/changeLog/index.d.ts +0 -5
- package/esm/core/helper.d.ts +2 -0
- package/esm/core/helper.js +3 -0
- package/esm/core/index.d.ts +0 -0
- package/esm/core/index.js +5 -0
- package/esm/core/tailwind.d.ts +21 -0
- package/esm/core/tailwind.js +22 -0
- package/esm/core/tryCatch.d.ts +44 -0
- package/esm/core/tryCatch.js +34 -0
- package/esm/cron/server/index.js +1 -1
- package/esm/feedback/FeedbackController.js +3 -2
- package/esm/feedback/index.d.ts +7 -2
- package/esm/feedback/index.js +1 -2
- package/esm/feedback/server/index.d.ts +0 -5
- package/esm/feedback/server/index.js +1 -1
- package/esm/formats/strings.js +2 -2
- package/esm/index.d.ts +16 -0
- package/esm/index.js +13 -0
- package/esm/svelte/FF_Repo.svelte.d.ts +0 -2
- package/esm/svelte/FF_Repo.svelte.js +1 -17
- package/esm/svelte/helpers/debounce.js +1 -1
- package/esm/svelte/index.d.ts +2 -24
- package/esm/svelte/index.js +2 -22
- package/esm/{ui → svelte/ui}/Icon.svelte +1 -1
- package/esm/virtual/StateDemoEnum.d.ts +3 -3
- package/esm/virtual/StateDemoEnum.js +3 -3
- package/esm/virtual/UIEntity.js +1 -2
- package/package.json +6 -24
- package/esm/bin/cmd.d.ts +0 -1
- package/esm/bin/cmd.js +0 -638
- package/esm/feedback/ui/DialogIssue.svelte +0 -149
- package/esm/feedback/ui/DialogIssue.svelte.d.ts +0 -22
- package/esm/feedback/ui/DialogIssues.svelte +0 -114
- package/esm/feedback/ui/DialogIssues.svelte.d.ts +0 -22
- package/esm/feedback/ui/DialogMilestones.svelte +0 -43
- package/esm/feedback/ui/DialogMilestones.svelte.d.ts +0 -20
- package/esm/feedback/ui/Feedback.svelte +0 -16
- package/esm/feedback/ui/Feedback.svelte.d.ts +0 -18
- package/esm/internals/FF_Entity.d.ts +0 -2
- package/esm/internals/FF_Fields.d.ts +0 -11
- package/esm/internals/FF_Fields.js +0 -144
- package/esm/internals/cellsBuildor.d.ts +0 -47
- package/esm/internals/cellsBuildor.js +0 -141
- package/esm/internals/helper.d.ts +0 -49
- package/esm/internals/helper.js +0 -162
- package/esm/internals/index.d.ts +0 -78
- package/esm/internals/index.js +0 -45
- package/esm/internals/storeItem.d.ts +0 -19
- package/esm/internals/storeItem.js +0 -190
- package/esm/internals/storeList.d.ts +0 -34
- package/esm/internals/storeList.js +0 -108
- package/esm/internals/theme.d.ts +0 -4
- package/esm/internals/theme.js +0 -4
- package/esm/server/index.d.ts +0 -52
- package/esm/server/index.js +0 -87
- package/esm/svelte/FF_Cell.svelte +0 -103
- package/esm/svelte/FF_Cell.svelte.d.ts +0 -33
- package/esm/svelte/FF_Cell_Caption.svelte +0 -20
- package/esm/svelte/FF_Cell_Caption.svelte.d.ts +0 -31
- package/esm/svelte/FF_Cell_Display.svelte +0 -61
- package/esm/svelte/FF_Cell_Display.svelte.d.ts +0 -29
- package/esm/svelte/FF_Cell_Edit.svelte +0 -104
- package/esm/svelte/FF_Cell_Edit.svelte.d.ts +0 -32
- package/esm/svelte/FF_Cell_Error.svelte +0 -20
- package/esm/svelte/FF_Cell_Error.svelte.d.ts +0 -31
- package/esm/svelte/FF_Cell_Hint.svelte +0 -20
- package/esm/svelte/FF_Cell_Hint.svelte.d.ts +0 -31
- package/esm/svelte/FF_Config.svelte +0 -29
- package/esm/svelte/FF_Config.svelte.d.ts +0 -9
- package/esm/svelte/FF_Form.svelte +0 -155
- package/esm/svelte/FF_Form.svelte.d.ts +0 -37
- package/esm/svelte/FF_Grid.svelte +0 -257
- package/esm/svelte/FF_Grid.svelte.d.ts +0 -37
- package/esm/svelte/FF_Layout.svelte +0 -62
- package/esm/svelte/FF_Layout.svelte.d.ts +0 -31
- package/esm/svelte/actions/intersection.d.ts +0 -6
- package/esm/svelte/actions/intersection.js +0 -17
- package/esm/svelte/customField.d.ts +0 -69
- package/esm/svelte/customField.js +0 -4
- package/esm/svelte/dialog/DialogManagement.svelte +0 -98
- package/esm/svelte/dialog/DialogManagement.svelte.d.ts +0 -18
- package/esm/svelte/dialog/DialogPrimitive.svelte +0 -156
- package/esm/svelte/dialog/DialogPrimitive.svelte.d.ts +0 -38
- package/esm/svelte/dialog/dialog.d.ts +0 -58
- package/esm/svelte/dialog/dialog.js +0 -130
- package/esm/svelte/ff_Config.svelte.d.ts +0 -91
- package/esm/svelte/ff_Config.svelte.js +0 -111
- package/esm/svelte/firstly.css +0 -14
- package/esm/svelte/helpers.d.ts +0 -30
- package/esm/svelte/helpers.js +0 -38
- package/esm/svelte/tryCatch.d.ts +0 -12
- package/esm/svelte/tryCatch.js +0 -18
- package/esm/sveltekit/server/index.d.ts +0 -5
- package/esm/sveltekit/server/index.js +0 -24
- package/esm/ui/Button.svelte +0 -90
- package/esm/ui/Button.svelte.d.ts +0 -11
- package/esm/ui/Clipboardable.svelte +0 -25
- package/esm/ui/Clipboardable.svelte.d.ts +0 -12
- package/esm/ui/Field.svelte +0 -391
- package/esm/ui/Field.svelte.d.ts +0 -40
- package/esm/ui/FieldGroup.svelte +0 -117
- package/esm/ui/FieldGroup.svelte.d.ts +0 -44
- package/esm/ui/Grid.svelte +0 -262
- package/esm/ui/Grid.svelte.d.ts +0 -57
- package/esm/ui/Grid2.svelte +0 -290
- package/esm/ui/Grid2.svelte.d.ts +0 -57
- package/esm/ui/GridLoading.svelte +0 -58
- package/esm/ui/GridLoading.svelte.d.ts +0 -23
- package/esm/ui/GridPaginate.svelte +0 -69
- package/esm/ui/GridPaginate.svelte.d.ts +0 -23
- package/esm/ui/GridPaginate2.svelte +0 -25
- package/esm/ui/GridPaginate2.svelte.d.ts +0 -7
- package/esm/ui/Loading.svelte +0 -16
- package/esm/ui/Loading.svelte.d.ts +0 -31
- package/esm/ui/Tooltip.svelte +0 -45
- package/esm/ui/Tooltip.svelte.d.ts +0 -32
- package/esm/ui/dialog/DialogForm.svelte +0 -76
- package/esm/ui/dialog/DialogForm.svelte.d.ts +0 -21
- package/esm/ui/dialog/DialogManagement.svelte +0 -96
- package/esm/ui/dialog/DialogManagement.svelte.d.ts +0 -26
- package/esm/ui/dialog/DialogPrimitive.svelte +0 -90
- package/esm/ui/dialog/DialogPrimitive.svelte.d.ts +0 -38
- package/esm/ui/dialog/FormEditAction.svelte +0 -62
- package/esm/ui/dialog/FormEditAction.svelte.d.ts +0 -31
- package/esm/ui/dialog/dialog.d.ts +0 -60
- package/esm/ui/dialog/dialog.js +0 -100
- package/esm/ui/index.d.ts +0 -6
- package/esm/ui/index.js +0 -20
- package/esm/ui/internals/FieldContainer.svelte +0 -39
- package/esm/ui/internals/FieldContainer.svelte.d.ts +0 -18
- package/esm/ui/internals/Input.svelte +0 -143
- package/esm/ui/internals/Input.svelte.d.ts +0 -37
- package/esm/ui/internals/Textarea.svelte +0 -66
- package/esm/ui/internals/Textarea.svelte.d.ts +0 -33
- package/esm/ui/internals/select/MultiSelectMelt.svelte +0 -260
- package/esm/ui/internals/select/MultiSelectMelt.svelte.d.ts +0 -32
- package/esm/ui/internals/select/Select2.svelte +0 -88
- package/esm/ui/internals/select/Select2.svelte.d.ts +0 -12
- package/esm/ui/internals/select/SelectMelt.svelte +0 -289
- package/esm/ui/internals/select/SelectMelt.svelte.d.ts +0 -40
- package/esm/ui/internals/select/SelectRadio.svelte +0 -43
- package/esm/ui/internals/select/SelectRadio.svelte.d.ts +0 -27
- package/esm/ui/link/Link.svelte +0 -33
- package/esm/ui/link/Link.svelte.d.ts +0 -33
- package/esm/ui/link/LinkPlus.svelte +0 -63
- package/esm/ui/link/LinkPlus.svelte.d.ts +0 -9
- package/esm/utils/tailwind.d.ts +0 -2
- package/esm/utils/tailwind.js +0 -3
- package/esm/utils/transition.d.ts +0 -9
- package/esm/utils/transition.js +0 -33
- /package/esm/{internals → core}/BaseEnum.d.ts +0 -0
- /package/esm/{internals → core}/BaseEnum.js +0 -0
- /package/esm/{internals → core}/FF_Entity.js +0 -0
- /package/esm/{internals → core}/common.d.ts +0 -0
- /package/esm/{internals → core}/common.js +0 -0
- /package/esm/{utils → core}/types.d.ts +0 -0
- /package/esm/{utils → core}/types.js +0 -0
- /package/esm/{ui → svelte/ui}/Icon.svelte.d.ts +0 -0
- /package/esm/{ui → svelte/ui}/LibIcon.d.ts +0 -0
- /package/esm/{ui → svelte/ui}/LibIcon.js +0 -0
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { type BaseItem } from '../../../internals';
|
|
2
|
-
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
3
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
4
|
-
$$bindings?: Bindings;
|
|
5
|
-
} & Exports;
|
|
6
|
-
(internal: unknown, props: Props & {
|
|
7
|
-
$$events?: Events;
|
|
8
|
-
$$slots?: Slots;
|
|
9
|
-
}): Exports & {
|
|
10
|
-
$set?: any;
|
|
11
|
-
$on?: any;
|
|
12
|
-
};
|
|
13
|
-
z_$$bindings?: Bindings;
|
|
14
|
-
}
|
|
15
|
-
declare const SelectMelt: $$__sveltets_2_IsomorphicComponent<{
|
|
16
|
-
id: string;
|
|
17
|
-
disabled?: boolean;
|
|
18
|
-
placeholder?: string;
|
|
19
|
-
items?: BaseItem[];
|
|
20
|
-
focus?: boolean;
|
|
21
|
-
loadOptions?: ((str: string) => Promise<{
|
|
22
|
-
items: BaseItem[];
|
|
23
|
-
totalCount: number;
|
|
24
|
-
}>) | undefined;
|
|
25
|
-
value?: string | null | undefined;
|
|
26
|
-
clearable?: boolean;
|
|
27
|
-
createOptionWhenNoResult?: boolean;
|
|
28
|
-
default_select_if_one_item?: boolean;
|
|
29
|
-
createRequest?: ((args: {
|
|
30
|
-
input: string;
|
|
31
|
-
id: string;
|
|
32
|
-
}) => void) | undefined;
|
|
33
|
-
}, {
|
|
34
|
-
selected: CustomEvent<any>;
|
|
35
|
-
issue: CustomEvent<any>;
|
|
36
|
-
} & {
|
|
37
|
-
[evt: string]: CustomEvent<any>;
|
|
38
|
-
}, {}, {}, string>;
|
|
39
|
-
type SelectMelt = InstanceType<typeof SelectMelt>;
|
|
40
|
-
export default SelectMelt;
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import { createEventDispatcher } from 'svelte'
|
|
3
|
-
|
|
4
|
-
import type { BaseItem } from '../../../internals'
|
|
5
|
-
import Icon from '../../../ui/Icon.svelte'
|
|
6
|
-
|
|
7
|
-
export let id: string
|
|
8
|
-
export let disabled: boolean = false
|
|
9
|
-
export let placeholder: string = ''
|
|
10
|
-
export let items: BaseItem[] = []
|
|
11
|
-
export let value: string | number | null | undefined = undefined
|
|
12
|
-
|
|
13
|
-
const dispatch = createEventDispatcher()
|
|
14
|
-
|
|
15
|
-
function dispatchSelected(_data: BaseItem | undefined) {
|
|
16
|
-
dispatch('selected', _data)
|
|
17
|
-
}
|
|
18
|
-
</script>
|
|
19
|
-
|
|
20
|
-
<div {id} class="input flex w-fit min-w-0 items-center">
|
|
21
|
-
<div class="-mx-2 flex gap-2" title={placeholder}>
|
|
22
|
-
{#each items as item}
|
|
23
|
-
<button
|
|
24
|
-
{disabled}
|
|
25
|
-
on:click={() => {
|
|
26
|
-
value = item.id
|
|
27
|
-
dispatchSelected(items.find((i) => i.id === item.id))
|
|
28
|
-
}}
|
|
29
|
-
type="button"
|
|
30
|
-
class="min-w-0 cursor-pointer rounded-md px-1.5 py-1 {value === item.id
|
|
31
|
-
? 'bg-primary text-primary-content'
|
|
32
|
-
: ''}"
|
|
33
|
-
>
|
|
34
|
-
<div class="flex gap-2">
|
|
35
|
-
{#if item.icon}
|
|
36
|
-
<Icon {...item.icon} />
|
|
37
|
-
{/if}
|
|
38
|
-
{item.caption}
|
|
39
|
-
</div>
|
|
40
|
-
</button>
|
|
41
|
-
{/each}
|
|
42
|
-
</div>
|
|
43
|
-
</div>
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import type { BaseItem } from '../../../internals';
|
|
2
|
-
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
3
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
4
|
-
$$bindings?: Bindings;
|
|
5
|
-
} & Exports;
|
|
6
|
-
(internal: unknown, props: Props & {
|
|
7
|
-
$$events?: Events;
|
|
8
|
-
$$slots?: Slots;
|
|
9
|
-
}): Exports & {
|
|
10
|
-
$set?: any;
|
|
11
|
-
$on?: any;
|
|
12
|
-
};
|
|
13
|
-
z_$$bindings?: Bindings;
|
|
14
|
-
}
|
|
15
|
-
declare const SelectRadio: $$__sveltets_2_IsomorphicComponent<{
|
|
16
|
-
id: string;
|
|
17
|
-
disabled?: boolean;
|
|
18
|
-
placeholder?: string;
|
|
19
|
-
items?: BaseItem[];
|
|
20
|
-
value?: string | number | null | undefined;
|
|
21
|
-
}, {
|
|
22
|
-
selected: CustomEvent<any>;
|
|
23
|
-
} & {
|
|
24
|
-
[evt: string]: CustomEvent<any>;
|
|
25
|
-
}, {}, {}, string>;
|
|
26
|
-
type SelectRadio = InstanceType<typeof SelectRadio>;
|
|
27
|
-
export default SelectRadio;
|
package/esm/ui/link/Link.svelte
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import type { HTMLAnchorAttributes } from 'svelte/elements'
|
|
3
|
-
|
|
4
|
-
export let href: string
|
|
5
|
-
export let target: HTMLAnchorAttributes['target'] = undefined
|
|
6
|
-
|
|
7
|
-
export let kind: 'info' | 'ghost' = 'info'
|
|
8
|
-
const daisy = { info: 'link-info', ghost: '' }
|
|
9
|
-
|
|
10
|
-
let className: string | undefined | null = undefined
|
|
11
|
-
export { className as class }
|
|
12
|
-
</script>
|
|
13
|
-
|
|
14
|
-
<a
|
|
15
|
-
class={`${daisy[kind]} inline-block link text-left no-underline hover:underline ${className ?? ''}`}
|
|
16
|
-
{href}
|
|
17
|
-
rel="noopener"
|
|
18
|
-
{target}
|
|
19
|
-
{...$$restProps}
|
|
20
|
-
>
|
|
21
|
-
<slot />
|
|
22
|
-
</a>
|
|
23
|
-
|
|
24
|
-
<style>
|
|
25
|
-
a[target='_blank']::after {
|
|
26
|
-
display: inline-block;
|
|
27
|
-
content: '⇱';
|
|
28
|
-
position: relative;
|
|
29
|
-
top: -3px;
|
|
30
|
-
margin-left: 3px;
|
|
31
|
-
transform: rotate(90deg);
|
|
32
|
-
}
|
|
33
|
-
</style>
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
|
|
2
|
-
new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
|
|
3
|
-
$$bindings?: Bindings;
|
|
4
|
-
} & Exports;
|
|
5
|
-
(internal: unknown, props: Props & {
|
|
6
|
-
$$events?: Events;
|
|
7
|
-
$$slots?: Slots;
|
|
8
|
-
}): Exports & {
|
|
9
|
-
$set?: any;
|
|
10
|
-
$on?: any;
|
|
11
|
-
};
|
|
12
|
-
z_$$bindings?: Bindings;
|
|
13
|
-
}
|
|
14
|
-
type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
|
|
15
|
-
default: any;
|
|
16
|
-
} ? Props extends Record<string, never> ? any : {
|
|
17
|
-
children?: any;
|
|
18
|
-
} : {});
|
|
19
|
-
declare const Link: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
|
|
20
|
-
[x: string]: any;
|
|
21
|
-
href: string;
|
|
22
|
-
target?: import("svelte/elements").HTMLAttributeAnchorTarget | null | undefined;
|
|
23
|
-
kind?: "info" | "ghost" | undefined;
|
|
24
|
-
class?: string | undefined | null | undefined;
|
|
25
|
-
}, {
|
|
26
|
-
default: {};
|
|
27
|
-
}>, {
|
|
28
|
-
[evt: string]: CustomEvent<any>;
|
|
29
|
-
}, {
|
|
30
|
-
default: {};
|
|
31
|
-
}, {}, string>;
|
|
32
|
-
type Link = InstanceType<typeof Link>;
|
|
33
|
-
export default Link;
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import { type BaseItemLight } from '../../internals'
|
|
3
|
-
import Icon from '../Icon.svelte'
|
|
4
|
-
import Tooltip from '../Tooltip.svelte'
|
|
5
|
-
import Link from './Link.svelte'
|
|
6
|
-
|
|
7
|
-
interface Props {
|
|
8
|
-
item: BaseItemLight | undefined
|
|
9
|
-
noIcon?: boolean
|
|
10
|
-
captionSubStyle?: 'under' | 'inline' | 'none'
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
let { item, noIcon = false, captionSubStyle = 'under' }: Props = $props()
|
|
14
|
-
|
|
15
|
-
const hasSomethingToDisplay = (item: BaseItemLight) => {
|
|
16
|
-
if (item.href) {
|
|
17
|
-
return true
|
|
18
|
-
}
|
|
19
|
-
if (item.caption) {
|
|
20
|
-
return true
|
|
21
|
-
}
|
|
22
|
-
return false
|
|
23
|
-
}
|
|
24
|
-
</script>
|
|
25
|
-
|
|
26
|
-
<div class="flex items-center gap-4">
|
|
27
|
-
{#if item}
|
|
28
|
-
{#if item.icon?.data && !noIcon}
|
|
29
|
-
<div>
|
|
30
|
-
{#if item.icon.caption}
|
|
31
|
-
<Tooltip text={item.icon.caption}>
|
|
32
|
-
<Icon {...item.icon} />
|
|
33
|
-
</Tooltip>
|
|
34
|
-
{:else}
|
|
35
|
-
<Icon {...item.icon} />
|
|
36
|
-
{/if}
|
|
37
|
-
</div>
|
|
38
|
-
{/if}
|
|
39
|
-
|
|
40
|
-
{#if hasSomethingToDisplay(item)}
|
|
41
|
-
<div class="flex flex-col items-start">
|
|
42
|
-
{#if item.href}
|
|
43
|
-
<div>
|
|
44
|
-
<Link href={item.href}>{item.caption}</Link>
|
|
45
|
-
{#if item.captionSub && captionSubStyle === 'inline'}
|
|
46
|
-
<span class="text-xs text-base-content/70 italic">{item.captionSub}</span>
|
|
47
|
-
{/if}
|
|
48
|
-
</div>
|
|
49
|
-
{:else}
|
|
50
|
-
<!-- 20 is a cool value ! -->
|
|
51
|
-
<span
|
|
52
|
-
class="text-base-content {item.class} {(item.caption ?? '').length < 20 ? 'text-nowrap' : ''}"
|
|
53
|
-
>
|
|
54
|
-
{item.caption ?? '-'}
|
|
55
|
-
</span>
|
|
56
|
-
{/if}
|
|
57
|
-
{#if item.captionSub && captionSubStyle === 'under'}
|
|
58
|
-
<span class="text-xs text-base-content/70 italic">{item.captionSub}</span>
|
|
59
|
-
{/if}
|
|
60
|
-
</div>
|
|
61
|
-
{/if}
|
|
62
|
-
{/if}
|
|
63
|
-
</div>
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { type BaseItemLight } from '../../internals';
|
|
2
|
-
interface Props {
|
|
3
|
-
item: BaseItemLight | undefined;
|
|
4
|
-
noIcon?: boolean;
|
|
5
|
-
captionSubStyle?: 'under' | 'inline' | 'none';
|
|
6
|
-
}
|
|
7
|
-
declare const LinkPlus: import("svelte").Component<Props, {}, "">;
|
|
8
|
-
type LinkPlus = ReturnType<typeof LinkPlus>;
|
|
9
|
-
export default LinkPlus;
|
package/esm/utils/tailwind.d.ts
DELETED
package/esm/utils/tailwind.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { TransitionConfig } from 'svelte/transition';
|
|
2
|
-
type FlyAndScaleOptions = {
|
|
3
|
-
y: number;
|
|
4
|
-
start: number;
|
|
5
|
-
duration?: number;
|
|
6
|
-
};
|
|
7
|
-
export declare const flyAndScale: (node: HTMLElement, options: FlyAndScaleOptions) => TransitionConfig;
|
|
8
|
-
export type StyleObject = Record<string, number | string | undefined>;
|
|
9
|
-
export {};
|
package/esm/utils/transition.js
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
// From https://github.com/melt-ui/melt-ui/blob/develop/src/docs/utils/transition.ts
|
|
2
|
-
import { cubicOut } from 'svelte/easing';
|
|
3
|
-
const scaleConversion = (valueA, scaleA, scaleB) => {
|
|
4
|
-
const [minA, maxA] = scaleA;
|
|
5
|
-
const [minB, maxB] = scaleB;
|
|
6
|
-
const percentage = (valueA - minA) / (maxA - minA);
|
|
7
|
-
const valueB = percentage * (maxB - minB) + minB;
|
|
8
|
-
return valueB;
|
|
9
|
-
};
|
|
10
|
-
export const flyAndScale = (node, options) => {
|
|
11
|
-
const style = getComputedStyle(node);
|
|
12
|
-
const transform = style.transform === 'none' ? '' : style.transform;
|
|
13
|
-
return {
|
|
14
|
-
duration: options.duration ?? 150,
|
|
15
|
-
delay: 0,
|
|
16
|
-
css: (t) => {
|
|
17
|
-
const y = scaleConversion(t, [0, 1], [options.y, 0]);
|
|
18
|
-
const scale = scaleConversion(t, [0, 1], [options.start, 1]);
|
|
19
|
-
return styleToString({
|
|
20
|
-
transform: `${transform} translate3d(0, ${y}px, 0) scale(${scale})`,
|
|
21
|
-
opacity: t,
|
|
22
|
-
});
|
|
23
|
-
},
|
|
24
|
-
easing: cubicOut,
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
function styleToString(style) {
|
|
28
|
-
return Object.keys(style).reduce((str, key) => {
|
|
29
|
-
if (style[key] === undefined)
|
|
30
|
-
return str;
|
|
31
|
-
return str + `${key}:${style[key]};`;
|
|
32
|
-
}, '');
|
|
33
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|