@@ -4,20 +4,20 @@ import { Obj, ObjType, UserMethods, UserPermissions } from "~/types"
44import { ext } from "~/utils"
55import { generateIframePreview } from "./iframe"
66import { useRouter } from "~/hooks"
7- import { getArchiveExtensions } from "~/store/archive"
7+ import { isArchive } from "~/store/archive"
88
9- type Ext = string [ ] | "*" | ( ( ) => string [ ] )
9+ type Ext = string [ ] | "*" | ( ( name : string ) => boolean )
1010type Prior = boolean | ( ( ) => boolean )
1111
12- const extsContains = ( exts : Ext | undefined , ext : string ) : boolean => {
12+ const extsContains = ( exts : Ext | undefined , name : string ) : boolean => {
1313 if ( exts === undefined ) {
1414 return false
1515 } else if ( exts === "*" ) {
1616 return true
1717 } else if ( typeof exts === "function" ) {
18- return ( exts as ( ) => string [ ] ) ( ) . includes ( ext )
18+ return ( exts as ( name : string ) => boolean ) ( name )
1919 } else {
20- return ( exts as string [ ] ) . includes ( ext )
20+ return ( exts as string [ ] ) . includes ( ext ( name ) . toLowerCase ( ) )
2121 }
2222}
2323
@@ -129,12 +129,12 @@ const previews: Preview[] = [
129129 } ,
130130 {
131131 name : "Archive Preview" ,
132- exts : ( ) => {
132+ exts : ( name : string ) => {
133133 const index = UserPermissions . findIndex (
134134 ( item ) => item === "read_archives" ,
135135 )
136- if ( ! UserMethods . can ( me ( ) , index ) ) return [ ]
137- return getArchiveExtensions ( )
136+ if ( ! UserMethods . can ( me ( ) , index ) ) return false
137+ return isArchive ( name )
138138 } ,
139139 component : lazy ( ( ) => import ( "./archive" ) ) ,
140140 prior : ( ) => getSettingBool ( "preview_archives_by_default" ) ,
@@ -157,7 +157,7 @@ export const getPreviews = (
157157 if (
158158 preview . type === file . type ||
159159 ( typeOverride && preview . type === typeOverride ) ||
160- extsContains ( preview . exts , ext ( file . name ) . toLowerCase ( ) )
160+ extsContains ( preview . exts , file . name )
161161 ) {
162162 const r = { name : preview . name , component : preview . component }
163163 if ( isPrior ( preview . prior ) ) {
0 commit comments