Skip to content

Commit

Permalink
chore: icon index template
Browse files Browse the repository at this point in the history
  • Loading branch information
hyoban committed Aug 16, 2024
1 parent 07fafe1 commit 99c2e63
Show file tree
Hide file tree
Showing 3 changed files with 100 additions and 88 deletions.
174 changes: 87 additions & 87 deletions components/icons/index.ts
Original file line number Diff line number Diff line change
@@ -1,87 +1,87 @@
export { default as AddCuteRe } from './add-cute-re'
export { default as AnnouncementCuteFi } from './announcement-cute-fi'
export { default as ArrowRightCircleCuteFi } from './arrow-right-circle-cute-fi'
export { default as ArrowRightUpCuteRe } from './arrow-right-up-cute-re'
export { default as Back2CuteRe } from './back-2-cute-re'
export { default as BugCuteRe } from './bug-cute-re'
export { default as CelebrateCuteRe } from './celebrate-cute-re'
export { default as CheckCircleCuteRe } from './check-circle-cute-re'
export { default as CheckCircleFilled } from './check-circle-filled'
export { default as CheckFilled } from './check-filled'
export { default as CloseCuteRe } from './close-cute-re'
export { default as Copy2CuteRe } from './copy-2-cute-re'
export { default as Delete2CuteRe } from './delete-2-cute-re'
export { default as DiscordCuteFi } from './discord-cute-fi'
export { default as Download2CuteRe } from './download-2-cute-re'
export { default as ExitCuteRe } from './exit-cute-re'
export { default as ExternalLinkCuteRe } from './external-link-cute-re'
export { default as Eye2CuteRe } from './eye-2-cute-re'
export { default as EyeCloseCuteRe } from './eye-close-cute-re'
export { default as FastForwardCuteRe } from './fast-forward-cute-re'
export { default as FileImportCuteRe } from './file-import-cute-re'
export { default as FileUploadCuteRe } from './file-upload-cute-re'
export { default as Flag1CuteFi } from './flag-1-cute-fi'
export { default as Forward2CuteRe } from './forward-2-cute-re'
export { default as Fullscreen2CuteRe } from './fullscreen-2-cute-re'
export { default as GiftCuteRe } from './gift-cute-re'
export { default as Github2CuteFi } from './github-2-cute-fi'
export { default as GithubCuteFi } from './github-cute-fi'
export { default as GoogleCuteFi } from './google-cute-fi'
export { default as Grid2CuteRe } from './grid-2-cute-re'
export { default as GridCuteRe } from './grid-cute-re'
export { default as HeartCuteFi } from './heart-cute-fi'
export { default as HotkeyCuteRe } from './hotkey-cute-re'
export { default as InformationCuteRe } from './information-cute-re'
export { default as InformationCuteReCopy } from './information-cute-re-copy'
export { default as LayoutLeftbarCloseCuteRe } from './layout-leftbar-close-cute-re'
export { default as LayoutLeftbarOpenCuteRe } from './layout-leftbar-open-cute-re'
export { default as LeftCuteFi } from './left-cute-fi'
export { default as LineCuteRe } from './line-cute-re'
export { default as LinkCuteRe } from './link-cute-re'
export { default as ListCheck3CuteRe } from './list-check-3-cute-re'
export { default as ListCheckCuteRe } from './list-check-cute-re'
export { default as ListCollapseCuteFi } from './list-collapse-cute-fi'
export { default as ListExpansionCuteFi } from './list-expansion-cute-fi'
export { default as Loading3CuteRe } from './loading-3-cute-re'
export { default as Magic2CuteRe } from './magic-2-cute-re'
export { default as MicCuteFi } from './mic-cute-fi'
export { default as PaletteCuteRe } from './palette-cute-re'
export { default as PaperCuteFi } from './paper-cute-fi'
export { default as PauseCuteFi } from './pause-cute-fi'
export { default as PauseCuteRe } from './pause-cute-re'
export { default as PicCuteFi } from './pic-cute-fi'
export { default as PlayCuteFi } from './play-cute-fi'
export { default as PlayCuteRe } from './play-cute-re'
export { default as Power } from './power'
export { default as PowerMono } from './power-mono'
export { default as PowerOutline } from './power-outline'
export { default as QuestionCuteRe } from './question-cute-re'
export { default as Refresh2CuteRe } from './refresh-2-cute-re'
export { default as RightCuteFi } from './right-cute-fi'
export { default as RightCuteRe } from './right-cute-re'
export { default as RoundCuteFi } from './round-cute-fi'
export { default as RoundCuteRe } from './round-cute-re'
export { default as Rss2CuteFi } from './rss-2-cute-fi'
export { default as RssCuteFi } from './rss-cute-fi'
export { default as SadCuteRe } from './sad-cute-re'
export { default as Search2CuteRe } from './search-2-cute-re'
export { default as Settings7CuteRe } from './settings-7-cute-re'
export { default as Share3CuteRe } from './share-3-cute-re'
export { default as ShareForwardCuteRe } from './share-forward-cute-re'
export { default as SocialXCuteLi } from './social-x-cute-li'
export { default as SocialXCuteRe } from './social-x-cute-re'
export { default as Sparkles2CuteRe } from './sparkles-2-cute-re'
export { default as Sparkles2Filled } from './sparkles-2-filled'
export { default as StarCuteFi } from './star-cute-fi'
export { default as StarCuteRe } from './star-cute-re'
export { default as TimeCuteRe } from './time-cute-re'
export { default as TwitterCuteFi } from './twitter-cute-fi'
export { default as User3CuteRe } from './user-3-cute-re'
export { default as UserSettingCuteRe } from './user-setting-cute-re'
export { default as VideoCuteFi } from './video-cute-fi'
export { default as VolumeCuteRe } from './volume-cute-re'
export { default as VolumeMuteCuteRe } from './volume-mute-cute-re'
export { default as VolumeOffCuteRe } from './volume-off-cute-re'
export { default as WifiOffCuteRe } from './wifi-off-cute-re'
export { default as World2CuteRe } from './world-2-cute-re'
export { default as YoutubeCuteFi } from './youtube-cute-fi'
export { default as IconAddCuteRe } from './add-cute-re'
export { default as IconAnnouncementCuteFi } from './announcement-cute-fi'
export { default as IconArrowRightCircleCuteFi } from './arrow-right-circle-cute-fi'
export { default as IconArrowRightUpCuteRe } from './arrow-right-up-cute-re'
export { default as IconBack2CuteRe } from './back-2-cute-re'
export { default as IconBugCuteRe } from './bug-cute-re'
export { default as IconCelebrateCuteRe } from './celebrate-cute-re'
export { default as IconCheckCircleCuteRe } from './check-circle-cute-re'
export { default as IconCheckCircleFilled } from './check-circle-filled'
export { default as IconCheckFilled } from './check-filled'
export { default as IconCloseCuteRe } from './close-cute-re'
export { default as IconCopy2CuteRe } from './copy-2-cute-re'
export { default as IconDelete2CuteRe } from './delete-2-cute-re'
export { default as IconDiscordCuteFi } from './discord-cute-fi'
export { default as IconDownload2CuteRe } from './download-2-cute-re'
export { default as IconExitCuteRe } from './exit-cute-re'
export { default as IconExternalLinkCuteRe } from './external-link-cute-re'
export { default as IconEye2CuteRe } from './eye-2-cute-re'
export { default as IconEyeCloseCuteRe } from './eye-close-cute-re'
export { default as IconFastForwardCuteRe } from './fast-forward-cute-re'
export { default as IconFileImportCuteRe } from './file-import-cute-re'
export { default as IconFileUploadCuteRe } from './file-upload-cute-re'
export { default as IconFlag1CuteFi } from './flag-1-cute-fi'
export { default as IconForward2CuteRe } from './forward-2-cute-re'
export { default as IconFullscreen2CuteRe } from './fullscreen-2-cute-re'
export { default as IconGiftCuteRe } from './gift-cute-re'
export { default as IconGithub2CuteFi } from './github-2-cute-fi'
export { default as IconGithubCuteFi } from './github-cute-fi'
export { default as IconGoogleCuteFi } from './google-cute-fi'
export { default as IconGrid2CuteRe } from './grid-2-cute-re'
export { default as IconGridCuteRe } from './grid-cute-re'
export { default as IconHeartCuteFi } from './heart-cute-fi'
export { default as IconHotkeyCuteRe } from './hotkey-cute-re'
export { default as IconInformationCuteRe } from './information-cute-re'
export { default as IconInformationCuteReCopy } from './information-cute-re-copy'
export { default as IconLayoutLeftbarCloseCuteRe } from './layout-leftbar-close-cute-re'
export { default as IconLayoutLeftbarOpenCuteRe } from './layout-leftbar-open-cute-re'
export { default as IconLeftCuteFi } from './left-cute-fi'
export { default as IconLineCuteRe } from './line-cute-re'
export { default as IconLinkCuteRe } from './link-cute-re'
export { default as IconListCheck3CuteRe } from './list-check-3-cute-re'
export { default as IconListCheckCuteRe } from './list-check-cute-re'
export { default as IconListCollapseCuteFi } from './list-collapse-cute-fi'
export { default as IconListExpansionCuteFi } from './list-expansion-cute-fi'
export { default as IconLoading3CuteRe } from './loading-3-cute-re'
export { default as IconMagic2CuteRe } from './magic-2-cute-re'
export { default as IconMicCuteFi } from './mic-cute-fi'
export { default as IconPaletteCuteRe } from './palette-cute-re'
export { default as IconPaperCuteFi } from './paper-cute-fi'
export { default as IconPauseCuteFi } from './pause-cute-fi'
export { default as IconPauseCuteRe } from './pause-cute-re'
export { default as IconPicCuteFi } from './pic-cute-fi'
export { default as IconPlayCuteFi } from './play-cute-fi'
export { default as IconPlayCuteRe } from './play-cute-re'
export { default as IconPower } from './power'
export { default as IconPowerMono } from './power-mono'
export { default as IconPowerOutline } from './power-outline'
export { default as IconQuestionCuteRe } from './question-cute-re'
export { default as IconRefresh2CuteRe } from './refresh-2-cute-re'
export { default as IconRightCuteFi } from './right-cute-fi'
export { default as IconRightCuteRe } from './right-cute-re'
export { default as IconRoundCuteFi } from './round-cute-fi'
export { default as IconRoundCuteRe } from './round-cute-re'
export { default as IconRss2CuteFi } from './rss-2-cute-fi'
export { default as IconRssCuteFi } from './rss-cute-fi'
export { default as IconSadCuteRe } from './sad-cute-re'
export { default as IconSearch2CuteRe } from './search-2-cute-re'
export { default as IconSettings7CuteRe } from './settings-7-cute-re'
export { default as IconShare3CuteRe } from './share-3-cute-re'
export { default as IconShareForwardCuteRe } from './share-forward-cute-re'
export { default as IconSocialXCuteLi } from './social-x-cute-li'
export { default as IconSocialXCuteRe } from './social-x-cute-re'
export { default as IconSparkles2CuteRe } from './sparkles-2-cute-re'
export { default as IconSparkles2Filled } from './sparkles-2-filled'
export { default as IconStarCuteFi } from './star-cute-fi'
export { default as IconStarCuteRe } from './star-cute-re'
export { default as IconTimeCuteRe } from './time-cute-re'
export { default as IconTwitterCuteFi } from './twitter-cute-fi'
export { default as IconUser3CuteRe } from './user-3-cute-re'
export { default as IconUserSettingCuteRe } from './user-setting-cute-re'
export { default as IconVideoCuteFi } from './video-cute-fi'
export { default as IconVolumeCuteRe } from './volume-cute-re'
export { default as IconVolumeMuteCuteRe } from './volume-mute-cute-re'
export { default as IconVolumeOffCuteRe } from './volume-off-cute-re'
export { default as IconWifiOffCuteRe } from './wifi-off-cute-re'
export { default as IconWorld2CuteRe } from './world-2-cute-re'
export { default as IconYoutubeCuteFi } from './youtube-cute-fi'
12 changes: 12 additions & 0 deletions icon-index-template.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
const path = require('node:path')

function defaultIndexTemplate(filePaths) {
const exportEntries = filePaths.map(({ path: filePath }) => {
const basename = path.basename(filePath, path.extname(filePath))
const exportName = basename.split('-').map(part => part.charAt(0).toUpperCase() + part.slice(1)).join('')
return `export { default as Icon${exportName} } from './${basename}'`
})
return exportEntries.join('\n')
}

module.exports = defaultIndexTemplate
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
"prebuild": "expo prebuild",
"prepare": "simple-git-hooks",
"start": "expo start --dev-client",
"svgr": "svgr --out-dir components/icons --filename-case kebab --native --typescript --jsx-runtime automatic --memo --template icon-template.js -- icons/mgc && eslint --flag unstable_ts_config --fix components/icons",
"svgr": "svgr --out-dir components/icons --filename-case kebab --native --typescript --jsx-runtime automatic --memo --template icon-template.js --index-template icon-index-template.js -- icons/mgc && eslint --flag unstable_ts_config --fix components/icons",
"typecheck": "tsc",
"web": "expo start --web"
},
Expand Down

0 comments on commit 99c2e63

Please sign in to comment.