Files
tauri/cli/core/schema.json
Jacob Bolda 40ac52971e feat: create-tauri-app wiring (#1442)
* chore(deps) Update Tauri JS CLI (#1319)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Tauri Core (#1318)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Tauri API (#1316)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Rust crate serde_json to 1.0.64 (#1315)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Rust crate once_cell to 1.7.2 (#1314)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Rust crate image to 0.23.14 (#1313)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* feat(cli/build): improve no distDir error message (#1306)

* feat(cli/build): improve no distDir error message

* chore: use Path's Display impl

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* chore(deps) Update Tauri API Definitions (#1317)

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* feat(bundler/wix): install webview2 runtime (#1329)

* feat(bundler/wix): install webview2 runtime

* add changefile

* chore(deps) Update Tauri API Definitions (major) (#1290)

* chore(deps) Update Tauri API Definitions

* chore: update to husky v5

* chore: remove husky script

* chore: recreate lock file

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* chore(deps) Update Tauri JS CLI (#1291)

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* refactor(core): app hooks (#1332)

* fix(api/window): rename manager export to appWindow (#1342)

* feat(api/shell): allow open command to open files (#1341)

* chore(deps) Update Tauri API Definitions (#1344)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Rust crate tokio to 1.3 (#1343)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Rust crate open to 1.6.0 (#1348)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* fix(core): wrong usage of wry RPC on event API (#1351)

* copy cli config definition window visibility defaults (#1353)

* feat(core): add file drop handler (#1352)

* fix: get correct resource dir in AppImge (fix #1308) (#1333)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* feat: build without proc macros (#1226)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* chore(deps) Update Tauri JS CLI (#1346)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* refactor(core): use Mutex in std to reduce async usage (#1350)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* fix(examples): build error (#1354)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* API example new ui (#1310)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* chore(deps): remove `winres` from template (#1357)

* refactor(core): add `unlisten`, `once` APIs to the event system (#1359)

* fix(cli): use correct arg in `_blanks` links polyfill (#1362)

* fix(api/http): correct types (#1360)

* fix(api/http): correct types

* Add changes

* Update correct-http-api-types.md

* chore(deps) Update Tauri JS CLI (#1364)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Tauri API Definitions (#1363)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* fix(tauri/webview): Use different user_data_path for Windows (#1365) (#1366)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* fix(config): serde_json::Value::Object takes a Map instead of HashMap (#1371)

* fix(config): serde_json::Value::Object takes a Map instead of HashMap

* fix: fmt

* fix(tauri.js): init command properly building with manifests (#1374)

* fix(tauri.js): init command properly building with manifests

* fix: tests

* feat(bundler): add visual c++ redistributable files with MSM (#1368)

* refactor(core): reduce usage on arc and mutex (#1361)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* feat(config): allow setting product name and version on tauri.conf.json (#1358)

* feat: add current working directory to path api module (#1375)

* refactor(core): move bundle script to /tauri crate (#1377)

* refactor(core): move bundle script to /tauri crate

* fix(cli): clippy

* fix(core): tests

* refactor(core): custom protocol URL uses the app identifier (#1376)

* refactor(core): custom protocol URL uses the app identifier

* fix: clippy

* fix(tauri-api): remove .exe from app_name on windows (#1379)

* chore(deps) Update Tauri API Definitions (#1384)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Rust crate tokio to 1.4 (#1383)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* fix(cli): prmpt user before install deps in init (#1381)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* chore(deps) Update dependency rollup to v2.42.4 (#1386)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* refactor(cli): rewrite init command in Rust (#1382)

Co-authored-by: nothingismagick <denjell@mailscript.com>

* refactor(bundler): specific settings on dedicated structs, update README (#1380)

* replace lazy_static uses with once_cell (#1391)

* chore(deps) Update Tauri JS CLI (#1385)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* refactor(cli): rewrite info in Rust (#1389)

* refactor(core): remove async from app hooks, add InvokeMessage type (#1392)

* fix(cli): disable custom-protocol feature on dev command (#1393)

* Fix extremely slow dev builds caused by embedding + compressing assets at compile time (#1395)

* feat(bundler) code signing (#473)

Co-authored-by: Rajiv Shah <rajivshah1@icloud.com>
Co-authored-by: David Lemarier <david@lemarier.ca>

* feat(cli): run beforeDev and beforeBuild in a shell, closes #1295 (#1399)

* update to sharp 0.28.0 for cpu arm (m1) (#1404)

Co-authored-by: Lucas Nogueira <lucas@tauri.studio>

* feat(cli): propagate args passed after `dev --`, closes #1406 (#1407)

* refactor(api): use secure RNG, closes #1356 (#1398)

* chore(deps) Update Tauri API Definitions (#1411)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Rust crate rfd to 0.2.2 (#1410)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Tauri CLI (#1413)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Tauri Bundler (#1412)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* refactor(core): rewrite shell execute API, closes #1229 (#1408)

* chore(deps) Update dependency @rollup/plugin-commonjs to v18 (#1415)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* chore(deps) Update Tauri JS CLI (#1414)

Co-authored-by: Renovate Bot <bot@renovateapp.com>

* fix: asset resolution on debug mode

* fix(core): ignore query string on custom protocol asset resolver (#1420)

* wire up existing and adjust recipe configuration

* merge dev

* fix default app name

* clean up vanillajs and proper pass args

* use scaffe to copy the react templates

* fix(api): remove cjs, rename .mjs to .js

* chore: tauri.js dead code elim (#1422)

* remove templates, only used it CTA

* help command is empty, remove

* delete files that aren't imported / required

* set files array to ignore src and config files

* remove unused deps

* add arch notes for future ref

* change file

* allow specifying a binary

* resolve last bits to reach scaffe

* adjust vanilla js template dir path

Co-authored-by: Sanket Chaudhari <chaudharisanket2000@gmail.com>

* fix up cra scaffolding

* remove none and rely on vanillajs

* log shell commands

* remove no recipe question branch

* shift react template for better overwrite copying

* update deps

* simple readme

* implement dep manager

* pretty

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Noah Klayman <noahklayman@gmail.com>
Co-authored-by: Lucas Nogueira <lucas@tauri.studio>
Co-authored-by: Lucas Fernandes Nogueira <lucasfernandesnog@gmail.com>
Co-authored-by: chip <chip@chip.sh>
Co-authored-by: Gabe Cohen <gcc3.14@gmail.com>
Co-authored-by: Ngo Iok Ui (Wu Yu Wei) <wusyong9104@gmail.com>
Co-authored-by: Alve Larsson <larsalvelarsson@gmail.com>
Co-authored-by: Amr Bashir <48618675+amrbashir@users.noreply.github.com>
Co-authored-by: Kid <44045911+kidonng@users.noreply.github.com>
Co-authored-by: david <david@lemarier.ca>
Co-authored-by: nothingismagick <denjell@mailscript.com>
Co-authored-by: William <william@venner.io>
Co-authored-by: Rajiv Shah <rajivshah1@icloud.com>
Co-authored-by: Mehdi Rezaei <mehdiraized@gmail.com>
Co-authored-by: Sanket Chaudhari <chaudharisanket2000@gmail.com>
2021-04-11 04:22:07 -05:00

1171 lines
30 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Config",
"description": "The tauri.conf.json mapper.",
"type": "object",
"properties": {
"build": {
"description": "The build configuration.",
"default": {
"devPath": "",
"distDir": "../dist",
"withGlobalTauri": false
},
"allOf": [
{
"$ref": "#/definitions/BuildConfig"
}
]
},
"package": {
"description": "Package settings.",
"default": {},
"allOf": [
{
"$ref": "#/definitions/PackageConfig"
}
]
},
"plugins": {
"description": "The plugins config.",
"default": {},
"type": "object",
"additionalProperties": {
"type": "object",
"additionalProperties": true
}
},
"tauri": {
"description": "The Tauri configuration.",
"default": {
"allowlist": {
"all": false,
"dialog": {
"all": false,
"open": false,
"save": false
},
"fs": {
"all": false,
"copyFile": false,
"createDir": false,
"path": false,
"readBinaryFile": false,
"readDir": false,
"readTextFile": false,
"removeDir": false,
"removeFile": false,
"renameFile": false,
"writeBinaryFile": false,
"writeFile": false
},
"globalShortcut": {
"all": false
},
"http": {
"all": false,
"request": false
},
"notification": {
"all": false
},
"shell": {
"all": false,
"execute": false,
"open": false
},
"window": {
"all": false,
"create": false
}
},
"bundle": {
"active": false,
"deb": {
"useBootstrapper": false
},
"macOS": {
"useBootstrapper": false
},
"windows": {
"certificateThumbprint": null,
"digestAlgorithm": null,
"timestampUrl": null
}
},
"updater": {
"active": false
},
"windows": []
},
"allOf": [
{
"$ref": "#/definitions/TauriConfig"
}
]
}
},
"additionalProperties": false,
"definitions": {
"AllowlistConfig": {
"type": "object",
"properties": {
"all": {
"default": false,
"type": "boolean"
},
"dialog": {
"default": {
"all": false,
"open": false,
"save": false
},
"allOf": [
{
"$ref": "#/definitions/DialogAllowlistConfig"
}
]
},
"fs": {
"default": {
"all": false,
"copyFile": false,
"createDir": false,
"path": false,
"readBinaryFile": false,
"readDir": false,
"readTextFile": false,
"removeDir": false,
"removeFile": false,
"renameFile": false,
"writeBinaryFile": false,
"writeFile": false
},
"allOf": [
{
"$ref": "#/definitions/FsAllowlistConfig"
}
]
},
"globalShortcut": {
"default": {
"all": false
},
"allOf": [
{
"$ref": "#/definitions/GlobalShortcutAllowlistConfig"
}
]
},
"http": {
"default": {
"all": false,
"request": false
},
"allOf": [
{
"$ref": "#/definitions/HttpAllowlistConfig"
}
]
},
"notification": {
"default": {
"all": false
},
"allOf": [
{
"$ref": "#/definitions/NotificationAllowlistConfig"
}
]
},
"shell": {
"default": {
"all": false,
"execute": false,
"open": false
},
"allOf": [
{
"$ref": "#/definitions/ShellAllowlistConfig"
}
]
},
"window": {
"default": {
"all": false,
"create": false
},
"allOf": [
{
"$ref": "#/definitions/WindowAllowlistConfig"
}
]
}
},
"additionalProperties": false
},
"BuildConfig": {
"description": "The Build configuration object.",
"type": "object",
"properties": {
"beforeBuildCommand": {
"description": "a shell command to run before `tauri build` kicks in",
"type": [
"string",
"null"
]
},
"beforeDevCommand": {
"description": "a shell command to run before `tauri dev` kicks in",
"type": [
"string",
"null"
]
},
"devPath": {
"description": "the app's dev server URL, or the path to the directory containing an index.html file",
"default": "",
"type": "string"
},
"distDir": {
"description": "the path to the app's dist dir. This path must contain your index.html file.",
"default": "../dist",
"type": "string"
},
"withGlobalTauri": {
"description": "Whether we should inject the Tauri API on `window.__TAURI__` or not.",
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"BundleConfig": {
"type": "object",
"required": [
"active"
],
"properties": {
"active": {
"description": "Whether we should build your app with tauri-bundler or plain `cargo build`",
"type": "boolean"
},
"category": {
"type": [
"string",
"null"
]
},
"copyright": {
"type": [
"string",
"null"
]
},
"deb": {
"default": {
"useBootstrapper": false
},
"allOf": [
{
"$ref": "#/definitions/DebConfig"
}
]
},
"externalBin": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"icon": {
"description": "The app's icons",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"identifier": {
"description": "The app's identifier",
"type": [
"string",
"null"
]
},
"longDescription": {
"type": [
"string",
"null"
]
},
"macOS": {
"default": {
"useBootstrapper": false
},
"allOf": [
{
"$ref": "#/definitions/MacConfig"
}
]
},
"resources": {
"description": "App resources to bundle. Each resource is a path to a file or directory. Glob patterns are supported.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"shortDescription": {
"type": [
"string",
"null"
]
},
"targets": {
"description": "The bundle targets, currently supports [\"deb\", \"app\", \"msi\", \"appimage\", \"dmg\"] or \"all\"",
"anyOf": [
{
"$ref": "#/definitions/BundleTarget"
},
{
"type": "null"
}
]
},
"windows": {
"default": {
"certificateThumbprint": null,
"digestAlgorithm": null,
"timestampUrl": null
},
"allOf": [
{
"$ref": "#/definitions/WindowsConfig"
}
]
}
},
"additionalProperties": false
},
"BundleTarget": {
"anyOf": [
{
"type": "array",
"items": {
"type": "string"
}
},
{
"type": "string"
}
]
},
"CliArg": {
"description": "A CLI argument definition",
"type": "object",
"required": [
"name"
],
"properties": {
"conflictsWith": {
"description": "Sets a conflicting argument by name i.e. when using this argument, the following argument can't be present and vice versa.",
"type": [
"string",
"null"
]
},
"conflictsWithAll": {
"description": "The same as conflictsWith but allows specifying multiple two-way conflicts per argument.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"description": {
"description": "The argument description which will be shown on the help information. Typically, this is a short (one line) description of the arg.",
"type": [
"string",
"null"
]
},
"index": {
"description": "The positional argument index, starting at 1.\n\nThe index refers to position according to other positional argument. It does not define position in the argument list as a whole. When utilized with multiple=true, only the last positional argument may be defined as multiple (i.e. the one with the highest index).",
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"longDescription": {
"description": "The argument long description which will be shown on the help information. Typically this a more detailed (multi-line) message that describes the argument.",
"type": [
"string",
"null"
]
},
"maxValues": {
"description": "Specifies the maximum number of values are for this argument. For example, if you had a -f <file> argument where you wanted up to 3 'files', you would set .max_values(3), and this argument would be satisfied if the user provided, 1, 2, or 3 values.",
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"minValues": {
"description": "Specifies the minimum number of values for this argument. For example, if you had a -f <file> argument where you wanted at least 2 'files', you would set `minValues: 2`, and this argument would be satisfied if the user provided, 2 or more values.",
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"multiple": {
"description": "Specifies that the argument may appear more than once.\n\n- For flags, this results in the number of occurrences of the flag being recorded. For example -ddd or -d -d -d would count as three occurrences. - For options there is a distinct difference in multiple occurrences vs multiple values. For example, --opt val1 val2 is one occurrence, but two values. Whereas --opt val1 --opt val2 is two occurrences.",
"type": [
"boolean",
"null"
]
},
"multipleOccurrences": {
"description": "specifies that the argument may appear more than once.",
"type": [
"boolean",
"null"
]
},
"name": {
"description": "The unique argument name",
"type": "string"
},
"numberOfValues": {
"type": [
"integer",
"null"
],
"format": "uint64",
"minimum": 0.0
},
"possibleValues": {
"description": "Specifies a list of possible values for this argument. At runtime, the CLI verifies that only one of the specified values was used, or fails with an error message.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"requireEquals": {
"description": "Requires that options use the --option=val syntax i.e. an equals between the option and associated value.",
"type": [
"boolean",
"null"
]
},
"required": {
"description": "Sets whether or not the argument is required by default.\n\n- Required by default means it is required, when no other conflicting rules have been evaluated - Conflicting rules take precedence over being required.",
"type": [
"boolean",
"null"
]
},
"requiredIfEq": {
"description": "Allows specifying that an argument is required conditionally with the signature [arg, value] the requirement will only become valid if the `arg`'s value equals `${value}`.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"requiredUnlessPresent": {
"description": "Sets an arg that override this arg's required setting i.e. this arg will be required unless this other argument is present.",
"type": [
"string",
"null"
]
},
"requiredUnlessPresentAll": {
"description": "Sets args that override this arg's required setting i.e. this arg will be required unless all these other arguments are present.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"requiredUnlessPresentAny": {
"description": "Sets args that override this arg's required setting i.e. this arg will be required unless at least one of these other arguments are present.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"requires": {
"description": "Tets an argument by name that is required when this one is present i.e. when using this argument, the following argument must be present.",
"type": [
"string",
"null"
]
},
"requiresAll": {
"description": "Sts multiple arguments by names that are required when this one is present i.e. when using this argument, the following arguments must be present.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"requiresIf": {
"description": "Allows a conditional requirement with the signature [arg, value] the requirement will only become valid if `arg`'s value equals `${value}`.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"short": {
"description": "The short version of the argument, without the preceding -.\n\nNOTE: Any leading - characters will be stripped, and only the first non - character will be used as the short version.",
"type": [
"string",
"null"
],
"maxLength": 1,
"minLength": 1
},
"takesValue": {
"description": "Specifies that the argument takes a value at run time.\n\nNOTE: values for arguments may be specified in any of the following methods - Using a space such as -o value or --option value - Using an equals and no space such as -o=value or --option=value - Use a short and no space such as -ovalue",
"type": [
"boolean",
"null"
]
}
},
"additionalProperties": false
},
"CliConfig": {
"description": "describes a CLI configuration",
"type": "object",
"properties": {
"afterHelp": {
"description": "adds additional help information to be displayed in addition to auto-generated help this information is displayed after the auto-generated help information this is often used to describe how to use the arguments, or caveats to be noted.",
"type": [
"string",
"null"
]
},
"args": {
"description": "list of args for the command",
"type": [
"array",
"null"
],
"items": {
"$ref": "#/definitions/CliArg"
}
},
"beforeHelp": {
"description": "adds additional help information to be displayed in addition to auto-generated help this information is displayed before the auto-generated help information. this is often used for header information",
"type": [
"string",
"null"
]
},
"description": {
"description": "command description which will be shown on the help information",
"type": [
"string",
"null"
]
},
"longDescription": {
"description": "command long description which will be shown on the help information",
"type": [
"string",
"null"
]
},
"subcommands": {
"description": "list of subcommands of this command.\n\nsubcommands are effectively sub-apps, because they can contain their own arguments, subcommands, usage, etc. they also function just like the app command, in that they get their own auto generated help and usage",
"type": [
"object",
"null"
],
"additionalProperties": {
"$ref": "#/definitions/CliConfig"
}
}
},
"additionalProperties": false
},
"DebConfig": {
"type": "object",
"properties": {
"depends": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"useBootstrapper": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"DialogAllowlistConfig": {
"type": "object",
"properties": {
"all": {
"default": false,
"type": "boolean"
},
"open": {
"default": false,
"type": "boolean"
},
"save": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"FsAllowlistConfig": {
"type": "object",
"properties": {
"all": {
"default": false,
"type": "boolean"
},
"copyFile": {
"default": false,
"type": "boolean"
},
"createDir": {
"default": false,
"type": "boolean"
},
"path": {
"default": false,
"type": "boolean"
},
"readBinaryFile": {
"default": false,
"type": "boolean"
},
"readDir": {
"default": false,
"type": "boolean"
},
"readTextFile": {
"default": false,
"type": "boolean"
},
"removeDir": {
"default": false,
"type": "boolean"
},
"removeFile": {
"default": false,
"type": "boolean"
},
"renameFile": {
"default": false,
"type": "boolean"
},
"writeBinaryFile": {
"default": false,
"type": "boolean"
},
"writeFile": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"GlobalShortcutAllowlistConfig": {
"type": "object",
"properties": {
"all": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"HttpAllowlistConfig": {
"type": "object",
"properties": {
"all": {
"default": false,
"type": "boolean"
},
"request": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"MacConfig": {
"type": "object",
"properties": {
"entitlements": {
"type": [
"string",
"null"
]
},
"exceptionDomain": {
"type": [
"string",
"null"
]
},
"frameworks": {
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"license": {
"type": [
"string",
"null"
]
},
"minimumSystemVersion": {
"type": [
"string",
"null"
]
},
"signingIdentity": {
"type": [
"string",
"null"
]
},
"useBootstrapper": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"NotificationAllowlistConfig": {
"type": "object",
"properties": {
"all": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"PackageConfig": {
"type": "object",
"properties": {
"productName": {
"description": "App name. Automatically converted to kebab-case on Linux.",
"type": [
"string",
"null"
]
},
"version": {
"description": "App version.",
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"SecurityConfig": {
"type": "object",
"properties": {
"csp": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"ShellAllowlistConfig": {
"type": "object",
"properties": {
"all": {
"default": false,
"type": "boolean"
},
"execute": {
"default": false,
"type": "boolean"
},
"open": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"TauriConfig": {
"description": "The Tauri configuration object.",
"type": "object",
"properties": {
"allowlist": {
"default": {
"all": false,
"dialog": {
"all": false,
"open": false,
"save": false
},
"fs": {
"all": false,
"copyFile": false,
"createDir": false,
"path": false,
"readBinaryFile": false,
"readDir": false,
"readTextFile": false,
"removeDir": false,
"removeFile": false,
"renameFile": false,
"writeBinaryFile": false,
"writeFile": false
},
"globalShortcut": {
"all": false
},
"http": {
"all": false,
"request": false
},
"notification": {
"all": false
},
"shell": {
"all": false,
"execute": false,
"open": false
},
"window": {
"all": false,
"create": false
}
},
"allOf": [
{
"$ref": "#/definitions/AllowlistConfig"
}
]
},
"bundle": {
"description": "The bundler configuration.",
"default": {
"active": false,
"deb": {
"useBootstrapper": false
},
"macOS": {
"useBootstrapper": false
},
"windows": {
"certificateThumbprint": null,
"digestAlgorithm": null,
"timestampUrl": null
}
},
"allOf": [
{
"$ref": "#/definitions/BundleConfig"
}
]
},
"cli": {
"description": "The CLI configuration.",
"anyOf": [
{
"$ref": "#/definitions/CliConfig"
},
{
"type": "null"
}
]
},
"security": {
"anyOf": [
{
"$ref": "#/definitions/SecurityConfig"
},
{
"type": "null"
}
]
},
"updater": {
"description": "The updater configuration.",
"default": {
"active": false,
"dialog": true
},
"allOf": [
{
"$ref": "#/definitions/UpdaterConfig"
}
]
},
"windows": {
"description": "The windows configuration.",
"default": [],
"type": "array",
"items": {
"$ref": "#/definitions/WindowConfig"
}
}
},
"additionalProperties": false
},
"UpdaterConfig": {
"type": "object",
"required": [
"active"
],
"properties": {
"active": {
"description": "Whether the updater is active or not.",
"type": "boolean"
},
"dialog": {
"description": "Display built-in dialog or use event system if disabled.",
"default": true,
"type": [
"boolean",
"null"
]
},
"endpoints": {
"description": "The updater endpoints.",
"type": [
"array",
"null"
],
"items": {
"type": "string"
}
},
"pubkey": {
"description": "Optional pubkey.",
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
},
"WindowAllowlistConfig": {
"type": "object",
"properties": {
"all": {
"default": false,
"type": "boolean"
},
"create": {
"default": false,
"type": "boolean"
}
},
"additionalProperties": false
},
"WindowConfig": {
"description": "The window configuration object.",
"type": "object",
"properties": {
"alwaysOnTop": {
"description": "Whether the window should always be on top of other windows.",
"default": false,
"type": "boolean"
},
"decorations": {
"description": "Whether the window should have borders and bars.",
"default": true,
"type": "boolean"
},
"fullscreen": {
"description": "Whether the window starts as fullscreen or not.",
"default": false,
"type": "boolean"
},
"height": {
"description": "The window height.",
"type": [
"number",
"null"
],
"format": "double"
},
"label": {
"description": "The window identifier.",
"type": [
"string",
"null"
]
},
"maxHeight": {
"description": "The max window height.",
"type": [
"number",
"null"
],
"format": "double"
},
"maxWidth": {
"description": "The max window width.",
"type": [
"number",
"null"
],
"format": "double"
},
"maximized": {
"description": "Whether the window is maximized or not.",
"default": false,
"type": "boolean"
},
"minHeight": {
"description": "The min window height.",
"type": [
"number",
"null"
],
"format": "double"
},
"minWidth": {
"description": "The min window width.",
"type": [
"number",
"null"
],
"format": "double"
},
"resizable": {
"description": "Whether the window is resizable or not.",
"default": false,
"type": "boolean"
},
"title": {
"description": "The window title.",
"type": [
"string",
"null"
]
},
"transparent": {
"description": "Whether the window is transparent or not.",
"default": false,
"type": "boolean"
},
"url": {
"description": "The window webview URL.",
"type": [
"string",
"null"
]
},
"visible": {
"description": "Whether the window is visible or not.",
"default": true,
"type": "boolean"
},
"width": {
"description": "The window width.",
"type": [
"number",
"null"
],
"format": "double"
},
"x": {
"description": "The horizontal position of the window's top left corner",
"type": [
"number",
"null"
],
"format": "double"
},
"y": {
"description": "The vertical position of the window's top left corner",
"type": [
"number",
"null"
],
"format": "double"
}
},
"additionalProperties": false
},
"WindowsConfig": {
"type": "object",
"properties": {
"certificateThumbprint": {
"type": [
"string",
"null"
]
},
"digestAlgorithm": {
"type": [
"string",
"null"
]
},
"timestampUrl": {
"type": [
"string",
"null"
]
}
},
"additionalProperties": false
}
}
}