mirror of
https://github.com/tauri-apps/tauri.git
synced 2026-04-03 10:11:15 +02:00
feat(tauri.js/init): set appName in api instead of bin (#897)
This commit is contained in:
@@ -1,17 +1,7 @@
|
||||
const parseArgs = require('minimist')
|
||||
const inquirer = require('inquirer')
|
||||
const {
|
||||
resolve
|
||||
} = require('path')
|
||||
const {
|
||||
readFileSync,
|
||||
writeFileSync
|
||||
} = require('fs')
|
||||
const {
|
||||
merge,
|
||||
kebabCase
|
||||
} = require('lodash')
|
||||
const toml = require('@tauri-apps/toml')
|
||||
const { resolve } = require('path')
|
||||
const { merge } = require('lodash')
|
||||
|
||||
/**
|
||||
* @type {object}
|
||||
@@ -130,6 +120,7 @@ async function runInit(config = {}) {
|
||||
force: argv.f || null,
|
||||
logging: argv.l || null,
|
||||
tauriPath: argv.t || null,
|
||||
appName: appName || argv.A || null,
|
||||
customConfig: merge(configOptions, {
|
||||
build: {
|
||||
distDir: argv.D,
|
||||
@@ -143,18 +134,6 @@ async function runInit(config = {}) {
|
||||
})
|
||||
})
|
||||
|
||||
if (appName || argv.A) {
|
||||
const manifestPath = resolve(directory, 'src-tauri/Cargo.toml')
|
||||
const cargoManifest = toml.parse(readFileSync(manifestPath).toString())
|
||||
let binName = kebabCase(appName || argv.A)
|
||||
cargoManifest.package.name = binName
|
||||
cargoManifest.package['default-run'] = binName
|
||||
if (cargoManifest.bin && cargoManifest.bin.length) {
|
||||
cargoManifest.bin[0].name = binName
|
||||
}
|
||||
writeFileSync(manifestPath, toml.stringify(cargoManifest))
|
||||
}
|
||||
|
||||
const {
|
||||
installDependencies
|
||||
} = require('../dist/api/dependency-manager')
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
import { TauriConfig } from 'types'
|
||||
import { inject } from '../template'
|
||||
import { resolve } from 'path'
|
||||
import toml, { JsonMap } from '@tauri-apps/toml'
|
||||
import { readFileSync, writeFileSync } from 'fs'
|
||||
import { kebabCase } from 'lodash'
|
||||
import { CargoManifest } from 'src/types/cargo'
|
||||
|
||||
module.exports = (args: {
|
||||
directory: string
|
||||
@@ -7,8 +12,9 @@ module.exports = (args: {
|
||||
logging: boolean
|
||||
tauriPath?: string
|
||||
customConfig?: Partial<TauriConfig>
|
||||
appName?: string
|
||||
}): boolean => {
|
||||
return inject(
|
||||
const injectResult = inject(
|
||||
args.directory,
|
||||
'all',
|
||||
{
|
||||
@@ -18,4 +24,16 @@ module.exports = (args: {
|
||||
},
|
||||
args.customConfig
|
||||
)
|
||||
if (args.appName) {
|
||||
const manifestPath = resolve(args.directory, 'src-tauri/Cargo.toml')
|
||||
const cargoManifest = toml.parse(readFileSync(manifestPath).toString()) as unknown as CargoManifest
|
||||
const binName = kebabCase(args.appName)
|
||||
cargoManifest.package.name = binName
|
||||
cargoManifest.package['default-run'] = binName
|
||||
if (cargoManifest.bin?.length) {
|
||||
cargoManifest.bin[0].name = binName
|
||||
}
|
||||
writeFileSync(manifestPath, toml.stringify(cargoManifest as unknown as JsonMap))
|
||||
}
|
||||
return injectResult
|
||||
}
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
export interface CargoManifest {
|
||||
dependencies: { [k: string]: string | CargoManifestDependency }
|
||||
package: { version: string }
|
||||
package: { version: string, name: string, 'default-run': string }
|
||||
bin: Array<{
|
||||
name: string
|
||||
path: string
|
||||
}>
|
||||
}
|
||||
|
||||
export interface CargoManifestDependency {
|
||||
|
||||
Reference in New Issue
Block a user