{
  "name": "@odoo/o-spreadsheet",
  "version": "19.3.4",
  "description": "A spreadsheet component",
  "type": "module",
  "main": "dist/o_spreadsheet.cjs",
  "browser": "dist/o_spreadsheet.iife.js",
  "module": "dist/o_spreadsheet.esm.js",
  "types": "dist/types/index.d.ts",
  "files": [
    "dist/*.js",
    "dist/types",
    "dist/*.xml",
    "dist/*.css"
  ],
  "engines": {
    "node": ">=22.0.0"
  },
  "scripts": {
    "prepare": "husky install",
    "prettier": "prettier . --write",
    "check-formatting": "prettier . --check && eslint",
    "lint": "eslint --fix",
    "predev": "node tools/clean_build_files.cjs",
    "dev": "npm-run-all --print-label --parallel build:watch server serve-static:wait",
    "build": "npm-run-all transpile-js bundle:esm bundle:iife \"bundle:xml -- --outDir build\" \"bundle:css -- --out build\"",
    "build:watch": "npm-run-all --parallel  type-check:watch bundle:iife:watch bundle:xml:watch bundle:css:watch",
    "transpile-js": "tsc --build --incremental --preserveWatchOutput",
    "type-check:watch": "npm run transpile-js -- --watch --noEmit",
    "perf": "tsc --module es6 --declaration --declarationDir dist/types && rolldown -c --perf",
    "bundle:cjs": "rolldown -c --format cjs",
    "bundle:esm": "rolldown -c --format esm",
    "bundle:iife": "rolldown -c --format iife",
    "bundle:iife:watch": "npm run bundle:iife -- --watch",
    "bundle:xml": "node tools/bundle_xml/main.cjs",
    "bundle:xml:watch": "node tools/bundle_xml/watch_xml_templates.cjs",
    "bundle:css": "node tools/bundle_css/main.cjs",
    "bundle:css:watch": "node tools/bundle_css/watch_css_files.cjs",
    "serve-static": "live-server --host=127.0.0.1 --open=demo --watch=build/o_spreadsheet.iife.js,build/o_spreadsheet.xml,build/o_spreadsheet.css,demo",
    "serve-static:wait": "wait-on build/o_spreadsheet.iife.js build/o_spreadsheet.xml build/o_spreadsheet.css && npm run serve-static",
    "server": "node tools/server/main.cjs",
    "dist": "tsc --module es6 --declaration --declarationDir dist/types && rolldown -c",
    "postdist": " npm run bundle:xml -- --outDir dist && npm run bundle:css -- --out dist",
    "test": "tsc --noEmit --project tests/tsconfig.json && jest",
    "monkey": "SPREADSHEET_MONKEY_COUNT=$npm_config_monkey_count jest 'tests/collaborative/collaborative_monkey_party.test.ts'",
    "zipXlsx": "node tools/bundle_xlsx/zip_xlsx_demo.cjs",
    "unzipXlsx": "node tools/bundle_xlsx/unzip_xlsx_demo.cjs"
  },
  "browserslist": [
    "last 1 Chrome versions"
  ],
  "keywords": [
    "owl",
    "spreadsheet",
    "o-spreadsheet",
    "odoo"
  ],
  "author": "Odoo",
  "license": "LGPL-3.0-or-later",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/odoo/o-spreadsheet.git"
  },
  "bugs": {
    "url": "https://github.com/odoo/o-spreadsheet/issues"
  },
  "homepage": "https://github.com/odoo/o-spreadsheet#readme",
  "devDependencies": {
    "@prettier/plugin-xml": "^2.2.0",
    "@swc/core": "1.6.7",
    "@swc/jest": "0.2.36",
    "@types/jest": "^30.0.0",
    "@types/jest-image-snapshot": "^6.4.1",
    "@types/node": "^20.17.24",
    "@types/rbush": "^3.0.3",
    "@typescript-eslint/eslint-plugin": "^8.30.1",
    "babel-eslint": "^10.1.0",
    "canvas": "^3.0.0",
    "chart.js": "4.5.0",
    "chartjs-adapter-luxon": "^1.3.1",
    "chartjs-chart-geo": "^4.3.2",
    "express": "^4.17.1",
    "express-form-data": "^2.0.19",
    "express-ws": "^4.0.0",
    "file-saver": "^2.0.5",
    "glob": "^11.0.1",
    "husky": "^7.0.4",
    "jest": "^30.2.0",
    "jest-environment-jsdom": "^30.2.0",
    "jest-image-snapshot": "^6.5.2",
    "jszip": "^3.6.0",
    "lint-staged": "^12.1.2",
    "live-server": "^1.2.1",
    "luxon": "3.7.2",
    "minimist": "^1.2.8",
    "node-watch": "^0.7.3",
    "npm-run-all": "^4.1.5",
    "prettier": "^2.8.0",
    "prettier-plugin-organize-imports": "^3.2.2",
    "rolldown": "^1.0.0",
    "seedrandom": "^3.0.5",
    "typescript": "^6.0.2",
    "typescript-eslint": "^8.30.1",
    "wait-on": "^9.0.1",
    "xml-formatter": "^2.4.0"
  },
  "optionalDependencies": {
    "@swc/core-darwin-arm64": "1.6.7",
    "@swc/core-darwin-x64": "1.6.7",
    "@swc/core-linux-arm-gnueabihf": "1.6.7",
    "@swc/core-linux-arm64-gnu": "1.6.7",
    "@swc/core-linux-arm64-musl": "1.6.7",
    "@swc/core-linux-x64-gnu": "1.6.7",
    "@swc/core-linux-x64-musl": "1.6.7",
    "@swc/core-win32-arm64-msvc": "1.6.7",
    "@swc/core-win32-ia32-msvc": "1.6.7",
    "@swc/core-win32-x64-msvc": "1.6.7",
    "@rolldown/binding-android-arm64": "1.0.0",
    "@rolldown/binding-darwin-arm64": "1.0.0",
    "@rolldown/binding-darwin-x64": "1.0.0",
    "@rolldown/binding-freebsd-x64": "1.0.0",
    "@rolldown/binding-linux-arm-gnueabihf": "1.0.0",
    "@rolldown/binding-linux-arm64-gnu": "1.0.0",
    "@rolldown/binding-linux-arm64-musl": "1.0.0",
    "@rolldown/binding-linux-ppc64-gnu": "1.0.0",
    "@rolldown/binding-linux-s390x-gnu": "1.0.0",
    "@rolldown/binding-linux-x64-gnu": "1.0.0",
    "@rolldown/binding-linux-x64-musl": "1.0.0",
    "@rolldown/binding-openharmony-arm64": "1.0.0",
    "@rolldown/binding-wasm32-wasi": "1.0.0",
    "@rolldown/binding-win32-arm64-msvc": "1.0.0",
    "@rolldown/binding-win32-x64-msvc": "1.0.0"
  },
  "prettier": {
    "printWidth": 100,
    "xmlWhitespaceSensitivity": "ignore",
    "bracketSameLine": true,
    "xmlSelfClosingSpace": false
  },
  "dependencies": {
    "@odoo/owl": "2.8.3",
    "bootstrap": "5.3.3",
    "font-awesome": "^4.7.0",
    "rbush": "^3.0.1"
  },
  "jest": {
    "roots": [
      "<rootDir>/src",
      "<rootDir>/tests"
    ],
    "transform": {
      "^.+\\.(ts|js)?$": [
        "@swc/jest"
      ]
    },
    "verbose": false,
    "testEnvironment": "jsdom",
    "testRegex": "(/tests/.*(test|spec))\\.ts?$",
    "moduleFileExtensions": [
      "ts",
      "tsx",
      "js",
      "jsx",
      "json",
      "node"
    ],
    "workerIdleMemoryLimit": "800MB",
    "transformIgnorePatterns": [
      "/node_modules/(?!chartjs-adapter-luxon)"
    ],
    "globalSetup": "<rootDir>/tests/setup/jest_global_setup.ts",
    "globalTeardown": "<rootDir>/tests/setup/jest_global_teardown.ts",
    "setupFilesAfterEnv": [
      "<rootDir>/tests/setup/jest.setup.ts"
    ]
  },
  "lint-staged": {
    "*": [
      "eslint --fix",
      "prettier --write"
    ]
  },
  "publishConfig": {
    "tag": "latest"
  }
}
