1
- import { interpolate , interpolateColors , Easing } from 'remotion'
1
+ import wasmURL from '@ffmpeg/core/wasm?url'
2
+ import coreURL from '@ffmpeg/core?url'
3
+ import { FFmpeg } from '@ffmpeg/ffmpeg'
4
+ import { fetchFile , toBlobURL } from '@ffmpeg/util'
5
+ import { useNavigate } from '@solidjs/router'
6
+ import clsx from 'clsx'
7
+ import { openDB } from 'idb'
2
8
import { encode } from 'modern-gif'
3
9
import workerUrl from 'modern-gif/worker?url'
10
+ import { Easing , interpolate , interpolateColors } from 'remotion'
11
+
12
+ import { Show , createEffect , createMemo , createSignal , onCleanup , onMount } from 'solid-js'
13
+ import { SetStoreFunction } from 'solid-js/store'
14
+
15
+ import { FaSolidCaretDown , FaSolidCaretUp } from 'solid-icons/fa'
16
+ import { HiOutlineCog } from 'solid-icons/hi'
17
+ import { toast } from 'solid-sonner'
18
+
19
+ import type { HighlighterGeneric } from 'shiki'
20
+ import { bundledLanguages , bundledThemes , createHighlighter } from 'shiki'
4
21
import 'shiki-magic-move/dist/style.css'
22
+ import { ShikiMagicMove } from 'shiki-magic-move/solid'
23
+ import { MagicMoveElement } from 'shiki-magic-move/types'
24
+
5
25
import {
6
- ComboboxItem ,
7
- ComboboxItemLabel ,
8
- ComboboxItemIndicator ,
26
+ Accordion ,
27
+ AccordionContent ,
28
+ AccordionItem ,
29
+ AccordionTrigger ,
30
+ } from '~/components/ui/accordion'
31
+ import { Button } from '~/components/ui/button'
32
+ import { Checkbox } from '~/components/ui/checkbox'
33
+ import { Collapsible , CollapsibleContent } from '~/components/ui/collapsible'
34
+ import {
35
+ Combobox ,
36
+ ComboboxContent ,
9
37
ComboboxControl ,
10
38
ComboboxInput ,
39
+ ComboboxItem ,
40
+ ComboboxItemIndicator ,
41
+ ComboboxItemLabel ,
11
42
ComboboxTrigger ,
12
- ComboboxContent ,
13
- Combobox ,
14
43
} from '~/components/ui/combobox'
15
- import { Button } from '~/components/ui/button'
16
- import { Tabs , TabsContent , TabsList , TabsTrigger } from '~/components/ui/tabs'
17
- import { TextField , TextFieldInput } from '~/components/ui/text-field'
18
- import { MagicMoveElement } from 'shiki-magic-move/types'
44
+ import { Dialog , DialogContent , DialogFooter } from '~/components/ui/dialog'
45
+ import { Label } from '~/components/ui/label'
46
+ import { ProgressCircle } from '~/components/ui/progress-circle'
47
+ import {
48
+ Select ,
49
+ SelectContent ,
50
+ SelectItem ,
51
+ SelectTrigger ,
52
+ SelectValue ,
53
+ } from '~/components/ui/select'
54
+ import { Separator } from '~/components/ui/separator'
19
55
import {
20
56
Slider ,
21
57
SliderFill ,
@@ -24,55 +60,14 @@ import {
24
60
SliderTrack ,
25
61
SliderValueLabel ,
26
62
} from '~/components/ui/slider'
27
- import clsx from 'clsx'
28
- import { Checkbox } from '~/components/ui/checkbox'
29
- import { Label } from '~/components/ui/label'
30
- import {
31
- Dialog ,
32
- DialogContent ,
33
- DialogDescription ,
34
- DialogFooter ,
35
- DialogHeader ,
36
- DialogTitle ,
37
- } from '~/components/ui/dialog'
38
- import {
39
- createEffect ,
40
- createMemo ,
41
- createResource ,
42
- createSignal ,
43
- onCleanup ,
44
- Setter ,
45
- Show ,
46
- onMount ,
47
- } from 'solid-js'
48
- import type { HighlighterGeneric } from 'shiki'
49
- import { createHighlighter , bundledThemes , bundledLanguages } from 'shiki'
50
- import { ShikiMagicMove } from 'shiki-magic-move/solid'
51
- import { AnimationFrameConfig , SnippetSettings } from '~/types'
52
- import { authFetch } from '~/lib/utils'
53
- import { useNavigate } from '@solidjs/router'
63
+ import { Tabs , TabsContent , TabsList , TabsTrigger } from '~/components/ui/tabs'
64
+ import { TextField , TextFieldInput } from '~/components/ui/text-field'
65
+
54
66
import { authToken } from '~/lib/store'
55
- import { toast } from 'solid-sonner'
56
- import { Separator } from './ui/separator'
57
- import { Select , SelectContent , SelectItem , SelectTrigger , SelectValue } from './ui/select'
58
- import { Accordion , AccordionContent , AccordionItem , AccordionTrigger } from './ui/accordion'
59
- import {
60
- DropdownMenu ,
61
- DropdownMenuContent ,
62
- DropdownMenuItem ,
63
- DropdownMenuTrigger ,
64
- } from './ui/dropdown-menu'
67
+ import { authFetch } from '~/lib/utils'
68
+ import { AnimationFrameConfig , SnippetSettings } from '~/types'
69
+
65
70
import { ShikiCodeBlock } from './ShikiCodeBlock'
66
- import { SetStoreFunction } from 'solid-js/store'
67
- import { FFmpeg } from '@ffmpeg/ffmpeg'
68
- import { fetchFile , toBlobURL } from '@ffmpeg/util'
69
- import coreURL from '@ffmpeg/core?url'
70
- import wasmURL from '@ffmpeg/core/wasm?url'
71
- import { openDB } from 'idb'
72
- import { ProgressCircle } from './ui/progress-circle'
73
- import { Collapsible , CollapsibleContent } from './ui/collapsible'
74
- import { FaSolidCaretDown , FaSolidCaretUp } from 'solid-icons/fa'
75
- import { HiOutlineCog } from 'solid-icons/hi'
76
71
77
72
const animationSeconds = 1
78
73
const animationFPS = 30
0 commit comments