Files
web-temp/layers/composables/useTemplateRegistry.ts
2025-10-17 17:51:19 +09:00

33 lines
1.2 KiB
TypeScript

import GrVisual01 from '#layers/templates/GrVisual01/index.vue'
import GrVisual02 from '#layers/templates/GrVisual02/index.vue'
import GrVisual03 from '#layers/templates/GrVisual03/index.vue'
import GrGallery01 from '#layers/templates/GrGallery01/index.vue'
import GrGallery02 from '#layers/templates/GrGallery02/index.vue'
import GrGallery03 from '#layers/templates/GrGallery03/index.vue'
import GrDetail01 from '#layers/templates/GrDetail01/index.vue'
const templateRegistry = {
GR_VISUAL_01: { component: GrVisual01 },
GR_VISUAL_02: { component: GrVisual02 },
GR_VISUAL_03: { component: GrVisual03 },
GR_GALLERY_01: { component: GrGallery01 },
GR_GALLERY_02: { component: GrGallery02 },
GR_GALLERY_03: { component: GrGallery03 },
// GR_BOARD_01: { component: GrBoard01 },
GR_DETAIL_01: { component: GrDetail01 },
// GR_DETAIL_02: { component: GrDetail02 },
// GR_DETAIL_03: { component: GrDetail03 },
// GR_CONTENTS_01: { component: GrContents01 },
} as const
type TemplateKey = keyof typeof templateRegistry
export const useTemplateRegistry = () => {
return {
templateRegistry,
getTemplateComponent: (templateCode: string) => {
return templateRegistry[templateCode as TemplateKey]?.component
},
}
}