{
  "name": "@fluencelabs/cli",
  "packageManager": "yarn@3.6.4",
  "type": "module",
  "version": "0.12.7",
  "description": "CLI for working with Fluence network",
  "author": "Fluence Labs",
  "bin": {
    "fluence": "bin/run.js"
  },
  "homepage": "https://github.com/fluencelabs/cli",
  "license": "Apache-2.0",
  "main": "dist/index.js",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/fluencelabs/cli.git"
  },
  "files": [
    "/bin",
    "/dist",
    "/npm-shrinkwrap.json",
    "/oclif.manifest.json"
  ],
  "scripts": {
    "before-build": "node --loader ts-node/esm --no-warnings src/beforeBuild.ts",
    "build": "shx rm -rf dist && tsc -b",
    "lint": "eslint . --ext .ts --ext .js",
    "lint-fix": "eslint . --ext .ts --ext .js --cache --fix",
    "prettier": "prettier --write .",
    "find-dead-code": "ts-prune",
    "postpack": "shx rm -f oclif.manifest.json",
    "before-pack": "yarn clean && yarn before-build",
    "prepack": "yarn before-pack && yarn build",
    "jest": "node --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js --verbose",
    "clean": "shx rm -rf tmp && shx rm -rf dist",
    "pack-linux-x64": "yarn before-pack && oclif pack tarballs -t 'linux-x64' --no-xz",
    "pack-darwin-x64": "yarn before-pack && oclif pack tarballs -t 'darwin-x64' --no-xz",
    "pack-darwin-arm64": "yarn before-pack && oclif pack tarballs -t 'darwin-arm64'--no-xz",
    "upload-linux-x64": "oclif upload tarballs -t 'linux-x64' --no-xz",
    "upload-darwin-x64": "oclif upload tarballs -t 'darwin-x64' --no-xz",
    "upload-darwin-arm64": "oclif upload tarballs -t 'darwin-arm64' --no-xz",
    "test-linux-x64": "yarn pack-linux-x64 && yarn test",
    "test-darwin-x64": "yarn pack-darwin-x64 && yarn test",
    "test-darwin-arm64": "yarn pack-darwin-arm64 && yarn test",
    "test": "node --loader ts-node/esm --no-warnings ./test/setupTests.ts && yarn jest",
    "check": "yarn before-build && yarn build && yarn lint-fix && yarn prettier && yarn circular",
    "circular": "madge --circular ./dist",
    "on-each-commit": "yarn check && yarn gen-config-docs && cd docs/commands && oclif readme --no-aliases",
    "gen-config-docs": "shx rm -rf schemas && shx rm -rf docs/configs && node --loader ts-node/esm --no-warnings ./src/genConfigDocs.ts",
    "unused-exports": "ts-unused-exports tsconfig.json",
    "up-deps": "npm-check-updates -u",
    "oclif-pack": "yarn before-pack && oclif pack tarballs -t 'linux-x64,darwin-x64,darwin-arm64' --no-xz",
    "oclif-upload": "oclif upload tarballs -t 'linux-x64,darwin-x64,darwin-arm64'"
  },
  "dependencies": {
    "@fluencelabs/air-beautify-wasm": "0.3.4",
    "@fluencelabs/aqua-api": "0.12.4",
    "@fluencelabs/aqua-to-js": "0.1.0",
    "@fluencelabs/deal-aurora": "0.2.17",
    "@fluencelabs/fluence-network-environment": "1.1.2",
    "@fluencelabs/js-client": "0.4.2",
    "@iarna/toml": "^2.2.5",
    "@mswjs/interceptors": "^0.25.7",
    "@multiformats/multiaddr": "^12.1.7",
    "@oclif/color": "^1.0.13",
    "@oclif/core": "^3.6.0",
    "@oclif/plugin-autocomplete": "^2.3.10",
    "@oclif/plugin-help": "^6.0.4",
    "@oclif/plugin-not-found": "^3.0.2",
    "@oclif/plugin-update": "^4.1.3",
    "@walletconnect/universal-provider": "2.4.7",
    "ajv": "^8.12.0",
    "chokidar": "^3.5.3",
    "countly-sdk-nodejs": "^22.6.0",
    "debug": "^4.3.4",
    "decompress": "^4.2.1",
    "dotenv": "^16.3.1",
    "ethers": "6.6.0",
    "filenamify": "^6.0.0",
    "inquirer": "^9.2.11",
    "ipfs-http-client": "^60.0.1",
    "lodash-es": "^4.17.21",
    "lokijs": "^1.5.12",
    "multiformats": "^12.1.2",
    "node_modules-path": "^2.0.7",
    "npm": "^10.2.1",
    "platform": "^1.3.6",
    "semver": "^7.5.4",
    "yaml": "^2.3.3",
    "yaml-diff-patch": "^2.0.0"
  },
  "devDependencies": {
    "@fluencelabs/installation-spell": "0.5.28",
    "@total-typescript/ts-reset": "^0.5.1",
    "@tsconfig/node18-strictest-esm": "^1.0.1",
    "@types/debug": "^4.1.10",
    "@types/decompress": "^4.2.6",
    "@types/iarna__toml": "^2.0.4",
    "@types/inquirer": "^9.0.6",
    "@types/jest": "^29.5.6",
    "@types/lodash-es": "^4.17.10",
    "@types/node": "^18.18.6",
    "@types/platform": "^1.3.5",
    "@types/semver": "^7.5.4",
    "@typescript-eslint/eslint-plugin": "^6.9.0",
    "@typescript-eslint/parser": "^6.9.0",
    "eslint": "^8.52.0",
    "eslint-config-prettier": "^9.0.0",
    "eslint-plugin-import": "^2.29.0",
    "eslint-plugin-license-header": "^0.6.0",
    "eslint-plugin-node": "^11.1.0",
    "eslint-plugin-unused-imports": "^3.0.0",
    "globby": "^13",
    "jest": "^29.7.0",
    "madge": "^6.1.0",
    "npm-check-updates": "^16.14.6",
    "oclif": "^4.0.3",
    "prettier": "^3.0.3",
    "shx": "^0.3.4",
    "ts-jest": "^29.1.1",
    "ts-node": "^10.9.1",
    "ts-prune": "^0.10.3",
    "ts-unused-exports": "^10.0.1",
    "tslib": "^2.6.2",
    "typescript": "^5.2.2",
    "undici": "^5.26.5"
  },
  "oclif": {
    "bin": "fluence",
    "dirname": "fluence",
    "commands": "./dist/commands",
    "update": {
      "s3": {
        "bucket": "fcli-binaries"
      }
    },
    "topics": {
      "aqua": {
        "description": "Set of convenience commands for converting JSON and YAML into Aqua object literal syntax"
      },
      "deal": {
        "description": "Manage deals"
      },
      "default": {
        "description": "Manage and display default CLI configurations"
      },
      "dep": {
        "description": "(For advanced users) Manage project's dependencies"
      },
      "key": {
        "description": "Manage secret keys, that define peer-ids of both nox and js-client (including the one inside this CLI itself)"
      },
      "local": {
        "description": "Manage local fluence environment using docker-compose"
      },
      "module": {
        "description": "Manage project's service modules"
      },
      "provider": {
        "description": "Set of commands to be used by providers or you can use them to manage your local environment"
      },
      "service": {
        "description": "Manage project's services"
      },
      "spell": {
        "description": "Manage project's spells"
      },
      "workers": {
        "description": "Manage directly deployed workers without using blockchain. These commands can be used only with the peers that you own"
      }
    },
    "plugins": [
      "@oclif/plugin-help",
      "@oclif/plugin-not-found",
      "@oclif/plugin-autocomplete",
      "@oclif/plugin-update"
    ],
    "topicSeparator": " "
  },
  "engines": {
    "node": "=18"
  },
  "bugs": {
    "url": "https://github.com/fluencelabs/cli/issues"
  },
  "keywords": [
    "oclif"
  ],
  "types": "dist/index.d.ts",
  "prettier": {},
  "eslintConfig": {
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
      "ecmaVersion": 2022,
      "project": [
        "./tsconfig.json",
        "./tsconfig.eslint.json",
        "./test/tsconfig.json"
      ]
    },
    "extends": [
      "eslint:recommended",
      "plugin:node/recommended",
      "plugin:@typescript-eslint/strict-type-checked",
      "plugin:import/recommended",
      "plugin:import/typescript",
      "prettier"
    ],
    "plugins": [
      "@typescript-eslint",
      "import",
      "license-header",
      "unused-imports"
    ],
    "rules": {
      "eqeqeq": [
        "error",
        "always"
      ],
      "no-console": [
        "error"
      ],
      "arrow-body-style": [
        "error",
        "always"
      ],
      "no-empty": [
        "error",
        {
          "allowEmptyCatch": true
        }
      ],
      "no-plusplus": "error",
      "operator-assignment": [
        "error",
        "never"
      ],
      "curly": [
        "error",
        "all"
      ],
      "no-unused-expressions": [
        "error"
      ],
      "dot-notation": [
        "off"
      ],
      "object-curly-spacing": [
        "error",
        "always"
      ],
      "padding-line-between-statements": [
        "error",
        {
          "blankLine": "always",
          "prev": "multiline-expression",
          "next": "*"
        },
        {
          "blankLine": "always",
          "prev": "*",
          "next": "multiline-expression"
        },
        {
          "blankLine": "always",
          "prev": "multiline-block-like",
          "next": "*"
        },
        {
          "blankLine": "always",
          "prev": "*",
          "next": "multiline-block-like"
        },
        {
          "blankLine": "always",
          "prev": "multiline-const",
          "next": "*"
        },
        {
          "blankLine": "always",
          "prev": "*",
          "next": "multiline-const"
        },
        {
          "blankLine": "always",
          "prev": "multiline-let",
          "next": "*"
        },
        {
          "blankLine": "always",
          "prev": "*",
          "next": "multiline-let"
        },
        {
          "blankLine": "any",
          "prev": "case",
          "next": "case"
        }
      ],
      "import/extensions": [
        "error",
        "always"
      ],
      "import/no-unresolved": "off",
      "import/no-cycle": [
        "error"
      ],
      "import/order": [
        "error",
        {
          "newlines-between": "always",
          "alphabetize": {
            "order": "asc",
            "caseInsensitive": true
          }
        }
      ],
      "node/no-unsupported-features/es-syntax": "off",
      "node/no-unpublished-import": "off",
      "node/no-missing-import": "off",
      "@typescript-eslint/explicit-member-accessibility": [
        "error",
        {
          "accessibility": "no-public"
        }
      ],
      "@typescript-eslint/strict-boolean-expressions": [
        "error",
        {
          "allowString": false,
          "allowNumber": false,
          "allowNullableObject": false,
          "allowNullableBoolean": false,
          "allowNullableString": false,
          "allowNullableNumber": false,
          "allowAny": false
        }
      ],
      "@typescript-eslint/consistent-type-assertions": [
        "error",
        {
          "assertionStyle": "never"
        }
      ],
      "unused-imports/no-unused-imports": "error",
      "license-header/header": [
        "error",
        "./resources/license-header.js"
      ]
    }
  },
  "eslintIgnore": [
    "/dist",
    "/src/ts/**/*",
    "tmp",
    "resources"
  ],
  "directories": {
    "test": "test"
  }
}