2023-09-25 18:11:29 +08:00
|
|
|
/**
|
2023-09-29 11:17:46 +08:00
|
|
|
* Copyright (c) 2023 - present TinyEngine Authors.
|
|
|
|
* Copyright (c) 2023 - present Huawei Cloud Computing Technologies Co., Ltd.
|
|
|
|
*
|
|
|
|
* Use of this source code is governed by an MIT-style license.
|
|
|
|
*
|
|
|
|
* THE OPEN SOURCE SOFTWARE IN THIS PRODUCT IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL,
|
|
|
|
* BUT WITHOUT ANY WARRANTY, WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR
|
|
|
|
* A PARTICULAR PURPOSE. SEE THE APPLICABLE LICENSES FOR MORE DETAILS.
|
|
|
|
*
|
|
|
|
*/
|
2023-09-25 18:11:29 +08:00
|
|
|
|
|
|
|
const { resolve } = require('path')
|
|
|
|
const { readdirSync, readFileSync, existsSync, mkdirSync, rmSync, writeFileSync } = require('fs')
|
|
|
|
|
2023-09-29 11:17:46 +08:00
|
|
|
const dir = resolve(__dirname, '../packages/settings/design/src/assets/materials/ng-components')
|
2023-09-25 18:11:29 +08:00
|
|
|
const files = readdirSync(dir)
|
|
|
|
const schemas = []
|
|
|
|
|
|
|
|
files.forEach((fileName) => {
|
|
|
|
if (/\.json$/.test(fileName)) {
|
|
|
|
const content = readFileSync(resolve(dir, fileName)).toString()
|
|
|
|
schemas.push(JSON.parse(content))
|
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
const outDir = resolve(__dirname, '../dist')
|
|
|
|
const outFile = resolve(outDir, 'componentSchemas.json')
|
|
|
|
|
|
|
|
if (!existsSync(outDir)) {
|
|
|
|
mkdirSync(outDir)
|
|
|
|
}
|
|
|
|
|
|
|
|
if (existsSync(outFile)) {
|
|
|
|
rmSync(outFile)
|
|
|
|
}
|
|
|
|
|
|
|
|
writeFileSync(outFile, JSON.stringify(schemas, null, 2))
|