{
  "name": "loot-core",
  "version": "0.0.2",
  "description": "",
  "main": "index.js",
  "scripts": {
    "build:node": "cross-env NODE_ENV=production vite build --config ./vite.desktop.config.ts",
    "watch:node": "cross-env NODE_ENV=development vite build --config ./vite.desktop.config.ts --watch",
    "build:api": "cross-env NODE_ENV=development ./bin/build-api",
    "build:browser": "cross-env NODE_ENV=production ./bin/build-browser",
    "watch:browser": "cross-env NODE_ENV=development ./bin/build-browser",
    "generate:i18n": "i18next",
    "test": "npm-run-all -cp 'test:*'",
    "test:node": "ENV=node vitest --run",
    "test:web": "ENV=web vitest --run -c vitest.web.config.ts"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "@jlongster/sql.js": "^1.6.7",
    "@reduxjs/toolkit": "^2.9.1",
    "@rschedule/core": "^1.5.0",
    "@rschedule/json-tools": "^1.5.0",
    "@rschedule/standard-date-adapter": "^1.5.0",
    "absurd-sql": "0.0.54",
    "adm-zip": "patch:adm-zip@npm%3A0.5.16#~/.yarn/patches/adm-zip-npm-0.5.16-4556fea098.patch",
    "better-sqlite3": "^12.4.1",
    "csv-parse": "^6.1.0",
    "csv-stringify": "^6.6.0",
    "date-fns": "^4.1.0",
    "deep-equal": "^2.2.3",
    "handlebars": "^4.7.8",
    "lru-cache": "^11.2.2",
    "md5": "^2.3.0",
    "memoize-one": "^6.0.0",
    "mitt": "^3.0.1",
    "slash": "5.1.0",
    "ua-parser-js": "^2.0.6",
    "uuid": "^13.0.0"
  },
  "devDependencies": {
    "@actual-app/api": "workspace:^",
    "@actual-app/crdt": "workspace:^",
    "@actual-app/web": "workspace:^",
    "@swc/core": "^1.13.5",
    "@types/adm-zip": "^0.5.7",
    "@types/better-sqlite3": "^7.6.13",
    "@types/emscripten": "^1.41.4",
    "@types/jlongster__sql.js": "npm:@types/sql.js@latest",
    "@types/node": "^22.18.11",
    "@types/pegjs": "^0.10.6",
    "assert": "^2.1.0",
    "browserify-zlib": "^0.2.0",
    "buffer": "^6.0.3",
    "cross-env": "^10.1.0",
    "fake-indexeddb": "^6.2.4",
    "fast-check": "4.3.0",
    "i18next": "^25.6.0",
    "jest-diff": "^30.2.0",
    "jsverify": "^0.8.4",
    "mockdate": "^3.0.5",
    "npm-run-all": "^4.1.5",
    "path-browserify": "^1.0.1",
    "peggy": "5.0.6",
    "rollup-plugin-visualizer": "^6.0.5",
    "stream-browserify": "^3.0.0",
    "ts-node": "^10.9.2",
    "typescript": "^5.9.3",
    "vite": "^7.1.11",
    "vite-plugin-node-polyfills": "^0.24.0",
    "vite-plugin-peggy-loader": "^2.0.1",
    "vitest": "^3.2.4",
    "yargs": "^18.0.0"
  },
  "exports": {
    "./client/accounts/*": "./src/client/accounts/*.ts",
    "./client/app/*": "./src/client/app/*.ts",
    "./client/budgets/*": "./src/client/budgets/*.ts",
    "./client/data-hooks/schedules": "./src/client/data-hooks/schedules.tsx",
    "./client/data-hooks/*": "./src/client/data-hooks/*.ts",
    "./client/modals/*": "./src/client/modals/*.ts",
    "./client/notifications/*": "./src/client/notifications/*.ts",
    "./client/prefs/*": "./src/client/prefs/*.ts",
    "./client/queries/*": "./src/client/queries/*.ts",
    "./client/redux": "./src/client/redux/index.ts",
    "./client/store": "./src/client/store/index.ts",
    "./client/store/mock": "./src/client/store/mock.ts",
    "./client/users/*": "./src/client/users/*.ts",
    "./client/platform": {
      "node": "./src/client/platform.electron.ts",
      "default": "./src/client/platform.web.ts"
    },
    "./client/queries": "./src/client/queries.ts",
    "./client/query-helpers": "./src/client/query-helpers.ts",
    "./client/query-hooks": "./src/client/query-hooks.ts",
    "./client/reports": "./src/client/reports.ts",
    "./client/shared-listeners": "./src/client/shared-listeners.ts",
    "./client/SpreadsheetProvider": "./src/client/SpreadsheetProvider.tsx",
    "./client/transfer": "./src/client/transfer.ts",
    "./client/undo": "./src/client/undo.ts",
    "./mocks": "./src/mocks/index.ts",
    "./platform/client/fetch": {
      "node": "./src/platform/client/fetch/index.ts",
      "default": "./src/platform/client/fetch/index.browser.ts"
    },
    "./platform/client/undo": "./src/platform/client/undo/index.ts",
    "./platform/exceptions": "./src/platform/exceptions/index.ts",
    "./platform/server/asyncStorage": "./src/platform/server/asyncStorage/index.ts",
    "./platform/server/connection": "./src/platform/server/connection/index.ts",
    "./platform/server/fetch": "./src/platform/server/fetch/index.web.ts",
    "./platform/server/fs": "./src/platform/server/fs/index.web.ts",
    "./platform/server/log": "./src/platform/server/log/index.web.ts",
    "./platform/server/sqlite": "./src/platform/server/sqlite/index.web.ts",
    "./server/budget/types/*": "./src/server/budget/types/*.d.ts",
    "./server/*": "./src/server/*.ts",
    "./shared/*": "./src/shared/*.ts",
    "./types/models": "./src/types/models/index.d.ts",
    "./types/*": "./src/types/*.d.ts",
    "./lib-dist/electron/bundle.desktop.js": "./lib-dist/electron/bundle.desktop.js"
  }
}
