本文整理汇总了TypeScript中sanitize-filename.default函数的典型用法代码示例。如果您正苦于以下问题:TypeScript default函数的具体用法?TypeScript default怎么用?TypeScript default使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了default函数的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: sanitizeFilename
r.onloadend = () => {
const data = {
name: sanitizeFilename(self.visState.title.toLowerCase().replace(/\s/g, '-')),
image: r.result,
format: 'png'
};
remote.dialog.showSaveDialog(
remote.BrowserWindow.getAllWindows()[0],
{
title: 'Export to Image',
defaultPath: sanitizeFilename(data.name + '.' + data.format)
},
(name: string) => {
name && writeFileSync(name, arrayBufferToBuffer(data.image));
}
);
};
示例2: ensureDir
export async function createSelfSignedCert(publisher: string) {
const tmpDir = new TmpDir()
const targetDir = process.cwd()
const tempPrefix = path.join(await tmpDir.getTempDir({prefix: "self-signed-cert-creator"}), sanitizeFileName(publisher))
const cer = `${tempPrefix}.cer`
const pvk = `${tempPrefix}.pvk`
log.info(chalk.bold('When asked to enter a password ("Create Private Key Password"), please select "None".'))
try {
await ensureDir(path.dirname(tempPrefix))
const vendorPath = path.join(await getSignVendorPath(), "windows-10", process.arch)
await exec(path.join(vendorPath, "makecert.exe"),
["-r", "-h", "0", "-n", `CN=${quoteString(publisher)}`, "-eku", "1.3.6.1.5.5.7.3.3", "-pe", "-sv", pvk, cer])
const pfx = path.join(targetDir, `${sanitizeFileName(publisher)}.pfx`)
await unlinkIfExists(pfx)
await exec(path.join(vendorPath, "pvk2pfx.exe"), ["-pvk", pvk, "-spc", cer, "-pfx", pfx])
log.info({file: pfx}, `created. Please see https://electron.build/code-signing how to use it to sign.`)
const certLocation = "Cert:\\LocalMachine\\TrustedPeople"
log.info({file: pfx, certLocation}, `importing. Operation will be succeed only if runned from root. Otherwise import file manually.`)
await spawn("powershell.exe", ["Import-PfxCertificate", "-FilePath", `"${pfx}"`, "-CertStoreLocation", ""])
}
finally {
await tmpDir.cleanup()
}
}
示例3: main
async function main() {
const args: any = yargs
.option("publisher", {
alias: ["p"],
}).argv
const tmpDir = new TmpDir()
const targetDir = process.cwd()
const tempPrefix = path.join(await tmpDir.getTempFile(""), sanitizeFileName(args.publisher))
const cer = `${tempPrefix}.cer`
const pvk = `${tempPrefix}.pvk`
log('When asked to enter a password ("Create Private Key Password"), please select "None".')
const vendorPath = path.join(await getSignVendorPath(), "windows-10", process.arch)
await exec(path.join(vendorPath, "makecert.exe"),
["-r", "-h", "0", "-n", `CN=${args.publisher}`, "-eku", "1.3.6.1.5.5.7.3.3", "-pe", "-sv", pvk, cer])
const pfx = path.join(targetDir, `${sanitizeFileName(args.publisher)}.pfx`)
await unlinkIfExists(pfx)
await exec(path.join(vendorPath, "pvk2pfx.exe"), ["-pvk", pvk, "-spc", cer, "-pfx", pfx])
log(`${pfx} created. Please see https://github.com/electron-userland/electron-builder/wiki/Code-Signing how do use it to sign.`)
const certLocation = "Cert:\\LocalMachine\\TrustedPeople"
log(`${pfx} will be imported into ${certLocation} Operation will be succeed only if runned from root. Otherwise import file manually.`)
await spawn("powershell.exe", ["Import-PfxCertificate", "-FilePath", `"${pfx}"`, "-CertStoreLocation", ""])
tmpDir.cleanup()
}
示例4: getEffectiveOptions
export function getEffectiveOptions(options: CommonWindowsInstallerConfiguration, packager: WinPackager): FinalCommonWindowsInstallerOptions {
const appInfo = packager.appInfo
let menuCategory: string | null = null
if (options.menuCategory != null && options.menuCategory !== false) {
if (options.menuCategory === true) {
const companyName = packager.appInfo.companyName
if (companyName == null) {
throw new InvalidConfigurationError(`Please specify "author" in the application package.json â it is required because "menuCategory" is set to true.`)
}
menuCategory = sanitizeFileName(companyName)
}
else {
menuCategory = (options.menuCategory as string).split(/[\/\\]/).map(it => sanitizeFileName(it)).join("\\")
}
}
return {
isPerMachine: options.perMachine === true,
isAssisted: options.oneClick === false,
shortcutName: isEmptyOrSpaces(options.shortcutName) ? appInfo.productFilename : packager.expandMacro(options.shortcutName!!),
isCreateDesktopShortcut: convertToDesktopShortcutCreationPolicy(options.createDesktopShortcut),
isCreateStartMenuShortcut: options.createStartMenuShortcut !== false,
menuCategory,
}
}
示例5: sanitizeFileName
menuCategory = (options.menuCategory as string).split(/[\/\\]/).map(it => sanitizeFileName(it)).join("\\")
示例6: constructor
constructor(info: BuildInfo) {
super(info)
let executableName = this.platformSpecificBuildOptions.executableName
this.executableName = sanitizeFileName(executableName == null ? this.appInfo.name : executableName).toLowerCase()
}
示例7: constructor
constructor(info: Packager) {
super(info)
const executableName = this.platformSpecificBuildOptions.executableName
this.executableName = sanitizeFileName(executableName == null ? this.appInfo.name.toLowerCase() : executableName)
}
示例8: normalizeFileName
export function normalizeFileName(filename: string) {
filename = sanitize(filename.replace(/[^a-z0-9\-\.]/gi, '_'));
if (filename[0] === '/') filename = filename.substr(1);
return filename;
}