MCPcopy Create free account
hub / github.com/formkit/formkit / buildPackage

Function buildPackage

scripts/build.mjs:97–160  ·  view source on GitHub ↗
(p)

Source from the content-addressed store, hash-verified

95 * @returns
96 */
97export async function buildPackage(p) {
98 if (p && p !== 'all' && !isBuilding) {
99 try {
100 progressBar = new ProgressBar({ autoClear: true })
101 progressBar.start({ total: progress.expectedLogs })
102 usingProgressBar = true
103 } catch {
104 usingProgressBar = false
105 }
106 startTimer()
107 isBuilding = true
108 }
109 const packages = getPackages()
110 if (!p) {
111 return selectPackage()
112 }
113 if (p.includes('cancel')) {
114 msg.error(`The build was cancelled. 👋`)
115 return
116 }
117 if (p.includes('build all') || p === 'all') {
118 buildAllPackages(packages)
119 return
120 } else if (!startTime) {
121 progress.expectedLogs = estimatedLogs(p)
122 startTime = performance.now()
123 }
124 if (!packages.includes(p)) {
125 msg.error(`${p} is not an valid package name.`)
126 }
127
128 if (p === 'nuxt') {
129 await buildNuxtModule()
130 } else {
131 await bundle(p, undefined, !usingProgressBar)
132 }
133 if (p === 'themes') await themesBuildExtras()
134
135 if (p === 'inputs') await inputsBuildExtras()
136
137 if (p === 'addons') await addonsBuildExtras()
138
139 // // special case for Icons package
140 if (p === 'icons') {
141 const icons = getIcons()
142 await fs.mkdir(
143 resolve(packagesDir, 'icons/dist/icons'),
144 { recursive: true },
145 (err) => {
146 if (err) throw err
147 }
148 )
149 Object.keys(icons).forEach(async (icon) => {
150 await fs.writeFile(
151 resolve(packagesDir, 'icons/dist/icons', `${icon}.svg`),
152 icons[icon]
153 )
154 })

Callers 2

selectPackageFunction · 0.85
buildAllPackagesFunction · 0.85

Calls 12

getPackagesFunction · 0.90
getIconsFunction · 0.90
startTimerFunction · 0.85
selectPackageFunction · 0.85
buildAllPackagesFunction · 0.85
estimatedLogsFunction · 0.85
buildNuxtModuleFunction · 0.85
bundleFunction · 0.85
themesBuildExtrasFunction · 0.85
inputsBuildExtrasFunction · 0.85
addonsBuildExtrasFunction · 0.85
buildCompleteFunction · 0.85

Tested by

no test coverage detected