From 9767d5a9e20dcdb62db65ee7c4cad6453248e56d Mon Sep 17 00:00:00 2001 From: The Happy Anarchist Date: Wed, 2 Sep 2020 19:53:10 -1000 Subject: [PATCH] Initial merge --- .gitlab-ci.yml | 15 - README.md | 23 +- gulpfile.js | 492 -- package-lock.json | 5699 ----------------- package.json | 31 - src/LICENSE.txt | 4 +- src/acks.css | 1092 ++++ src/acks.js | 70 +- src/lang/en.json | 506 +- src/lang/es.json | 432 +- src/lang/fr.json | 500 +- src/lang/pt-BR.json | 494 +- src/module/actor/actor-sheet.js | 40 +- src/module/actor/character-sheet.js | 34 +- src/module/actor/entity.js | 143 +- src/module/actor/monster-sheet.js | 28 +- src/module/chat.js | 4 +- src/module/combat.js | 32 +- src/module/config.js | 155 +- src/module/dialog/character-creation.js | 30 +- src/module/dialog/character-modifiers.js | 8 +- src/module/dialog/entity-tweaks.js | 10 +- src/module/dialog/party-sheet.js | 22 +- src/module/dice.js | 61 +- src/module/helpers.js | 4 +- src/module/item/entity.js | 38 +- src/module/item/item-sheet.js | 8 +- src/module/macros.js | 6 +- src/module/party.js | 12 +- src/module/preloadTemplates.js | 20 +- src/module/settings.js | 56 +- src/module/treasure.js | 12 +- src/scss/actor-base.scss | 2 +- src/scss/apps.scss | 18 +- src/scss/character.scss | 8 +- src/scss/core.scss | 2 +- src/scss/item.scss | 2 +- src/scss/monster.scss | 2 +- src/scss/variables.scss | 2 +- src/system.json | 20 +- src/templates/actors/character-sheet.html | 22 +- src/templates/actors/dialogs/lang-create.html | 4 +- .../actors/dialogs/modifiers-dialog.html | 36 +- .../actors/dialogs/monster-saves.html | 4 +- .../actors/dialogs/tweaks-dialog.html | 22 +- src/templates/actors/monster-sheet.html | 14 +- .../partials/character-abilities-tab.html | 18 +- .../partials/character-attributes-tab.html | 126 +- .../actors/partials/character-header.html | 14 +- .../partials/character-inventory-tab.html | 45 +- .../actors/partials/character-notes-tab.html | 10 +- .../actors/partials/character-spells-tab.html | 22 +- .../partials/monster-attributes-tab.html | 64 +- .../actors/partials/monster-header.html | 22 +- src/templates/apps/party-select.html | 2 +- src/templates/apps/party-sheet.html | 26 +- src/templates/chat/item-card.html | 12 +- src/templates/chat/license.html | 26 +- src/templates/chat/roll-attack.html | 10 +- src/templates/chat/roll-creation.html | 4 +- src/templates/chat/roll-dialog.html | 10 +- src/templates/chat/roll-result.html | 10 +- src/templates/chat/roll-treasure.html | 4 +- src/templates/items/ability-sheet.html | 12 +- src/templates/items/armor-sheet.html | 10 +- src/templates/items/item-sheet.html | 8 +- src/templates/items/spell-sheet.html | 12 +- src/templates/items/weapon-sheet.html | 24 +- 68 files changed, 2793 insertions(+), 7937 deletions(-) delete mode 100644 .gitlab-ci.yml delete mode 100644 gulpfile.js delete mode 100644 package-lock.json delete mode 100644 package.json create mode 100644 src/acks.css diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index d0042fb..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,15 +0,0 @@ -image: ruby:2.7 - -workflow: - rules: - - if: "$CI_COMMIT_BRANCH" - -pages: - stage: deploy - script: - - mv .public public - artifacts: - paths: - - public - rules: - - if: '$CI_COMMIT_BRANCH == "development"' diff --git a/README.md b/README.md index 3131a0f..0d2cbcc 100644 --- a/README.md +++ b/README.md @@ -1,22 +1,13 @@ -# Old School Essentials System for Foundry VTT (Unofficial) -All the features you need to play Old School Essentials or B/X Games in Foundry VTT. - -## Installation -You can find this Foundry VTT game system within Foundry VTT in the system browser. You could also download the latest archive in the package folder, or use the manifest link below.\ -https://gitlab.com/mesfoliesludiques/foundryvtt-ose/-/raw/master/src/system.json +# ACKS System for Foundry VTT (Unofficial) +All the features you need to play ACKS in Foundry VTT. ## License -This Foundry VTT system requires Old-School Essentials Core Rules that you can find [here](https://necroticgnome.com). - -This third party product is not affiliated with or approved by Necrotic Gnome. \ -Old-School Essentials is a trademark of Necrotic Gnome.\ -The trademark and Old-School Essentials logo are used with permission of Necrotic Gnome, under license. +This Foundry VTT system requires ACKS Core Rules that you can find at http://autarch.co/buy-now. +This third party product is not affiliated with or approved by Autarch. ## Artwork -Weapon quality icons, and the Treasure chest are from [Rexxard](https://assetstore.unity.com/packages/2d/gui/icons/flat-skills-icons-82713). +Weapon quality icons, and the Treasure chest are from Rexxard. Other graphics are from the Old School Essentials System for Foundry VTT (Unofficial) by U~man which can be found at https://gitlab.com/mesfoliesludiques/foundryvtt-ose ## Contributions -Any feedback is deeply appreciated. Please issue [tickets](https://gitlab.com/mesfoliesludiques/foundryvtt-ose/-/boards).\ -Feel free to grab a TO DO issue from the gitlab board. You can then do a merge request on the `development` branch. - -[![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/H2H21WMKA) \ No newline at end of file +If you like this work, please consider buying U~man a coffee at ko-fi +[![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/H2H21WMKA) diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100644 index 0023a64..0000000 --- a/gulpfile.js +++ /dev/null @@ -1,492 +0,0 @@ -const gulp = require("gulp"); -const fs = require("fs-extra"); -const path = require("path"); -const chalk = require("chalk"); -const archiver = require("archiver"); -const stringify = require("json-stringify-pretty-compact"); -const typescript = require("typescript"); - -const ts = require("gulp-typescript"); -const less = require("gulp-less"); -const sass = require("gulp-sass"); -const git = require("gulp-git"); - -const argv = require("yargs").argv; - -sass.compiler = require("sass"); - -function getConfig() { - const configPath = path.resolve(process.cwd(), "foundryconfig.json"); - let config; - - if (fs.existsSync(configPath)) { - config = fs.readJSONSync(configPath); - return config; - } else { - return; - } -} - -function getManifest() { - const json = {}; - - if (fs.existsSync("src")) { - json.root = "src"; - } else { - json.root = "dist"; - } - - const modulePath = path.join(json.root, "module.json"); - const systemPath = path.join(json.root, "system.json"); - - if (fs.existsSync(modulePath)) { - json.file = fs.readJSONSync(modulePath); - json.name = "module.json"; - } else if (fs.existsSync(systemPath)) { - json.file = fs.readJSONSync(systemPath); - json.name = "system.json"; - } else { - return; - } - - return json; -} - -/** - * TypeScript transformers - * @returns {typescript.TransformerFactory} - */ -function createTransformer() { - /** - * @param {typescript.Node} node - */ - function shouldMutateModuleSpecifier(node) { - if ( - !typescript.isImportDeclaration(node) && - !typescript.isExportDeclaration(node) - ) - return false; - if (node.moduleSpecifier === undefined) return false; - if (!typescript.isStringLiteral(node.moduleSpecifier)) return false; - if ( - !node.moduleSpecifier.text.startsWith("./") && - !node.moduleSpecifier.text.startsWith("../") - ) - return false; - if (path.extname(node.moduleSpecifier.text) !== "") return false; - return true; - } - - /** - * Transforms import/export declarations to append `.js` extension - * @param {typescript.TransformationContext} context - */ - function importTransformer(context) { - return node => { - /** - * @param {typescript.Node} node - */ - function visitor(node) { - if (shouldMutateModuleSpecifier(node)) { - if (typescript.isImportDeclaration(node)) { - const newModuleSpecifier = typescript.createLiteral( - `${node.moduleSpecifier.text}.js` - ); - return typescript.updateImportDeclaration( - node, - node.decorators, - node.modifiers, - node.importClause, - newModuleSpecifier - ); - } else if (typescript.isExportDeclaration(node)) { - const newModuleSpecifier = typescript.createLiteral( - `${node.moduleSpecifier.text}.js` - ); - return typescript.updateExportDeclaration( - node, - node.decorators, - node.modifiers, - node.exportClause, - newModuleSpecifier - ); - } - } - return typescript.visitEachChild(node, visitor, context); - } - - return typescript.visitNode(node, visitor); - }; - } - - return importTransformer; -} - -const tsConfig = ts.createProject("tsconfig.json", { - getCustomTransformers: prgram => ({ - after: [createTransformer()] - }) -}); - -/********************/ -/* BUILD */ -/********************/ - -/** - * Build TypeScript - */ -function buildTS() { - return gulp - .src("src/**/*.ts") - .pipe(tsConfig()) - .pipe(gulp.dest("dist")); -} - -/** - * Build Less - */ -function buildLess() { - return gulp - .src("src/*.less") - .pipe(less()) - .pipe(gulp.dest("dist")); -} - -/** - * Build SASS - */ -function buildSASS() { - return gulp - .src("src/*.scss") - .pipe(sass().on("error", sass.logError)) - .pipe(gulp.dest("dist")); -} - -/** - * Copy static files - */ -async function copyFiles() { - const statics = [ - "lang", - "fonts", - "assets", - "templates", - "module", - "packs", - "ose.js", - "module.json", - "system.json", - "template.json" - ]; - try { - for (const file of statics) { - if (fs.existsSync(path.join("src", file))) { - await fs.copy(path.join("src", file), path.join("dist", file)); - } - } - return Promise.resolve(); - } catch (err) { - Promise.reject(err); - } -} - -/** - * Watch for changes for each build step - */ -function buildWatch() { - gulp.watch("src/**/*.ts", { ignoreInitial: false }, buildTS); - gulp.watch("src/**/*.less", { ignoreInitial: false }, buildLess); - gulp.watch("src/**/*.scss", { ignoreInitial: false }, buildSASS); - gulp.watch( - ["src/fonts", "src/templates", "src/*.json", "src/**/*.js"], - { ignoreInitial: false }, - copyFiles - ); -} - -/********************/ -/* CLEAN */ -/********************/ - -/** - * Remove built files from `dist` folder - * while ignoring source files - */ -async function clean() { - const name = path.basename(path.resolve(".")); - const files = []; - - // If the project uses TypeScript - if (fs.existsSync(path.join("src", `${name}.ts`))) { - files.push( - "lang", - "templates", - "assets", - "packs", - "module", - `${name}.js`, - "module.json", - "system.json", - "template.json" - ); - } - - // If the project uses Less or SASS - if ( - fs.existsSync(path.join("src", `${name}.less`)) || - fs.existsSync(path.join("src", `${name}.scss`)) - ) { - files.push("fonts", `${name}.css`); - } - - console.log(" ", chalk.yellow("Files to clean:")); - console.log(" ", chalk.blueBright(files.join("\n "))); - - // Attempt to remove the files - try { - for (const filePath of files) { - await fs.remove(path.join("dist", filePath)); - } - return Promise.resolve(); - } catch (err) { - Promise.reject(err); - } -} - -/********************/ -/* LINK */ -/********************/ - -/** - * Link build to User Data folder - */ -async function linkUserData() { - const name = path.basename(path.resolve(".")); - const config = fs.readJSONSync("foundryconfig.json"); - - let destDir; - try { - if ( - fs.existsSync(path.resolve(".", "dist", "module.json")) || - fs.existsSync(path.resolve(".", "src", "module.json")) - ) { - destDir = "modules"; - } else if ( - fs.existsSync(path.resolve(".", "dist", "system.json")) || - fs.existsSync(path.resolve(".", "src", "system.json")) - ) { - destDir = "systems"; - } else { - throw Error( - `Could not find ${chalk.blueBright( - "module.json" - )} or ${chalk.blueBright("system.json")}` - ); - } - - let linkDir; - if (config.dataPath) { - if (!fs.existsSync(path.join(config.dataPath, "Data"))) - throw Error("User Data path invalid, no Data directory found"); - - linkDir = path.join(config.dataPath, "Data", destDir, name); - } else { - throw Error("No User Data path defined in foundryconfig.json"); - } - - if (argv.clean || argv.c) { - console.log( - chalk.yellow(`Removing build in ${chalk.blueBright(linkDir)}`) - ); - - await fs.remove(linkDir); - } else if (!fs.existsSync(linkDir)) { - console.log(chalk.green(`Copying build to ${chalk.blueBright(linkDir)}`)); - await fs.symlink(path.resolve("./dist"), linkDir); - } - return Promise.resolve(); - } catch (err) { - Promise.reject(err); - } -} - -/*********************/ -/* PACKAGE */ -/*********************/ - -/** - * Package build - */ -async function packageBuild() { - const manifest = getManifest(); - - try { - // Remove the package dir without doing anything else - if (argv.clean || argv.c) { - console.log(chalk.yellow("Removing all packaged files")); - await fs.remove("package"); - return; - } - - // Ensure there is a directory to hold all the packaged versions - await fs.ensureDir("package"); - - // Initialize the zip file - const zipName = `${manifest.file.name}-v${manifest.file.version}.zip`; - const zipFile = fs.createWriteStream(path.join("package", zipName)); - const zip = archiver("zip", { zlib: { level: 9 } }); - - zipFile.on("close", () => { - console.log(chalk.green(zip.pointer() + " total bytes")); - console.log(chalk.green(`Zip file ${zipName} has been written`)); - return Promise.resolve(); - }); - - zip.on("error", err => { - throw err; - }); - - zip.pipe(zipFile); - - // Add the directory with the final code - zip.directory("dist/", manifest.file.name); - - zip.finalize(); - } catch (err) { - Promise.reject(err); - } -} - -/*********************/ -/* PACKAGE */ -/*********************/ - -/** - * Update version and URLs in the manifest JSON - */ -function updateManifest(cb) { - const packageJson = fs.readJSONSync("package.json"); - const config = getConfig(), - manifest = getManifest(), - rawURL = config.rawURL, - repoURL = config.repository, - manifestRoot = manifest.root; - - if (!config) cb(Error(chalk.red("foundryconfig.json not found"))); - if (!manifest) cb(Error(chalk.red("Manifest JSON not found"))); - if (!rawURL || !repoURL) - cb( - Error(chalk.red("Repository URLs not configured in foundryconfig.json")) - ); - - try { - const version = argv.update || argv.u; - - /* Update version */ - - const versionMatch = /^(\d{1,}).(\d{1,}).(\d{1,})$/; - const currentVersion = manifest.file.version; - let targetVersion = ""; - - if (!version) { - cb(Error("Missing version number")); - } - - if (versionMatch.test(version)) { - targetVersion = version; - } else { - targetVersion = currentVersion.replace( - versionMatch, - (substring, major, minor, patch) => { - if (version === "major") { - return `${Number(major) + 1}.0.0`; - } else if (version === "minor") { - return `${major}.${Number(minor) + 1}.0`; - } else if (version === "patch") { - return `${major}.${minor}.${Number(minor) + 1}`; - } else { - return ""; - } - } - ); - } - - if (targetVersion === "") { - return cb(Error(chalk.red("Error: Incorrect version arguments."))); - } - - if (targetVersion === currentVersion) { - return cb( - Error( - chalk.red("Error: Target version is identical to current version.") - ) - ); - } - console.log(`Updating version number to '${targetVersion}'`); - - packageJson.version = targetVersion; - manifest.file.version = targetVersion; - - /* Update URLs */ - - const result = `${rawURL}/v${manifest.file.version}/package/${manifest.file.name}-v${manifest.file.version}.zip`; - - manifest.file.url = repoURL; - manifest.file.manifest = `${rawURL}/master/${manifestRoot}/${manifest.name}`; - manifest.file.download = result; - - const prettyProjectJson = stringify(manifest.file, { maxLength: 35 }); - - fs.writeJSONSync("package.json", packageJson, { spaces: 2 }); - fs.writeFileSync( - path.join(manifest.root, manifest.name), - prettyProjectJson, - "utf8" - ); - - return cb(); - } catch (err) { - cb(err); - } -} - -function gitAdd() { - return gulp.src("package").pipe(git.add({ args: "--no-all" })); -} - -function gitCommit() { - return gulp.src("./*").pipe( - git.commit(`v${getManifest().file.version}`, { - args: "-a", - disableAppendPaths: true - }) - ); -} - -function gitTag() { - const manifest = getManifest(); - return git.tag( - `v${manifest.file.version}`, - `Updated to ${manifest.file.version}`, - err => { - if (err) throw err; - } - ); -} - -const execGit = gulp.series(gitAdd, gitCommit, gitTag); - -const execBuild = gulp.parallel(buildTS, buildLess, buildSASS, copyFiles); - -exports.build = gulp.series(clean, execBuild); -exports.watch = buildWatch; -exports.clean = clean; -exports.link = linkUserData; -exports.package = packageBuild; -exports.publish = gulp.series( - clean, - updateManifest, - execBuild, - packageBuild, - execGit -); diff --git a/package-lock.json b/package-lock.json deleted file mode 100644 index 8664db9..0000000 --- a/package-lock.json +++ /dev/null @@ -1,5699 +0,0 @@ -{ - "name": "ose", - "version": "0.0.2", - "lockfileVersion": 1, - "requires": true, - "dependencies": { - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true - }, - "@types/jquery": { - "version": "3.3.34", - "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.3.34.tgz", - "integrity": "sha512-lW9vsVL53Xu/Nj4gi2hNmHGc4u3KKghjqTkAlO0kF5GIOPxbqqnQpgqJBzmn3yXLrPqHb6cmNJ6URnS23Vtvbg==", - "dev": true, - "requires": { - "@types/sizzle": "*" - } - }, - "@types/node": { - "version": "13.9.8", - "resolved": "https://registry.npmjs.org/@types/node/-/node-13.9.8.tgz", - "integrity": "sha512-1WgO8hsyHynlx7nhP1kr0OFzsgKz5XDQL+Lfc3b1Q3qIln/n8cKD4m09NJ0+P1Rq7Zgnc7N0+SsMnoD1rEb0kA==", - "dev": true - }, - "@types/sizzle": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.2.tgz", - "integrity": "sha512-7EJYyKTL7tFR8+gDbB6Wwz/arpGa0Mywk1TJbNzKzHtzbwVmY4HR9WqS5VV7dsBUKQmPNr192jHr/VpBluj/hg==", - "dev": true - }, - "@types/socket.io": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@types/socket.io/-/socket.io-2.1.4.tgz", - "integrity": "sha512-cI98INy7tYnweTsUlp8ocveVdAxENUThO0JsLSCs51cjOP2yV5Mqo5QszMDPckyRRA+PO6+wBgKvGvHUCc23TQ==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "accord": { - "version": "0.29.0", - "resolved": "https://registry.npmjs.org/accord/-/accord-0.29.0.tgz", - "integrity": "sha512-3OOR92FTc2p5/EcOzPcXp+Cbo+3C15nV9RXHlOUBCBpHhcB+0frbSNR9ehED/o7sTcyGVtqGJpguToEdlXhD0w==", - "dev": true, - "requires": { - "convert-source-map": "^1.5.0", - "glob": "^7.0.5", - "indx": "^0.2.3", - "lodash.clone": "^4.3.2", - "lodash.defaults": "^4.0.1", - "lodash.flatten": "^4.2.0", - "lodash.merge": "^4.4.0", - "lodash.partialright": "^4.1.4", - "lodash.pick": "^4.2.1", - "lodash.uniq": "^4.3.0", - "resolve": "^1.5.0", - "semver": "^5.3.0", - "uglify-js": "^2.8.22", - "when": "^3.7.8" - } - }, - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "align-text": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, - "requires": { - "kind-of": "^3.0.2", - "longest": "^1.0.1", - "repeat-string": "^1.5.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true - }, - "ansi-colors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", - "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", - "dev": true, - "requires": { - "ansi-wrap": "^0.1.0" - } - }, - "ansi-cyan": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", - "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-gray": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", - "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-red": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", - "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", - "dev": true, - "requires": { - "ansi-wrap": "0.1.0" - } - }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "ansi-wrap": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", - "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", - "dev": true - }, - "any-shell-escape": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/any-shell-escape/-/any-shell-escape-0.1.1.tgz", - "integrity": "sha1-1Vq5ciRMcaml4asIefML8RCAaVk=", - "dev": true - }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "append-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz", - "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=", - "dev": true, - "requires": { - "buffer-equal": "^1.0.0" - } - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, - "archiver": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-3.1.1.tgz", - "integrity": "sha512-5Hxxcig7gw5Jod/8Gq0OneVgLYET+oNHcxgWItq4TbhOzRLKNAFUb9edAftiMKXvXfCB0vbGrJdZDNq0dWMsxg==", - "dev": true, - "requires": { - "archiver-utils": "^2.1.0", - "async": "^2.6.3", - "buffer-crc32": "^0.2.1", - "glob": "^7.1.4", - "readable-stream": "^3.4.0", - "tar-stream": "^2.1.0", - "zip-stream": "^2.1.2" - } - }, - "archiver-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.1.0.tgz", - "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==", - "dev": true, - "requires": { - "glob": "^7.1.4", - "graceful-fs": "^4.2.0", - "lazystream": "^1.0.0", - "lodash.defaults": "^4.2.0", - "lodash.difference": "^4.5.0", - "lodash.flatten": "^4.4.0", - "lodash.isplainobject": "^4.0.6", - "lodash.union": "^4.6.0", - "normalize-path": "^3.0.0", - "readable-stream": "^2.0.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "archy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", - "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", - "dev": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "arr-filter": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz", - "integrity": "sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4=", - "dev": true, - "requires": { - "make-iterator": "^1.0.0" - } - }, - "arr-flatten": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true - }, - "arr-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz", - "integrity": "sha1-Onc0X/wc814qkYJWAfnljy4kysQ=", - "dev": true, - "requires": { - "make-iterator": "^1.0.0" - } - }, - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, - "array-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", - "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", - "dev": true - }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-initial": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz", - "integrity": "sha1-L6dLJnOTccOUe9enrcc74zSz15U=", - "dev": true, - "requires": { - "array-slice": "^1.0.0", - "is-number": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "array-last": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz", - "integrity": "sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==", - "dev": true, - "requires": { - "is-number": "^4.0.0" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - } - } - }, - "array-slice": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", - "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", - "dev": true - }, - "array-sort": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz", - "integrity": "sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==", - "dev": true, - "requires": { - "default-compare": "^1.0.0", - "get-value": "^2.0.6", - "kind-of": "^5.0.2" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "asap": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true, - "optional": true - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", - "dev": true, - "requires": { - "safer-buffer": "~2.1.0" - } - }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true - }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true - }, - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", - "dev": true, - "requires": { - "lodash": "^4.17.14" - } - }, - "async-done": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz", - "integrity": "sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.2", - "process-nextick-args": "^2.0.0", - "stream-exhaust": "^1.0.1" - } - }, - "async-each": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", - "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true - }, - "async-foreach": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", - "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", - "dev": true - }, - "async-settle": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz", - "integrity": "sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs=", - "dev": true, - "requires": { - "async-done": "^1.2.2" - } - }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true - }, - "atob": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", - "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", - "dev": true - }, - "aws-sign2": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true - }, - "aws4": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", - "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==", - "dev": true - }, - "bach": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", - "integrity": "sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA=", - "dev": true, - "requires": { - "arr-filter": "^1.1.1", - "arr-flatten": "^1.0.1", - "arr-map": "^2.0.0", - "array-each": "^1.0.0", - "array-initial": "^1.0.0", - "array-last": "^1.1.1", - "async-done": "^1.2.2", - "async-settle": "^1.0.0", - "now-and-later": "^2.0.0" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true - }, - "base": { - "version": "0.11.2", - "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", - "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true - }, - "bcrypt-pbkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", - "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, - "requires": { - "tweetnacl": "^0.14.3" - } - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dev": true, - "optional": true, - "requires": { - "file-uri-to-path": "1.0.0" - } - }, - "bl": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.2.tgz", - "integrity": "sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ==", - "dev": true, - "requires": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "buffer": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.5.0.tgz", - "integrity": "sha512-9FTEDjLjwoAkEwyMGDjYJQN2gfRgOKBKRfiglhvibGbpeeU/pQn1bJxQqm32OD/AIeEuHxU9roxXxg34Byp/Ww==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true - }, - "buffer-equal": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", - "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", - "dev": true - }, - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "cache-base": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", - "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - } - } - }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true - }, - "center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "requires": { - "align-text": "^0.1.3", - "lazy-cache": "^1.0.3" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "class-utils": { - "version": "0.3.6", - "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", - "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", - "dev": true - }, - "clone-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", - "dev": true - }, - "clone-stats": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", - "dev": true - }, - "cloneable-readable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", - "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "process-nextick-args": "^2.0.0", - "readable-stream": "^2.3.5" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "code-point-at": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true - }, - "collection-map": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz", - "integrity": "sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw=", - "dev": true, - "requires": { - "arr-map": "^2.0.2", - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - } - }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true - }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "compress-commons": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-2.1.1.tgz", - "integrity": "sha512-eVw6n7CnEMFzc3duyFVrQEuY1BlHR3rYsSztyG32ibGMW722i3C6IizEGMFmfMU+A+fALvBIwxN3czffTcdA+Q==", - "dev": true, - "requires": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^3.0.1", - "normalize-path": "^3.0.0", - "readable-stream": "^2.3.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true - }, - "concat-stream": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", - "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^2.2.2", - "typedarray": "^0.0.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true - }, - "copy-props": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", - "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", - "dev": true, - "requires": { - "each-props": "^1.3.0", - "is-plain-object": "^2.0.1" - } - }, - "core-util-is": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", - "dev": true - }, - "crc": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/crc/-/crc-3.8.0.tgz", - "integrity": "sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==", - "dev": true, - "requires": { - "buffer": "^5.1.0" - } - }, - "crc32-stream": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-3.0.1.tgz", - "integrity": "sha512-mctvpXlbzsvK+6z8kJwSJ5crm7yBwrQMTybJzMw1O4lLGJqjlDCXY2Zw7KheiA6XBEcBmfLx1D88mjRGVJtY9w==", - "dev": true, - "requires": { - "crc": "^3.4.4", - "readable-stream": "^3.4.0" - } - }, - "cross-spawn": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", - "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, - "d": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", - "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", - "dev": true, - "requires": { - "es5-ext": "^0.10.50", - "type": "^1.0.1" - } - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "decamelize": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true - }, - "decode-uri-component": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", - "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", - "dev": true - }, - "default-compare": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", - "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", - "dev": true, - "requires": { - "kind-of": "^5.0.2" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "default-resolution": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz", - "integrity": "sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ=", - "dev": true - }, - "define-properties": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", - "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, - "requires": { - "object-keys": "^1.0.12" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "dependencies": { - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true - }, - "detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", - "dev": true - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "each-props": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz", - "integrity": "sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.1", - "object.defaults": "^1.1.0" - } - }, - "ecc-jsbn": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dev": true, - "requires": { - "once": "^1.4.0" - } - }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, - "optional": true, - "requires": { - "prr": "~1.0.1" - } - }, - "error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "requires": { - "is-arrayish": "^0.2.1" - } - }, - "es5-ext": { - "version": "0.10.53", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", - "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", - "dev": true, - "requires": { - "es6-iterator": "~2.0.3", - "es6-symbol": "~3.1.3", - "next-tick": "~1.0.0" - } - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.35", - "es6-symbol": "^3.1.1" - } - }, - "es6-symbol": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", - "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", - "dev": true, - "requires": { - "d": "^1.0.1", - "ext": "^1.1.2" - } - }, - "es6-weak-map": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", - "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", - "dev": true, - "requires": { - "d": "1", - "es5-ext": "^0.10.46", - "es6-iterator": "^2.0.3", - "es6-symbol": "^3.1.1" - } - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "ext": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", - "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", - "dev": true, - "requires": { - "type": "^2.0.0" - }, - "dependencies": { - "type": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", - "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==", - "dev": true - } - } - }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "extsprintf": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true - }, - "fancy-log": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", - "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", - "dev": true, - "requires": { - "ansi-gray": "^0.1.1", - "color-support": "^1.1.3", - "parse-node-version": "^1.0.0", - "time-stamp": "^1.0.0" - } - }, - "fast-deep-equal": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", - "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", - "dev": true - }, - "fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true, - "optional": true - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, - "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "findup-sync": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", - "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - } - }, - "fined": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", - "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "is-plain-object": "^2.0.3", - "object.defaults": "^1.1.0", - "object.pick": "^1.2.0", - "parse-filepath": "^1.0.1" - } - }, - "first-chunk-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-2.0.0.tgz", - "integrity": "sha1-G97NuOCDwGZLkZRVgVd6Q6nzHXA=", - "dev": true, - "requires": { - "readable-stream": "^2.0.2" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "flagged-respawn": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", - "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", - "dev": true - }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true - }, - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true - }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" - } - }, - "foundry-pc-types": { - "version": "gitlab:foundry-projects/foundry-pc/foundry-pc-types#28c70ad5348b51f48a86540ab7fba48153ff4725", - "from": "gitlab:foundry-projects/foundry-pc/foundry-pc-types", - "dev": true, - "requires": { - "@types/jquery": "^3.3.31", - "@types/socket.io": "^2.1.4" - } - }, - "fragment-cache": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", - "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", - "dev": true - }, - "fs-extra": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", - "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", - "dev": true, - "requires": { - "graceful-fs": "^4.2.0", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs-mkdirp-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", - "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "through2": "^2.0.3" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true - }, - "fsevents": { - "version": "1.2.12", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz", - "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1", - "node-pre-gyp": "*" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.4", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true, - "optional": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "3.2.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.6.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "bundled": true, - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.9.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.9.0" - } - }, - "mkdirp": { - "version": "0.5.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "ms": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.3.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^3.2.6", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.14.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4.4.2" - } - }, - "nopt": { - "version": "4.0.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npm-normalize-package-bin": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", - "npm-normalize-package-bin": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } - }, - "readable-stream": { - "version": "2.3.7", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.7.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.7.1", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.13", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.8.6", - "minizlib": "^1.2.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.3" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "yallist": { - "version": "3.1.1", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - } - }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "gaze": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", - "dev": true, - "requires": { - "globule": "^1.0.0" - } - }, - "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true - }, - "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true - }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true - }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0" - } - }, - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "glob-stream": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", - "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", - "dev": true, - "requires": { - "extend": "^3.0.0", - "glob": "^7.1.1", - "glob-parent": "^3.1.0", - "is-negated-glob": "^1.0.0", - "ordered-read-streams": "^1.0.0", - "pumpify": "^1.3.5", - "readable-stream": "^2.1.5", - "remove-trailing-separator": "^1.0.1", - "to-absolute-glob": "^2.0.0", - "unique-stream": "^2.0.2" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "glob-watcher": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.3.tgz", - "integrity": "sha512-8tWsULNEPHKQ2MR4zXuzSmqbdyV5PtwwCaWSGQ1WwHsJ07ilNeN1JB8ntxhckbnpSHaf9dXFUHzIWvm1I13dsg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-done": "^1.2.0", - "chokidar": "^2.0.0", - "is-negated-glob": "^1.0.0", - "just-debounce": "^1.0.0", - "object.defaults": "^1.1.0" - } - }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", - "dev": true, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" - } - }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" - } - }, - "globule": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.1.tgz", - "integrity": "sha512-OVyWOHgw29yosRHCHo7NncwR1hW5ew0W/UrvtwvjefVJeQ26q4/8r8FmPsSF1hJ93IgWkyv16pCTz6WblMzm/g==", - "dev": true, - "requires": { - "glob": "~7.1.1", - "lodash": "~4.17.12", - "minimatch": "~3.0.2" - } - }, - "glogg": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", - "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", - "dev": true, - "requires": { - "sparkles": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - }, - "gulp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz", - "integrity": "sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==", - "dev": true, - "requires": { - "glob-watcher": "^5.0.3", - "gulp-cli": "^2.2.0", - "undertaker": "^1.2.1", - "vinyl-fs": "^3.0.0" - }, - "dependencies": { - "gulp-cli": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.2.0.tgz", - "integrity": "sha512-rGs3bVYHdyJpLqR0TUBnlcZ1O5O++Zs4bA0ajm+zr3WFCfiSLjGwoCBqFs18wzN+ZxahT9DkOK5nDf26iDsWjA==", - "dev": true, - "requires": { - "ansi-colors": "^1.0.1", - "archy": "^1.0.0", - "array-sort": "^1.0.0", - "color-support": "^1.1.3", - "concat-stream": "^1.6.0", - "copy-props": "^2.0.1", - "fancy-log": "^1.3.2", - "gulplog": "^1.0.0", - "interpret": "^1.1.0", - "isobject": "^3.0.1", - "liftoff": "^3.1.0", - "matchdep": "^2.0.0", - "mute-stdout": "^1.0.0", - "pretty-hrtime": "^1.0.0", - "replace-homedir": "^1.0.0", - "semver-greatest-satisfied-range": "^1.1.0", - "v8flags": "^3.0.1", - "yargs": "^7.1.0" - } - }, - "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" - } - } - } - }, - "gulp-git": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/gulp-git/-/gulp-git-2.10.1.tgz", - "integrity": "sha512-qiXYYDXchMZU/AWAgtphi4zbJb/0gXgfPw7TlZwu/7qPS3Bdcc3zbVe1B0xY9S8on6RQTmWoi+KaTGACIXQeNg==", - "dev": true, - "requires": { - "any-shell-escape": "^0.1.1", - "fancy-log": "^1.3.2", - "lodash.template": "^4.4.0", - "plugin-error": "^1.0.1", - "require-dir": "^1.0.0", - "strip-bom-stream": "^3.0.0", - "through2": "^2.0.3", - "vinyl": "^2.0.1" - } - }, - "gulp-less": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/gulp-less/-/gulp-less-4.0.1.tgz", - "integrity": "sha512-hmM2k0FfQp7Ptm3ZaqO2CkMX3hqpiIOn4OHtuSsCeFym63F7oWlEua5v6u1cIjVUKYsVIs9zPg9vbqTEb/udpA==", - "dev": true, - "requires": { - "accord": "^0.29.0", - "less": "2.6.x || ^3.7.1", - "object-assign": "^4.0.1", - "plugin-error": "^0.1.2", - "replace-ext": "^1.0.0", - "through2": "^2.0.0", - "vinyl-sourcemaps-apply": "^0.2.0" - }, - "dependencies": { - "arr-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", - "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1", - "array-slice": "^0.2.3" - } - }, - "arr-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", - "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", - "dev": true - }, - "array-slice": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", - "dev": true - }, - "extend-shallow": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", - "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", - "dev": true, - "requires": { - "kind-of": "^1.1.0" - } - }, - "kind-of": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", - "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", - "dev": true - }, - "plugin-error": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", - "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", - "dev": true, - "requires": { - "ansi-cyan": "^0.1.1", - "ansi-red": "^0.1.1", - "arr-diff": "^1.0.1", - "arr-union": "^2.0.1", - "extend-shallow": "^1.1.2" - } - } - } - }, - "gulp-sass": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-4.0.2.tgz", - "integrity": "sha512-q8psj4+aDrblJMMtRxihNBdovfzGrXJp1l4JU0Sz4b/Mhsi2DPrKFYCGDwjIWRENs04ELVHxdOJQ7Vs98OFohg==", - "dev": true, - "requires": { - "chalk": "^2.3.0", - "lodash.clonedeep": "^4.3.2", - "node-sass": "^4.8.3", - "plugin-error": "^1.0.1", - "replace-ext": "^1.0.0", - "strip-ansi": "^4.0.0", - "through2": "^2.0.0", - "vinyl-sourcemaps-apply": "^0.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "gulp-typescript": { - "version": "6.0.0-alpha.1", - "resolved": "https://registry.npmjs.org/gulp-typescript/-/gulp-typescript-6.0.0-alpha.1.tgz", - "integrity": "sha512-KoT0TTfjfT7w3JItHkgFH1T/zK4oXWC+a8xxKfniRfVcA0Fa1bKrIhztYelYmb+95RB80OLMBreknYkdwzdi2Q==", - "dev": true, - "requires": { - "ansi-colors": "^4.1.1", - "plugin-error": "^1.0.1", - "source-map": "^0.7.3", - "through2": "^3.0.1", - "vinyl": "^2.2.0", - "vinyl-fs": "^3.0.3" - }, - "dependencies": { - "ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true - }, - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - }, - "through2": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.1.tgz", - "integrity": "sha512-M96dvTalPT3YbYLaKaCuwu+j06D/8Jfib0o/PxbVt6Amhv3dUAtW6rTV1jPgJSBG83I/e04Y6xkVdVhSRhi0ww==", - "dev": true, - "requires": { - "readable-stream": "2 || 3" - } - } - } - }, - "gulplog": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", - "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", - "dev": true, - "requires": { - "glogg": "^1.0.0" - } - }, - "har-schema": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true - }, - "har-validator": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", - "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", - "dev": true, - "requires": { - "ajv": "^6.5.5", - "har-schema": "^2.0.0" - } - }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true - }, - "has-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", - "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", - "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "requires": { - "parse-passwd": "^1.0.0" - } - }, - "hosted-git-info": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", - "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", - "dev": true - }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true - }, - "image-size": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", - "integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=", - "dev": true, - "optional": true - }, - "in-publish": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", - "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==", - "dev": true - }, - "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "indx": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/indx/-/indx-0.2.3.tgz", - "integrity": "sha1-Fdz1bunPZcAjTFE8J/vVgOcPvFA=", - "dev": true - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true - }, - "interpret": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", - "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", - "dev": true - }, - "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true - }, - "is-absolute": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", - "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", - "dev": true, - "requires": { - "is-relative": "^1.0.0", - "is-windows": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", - "dev": true - }, - "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true - }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-finite": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", - "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "is-glob": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", - "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-negated-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", - "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", - "dev": true - }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-plain-object": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", - "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-relative": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", - "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", - "dev": true, - "requires": { - "is-unc-path": "^1.0.0" - } - }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true - }, - "is-unc-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", - "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", - "dev": true, - "requires": { - "unc-path-regex": "^0.1.2" - } - }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true - }, - "is-valid-glob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", - "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", - "dev": true - }, - "is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "isstream": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true - }, - "js-base64": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.2.tgz", - "integrity": "sha512-Vg8czh0Q7sFBSUMWWArX/miJeBWYBPpdU/3M/DKSaekLMqrqVPaedp+5mZhie/r0lgrcaYBfwXatEew6gwgiQQ==", - "dev": true - }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "json-schema": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true - }, - "json-stringify-pretty-compact": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/json-stringify-pretty-compact/-/json-stringify-pretty-compact-2.0.0.tgz", - "integrity": "sha512-WRitRfs6BGq4q8gTgOy4ek7iPFXjbra0H3PmDLKm2xnZ+Gh1HUhiKGgCZkSPNULlP7mvfu6FV/mOLhCarspADQ==", - "dev": true - }, - "json-stringify-safe": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true - }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", - "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" - } - }, - "just-debounce": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", - "integrity": "sha1-h/zPrv/AtozRnVX2cilD+SnqNeo=", - "dev": true - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "last-run": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz", - "integrity": "sha1-RblpQsF7HHnHchmCWbqUO+v4yls=", - "dev": true, - "requires": { - "default-resolution": "^2.0.0", - "es6-weak-map": "^2.0.1" - } - }, - "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true - }, - "lazystream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", - "dev": true, - "requires": { - "readable-stream": "^2.0.5" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, - "requires": { - "invert-kv": "^1.0.0" - } - }, - "lead": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz", - "integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=", - "dev": true, - "requires": { - "flush-write-stream": "^1.0.2" - } - }, - "less": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/less/-/less-3.11.1.tgz", - "integrity": "sha512-tlWX341RECuTOvoDIvtFqXsKj072hm3+9ymRBe76/mD6O5ZZecnlAOVDlWAleF2+aohFrxNidXhv2773f6kY7g==", - "dev": true, - "requires": { - "clone": "^2.1.2", - "errno": "^0.1.1", - "graceful-fs": "^4.1.2", - "image-size": "~0.5.0", - "mime": "^1.4.1", - "mkdirp": "^0.5.0", - "promise": "^7.1.1", - "request": "^2.83.0", - "source-map": "~0.6.0", - "tslib": "^1.10.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, - "liftoff": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz", - "integrity": "sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog==", - "dev": true, - "requires": { - "extend": "^3.0.0", - "findup-sync": "^3.0.0", - "fined": "^1.0.1", - "flagged-respawn": "^1.0.0", - "is-plain-object": "^2.0.4", - "object.map": "^1.0.0", - "rechoir": "^0.6.2", - "resolve": "^1.1.7" - } - }, - "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - }, - "lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=", - "dev": true - }, - "lodash.clone": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", - "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=", - "dev": true - }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, - "lodash.defaults": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", - "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", - "dev": true - }, - "lodash.difference": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", - "dev": true - }, - "lodash.flatten": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", - "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", - "dev": true - }, - "lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", - "dev": true - }, - "lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "lodash.partialright": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz", - "integrity": "sha1-ATDYDoM2MmTUAHTzKbij56ihzEs=", - "dev": true - }, - "lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", - "dev": true - }, - "lodash.template": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", - "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", - "dev": true, - "requires": { - "lodash._reinterpolate": "^3.0.0", - "lodash.templatesettings": "^4.0.0" - } - }, - "lodash.templatesettings": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", - "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", - "dev": true, - "requires": { - "lodash._reinterpolate": "^3.0.0" - } - }, - "lodash.union": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", - "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=", - "dev": true - }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true - }, - "longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true - }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "make-iterator": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", - "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", - "dev": true, - "requires": { - "kind-of": "^6.0.2" - } - }, - "map-cache": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true - }, - "map-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "matchdep": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", - "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=", - "dev": true, - "requires": { - "findup-sync": "^2.0.0", - "micromatch": "^3.0.4", - "resolve": "^1.4.0", - "stack-trace": "0.0.10" - }, - "dependencies": { - "findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", - "dev": true, - "requires": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" - } - }, - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, - "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true, - "optional": true - }, - "mime-db": { - "version": "1.43.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.43.0.tgz", - "integrity": "sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==", - "dev": true - }, - "mime-types": { - "version": "2.1.26", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.26.tgz", - "integrity": "sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==", - "dev": true, - "requires": { - "mime-db": "1.43.0" - } - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", - "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", - "dev": true, - "requires": { - "minimist": "^1.2.5" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "mute-stdout": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz", - "integrity": "sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==", - "dev": true - }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true - }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", - "dev": true - }, - "node-gyp": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", - "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", - "dev": true, - "requires": { - "fstream": "^1.0.0", - "glob": "^7.0.3", - "graceful-fs": "^4.1.2", - "mkdirp": "^0.5.0", - "nopt": "2 || 3", - "npmlog": "0 || 1 || 2 || 3 || 4", - "osenv": "0", - "request": "^2.87.0", - "rimraf": "2", - "semver": "~5.3.0", - "tar": "^2.0.0", - "which": "1" - }, - "dependencies": { - "semver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", - "dev": true - } - } - }, - "node-sass": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.13.1.tgz", - "integrity": "sha512-TTWFx+ZhyDx1Biiez2nB0L3YrCZ/8oHagaDalbuBSlqXgUPsdkUSzJsVxeDO9LtPB49+Fh3WQl3slABo6AotNw==", - "dev": true, - "requires": { - "async-foreach": "^0.1.3", - "chalk": "^1.1.1", - "cross-spawn": "^3.0.0", - "gaze": "^1.0.0", - "get-stdin": "^4.0.1", - "glob": "^7.0.3", - "in-publish": "^2.0.0", - "lodash": "^4.17.15", - "meow": "^3.7.0", - "mkdirp": "^0.5.1", - "nan": "^2.13.2", - "node-gyp": "^3.8.0", - "npmlog": "^4.0.0", - "request": "^2.88.0", - "sass-graph": "^2.2.4", - "stdout-stream": "^1.4.0", - "true-case-path": "^1.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", - "dev": true, - "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "now-and-later": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz", - "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==", - "dev": true, - "requires": { - "once": "^1.3.2" - } - }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true - }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", - "dev": true - }, - "object-copy": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", - "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - }, - "object-visit": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", - "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" - } - }, - "object.defaults": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", - "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", - "dev": true, - "requires": { - "array-each": "^1.0.1", - "array-slice": "^1.0.0", - "for-own": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "object.map": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", - "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", - "dev": true, - "requires": { - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - } - }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "object.reduce": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz", - "integrity": "sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60=", - "dev": true, - "requires": { - "for-own": "^1.0.0", - "make-iterator": "^1.0.0" - } - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "ordered-read-streams": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", - "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", - "dev": true, - "requires": { - "readable-stream": "^2.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true - }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, - "requires": { - "lcid": "^1.0.0" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "parse-filepath": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", - "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", - "dev": true, - "requires": { - "is-absolute": "^1.0.0", - "map-cache": "^0.2.0", - "path-root": "^0.1.1" - } - }, - "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, - "requires": { - "error-ex": "^1.2.0" - } - }, - "parse-node-version": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", - "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", - "dev": true - }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true - }, - "pascalcase": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true - }, - "path-dirname": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", - "dev": true - }, - "path-root": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", - "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", - "dev": true, - "requires": { - "path-root-regex": "^0.1.0" - } - }, - "path-root-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", - "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", - "dev": true - }, - "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - }, - "pinkie": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true - }, - "pinkie-promise": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, - "requires": { - "pinkie": "^2.0.0" - } - }, - "plugin-error": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", - "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", - "dev": true, - "requires": { - "ansi-colors": "^1.0.1", - "arr-diff": "^4.0.0", - "arr-union": "^3.1.0", - "extend-shallow": "^3.0.2" - } - }, - "posix-character-classes": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", - "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", - "dev": true - }, - "pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", - "dev": true - }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true - }, - "promise": { - "version": "7.3.1", - "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", - "dev": true, - "optional": true, - "requires": { - "asap": "~2.0.3" - } - }, - "prr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true, - "optional": true - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, - "psl": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "dev": true - }, - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - } - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "qs": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true - }, - "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, - "requires": { - "load-json-file": "^1.0.0", - "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" - } - }, - "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, - "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" - } - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "rechoir": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", - "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", - "dev": true, - "requires": { - "resolve": "^1.1.6" - } - }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, - "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" - } - }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - } - }, - "remove-bom-buffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", - "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==", - "dev": true, - "requires": { - "is-buffer": "^1.1.5", - "is-utf8": "^0.2.1" - } - }, - "remove-bom-stream": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz", - "integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=", - "dev": true, - "requires": { - "remove-bom-buffer": "^3.0.0", - "safe-buffer": "^5.1.0", - "through2": "^2.0.3" - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "repeat-element": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true - }, - "repeat-string": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true - }, - "repeating": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", - "dev": true, - "requires": { - "is-finite": "^1.0.0" - } - }, - "replace-ext": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", - "dev": true - }, - "replace-homedir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz", - "integrity": "sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw=", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1", - "is-absolute": "^1.0.0", - "remove-trailing-separator": "^1.1.0" - } - }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", - "dev": true, - "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" - } - }, - "require-dir": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/require-dir/-/require-dir-1.2.0.tgz", - "integrity": "sha512-LY85DTSu+heYgDqq/mK+7zFHWkttVNRXC9NKcKGyuGLdlsfbjEPrIEYdCVrx6hqnJb+xSu3Lzaoo8VnmOhhjNA==", - "dev": true - }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true - }, - "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true - }, - "resolve": { - "version": "1.15.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz", - "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } - }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", - "dev": true, - "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" - } - }, - "resolve-options": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz", - "integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=", - "dev": true, - "requires": { - "value-or-function": "^3.0.0" - } - }, - "resolve-url": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "ret": { - "version": "0.1.15", - "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true - }, - "right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, - "requires": { - "align-text": "^0.1.1" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true - }, - "safe-regex": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", - "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true - }, - "sass": { - "version": "1.26.3", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.3.tgz", - "integrity": "sha512-5NMHI1+YFYw4sN3yfKjpLuV9B5l7MqQ6FlkTcC4FT+oHbBRUZoSjHrrt/mE0nFXJyY2kQtU9ou9HxvFVjLFuuw==", - "dev": true, - "requires": { - "chokidar": ">=2.0.0 <4.0.0" - } - }, - "sass-graph": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", - "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", - "dev": true, - "requires": { - "glob": "^7.0.0", - "lodash": "^4.0.0", - "scss-tokenizer": "^0.2.3", - "yargs": "^7.0.0" - }, - "dependencies": { - "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" - } - } - } - }, - "scss-tokenizer": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", - "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", - "dev": true, - "requires": { - "js-base64": "^2.1.8", - "source-map": "^0.4.2" - }, - "dependencies": { - "source-map": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - } - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "semver-greatest-satisfied-range": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz", - "integrity": "sha1-E+jCZYq5aRywzXEJMkAoDTb3els=", - "dev": true, - "requires": { - "sver-compat": "^1.5.0" - } - }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true - }, - "set-value": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", - "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "signal-exit": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", - "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", - "dev": true - }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", - "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, - "requires": { - "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "source-map-resolve": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", - "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", - "dev": true, - "requires": { - "atob": "^2.1.2", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-url": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", - "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", - "dev": true - }, - "sparkles": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", - "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", - "dev": true - }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", - "dev": true, - "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", - "dev": true - }, - "spdx-expression-parse": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", - "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "dev": true, - "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", - "dev": true - }, - "split-string": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", - "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, - "requires": { - "extend-shallow": "^3.0.0" - } - }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", - "dev": true, - "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" - } - }, - "stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", - "dev": true - }, - "static-extend": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", - "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - } - } - }, - "stdout-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", - "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", - "dev": true, - "requires": { - "readable-stream": "^2.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "stream-exhaust": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", - "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", - "dev": true - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, - "requires": { - "is-utf8": "^0.2.0" - } - }, - "strip-bom-buf": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-buf/-/strip-bom-buf-1.0.0.tgz", - "integrity": "sha1-HLRar1dTD0yvhsf3UXnSyaUd1XI=", - "dev": true, - "requires": { - "is-utf8": "^0.2.1" - } - }, - "strip-bom-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-3.0.0.tgz", - "integrity": "sha1-lWvMXYRDD2klapDtgjdlzYWOFZw=", - "dev": true, - "requires": { - "first-chunk-stream": "^2.0.0", - "strip-bom-buf": "^1.0.0" - } - }, - "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, - "requires": { - "get-stdin": "^4.0.1" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "sver-compat": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz", - "integrity": "sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg=", - "dev": true, - "requires": { - "es6-iterator": "^2.0.1", - "es6-symbol": "^3.1.1" - } - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "tar-stream": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.1.2.tgz", - "integrity": "sha512-UaF6FoJ32WqALZGOIAApXx+OdxhekNMChu6axLJR85zMMjXKWFGjbIRe+J6P4UnRGg9rAwWvbTT0oI7hD/Un7Q==", - "dev": true, - "requires": { - "bl": "^4.0.1", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - } - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "through2-filter": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", - "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", - "dev": true, - "requires": { - "through2": "~2.0.0", - "xtend": "~4.0.0" - } - }, - "time-stamp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", - "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", - "dev": true - }, - "to-absolute-glob": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", - "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", - "dev": true, - "requires": { - "is-absolute": "^1.0.0", - "is-negated-glob": "^1.0.0" - } - }, - "to-object-path": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", - "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "to-regex": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", - "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - } - }, - "to-regex-range": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", - "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "to-through": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz", - "integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=", - "dev": true, - "requires": { - "through2": "^2.0.3" - } - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "dev": true, - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, - "true-case-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", - "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", - "dev": true, - "requires": { - "glob": "^7.1.2" - } - }, - "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==", - "dev": true - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true - }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", - "dev": true - }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "typescript": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.8.3.tgz", - "integrity": "sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w==", - "dev": true - }, - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "requires": { - "source-map": "~0.5.1", - "uglify-to-browserify": "~1.0.0", - "yargs": "~3.10.0" - }, - "dependencies": { - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "requires": { - "center-align": "^0.1.1", - "right-align": "^0.1.1", - "wordwrap": "0.0.2" - } - }, - "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", - "dev": true, - "requires": { - "camelcase": "^1.0.2", - "cliui": "^2.1.0", - "decamelize": "^1.0.0", - "window-size": "0.1.0" - } - } - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, - "optional": true - }, - "unc-path-regex": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", - "dev": true - }, - "undertaker": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.2.1.tgz", - "integrity": "sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA==", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1", - "arr-map": "^2.0.0", - "bach": "^1.0.0", - "collection-map": "^1.0.0", - "es6-weak-map": "^2.0.1", - "last-run": "^1.1.0", - "object.defaults": "^1.0.0", - "object.reduce": "^1.0.0", - "undertaker-registry": "^1.0.0" - } - }, - "undertaker-registry": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz", - "integrity": "sha1-XkvaMI5KiirlhPm5pDWaSZglzFA=", - "dev": true - }, - "union-value": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", - "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^2.0.1" - } - }, - "unique-stream": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", - "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", - "dev": true, - "requires": { - "json-stable-stringify-without-jsonify": "^1.0.1", - "through2-filter": "^3.0.0" - } - }, - "universalify": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", - "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", - "dev": true - }, - "unset-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", - "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", - "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true - } - } - }, - "upath": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", - "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "^2.1.0" - } - }, - "urix": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", - "dev": true - }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - }, - "v8flags": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz", - "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==", - "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" - } - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "value-or-function": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz", - "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=", - "dev": true - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" - } - }, - "vinyl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", - "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", - "dev": true, - "requires": { - "clone": "^2.1.1", - "clone-buffer": "^1.0.0", - "clone-stats": "^1.0.0", - "cloneable-readable": "^1.0.0", - "remove-trailing-separator": "^1.0.1", - "replace-ext": "^1.0.0" - } - }, - "vinyl-fs": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz", - "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==", - "dev": true, - "requires": { - "fs-mkdirp-stream": "^1.0.0", - "glob-stream": "^6.1.0", - "graceful-fs": "^4.0.0", - "is-valid-glob": "^1.0.0", - "lazystream": "^1.0.0", - "lead": "^1.0.0", - "object.assign": "^4.0.4", - "pumpify": "^1.3.5", - "readable-stream": "^2.3.3", - "remove-bom-buffer": "^3.0.0", - "remove-bom-stream": "^1.2.0", - "resolve-options": "^1.1.0", - "through2": "^2.0.0", - "to-through": "^2.0.0", - "value-or-function": "^3.0.0", - "vinyl": "^2.0.0", - "vinyl-sourcemap": "^1.1.0" - }, - "dependencies": { - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - } - } - }, - "vinyl-sourcemap": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz", - "integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=", - "dev": true, - "requires": { - "append-buffer": "^1.0.2", - "convert-source-map": "^1.5.0", - "graceful-fs": "^4.1.6", - "normalize-path": "^2.1.1", - "now-and-later": "^2.0.0", - "remove-bom-buffer": "^3.0.0", - "vinyl": "^2.0.0" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "vinyl-sourcemaps-apply": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", - "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", - "dev": true, - "requires": { - "source-map": "^0.5.1" - } - }, - "when": { - "version": "3.7.8", - "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz", - "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=", - "dev": true - }, - "which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true - }, - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true - }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true - }, - "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", - "dev": true, - "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^4.2.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "yargs-parser": { - "version": "18.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", - "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } - } - } - }, - "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" - } - }, - "zip-stream": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-2.1.3.tgz", - "integrity": "sha512-EkXc2JGcKhO5N5aZ7TmuNo45budRaFGHOmz24wtJR7znbNqDPmdZtUauKX6et8KAVseAMBOyWJqEpXcHTBsh7Q==", - "dev": true, - "requires": { - "archiver-utils": "^2.1.0", - "compress-commons": "^2.1.1", - "readable-stream": "^3.4.0" - } - } - } -} diff --git a/package.json b/package.json deleted file mode 100644 index e216987..0000000 --- a/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "private": true, - "name": "ose", - "version": "0.0.2", - "description": "", - "scripts": { - "package": "gulp package", - "build": "gulp build && gulp link", - "build:watch": "gulp watch", - "clean": "gulp clean && gulp link --clean", - "update": "npm install --save-dev gitlab:foundry-projects/foundry-pc/foundry-pc-types" - }, - "author": "", - "license": "", - "devDependencies": { - "archiver": "^3.1.1", - "chalk": "^3.0.0", - "foundry-pc-types": "gitlab:foundry-projects/foundry-pc/foundry-pc-types", - "fs-extra": "^8.1.0", - "gulp": "^4.0.2", - "gulp-git": "^2.10.0", - "gulp-less": "^4.0.1", - "gulp-sass": "^4.0.2", - "gulp-typescript": "^6.0.0-alpha.1", - "json-stringify-pretty-compact": "^2.0.0", - "sass": "^1.25.0", - "typescript": "^3.7.5", - "yargs": "^15.1.0" - }, - "dependencies": {} -} diff --git a/src/LICENSE.txt b/src/LICENSE.txt index 26039bc..cf1d586 100644 --- a/src/LICENSE.txt +++ b/src/LICENSE.txt @@ -593,7 +593,7 @@ APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +PURPACKS. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. @@ -641,7 +641,7 @@ the "copyright" line and a pointer to where the full notice is found. This program 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 + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPACKS. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License diff --git a/src/acks.css b/src/acks.css new file mode 100644 index 0000000..d699d6f --- /dev/null +++ b/src/acks.css @@ -0,0 +1,1092 @@ +/* ----------------------------------------- */ +/* Sheet Styles */ +/* ----------------------------------------- */ +@keyframes notify { + from { + text-shadow: none; + } + to { + text-shadow: -1px -1px 4px #4b4a44, 1px -1px 4px #4b4a44, -1px 1px 4px #4b4a44, 1px 1px 4px #4b4a44; + } +} +.acks.sheet.actor { + /* Header Summary Details */ +} +.acks.sheet.actor .blinking { + font-weight: bold; + animation: 0.8s ease-in 1s infinite alternate notify; +} +.acks.sheet.actor .panel { + border: 1px solid rgba(0, 0, 0, 0.9); +} +.acks.sheet.actor .panel .panel-title { + color: whitesmoke; + background: url("/systems/acks/assets/back.png"); + line-height: 12px; + height: 20px; + text-align: center; + margin: 0; + padding: 4px; + display: flex; +} +.acks.sheet.actor .panel .panel-title h4 { + flex: 1; +} +.acks.sheet.actor .panel .panel-title .item-controls { + font-size: 12px; + flex: 0 0 18px; +} +.acks.sheet.actor .panel .panel-content { + margin: 0; + padding: 0; +} +.acks.sheet.actor .header-details h1 input { + margin: 0 0 10px 0; +} +.acks.sheet.actor .profile-img { + border: 0; + flex: 0 0 145px; + height: 145px; +} +.acks.sheet.actor .summary { + flex: 0 0 100%; + height: 44px; + margin: 0; + padding: 0; + list-style: none; + border-top: none; +} +.acks.sheet.actor .summary li { + height: calc(100% - 6px); + float: left; + margin: 2px 0; + padding: 0; + line-height: 30px; + color: #4b4a44; + position: relative; +} +.acks.sheet.actor .summary li label { + line-height: 10px; + position: absolute; + font-size: 10px; + color: #4b4a44; + bottom: 0; + left: 12px; +} +.acks.sheet.actor .summary li.notify input { + font-weight: bold; + animation: 0.8s ease-in 1s infinite alternate notify; +} +.acks.sheet.actor .sheet-tabs { + position: absolute; + transform: rotate(90deg); + top: 365px; + right: -169px; + width: 320px; + z-index: -1; +} +.acks.sheet.actor .sheet-tabs .item { + padding: 2px 10px 0; + margin-left: -5px; + text-indent: 4px; + background: url("/ui/parchment.jpg"); + border-top-right-radius: 4px; + border-top-left-radius: 80px; + box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.9); + font-size: 12px; + filter: brightness(0.9); +} +.acks.sheet.actor .sheet-tabs .item.active { + filter: none; + z-index: 1; + font-weight: bold; + text-shadow: none; + margin-bottom: -1px; +} +.acks.sheet.actor .sheet-body { + padding: 5px 0; + height: calc(100% - 140px); +} +.acks.sheet.actor .sheet-body .tab { + height: 100%; +} +.acks.sheet.actor .sheet-body .attributes { + list-style: none; + margin: 0; + padding: 0; + justify-content: space-evenly; +} +.acks.sheet.actor .sheet-body .attributes .attribute { + position: relative; + border: 1px solid #7a7971; + box-shadow: 0 0 2px #7a7971; +} +.acks.sheet.actor .sheet-body .attributes .attribute .attribute-name { + color: whitesmoke; + padding: 2px; + margin: 0; + border: 1px solid rgba(0, 0, 0, 0.9); + background: url("/systems/acks/assets/back.png"); + text-align: center; +} +.acks.sheet.actor .sheet-body .attributes .attribute.ability-score { + height: 40px; +} +.acks.sheet.actor .sheet-body .attributes .attribute.ability-score .attribute-value { + line-height: 36px; +} +.acks.sheet.actor .sheet-body .attributes .attribute .attribute-value { + text-align: center; + padding: 4px; +} +.acks.sheet.actor .sheet-body .attributes .attribute .attribute-value .sep { + flex: 0 0 5px; + line-height: 24px; +} +.acks.sheet.actor .sheet-body .attribute-group { + flex: 0 0 88px; +} +.acks.sheet.actor .sheet-body .attribute-group .attributes { + display: flex; + flex-direction: column; + justify-content: space-evenly; + height: 100%; +} +.acks.sheet.actor .sheet-body .attribute-group .attributes .attribute { + display: flex; + flex-direction: row; +} +.acks.sheet.actor .sheet-body .attribute-group .attributes .attribute .attribute-name { + width: 40px; + margin: 0; + line-height: 35px; +} +.acks.sheet.actor .sheet-body .attribute-group .attributes .attribute .attribute-name a { + margin: auto; +} +.acks.sheet.actor .sheet-body .attribute-group .attributes .attribute.saving-throw .attribute-name { + line-height: 16px; + width: 80px; +} +.acks.sheet.actor .sheet-body .attribute-group .attributes .attribute.saving-throw .attribute-value { + line-height: 29px; +} +.acks.sheet.actor .sheet-body .attribute-group .attributes .attribute .attribute-value { + width: 45px; + flex-grow: 0; +} +.acks.sheet.actor .sheet-body .attribute-group .attributes .attribute .attribute-value input { + padding: 0; +} +.acks.sheet.actor .sheet-body .inventory { + overflow: auto; +} +.acks.sheet.actor .sheet-body .inventory .header-spells { + line-height: 30px; +} +.acks.sheet.actor .sheet-body .inventory .item-titles { + text-align: center; + padding: 4px 0; + border: 1px solid rgba(0, 0, 0, 0.9); + box-shadow: 0 0 5px rgba(0, 0, 0, 0.9); + font-weight: 300; + font-size: 13px; + background: url("/systems/acks/assets/back.png"); + color: white; +} +.acks.sheet.actor .sheet-body .inventory .item-titles .item-name { + text-align: left; + text-indent: 8px; +} +.acks.sheet.actor .sheet-body .inventory .item-titles input { + color: white; + margin: auto; +} +.acks.sheet.actor .sheet-body .inventory .item-list { + list-style: none; + margin: 0; + padding: 0; +} +.acks.sheet.actor .sheet-body .inventory .item-list > * { + line-height: 30px; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-summary { + font-size: 13px; + padding: 0 4px; + line-height: 20px; + box-shadow: 0 0 3px rgba(0, 0, 0, 0.9); +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-summary .tag-list { + padding: 0; + margin: 0; + list-style: none; + display: flex; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-summary .tag-list .tag { + margin: 1px 2px; + border: 1px solid #d8d6c9; + font-size: 11px; + line-height: 14px; + background: #4b4a44; + padding: 1px 4px; + color: whitesmoke; + border-radius: 3px; + box-shadow: 0 0 1px #d8d6c9; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-header { + padding: 0px; + margin-bottom: 0px; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-entry:nth-child(even) .item { + background: rgba(0, 0, 0, 0.1); +} +.acks.sheet.actor .sheet-body .inventory .item-list .item { + line-height: 30px; + height: 30px; + overflow: hidden; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-equipped { + grid-area: item-equipped; + justify-self: center; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-rollable:hover .item-image { + background-image: url("/icons/svg/d20-grey.svg") !important; + cursor: pointer; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-rollable .item-image:hover { + background-image: url("/icons/svg/d20-black.svg") !important; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-name { + text-indent: 8px; + text-align: left; + overflow: hidden; + height: 30px; + margin: 0; + line-height: 30px; + flex-basis: 90px; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-name .item-image { + flex-basis: 30px; + flex-grow: 0; + background-size: contain; + background-repeat: no-repeat; +} +.acks.sheet.actor .sheet-body .inventory .item-list .item-name h4 { + margin: 0; +} +.acks.sheet.actor .sheet-body .inventory .icon-row img { + border: none; + margin: 3px 1px; + flex: 0 0 24px; +} +.acks.sheet.actor .sheet-body .inventory .icon-row span { + font-size: 12px; + flex-grow: 0; +} +.acks.sheet.actor .sheet-body .inventory .field-flex { + flex: 1; + text-align: left; + font-size: 12px; + text-indent: 8px; +} +.acks.sheet.actor .sheet-body .inventory .field-longer { + text-indent: 8px; + text-align: left; + flex-basis: 90px; + font-size: 12px; +} +.acks.sheet.actor .sheet-body .inventory .field-long { + flex-basis: 65px; + flex-grow: 0; + text-align: center; + font-size: 12px; +} +.acks.sheet.actor .sheet-body .inventory .field-long.memorize input { + border-bottom: none; + margin: 3px 0; +} +.acks.sheet.actor .sheet-body .inventory .field-short { + font-size: 12px; + flex-basis: 45px; + flex-grow: 0; + text-align: center; +} +.acks.sheet.actor .sheet-body .inventory .field-short.quantity { + display: flex; +} +.acks.sheet.actor .sheet-body .inventory .field-short.quantity input { + margin: 3px 0; + border-bottom: none; +} +.acks.sheet.actor .sheet-body .inventory .item-caret { + flex: 0 0 10px; + margin: 0 4px; + cursor: pointer; +} +.acks.sheet.actor .sheet-body .inventory .item-controls { + font-size: 12px; + flex-basis: 50px; + flex-grow: 0; + text-align: right; + margin-right: 4px; +} +.acks.sheet.actor .sheet-body .inventory .item-controls .item-unequipped { + color: rgba(0, 0, 0, 0.2); +} +.acks.sheet.actor .sheet-body .inventory .item-controls a:hover { + color: #44191A; + text-shadow: 0 0 5px #d8d6c9, 1px 0 5px #d8d6c9, 0 1px 5px #d8d6c9, 1px 1px 5px #d8d6c9; +} +.acks.sheet.actor .sheet-body .inventory.spells .item-titles { + line-height: 24px; +} +.acks.sheet.actor .sheet-body .inventory.spells .item-controls { + flex-basis: 45px; +} +.acks.sheet.actor .sheet-body .editor { + height: 300px; + padding: 4px; +} + +.acks.roll-dialog .roll-details { + font-weight: bold; + text-align: center; +} + +.acks.dialog.creator .attribute-list .form-fields { + flex: 0 0 50px; +} +.acks.dialog.creator .attribute-list .form-fields input { + text-align: center; + font-weight: bold; +} +.acks.dialog.creator .roll-stats { + flex: 0 0 65px; + padding: 5px; + margin-left: 4px; + border-left: 1px solid #7a7971; +} +.acks.dialog.creator .roll-stats .form-group .form-fields span { + text-align: center; + line-height: 24px; + flex: 0; +} + +.acks.dialog.party-sheet { + min-width: 250px; + min-height: 250px; +} +.acks.dialog.party-sheet .window-content { + padding: 0; +} +.acks.dialog.party-sheet .header { + color: whitesmoke; + background: url("/systems/acks/assets/back.png"); + padding: 4px 0; + line-height: 20px; + text-align: left; + padding: 2px 10px; +} +.acks.dialog.party-sheet .header .item-controls .item-control { + padding: 0 2px; +} +.acks.dialog.party-sheet .header .item-controls .item-control button { + line-height: 15px; + margin: 0 1px; + background: rgba(255, 255, 240, 0.8); + border: 1px solid #b5b3a4; +} +.acks.dialog.party-sheet .actor-list { + margin: 0; + overflow: auto; + list-style: none; + padding: 0; +} +.acks.dialog.party-sheet .actor-list .actor { + border-bottom: 1px solid #7a7971; + border-top: 1px solid #7a7971; + margin-bottom: 2px; + font-size: 12px; + text-align: center; +} +.acks.dialog.party-sheet .actor-list .actor .fas { + padding: 0 2px; + font-size: 10px; +} +.acks.dialog.party-sheet .actor-list .actor .fields .field-row:nth-child(odd) { + background-color: rgba(0, 0, 0, 0.1); +} +.acks.dialog.party-sheet .actor-list .actor .field-img { + flex: 0 0 50px; + position: relative; +} +.acks.dialog.party-sheet .actor-list .actor .field-img:hover .img-btns button { + display: block; +} +.acks.dialog.party-sheet .actor-list .actor .field-img img { + border: none; + width: 45px; + height: 45px; +} +.acks.dialog.party-sheet .actor-list .actor .field-img .img-btns { + position: absolute; + bottom: 6px; + left: 3px; + width: 45px; + height: 12px; +} +.acks.dialog.party-sheet .actor-list .actor .field-img .img-btns button { + display: none; + cursor: pointer; + font-size: 10px; + height: 18px; + width: 14px; + line-height: 13px; + margin: 0 1px; + border: 1px solid #4b4a44; + padding: 2px; + background: #d8d6c9; + box-shadow: inset 0 0px 3px #7a7971; +} +.acks.dialog.party-sheet .field-name { + text-align: left; + text-indent: 10px; +} + +#sidebar #actors .directory-header .header-search .acks-party-sheet { + width: 32px; + text-align: center; + line-height: 20px; +} +#sidebar #actors .directory-header .header-search input { + width: calc(100% - 45px); +} + +.acks.dialog.modifiers .attribute-bonuses label { + font-weight: bold; +} +.acks.dialog.modifiers .attribute-bonuses ol { + list-style: outside; +} + +.sheet.roll-table-config .sheet-header .toggle-treasure { + flex: 0 0 30px; + font-size: 26px; + line-height: 25px; + color: white; + margin: 0 2px 5px 8px; + border-radius: 8px; + background: url("/systems/acks/assets/treasure.png") no-repeat center; + background-size: cover; + padding: 5px 8px; + cursor: pointer; + filter: grayscale(1) opacity(0.5); +} +.sheet.roll-table-config .sheet-header .toggle-treasure.active, .sheet.roll-table-config .sheet-header .toggle-treasure:hover { + filter: none; +} +@keyframes activated { + from { + background: none; + } + to { + background: rgba(0, 0, 0, 0.12); + } +} +.sheet.roll-table-config .results .table-result.active { + animation: 0.7s infinite alternate activated; +} + +#settings .acks.game-license { + font-size: 12px; +} +#settings .acks.game-license .button { + text-align: center; + margin: 4px; +} +#settings .acks.game-license .footer { + text-align: right; +} + +.acks.chat-block { + margin: 0; +} +.acks.chat-block .chat-header { + height: 46px; + margin: 4px 0; + background: url("/systems/acks/assets/back.png"); + border: 1px solid black; + border-radius: 3px; + color: white; + padding: 2px; + box-shadow: 0 0 2px #fff inset; +} +.acks.chat-block .chat-header .chat-title { + margin: 4px 0; + height: 30px; + overflow: hidden; +} +.acks.chat-block .chat-header .chat-title h2 { + border: none; + line-height: 34px; + margin: 0; + text-indent: 10px; + font-size: 16px; + word-break: break-all; +} +.acks.chat-block .chat-header .chat-img { + flex: 0 0 42px; + background-size: cover; +} +.acks.chat-block .chat-target { + text-align: right; + font-style: italic; + padding: 2px; +} +.acks.chat-block .chat-details { + padding: 4px; + font-size: 13px; +} +.acks.chat-block .roll-result { + font-size: 13px; + text-align: center; +} +.acks.chat-block .roll-result.roll-success { + color: #18520b; +} +.acks.chat-block .roll-result.roll-fail { + color: #aa0200; +} +.acks.chat-block .damage-roll { + position: relative; +} +.acks.chat-block .damage-roll .dice-damage { + display: none; + position: absolute; + line-height: 24px; + text-align: center; + background: rgba(0, 0, 0, 0.1); + border-radius: 3px; + box-shadow: 0 0 2px #fff inset; + bottom: 1px; + right: 10px; +} +.acks.chat-block .damage-roll .dice-damage button { + padding: 2px 5px; + width: 22px; + line-height: 14px; + height: 22px; + cursor: pointer; +} +.acks.chat-block .damage-roll:hover .dice-damage { + display: block; +} + +.acks.chat-card { + font-style: normal; + font-size: 12px; +} +.acks.chat-card .card-header { + padding: 3px 0; + border-top: 2px groove #fff; + border-bottom: 2px groove #fff; +} +.acks.chat-card .card-header img { + flex: 0 0 36px; + margin-right: 5px; + border: none; +} +.acks.chat-card .card-header h3 { + flex: 1; + margin: 0; + line-height: 36px; + color: #4b4a44; +} +.acks.chat-card .card-header h3:hover { + color: #111; +} +.acks.chat-card .card-content { + margin: 5px 0; +} +.acks.chat-card .card-content .treasure-list { + padding: 0; + list-style: none; +} +.acks.chat-card .card-content .treasure-list .treasure { + line-height: 36px; +} +.acks.chat-card .card-content .treasure-list .treasure img { + flex: 0 0 36px; + border: none; +} +.acks.chat-card .card-content .treasure-list .treasure div { + text-indent: 10px; + font-size: 14px; + font-weight: bold; +} +.acks.chat-card .card-content h3 { + font-size: 12px; + margin: 0; + font-weight: bold; +} +.acks.chat-card .card-content > * { + -webkit-user-select: text; + -moz-user-select: text; + -ms-user-select: text; + user-select: text; +} +.acks.chat-card .card-buttons { + margin: 5px 0; +} +.acks.chat-card .card-buttons span { + display: block; + line-height: 28px; + text-align: center; + border: 1px solid #7a7971; +} +.acks.chat-card .card-buttons button { + font-size: 12px; + height: 24px; + line-height: 20px; + margin: 2px 0; +} +.acks.chat-card .card-footer { + padding: 3px 0 0; + border-top: 2px groove #fff; +} +.acks.chat-card .card-footer span { + border-right: 2px groove #fff; + padding: 0 5px 0 0; + font-size: 10px; +} +.acks.chat-card .card-footer span:last-child { + border-right: none; + padding-right: 0; +} + +.dice-roll .dice-total.success { + color: inherit; + background: #c7d0c0; + border: 1px solid #006c00; +} +.dice-roll .dice-total.failure { + color: inherit; + background: #ffdddd; + border: 1px solid #6e0000; +} +.dice-roll .dice-total.critical { + color: green; +} +.dice-roll .dice-total.fumble { + color: red; +} + +/* ----------------------------------------- */ +/* Sheet Styles */ +/* ----------------------------------------- */ +/* ----------------------------------------- */ +/* Basic Structure */ +/* ----------------------------------------- */ +.acks.sheet.actor.character { + min-width: 450px; + min-height: 550px; + /* ----------------------------------------- */ + /* Sheet Header */ + /* ----------------------------------------- */ + /* ----------------------------------------- */ + /* Sheet Body */ + /* ----------------------------------------- */ + /* Encumbrance Bar */ + /* ----------------------------------------- */ + /* Item Controls */ + /* ----------------------------------------- */ +} +.acks.sheet.actor.character .sheet-header .xp-bonus { + top: -15px; + right: 3px; + color: #7a7971; + font-size: 10px; + position: absolute; +} +.acks.sheet.actor.character .sheet-body .tab { + height: 100%; +} +.acks.sheet.actor.character .sheet-body .attributes-tab { + justify-content: space-between; + height: 100%; +} +.acks.sheet.actor.character .sheet-body .attributes-tab .attribute-group { + position: relative; +} +.acks.sheet.actor.character .sheet-body .attributes-tab .attribute-group .modifiers-btn { + position: absolute; + left: 0; + top: -8px; +} +.acks.sheet.actor.character .sheet-body .resources { + display: flex; + justify-content: space-evenly; + flex-direction: column; +} +.acks.sheet.actor.character .sheet-body .resources .attribute { + flex: 0 0 55px; +} +.acks.sheet.actor.character .sheet-body .resources .attribute.attribute-secondaries { + flex: 0 0 40px; + margin-bottom: 5px; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .languages { + margin: 2px; + flex: 0 0 130px; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .languages .item-titles .item-controls { + flex: 0 0 20px; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .languages ol { + height: 100px; + overflow: auto; + list-style: none; + padding: 5px; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .languages ol li { + margin: 0; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .languages ol li:hover .item-controls { + display: flex; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .languages ol li .item-controls { + flex: 0 0 20px; + display: none; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .description { + margin: 2px; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .description .editor { + height: 110px; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory .description .editor .tox .tox-tbtn { + height: 24px; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory.notes { + margin: 2px; +} +.acks.sheet.actor.character .sheet-body .notes-tab .inventory.notes .editor { + height: 150px; +} +.acks.sheet.actor.character .sheet-body .health { + height: 70px; + position: relative; +} +.acks.sheet.actor.character .sheet-body .health.armor-class { + background: url("/systems/acks/assets/shield.png") no-repeat center; + background-size: 70px; +} +.acks.sheet.actor.character .sheet-body .health.armor-class .shield { + text-align: right; + padding: 0 14px; + font-size: 18px; +} +.acks.sheet.actor.character .sheet-body .health .health-value { + font-size: 16px; + text-align: center; + font-weight: bolder; + text-shadow: 0 0 2px white, 0 1px 2px white, 1px 0 2px white, 1px 1px 2px white; +} +.acks.sheet.actor.character .sheet-body .health .health-top { + border-bottom: none; + position: absolute; + font-size: 24px; + top: 10px; + width: 70px; + left: calc(50% - 35px); +} +.acks.sheet.actor.character .sheet-body .health .health-bottom { + border-bottom: none; + position: absolute; + bottom: 8px; + width: 40px; + right: calc(50% + -20px); +} +.acks.sheet.actor.character .sheet-body .health .health-empty { + background: url("/systems/acks/assets/heart_empty.png") no-repeat center; + background-size: 70px; + background-position: top; +} +.acks.sheet.actor.character .sheet-body .health .health-full { + background: url("/systems/acks/assets/heart_full.png") no-repeat center; + background-size: 70px; + background-position: bottom; +} +.acks.sheet.actor.character .sheet-body .saving-throw .attribute-value.flat { + line-height: 30px; +} +.acks.sheet.actor.character .sheet-body .exploration .attribute { + margin: 4px; +} +.acks.sheet.actor.character .sheet-body .exploration .attribute .attribute-name { + text-align: left; + flex: 1 0 60px; + line-height: 25px; + font-size: 12px; +} +.acks.sheet.actor.character .encumbrance { + height: 12px; + background: url("/systems/acks/assets/back.png"); + margin: 1px 15px 0 1px; + border: 1px solid rgba(0, 0, 0, 0.9); + border-radius: 3px; + position: relative; +} +.acks.sheet.actor.character .encumbrance .encumbrance-bar { + position: absolute; + background: rgba(255, 0, 0, 0.6); + height: 10px; + border: 1px solid #777; + border-radius: 2px; +} +.acks.sheet.actor.character .encumbrance .encumbrance-label { + height: 10px; + padding: 0 5px; + position: absolute; + top: 0; + right: 10px; + font-size: 13px; + line-height: 12px; + text-align: right; + color: #EEE; + text-shadow: 0 0 5px #000; +} +.acks.sheet.actor.character .encumbrance .encumbrance-breakpoint { + display: block; + position: absolute; +} +.acks.sheet.actor.character .encumbrance .encumbrance-breakpoint.encumbrance-25 { + left: 25%; +} +.acks.sheet.actor.character .encumbrance .encumbrance-breakpoint.encumbrance-50 { + left: 50%; +} +.acks.sheet.actor.character .encumbrance .encumbrance-breakpoint.encumbrance-75 { + left: 75%; +} +.acks.sheet.actor.character .encumbrance .arrow-up { + bottom: 0; + width: 0; + height: 0; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-bottom: 4px solid #d8d6c9; +} +.acks.sheet.actor.character .encumbrance .arrow-down { + top: 0; + width: 0; + height: 0; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 4px solid #d8d6c9; +} +.acks.sheet.actor.character .encumbrance.encumbered .arrow-up { + border-bottom: 4px solid rgba(0, 0, 0, 0.9); +} +.acks.sheet.actor.character .encumbrance.encumbered .arrow-down { + border-top: 4px solid rgba(0, 0, 0, 0.9); +} + +.acks.window-content .collapsed { + display: none; +} +.acks.window-content .margin { + margin: 5px; +} +.acks.window-content input { + text-align: center; +} +.acks.window-content input[type=number] { + -moz-appearance: textfield; +} +.acks.window-content input[type=number]::-webkit-inner-spin-button, +.acks.window-content input[type=number]::-webkit-outer-spin-button { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + margin: 0; +} +.acks.window-content input:not([type=checkbox]) { + background: none; + border: none; + border-radius: 0; + border-bottom: 1px solid #7a7971; +} +.acks.window-content input:not([type=checkbox]):hover:not(:disabled), .acks.window-content input:not([type=checkbox]):focus:not(:disabled) { + box-shadow: none; + background: linear-gradient(transparent, rgba(0, 0, 0, 0.1)); +} +.acks.window-content a:hover { + text-shadow: none; +} +.acks.window-content .resizable { + overflow: auto; +} + +.acks.sheet.item .sheet-header h1 input { + margin: 6px 2%; +} +.acks.sheet.item .sheet-header .details { + flex: 0 0 70px; +} +.acks.sheet.item .sheet-header .details label { + flex: 0 0 20px; +} +.acks.sheet.item .sheet-header .profile-img { + border: none; + flex: 0 0 84px; + height: 84px; +} +.acks.sheet.item .sheet-header .tag-list { + margin: 0; + height: 24px; + overflow: auto; + list-style: none; + padding: 1px; + display: flex; + flex-wrap: wrap; +} +.acks.sheet.item .sheet-header .tag-list .tag { + background: #4b4a44; + border-radius: 5px; + color: whitesmoke; + padding: 1px 5px; + height: 18px; + box-shadow: 0 0 3px #d8d6c9; + margin: 0 2px; +} +.acks.sheet.item .sheet-header .tag-list .tag i { + font-size: 8px; + vertical-align: top; + color: #d8d6c9; +} +.acks.sheet.item .sheet-body .stats { + flex: 0 0 80px; + border-right: 1px groove rgba(0, 0, 0, 0.2); + padding-right: 2px; + font-size: 13px; +} +.acks.sheet.item .sheet-body .stats .form-group { + margin: 1px; + border: 1px solid rgba(0, 0, 0, 0.15); +} +.acks.sheet.item .sheet-body .stats .form-group label { + background: rgba(0, 0, 0, 0.1); + padding: 0 4px; +} +.acks.sheet.item .sheet-body .stats .form-group input { + border-bottom: none; + margin: auto 0; +} +.acks.sheet.item .sheet-body .stats .form-group .form-fields.range .sep { + flex: 0 0 1px; + background: #7a7971; + margin: 4px 0; +} +.acks.sheet.item .sheet-body .stats .form-group.attack-type { + text-align: center; + padding: 2px; + font-size: 15px; +} +.acks.sheet.item .sheet-body .stats .form-group.attack-type a { + color: #969696; +} +.acks.sheet.item .sheet-body .stats .form-group.attack-type a.active, .acks.sheet.item .sheet-body .stats .form-group.attack-type a :hover { + color: rgba(0, 0, 0, 0.9); +} +.acks.sheet.item .sheet-body .stats .block-input { + display: flex; + flex-direction: column; + text-align: center; +} +.acks.sheet.item .sheet-body .stats.narrow .form-group input { + height: 18px; +} +.acks.sheet.item .sheet-body .description .editor { + height: 250px; +} +.acks.sheet.item .sheet-body .description .editor .editor-content { + padding: 0 5px; +} + +.acks.actor.monster { + min-height: 565px; + min-width: 460px; +} +.acks.actor.monster .header-details .summary .treasure-table { + text-align: center; +} +.acks.actor.monster .header-details .summary .check-field:hover .check { + display: block; +} +.acks.actor.monster .header-details .summary .check-field .check { + display: none; + line-height: 35px; + flex: 0 0 20px; + position: absolute; + font-size: 12px; +} +.acks.actor.monster .header-details .summary .check-field .check:hover { + color: rgba(0, 0, 0, 0.9); +} +.acks.actor.monster .sheet-body .editor { + height: 300px; +} +.acks.actor.monster .sheet-body .attributes-tab { + display: flex; + justify-content: space-around; + flex-direction: column; + height: 100%; +} +.acks.actor.monster .sheet-body .attributes-tab .attribute-row .attributes { + justify-content: space-between; +} +.acks.actor.monster .sheet-body .attributes-tab .attribute-row .attribute-group { + margin: 5px; +} +.acks.actor.monster .sheet-body .attributes-tab .attributes .attribute { + flex: 0 0 60px; +} +.acks.actor.monster .sheet-body .attributes-tab .attributes .attribute.health { + flex: 0 0 85px; +} +.acks.actor.monster .sheet-body .attributes-tab .attributes .attribute.saving-throw { + flex: 0 0 40px; +} +.acks.actor.monster .attributes .attribute.health { + position: relative; +} +.acks.actor.monster .attributes .attribute.health .attribute-name .hp-roll { + font-size: 12px; + position: absolute; + right: 5px; + top: 5px; + color: #d8d6c9; +} +.acks.actor.monster .attributes .attribute.health .attribute-name .hp-roll:hover { + color: white; +} +.acks.actor.monster .attribute-group .attacks-description { + margin: 2px; + padding: 0; + text-align: center; +} +.acks.actor.monster .attribute-group .attacks-description label { + color: #7a7971; + font-size: 10px; +} +.acks.actor.monster .panel.abilities .item-list .item-entry .item-pattern { + flex: 0 0 15px; + cursor: pointer; +} + +/* ----------------------------------------- */ +/* Sheet Styles */ +/* ----------------------------------------- */ + +/*# sourceMappingURL=acks.css.map */ diff --git a/src/acks.js b/src/acks.js index 4b2de1b..afa8a73 100644 --- a/src/acks.js +++ b/src/acks.js @@ -1,18 +1,18 @@ // Import Modules -import { OseItemSheet } from "./module/item/item-sheet.js"; -import { OseActorSheetCharacter } from "./module/actor/character-sheet.js"; -import { OseActorSheetMonster } from "./module/actor/monster-sheet.js"; +import { AcksItemSheet } from "./module/item/item-sheet.js"; +import { AcksActorSheetCharacter } from "./module/actor/character-sheet.js"; +import { AcksActorSheetMonster } from "./module/actor/monster-sheet.js"; import { preloadHandlebarsTemplates } from "./module/preloadTemplates.js"; -import { OseActor } from "./module/actor/entity.js"; -import { OseItem } from "./module/item/entity.js"; -import { OSE } from "./module/config.js"; +import { AcksActor } from "./module/actor/entity.js"; +import { AcksItem } from "./module/item/entity.js"; +import { ACKS } from "./module/config.js"; import { registerSettings } from "./module/settings.js"; import { registerHelpers } from "./module/helpers.js"; import * as chat from "./module/chat.js"; import * as treasure from "./module/treasure.js"; import * as macros from "./module/macros.js"; import * as party from "./module/party.js"; -import { OseCombat } from "./module/combat.js"; +import { AcksCombat } from "./module/combat.js"; /* -------------------------------------------- */ /* Foundry VTT Initialization */ @@ -25,12 +25,12 @@ Hooks.once("init", async function () { */ CONFIG.Combat.initiative = { formula: "1d6 + @initiative.value", - decimals: 2, + decimals: 0, }; - CONFIG.OSE = OSE; + CONFIG.ACKS = ACKS; - game.ose = { + game.acks = { rollItemMacro: macros.rollItemMacro, }; @@ -40,21 +40,21 @@ Hooks.once("init", async function () { // Register custom system settings registerSettings(); - CONFIG.Actor.entityClass = OseActor; - CONFIG.Item.entityClass = OseItem; + CONFIG.Actor.entityClass = AcksActor; + CONFIG.Item.entityClass = AcksItem; // Register sheet application classes Actors.unregisterSheet("core", ActorSheet); - Actors.registerSheet("ose", OseActorSheetCharacter, { + Actors.registerSheet("acks", AcksActorSheetCharacter, { types: ["character"], makeDefault: true, }); - Actors.registerSheet("ose", OseActorSheetMonster, { + Actors.registerSheet("acks", AcksActorSheetMonster, { types: ["monster"], makeDefault: true, }); Items.unregisterSheet("core", ItemSheet); - Items.registerSheet("ose", OseItemSheet, { makeDefault: true }); + Items.registerSheet("acks", AcksItemSheet, { makeDefault: true }); await preloadHandlebarsTemplates(); }); @@ -66,19 +66,19 @@ Hooks.once("setup", function () { // Localize CONFIG objects once up-front const toLocalize = ["saves_short", "saves_long", "scores", "armor", "colors", "tags"]; for (let o of toLocalize) { - CONFIG.OSE[o] = Object.entries(CONFIG.OSE[o]).reduce((obj, e) => { + CONFIG.ACKS[o] = Object.entries(CONFIG.ACKS[o]).reduce((obj, e) => { obj[e[0]] = game.i18n.localize(e[1]); return obj; }, {}); } - for (let l of CONFIG.OSE.languages) { - CONFIG.OSE.languages[l] = game.i18n.localize(CONFIG.OSE.languages[l]); + for (let l of CONFIG.ACKS.languages) { + CONFIG.ACKS.languages[l] = game.i18n.localize(CONFIG.ACKS.languages[l]); } }); Hooks.once("ready", async () => { Hooks.on("hotbarDrop", (bar, data, slot) => - macros.createOseMacro(data, slot) + macros.createAcksMacro(data, slot) ); }); @@ -88,20 +88,20 @@ Hooks.on("renderSidebarTab", async (object, html) => { party.addControl(object, html); } if (object instanceof Settings) { - let gamesystem = html.find("#game-details"); + let gamesystem = html.find(".game-system"); // SRD Link - let ose = gamesystem.find('h4').last(); - ose.append(` SRD`); + let acks = gamesystem.find('h4').last(); + acks.append(` SRD`); // License text - const template = "systems/ose/templates/chat/license.html"; + const template = "systems/acks/templates/chat/license.html"; const rendered = await renderTemplate(template); - gamesystem.find(".system").append(rendered); + gamesystem.append(rendered); // User guide let docs = html.find("button[data-action='docs']"); const styling = "border:none;margin-right:2px;vertical-align:middle;margin-bottom:5px"; - $(``).insertAfter(docs); + $(``).insertAfter(docs); html.find('button[data-action="userguide"]').click(ev => { new FrameViewer('https://mesfoliesludiques.gitlab.io/foundryvtt-ose', {resizable: true}).render(true); }); @@ -109,23 +109,23 @@ Hooks.on("renderSidebarTab", async (object, html) => { }); Hooks.on("preCreateCombatant", (combat, data, options, id) => { - let init = game.settings.get("ose", "initiative"); + let init = game.settings.get("acks", "initiative"); if (init == "group") { - OseCombat.addCombatant(combat, data, options, id); + AcksCombat.addCombatant(combat, data, options, id); } }); Hooks.on("preUpdateCombatant", (combat, combatant, data) => { - OseCombat.updateCombatant(combat, combatant, data); + AcksCombat.updateCombatant(combat, combatant, data); }); Hooks.on("renderCombatTracker", (object, html, data) => { - OseCombat.format(object, html, data); + AcksCombat.format(object, html, data); }); Hooks.on("preUpdateCombat", async (combat, data, diff, id) => { - let init = game.settings.get("ose", "initiative"); - let reroll = game.settings.get("ose", "rerollInitiative"); + let init = game.settings.get("acks", "initiative"); + let reroll = game.settings.get("acks", "rerollInitiative"); if (!data.round) { return; } @@ -136,15 +136,15 @@ Hooks.on("preUpdateCombat", async (combat, data, diff, id) => { } else if (reroll === "keep") { return; } - } + } if (init === "group") { - OseCombat.rollInitiative(combat, data, diff, id); + AcksCombat.rollInitiative(combat, data, diff, id); } else if (init === "individual") { - OseCombat.individualInitiative(combat, data, diff, id); + AcksCombat.individualInitiative(combat, data, diff, id); } }); -Hooks.on("renderChatLog", (app, html, data) => OseItem.chatListeners(html)); +Hooks.on("renderChatLog", (app, html, data) => AcksItem.chatListeners(html)); Hooks.on("getChatLogEntryContext", chat.addChatMessageContextOptions); Hooks.on("renderChatMessage", chat.addChatMessageButtons); Hooks.on("renderRollTableConfig", treasure.augmentTable); diff --git a/src/lang/en.json b/src/lang/en.json index b886a8c..b48faab 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -1,280 +1,280 @@ { - "OSE.Edit": "Edit", - "OSE.Delete": "Delete", - "OSE.Show": "Show", - "OSE.Add": "Add", - "OSE.Ok": "Ok", - "OSE.Update": "Update", - "OSE.Reset": "Reset", - "OSE.Cancel": "Cancel", - "OSE.Roll": "Roll", - "OSE.Success": "Success", - "OSE.Failure": "Failure", + "ACKS.Edit": "Edit", + "ACKS.Delete": "Delete", + "ACKS.Show": "Show", + "ACKS.Add": "Add", + "ACKS.Ok": "Ok", + "ACKS.Update": "Update", + "ACKS.Reset": "Reset", + "ACKS.Cancel": "Cancel", + "ACKS.Roll": "Roll", + "ACKS.Success": "Success", + "ACKS.Failure": "Failure", - "OSE.dialog.tweaks": "Tweaks", - "OSE.dialog.partysheet": "Party Overview", - "OSE.dialog.selectActors": "Select PCs", - "OSE.dialog.dealXP": "Deal XP", - "OSE.dialog.generator": "Character generator", - "OSE.dialog.generateSaves": "Generate Saves", - "OSE.dialog.generateScores": "Generate Scores", - "OSE.dialog.generateScore": "Rolling {score} ({count})", + "ACKS.dialog.tweaks": "Tweaks", + "ACKS.dialog.partysheet": "Party Overview", + "ACKS.dialog.selectActors": "Select PCs", + "ACKS.dialog.dealXP": "Deal XP", + "ACKS.dialog.generator": "Character generator", + "ACKS.dialog.generateSaves": "Generate Saves", + "ACKS.dialog.generateScores": "Generate Scores", + "ACKS.dialog.generateScore": "Rolling {score} ({count})", - "OSE.Formula": "Formula", - "OSE.SitMod": "Situational Modifier", - "OSE.Modifier": "Modifier", - "OSE.Modifiers": "Modifiers", - "OSE.RollMode": "Roll Mode", - "OSE.RollExample": "e.g. +1d4", + "ACKS.Formula": "Formula", + "ACKS.SitMod": "Situational Modifier", + "ACKS.Modifier": "Modifier", + "ACKS.Modifiers": "Modifiers", + "ACKS.RollMode": "Roll Mode", + "ACKS.RollExample": "e.g. +1d4", - "OSE.roll.formula": "{label} roll", - "OSE.roll.appearing": "Appearing roll ({type})", - "OSE.roll.morale": "Morale check", - "OSE.roll.hd": "Hit Dice roll", - "OSE.roll.attacksWith": "Attacks with {name}", - "OSE.roll.attacks": "{name} attacks!", - "OSE.roll.save": "{save} Save", - "OSE.roll.details.save": "Roll 1d20 >= {save} for success", - "OSE.roll.attribute": "{attribute} check", - "OSE.roll.details.attribute": "Roll 1d20 <= {score} for success", - "OSE.roll.exploration": "{exploration} test", - "OSE.roll.details.exploration": "Roll 1d6 <= {expl} for success", - "OSE.roll.reaction": "Reaction roll", - "OSE.roll.initiative": "Group {group} rolls for Initiative!", - "OSE.roll.individualInit": "{name} rolls for Initiative!", + "ACKS.roll.formula": "{label} roll", + "ACKS.roll.appearing": "Appearing roll ({type})", + "ACKS.roll.morale": "Morale check", + "ACKS.roll.hd": "Hit Dice roll", + "ACKS.roll.attacksWith": "Attacks with {name}", + "ACKS.roll.attacks": "{name} attacks!", + "ACKS.roll.save": "{save} Save", + "ACKS.roll.details.save": "Roll 1d20 >= {save} for success", + "ACKS.roll.attribute": "{attribute} check", + "ACKS.roll.details.attribute": "Roll 1d20 <= {score} for success", + "ACKS.roll.exploration": "{exploration} test", + "ACKS.roll.details.exploration": "Roll 1d6 <= {expl} for success", + "ACKS.roll.reaction": "Reaction roll", + "ACKS.roll.initiative": "Group {group} rolls for Initiative!", + "ACKS.roll.individualInit": "{name} rolls for Initiative!", - "OSE.table.treasure.roll": "Roll Treasure", + "ACKS.table.treasure.roll": "Roll Treasure", - "OSE.details.name": "Name", - "OSE.details.class": "Class", - "OSE.details.title": "Title", - "OSE.details.alignment": "Alignment", - "OSE.details.level": "Level", - "OSE.details.experience.base": "Experience", - "OSE.details.experience.bonus": "Bonus Experience", - "OSE.details.experience.next": "Next level", - "OSE.details.experience.share": "Experience Share", - "OSE.details.experience.award": "XP Award", - "OSE.details.treasure": "Treasure type", - "OSE.details.treasureTable": "Table", - "OSE.details.treasureTableHint": "Drop a rollable table here to roll the monster treasure", - "OSE.details.morale": "Morale", - "OSE.details.reaction": "Reaction", - "OSE.details.appearing": "NA", + "ACKS.details.name": "Name", + "ACKS.details.class": "Class", + "ACKS.details.title": "Title", + "ACKS.details.alignment": "Alignment", + "ACKS.details.level": "Level", + "ACKS.details.experience.base": "Experience", + "ACKS.details.experience.bonus": "Bonus Experience", + "ACKS.details.experience.next": "Next level", + "ACKS.details.experience.share": "Experience Share", + "ACKS.details.experience.award": "XP Award", + "ACKS.details.treasure": "Treasure type", + "ACKS.details.treasureTable": "Table", + "ACKS.details.treasureTableHint": "Drop a rollable table here to roll the monster treasure", + "ACKS.details.morale": "Morale", + "ACKS.details.reaction": "Reaction", + "ACKS.details.appearing": "NA", - "OSE.Attack": "Attack", - "OSE.Encumbrance": "Encumbrance", + "ACKS.Attack": "Attack", + "ACKS.Encumbrance": "Encumbrance", - "OSE.Retainer": "Retainer", - "OSE.RetainerWage": "Wage", - "OSE.RetainerUpkeep": "Upkeep", - "OSE.Loyalty": "Loyalty Rating", - "OSE.LoyaltyShort": "LR", + "ACKS.Retainer": "Retainer", + "ACKS.RetainerWage": "Wage", + "ACKS.RetainerUpkeep": "Upkeep", + "ACKS.Loyalty": "Loyalty Rating", + "ACKS.LoyaltyShort": "LR", - "OSE.scores.str.long": "Strength", - "OSE.scores.str.short": "STR", - "OSE.scores.wis.long": "Wisdom", - "OSE.scores.wis.short": "WIS", - "OSE.scores.int.long": "Intelligence", - "OSE.scores.int.short": "INT", - "OSE.scores.dex.long": "Dexterity", - "OSE.scores.dex.short": "DEX", - "OSE.scores.con.long": "Constitution", - "OSE.scores.con.short": "CON", - "OSE.scores.cha.long": "Charisma", - "OSE.scores.cha.short": "CHA", + "ACKS.scores.str.long": "Strength", + "ACKS.scores.str.short": "STR", + "ACKS.scores.wis.long": "Wisdom", + "ACKS.scores.wis.short": "WIS", + "ACKS.scores.int.long": "Intelligence", + "ACKS.scores.int.short": "INT", + "ACKS.scores.dex.long": "Dexterity", + "ACKS.scores.dex.short": "DEX", + "ACKS.scores.con.long": "Constitution", + "ACKS.scores.con.short": "CON", + "ACKS.scores.cha.long": "Charisma", + "ACKS.scores.cha.short": "CHA", - "OSE.saves.death.short": "D", - "OSE.saves.death.long": "Death Poison", - "OSE.saves.wand.short": "W", - "OSE.saves.wand.long": "Wands", - "OSE.saves.paralysis.short": "P", - "OSE.saves.paralysis.long": "Paralysis Petrify", - "OSE.saves.breath.short": "B", - "OSE.saves.breath.long": "Breath Attacks", - "OSE.saves.spell.short": "S", - "OSE.saves.spell.long": "Spells Rods Staves", - "OSE.saves.magic.long": "Bonus vs Magic", - "OSE.saves.magic.short": "vs Magic", + "ACKS.saves.death.short": "D", + "ACKS.saves.death.long": "Poison & Death", + "ACKS.saves.wand.short": "W", + "ACKS.saves.wand.long": "Staffs & Wands", + "ACKS.saves.paralysis.short": "P", + "ACKS.saves.paralysis.long": "Paralysis & Petrify", + "ACKS.saves.breath.short": "B", + "ACKS.saves.breath.long": "Blast & Breath", + "ACKS.saves.spell.short": "S", + "ACKS.saves.spell.long": "Spells", + "ACKS.saves.magic.long": "Bonus vs Magic", + "ACKS.saves.magic.short": "vs Magic", - "OSE.Health": "Hit Points", - "OSE.HealthMax": "Maximum Hit Points", - "OSE.HealthShort": "HP", - "OSE.HitDice": "Hit Dice", - "OSE.HitDiceShort": "HD", + "ACKS.Health": "Hit Points", + "ACKS.HealthMax": "Maximum Hit Points", + "ACKS.HealthShort": "HP", + "ACKS.HitDice": "Hit Dice", + "ACKS.HitDiceShort": "HD", - "OSE.movement.base": "Movement Rate", - "OSE.movement.short": "MV", - "OSE.movement.details": "Movement Details", - "OSE.movement.encounter.long": "Encounter Movement Rate", - "OSE.movement.encounter.short": "En", - "OSE.movement.overland.long": "Overland Movement Rate", - "OSE.movement.overland.short": "Ov", - "OSE.movement.exploration.short": "Ex", - "OSE.movement.exploration.long": "Exploration Movement Rate", + "ACKS.movement.base": "Movement Rate", + "ACKS.movement.short": "MV", + "ACKS.movement.details": "Movement Details", + "ACKS.movement.encounter.long": "Encounter Movement Rate", + "ACKS.movement.encounter.short": "En", + "ACKS.movement.overland.long": "Overland Movement Rate", + "ACKS.movement.overland.short": "Ov", + "ACKS.movement.exploration.short": "Ex", + "ACKS.movement.exploration.long": "Exploration Movement Rate", - "OSE.ArmorClassNaked": "Naked Armor Class", - "OSE.ArmorClass": "Armor Class", - "OSE.ArmorClassShort": "AC", - "OSE.AscArmorClassShort": "AAC", - "OSE.ArmorClassBonus": "Armor Class Bonus", - "OSE.Thac0": "THAC0", - "OSE.ABShort": "AB", - "OSE.AB": "Attack Bonus", - "OSE.MeleeShort": "MEL", - "OSE.Melee": "Melee", - "OSE.MeleeBonus": "Melee Bonus", - "OSE.MissileShort": "MIS", - "OSE.Missile": "Missile", - "OSE.MissileBonus": "Missile Bonus", - "OSE.Initiative": "Initiative", - "OSE.InitiativeBonus": "Initiative Bonus", - "OSE.InitiativeShort": "INIT", - "OSE.Attacks": "Attacks Usable per Round", - "OSE.AttacksShort": "ATT", - "OSE.Damage": "Damage", - "OSE.Spellcaster": "Spellcaster", + "ACKS.ArmorClassNaked": "Naked Armor Class", + "ACKS.ArmorClass": "Armor Class", + "ACKS.ArmorClassShort": "AC", + "ACKS.AscArmorClassShort": "AAC", + "ACKS.ArmorClassBonus": "Armor Class Bonus", + "ACKS.Thac0": "THAC0", + "ACKS.ABShort": "AB", + "ACKS.AB": "Attack Bonus", + "ACKS.MeleeShort": "MEL", + "ACKS.Melee": "Melee", + "ACKS.MeleeBonus": "Melee Bonus", + "ACKS.MissileShort": "MIS", + "ACKS.Missile": "Missile", + "ACKS.MissileBonus": "Missile Bonus", + "ACKS.Initiative": "Initiative", + "ACKS.InitiativeBonus": "Initiative Bonus", + "ACKS.InitiativeShort": "INIT", + "ACKS.Attacks": "Attacks Usable per Round", + "ACKS.AttacksShort": "ATT", + "ACKS.Damage": "Damage", + "ACKS.Spellcaster": "Spellcaster", - "OSE.Language": "Language", - "OSE.SpokenLanguages": "Spoken Languages", - "OSE.Literacy": "Literacy", - "OSE.Literate": "Literate", - "OSE.LiteracyBasic": "Basic", - "OSE.Illiterate": "Illiterate", - "OSE.NativeBroken": "Native (Broken)", - "OSE.Native": "Native", - "OSE.NativePlus1": "Native + 1", - "OSE.NativePlus2": "Native + 2", - "OSE.NativePlus3": "Native + 3", + "ACKS.Language": "Language", + "ACKS.SpokenLanguages": "Spoken Languages", + "ACKS.Literacy": "Literacy", + "ACKS.Literate": "Literate", + "ACKS.LiteracyBasic": "Basic", + "ACKS.Illiterate": "Illiterate", + "ACKS.NativeBroken": "Native (Broken)", + "ACKS.Native": "Native", + "ACKS.NativePlus1": "Native + 1", + "ACKS.NativePlus2": "Native + 2", + "ACKS.NativePlus3": "Native + 3", - "OSE.NPCReaction": "NPC Reaction", - "OSE.RetainersMax": "#Retainers", + "ACKS.NPCReaction": "NPC Reaction", + "ACKS.RetainersMax": "#Retainers", - "OSE.category.saves": "Saves", - "OSE.category.attributes": "Attributes", - "OSE.category.inventory": "Inventory", - "OSE.category.abilities": "Abilities", - "OSE.category.spells": "Spells", - "OSE.category.notes": "Notes", - "OSE.category.languages": "Languages", - "OSE.category.description": "Description", - "OSE.category.equipment": "Equipment", + "ACKS.category.saves": "Saves", + "ACKS.category.attributes": "Attributes", + "ACKS.category.inventory": "Inventory", + "ACKS.category.abilities": "Abilities", + "ACKS.category.spells": "Spells", + "ACKS.category.notes": "Notes", + "ACKS.category.languages": "Languages", + "ACKS.category.description": "Description", + "ACKS.category.equipment": "Equipment", - "OSE.Setting.Initiative": "Initiative", - "OSE.Setting.InitiativeHint": "Grouped or individual initiative.", - "OSE.Setting.InitiativeIndividual": "Individual initiative", - "OSE.Setting.InitiativeGroup": "Grouped Initiative", - "OSE.Setting.RerollInitiative": "Initiative persistence", - "OSE.Setting.RerollInitiativeHint": "Keeps, resets or rerolls initiative each round", - "OSE.Setting.InitiativeKeep": "Keep for each round", - "OSE.Setting.InitiativeReroll": "Reroll each round", - "OSE.Setting.InitiativeReset": "Reset each round", - "OSE.Setting.AscendingAC": "Ascending Armor Class", - "OSE.Setting.AscendingACHint": "The more the better", - "OSE.Setting.Morale": "Enable monsters Morale Rating", - "OSE.Setting.MoraleHint": "Morale Rating is shown on monster sheets", - "OSE.Setting.Encumbrance": "Encumbrance", - "OSE.Setting.EncumbranceHint": "Choose the way encumbrance is calculated", - "OSE.Setting.EncumbranceDisabled": "Disabled", - "OSE.Setting.EncumbranceBasic": "Basic", - "OSE.Setting.EncumbranceDetailed": "Detailed", - "OSE.Setting.EncumbranceComplete": "Complete", - "OSE.Setting.MovementAuto": "Calculate Movement", - "OSE.Setting.SignificantTreasure": "Significant Treasure Weight", - "OSE.Setting.SignificantTreasureHint": "Weight at which treasure will reduce the movement, only useful for basic encumbrance", + "ACKS.Setting.Initiative": "Initiative", + "ACKS.Setting.InitiativeHint": "Grouped or individual initiative.", + "ACKS.Setting.InitiativeIndividual": "Individual initiative", + "ACKS.Setting.InitiativeGroup": "Grouped Initiative", + "ACKS.Setting.RerollInitiative": "Initiative persistence", + "ACKS.Setting.RerollInitiativeHint": "Keeps, resets or rerolls initiative each round", + "ACKS.Setting.InitiativeKeep": "Keep for each round", + "ACKS.Setting.InitiativeReroll": "Reroll each round", + "ACKS.Setting.InitiativeReset": "Reset each round", + "ACKS.Setting.AscendingAC": "Ascending Armor Class", + "ACKS.Setting.AscendingACHint": "The more the better", + "ACKS.Setting.Morale": "Enable monsters Morale Rating", + "ACKS.Setting.MoraleHint": "Morale Rating is shown on monster sheets", + "ACKS.Setting.Encumbrance": "Encumbrance", + "ACKS.Setting.EncumbranceHint": "Choose the way encumbrance is calculated", + "ACKS.Setting.EncumbranceDisabled": "Disabled", + "ACKS.Setting.EncumbranceBasic": "Basic", + "ACKS.Setting.EncumbranceDetailed": "Detailed", + "ACKS.Setting.EncumbranceComplete": "Complete", + "ACKS.Setting.MovementAuto": "Calculate Movement", + "ACKS.Setting.SignificantTreasure": "Significant Treasure Weight", + "ACKS.Setting.SignificantTreasureHint": "Weight at which treasure will reduce the movement, only useful for basic encumbrance", - "OSE.items.Equip": "Equip", - "OSE.items.Unequip": "Unequip", - "OSE.items.Misc": "Misc", - "OSE.items.Weapons": "Weapons", - "OSE.items.Treasure": "Treasure", - "OSE.items.Armors": "Armors", - "OSE.items.Weight": "Wgt.", - "OSE.items.Qualities": "Qualities", - "OSE.items.Notes": "Notes", - "OSE.items.Cost": "Cost", - "OSE.items.Quantity": "Qt.", - "OSE.items.Roll": "Roll", - "OSE.items.BlindRoll": "Blind", - "OSE.items.RollTarget": "Target", - "OSE.items.RollType": "Type", - "OSE.items.Damage": "Damage", - "OSE.items.ArmorAC": "AC", - "OSE.items.ArmorAAC": "AAC", - "OSE.items.Bonus": "Bonus", - "OSE.items.AtkBonus": "Attack Bonus", - "OSE.items.roundAttacks": "Attacks Spent this Round", - "OSE.items.roundAttacksMax": "Maximum Attacks per Round", - "OSE.items.resetAttacks": "Reset all Attacks per Round", - "OSE.items.hasShield": "Has a Shield bonus", - "OSE.items.typeTag": "Type a comma separated list of tag e.g 'Melee,Missile (5’–10’ / 11’–20’ / 21’–30’)' and press ENTER", - "OSE.items.enterTag": "Tags", - "OSE.items.pattern": "Attack pattern marker", + "ACKS.items.Equip": "Equip", + "ACKS.items.Unequip": "Unequip", + "ACKS.items.Misc": "Misc", + "ACKS.items.Weapons": "Weapons", + "ACKS.items.Treasure": "Treasure", + "ACKS.items.Armors": "Armors", + "ACKS.items.Weight": "Wgt.", + "ACKS.items.Qualities": "Qualities", + "ACKS.items.Notes": "Notes", + "ACKS.items.Cost": "Cost", + "ACKS.items.Quantity": "Qt.", + "ACKS.items.Roll": "Roll", + "ACKS.items.BlindRoll": "Blind", + "ACKS.items.RollTarget": "Target", + "ACKS.items.RollType": "Type", + "ACKS.items.Damage": "Damage", + "ACKS.items.ArmorAC": "AC", + "ACKS.items.ArmorAAC": "AAC", + "ACKS.items.Bonus": "Bonus", + "ACKS.items.AtkBonus": "Attack Bonus", + "ACKS.items.roundAttacks": "Attacks Spent this Round", + "ACKS.items.roundAttacksMax": "Maximum Attacks per Round", + "ACKS.items.resetAttacks": "Reset all Attacks per Round", + "ACKS.items.hasShield": "Has a Shield bonus", + "ACKS.items.typeTag": "Type a comma separated list of tag e.g 'Melee,Missile (5’–10’ / 11’–20’ / 21’–30’)' and press ENTER", + "ACKS.items.enterTag": "Tags", + "ACKS.items.pattern": "Attack pattern marker", - "OSE.items.Range": "Range", - "OSE.items.Melee": "Melee", - "OSE.items.Missile": "Missile", - "OSE.items.Slow": "Slow", - "OSE.items.TwoHanded": "Two-handed", - "OSE.items.Blunt": "Blunt", - "OSE.items.Brace": "Brace", - "OSE.items.Splash": "Splash weapon", - "OSE.items.Reload": "Reload", - "OSE.items.Charge": "Charge", + "ACKS.items.Range": "Range", + "ACKS.items.Melee": "Melee", + "ACKS.items.Missile": "Missile", + "ACKS.items.Slow": "Slow", + "ACKS.items.TwoHanded": "Two-handed", + "ACKS.items.Blunt": "Blunt", + "ACKS.items.Brace": "Brace", + "ACKS.items.Splash": "Splash weapon", + "ACKS.items.Reload": "Reload", + "ACKS.items.Charge": "Charge", - "OSE.armor.type": "Armor Type", - "OSE.armor.unarmored": "Unarmored", - "OSE.armor.light": "Light", - "OSE.armor.heavy": "Heavy", - "OSE.armor.shield": "Shield", + "ACKS.armor.type": "Armor Type", + "ACKS.armor.unarmored": "Unarmored", + "ACKS.armor.light": "Light", + "ACKS.armor.heavy": "Heavy", + "ACKS.armor.shield": "Shield", - "OSE.spells.spend": "{speaker} is casting {name}!", - "OSE.spells.Memorized": "Memorized", - "OSE.spells.Cast": "Cast", - "OSE.spells.Range": "Range", - "OSE.spells.Slots": "Slots", - "OSE.spells.Class": "Class", - "OSE.spells.Duration": "Duration", - "OSE.spells.Level": "Level", - "OSE.spells.Save": "Save", - "OSE.spells.ResetSlots": "Reset Spell slots", + "ACKS.spells.spend": "{speaker} is casting {name}!", + "ACKS.spells.Memorized": "Memorized", + "ACKS.spells.Cast": "Cast", + "ACKS.spells.Range": "Range", + "ACKS.spells.Slots": "Slots", + "ACKS.spells.Class": "Class", + "ACKS.spells.Duration": "Duration", + "ACKS.spells.Level": "Level", + "ACKS.spells.Save": "Save", + "ACKS.spells.ResetSlots": "Reset Spell slots", - "OSE.abilities.Requirements": "Requirements", + "ACKS.abilities.Requirements": "Requirements", - "OSE.exploration.ld.long": "Listen at Door", - "OSE.exploration.ld.short": "Listen Door", - "OSE.exploration.ld.abrev": "LD", - "OSE.exploration.od.long": "Open Stuck Door", - "OSE.exploration.od.short": "Open Door", - "OSE.exploration.od.abrev": "OD", - "OSE.exploration.sd.long": "Find Secret Door", - "OSE.exploration.sd.short": "Secret Door", - "OSE.exploration.sd.abrev": "SD", - "OSE.exploration.ft.long": "Find Room Trap", - "OSE.exploration.ft.short": "Find Trap", - "OSE.exploration.ft.abrev": "FT", + "ACKS.exploration.ld.long": "Listen at Door", + "ACKS.exploration.ld.short": "Listen Door", + "ACKS.exploration.ld.abrev": "LD", + "ACKS.exploration.od.long": "Open Stuck Door", + "ACKS.exploration.od.short": "Open Door", + "ACKS.exploration.od.abrev": "OD", + "ACKS.exploration.sd.long": "Find Secret Door", + "ACKS.exploration.sd.short": "Secret Door", + "ACKS.exploration.sd.abrev": "SD", + "ACKS.exploration.ft.long": "Find Room Trap", + "ACKS.exploration.ft.short": "Find Trap", + "ACKS.exploration.ft.abrev": "FT", - "OSE.messages.GetExperience": "{name} gained {value} experience points!", - "OSE.messages.AttackSuccess": "Hits AC {result}! ({bonus})", - "OSE.messages.AttackAscendingSuccess": "Hits AC {result}!", - "OSE.messages.AttackFailure": "Attack fails ({bonus})", - "OSE.messages.AttackAscendingFailure": "Attack fails", - "OSE.messages.InflictsDamage": "Inflicts damage!", - "OSE.messages.applyDamage": "Apply Damage", - "OSE.messages.applyHealing": "Apply Healing", + "ACKS.messages.GetExperience": "{name} gained {value} experience points!", + "ACKS.messages.AttackSuccess": "Hits AC {result}! ({bonus})", + "ACKS.messages.AttackAscendingSuccess": "Hits AC {result}!", + "ACKS.messages.AttackFailure": "Attack hits AC {result} and misses ({bonus})", + "ACKS.messages.AttackAscendingFailure": "Attack hits AC {result} and misses", + "ACKS.messages.InflictsDamage": "Inflicts damage!", + "ACKS.messages.applyDamage": "Apply Damage", + "ACKS.messages.applyHealing": "Apply Healing", - "OSE.colors.green": "Green", - "OSE.colors.red": "Red", - "OSE.colors.yellow": "Yellow", - "OSE.colors.purple": "Purple", - "OSE.colors.blue": "Blue", - "OSE.colors.orange": "Orange", - "OSE.colors.white": "White", + "ACKS.colors.green": "Green", + "ACKS.colors.red": "Red", + "ACKS.colors.yellow": "Yellow", + "ACKS.colors.purple": "Purple", + "ACKS.colors.blue": "Blue", + "ACKS.colors.orange": "Orange", + "ACKS.colors.white": "White", - "OSE.reaction.check": "Reaction Check", - "OSE.reaction.Hostile": "{name} is Hostile", - "OSE.reaction.Unfriendly": "{name} is Unfriendly", - "OSE.reaction.Neutral": "{name} is Neutral", - "OSE.reaction.Indifferent": "{name} is Indifferent", - "OSE.reaction.Friendly": "{name} is Friendly" + "ACKS.reaction.check": "Reaction Check", + "ACKS.reaction.Hostile": "{name} is Hostile", + "ACKS.reaction.Unfriendly": "{name} is Unfriendly", + "ACKS.reaction.Neutral": "{name} is Neutral", + "ACKS.reaction.Indifferent": "{name} is Indifferent", + "ACKS.reaction.Friendly": "{name} is Friendly" } diff --git a/src/lang/es.json b/src/lang/es.json index 3afb61c..70052cc 100644 --- a/src/lang/es.json +++ b/src/lang/es.json @@ -1,241 +1,241 @@ { - "OSE.Edit": "Editar", - "OSE.Delete": "Borrar", - "OSE.Show": "Ver", - "OSE.Add": "Añadir", - "OSE.Ok": "Ok", - "OSE.Reset": "Reinciar", - "OSE.Cancel": "Cancelar", - "OSE.Roll": "Tirada", - "OSE.Success": "Éxito", - "OSE.Failure": "Fallo", + "ACKS.Edit": "Editar", + "ACKS.Delete": "Borrar", + "ACKS.Show": "Ver", + "ACKS.Add": "Añadir", + "ACKS.Ok": "Ok", + "ACKS.Reset": "Reinciar", + "ACKS.Cancel": "Cancelar", + "ACKS.Roll": "Tirada", + "ACKS.Success": "Éxito", + "ACKS.Failure": "Fallo", - "OSE.dialog.tweaks": "Ajustes", - "OSE.dialog.partysheet": "Party Sheet", + "ACKS.dialog.tweaks": "Ajustes", + "ACKS.dialog.partysheet": "Party Sheet", - "OSE.Formula": "Formula", - "OSE.SitMod": "Mod. Situational", - "OSE.Modifier": "Modificador", - "OSE.Modifiers": "Modificadors", - "OSE.RollMode": "Modo Tirada", - "OSE.RollExample": "ej. +1d4", + "ACKS.Formula": "Formula", + "ACKS.SitMod": "Mod. Situational", + "ACKS.Modifier": "Modificador", + "ACKS.Modifiers": "Modificadors", + "ACKS.RollMode": "Modo Tirada", + "ACKS.RollExample": "ej. +1d4", - "OSE.roll.formula": "{label} tirada", - "OSE.roll.appearing": "Aparición", - "OSE.roll.morale": "Moral tirada", - "OSE.roll.hd": "Tirada de Puntos de Golpe", - "OSE.roll.attacksWith": "Ataca con {name}", - "OSE.roll.attacks": "{name} ataca !", - "OSE.roll.save": "Salv. {save}", - "OSE.roll.details.save": "Tira 1d20 >= {save} para éxito", - "OSE.roll.attribute": "Prueba de {attribute}", - "OSE.roll.details.attribute": "Tira 1d20 <= {score} para éxito", - "OSE.roll.exploration": "Prueba de {exploration}", - "OSE.roll.details.exploration": "Tirar 1d6 <= {expl} para éxito", - "OSE.roll.reaction": "Tirada de Reacción", + "ACKS.roll.formula": "{label} tirada", + "ACKS.roll.appearing": "Aparición", + "ACKS.roll.morale": "Moral tirada", + "ACKS.roll.hd": "Tirada de Puntos de Golpe", + "ACKS.roll.attacksWith": "Ataca con {name}", + "ACKS.roll.attacks": "{name} ataca !", + "ACKS.roll.save": "Salv. {save}", + "ACKS.roll.details.save": "Tira 1d20 >= {save} para éxito", + "ACKS.roll.attribute": "Prueba de {attribute}", + "ACKS.roll.details.attribute": "Tira 1d20 <= {score} para éxito", + "ACKS.roll.exploration": "Prueba de {exploration}", + "ACKS.roll.details.exploration": "Tirar 1d6 <= {expl} para éxito", + "ACKS.roll.reaction": "Tirada de Reacción", - "OSE.table.treasure.roll": "Roll Treasure", + "ACKS.table.treasure.roll": "Roll Treasure", - "OSE.details.name": "Nombre", - "OSE.details.class": "Clase", - "OSE.details.title": "Titulo", - "OSE.details.alignment": "Alineamiento", - "OSE.details.level": "Nivel", - "OSE.details.experience.base": "Experiencia", - "OSE.details.experience.bonus": "Bonus Experiencia", - "OSE.details.experience.next": "Siguiente nivel", - "OSE.details.experience.award": "Premio EXP", - "OSE.details.treasure": "Tipo de Tesoro", - "OSE.details.treasureTable": "Tabla", - "OSE.details.treasureTableHint": "Arrastra una tabla aquí para tirar el tesoro del monstruo", - "OSE.details.morale": "Moral", - "OSE.details.reaction": "Reacción", - "OSE.details.appearing": "NA", + "ACKS.details.name": "Nombre", + "ACKS.details.class": "Clase", + "ACKS.details.title": "Titulo", + "ACKS.details.alignment": "Alineamiento", + "ACKS.details.level": "Nivel", + "ACKS.details.experience.base": "Experiencia", + "ACKS.details.experience.bonus": "Bonus Experiencia", + "ACKS.details.experience.next": "Siguiente nivel", + "ACKS.details.experience.award": "Premio EXP", + "ACKS.details.treasure": "Tipo de Tesoro", + "ACKS.details.treasureTable": "Tabla", + "ACKS.details.treasureTableHint": "Arrastra una tabla aquí para tirar el tesoro del monstruo", + "ACKS.details.morale": "Moral", + "ACKS.details.reaction": "Reacción", + "ACKS.details.appearing": "NA", - "OSE.Attack": "Ataque", - "OSE.Encumbrance": "Carga", + "ACKS.Attack": "Ataque", + "ACKS.Encumbrance": "Carga", - "OSE.Retainer": "Seguidores", - "OSE.RetainerWage": "Salario", - "OSE.RetainerUpkeep": "Mantenimiento", - "OSE.Loyalty": "Puntuación Lealtad", - "OSE.LoyaltyShort": "PL", + "ACKS.Retainer": "Seguidores", + "ACKS.RetainerWage": "Salario", + "ACKS.RetainerUpkeep": "Mantenimiento", + "ACKS.Loyalty": "Puntuación Lealtad", + "ACKS.LoyaltyShort": "PL", - "OSE.scores.str.long": "Fuerza", - "OSE.scores.str.short": "FUE", - "OSE.scores.wis.long": "Sabiduría", - "OSE.scores.wis.short": "SAB", - "OSE.scores.int.long": "Inteligencia", - "OSE.scores.int.short": "INT", - "OSE.scores.dex.long": "Destreza", - "OSE.scores.dex.short": "DES", - "OSE.scores.con.long": "Constitucion", - "OSE.scores.con.short": "CON", - "OSE.scores.cha.long": "Carisma", - "OSE.scores.cha.short": "CAR", + "ACKS.scores.str.long": "Fuerza", + "ACKS.scores.str.short": "FUE", + "ACKS.scores.wis.long": "Sabiduría", + "ACKS.scores.wis.short": "SAB", + "ACKS.scores.int.long": "Inteligencia", + "ACKS.scores.int.short": "INT", + "ACKS.scores.dex.long": "Destreza", + "ACKS.scores.dex.short": "DES", + "ACKS.scores.con.long": "Constitucion", + "ACKS.scores.con.short": "CON", + "ACKS.scores.cha.long": "Carisma", + "ACKS.scores.cha.short": "CAR", - "OSE.saves.death.short": "M", - "OSE.saves.death.long": "Veneno o Muerte", - "OSE.saves.wand.short": "V", - "OSE.saves.wand.long": "Varitas mágicas", - "OSE.saves.paralysis.short": "P", - "OSE.saves.paralysis.long": "Petrificación o Parálisis", - "OSE.saves.breath.short": "A", - "OSE.saves.breath.long": "Aliento de Dragón", - "OSE.saves.spell.short": "C", - "OSE.saves.spell.long": "Sort. Varas Báculos", - "OSE.saves.magic.long": "Bonificación vs Magia", + "ACKS.saves.death.short": "M", + "ACKS.saves.death.long": "Veneno o Muerte", + "ACKS.saves.wand.short": "V", + "ACKS.saves.wand.long": "Varitas mágicas", + "ACKS.saves.paralysis.short": "P", + "ACKS.saves.paralysis.long": "Petrificación o Parálisis", + "ACKS.saves.breath.short": "A", + "ACKS.saves.breath.long": "Aliento de Dragón", + "ACKS.saves.spell.short": "C", + "ACKS.saves.spell.long": "Sort. Varas Báculos", + "ACKS.saves.magic.long": "Bonificación vs Magia", - "OSE.Health": "Puntos de Golpes", - "OSE.HealthMax": "Puntos de Golpes Máximos", - "OSE.HealthShort": "PG", - "OSE.HitDice": "Puntos de Golpe", - "OSE.HitDiceShort": "DG", + "ACKS.Health": "Puntos de Golpes", + "ACKS.HealthMax": "Puntos de Golpes Máximos", + "ACKS.HealthShort": "PG", + "ACKS.HitDice": "Puntos de Golpe", + "ACKS.HitDiceShort": "DG", - "OSE.movement.base": "Movimiento", - "OSE.movement.short": "MV", - "OSE.movement.details": "Detalles de Movimiento", - "OSE.movement.encounter.long": "Combate", - "OSE.movement.encounter.short": "Co", - "OSE.movement.overland.long": "Base", - "OSE.movement.overland.short": "Ba", - "OSE.movement.exploration.short": "Ex", - "OSE.movement.exploration.long": "Exploration Movement Rate", + "ACKS.movement.base": "Movimiento", + "ACKS.movement.short": "MV", + "ACKS.movement.details": "Detalles de Movimiento", + "ACKS.movement.encounter.long": "Combate", + "ACKS.movement.encounter.short": "Co", + "ACKS.movement.overland.long": "Base", + "ACKS.movement.overland.short": "Ba", + "ACKS.movement.exploration.short": "Ex", + "ACKS.movement.exploration.long": "Exploration Movement Rate", - "OSE.ArmorClassNaked": "Sin Armadura", - "OSE.ArmorClass": "Clase de Armadura", - "OSE.ArmorClassShort": "CA", - "OSE.AscArmorClassShort": "CAA", - "OSE.Thac0": "GAC0", - "OSE.ABShort": "BA", - "OSE.AB": "Bono Ataque", - "OSE.MeleeShort": "CC", - "OSE.Melee": "Cuerpo a Cuerpo", - "OSE.MeleeBonus": "Bono CC", - "OSE.MissileShort": "DIS", - "OSE.Missile": "Distancia", - "OSE.MissileBonus": "Bono Distancia", - "OSE.Initiative": "Iniciativa", - "OSE.InitiativeBonus": "Bonificador Iniciativa", - "OSE.InitiativeShort": "INI", - "OSE.Attacks": "Ataques usables por Round", - "OSE.AttacksShort": "ATQ", - "OSE.Damage": "Daño", - "OSE.Spellcaster": "Lanzador Conjuros", + "ACKS.ArmorClassNaked": "Sin Armadura", + "ACKS.ArmorClass": "Clase de Armadura", + "ACKS.ArmorClassShort": "CA", + "ACKS.AscArmorClassShort": "CAA", + "ACKS.Thac0": "GAC0", + "ACKS.ABShort": "BA", + "ACKS.AB": "Bono Ataque", + "ACKS.MeleeShort": "CC", + "ACKS.Melee": "Cuerpo a Cuerpo", + "ACKS.MeleeBonus": "Bono CC", + "ACKS.MissileShort": "DIS", + "ACKS.Missile": "Distancia", + "ACKS.MissileBonus": "Bono Distancia", + "ACKS.Initiative": "Iniciativa", + "ACKS.InitiativeBonus": "Bonificador Iniciativa", + "ACKS.InitiativeShort": "INI", + "ACKS.Attacks": "Ataques usables por Round", + "ACKS.AttacksShort": "ATQ", + "ACKS.Damage": "Daño", + "ACKS.Spellcaster": "Lanzador Conjuros", - "OSE.Language": "Lenguaje", - "OSE.SpokenLanguages": "Lenguajes Hablados", - "OSE.Literacy": "Leer/Esc.", - "OSE.Literate": "Alfabetizado", - "OSE.LiteracyBasic": "Basico", - "OSE.Illiterate": "Analfabeto", - "OSE.NPCReaction": "Reacción NPC", - "OSE.RetainersMax": "#Seguidores", + "ACKS.Language": "Lenguaje", + "ACKS.SpokenLanguages": "Lenguajes Hablados", + "ACKS.Literacy": "Leer/Esc.", + "ACKS.Literate": "Alfabetizado", + "ACKS.LiteracyBasic": "Basico", + "ACKS.Illiterate": "Analfabeto", + "ACKS.NPCReaction": "Reacción NPC", + "ACKS.RetainersMax": "#Seguidores", - "OSE.category.attributes": "Atributos", - "OSE.category.inventory": "Inventario", - "OSE.category.abilities": "Habilidades", - "OSE.category.spells": "Conjuros", - "OSE.category.notes": "Notas", - "OSE.category.languages": "Lenguajes", - "OSE.category.description": "Descripción", - "OSE.category.equipment": "Equipo", + "ACKS.category.attributes": "Atributos", + "ACKS.category.inventory": "Inventario", + "ACKS.category.abilities": "Habilidades", + "ACKS.category.spells": "Conjuros", + "ACKS.category.notes": "Notas", + "ACKS.category.languages": "Lenguajes", + "ACKS.category.description": "Descripción", + "ACKS.category.equipment": "Equipo", - "OSE.Setting.IndividualInit": "Iniciativa Individual", - "OSE.Setting.IndividualInitHint": "La iniciativa se lanza por cada actor y se modifica por su puntuación de DES", - "OSE.Setting.AscendingAC": "Categoria de Armadura Ascendente", - "OSE.Setting.AscendingACHint": "En cuanto más mejor", - "OSE.Setting.Morale": "Activar puntuación de Moral para monstruos", - "OSE.Setting.MoraleHint": "La puntuación de moral se ve en las hojas de monstruo", - "OSE.Setting.Encumbrance": "Carga", - "OSE.Setting.EncumbranceHint": "Elige como se calcula la Carga", - "OSE.Setting.EncumbranceDisabled": "Disabled", - "OSE.Setting.EncumbranceBasic": "Básica", - "OSE.Setting.EncumbranceDetailed": "Detallada", - "OSE.Setting.MovementAuto": "Calcular Movimiento", - "OSE.Setting.SignificantTreasure": "Peso de tesoro significativo", - "OSE.Setting.SignificantTreasureHint": "Peso con el que el tesoro reducirá el movimiento, solo útil para el cálculo básico", + "ACKS.Setting.IndividualInit": "Iniciativa Individual", + "ACKS.Setting.IndividualInitHint": "La iniciativa se lanza por cada actor y se modifica por su puntuación de DES", + "ACKS.Setting.AscendingAC": "Categoria de Armadura Ascendente", + "ACKS.Setting.AscendingACHint": "En cuanto más mejor", + "ACKS.Setting.Morale": "Activar puntuación de Moral para monstruos", + "ACKS.Setting.MoraleHint": "La puntuación de moral se ve en las hojas de monstruo", + "ACKS.Setting.Encumbrance": "Carga", + "ACKS.Setting.EncumbranceHint": "Elige como se calcula la Carga", + "ACKS.Setting.EncumbranceDisabled": "Disabled", + "ACKS.Setting.EncumbranceBasic": "Básica", + "ACKS.Setting.EncumbranceDetailed": "Detallada", + "ACKS.Setting.MovementAuto": "Calcular Movimiento", + "ACKS.Setting.SignificantTreasure": "Peso de tesoro significativo", + "ACKS.Setting.SignificantTreasureHint": "Peso con el que el tesoro reducirá el movimiento, solo útil para el cálculo básico", - "OSE.items.Equip": "Equipar", - "OSE.items.Unequip": "Desequipar", - "OSE.items.Misc": "Misc", - "OSE.items.Weapons": "Armas", - "OSE.items.Treasure": "Tesoro", - "OSE.items.Armors": "Armaduras", - "OSE.items.Weight": "Peso", - "OSE.items.Qualities": "Cualidades", - "OSE.items.Notes": "Notas", - "OSE.items.Cost": "Coste", - "OSE.items.Quantity": "Qt.", - "OSE.items.Roll": "Tirada", - "OSE.items.BlindRoll": "Ciega", - "OSE.items.RollTarget": "Mira", - "OSE.items.RollType": "Tipo", - "OSE.items.Damage": "Daño", - "OSE.items.Melee": "CC", - "OSE.items.Missile": "Distancia", - "OSE.items.Slow": "Slow", - "OSE.items.ArmorAC": "CA", - "OSE.items.ArmorAAC": "CAA", - "OSE.items.Bonus": "Bonus", - "OSE.items.roundAttacks": "Ataques usados este Round", - "OSE.items.roundAttacksMax": "Máximo Ataques por Round", - "OSE.items.resetAttacks": "Reiniciar Ataques por Round", - "OSE.items.hasShield": "Tiene un bono de Escudo", - "OSE.items.typeTag": "Escriba una lista de etiquetas separadas por comas, por ejemplo 'Melee, Misile (5'-10' / 11'-20' / 21'-30')'", + "ACKS.items.Equip": "Equipar", + "ACKS.items.Unequip": "Desequipar", + "ACKS.items.Misc": "Misc", + "ACKS.items.Weapons": "Armas", + "ACKS.items.Treasure": "Tesoro", + "ACKS.items.Armors": "Armaduras", + "ACKS.items.Weight": "Peso", + "ACKS.items.Qualities": "Cualidades", + "ACKS.items.Notes": "Notas", + "ACKS.items.Cost": "Coste", + "ACKS.items.Quantity": "Qt.", + "ACKS.items.Roll": "Tirada", + "ACKS.items.BlindRoll": "Ciega", + "ACKS.items.RollTarget": "Mira", + "ACKS.items.RollType": "Tipo", + "ACKS.items.Damage": "Daño", + "ACKS.items.Melee": "CC", + "ACKS.items.Missile": "Distancia", + "ACKS.items.Slow": "Slow", + "ACKS.items.ArmorAC": "CA", + "ACKS.items.ArmorAAC": "CAA", + "ACKS.items.Bonus": "Bonus", + "ACKS.items.roundAttacks": "Ataques usados este Round", + "ACKS.items.roundAttacksMax": "Máximo Ataques por Round", + "ACKS.items.resetAttacks": "Reiniciar Ataques por Round", + "ACKS.items.hasShield": "Tiene un bono de Escudo", + "ACKS.items.typeTag": "Escriba una lista de etiquetas separadas por comas, por ejemplo 'Melee, Misile (5'-10' / 11'-20' / 21'-30')'", - "OSE.armor.type": "Tipo Armadura", - "OSE.armor.unarmored": "Sin Armadura", - "OSE.armor.light": "Ligera", - "OSE.armor.heavy": "Pesada", - "OSE.armor.shield": "Escudo", + "ACKS.armor.type": "Tipo Armadura", + "ACKS.armor.unarmored": "Sin Armadura", + "ACKS.armor.light": "Ligera", + "ACKS.armor.heavy": "Pesada", + "ACKS.armor.shield": "Escudo", - "OSE.spells.spend": "{speaker} esta lanzando {name}!", - "OSE.spells.Memorized": "Memorizado", - "OSE.spells.Cast": "Lanzar", - "OSE.spells.Range": "Alcance", - "OSE.spells.Slots": "Espacios", - "OSE.spells.Class": "Clase", - "OSE.spells.Duration": "Duración", - "OSE.spells.Level": "Nivel", - "OSE.spells.Save": "Salvación", - "OSE.spells.ResetSlots": "Reniciar Espacios de conjuro", + "ACKS.spells.spend": "{speaker} esta lanzando {name}!", + "ACKS.spells.Memorized": "Memorizado", + "ACKS.spells.Cast": "Lanzar", + "ACKS.spells.Range": "Alcance", + "ACKS.spells.Slots": "Espacios", + "ACKS.spells.Class": "Clase", + "ACKS.spells.Duration": "Duración", + "ACKS.spells.Level": "Nivel", + "ACKS.spells.Save": "Salvación", + "ACKS.spells.ResetSlots": "Reniciar Espacios de conjuro", - "OSE.abilities.Requirements": "Requisitos", + "ACKS.abilities.Requirements": "Requisitos", - "OSE.exploration.ld.long": "Escuchar Ruidos", - "OSE.exploration.ld.short": "Escuchar Ruidos", - "OSE.exploration.ld.abrev": "ER", - "OSE.exploration.od.long": "Abrir puertas", - "OSE.exploration.od.short": "Abrir puertas", - "OSE.exploration.od.abrev": "AP", - "OSE.exploration.sd.long": "Detectar puertas secretas", - "OSE.exploration.sd.short": "Puertas secretas", - "OSE.exploration.sd.abrev": "PS", - "OSE.exploration.ft.long": "Detectar trampas y fosos", - "OSE.exploration.ft.short": "Detectar trampas", - "OSE.exploration.ft.abrev": "DT", + "ACKS.exploration.ld.long": "Escuchar Ruidos", + "ACKS.exploration.ld.short": "Escuchar Ruidos", + "ACKS.exploration.ld.abrev": "ER", + "ACKS.exploration.od.long": "Abrir puertas", + "ACKS.exploration.od.short": "Abrir puertas", + "ACKS.exploration.od.abrev": "AP", + "ACKS.exploration.sd.long": "Detectar puertas secretas", + "ACKS.exploration.sd.short": "Puertas secretas", + "ACKS.exploration.sd.abrev": "PS", + "ACKS.exploration.ft.long": "Detectar trampas y fosos", + "ACKS.exploration.ft.short": "Detectar trampas", + "ACKS.exploration.ft.abrev": "DT", - "OSE.messages.GetExperience": "{name} ha ganado {value} puntos de experiencia!", - "OSE.messages.AttackSuccess": "Golpea CA {result}! ({bonus})", - "OSE.messages.AttackAscendingSuccess": "Golpea CA {result}!", - "OSE.messages.AttackFailure": "Falla el ataque ({bonus})", - "OSE.messages.InflictsDamage": "Inflinge daño!", - "OSE.ChatContextDamage": "Aplicar Daño", - "OSE.ChatContextHealing": "Aplicar Curación", + "ACKS.messages.GetExperience": "{name} ha ganado {value} puntos de experiencia!", + "ACKS.messages.AttackSuccess": "Golpea CA {result}! ({bonus})", + "ACKS.messages.AttackAscendingSuccess": "Golpea CA {result}!", + "ACKS.messages.AttackFailure": "Falla el ataque ({bonus})", + "ACKS.messages.InflictsDamage": "Inflinge daño!", + "ACKS.ChatContextDamage": "Aplicar Daño", + "ACKS.ChatContextHealing": "Aplicar Curación", - "OSE.colors.green": "Verde", - "OSE.colors.red": "Rojo", - "OSE.colors.yellow": "Amarillo", - "OSE.colors.purple": "Purpura", - "OSE.colors.blue": "Azul", - "OSE.colors.orange": "Naranja", - "OSE.colors.white": "Blanco", + "ACKS.colors.green": "Verde", + "ACKS.colors.red": "Rojo", + "ACKS.colors.yellow": "Amarillo", + "ACKS.colors.purple": "Purpura", + "ACKS.colors.blue": "Azul", + "ACKS.colors.orange": "Naranja", + "ACKS.colors.white": "Blanco", - "OSE.reaction.check": "Tirada de Reacción", - "OSE.reaction.Hostile": "{name} es Hostil", - "OSE.reaction.Unfriendly": "{name} es Antipático", - "OSE.reaction.Neutral": "{name} es Neutral", - "OSE.reaction.Indifferent": "{name} es Indifferente", - "OSE.reaction.Friendly": "{name} es Amistoso" + "ACKS.reaction.check": "Tirada de Reacción", + "ACKS.reaction.Hostile": "{name} es Hostil", + "ACKS.reaction.Unfriendly": "{name} es Antipático", + "ACKS.reaction.Neutral": "{name} es Neutral", + "ACKS.reaction.Indifferent": "{name} es Indifferente", + "ACKS.reaction.Friendly": "{name} es Amistoso" } diff --git a/src/lang/fr.json b/src/lang/fr.json index ce2eb4d..e947aaf 100644 --- a/src/lang/fr.json +++ b/src/lang/fr.json @@ -1,279 +1,275 @@ { - "OSE.Edit": "Modifier", - "OSE.Delete": "Supprimer", - "OSE.Show": "Montrer", - "OSE.Add": "Ajouter", - "OSE.Ok": "Ok", - "OSE.Update": "Mettre à jour", - "OSE.Reset": "Réinitialiser", - "OSE.Cancel": "Annuler", - "OSE.Roll": "Lancer", - "OSE.Success": "Succès", - "OSE.Failure": "Échec", + "ACKS.Edit": "Modifier", + "ACKS.Delete": "Supprimer", + "ACKS.Show": "Montrer", + "ACKS.Add": "Ajouter", + "ACKS.Ok": "Ok", + "ACKS.Update": "Mettre à jour", + "ACKS.Reset": "Réinitialiser", + "ACKS.Cancel": "Annuler", + "ACKS.Roll": "Lancer", + "ACKS.Success": "Succès", + "ACKS.Failure": "Échec", - "OSE.dialog.tweaks": "Ajuster", - "OSE.dialog.partysheet": "Fiche de Groupe", - "OSE.dialog.selectActors": "Choisir PJs", - "OSE.dialog.dealXP": "Donner XP", - "OSE.dialog.generator": "Générateur de personnage", - "OSE.dialog.generateSaves": "Générer les Sauvegardes", - "OSE.dialog.generateScores": "Générer les Scores", - "OSE.dialog.generateScore": "Création: {score} ({count})", + "ACKS.dialog.tweaks": "Ajuster", + "ACKS.dialog.partysheet": "Fiche de Groupe", + "ACKS.dialog.selectActors": "Choisir PJs", + "ACKS.dialog.dealXP": "Donner XP", + "ACKS.dialog.generator": "Générateur de personnage", + "ACKS.dialog.generateSaves": "Générer les Sauvegardes", + "ACKS.dialog.generateScores": "Générer les Scores", + "ACKS.dialog.generateScore": "Création: {score} ({count})", - "OSE.Formula": "Formule", - "OSE.SitMod": "Mod. de situation", - "OSE.Modifier": "Modificateur", - "OSE.Modifiers": "Modificateurs", - "OSE.RollMode": "Mode de Jet", - "OSE.RollExample": "ex. +1d4", + "ACKS.Formula": "Formule", + "ACKS.SitMod": "Mod. de situation", + "ACKS.Modifier": "Modificateur", + "ACKS.Modifiers": "Modificateurs", + "ACKS.RollMode": "Mode de Jet", + "ACKS.RollExample": "ex. +1d4", - "OSE.roll.formula": "Jet de {label}", - "OSE.roll.appearing": "Nombre Apparaissant", - "OSE.roll.morale": "Jet de Moral", - "OSE.roll.hd": "Lancer de Dé de Vie", - "OSE.roll.attacksWith": "Attaque avec {name}", - "OSE.roll.attacks": "{name} attaque !", - "OSE.roll.save": "Sauv. de {save}", - "OSE.roll.details.save": "Lancez 1d20 >= {save} pour réussir", - "OSE.roll.attribute": "Jet de {attribute}", - "OSE.roll.details.attribute": "Lancez 1d20 <= {score} pour réussir", - "OSE.roll.exploration": "Test de {exploration}", - "OSE.roll.details.exploration": "Lancez 1d6 <= {expl} pour réussir", - "OSE.roll.reaction": "Jet de Réaction", - "OSE.roll.initiative": "Le groupe {group} tire son Initiative !", - "OSE.roll.individualInit": "{name} tire son Initiative!", + "ACKS.roll.formula": "Jet de {label}", + "ACKS.roll.appearing": "Nombre Apparaissant", + "ACKS.roll.morale": "Jet de Moral", + "ACKS.roll.hd": "Lancer de Dé de Vie", + "ACKS.roll.attacksWith": "Attaque avec {name}", + "ACKS.roll.attacks": "{name} attaque !", + "ACKS.roll.save": "Sauv. de {save}", + "ACKS.roll.details.save": "Lancez 1d20 >= {save} pour réussir", + "ACKS.roll.attribute": "Jet de {attribute}", + "ACKS.roll.details.attribute": "Lancez 1d20 <= {score} pour réussir", + "ACKS.roll.exploration": "Test de {exploration}", + "ACKS.roll.details.exploration": "Lancez 1d6 <= {expl} pour réussir", + "ACKS.roll.reaction": "Jet de Réaction", + "ACKS.roll.initiative": "Le groupe {group} tire son Initiative !", + "ACKS.roll.individualInit": "{name} tire son Initiative!", - "OSE.table.treasure.roll": "Trésor Aléatoire", + "ACKS.table.treasure.roll": "Trésor Aléatoire", - "OSE.details.name": "Nom", - "OSE.details.class": "Classe", - "OSE.details.title": "Titre", - "OSE.details.alignment": "Alignement", - "OSE.details.level": "Niveau", - "OSE.details.experience.base": "Expérience", - "OSE.details.experience.bonus": "Ajustement d'XP", - "OSE.details.experience.next": "Prochain Niveau", - "OSE.details.experience.share": "Part d'Expérience", - "OSE.details.experience.award": "XP de Récompense", - "OSE.details.treasure": "Type de Trésor", - "OSE.details.treasureTable": "Table", - "OSE.details.treasureTableHint": "Lâchez une Table aléatoire pour la lier", - "OSE.details.morale": "Moral", - "OSE.details.reaction": "Réaction", - "OSE.details.appearing": "NA", + "ACKS.details.name": "Nom", + "ACKS.details.class": "Classe", + "ACKS.details.title": "Titre", + "ACKS.details.alignment": "Alignement", + "ACKS.details.level": "Niveau", + "ACKS.details.experience.base": "Expérience", + "ACKS.details.experience.bonus": "Ajustement d'XP", + "ACKS.details.experience.next": "Prochain Niveau", + "ACKS.details.experience.share": "Part d'Expérience", + "ACKS.details.experience.award": "XP de Récompense", + "ACKS.details.treasure": "Type de Trésor", + "ACKS.details.treasureTable": "Table", + "ACKS.details.treasureTableHint": "Lâchez une Table aléatoire pour la lier", + "ACKS.details.morale": "Moral", + "ACKS.details.reaction": "Réaction", + "ACKS.details.appearing": "NA", - "OSE.Attack": "Attaque", - "OSE.Encumbrance": "Encombrement", + "ACKS.Attack": "Attaque", + "ACKS.Encumbrance": "Encombrement", - "OSE.Retainer": "Suivant", - "OSE.RetainerWage": "Tarif", - "OSE.RetainerUpkeep": "Entretien", - "OSE.Loyalty": "Loyauté", - "OSE.LoyaltyShort": "LOY", + "ACKS.Retainer": "Suivant", + "ACKS.RetainerWage": "Tarif", + "ACKS.RetainerUpkeep": "Entretien", + "ACKS.Loyalty": "Loyauté", + "ACKS.LoyaltyShort": "LOY", - "OSE.scores.str.long": "Force", - "OSE.scores.str.short": "FOR", - "OSE.scores.wis.long": "Sagesse", - "OSE.scores.wis.short": "SAG", - "OSE.scores.int.long": "Intelligence", - "OSE.scores.int.short": "INT", - "OSE.scores.dex.long": "Dextérité", - "OSE.scores.dex.short": "DEX", - "OSE.scores.con.long": "Constitution", - "OSE.scores.con.short": "CON", - "OSE.scores.cha.long": "Charisme", - "OSE.scores.cha.short": "CHA", + "ACKS.scores.str.long": "Force", + "ACKS.scores.str.short": "FOR", + "ACKS.scores.wis.long": "Sagesse", + "ACKS.scores.wis.short": "SAG", + "ACKS.scores.int.long": "Intelligence", + "ACKS.scores.int.short": "INT", + "ACKS.scores.dex.long": "Dextérité", + "ACKS.scores.dex.short": "DEX", + "ACKS.scores.con.long": "Constitution", + "ACKS.scores.con.short": "CON", + "ACKS.scores.cha.long": "Charisme", + "ACKS.scores.cha.short": "CHA", - "OSE.saves.death.short": "MP", - "OSE.saves.death.long": "Mort Poison", - "OSE.saves.wand.short": "B", - "OSE.saves.wand.long": "Baguettes", - "OSE.saves.paralysis.short": "PP", - "OSE.saves.paralysis.long": "Paralysie Pétrification", - "OSE.saves.breath.short": "S", - "OSE.saves.breath.long": "Souffle", - "OSE.saves.spell.short": "SBB", - "OSE.saves.spell.long": "Sorts Bâtons", - "OSE.saves.magic.long": "Sauv. Magie", - "OSE.saves.magic.short": "vs Magie", + "ACKS.saves.death.short": "MP", + "ACKS.saves.death.long": "Mort Poison", + "ACKS.saves.wand.short": "B", + "ACKS.saves.wand.long": "Baguettes", + "ACKS.saves.paralysis.short": "PP", + "ACKS.saves.paralysis.long": "Paralysie Pétrification", + "ACKS.saves.breath.short": "S", + "ACKS.saves.breath.long": "Souffle", + "ACKS.saves.spell.short": "SBB", + "ACKS.saves.spell.long": "Sorts Bâtons", + "ACKS.saves.magic.long": "Sauv. Magie", - "OSE.Health": "Points de Vie", - "OSE.HealthMax": "Points de Vie Maximaux", - "OSE.HealthShort": "PV", - "OSE.HitDice": "Dé de Vie", - "OSE.HitDiceShort": "DV", + "ACKS.Health": "Points de Vie", + "ACKS.HealthMax": "Points de Vie Maximaux", + "ACKS.HealthShort": "PV", + "ACKS.HitDice": "Dé de Vie", + "ACKS.HitDiceShort": "DV", - "OSE.movement.base": "Déplacement", - "OSE.movement.short": "DP", - "OSE.movement.details": "Détail du Déplacement", - "OSE.movement.encounter.long": "Déplacement de Rencontre", - "OSE.movement.encounter.short": "Ren", - "OSE.movement.overland.long": "Déplacement en Extérieur", - "OSE.movement.overland.short": "Ext", - "OSE.movement.exploration.short": "Dp", - "OSE.movement.exploration.long": "Déplacement", + "ACKS.movement.base": "Déplacement", + "ACKS.movement.short": "DP", + "ACKS.movement.details": "Détail du Déplacement", + "ACKS.movement.encounter.long": "Déplacement de Rencontre", + "ACKS.movement.encounter.short": "Ren", + "ACKS.movement.overland.long": "Déplacement en Extérieur", + "ACKS.movement.overland.short": "Ext", + "ACKS.movement.exploration.short": "Dp", + "ACKS.movement.exploration.long": "Déplacement", - "OSE.ArmorClassNaked": "Sans Armure", - "OSE.ArmorClass": "Classe d'Armure", - "OSE.ArmorClassShort": "CA", - "OSE.AscArmorClassShort": "CAA", - "OSE.ArmorClassBonus": "Bonus d'Armure", - "OSE.Thac0": "THAC0", - "OSE.ABShort": "BBA", - "OSE.AB": "Bonus d'Attaque", - "OSE.MeleeShort": "MEL", - "OSE.Melee": "Mêlée", - "OSE.MeleeBonus": "Bonus de Mêlée", - "OSE.MissileShort": "DIS", - "OSE.Missile": "Distance", - "OSE.MissileBonus": "Bonus à Distance", - "OSE.Initiative": "Initiative", - "OSE.InitiativeBonus": "Bonus d'Initiative", - "OSE.InitiativeShort": "INIT", - "OSE.Attacks": "Attaques par Round", - "OSE.AttacksShort": "ATT", - "OSE.Damage": "Dégâts", - "OSE.Spellcaster": "Lanceur de Sort", + "ACKS.ArmorClassNaked": "Sans Armure", + "ACKS.ArmorClass": "Classe d'Armure", + "ACKS.ArmorClassShort": "CA", + "ACKS.AscArmorClassShort": "CAA", + "ACKS.ArmorClassBonus": "Bonus d'Armure", + "ACKS.Thac0": "THAC0", + "ACKS.ABShort": "BBA", + "ACKS.AB": "Bonus d'Attaque", + "ACKS.MeleeShort": "MEL", + "ACKS.Melee": "Mêlée", + "ACKS.MeleeBonus": "Bonus de Mêlée", + "ACKS.MissileShort": "DIS", + "ACKS.Missile": "Distance", + "ACKS.MissileBonus": "Bonus à Distance", + "ACKS.Initiative": "Initiative", + "ACKS.InitiativeBonus": "Bonus d'Initiative", + "ACKS.InitiativeShort": "INIT", + "ACKS.Attacks": "Attaques par Round", + "ACKS.AttacksShort": "ATT", + "ACKS.Damage": "Dégâts", + "ACKS.Spellcaster": "Lanceur de Sort", - "OSE.Language": "Langue", - "OSE.SpokenLanguages": "Langues parlées", - "OSE.Literacy": "Lire/Écrire", - "OSE.Literate": "Oui", - "OSE.LiteracyBasic": "Basique", - "OSE.Illiterate": "Non", - "OSE.NativeBroken": "Natale (Primitif)", - "OSE.Native": "Natale", - "OSE.NativePlus1": "Natale + 1", - "OSE.NativePlus2": "Natale + 2", - "OSE.NativePlus3": "Natale + 3", + "ACKS.Language": "Langue", + "ACKS.SpokenLanguages": "Langues parlées", + "ACKS.Literacy": "Lire/Écrire", + "ACKS.Literate": "Oui", + "ACKS.LiteracyBasic": "Basique", + "ACKS.Illiterate": "Non", + "ACKS.NativeBroken": "Natale (Primitif)", + "ACKS.Native": "Natale", + "ACKS.NativePlus1": "Natale + 1", + "ACKS.NativePlus2": "Natale + 2", + "ACKS.NativePlus3": "Natale + 3", - "OSE.NPCReaction": "Réaction", - "OSE.RetainersMax": "#Suivants", + "ACKS.NPCReaction": "Réaction", + "ACKS.RetainersMax": "#Suivants", - "OSE.category.saves": "Sauvegardes", - "OSE.category.attributes": "Stats", - "OSE.category.inventory": "Inventaire", - "OSE.category.abilities": "Aptitudes", - "OSE.category.spells": "Sorts", - "OSE.category.notes": "Notes", - "OSE.category.languages": "Langues", - "OSE.category.description": "Descriptions", - "OSE.category.equipment": "Équipement", + "ACKS.category.saves": "Sauvegardes", + "ACKS.category.attributes": "Stats", + "ACKS.category.inventory": "Inventaire", + "ACKS.category.abilities": "Aptitudes", + "ACKS.category.spells": "Sorts", + "ACKS.category.notes": "Notes", + "ACKS.category.languages": "Langues", + "ACKS.category.description": "Descriptions", + "ACKS.category.equipment": "Équipement", - "OSE.Setting.Initiative": "Initiative", - "OSE.Setting.InitiativeHint": "Initiative groupée ou individuelle.", - "OSE.Setting.InitiativeIndividual": "Initiative individuelle", - "OSE.Setting.InitiativeGroup": "Initiative groupée", - "OSE.Setting.RerollInitiative": "Persistance de l'initiative", - "OSE.Setting.RerollInitiativeHint": "Garde, met à zéro ou relance l'initiative à chaque tour", - "OSE.Setting.InitiativeKeep": "Initiative gardée à chaque tour", - "OSE.Setting.InitiativeReroll": "Initiative relancée chaque tour", - "OSE.Setting.InitiativeReset": "Initiative mise à zéro chaque tour", - "OSE.Setting.AscendingAC": "Classe d'Armure Ascendante", - "OSE.Setting.AscendingACHint": "Le plus est le mieux", - "OSE.Setting.Morale": "Activer le Score de Moral", - "OSE.Setting.MoraleHint": "Le Score de Moral est affiché sur la fiche de Monstre", - "OSE.Setting.Encumbrance": "Encombrement", - "OSE.Setting.EncumbranceHint": "Choisissez comment l'encombrement est calculé", - "OSE.Setting.EncumbranceDisabled": "Désactivé", - "OSE.Setting.EncumbranceBasic": "Basique", - "OSE.Setting.EncumbranceDetailed": "Detaillé", - "OSE.Setting.EncumbranceComplete": "Complet", - "OSE.Setting.MovementAuto": "Calculer Déplacement", - "OSE.Setting.SignificantTreasure": "Poids d'un Trésor Significatif", - "OSE.Setting.SignificantTreasureHint": "Poids auquel le Trésor réduit le déplacement. Utilisé pour l'encombrement Basique", + "ACKS.Setting.Initiative": "Initiative", + "ACKS.Setting.InitiativeHint": "Initiative groupée ou individuelle. L'initiative unique est tirée une seule fois en début de combat.", + "ACKS.Setting.InitiativeOnce": "Initiative unique individuelle", + "ACKS.Setting.InitiativeReroll": "Initiative relancée chaque tour", + "ACKS.Setting.InitiativeReset": "Initiative mise à zéro chaque tour", + "ACKS.Setting.InitiativeGroup": "Initiative groupée", + "ACKS.Setting.AscendingAC": "Classe d'Armure Ascendante", + "ACKS.Setting.AscendingACHint": "Le plus est le mieux", + "ACKS.Setting.Morale": "Activer le Score de Moral", + "ACKS.Setting.MoraleHint": "Le Score de Moral est affiché sur la fiche de Monstre", + "ACKS.Setting.Encumbrance": "Encombrement", + "ACKS.Setting.EncumbranceHint": "Choisissez comment l'encombrement est calculé", + "ACKS.Setting.EncumbranceDisabled": "Désactivé", + "ACKS.Setting.EncumbranceBasic": "Basique", + "ACKS.Setting.EncumbranceDetailed": "Detaillé", + "ACKS.Setting.EncumbranceComplete": "Complet", + "ACKS.Setting.MovementAuto": "Calculer Déplacement", + "ACKS.Setting.SignificantTreasure": "Poids d'un Trésor Significatif", + "ACKS.Setting.SignificantTreasureHint": "Poids auquel le Trésor réduit le déplacement. Utilisé pour l'encombrement Basique", - "OSE.items.Equip": "Equiper", - "OSE.items.Unequip": "Déséquiper", - "OSE.items.Misc": "Divers", - "OSE.items.Weapons": "Armes", - "OSE.items.Treasure": "Trésor", - "OSE.items.Armors": "Armures", - "OSE.items.Weight": "Pds.", - "OSE.items.Qualities": "Qualités", - "OSE.items.Notes": "Notes", - "OSE.items.Cost": "Coût", - "OSE.items.Quantity": "Qt.", - "OSE.items.Roll": "Jet", - "OSE.items.BlindRoll": "Aveugle", - "OSE.items.RollTarget": "Cible", - "OSE.items.RollType": "Type", - "OSE.items.Damage": "Dégâts", - "OSE.items.ArmorAC": "CA", - "OSE.items.ArmorAAC": "CAA", - "OSE.items.Bonus": "Bonus", - "OSE.items.AtkBonus": "Bonus d'Attaque", - "OSE.items.roundAttacks": "Attaques utilisées ce tour", - "OSE.items.roundAttacksMax": "Attaques max par tour", - "OSE.items.resetAttacks": "Réinitialiser les Attaques", - "OSE.items.hasShield": "A un bonus de Bouclier", - "OSE.items.typeTag": "Tapez une liste de tags descriptifs ex. 'Mêlée,Missile (5’–10’ / 11’–20’ / 21’–30’)' puis Entrée", - "OSE.items.enterTag": "Tags", - "OSE.items.pattern": "Marqueur de schéma d'attaque", + "ACKS.items.Equip": "Equiper", + "ACKS.items.Unequip": "Déséquiper", + "ACKS.items.Misc": "Divers", + "ACKS.items.Weapons": "Armes", + "ACKS.items.Treasure": "Trésor", + "ACKS.items.Armors": "Armures", + "ACKS.items.Weight": "Pds.", + "ACKS.items.Qualities": "Qualités", + "ACKS.items.Notes": "Notes", + "ACKS.items.Cost": "Coût", + "ACKS.items.Quantity": "Qt.", + "ACKS.items.Roll": "Jet", + "ACKS.items.BlindRoll": "Aveugle", + "ACKS.items.RollTarget": "Cible", + "ACKS.items.RollType": "Type", + "ACKS.items.Damage": "Dégâts", + "ACKS.items.ArmorAC": "CA", + "ACKS.items.ArmorAAC": "CAA", + "ACKS.items.Bonus": "Bonus", + "ACKS.items.AtkBonus": "Bonus d'Attaque", + "ACKS.items.roundAttacks": "Attaques utilisées ce tour", + "ACKS.items.roundAttacksMax": "Attaques max par tour", + "ACKS.items.resetAttacks": "Réinitialiser les Attaques", + "ACKS.items.hasShield": "A un bonus de Bouclier", + "ACKS.items.typeTag": "Tapez une liste de tags descriptifs ex. 'Mêlée,Missile (5’–10’ / 11’–20’ / 21’–30’)' puis Entrée", + "ACKS.items.enterTag": "Tags", + "ACKS.items.pattern": "Marqueur de schéma d'attaque", - "OSE.items.Range": "Portée", - "OSE.items.Melee": "Mêlée", - "OSE.items.Missile": "Distance", - "OSE.items.Slow": "Lent", - "OSE.items.TwoHanded": "Deux-mains", - "OSE.items.Blunt": "Contondant", - "OSE.items.Brace": "Fortifier", - "OSE.items.Splash": "Zone", - "OSE.items.Reload": "Rechargement", - "OSE.items.Charge": "Charge", + "ACKS.items.Range": "Portée", + "ACKS.items.Melee": "Mêlée", + "ACKS.items.Missile": "Distance", + "ACKS.items.Slow": "Lent", + "ACKS.items.TwoHanded": "Deux-mains", + "ACKS.items.Blunt": "Contondant", + "ACKS.items.Brace": "Fortifier", + "ACKS.items.Splash": "Zone", + "ACKS.items.Reload": "Rechargement", + "ACKS.items.Charge": "Charge", - "OSE.armor.type": "Type d'Armure", - "OSE.armor.unarmored": "Sans Armure", - "OSE.armor.light": "Légère", - "OSE.armor.heavy": "Lourde", - "OSE.armor.shield": "Bouclier", + "ACKS.armor.type": "Type d'Armure", + "ACKS.armor.unarmored": "Sans Armure", + "ACKS.armor.light": "Légère", + "ACKS.armor.heavy": "Lourde", + "ACKS.armor.shield": "Bouclier", - "OSE.spells.spend": "{speaker} lance {name}!", - "OSE.spells.Memorized": "Memorisé", - "OSE.spells.Cast": "Lancé", - "OSE.spells.Range": "Portée", - "OSE.spells.Slots": "Emplacement", - "OSE.spells.Class": "Classe", - "OSE.spells.Duration": "Durée", - "OSE.spells.Level": "Niveau", - "OSE.spells.Save": "Sauvegarde", - "OSE.spells.ResetSlots": "Réinitialiser les Emplacements", + "ACKS.spells.spend": "{speaker} lance {name}!", + "ACKS.spells.Memorized": "Memorisé", + "ACKS.spells.Cast": "Lancé", + "ACKS.spells.Range": "Portée", + "ACKS.spells.Slots": "Emplacement", + "ACKS.spells.Class": "Classe", + "ACKS.spells.Duration": "Durée", + "ACKS.spells.Level": "Niveau", + "ACKS.spells.Save": "Sauvegarde", + "ACKS.spells.ResetSlots": "Réinitialiser les Emplacements", - "OSE.abilities.Requirements": "Prérequis", + "ACKS.abilities.Requirements": "Prérequis", - "OSE.exploration.ld.long": "Ecoute aux Portes", - "OSE.exploration.ld.short": "Eco. Porte", - "OSE.exploration.ld.abrev": "EP", - "OSE.exploration.od.long": "Ouverture de Portes", - "OSE.exploration.od.short": "Ouv. Porte", - "OSE.exploration.od.abrev": "OP", - "OSE.exploration.sd.long": "Détection des Passages Secrets", - "OSE.exploration.sd.short": "Dét. Secrets", - "OSE.exploration.sd.abrev": "DS", - "OSE.exploration.ft.long": "Détecter les Pièges", - "OSE.exploration.ft.short": "Dét. Pièges", - "OSE.exploration.ft.abrev": "DP", + "ACKS.exploration.ld.long": "Ecoute aux Portes", + "ACKS.exploration.ld.short": "Eco. Porte", + "ACKS.exploration.ld.abrev": "EP", + "ACKS.exploration.od.long": "Ouverture de Portes", + "ACKS.exploration.od.short": "Ouv. Porte", + "ACKS.exploration.od.abrev": "OP", + "ACKS.exploration.sd.long": "Détection des Passages Secrets", + "ACKS.exploration.sd.short": "Dét. Secrets", + "ACKS.exploration.sd.abrev": "DS", + "ACKS.exploration.ft.long": "Détecter les Pièges", + "ACKS.exploration.ft.short": "Dét. Pièges", + "ACKS.exploration.ft.abrev": "DP", - "OSE.messages.GetExperience": "{name} a gagné {value} points d'expérience !", - "OSE.messages.AttackSuccess": "Touche une CA de {result}! ({bonus})", - "OSE.messages.AttackAscendingSuccess": "Touche une CAA de {result}!", - "OSE.messages.AttackFailure": "L'Attaque échoue ({bonus})", - "OSE.messages.AttackAscendingFailure": "L'Attaque échoue", - "OSE.messages.InflictsDamage": "Inflige des dégâts !", - "OSE.messages.applyDamage": "Appliquer les dégâts", - "OSE.messages.applyHealing": "Appliquer les soins", + "ACKS.messages.GetExperience": "{name} a gagné {value} points d'expérience !", + "ACKS.messages.AttackSuccess": "Touche une CA de {result}! ({bonus})", + "ACKS.messages.AttackAscendingSuccess": "Touche une CAA de {result}!", + "ACKS.messages.AttackFailure": "L'Attaque échoue ({bonus})", + "ACKS.messages.AttackAscendingFailure": "L'Attaque échoue", + "ACKS.messages.InflictsDamage": "Inflige des dégâts !", + "ACKS.messages.applyDamage": "Appliquer les dégâts", + "ACKS.messages.applyHealing": "Appliquer les soins", - "OSE.colors.green": "Vert", - "OSE.colors.red": "Rouge", - "OSE.colors.yellow": "Jaune", - "OSE.colors.purple": "Violet", - "OSE.colors.blue": "Bleu", - "OSE.colors.orange": "Orange", - "OSE.colors.white": "Blanc", + "ACKS.colors.green": "Vert", + "ACKS.colors.red": "Rouge", + "ACKS.colors.yellow": "Jaune", + "ACKS.colors.purple": "Violet", + "ACKS.colors.blue": "Bleu", + "ACKS.colors.orange": "Orange", + "ACKS.colors.white": "Blanc", - "OSE.reaction.Hostile": "{name} est Hostile", - "OSE.reaction.Unfriendly": "{name} est Inamical", - "OSE.reaction.Neutral": "{name} est Neutre", - "OSE.reaction.Indifferent": "{name} est Indifférent", - "OSE.reaction.Friendly": "{name} est Amical" + "ACKS.reaction.Hostile": "{name} est Hostile", + "ACKS.reaction.Unfriendly": "{name} est Inamical", + "ACKS.reaction.Neutral": "{name} est Neutre", + "ACKS.reaction.Indifferent": "{name} est Indifférent", + "ACKS.reaction.Friendly": "{name} est Amical" } diff --git a/src/lang/pt-BR.json b/src/lang/pt-BR.json index d461dbc..e48c1cb 100644 --- a/src/lang/pt-BR.json +++ b/src/lang/pt-BR.json @@ -1,274 +1,274 @@ { - "OSE.Edit": "Editar", - "OSE.Delete": "Apagar", - "OSE.Show": "Mostrar", - "OSE.Add": "Adicionar", - "OSE.Ok": "Confirmar", - "OSE.Update": "Atualizar", - "OSE.Reset": "Reiniciar", - "OSE.Cancel": "Cancelar", - "OSE.Roll": "Rolar", - "OSE.Success": "Sucesso", - "OSE.Failure": "Falha", + "ACKS.Edit": "Editar", + "ACKS.Delete": "Apagar", + "ACKS.Show": "Mostrar", + "ACKS.Add": "Adicionar", + "ACKS.Ok": "Confirmar", + "ACKS.Update": "Atualizar", + "ACKS.Reset": "Reiniciar", + "ACKS.Cancel": "Cancelar", + "ACKS.Roll": "Rolar", + "ACKS.Success": "Sucesso", + "ACKS.Failure": "Falha", - "OSE.dialog.tweaks": "Ferramentas", - "OSE.dialog.partysheet": "Visão do grupo", - "OSE.dialog.selectActors": "Selecionar PJs", - "OSE.dialog.dealXP": "Distribuir XP", - "OSE.dialog.generator": "Gerar personagem", - "OSE.dialog.generateSaves": "Gerar salvaguardas", - "OSE.dialog.generateScores": "Gerar status", - "OSE.dialog.generateScore": "Rolou {score} ({count})", + "ACKS.dialog.tweaks": "Ferramentas", + "ACKS.dialog.partysheet": "Visão do grupo", + "ACKS.dialog.selectActors": "Selecionar PJs", + "ACKS.dialog.dealXP": "Distribuir XP", + "ACKS.dialog.generator": "Gerar personagem", + "ACKS.dialog.generateSaves": "Gerar salvaguardas", + "ACKS.dialog.generateScores": "Gerar status", + "ACKS.dialog.generateScore": "Rolou {score} ({count})", - "OSE.Formula": "Fórmula", - "OSE.SitMod": "Modificador situacional", - "OSE.Modifier": "Modificador", - "OSE.Modifiers": "Modificadores", - "OSE.RollMode": "Modo de rolagem", - "OSE.RollExample": "ex. +1d4", + "ACKS.Formula": "Fórmula", + "ACKS.SitMod": "Modificador situacional", + "ACKS.Modifier": "Modificador", + "ACKS.Modifiers": "Modificadores", + "ACKS.RollMode": "Modo de rolagem", + "ACKS.RollExample": "ex. +1d4", - "OSE.roll.formula": "{label} rolar", - "OSE.roll.appearing": "Aparecimento da rolagem ({type})", - "OSE.roll.morale": "Teste de moral", - "OSE.roll.hd": "Rolar Dado de Vida", - "OSE.roll.attacksWith": "Ataca com {name}", - "OSE.roll.attacks": "{name} ataca!", - "OSE.roll.save": "{save} Salvaguarda", - "OSE.roll.details.save": "Rola 1d20 >= {save} para sucesso", - "OSE.roll.attribute": "{attribute} teste", - "OSE.roll.details.attribute": "Rolar 1d20 <= {score} para sucesso", - "OSE.roll.exploration": "{exploration} teste", - "OSE.roll.details.exploration": "Rolar 1d6 <= {expl} para sucesso", - "OSE.roll.reaction": "Rolagem de reação", - "OSE.roll.initiative": "Grupo {group} rola para iniciativa!", - "OSE.roll.individualInit": "{name} rola para iniciativa!", + "ACKS.roll.formula": "{label} rolar", + "ACKS.roll.appearing": "Aparecimento da rolagem ({type})", + "ACKS.roll.morale": "Teste de moral", + "ACKS.roll.hd": "Rolar Dado de Vida", + "ACKS.roll.attacksWith": "Ataca com {name}", + "ACKS.roll.attacks": "{name} ataca!", + "ACKS.roll.save": "{save} Salvaguarda", + "ACKS.roll.details.save": "Rola 1d20 >= {save} para sucesso", + "ACKS.roll.attribute": "{attribute} teste", + "ACKS.roll.details.attribute": "Rolar 1d20 <= {score} para sucesso", + "ACKS.roll.exploration": "{exploration} teste", + "ACKS.roll.details.exploration": "Rolar 1d6 <= {expl} para sucesso", + "ACKS.roll.reaction": "Rolagem de reação", + "ACKS.roll.initiative": "Grupo {group} rola para iniciativa!", + "ACKS.roll.individualInit": "{name} rola para iniciativa!", - "OSE.table.treasure.roll": "Rolar tesouro", + "ACKS.table.treasure.roll": "Rolar tesouro", - "OSE.details.name": "Nome", - "OSE.details.class": "Classe", - "OSE.details.title": "Titulo", - "OSE.details.alignment": "Alinhamento", - "OSE.details.level": "Nivel", - "OSE.details.experience.base": "Experiência", - "OSE.details.experience.bonus": "Experiência Bônus", - "OSE.details.experience.next": "Próximo nível", - "OSE.details.experience.share": "Compartilhar experiência", - "OSE.details.experience.award": "Prêmio XP", - "OSE.details.treasure": "Tipo de tesouro", - "OSE.details.treasureTable": "Tabela", - "OSE.details.treasureTableHint": "solte uma tabela rolável aqui para rolar o tesouro do monstro", - "OSE.details.morale": "Moral", - "OSE.details.reaction": "Reação", - "OSE.details.appearing": "NA", + "ACKS.details.name": "Nome", + "ACKS.details.class": "Classe", + "ACKS.details.title": "Titulo", + "ACKS.details.alignment": "Alinhamento", + "ACKS.details.level": "Nivel", + "ACKS.details.experience.base": "Experiência", + "ACKS.details.experience.bonus": "Experiência Bônus", + "ACKS.details.experience.next": "Próximo nível", + "ACKS.details.experience.share": "Compartilhar experiência", + "ACKS.details.experience.award": "Prêmio XP", + "ACKS.details.treasure": "Tipo de tesouro", + "ACKS.details.treasureTable": "Tabela", + "ACKS.details.treasureTableHint": "solte uma tabela rolável aqui para rolar o tesouro do monstro", + "ACKS.details.morale": "Moral", + "ACKS.details.reaction": "Reação", + "ACKS.details.appearing": "NA", - "OSE.Attack": "Ataca", - "OSE.Encumbrance": "Sobrecarga", + "ACKS.Attack": "Ataca", + "ACKS.Encumbrance": "Sobrecarga", - "OSE.Retainer": "Empregado", - "OSE.RetainerWage": "Salário", - "OSE.RetainerUpkeep": "Manutenção", - "OSE.Loyalty": "Classificação de lealdade", - "OSE.LoyaltyShort": "CL", + "ACKS.Retainer": "Empregado", + "ACKS.RetainerWage": "Salário", + "ACKS.RetainerUpkeep": "Manutenção", + "ACKS.Loyalty": "Classificação de lealdade", + "ACKS.LoyaltyShort": "CL", - "OSE.scores.str.long": "Força", - "OSE.scores.str.short": "FOR", - "OSE.scores.wis.long": "Sabedoria", - "OSE.scores.wis.short": "SAB", - "OSE.scores.int.long": "Inteligência", - "OSE.scores.int.short": "INT", - "OSE.scores.dex.long": "Destreza", - "OSE.scores.dex.short": "DES", - "OSE.scores.con.long": "Constituição", - "OSE.scores.con.short": "CON", - "OSE.scores.cha.long": "Carisma", - "OSE.scores.cha.short": "CAR", + "ACKS.scores.str.long": "Força", + "ACKS.scores.str.short": "FOR", + "ACKS.scores.wis.long": "Sabedoria", + "ACKS.scores.wis.short": "SAB", + "ACKS.scores.int.long": "Inteligência", + "ACKS.scores.int.short": "INT", + "ACKS.scores.dex.long": "Destreza", + "ACKS.scores.dex.short": "DES", + "ACKS.scores.con.long": "Constituição", + "ACKS.scores.con.short": "CON", + "ACKS.scores.cha.long": "Carisma", + "ACKS.scores.cha.short": "CAR", - "OSE.saves.death.short": "Mt", - "OSE.saves.death.long": "Morte Veneno", - "OSE.saves.wand.short": "V", - "OSE.saves.wand.long": "Varinhas", - "OSE.saves.paralysis.short": "P", - "OSE.saves.paralysis.long": "Paralisia Petrificar", - "OSE.saves.breath.short": "S", - "OSE.saves.breath.long": "Ataques de Sopro", - "OSE.saves.spell.short": "Ma", - "OSE.saves.spell.long": "Magias Bastões Cajados", - "OSE.saves.magic.long": "Bônus vs Magia", + "ACKS.saves.death.short": "Mt", + "ACKS.saves.death.long": "Morte Veneno", + "ACKS.saves.wand.short": "V", + "ACKS.saves.wand.long": "Varinhas", + "ACKS.saves.paralysis.short": "P", + "ACKS.saves.paralysis.long": "Paralisia Petrificar", + "ACKS.saves.breath.short": "S", + "ACKS.saves.breath.long": "Ataques de Sopro", + "ACKS.saves.spell.short": "Ma", + "ACKS.saves.spell.long": "Magias Bastões Cajados", + "ACKS.saves.magic.long": "Bônus vs Magia", - "OSE.Health": "Pontos de Vida", - "OSE.HealthMax": "Pontos de Vida máximo", - "OSE.HealthShort": "PV", - "OSE.HitDice": "Dados de Vida", - "OSE.HitDiceShort": "DV", + "ACKS.Health": "Pontos de Vida", + "ACKS.HealthMax": "Pontos de Vida máximo", + "ACKS.HealthShort": "PV", + "ACKS.HitDice": "Dados de Vida", + "ACKS.HitDiceShort": "DV", - "OSE.movement.base": "Taxa de Movimento", - "OSE.movement.short": "TM", - "OSE.movement.details": "Detalhes do movimento", - "OSE.movement.encounter.long": "Taxa de Movimento por Encontro", - "OSE.movement.encounter.short": "TME", - "OSE.movement.overland.long": "Taxa de Movimento Terrestre", - "OSE.movement.overland.short": "TMT", - "OSE.movement.exploration.short": "TE", - "OSE.movement.exploration.long": "Taxa de Movimento em Exploração", + "ACKS.movement.base": "Taxa de Movimento", + "ACKS.movement.short": "TM", + "ACKS.movement.details": "Detalhes do movimento", + "ACKS.movement.encounter.long": "Taxa de Movimento por Encontro", + "ACKS.movement.encounter.short": "TME", + "ACKS.movement.overland.long": "Taxa de Movimento Terrestre", + "ACKS.movement.overland.short": "TMT", + "ACKS.movement.exploration.short": "TE", + "ACKS.movement.exploration.long": "Taxa de Movimento em Exploração", - "OSE.ArmorClassNaked": "Classe de Armadura despido", - "OSE.ArmorClass": "Classe de Armadura", - "OSE.ArmorClassShort": "CA", - "OSE.AscArmorClassShort": "CAA", - "OSE.ArmorClassBonus": "Bônus de Classe de Armadura", - "OSE.Thac0": "TAC0", - "OSE.ABShort": "BA", - "OSE.AB": "Bônus de Ataque", - "OSE.MeleeShort": "COR", - "OSE.Melee": "Corpo a corpo", - "OSE.MeleeBonus": "Bônus corpo a corpo", - "OSE.MissileShort": "DIS", - "OSE.Missile": "Distância", - "OSE.MissileBonus": "Bônus a distância", - "OSE.Initiative": "Iniciativa", - "OSE.InitiativeBonus": "Bonus de Iniciativa", - "OSE.InitiativeShort": "INIC", - "OSE.Attacks": "Ataques possiveis por rodada", - "OSE.AttacksShort": "ATA", - "OSE.Damage": "Dano", - "OSE.Spellcaster": "Conjurador", + "ACKS.ArmorClassNaked": "Classe de Armadura despido", + "ACKS.ArmorClass": "Classe de Armadura", + "ACKS.ArmorClassShort": "CA", + "ACKS.AscArmorClassShort": "CAA", + "ACKS.ArmorClassBonus": "Bônus de Classe de Armadura", + "ACKS.Thac0": "TAC0", + "ACKS.ABShort": "BA", + "ACKS.AB": "Bônus de Ataque", + "ACKS.MeleeShort": "COR", + "ACKS.Melee": "Corpo a corpo", + "ACKS.MeleeBonus": "Bônus corpo a corpo", + "ACKS.MissileShort": "DIS", + "ACKS.Missile": "Distância", + "ACKS.MissileBonus": "Bônus a distância", + "ACKS.Initiative": "Iniciativa", + "ACKS.InitiativeBonus": "Bonus de Iniciativa", + "ACKS.InitiativeShort": "INIC", + "ACKS.Attacks": "Ataques possiveis por rodada", + "ACKS.AttacksShort": "ATA", + "ACKS.Damage": "Dano", + "ACKS.Spellcaster": "Conjurador", - "OSE.Language": "Lingua", - "OSE.SpokenLanguages": "Linguas faladas", - "OSE.Literacy": "Alfabetização", - "OSE.Literate": "Alfabetizado", - "OSE.LiteracyBasic": "Básico", - "OSE.Illiterate": "Analfabeto", - "OSE.NativeBroken": "Nativo (Semi-alfabetizado)", - "OSE.Native": "Nativo", - "OSE.NativePlus1": "Nativo + 1", - "OSE.NativePlus2": "Nativo + 2", - "OSE.NativePlus3": "Nativo + 3", + "ACKS.Language": "Lingua", + "ACKS.SpokenLanguages": "Linguas faladas", + "ACKS.Literacy": "Alfabetização", + "ACKS.Literate": "Alfabetizado", + "ACKS.LiteracyBasic": "Básico", + "ACKS.Illiterate": "Analfabeto", + "ACKS.NativeBroken": "Nativo (Semi-alfabetizado)", + "ACKS.Native": "Nativo", + "ACKS.NativePlus1": "Nativo + 1", + "ACKS.NativePlus2": "Nativo + 2", + "ACKS.NativePlus3": "Nativo + 3", - "OSE.NPCReaction": "Reação do NPC", - "OSE.RetainersMax": "#Retentor", + "ACKS.NPCReaction": "Reação do NPC", + "ACKS.RetainersMax": "#Retentor", - "OSE.category.saves": "Salvaguarda", - "OSE.category.attributes": "Atributos", - "OSE.category.inventory": "Itens", - "OSE.category.abilities": "Habilidades", - "OSE.category.spells": "Magias", - "OSE.category.notes": "Notas", - "OSE.category.languages": "Linguas", - "OSE.category.description": "Descrição", - "OSE.category.equipment": "Equipamento", + "ACKS.category.saves": "Salvaguarda", + "ACKS.category.attributes": "Atributos", + "ACKS.category.inventory": "Itens", + "ACKS.category.abilities": "Habilidades", + "ACKS.category.spells": "Magias", + "ACKS.category.notes": "Notas", + "ACKS.category.languages": "Linguas", + "ACKS.category.description": "Descrição", + "ACKS.category.equipment": "Equipamento", - "OSE.Setting.Initiative": "Iniciativa", - "OSE.Setting.InitiativeHint": "Iniciativa agrupada ou individual. Iniciativa única individual é somente rolada ao inicio do combate", - "OSE.Setting.InitiativeOnce": "Iniciativa única individual", - "OSE.Setting.InitiativeReroll": "Iniciativa individual por rodada", - "OSE.Setting.InitiativeGroup": "Iniciativa agrupada", - "OSE.Setting.AscendingAC": "Classe de armadura ascendente", - "OSE.Setting.AscendingACHint": "Quanto maior melhor", - "OSE.Setting.Morale": "Habilitar taxa de moral dos monstros", - "OSE.Setting.MoraleHint": "Taxa de moral é mostrada na ficha dos monstros", - "OSE.Setting.Encumbrance": "Sobrecarga", - "OSE.Setting.EncumbranceHint": "Escolha como a sobrecarga é calculada", - "OSE.Setting.EncumbranceDisabled": "Desabilitada", - "OSE.Setting.EncumbranceBasic": "Básica", - "OSE.Setting.EncumbranceDetailed": "Detalhada", - "OSE.Setting.MovementAuto": "Calcular movimento", - "OSE.Setting.SignificantTreasure": "Peso significativo do tesouro", - "OSE.Setting.SignificantTreasureHint": "Peso com o qual o tesouro reduzirá o movimento, somente usar com sobrecarga básica", + "ACKS.Setting.Initiative": "Iniciativa", + "ACKS.Setting.InitiativeHint": "Iniciativa agrupada ou individual. Iniciativa única individual é somente rolada ao inicio do combate", + "ACKS.Setting.InitiativeOnce": "Iniciativa única individual", + "ACKS.Setting.InitiativeReroll": "Iniciativa individual por rodada", + "ACKS.Setting.InitiativeGroup": "Iniciativa agrupada", + "ACKS.Setting.AscendingAC": "Classe de armadura ascendente", + "ACKS.Setting.AscendingACHint": "Quanto maior melhor", + "ACKS.Setting.Morale": "Habilitar taxa de moral dos monstros", + "ACKS.Setting.MoraleHint": "Taxa de moral é mostrada na ficha dos monstros", + "ACKS.Setting.Encumbrance": "Sobrecarga", + "ACKS.Setting.EncumbranceHint": "Escolha como a sobrecarga é calculada", + "ACKS.Setting.EncumbranceDisabled": "Desabilitada", + "ACKS.Setting.EncumbranceBasic": "Básica", + "ACKS.Setting.EncumbranceDetailed": "Detalhada", + "ACKS.Setting.MovementAuto": "Calcular movimento", + "ACKS.Setting.SignificantTreasure": "Peso significativo do tesouro", + "ACKS.Setting.SignificantTreasureHint": "Peso com o qual o tesouro reduzirá o movimento, somente usar com sobrecarga básica", - "OSE.items.Equip": "Equipar", - "OSE.items.Unequip": "Desequipar", - "OSE.items.Misc": "Diverso", - "OSE.items.Weapons": "Armas", - "OSE.items.Treasure": "Tesouro", - "OSE.items.Armors": "Proteção", - "OSE.items.Weight": "Peso", - "OSE.items.Qualities": "Qualidades", - "OSE.items.Notes": "Notas", - "OSE.items.Cost": "Custo", - "OSE.items.Quantity": "Qt.", - "OSE.items.Roll": "Rolar", - "OSE.items.BlindRoll": "Ocultar", - "OSE.items.RollTarget": "Alvo", - "OSE.items.RollType": "Tipo", - "OSE.items.Damage": "Dano", - "OSE.items.ArmorAC": "CA", - "OSE.items.ArmorAAC": "CAA", - "OSE.items.Bonus": "Bônus", - "OSE.items.AtkBonus": "Bônus ataque", - "OSE.items.roundAttacks": "Ataques usados na rodada", - "OSE.items.roundAttacksMax": "Máximo de ataques por rodada", - "OSE.items.resetAttacks": "Reiniciar todos ataques por rodada", - "OSE.items.hasShield": "Tem um bônus de escudo", - "OSE.items.typeTag": "Digite virgula para separar a lista de tag", - "OSE.items.enterTag": "Tags", - "OSE.items.pattern": "Marcador padrão de ataque", + "ACKS.items.Equip": "Equipar", + "ACKS.items.Unequip": "Desequipar", + "ACKS.items.Misc": "Diverso", + "ACKS.items.Weapons": "Armas", + "ACKS.items.Treasure": "Tesouro", + "ACKS.items.Armors": "Proteção", + "ACKS.items.Weight": "Peso", + "ACKS.items.Qualities": "Qualidades", + "ACKS.items.Notes": "Notas", + "ACKS.items.Cost": "Custo", + "ACKS.items.Quantity": "Qt.", + "ACKS.items.Roll": "Rolar", + "ACKS.items.BlindRoll": "Ocultar", + "ACKS.items.RollTarget": "Alvo", + "ACKS.items.RollType": "Tipo", + "ACKS.items.Damage": "Dano", + "ACKS.items.ArmorAC": "CA", + "ACKS.items.ArmorAAC": "CAA", + "ACKS.items.Bonus": "Bônus", + "ACKS.items.AtkBonus": "Bônus ataque", + "ACKS.items.roundAttacks": "Ataques usados na rodada", + "ACKS.items.roundAttacksMax": "Máximo de ataques por rodada", + "ACKS.items.resetAttacks": "Reiniciar todos ataques por rodada", + "ACKS.items.hasShield": "Tem um bônus de escudo", + "ACKS.items.typeTag": "Digite virgula para separar a lista de tag", + "ACKS.items.enterTag": "Tags", + "ACKS.items.pattern": "Marcador padrão de ataque", - "OSE.items.Range": "Distância", - "OSE.items.Melee": "Corpo", - "OSE.items.Missile": "Projétil", - "OSE.items.Slow": "Lenta", - "OSE.items.TwoHanded": "Duas mãos", - "OSE.items.Blunt": "Concussão", - "OSE.items.Brace": "Braçadeira", - "OSE.items.Splash": "Arma de respingo", - "OSE.items.Reload": "Recarga", - "OSE.items.Charge": "Carga", + "ACKS.items.Range": "Distância", + "ACKS.items.Melee": "Corpo", + "ACKS.items.Missile": "Projétil", + "ACKS.items.Slow": "Lenta", + "ACKS.items.TwoHanded": "Duas mãos", + "ACKS.items.Blunt": "Concussão", + "ACKS.items.Brace": "Braçadeira", + "ACKS.items.Splash": "Arma de respingo", + "ACKS.items.Reload": "Recarga", + "ACKS.items.Charge": "Carga", - "OSE.armor.type": "Tipo de armadura", - "OSE.armor.unarmored": "Sem armadura", - "OSE.armor.light": "Leve", - "OSE.armor.heavy": "Pesada", - "OSE.armor.shield": "Escudo", + "ACKS.armor.type": "Tipo de armadura", + "ACKS.armor.unarmored": "Sem armadura", + "ACKS.armor.light": "Leve", + "ACKS.armor.heavy": "Pesada", + "ACKS.armor.shield": "Escudo", - "OSE.spells.spend": "{speaker} está conjurando {name}!", - "OSE.spells.Memorized": "Memorizada", - "OSE.spells.Cast": "Conjurar", - "OSE.spells.Range": "Distância", - "OSE.spells.Slots": "Espaços", - "OSE.spells.Class": "Classe", - "OSE.spells.Duration": "Duração", - "OSE.spells.Level": "Nivel", - "OSE.spells.Save": "Salvaguarda", - "OSE.spells.ResetSlots": "Reiniciar espaços de magia", + "ACKS.spells.spend": "{speaker} está conjurando {name}!", + "ACKS.spells.Memorized": "Memorizada", + "ACKS.spells.Cast": "Conjurar", + "ACKS.spells.Range": "Distância", + "ACKS.spells.Slots": "Espaços", + "ACKS.spells.Class": "Classe", + "ACKS.spells.Duration": "Duração", + "ACKS.spells.Level": "Nivel", + "ACKS.spells.Save": "Salvaguarda", + "ACKS.spells.ResetSlots": "Reiniciar espaços de magia", - "OSE.abilities.Requirements": "Requerimentos", + "ACKS.abilities.Requirements": "Requerimentos", - "OSE.exploration.ld.long": "Ouvir ruidos", - "OSE.exploration.ld.short": "Ouvir ruidos", - "OSE.exploration.ld.abrev": "OR", - "OSE.exploration.od.long": "Abrir fechaduras", - "OSE.exploration.od.short": "Abrir fechaduras", - "OSE.exploration.od.abrev": "AF", - "OSE.exploration.sd.long": "Encontrar portas secreta", - "OSE.exploration.sd.short": "Portas Secretas", - "OSE.exploration.sd.abrev": "PS", - "OSE.exploration.ft.long": "Encontrar armadilhas em salas", - "OSE.exploration.ft.short": "Encontrar armadilhas", - "OSE.exploration.ft.abrev": "EA", + "ACKS.exploration.ld.long": "Ouvir ruidos", + "ACKS.exploration.ld.short": "Ouvir ruidos", + "ACKS.exploration.ld.abrev": "OR", + "ACKS.exploration.od.long": "Abrir fechaduras", + "ACKS.exploration.od.short": "Abrir fechaduras", + "ACKS.exploration.od.abrev": "AF", + "ACKS.exploration.sd.long": "Encontrar portas secreta", + "ACKS.exploration.sd.short": "Portas Secretas", + "ACKS.exploration.sd.abrev": "PS", + "ACKS.exploration.ft.long": "Encontrar armadilhas em salas", + "ACKS.exploration.ft.short": "Encontrar armadilhas", + "ACKS.exploration.ft.abrev": "EA", - "OSE.messages.GetExperience": "{name} ganha {value} pontos de experiência!", - "OSE.messages.AttackSuccess": "Acerta CA {result}! ({bonus})", - "OSE.messages.AttackAscendingSuccess": "Acerta CA {result}!", - "OSE.messages.AttackFailure": "Ataque falha ({bonus})", - "OSE.messages.AttackAscendingFailure": "Ataque falha", - "OSE.messages.InflictsDamage": "Inflige dano!", - "OSE.messages.applyDamage": "Aplicar dano", - "OSE.messages.applyHealing": "Aplicar cura", + "ACKS.messages.GetExperience": "{name} ganha {value} pontos de experiência!", + "ACKS.messages.AttackSuccess": "Acerta CA {result}! ({bonus})", + "ACKS.messages.AttackAscendingSuccess": "Acerta CA {result}!", + "ACKS.messages.AttackFailure": "Ataque falha ({bonus})", + "ACKS.messages.AttackAscendingFailure": "Ataque falha", + "ACKS.messages.InflictsDamage": "Inflige dano!", + "ACKS.messages.applyDamage": "Aplicar dano", + "ACKS.messages.applyHealing": "Aplicar cura", - "OSE.colors.green": "Verde", - "OSE.colors.red": "Vermelho", - "OSE.colors.yellow": "Amarelo", - "OSE.colors.purple": "Roxo", - "OSE.colors.blue": "Azul", - "OSE.colors.orange": "Laranja", - "OSE.colors.white": "Branco", + "ACKS.colors.green": "Verde", + "ACKS.colors.red": "Vermelho", + "ACKS.colors.yellow": "Amarelo", + "ACKS.colors.purple": "Roxo", + "ACKS.colors.blue": "Azul", + "ACKS.colors.orange": "Laranja", + "ACKS.colors.white": "Branco", - "OSE.reaction.check": "Teste de reação", - "OSE.reaction.Hostile": "{name} é Hostil", - "OSE.reaction.Unfriendly": "{name} é Inamistoso", - "OSE.reaction.Neutral": "{name} é Neutro", - "OSE.reaction.Indifferent": "{name} é Indiferente", - "OSE.reaction.Friendly": "{name} é Amigável" + "ACKS.reaction.check": "Teste de reação", + "ACKS.reaction.Hostile": "{name} é Hostil", + "ACKS.reaction.Unfriendly": "{name} é Inamistoso", + "ACKS.reaction.Neutral": "{name} é Neutro", + "ACKS.reaction.Indifferent": "{name} é Indiferente", + "ACKS.reaction.Friendly": "{name} é Amigável" } diff --git a/src/module/actor/actor-sheet.js b/src/module/actor/actor-sheet.js index b49cf7e..1a03b79 100644 --- a/src/module/actor/actor-sheet.js +++ b/src/module/actor/actor-sheet.js @@ -1,7 +1,7 @@ -import { OseActor } from "./entity.js"; -import { OseEntityTweaks } from "../dialog/entity-tweaks.js"; +import { AcksActor } from "./entity.js"; +import { AcksEntityTweaks } from "../dialog/entity-tweaks.js"; -export class OseActorSheet extends ActorSheet { +export class AcksActorSheet extends ActorSheet { constructor(...args) { super(...args); } @@ -10,10 +10,10 @@ export class OseActorSheet extends ActorSheet { getData() { const data = super.getData(); - data.config = CONFIG.OSE; + data.config = CONFIG.ACKS; // Settings - data.config.ascendingAC = game.settings.get("ose", "ascendingAC"); - data.config.encumbrance = game.settings.get("ose", "encumbranceOption"); + data.config.ascendingAC = game.settings.get("acks", "ascendingAC"); + data.config.encumbrance = game.settings.get("acks", "encumbranceOption"); // Prepare owned items this._prepareItems(data); @@ -120,7 +120,8 @@ export class OseActorSheet extends ActorSheet { activateListeners(html) { super.activateListeners(html); - + + // Item summaries html .find(".item .item-name h4") @@ -148,7 +149,7 @@ export class OseActorSheet extends ActorSheet { data: { counter: { value: item.data.data.counter.value - 1 } }, }); } - item.rollWeapon({ skipDialog: ev.ctrlKey }); + item.rollWeapon({ skipDialog: ev.ctrlKey }); } else if (item.type == "spell") { item.spendSpell({ skipDialog: ev.ctrlKey }); } else { @@ -156,6 +157,11 @@ export class OseActorSheet extends ActorSheet { } }); + html + .find(".memorize input") + .click((ev) => ev.target.select()) + .change(this._onSpellChange.bind(this)); + html.find(".attack a").click((ev) => { let actorObject = this.actor; let element = event.currentTarget; @@ -165,11 +171,15 @@ export class OseActorSheet extends ActorSheet { roll: {}, }; actorObject.targetAttack(rollData, attack, { - type: attack, - skipDialog: ev.ctrlKey, - }); + type: attack, + skipDialog: ev.ctrlKey, + }); + + html.find(".spells .item-reset").click((ev) => { + this._resetSpells(ev); }); - + }); + html.find(".hit-dice .attribute-name a").click((ev) => { let actorObject = this.actor; actorObject.rollHitDice({ event: event }); @@ -227,14 +237,14 @@ export class OseActorSheet extends ActorSheet { let heightDelta = this.position.height - this.options.height; editor.style.height = `${ heightDelta + parseInt(container.dataset.editorSize) - }px`; + }px`; } }); } _onConfigureActor(event) { event.preventDefault(); - new OseEntityTweaks(this.actor, { + new AcksEntityTweaks(this.actor, { top: this.position.top + 40, left: this.position.left + (this.position.width - 400) / 2, }).render(true); @@ -252,7 +262,7 @@ export class OseActorSheet extends ActorSheet { if (this.options.editable && canConfigure) { buttons = [ { - label: game.i18n.localize("OSE.dialog.tweaks"), + label: game.i18n.localize("ACKS.dialog.tweaks"), class: "configure-actor", icon: "fas fa-code", onclick: (ev) => this._onConfigureActor(ev), diff --git a/src/module/actor/character-sheet.js b/src/module/actor/character-sheet.js index 96efd00..2201c23 100644 --- a/src/module/actor/character-sheet.js +++ b/src/module/actor/character-sheet.js @@ -1,12 +1,12 @@ -import { OseActor } from "./entity.js"; -import { OseActorSheet } from "./actor-sheet.js"; -import { OseCharacterModifiers } from "../dialog/character-modifiers.js"; -import { OseCharacterCreator } from "../dialog/character-creation.js"; +import { AcksActor } from "./entity.js"; +import { AcksActorSheet } from "./actor-sheet.js"; +import { AcksCharacterModifiers } from "../dialog/character-modifiers.js"; +import { AcksCharacterCreator } from "../dialog/character-creation.js"; /** * Extend the basic ActorSheet with some very simple modifications */ -export class OseActorSheetCharacter extends OseActorSheet { +export class AcksActorSheetCharacter extends AcksActorSheet { constructor(...args) { super(...args); } @@ -19,8 +19,8 @@ export class OseActorSheetCharacter extends OseActorSheet { */ static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["ose", "sheet", "actor", "character"], - template: "systems/ose/templates/actors/character-sheet.html", + classes: ["acks", "sheet", "actor", "character"], + template: "systems/acks/templates/actors/character-sheet.html", width: 450, height: 530, resizable: true, @@ -35,7 +35,7 @@ export class OseActorSheetCharacter extends OseActorSheet { } generateScores() { - new OseCharacterCreator(this.actor, { + new AcksCharacterCreator(this.actor, { top: this.position.top + 40, left: this.position.left + (this.position.width - 400) / 2, }).render(true); @@ -48,9 +48,9 @@ export class OseActorSheetCharacter extends OseActorSheet { getData() { const data = super.getData(); - data.config.ascendingAC = game.settings.get("ose", "ascendingAC"); - data.config.initiative = game.settings.get("ose", "initiative") != "group"; - data.config.encumbrance = game.settings.get("ose", "encumbranceOption"); + data.config.ascendingAC = game.settings.get("acks", "ascendingAC"); + data.config.initiative = game.settings.get("acks", "initiative") != "group"; + data.config.encumbrance = game.settings.get("acks", "encumbranceOption"); data.isNew = this.actor.isNew(); return data; @@ -58,11 +58,11 @@ export class OseActorSheetCharacter extends OseActorSheet { async _chooseLang() { - let choices = CONFIG.OSE.languages; + let choices = CONFIG.ACKS.languages; let templateData = { choices: choices }, dlg = await renderTemplate( - "/systems/ose/templates/actors/dialogs/lang-create.html", + "/systems/acks/templates/actors/dialogs/lang-create.html", templateData ); //Create Dialog window @@ -72,7 +72,7 @@ export class OseActorSheetCharacter extends OseActorSheet { content: dlg, buttons: { ok: { - label: game.i18n.localize("OSE.Ok"), + label: game.i18n.localize("ACKS.Ok"), icon: '', callback: (html) => { resolve({ @@ -82,7 +82,7 @@ export class OseActorSheetCharacter extends OseActorSheet { }, cancel: { icon: '', - label: game.i18n.localize("OSE.Cancel"), + label: game.i18n.localize("ACKS.Cancel"), }, }, default: "ok", @@ -94,7 +94,7 @@ export class OseActorSheetCharacter extends OseActorSheet { const data = this.actor.data.data; let update = duplicate(data[table]); this._chooseLang().then((dialogInput) => { - const name = CONFIG.OSE.languages[dialogInput.choice]; + const name = CONFIG.ACKS.languages[dialogInput.choice]; if (update.value) { update.value.push(name); } else { @@ -125,7 +125,7 @@ export class OseActorSheetCharacter extends OseActorSheet { _onShowModifiers(event) { event.preventDefault(); - new OseCharacterModifiers(this.actor, { + new AcksCharacterModifiers(this.actor, { top: this.position.top + 40, left: this.position.left + (this.position.width - 400) / 2, }).render(true); diff --git a/src/module/actor/entity.js b/src/module/actor/entity.js index 58f728e..1f3efa2 100644 --- a/src/module/actor/entity.js +++ b/src/module/actor/entity.js @@ -1,6 +1,6 @@ -import { OseDice } from "../dice.js"; +import { AcksDice } from "../dice.js"; -export class OseActor extends Actor { +export class AcksActor extends Actor { /** * Extends data from base Actor class */ @@ -17,7 +17,7 @@ export class OseActor extends Actor { this.computeTreasure(); // Determine Initiative - if (game.settings.get("ose", "initiative") != "group") { + if (game.settings.get("acks", "initiative") != "group") { data.initiative.value = data.initiative.mod; if (this.data.type == "character") { data.initiative.value += data.scores.dex.mod; @@ -42,7 +42,7 @@ export class OseActor extends Actor { }).then(() => { const speaker = ChatMessage.getSpeaker({ actor: this }); ChatMessage.create({ - content: game.i18n.format("OSE.messages.GetExperience", { + content: game.i18n.format("ACKS.messages.GetExperience", { name: this.name, value: modified, }), @@ -71,7 +71,7 @@ export class OseActor extends Actor { generateSave(hd) { let saves = {}; for (let i = 0; i <= hd; i++) { - let tmp = CONFIG.OSE.monster_saves[i]; + let tmp = CONFIG.ACKS.monster_saves[i]; if (tmp) { saves = tmp; } @@ -115,7 +115,7 @@ export class OseActor extends Actor { } rollSave(save, options = {}) { - const label = game.i18n.localize(`OSE.saves.${save}.long`); + const label = game.i18n.localize(`ACKS.saves.${save}.long`); const rollParts = ["1d20"]; const data = { @@ -125,7 +125,7 @@ export class OseActor extends Actor { target: this.data.data.saves[save].value, magic: this.data.data.scores.wis.mod }, - details: game.i18n.format("OSE.roll.details.save", { save: label }), + details: game.i18n.format("ACKS.roll.details.save", { save: label }), }; let skip = options.event && options.event.ctrlKey; @@ -133,14 +133,14 @@ export class OseActor extends Actor { const rollMethod = this.data.type == "character" ? OseDice.RollSave : OseDice.Roll; // Roll and return - return rollMethod({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, skipDialog: skip, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: game.i18n.format("OSE.roll.save", { save: label }), - title: game.i18n.format("OSE.roll.save", { save: label }), + flavor: game.i18n.format("ACKS.roll.save", { save: label }), + title: game.i18n.format("ACKS.roll.save", { save: label }), }); } @@ -156,19 +156,19 @@ export class OseActor extends Actor { }; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, skipDialog: true, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: game.i18n.localize("OSE.roll.morale"), - title: game.i18n.localize("OSE.roll.morale"), + flavor: game.i18n.localize("ACKS.roll.morale"), + title: game.i18n.localize("ACKS.roll.morale"), }); } rollLoyalty(options = {}) { - const label = game.i18n.localize(`OSE.roll.loyalty`); + const label = game.i18n.localize(`ACKS.roll.loyalty`); const rollParts = ["2d6"]; const data = { @@ -180,7 +180,7 @@ export class OseActor extends Actor { }; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, @@ -199,19 +199,19 @@ export class OseActor extends Actor { roll: { type: "table", table: { - 2: game.i18n.format("OSE.reaction.Hostile", { + 2: game.i18n.format("ACKS.reaction.Hostile", { name: this.data.name, }), - 3: game.i18n.format("OSE.reaction.Unfriendly", { + 3: game.i18n.format("ACKS.reaction.Unfriendly", { name: this.data.name, }), - 6: game.i18n.format("OSE.reaction.Neutral", { + 6: game.i18n.format("ACKS.reaction.Neutral", { name: this.data.name, }), - 9: game.i18n.format("OSE.reaction.Indifferent", { + 9: game.i18n.format("ACKS.reaction.Indifferent", { name: this.data.name, }), - 12: game.i18n.format("OSE.reaction.Friendly", { + 12: game.i18n.format("ACKS.reaction.Friendly", { name: this.data.name, }), }, @@ -221,19 +221,19 @@ export class OseActor extends Actor { let skip = options.event && options.event.ctrlKey; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, skipDialog: skip, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: game.i18n.localize("OSE.reaction.check"), - title: game.i18n.localize("OSE.reaction.check"), + flavor: game.i18n.localize("ACKS.reaction.check"), + title: game.i18n.localize("ACKS.reaction.check"), }); } rollCheck(score, options = {}) { - const label = game.i18n.localize(`OSE.scores.${score}.long`); + const label = game.i18n.localize(`ACKS.scores.${score}.long`); const rollParts = ["1d20"]; const data = { @@ -243,7 +243,7 @@ export class OseActor extends Actor { target: this.data.data.scores[score].value, }, - details: game.i18n.format("OSE.roll.details.attribute", { + details: game.i18n.format("ACKS.roll.details.attribute", { score: label, }), }; @@ -251,19 +251,19 @@ export class OseActor extends Actor { let skip = options.event && options.event.ctrlKey; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, skipDialog: skip, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: game.i18n.format("OSE.roll.attribute", { attribute: label }), - title: game.i18n.format("OSE.roll.attribute", { attribute: label }), + flavor: game.i18n.format("ACKS.roll.attribute", { attribute: label }), + title: game.i18n.format("ACKS.roll.attribute", { attribute: label }), }); } rollHitDice(options = {}) { - const label = game.i18n.localize(`OSE.roll.hd`); + const label = game.i18n.localize(`ACKS.roll.hd`); const rollParts = [this.data.data.hp.hd]; if (this.data.type == "character") { rollParts.push(this.data.data.scores.con.mod); @@ -277,7 +277,7 @@ export class OseActor extends Actor { }; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, @@ -308,19 +308,19 @@ export class OseActor extends Actor { }; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, skipDialog: true, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: game.i18n.format("OSE.roll.appearing", { type: label }), - title: game.i18n.format("OSE.roll.appearing", { type: label }), + flavor: game.i18n.format("ACKS.roll.appearing", { type: label }), + title: game.i18n.format("ACKS.roll.appearing", { type: label }), }); } rollExploration(expl, options = {}) { - const label = game.i18n.localize(`OSE.exploration.${expl}.long`); + const label = game.i18n.localize(`ACKS.exploration.${expl}.long`); const rollParts = ["1d6"]; const data = { @@ -329,7 +329,7 @@ export class OseActor extends Actor { type: "below", target: this.data.data.exploration[expl], }, - details: game.i18n.format("OSE.roll.details.exploration", { + details: game.i18n.format("ACKS.roll.details.exploration", { expl: label, }), }; @@ -337,14 +337,14 @@ export class OseActor extends Actor { let skip = options.event && options.event.ctrlKey; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, skipDialog: skip, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: game.i18n.format("OSE.roll.exploration", { exploration: label }), - title: game.i18n.format("OSE.roll.exploration", { exploration: label }), + flavor: game.i18n.format("ACKS.roll.exploration", { exploration: label }), + title: game.i18n.format("ACKS.roll.exploration", { exploration: label }), }); } @@ -372,14 +372,14 @@ export class OseActor extends Actor { } // Damage roll - OseDice.Roll({ + AcksDice.Roll({ event: options.event, parts: dmgParts, data: rollData, skipDialog: true, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: `${attData.label} - ${game.i18n.localize("OSE.Damage")}`, - title: `${attData.label} - ${game.i18n.localize("OSE.Damage")}`, + flavor: `${attData.label} - ${game.i18n.localize("ACKS.Damage")}`, + title: `${attData.label} - ${game.i18n.localize("ACKS.Damage")}`, }); } @@ -399,21 +399,21 @@ export class OseActor extends Actor { rollAttack(attData, options = {}) { const data = this.data.data; - const rollParts = ["1d20"]; + const rollParts = ["1d20x="]; const dmgParts = []; - let label = game.i18n.format("OSE.roll.attacks", { + let label = game.i18n.format("ACKS.roll.attacks", { name: this.data.name, }); if (!attData.item) { dmgParts.push("1d6"); } else { - label = game.i18n.format("OSE.roll.attacksWith", { + label = game.i18n.format("ACKS.roll.attacksWith", { name: attData.item.name, }); dmgParts.push(attData.item.data.damage); } - let ascending = game.settings.get("ose", "ascendingAC"); + let ascending = game.settings.get("acks", "ascendingAC"); if (ascending) { rollParts.push(data.thac0.bba.toString()); } @@ -448,7 +448,7 @@ export class OseActor extends Actor { }; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: rollData, @@ -500,13 +500,14 @@ export class OseActor extends Actor { return; } const data = this.data.data; - let option = game.settings.get("ose", "encumbranceOption"); + let option = game.settings.get("acks", "encumbranceOption"); // Compute encumbrance let totalWeight = 0; let hasItems = false; Object.values(this.data.items).forEach((item) => { if (item.type == "item" && !item.data.treasure) { + hasItems = true; } if ( @@ -538,7 +539,7 @@ export class OseActor extends Actor { _calculateMovement() { const data = this.data.data; - let option = game.settings.get("ose", "encumbranceOption"); + let option = game.settings.get("acks", "encumbranceOption"); let weight = data.encumbrance.value; let delta = data.encumbrance.max - 1600; if (["detailed", "complete"].includes(option)) { @@ -576,7 +577,7 @@ export class OseActor extends Actor { data.movement.base = 60; break; } - if (weight > game.settings.get("ose", "significantTreasure")) { + if (weight > game.settings.get("acks", "significantTreasure")) { data.movement.base -= 30; } } @@ -604,7 +605,7 @@ export class OseActor extends Actor { } // Compute AC let baseAc = 9; - let baseAac = 10; + let baseAac = 0; let AcShield = 0; let AacShield = 0; const data = this.data.data; @@ -642,27 +643,27 @@ export class OseActor extends Actor { 16: 2, 18: 3, }; - data.scores.str.mod = OseActor._valueFromTable( + data.scores.str.mod = AcksActor._valueFromTable( standard, data.scores.str.value ); - data.scores.int.mod = OseActor._valueFromTable( + data.scores.int.mod = AcksActor._valueFromTable( standard, data.scores.int.value ); - data.scores.dex.mod = OseActor._valueFromTable( + data.scores.dex.mod = AcksActor._valueFromTable( standard, data.scores.dex.value ); - data.scores.cha.mod = OseActor._valueFromTable( + data.scores.cha.mod = AcksActor._valueFromTable( standard, data.scores.cha.value ); - data.scores.wis.mod = OseActor._valueFromTable( + data.scores.wis.mod = AcksActor._valueFromTable( standard, data.scores.wis.value ); - data.scores.con.mod = OseActor._valueFromTable( + data.scores.con.mod = AcksActor._valueFromTable( standard, data.scores.con.value ); @@ -677,12 +678,12 @@ export class OseActor extends Actor { 16: 1, 18: 2, }; - data.scores.dex.init = OseActor._valueFromTable( - capped, + data.scores.dex.init = AcksActor._valueFromTable( + standard, data.scores.dex.value ); - data.scores.cha.npc = OseActor._valueFromTable( - capped, + data.scores.cha.npc = AcksActor._valueFromTable( + standard, data.scores.cha.value ); data.scores.cha.retain = data.scores.cha.mod + 4; @@ -696,30 +697,28 @@ export class OseActor extends Actor { 16: 4, 18: 5, }; - data.exploration.odMod = OseActor._valueFromTable( + data.exploration.odMod = AcksActor._valueFromTable( od, data.scores.str.value ); const literacy = { - 0: "", - 3: "OSE.Illiterate", - 6: "OSE.LiteracyBasic", - 9: "OSE.Literate", + 3: "ACKS.Illiterate", + 9: "ACKS.Literate", }; - data.languages.literacy = OseActor._valueFromTable( + data.languages.literacy = AcksActor._valueFromTable( literacy, data.scores.int.value ); const spoken = { - 0: "OSE.NativeBroken", - 3: "OSE.Native", - 13: "OSE.NativePlus1", - 16: "OSE.NativePlus2", - 18: "OSE.NativePlus3", + 0: "ACKS.NativeBroken", + 3: "ACKS.Native", + 13: "ACKS.NativePlus1", + 16: "ACKS.NativePlus2", + 18: "ACKS.NativePlus3", }; - data.languages.spoken = OseActor._valueFromTable( + data.languages.spoken = AcksActor._valueFromTable( spoken, data.scores.int.value ); diff --git a/src/module/actor/monster-sheet.js b/src/module/actor/monster-sheet.js index 322e2e2..2f655a9 100644 --- a/src/module/actor/monster-sheet.js +++ b/src/module/actor/monster-sheet.js @@ -1,10 +1,10 @@ -import { OseActor } from "./entity.js"; -import { OseActorSheet } from "./actor-sheet.js"; +import { AcksActor } from "./entity.js"; +import { AcksActorSheet } from "./actor-sheet.js"; /** * Extend the basic ActorSheet with some very simple modifications */ -export class OseActorSheetMonster extends OseActorSheet { +export class AcksActorSheetMonster extends AcksActorSheet { constructor(...args) { super(...args); } @@ -17,8 +17,8 @@ export class OseActorSheetMonster extends OseActorSheet { */ static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["ose", "sheet", "monster", "actor"], - template: "systems/ose/templates/actors/monster-sheet.html", + classes: ["acks", "sheet", "monster", "actor"], + template: "systems/acks/templates/actors/monster-sheet.html", width: 450, height: 560, resizable: true, @@ -36,20 +36,20 @@ export class OseActorSheetMonster extends OseActorSheet { * Monster creation helpers */ async generateSave() { - let choices = CONFIG.OSE.monster_saves; + let choices = CONFIG.ACKS.monster_saves; let templateData = { choices: choices }, dlg = await renderTemplate( - "/systems/ose/templates/actors/dialogs/monster-saves.html", + "/systems/acks/templates/actors/dialogs/monster-saves.html", templateData ); //Create Dialog window new Dialog({ - title: game.i18n.localize("OSE.dialog.generateSaves"), + title: game.i18n.localize("ACKS.dialog.generateSaves"), content: dlg, buttons: { ok: { - label: game.i18n.localize("OSE.Ok"), + label: game.i18n.localize("ACKS.Ok"), icon: '', callback: (html) => { let hd = html.find('select[name="choice"]').val(); @@ -58,7 +58,7 @@ export class OseActorSheetMonster extends OseActorSheet { }, cancel: { icon: '', - label: game.i18n.localize("OSE.Cancel"), + label: game.i18n.localize("ACKS.Cancel"), }, }, default: "ok", @@ -75,7 +75,7 @@ export class OseActorSheetMonster extends OseActorSheet { const data = super.getData(); // Settings - data.config.morale = game.settings.get("ose", "morale"); + data.config.morale = game.settings.get("acks", "morale"); data.data.details.treasure.link = TextEditor.enrichHTML(data.data.details.treasure.table); data.isNew = this.actor.isNew(); return data; @@ -117,7 +117,7 @@ export class OseActorSheetMonster extends OseActorSheet { content: dlg, buttons: { ok: { - label: game.i18n.localize("OSE.Ok"), + label: game.i18n.localize("ACKS.Ok"), icon: '', callback: (html) => { resolve({ @@ -128,7 +128,7 @@ export class OseActorSheetMonster extends OseActorSheet { }, cancel: { icon: '', - label: game.i18n.localize("OSE.Cancel"), + label: game.i18n.localize("ACKS.Cancel"), }, }, default: "ok", @@ -252,7 +252,7 @@ export class OseActorSheetMonster extends OseActorSheet { const li = $(ev.currentTarget).parents(".item"); const item = this.actor.getOwnedItem(li.data("itemId")); let currentColor = item.data.data.pattern; - let colors = Object.keys(CONFIG.OSE.colors); + let colors = Object.keys(CONFIG.ACKS.colors); let index = colors.indexOf(currentColor); if (index + 1 == colors.length) { index = 0; diff --git a/src/module/chat.js b/src/module/chat.js index 41e656e..d4c445c 100644 --- a/src/module/chat.js +++ b/src/module/chat.js @@ -11,13 +11,13 @@ export const addChatMessageContextOptions = function(html, options) { let canApply = li => canvas.tokens.controlled.length && li.find(".dice-roll").length; options.push( { - name: game.i18n.localize("OSE.messages.applyDamage"), + name: game.i18n.localize("ACKS.messages.applyDamage"), icon: '', condition: canApply, callback: li => applyChatCardDamage(li, 1) }, { - name: game.i18n.localize("OSE.messages.applyHealing"), + name: game.i18n.localize("ACKS.messages.applyHealing"), icon: '', condition: canApply, callback: li => applyChatCardDamage(li, -1) diff --git a/src/module/combat.js b/src/module/combat.js index 5c29c81..24dea47 100644 --- a/src/module/combat.js +++ b/src/module/combat.js @@ -1,10 +1,10 @@ -export class OseCombat { +export class AcksCombat { static rollInitiative(combat, data) { // Check groups data.combatants = []; let groups = {}; combat.data.combatants.forEach((cbt) => { - groups[cbt.flags.ose.group] = { present: true }; + groups[cbt.flags.acks.group] = { present: true }; data.combatants.push(cbt); }); @@ -12,7 +12,7 @@ export class OseCombat { Object.keys(groups).forEach((group) => { let roll = new Roll("1d6").roll(); roll.toMessage({ - flavor: game.i18n.format('OSE.roll.initiative', { group: CONFIG["OSE"].colors[group] }), + flavor: game.i18n.format('ACKS.roll.initiative', { group: CONFIG["ACKS"].colors[group] }), }); groups[group].initiative = roll.total; }); @@ -26,14 +26,14 @@ export class OseCombat { data.combatants[i].initiative = -789; } else { data.combatants[i].initiative = - groups[data.combatants[i].flags.ose.group].initiative; + groups[data.combatants[i].flags.acks.group].initiative; } } combat.setupTurns(); } static async resetInitiative(combat, data) { - let reroll = game.settings.get("ose", "rerollInitiative"); + let reroll = game.settings.get("acks", "rerollInitiative"); if (!["reset", "reroll"].includes(reroll)) { return; } @@ -66,7 +66,7 @@ export class OseCombat { token: c.token._id, alias: c.token.name }, - flavor: game.i18n.format('OSE.roll.individualInit', { name: c.token.name }) + flavor: game.i18n.format('ACKS.roll.individualInit', { name: c.token.name }) }, {}); const chatData = roll.toMessage(messageData, { rollMode, create: false }); @@ -89,7 +89,7 @@ export class OseCombat { ? '' : span.innerHTML; }); - let init = game.settings.get("ose", "initiative") == "group"; + let init = game.settings.get("acks", "initiative") == "group"; if (!init) { return; } @@ -109,19 +109,19 @@ export class OseCombat { // Get group color let cmbtant = object.combat.getCombatant(ct.dataset.combatantId); - let color = cmbtant.flags.ose.group; + let color = cmbtant.flags.acks.group; // Append colored flag let controls = $(ct).find(".combatant-controls"); controls.prepend( - `` + `` ); }); - OseCombat.addListeners(html); + AcksCombat.addListeners(html); } static updateCombatant(combat, combatant, data) { - let init = game.settings.get("ose", "initiative"); + let init = game.settings.get("acks", "initiative"); // Why do you reroll ? if (combatant.actor.data.data.isSlow) { data.initiative = -789; @@ -135,7 +135,7 @@ export class OseCombat { ct.initiative && ct.initiative != "-789.00" && ct._id != data._id && - ct.flags.ose.group == combatant.flags.ose.group + ct.flags.acks.group == combatant.flags.acks.group ) { groupInit = ct.initiative; // Set init @@ -152,7 +152,7 @@ export class OseCombat { return; } let currentColor = ev.currentTarget.style.color; - let colors = Object.keys(CONFIG.OSE.colors); + let colors = Object.keys(CONFIG.ACKS.colors); let index = colors.indexOf(currentColor); if (index + 1 == colors.length) { index = 0; @@ -162,7 +162,7 @@ export class OseCombat { let id = $(ev.currentTarget).closest(".combatant")[0].dataset.combatantId; game.combat.updateCombatant({ _id: id, - flags: { ose: { group: colors[index] } }, + flags: { acks: { group: colors[index] } }, }); }); @@ -171,7 +171,7 @@ export class OseCombat { return; } let data = {}; - OseCombat.rollInitiative(game.combat, data); + AcksCombat.rollInitiative(game.combat, data); game.combat.update({ data: data }).then(() => { game.combat.setupTurns(); }); @@ -193,7 +193,7 @@ export class OseCombat { break; } data.flags = { - ose: { + acks: { group: color, }, }; diff --git a/src/module/config.js b/src/module/config.js index 806c121..6a6ad7e 100644 --- a/src/module/config.js +++ b/src/module/config.js @@ -1,11 +1,11 @@ -export const OSE = { +export const ACKS = { scores: { - str: "OSE.scores.str.long", - int: "OSE.scores.int.long", - dex: "OSE.scores.dex.long", - wis: "OSE.scores.wis.long", - con: "OSE.scores.con.long", - cha: "OSE.scores.cha.long", + str: "ACKS.scores.str.long", + int: "ACKS.scores.int.long", + dex: "ACKS.scores.dex.long", + wis: "ACKS.scores.wis.long", + con: "ACKS.scores.con.long", + cha: "ACKS.scores.cha.long", }, roll_type: { result: "=", @@ -13,80 +13,95 @@ export const OSE = { below: "≤" }, saves_short: { - death: "OSE.saves.death.short", - wand: "OSE.saves.wand.short", - paralysis: "OSE.saves.paralysis.short", - breath: "OSE.saves.breath.short", - spell: "OSE.saves.spell.short", + death: "ACKS.saves.death.short", + wand: "ACKS.saves.wand.short", + paralysis: "ACKS.saves.paralysis.short", + breath: "ACKS.saves.breath.short", + spell: "ACKS.saves.spell.short", }, saves_long: { - death: "OSE.saves.death.long", - wand: "OSE.saves.wand.long", - paralysis: "OSE.saves.paralysis.long", - breath: "OSE.saves.breath.long", - spell: "OSE.saves.spell.long", + death: "ACKS.saves.death.long", + wand: "ACKS.saves.wand.long", + paralysis: "ACKS.saves.paralysis.long", + breath: "ACKS.saves.breath.long", + spell: "ACKS.saves.spell.long", }, armor : { - unarmored: "OSE.armor.unarmored", - light: "OSE.armor.light", - heavy: "OSE.armor.heavy", - shield: "OSE.armor.shield", + unarmored: "ACKS.armor.unarmored", + light: "ACKS.armor.light", + heavy: "ACKS.armor.heavy", + shield: "ACKS.armor.shield", }, colors: { - green: "OSE.colors.green", - red: "OSE.colors.red", - yellow: "OSE.colors.yellow", - purple: "OSE.colors.purple", - blue: "OSE.colors.blue", - orange: "OSE.colors.orange", - white: "OSE.colors.white" + green: "ACKS.colors.green", + red: "ACKS.colors.red", + yellow: "ACKS.colors.yellow", + purple: "ACKS.colors.purple", + blue: "ACKS.colors.blue", + orange: "ACKS.colors.orange", + white: "ACKS.colors.white" }, languages: [ - "Common", - "Lawful", - "Chaotic", - "Neutral", - "Bugbear", - "Doppelgänger", - "Dragon", - "Dwarvish", - "Elvish", - "Gargoyle", - "Gnoll", - "Gnomish", - "Goblin", - "Halfling", - "Harpy", - "Hobgoblin", - "Kobold", - "Lizard Man", - "Medusa", - "Minotaur", - "Ogre", - "Orcish", - "Pixie" - ], + "Northern", + "Jutlandic", + "Auran", + "Dwarvish", + "Elvish", + "Celedorean", + "Kemeshi", + "Krysean", + "Kushtun", + "Nicean", + "Opelenean", + "Rornish", + "Shebatean", + "Skysos", + "Somirean", + "Ancient Zaharan", + "Archaian", + "Besheradi", + "Bugbear", + "Classical Argollëan", + "Classical Auran", + "Doppelgänger", + "Draconic", + "Gargoyle", + "Gnoll", + "Gnomish", + "Goblin", + "Halfling", + "Harpy", + "Hobgoblin", + "Kobold", + "Lizardman", + "Medusa", + "Minotaur", + "Ogre", + "Orcish", + "Pixie", + "Thrassian" + ], tags: { - melee: "OSE.items.Melee", - missile: "OSE.items.Missile", - slow: "OSE.items.Slow", - twohanded: "OSE.items.TwoHanded", - blunt: "OSE.items.Blunt", - brace: "OSE.items.Brace", - splash: "OSE.items.Splash", - reload: "OSE.items.Reload", - charge: "OSE.items.Charge", + melee: "ACKS.items.Melee", + missile: "ACKS.items.Missile", + slow: "ACKS.items.Slow", + twohanded: "ACKS.items.TwoHanded", + blunt: "ACKS.items.Blunt", + brace: "ACKS.items.Brace", + splash: "ACKS.items.Splash", + reload: "ACKS.items.Reload", + charge: "ACKS.items.Charge", }, tag_images: { - melee: "/systems/ose/assets/melee.png", - missile: "/systems/ose/assets/missile.png", - slow: "/systems/ose/assets/slow.png", - twohanded: "/systems/ose/assets/twohanded.png", - blunt: "/systems/ose/assets/blunt.png", - brace: "/systems/ose/assets/brace.png", - splash: "/systems/ose/assets/splash.png", - reload: "/systems/ose/assets/reload.png", - charge: "/systems/ose/assets/charge.png", + melee: "/systems/acks/assets/melee.png", + missile: "/systems/acks/assets/missile.png", + slow: "/systems/acks/assets/slow.png", + twohanded: "/systems/acks/assets/twohanded.png", + blunt: "/systems/acks/assets/blunt.png", + brace: "/systems/acks/assets/brace.png", + splash: "/systems/acks/assets/splash.png", + reload: "/systems/acks/assets/reload.png", + charge: "/systems/acks/assets/charge.png", }, monster_saves: { 0: { diff --git a/src/module/dialog/character-creation.js b/src/module/dialog/character-creation.js index 19dcf59..fdededc 100644 --- a/src/module/dialog/character-creation.js +++ b/src/module/dialog/character-creation.js @@ -1,13 +1,13 @@ -import { OseActor } from '../actor/entity.js'; -import { OseDice } from "../dice.js"; +import { AcksActor } from '../actor/entity.js'; +import { AcksDice } from "../dice.js"; -export class OseCharacterCreator extends FormApplication { +export class AcksCharacterCreator extends FormApplication { static get defaultOptions() { const options = super.defaultOptions; - options.classes = ["ose", "dialog", "creator"], + options.classes = ["acks", "dialog", "creator"], options.id = 'character-creator'; options.template = - 'systems/ose/templates/actors/dialogs/character-creation.html'; + 'systems/acks/templates/actors/dialogs/character-creation.html'; options.width = 235; return options; } @@ -19,7 +19,7 @@ export class OseCharacterCreator extends FormApplication { * @type {String} */ get title() { - return `${this.object.name}: ${game.i18n.localize('OSE.dialog.generator')}`; + return `${this.object.name}: ${game.i18n.localize('ACKS.dialog.generator')}`; } /* -------------------------------------------- */ @@ -31,7 +31,7 @@ export class OseCharacterCreator extends FormApplication { getData() { let data = this.object.data; data.user = game.user; - data.config = CONFIG.OSE; + data.config = CONFIG.ACKS; data.counters = { str: 0, wis: 0, @@ -85,7 +85,7 @@ export class OseCharacterCreator extends FormApplication { // Increase counter this.object.data.counters[score]++; - const label = score != "gold" ? game.i18n.localize(`OSE.scores.${score}.long`) : "Gold"; + const label = score != "gold" ? game.i18n.localize(`ACKS.scores.${score}.long`) : "Gold"; const rollParts = ["3d6"]; const data = { roll: { @@ -93,14 +93,14 @@ export class OseCharacterCreator extends FormApplication { } }; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: data, skipDialog: true, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: game.i18n.format('OSE.dialog.generateScore', { score: label, count: this.object.data.counters[score] }), - title: game.i18n.format('OSE.dialog.generateScore', { score: label, count: this.object.data.counters[score] }), + flavor: game.i18n.format('ACKS.dialog.generateScore', { score: label, count: this.object.data.counters[score] }), + title: game.i18n.format('ACKS.dialog.generateScore', { score: label, count: this.object.data.counters[score] }), }); } @@ -116,13 +116,13 @@ export class OseCharacterCreator extends FormApplication { const gold = $(this.form.children).find('.gold-value').val(); const speaker = ChatMessage.getSpeaker({ actor: this }); const templateData = { - config: CONFIG.OSE, + config: CONFIG.ACKS, scores: scores, - title: game.i18n.localize("OSE.dialog.generator"), + title: game.i18n.localize("ACKS.dialog.generator"), stats: this.object.data.stats, gold: gold } - const content = await renderTemplate("/systems/ose/templates/chat/roll-creation.html", templateData) + const content = await renderTemplate("/systems/acks/templates/chat/roll-creation.html", templateData) ChatMessage.create({ content: content, speaker, @@ -159,7 +159,7 @@ export class OseCharacterCreator extends FormApplication { const itemData = { name: "GP", type: "item", - img: "/systems/ose/assets/gold.png", + img: "/systems/acks/assets/gold.png", data: { treasure: true, cost: 1, diff --git a/src/module/dialog/character-modifiers.js b/src/module/dialog/character-modifiers.js index 54e5bf5..6211943 100644 --- a/src/module/dialog/character-modifiers.js +++ b/src/module/dialog/character-modifiers.js @@ -1,13 +1,13 @@ // eslint-disable-next-line no-unused-vars -import { OseActor } from '../actor/entity.js'; +import { AcksActor } from '../actor/entity.js'; -export class OseCharacterModifiers extends FormApplication { +export class AcksCharacterModifiers extends FormApplication { static get defaultOptions() { const options = super.defaultOptions; - options.classes = ["ose", "dialog", "modifiers"], + options.classes = ["acks", "dialog", "modifiers"], options.id = 'sheet-modifiers'; options.template = - 'systems/ose/templates/actors/dialogs/modifiers-dialog.html'; + 'systems/acks/templates/actors/dialogs/modifiers-dialog.html'; options.width = 240; return options; } diff --git a/src/module/dialog/entity-tweaks.js b/src/module/dialog/entity-tweaks.js index ad2f74f..61e4f25 100644 --- a/src/module/dialog/entity-tweaks.js +++ b/src/module/dialog/entity-tweaks.js @@ -1,12 +1,12 @@ // eslint-disable-next-line no-unused-vars -import { OseActor } from '../actor/entity.js'; +import { AcksActor } from '../actor/entity.js'; -export class OseEntityTweaks extends FormApplication { +export class AcksEntityTweaks extends FormApplication { static get defaultOptions() { const options = super.defaultOptions; options.id = 'sheet-tweaks'; options.template = - 'systems/ose/templates/actors/dialogs/tweaks-dialog.html'; + 'systems/acks/templates/actors/dialogs/tweaks-dialog.html'; options.width = 380; return options; } @@ -18,7 +18,7 @@ export class OseEntityTweaks extends FormApplication { * @type {String} */ get title() { - return `${this.object.name}: ${game.i18n.localize('OSE.dialog.tweaks')}`; + return `${this.object.name}: ${game.i18n.localize('ACKS.dialog.tweaks')}`; } /* -------------------------------------------- */ @@ -33,7 +33,7 @@ export class OseEntityTweaks extends FormApplication { data.isCharacter = true; } data.user = game.user; - data.config = CONFIG.OSE; + data.config = CONFIG.ACKS; return data; } diff --git a/src/module/dialog/party-sheet.js b/src/module/dialog/party-sheet.js index 2c8f7d8..5e527fb 100644 --- a/src/module/dialog/party-sheet.js +++ b/src/module/dialog/party-sheet.js @@ -1,9 +1,9 @@ -export class OsePartySheet extends FormApplication { +export class AcksPartySheet extends FormApplication { static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["ose", "dialog", "party-sheet"], - template: "systems/ose/templates/apps/party-sheet.html", + classes: ["acks", "dialog", "party-sheet"], + template: "systems/acks/templates/apps/party-sheet.html", width: 280, height: 400, resizable: true, @@ -17,7 +17,7 @@ export class OsePartySheet extends FormApplication { * @type {String} */ get title() { - return game.i18n.localize("OSE.dialog.partysheet"); + return game.i18n.localize("ACKS.dialog.partysheet"); } /* -------------------------------------------- */ @@ -28,11 +28,11 @@ export class OsePartySheet extends FormApplication { */ getData() { const settings = { - ascending: game.settings.get('ose', 'ascendingAC') + ascending: game.settings.get('acks', 'ascendingAC') }; let data = { data: this.object, - config: CONFIG.OSE, + config: CONFIG.ACKS, user: game.user, settings: settings }; @@ -62,7 +62,7 @@ export class OsePartySheet extends FormApplication { `; let pcs = this.object.entities.filter((e) => { - return e.getFlag('ose', 'party') && e.data.type == "character"; + return e.getFlag('acks', 'party') && e.data.type == "character"; }); new Dialog({ title: "Deal Experience", @@ -70,7 +70,7 @@ export class OsePartySheet extends FormApplication { buttons: { set: { icon: '', - label: game.i18n.localize("OSE.dialog.dealXP"), + label: game.i18n.localize("ACKS.dialog.dealXP"), callback: (html) => { let toDeal = html.find('input[name="total"]').val(); // calculate number of shares @@ -90,7 +90,7 @@ export class OsePartySheet extends FormApplication { } async _selectActors(ev) { - const template = "/systems/ose/templates/apps/party-select.html"; + const template = "/systems/acks/templates/apps/party-select.html"; const templateData = { actors: this.object.entities } @@ -101,12 +101,12 @@ export class OsePartySheet extends FormApplication { buttons: { set: { icon: '', - label: game.i18n.localize("OSE.Update"), + label: game.i18n.localize("ACKS.Update"), callback: (html) => { let checks = html.find("input[data-action='select-actor']"); checks.each(async (_, c) => { let key = c.getAttribute('name'); - await this.object.entities[key].setFlag('ose', 'party', c.checked); + await this.object.entities[key].setFlag('acks', 'party', c.checked); }); }, }, diff --git a/src/module/dice.js b/src/module/dice.js index 616338b..98eb53f 100644 --- a/src/module/dice.js +++ b/src/module/dice.js @@ -1,4 +1,4 @@ -export class OseDice { +export class AcksDice { static digestResult(data, roll) { let result = { isSuccess: false, @@ -51,7 +51,7 @@ export class OseDice { speaker = null, form = null, } = {}) { - const template = "systems/ose/templates/chat/roll-result.html"; + const template = "systems/acks/templates/chat/roll-result.html"; let chatData = { user: game.user._id, @@ -88,11 +88,11 @@ export class OseDice { data.roll.blindroll = true; } - templateData.result = OseDice.digestResult(data, roll); + templateData.result = AcksDice.digestResult(data, roll); return new Promise((resolve) => { roll.render().then((r) => { - templateData.rollOSE = r; + templateData.rollACKS = r; renderTemplate(template, templateData).then((content) => { chatData.content = content; // Dice So Nice @@ -136,31 +136,32 @@ export class OseDice { : 0; result.victim = data.roll.target ? data.roll.target.data.name : null; - if (game.settings.get("ose", "ascendingAC")) { - if (roll.total < targetAac) { + if (game.settings.get("acks", "ascendingAC")) { + if (roll.total < targetAac + 10) { result.details = game.i18n.format( - "OSE.messages.AttackAscendingFailure", + "ACKS.messages.AttackAscendingFailure", { + result: roll.total - 10, bonus: result.target, } ); return result; } - result.details = game.i18n.format("OSE.messages.AttackAscendingSuccess", { - result: roll.total, + result.details = game.i18n.format("ACKS.messages.AttackAscendingSuccess", { + result: roll.total - 10, }); result.isSuccess = true; } else { // B/X Historic THAC0 Calculation if (result.target - roll.total > targetAc) { - result.details = game.i18n.format("OSE.messages.AttackFailure", { + result.details = game.i18n.format("ACKS.messages.AttackFailure", { bonus: result.target, }); return result; } result.isSuccess = true; let value = Math.clamped(result.target - roll.total, -3, 9); - result.details = game.i18n.format("OSE.messages.AttackSuccess", { + result.details = game.i18n.format("ACKS.messages.AttackSuccess", { result: value, bonus: result.target, }); @@ -176,7 +177,7 @@ export class OseDice { speaker = null, form = null, } = {}) { - const template = "systems/ose/templates/chat/roll-attack.html"; + const template = "systems/acks/templates/chat/roll-attack.html"; let chatData = { user: game.user._id, @@ -187,7 +188,7 @@ export class OseDice { title: title, flavor: flavor, data: data, - config: CONFIG.OSE, + config: CONFIG.ACKS, }; // Optionally include a situational bonus @@ -213,11 +214,11 @@ export class OseDice { data.roll.blindroll = true; } - templateData.result = OseDice.digestAttackResult(data, roll); + templateData.result = AcksDice.digestAttackResult(data, roll); return new Promise((resolve) => { roll.render().then((r) => { - templateData.rollOSE = r; + templateData.rollACKS = r; dmgRoll.render().then((dr) => { templateData.rollDamage = dr; renderTemplate(template, templateData).then((content) => { @@ -272,7 +273,7 @@ export class OseDice { title = null, } = {}) { let rolled = false; - const template = "systems/ose/templates/chat/roll-dialog.html"; + const template = "systems/acks/templates/chat/roll-dialog.html"; let dialogData = { formula: parts.join(" "), data: data, @@ -287,32 +288,32 @@ export class OseDice { flavor: flavor, speaker: speaker, }; - if (skipDialog) { OseDice.sendRoll(rollData); } + if (skipDialog) { AcksDice.sendRoll(rollData); } let buttons = { ok: { - label: game.i18n.localize("OSE.Roll"), + label: game.i18n.localize("ACKS.Roll"), icon: '', callback: (html) => { rolled = true; rollData.form = html[0].children[0]; - roll = OseDice.sendRoll(rollData); + roll = AcksDice.sendRoll(rollData); }, }, magic: { - label: game.i18n.localize("OSE.saves.magic.short"), + label: game.i18n.localize("ACKS.saves.magic.short"), icon: '', callback: (html) => { rolled = true; rollData.form = html[0].children[0]; rollData.data.roll.target = parseInt(rollData.data.roll.target) + parseInt(rollData.data.roll.magic); - rollData.title += ` ${game.i18n.localize("OSE.saves.magic.short")} (${rollData.data.roll.magic})`; - roll = OseDice.sendRoll(rollData); + rollData.title += ` ${game.i18n.localize("ACKS.saves.magic.short")} (${rollData.data.roll.magic})`; + roll = AcksDice.sendRoll(rollData); }, }, cancel: { icon: '', - label: game.i18n.localize("OSE.Cancel"), + label: game.i18n.localize("ACKS.Cancel"), callback: (html) => { }, }, }; @@ -343,7 +344,7 @@ export class OseDice { title = null, } = {}) { let rolled = false; - const template = "systems/ose/templates/chat/roll-dialog.html"; + const template = "systems/acks/templates/chat/roll-dialog.html"; let dialogData = { formula: parts.join(" "), data: data, @@ -360,25 +361,25 @@ export class OseDice { }; if (skipDialog) { return ["melee", "missile", "attack"].includes(data.roll.type) - ? OseDice.sendAttackRoll(rollData) - : OseDice.sendRoll(rollData); + ? AcksDice.sendAttackRoll(rollData) + : AcksDice.sendRoll(rollData); } let buttons = { ok: { - label: game.i18n.localize("OSE.Roll"), + label: game.i18n.localize("ACKS.Roll"), icon: '', callback: (html) => { rolled = true; rollData.form = html[0].children[0]; roll = ["melee", "missile", "attack"].includes(data.roll.type) - ? OseDice.sendAttackRoll(rollData) - : OseDice.sendRoll(rollData); + ? AcksDice.sendAttackRoll(rollData) + : AcksDice.sendRoll(rollData); }, }, cancel: { icon: '', - label: game.i18n.localize("OSE.Cancel"), + label: game.i18n.localize("ACKS.Cancel"), callback: (html) => { }, }, }; diff --git a/src/module/helpers.js b/src/module/helpers.js index 5b92cbe..6b8f88d 100644 --- a/src/module/helpers.js +++ b/src/module/helpers.js @@ -39,8 +39,8 @@ export const registerHelpers = async function () { }); Handlebars.registerHelper("getTagIcon", function (tag) { - let idx = Object.keys(CONFIG.OSE.tags).find(k => (CONFIG.OSE.tags[k] == tag)); - return CONFIG.OSE.tag_images[idx]; + let idx = Object.keys(CONFIG.ACKS.tags).find(k => (CONFIG.ACKS.tags[k] == tag)); + return CONFIG.ACKS.tag_images[idx]; }); Handlebars.registerHelper("counter", function (status, value, max) { diff --git a/src/module/item/entity.js b/src/module/item/entity.js index 292b50f..18e14f1 100644 --- a/src/module/item/entity.js +++ b/src/module/item/entity.js @@ -1,9 +1,9 @@ -import { OseDice } from "../dice.js"; +import { AcksDice } from "../dice.js"; /** * Override and extend the basic :class:`Item` implementation */ -export class OseItem extends Item { +export class AcksItem extends Item { /* -------------------------------------------- */ /* Data Preparation */ /* -------------------------------------------- */ @@ -15,19 +15,19 @@ export class OseItem extends Item { let img = CONST.DEFAULT_TOKEN; switch (this.data.type) { case "spell": - img = "/systems/ose/assets/default/spell.png"; + img = "/systems/acks/assets/default/spell.png"; break; case "ability": - img = "/systems/ose/assets/default/ability.png"; + img = "/systems/acks/assets/default/ability.png"; break; case "armor": - img = "/systems/ose/assets/default/armor.png"; + img = "/systems/acks/assets/default/armor.png"; break; case "weapon": - img = "/systems/ose/assets/default/weapon.png"; + img = "/systems/acks/assets/default/weapon.png"; break; case "item": - img = "/systems/ose/assets/default/item.png"; + img = "/systems/acks/assets/default/item.png"; break; } if (!this.data.img) this.data.img = img; @@ -132,14 +132,14 @@ export class OseItem extends Item { }; // Roll and return - return OseDice.Roll({ + return AcksDice.Roll({ event: options.event, parts: rollParts, data: newData, skipDialog: true, speaker: ChatMessage.getSpeaker({ actor: this }), - flavor: game.i18n.format("OSE.roll.formula", { label: label }), - title: game.i18n.format("OSE.roll.formula", { label: label }), + flavor: game.i18n.format("ACKS.roll.formula", { label: label }), + title: game.i18n.format("ACKS.roll.formula", { label: label }), }); } @@ -170,7 +170,7 @@ export class OseItem extends Item { data.tags.forEach((t) => { wTags += formatTag(t.value); }); - wTags += formatTag(CONFIG.OSE.saves_long[data.save], "fa-skull"); + wTags += formatTag(CONFIG.ACKS.saves_long[data.save], "fa-skull"); if (data.missile) { wTags += formatTag( data.range.short + "/" + data.range.medium + "/" + data.range.long, @@ -179,7 +179,7 @@ export class OseItem extends Item { } return wTags; case "armor": - return `${formatTag(CONFIG.OSE.armor[data.type], "fa-tshirt")}`; + return `${formatTag(CONFIG.ACKS.armor[data.type], "fa-tshirt")}`; case "item": return ""; case "spell": @@ -187,13 +187,13 @@ export class OseItem extends Item { data.range )}${formatTag(data.duration)}${formatTag(data.roll)}`; if (data.save) { - sTags += formatTag(CONFIG.OSE.saves_long[data.save], "fa-skull"); + sTags += formatTag(CONFIG.ACKS.saves_long[data.save], "fa-skull"); } return sTags; case "ability": let roll = ""; roll += data.roll ? data.roll : ""; - roll += data.rollTarget ? CONFIG.OSE.roll_type[data.rollType] : ""; + roll += data.rollTarget ? CONFIG.ACKS.roll_type[data.rollType] : ""; roll += data.rollTarget ? data.rollTarget : ""; return `${formatTag(data.requirements)}${formatTag(roll)}`; } @@ -222,13 +222,13 @@ export class OseItem extends Item { } // Auto fill checkboxes switch (val) { - case CONFIG.OSE.tags.melee: + case CONFIG.ACKS.tags.melee: newData.melee = true; break; - case CONFIG.OSE.tags.slow: + case CONFIG.ACKS.tags.slow: newData.slow = true; break; - case CONFIG.OSE.tags.missile: + case CONFIG.ACKS.tags.missile: newData.missile = true; break; } @@ -288,11 +288,11 @@ export class OseItem extends Item { hasDamage: this.hasDamage, isSpell: this.data.type === "spell", hasSave: this.hasSave, - config: CONFIG.OSE, + config: CONFIG.ACKS, }; // Render the chat card template - const template = `systems/ose/templates/chat/item-card.html`; + const template = `systems/acks/templates/chat/item-card.html`; const html = await renderTemplate(template, templateData); // Basic chat message data diff --git a/src/module/item/item-sheet.js b/src/module/item/item-sheet.js index 01f5ce0..f8ddfd6 100644 --- a/src/module/item/item-sheet.js +++ b/src/module/item/item-sheet.js @@ -1,7 +1,7 @@ /** * Extend the basic ItemSheet with some very simple modifications */ -export class OseItemSheet extends ItemSheet { +export class AcksItemSheet extends ItemSheet { constructor(...args) { super(...args); @@ -17,7 +17,7 @@ export class OseItemSheet extends ItemSheet { */ static get defaultOptions() { return mergeObject(super.defaultOptions, { - classes: ["ose", "sheet", "item"], + classes: ["acks", "sheet", "item"], width: 520, height: 390, resizable: false, @@ -35,7 +35,7 @@ export class OseItemSheet extends ItemSheet { /** @override */ get template() { - const path = "systems/ose/templates/items/"; + const path = "systems/acks/templates/items/"; return `${path}/${this.item.data.type}-sheet.html`; } @@ -45,7 +45,7 @@ export class OseItemSheet extends ItemSheet { */ getData() { const data = super.getData(); - data.config = CONFIG.OSE; + data.config = CONFIG.ACKS; return data; } diff --git a/src/module/macros.js b/src/module/macros.js index 5a80047..259d946 100644 --- a/src/module/macros.js +++ b/src/module/macros.js @@ -10,13 +10,13 @@ * @param {number} slot The hotbar slot to use * @returns {Promise} */ -export async function createOseMacro(data, slot) { +export async function createAcksMacro(data, slot) { if ( data.type !== "Item" ) return; if (!( "data" in data ) ) return ui.notifications.warn("You can only create macro buttons for owned Items"); const item = data.data; // Create the macro command - const command = `game.ose.rollItemMacro("${item.name}");`; + const command = `game.acks.rollItemMacro("${item.name}");`; let macro = game.macros.entities.find(m => (m.name === item.name) && (m.command === command)); if ( !macro ) { macro = await Macro.create({ @@ -24,7 +24,7 @@ export async function createOseMacro(data, slot) { type: "script", img: item.img, command: command, - flags: {"ose.itemMacro": true} + flags: {"acks.itemMacro": true} }); } game.user.assignHotbarMacro(macro, slot); diff --git a/src/module/party.js b/src/module/party.js index cb81955..94ea77a 100644 --- a/src/module/party.js +++ b/src/module/party.js @@ -1,25 +1,25 @@ -import { OsePartySheet } from "./dialog/party-sheet.js"; +import { AcksPartySheet } from "./dialog/party-sheet.js"; export const addControl = (object, html) => { - let control = ``; + let control = ``; html.find(".fas.fa-search").replaceWith($(control)) - html.find('.ose-party-sheet').click(ev => { + html.find('.acks-party-sheet').click(ev => { showPartySheet(object); }) } export const showPartySheet = (object) => { event.preventDefault(); - new OsePartySheet(object, { + new AcksPartySheet(object, { top: window.screen.height / 2 - 180, left:window.screen.width / 2 - 140, }).render(true); } export const update = (actor, data) => { - if (actor.getFlag('ose', 'party')) { + if (actor.getFlag('acks', 'party')) { Object.values(ui.windows).forEach(w => { - if (w instanceof OsePartySheet) { + if (w instanceof AcksPartySheet) { w.render(true); } }) diff --git a/src/module/preloadTemplates.js b/src/module/preloadTemplates.js index a23464e..10259a9 100644 --- a/src/module/preloadTemplates.js +++ b/src/module/preloadTemplates.js @@ -1,19 +1,19 @@ export const preloadHandlebarsTemplates = async function () { const templatePaths = [ //Character Sheets - 'systems/ose/templates/actors/character-html.html', - 'systems/ose/templates/actors/monster-html.html', + 'systems/acks/templates/actors/character-html.html', + 'systems/acks/templates/actors/monster-html.html', //Actor partials //Sheet tabs - 'systems/ose/templates/actors/partials/character-header.html', - 'systems/ose/templates/actors/partials/character-attributes-tab.html', - 'systems/ose/templates/actors/partials/character-abilities-tab.html', - 'systems/ose/templates/actors/partials/character-spells-tab.html', - 'systems/ose/templates/actors/partials/character-inventory-tab.html', - 'systems/ose/templates/actors/partials/character-notes-tab.html', + 'systems/acks/templates/actors/partials/character-header.html', + 'systems/acks/templates/actors/partials/character-attributes-tab.html', + 'systems/acks/templates/actors/partials/character-abilities-tab.html', + 'systems/acks/templates/actors/partials/character-spells-tab.html', + 'systems/acks/templates/actors/partials/character-inventory-tab.html', + 'systems/acks/templates/actors/partials/character-notes-tab.html', - 'systems/ose/templates/actors/partials/monster-header.html', - 'systems/ose/templates/actors/partials/monster-attributes-tab.html' + 'systems/acks/templates/actors/partials/monster-header.html', + 'systems/acks/templates/actors/partials/monster-attributes-tab.html' ]; return loadTemplates(templatePaths); }; diff --git a/src/module/settings.js b/src/module/settings.js index 4ac7bc1..7e35630 100644 --- a/src/module/settings.js +++ b/src/module/settings.js @@ -1,36 +1,38 @@ export const registerSettings = function () { - game.settings.register("ose", "initiative", { - name: game.i18n.localize("OSE.Setting.Initiative"), - hint: game.i18n.localize("OSE.Setting.InitiativeHint"), + game.settings.register("acks", "initiative", { + name: game.i18n.localize("ACKS.Setting.Initiative"), + hint: game.i18n.localize("ACKS.Setting.InitiativeHint"), default: "group", scope: "world", type: String, config: true, choices: { - individual: "OSE.Setting.InitiativeIndividual", - group: "OSE.Setting.InitiativeGroup", + disabled: "ACKS.Setting.InitiativeOnce", + rerolled: "ACKS.Setting.InitiativeReroll", + reset: "ACKS.Setting.InitiativeReset", + group: "ACKS.Setting.InitiativeGroup", }, onChange: _ => window.location.reload() }); - game.settings.register("ose", "rerollInitiative", { - name: game.i18n.localize("OSE.Setting.RerollInitiative"), - hint: game.i18n.localize("OSE.Setting.RerollInitiativeHint"), + game.settings.register("acks", "ascendingAC", { + name: game.i18n.localize("ACKS.Setting.RerollInitiative"), + hint: game.i18n.localize("ACKS.Setting.RerollInitiativeHint"), default: "reset", scope: "world", type: String, config: true, choices: { - keep: "OSE.Setting.InitiativeKeep", - reset: "OSE.Setting.InitiativeReset", - reroll: "OSE.Setting.InitiativeReroll", + keep: "ACKS.Setting.InitiativeKeep", + reset: "ACKS.Setting.InitiativeReset", + reroll: "ACKS.Setting.InitiativeReroll", } }); - game.settings.register("ose", "ascendingAC", { - name: game.i18n.localize("OSE.Setting.AscendingAC"), - hint: game.i18n.localize("OSE.Setting.AscendingACHint"), + game.settings.register("acks", "ascendingAC", { + name: game.i18n.localize("ACKS.Setting.AscendingAC"), + hint: game.i18n.localize("ACKS.Setting.AscendingACHint"), default: false, scope: "world", type: Boolean, @@ -38,34 +40,34 @@ export const registerSettings = function () { onChange: _ => window.location.reload() }); - game.settings.register("ose", "morale", { - name: game.i18n.localize("OSE.Setting.Morale"), - hint: game.i18n.localize("OSE.Setting.MoraleHint"), + game.settings.register("acks", "morale", { + name: game.i18n.localize("ACKS.Setting.Morale"), + hint: game.i18n.localize("ACKS.Setting.MoraleHint"), default: false, scope: "world", type: Boolean, config: true, }); - game.settings.register("ose", "encumbranceOption", { - name: game.i18n.localize("OSE.Setting.Encumbrance"), - hint: game.i18n.localize("OSE.Setting.EncumbranceHint"), + game.settings.register("acks", "encumbranceOption", { + name: game.i18n.localize("ACKS.Setting.Encumbrance"), + hint: game.i18n.localize("ACKS.Setting.EncumbranceHint"), default: "detailed", scope: "world", type: String, config: true, choices: { - disabled: "OSE.Setting.EncumbranceDisabled", - basic: "OSE.Setting.EncumbranceBasic", - detailed: "OSE.Setting.EncumbranceDetailed", - complete: "OSE.Setting.EncumbranceComplete", + disabled: "ACKS.Setting.EncumbranceDisabled", + basic: "ACKS.Setting.EncumbranceBasic", + detailed: "ACKS.Setting.EncumbranceDetailed", + complete: "ACKS.Setting.EncumbranceComplete", }, onChange: _ => window.location.reload() }); - game.settings.register("ose", "significantTreasure", { - name: game.i18n.localize("OSE.Setting.SignificantTreasure"), - hint: game.i18n.localize("OSE.Setting.SignificantTreasureHint"), + game.settings.register("acks", "significantTreasure", { + name: game.i18n.localize("ACKS.Setting.SignificantTreasure"), + hint: game.i18n.localize("ACKS.Setting.SignificantTreasureHint"), default: 800, scope: "world", type: Number, diff --git a/src/module/treasure.js b/src/module/treasure.js index 7d8253d..18e29b9 100644 --- a/src/module/treasure.js +++ b/src/module/treasure.js @@ -1,15 +1,15 @@ export const augmentTable = (table, html, data) => { // Treasure Toggle let head = html.find(".sheet-header"); - const flag = table.object.getFlag("ose", "treasure"); + const flag = table.object.getFlag("acks", "treasure"); const treasure = flag ? "
" : "
"; head.append(treasure); html.find(".toggle-treasure").click((ev) => { - let isTreasure = table.object.getFlag("ose", "treasure"); - table.object.setFlag("ose", "treasure", !isTreasure); + let isTreasure = table.object.getFlag("acks", "treasure"); + table.object.setFlag("acks", "treasure", !isTreasure); }); // Treasure table formatting @@ -21,7 +21,7 @@ export const augmentTable = (table, html, data) => { html.find(".result-weight").first().text("Chance"); // Replace Roll button - const roll = ``; + const roll = ``; html.find(".sheet-footer .roll").replaceWith(roll); } @@ -82,13 +82,13 @@ async function rollTreasure(table, options = {}) { } let html = await renderTemplate( - "systems/ose/templates/chat/roll-treasure.html", + "systems/acks/templates/chat/roll-treasure.html", templateData ); let chatData = { content: html, - // sound: "/systems/ose/assets/coins.mp3" + // sound: "/systems/acks/assets/coins.mp3" } let rollMode = game.settings.get("core", "rollMode"); diff --git a/src/scss/actor-base.scss b/src/scss/actor-base.scss index 94c70d3..81da001 100644 --- a/src/scss/actor-base.scss +++ b/src/scss/actor-base.scss @@ -9,7 +9,7 @@ } } -.ose.sheet.actor { +.acks.sheet.actor { $detailsHeight: 44px; .blinking { font-weight: bold; diff --git a/src/scss/apps.scss b/src/scss/apps.scss index 5b638c2..973e337 100644 --- a/src/scss/apps.scss +++ b/src/scss/apps.scss @@ -1,11 +1,11 @@ -.ose.roll-dialog { +.acks.roll-dialog { .roll-details { font-weight: bold; text-align: center; } } -.ose.dialog.creator { +.acks.dialog.creator { .attribute-list { .form-fields { flex: 0 0 50px; @@ -32,7 +32,7 @@ } } -.ose.dialog.party-sheet { +.acks.dialog.party-sheet { min-width: 250px; min-height: 250px; .window-content { @@ -120,7 +120,7 @@ } #sidebar #actors .directory-header .header-search { - .ose-party-sheet { + .acks-party-sheet { width: 32px; text-align: center; line-height: 20px; @@ -130,7 +130,7 @@ } } -.ose.dialog.modifiers { +.acks.dialog.modifiers { .attribute-bonuses { label { font-weight: bold; @@ -150,7 +150,7 @@ color: white; margin: 0 2px 5px 8px; border-radius: 8px; - background: url("/systems/ose/assets/treasure.png") no-repeat center; + background: url("/systems/acks/assets/treasure.png") no-repeat center; background-size: cover; padding: 5px 8px; cursor: pointer; @@ -176,7 +176,7 @@ } } -#settings .ose.game-license { +#settings .acks.game-license { font-size: 12px; .button { text-align: center; @@ -187,7 +187,7 @@ } } -.ose.chat-block { +.acks.chat-block { margin: 0; .chat-header { height: 46px; @@ -263,7 +263,7 @@ } } -.ose.chat-card { +.acks.chat-card { font-style: normal; font-size: 12px; diff --git a/src/scss/character.scss b/src/scss/character.scss index 5561fa3..5b7c7a5 100644 --- a/src/scss/character.scss +++ b/src/scss/character.scss @@ -3,7 +3,7 @@ /* ----------------------------------------- */ /* Basic Structure */ /* ----------------------------------------- */ -.ose.sheet.actor.character { +.acks.sheet.actor.character { min-width: 450px; min-height: 550px; @@ -98,7 +98,7 @@ } .health { &.armor-class { - background: url('/systems/ose/assets/shield.png') no-repeat center; + background: url('/systems/acks/assets/shield.png') no-repeat center; background-size: 70px; .shield { text-align: right; @@ -130,12 +130,12 @@ right: calc(50% + -20px); } .health-empty { - background: url('/systems/ose/assets/heart_empty.png') no-repeat center; + background: url('/systems/acks/assets/heart_empty.png') no-repeat center; background-size: 70px; background-position: top; } .health-full { - background: url('/systems/ose/assets/heart_full.png') no-repeat center; + background: url('/systems/acks/assets/heart_full.png') no-repeat center; background-size: 70px; background-position: bottom; } diff --git a/src/scss/core.scss b/src/scss/core.scss index ad868f7..ff806f9 100644 --- a/src/scss/core.scss +++ b/src/scss/core.scss @@ -1,4 +1,4 @@ -.ose .window-content { +.acks.window-content { // Utils .collapsed { display: none; diff --git a/src/scss/item.scss b/src/scss/item.scss index 8f0b264..91fa1d8 100644 --- a/src/scss/item.scss +++ b/src/scss/item.scss @@ -1,4 +1,4 @@ -.ose.sheet.item { +.acks.sheet.item { .sheet-header { h1 { input { diff --git a/src/scss/monster.scss b/src/scss/monster.scss index 1ff1437..3c70ec7 100644 --- a/src/scss/monster.scss +++ b/src/scss/monster.scss @@ -1,4 +1,4 @@ -.ose.actor.monster { +.acks.actor.monster { min-height: 565px; min-width: 460px; .header-details { diff --git a/src/scss/variables.scss b/src/scss/variables.scss index 14055cd..f6ed20c 100644 --- a/src/scss/variables.scss +++ b/src/scss/variables.scss @@ -3,7 +3,7 @@ /* Sheet Styles */ /* ----------------------------------------- */ -$darkBackground: url('/systems/ose/assets/back.png'); +$darkBackground: url('/systems/acks/assets/back.png'); $colorDark: rgba(0, 0, 0, 0.9); $colorFaint: #d8d6c9; $colorInactive: #969696; diff --git a/src/system.json b/src/system.json index 99b43d4..d65631d 100644 --- a/src/system.json +++ b/src/system.json @@ -1,14 +1,14 @@ { - "name": "ose", - "title": "Old-School Essentials", - "description": "Play B/X OSR modules with Old-School Essentials on Foundry VTT", - "version": "1.0.3", + "name": "acks", + "title": "Adventurer Conqueror Kings System", + "description": "Play B/X OSR modules with ACKS on Foundry VTT", + "version": "0.1.0", "minimumCoreVersion": "0.6.2", "compatibleCoreVersion": "0.6.6", "templateVersion": 2, - "author": "U~man", - "esmodules": ["ose.js"], - "styles": ["ose.css"], + "author": "The Happy Anarchist", + "esmodules": ["acks.js"], + "styles": ["acks.css"], "packs": [], "languages": [ { @@ -39,7 +39,7 @@ ], "gridDistance": 5, "gridUnits": "ft", - "url": "https://gitlab.com/mesfoliesludiques/foundryvtt-ose", - "manifest": "https://gitlab.com/mesfoliesludiques/foundryvtt-ose/raw/master/src/system.json", - "download": "https://gitlab.com/mesfoliesludiques/foundryvtt-ose/-/raw/master/package/ose-v1.0.3.zip" + "url": "https://github.com/thehappyanarchist/foundryacks", + "manifest": "https://github.com/thehappyanarchist/foundryacks/raw/master/src/system.json", + "download": "https://github.com/thehappyanarchist/foundryacks/-/raw/master/package/ose-v1.0.0.zip" } diff --git a/src/templates/actors/character-sheet.html b/src/templates/actors/character-sheet.html index 3b70129..44e910d 100644 --- a/src/templates/actors/character-sheet.html +++ b/src/templates/actors/character-sheet.html @@ -1,48 +1,48 @@
{{! Sheet Header }}
- {{> "systems/ose/templates/actors/partials/character-header.html"}} + {{> "systems/acks/templates/actors/partials/character-header.html"}}
{{! Sheet Tab Navigation }} {{! Sheet Body }}
{{! Attributes Tab }}
- {{> "systems/ose/templates/actors/partials/character-attributes-tab.html"}} + {{> "systems/acks/templates/actors/partials/character-attributes-tab.html"}}
- {{> "systems/ose/templates/actors/partials/character-abilities-tab.html"}} + {{> "systems/acks/templates/actors/partials/character-abilities-tab.html"}}
{{#if data.spells.enabled}}
- {{> "systems/ose/templates/actors/partials/character-spells-tab.html"}} + {{> "systems/acks/templates/actors/partials/character-spells-tab.html"}}
{{/if}}
- {{> "systems/ose/templates/actors/partials/character-inventory-tab.html"}} + {{> "systems/acks/templates/actors/partials/character-inventory-tab.html"}}
- {{> "systems/ose/templates/actors/partials/character-notes-tab.html"}} + {{> "systems/acks/templates/actors/partials/character-notes-tab.html"}}
\ No newline at end of file diff --git a/src/templates/actors/dialogs/lang-create.html b/src/templates/actors/dialogs/lang-create.html index 9e658fc..b1a6148 100644 --- a/src/templates/actors/dialogs/lang-create.html +++ b/src/templates/actors/dialogs/lang-create.html @@ -1,6 +1,6 @@ -
+
- +
{{#select choices}} diff --git a/src/templates/actors/dialogs/tweaks-dialog.html b/src/templates/actors/dialogs/tweaks-dialog.html index 6a7dc4e..051ba25 100644 --- a/src/templates/actors/dialogs/tweaks-dialog.html +++ b/src/templates/actors/dialogs/tweaks-dialog.html @@ -1,20 +1,20 @@
- +
- +
- +
@@ -22,38 +22,38 @@
{{#if (eq this.type 'character')}}
- +
- +
- +
- +
- +
- +
{{#if config.ascending}}
- +
- +
diff --git a/src/templates/actors/monster-sheet.html b/src/templates/actors/monster-sheet.html index 8bcf4e9..42db424 100644 --- a/src/templates/actors/monster-sheet.html +++ b/src/templates/actors/monster-sheet.html @@ -1,37 +1,37 @@ {{! Sheet Header }}
- {{> "systems/ose/templates/actors/partials/monster-header.html"}} + {{> "systems/acks/templates/actors/partials/monster-header.html"}}
{{! Sheet Tab Navigation }} {{! Sheet Body }}
{{! Attributes Tab }}
- {{> "systems/ose/templates/actors/partials/monster-attributes-tab.html"}} + {{> "systems/acks/templates/actors/partials/monster-attributes-tab.html"}}
{{#if data.spells.enabled}}
- {{> "systems/ose/templates/actors/partials/character-spells-tab.html"}} + {{> "systems/acks/templates/actors/partials/character-spells-tab.html"}}
{{/if}}
-
{{localize "OSE.category.notes"}}
+
{{localize "ACKS.category.notes"}}
{{editor content=data.details.biography target="data.details.biography" button=true owner=owner editable=editable}} diff --git a/src/templates/actors/partials/character-abilities-tab.html b/src/templates/actors/partials/character-abilities-tab.html index 50e2773..cb4f30f 100644 --- a/src/templates/actors/partials/character-abilities-tab.html +++ b/src/templates/actors/partials/character-abilities-tab.html @@ -1,26 +1,26 @@
-
{{localize 'OSE.category.abilities'}}
+
{{localize 'ACKS.category.abilities'}}
{{#if owner}} - {{/if}}
@@ -51,9 +51,9 @@
{{#if ../owner}} - - - + + + {{/if}}
diff --git a/src/templates/actors/partials/character-attributes-tab.html b/src/templates/actors/partials/character-attributes-tab.html index ec7ad37..497e078 100644 --- a/src/templates/actors/partials/character-attributes-tab.html +++ b/src/templates/actors/partials/character-attributes-tab.html @@ -3,55 +3,55 @@
{{#unless isNew}} - + {{else}} - + {{/unless}}
{{#if ../owner}} - - + + {{/if}}
@@ -209,4 +210,4 @@ {{/with}}
-
+ \ No newline at end of file diff --git a/src/templates/actors/partials/character-notes-tab.html b/src/templates/actors/partials/character-notes-tab.html index 3d99fe2..ff138c4 100644 --- a/src/templates/actors/partials/character-notes-tab.html +++ b/src/templates/actors/partials/character-notes-tab.html @@ -4,10 +4,10 @@
- {{localize "OSE.category.languages"}} + {{localize "ACKS.category.languages"}}
-
@@ -18,7 +18,7 @@ {{lang}}
-
@@ -26,7 +26,7 @@
-
{{localize "OSE.category.description"}}
+
{{localize "ACKS.category.description"}}
{{editor content=data.details.description target="data.details.description" button=true owner=owner editable=editable}} @@ -35,7 +35,7 @@
-
{{localize "OSE.category.notes"}}
+
{{localize "ACKS.category.notes"}}
{{editor content=data.details.notes target="data.details.notes" button=true owner=owner editable=editable}} diff --git a/src/templates/actors/partials/character-spells-tab.html b/src/templates/actors/partials/character-spells-tab.html index 79f1c41..e9339b1 100644 --- a/src/templates/actors/partials/character-spells-tab.html +++ b/src/templates/actors/partials/character-spells-tab.html @@ -1,9 +1,9 @@
-
{{localize "OSE.category.spells"}}
+
{{localize "ACKS.category.spells"}}
- - +
@@ -11,14 +11,14 @@
  • -
    {{localize "OSE.spells.Level"}} {{id}}
    -
    {{localize 'OSE.spells.Slots'}}
    +
    {{localize "ACKS.spells.Level"}} {{id}}
    +
    {{localize 'ACKS.spells.Slots'}}
    /
    -
  • @@ -36,15 +36,15 @@
    + title="{{localize 'ACKS.spells.Cast'}}"> /
    + title="{{localize 'ACKS.spells.Memorized'}}">
    {{#if ../../owner}} - - - + + + {{/if}}
    diff --git a/src/templates/actors/partials/monster-attributes-tab.html b/src/templates/actors/partials/monster-attributes-tab.html index 30b0a68..0f26be0 100644 --- a/src/templates/actors/partials/monster-attributes-tab.html +++ b/src/templates/actors/partials/monster-attributes-tab.html @@ -2,7 +2,7 @@
    • -

      {{ localize "OSE.HealthShort" }} +

      {{ localize "ACKS.HealthShort" }}

    • -

      - {{ localize "OSE.HitDiceShort" }} +

      + {{ localize "ACKS.HitDiceShort" }}

      @@ -21,15 +21,15 @@
    • {{#if config.ascendingAC}} -

      - {{ localize "OSE.AscArmorClassShort" }}

      +

      + {{ localize "ACKS.AscArmorClassShort" }}

      {{else}} -

      - {{ localize "OSE.ArmorClassShort" }}

      +

      + {{ localize "ACKS.ArmorClassShort" }}

      @@ -38,14 +38,14 @@
    • {{#if config.ascendingAC}} -

      {{ localize "OSE.ABShort" }} +

      {{ localize "ACKS.ABShort" }}

      {{else}} -

      {{ localize "OSE.Thac0" }} +

      {{ localize "ACKS.Thac0" }}

      {{#if data.retainer.enabled}}
    • -

      - {{ localize "OSE.LoyaltyShort" }} +

      + {{ localize "ACKS.LoyaltyShort" }}

      {{/if}}
    • -

      - {{ localize "OSE.movement.short" }} +

      + {{ localize "ACKS.movement.short" }}

    • -
      {{localize 'OSE.category.abilities'}} & {{localize 'OSE.category.equipment'}}
      +
      {{localize 'ACKS.category.abilities'}} & {{localize 'ACKS.category.equipment'}}
      {{#if owner}} - - {{/if}}
      @@ -94,7 +94,7 @@ {{#each abilities as |item|}}
    • -
      +

      @@ -103,11 +103,11 @@

      {{#if ../owner}} - - - {{/if}}
      @@ -119,7 +119,7 @@
    • {{#if (eq item.type 'weapon')}} -
      +
      {{/if}}
      @@ -130,17 +130,17 @@ {{#if (eq item.type 'weapon')}}
      + placeholder="0" data-field="value" title="{{localize 'ACKS.items.roundAttacks'}}"> /
      + title="{{localize 'ACKS.items.roundAttacksMax'}}">
      {{/if}}
      {{#if ../../owner}} - - {{/if}}
      @@ -156,43 +156,43 @@
      • {{#unless isNew}} - + {{else}} - + {{/unless}}
      • - {{ localize "OSE.saves.death.long" }}

        + {{ localize "ACKS.saves.death.long" }}
      • - {{ localize "OSE.saves.wand.long" }}

        + {{ localize "ACKS.saves.wand.long" }}
      • - {{ localize "OSE.saves.paralysis.long" }}

        + {{ localize "ACKS.saves.paralysis.long" }}
      • - {{ localize "OSE.saves.breath.long" }}

        + {{ localize "ACKS.saves.breath.long" }}
      • - {{ localize "OSE.saves.spell.long" }}

        + {{ localize "ACKS.saves.spell.long" }}
        diff --git a/src/templates/actors/partials/monster-header.html b/src/templates/actors/partials/monster-header.html index 3945878..b09b3f0 100644 --- a/src/templates/actors/partials/monster-header.html +++ b/src/templates/actors/partials/monster-header.html @@ -1,45 +1,45 @@

        - +

        • - +
          -
          +
        • - +
          -
          +
        • (
          ) -
          +
        • {{#if config.morale}}
        • - +
          -
          +
        • {{/if}}
        • - +
        • -
        • +
        • {{{data.details.treasure.link}}}
          - +
        \ No newline at end of file diff --git a/src/templates/apps/party-select.html b/src/templates/apps/party-select.html index 8aa86b5..e3d90e1 100644 --- a/src/templates/apps/party-select.html +++ b/src/templates/apps/party-select.html @@ -4,7 +4,7 @@
      • - +
      • {{/each}} diff --git a/src/templates/apps/party-sheet.html b/src/templates/apps/party-sheet.html index 91a54aa..34e80ed 100644 --- a/src/templates/apps/party-sheet.html +++ b/src/templates/apps/party-sheet.html @@ -6,16 +6,16 @@ {{#if user.isGM}}
        - +
        - +
        {{/if}}
        - {{#each data.entities as |e|}} {{#if e.data.flags.ose.party}} + {{#each data.entities as |e|}} {{#if e.data.flags.acks.party}}
      1. @@ -28,11 +28,11 @@
        {{e.name}}
        -
        +
        {{e.data.data.hp.value}}/{{e.data.data.hp.max}}
        -
        +
        {{#if @root.settings.ascending}}{{e.data.data.aac.value}} {{e.data.data.aac.naked}} @@ -41,7 +41,7 @@
        -
        +
        {{#unless settings.ascendingAC}} {{e.data.data.thac0.value}} @@ -50,23 +50,23 @@ {{/unless}}
        {{#if (eq e.data.type 'character')}} -
        +
        {{add e.data.data.scores.str.mod e.data.data.thac0.mod.melee}}
        -
        +
        {{add e.data.data.scores.dex.mod e.data.data.thac0.mod.missile}}
        {{/if}}
        - - {{e.data.data.movement.encounter}} {{e.data.data.movement.base}} + + {{e.data.data.movement.encounter}} {{e.data.data.movement.base}}
        {{#if (eq e.data.type 'character')}}
        - + {{roundWeight e.data.data.encumbrance.value}}k
        {{/if}} @@ -77,7 +77,7 @@ {{lookup @root.config.saves_short i}} {{s.value}} {{/each}} {{#if (eq e.data.type 'character')}}{{mod e.data.data.scores.wis.mod}}{{/if}} + title="{{localize 'ACKS.saves.magic.long'}}">{{mod e.data.data.scores.wis.mod}}{{/if}}
        diff --git a/src/templates/chat/item-card.html b/src/templates/chat/item-card.html index c9a9b20..1191cdf 100644 --- a/src/templates/chat/item-card.html +++ b/src/templates/chat/item-card.html @@ -1,4 +1,4 @@ -
        @@ -10,26 +10,26 @@
        - {{#if hasAttack}}{{/if}} + {{#if hasAttack}}{{/if}} {{#if hasDamage}} {{/if}} {{#if data.save}} {{/if}} {{#if data.roll}} - + {{/if}}
        diff --git a/src/templates/chat/license.html b/src/templates/chat/license.html index d25a47c..2ec6c75 100644 --- a/src/templates/chat/license.html +++ b/src/templates/chat/license.html @@ -1,26 +1,12 @@ -
        -

        - This unofficial system requires Old-School Essentials Core Rules that - you can find here. +

        +

        + This unofficial system requires Adventuer Conqueror King System Rules that + you can find here.

        - Old School Essentials is a trademark of Necrotic Gnome, the trademark is - used with permission under license. + Brought to life on Foundry VTT by The Happy Anarchist, with most of the heavy lifting done by U~man.

        -

        - Brought to life on Foundry VTT by U~man. -

        -
        - Buy Me a Coffee at ko-fi.com -
        diff --git a/src/templates/chat/roll-attack.html b/src/templates/chat/roll-attack.html index ae09e97..4ecdf7b 100644 --- a/src/templates/chat/roll-attack.html +++ b/src/templates/chat/roll-attack.html @@ -1,6 +1,6 @@ -
        -
        +

        {{title}}

        @@ -20,16 +20,16 @@
        {{{result.details}}}
        - {{#if rollOSE}}
        {{{rollOSE}}}
        {{/if}} + {{#if rollACKS}}
        {{{rollACKS}}}
        {{/if}} {{#if result.isSuccess}}
        -
        {{localize 'OSE.messages.InflictsDamage'}}
        +
        {{localize 'ACKS.messages.InflictsDamage'}}
        {{{rollDamage}}}
        {{#if data.roll.save}}
        {{/if}} diff --git a/src/templates/chat/roll-creation.html b/src/templates/chat/roll-creation.html index a8bdadf..ff2567d 100644 --- a/src/templates/chat/roll-creation.html +++ b/src/templates/chat/roll-creation.html @@ -1,5 +1,5 @@ -
        -
        +
        +

        {{title}}

        diff --git a/src/templates/chat/roll-dialog.html b/src/templates/chat/roll-dialog.html index 8ea6eb2..d12edd8 100644 --- a/src/templates/chat/roll-dialog.html +++ b/src/templates/chat/roll-dialog.html @@ -1,19 +1,19 @@ - + {{#if data.rollData.details}}
        {{data.rollData.details}}
        {{/if}}
        - +
        - - + +
        - +
        - +
        - +
        - +
        - +
        - +
        - +
        - +
        diff --git a/src/templates/items/item-sheet.html b/src/templates/items/item-sheet.html index a49af3f..19f2fda 100644 --- a/src/templates/items/item-sheet.html +++ b/src/templates/items/item-sheet.html @@ -11,25 +11,25 @@
        - +
        /
        - +
        - +
        - +
        diff --git a/src/templates/items/spell-sheet.html b/src/templates/items/spell-sheet.html index efe3e95..2343952 100644 --- a/src/templates/items/spell-sheet.html +++ b/src/templates/items/spell-sheet.html @@ -11,31 +11,31 @@
        - +
        - +
        - +
        - +
        - +
        diff --git a/src/templates/items/weapon-sheet.html b/src/templates/items/weapon-sheet.html index ba1d40a..8e61fc7 100644 --- a/src/templates/items/weapon-sheet.html +++ b/src/templates/items/weapon-sheet.html @@ -18,7 +18,7 @@
        -
        -
        - +
        - +
        - -
        {{#if data.missile}}
        - +
        {{/if}}
        - +