{
  "name": "@plyaz/core",
  "version": "1.23.4",
  "description": "Shared core logic and utilities for Plyaz apps, services, and future SDKs – centralized, reusable, and scalable.",
  "type": "module",
  "keywords": [],
  "packageManager": "pnpm@10.11.0",
  "sideEffects": [
    "./dist/entry-backend.mjs",
    "./dist/entry-backend.cjs",
    "./dist/entry-frontend.mjs",
    "./dist/entry-frontend.cjs",
    "./dist/entry-frontend-browser.mjs",
    "./dist/entry-frontend-browser.cjs"
  ],
  "main": "./dist/index.cjs",
  "module": "./dist/index.mjs",
  "types": "./dist/index.d.ts",
  "exports": {
    ".": {
      "types": "./dist/index.d.ts",
      "import": "./dist/index.mjs",
      "require": "./dist/index.cjs",
      "default": "./dist/index.mjs"
    },
    "./frontend": {
      "types": "./dist/entry-frontend.d.ts",
      "browser": {
        "import": "./dist/entry-frontend-browser.mjs",
        "require": "./dist/entry-frontend-browser.cjs",
        "default": "./dist/entry-frontend-browser.mjs"
      },
      "import": "./dist/entry-frontend.mjs",
      "require": "./dist/entry-frontend.cjs",
      "default": "./dist/entry-frontend.mjs"
    },
    "./backend": {
      "types": "./dist/entry-backend.d.ts",
      "import": "./dist/entry-backend.mjs",
      "require": "./dist/entry-backend.cjs",
      "default": "./dist/entry-backend.mjs"
    },
    "./nestjs": {
      "types": "./dist/init/nestjs/index.d.ts",
      "import": "./dist/init/nestjs/index.mjs",
      "require": "./dist/init/nestjs/index.cjs",
      "default": "./dist/init/nestjs/index.mjs"
    },
    "./express": {
      "types": "./dist/init/express/index.d.ts",
      "import": "./dist/init/express/index.mjs",
      "require": "./dist/init/express/index.cjs",
      "default": "./dist/init/express/index.mjs"
    },
    "./nextjs": {
      "types": "./dist/init/nextjs/index.d.ts",
      "import": "./dist/init/nextjs/index.mjs",
      "require": "./dist/init/nextjs/index.cjs",
      "default": "./dist/init/nextjs/index.mjs"
    },
    "./events": {
      "types": "./dist/events/streaming/index.d.ts",
      "import": "./dist/events/streaming/index.mjs",
      "require": "./dist/events/streaming/index.cjs",
      "default": "./dist/events/streaming/index.mjs"
    },
    "./events/streaming": {
      "types": "./dist/events/streaming/index.d.ts",
      "import": "./dist/events/streaming/index.mjs",
      "require": "./dist/events/streaming/index.cjs",
      "default": "./dist/events/streaming/index.mjs"
    },
    "./frameworks": {
      "types": "./dist/frameworks/index.d.ts",
      "import": "./dist/frameworks/index.mjs",
      "require": "./dist/frameworks/index.cjs",
      "default": "./dist/frameworks/index.mjs"
    },
    "./frameworks/nextjs": {
      "types": "./dist/frameworks/nextjs/index.d.ts",
      "import": "./dist/frameworks/nextjs/index.mjs",
      "require": "./dist/frameworks/nextjs/index.cjs",
      "default": "./dist/frameworks/nextjs/index.mjs"
    },
    "./frameworks/nextjs/config": {
      "types": "./dist/frameworks/nextjs/config.d.ts",
      "import": "./dist/frameworks/nextjs/config.mjs",
      "require": "./dist/frameworks/nextjs/config.cjs",
      "default": "./dist/frameworks/nextjs/config.mjs"
    },
    "./utils": {
      "types": "./dist/utils/index.d.ts",
      "import": "./dist/utils/index.mjs",
      "require": "./dist/utils/index.cjs",
      "default": "./dist/utils/index.mjs"
    },
    "./package.json": "./package.json"
  },
  "engines": {
    "node": ">=23.0.0",
    "pnpm": ">=8.10.0"
  },
  "author": "Redeemer Pace",
  "license": "ISC",
  "files": [
    "dist"
  ],
  "dependencies": {
    "@nestjs/mapped-types": "*",
    "@plyaz/api": "^1.8.2",
    "@plyaz/config": "^1.10.2",
    "@plyaz/errors": "^1.5.13",
    "@plyaz/logger": "^1.4.1",
    "@plyaz/store": "^1.4.1",
    "@plyaz/translations": "^1.4.5",
    "@plyaz/types": "^1.47.0",
    "dotenv": "^17.2.3",
    "fetchff": "^4.1.0",
    "yaml": "^2.8.0",
    "zod": "4.1.5",
    "zustand": "^5.0.9"
  },
  "optionalDependencies": {
    "@nestjs/common": "^11.1.3",
    "@nestjs/core": "^11.1.6",
    "@nestjs/platform-express": "^11.1.9",
    "@nestjs/swagger": "^11.0.3",
    "@supabase/supabase-js": "^2.79.0",
    "body-parser": "^1.20.3",
    "compression": "^1.7.5",
    "connect-timeout": "^1.9.0",
    "cors": "^2.8.5",
    "dd-trace": "^5.80.0",
    "drizzle-orm": "^0.36.4",
    "express-rate-limit": "^7.5.0",
    "helmet": "^8.0.0",
    "hot-shots": "^11.4.0",
    "ioredis": "^5.6.1",
    "next": "^15.0.0 || ^16.0.0",
    "postgres": "^3.4.7",
    "rxjs": "^7.8.2",
    "viem": "^2.31.7"
  },
  "devDependencies": {
    "@changesets/cli": "^2.29.5",
    "@darraghor/eslint-plugin-nestjs-typed": "^6.6.2",
    "@eslint/eslintrc": "^3.2.0",
    "@eslint/js": "^9.15.0",
    "@eslint/markdown": "^6.5.0",
    "@nestjs/cli": "^11.0.7",
    "@nestjs/schematics": "^11.0.5",
    "@next/eslint-plugin-next": "^15.0.3",
    "@plyaz/devtools": "^1.10.3",
    "@plyaz/testing": "^1.5.1",
    "@testing-library/jest-dom": "^6.6.3",
    "@testing-library/react": "^16.3.0",
    "@testing-library/user-event": "^14.6.1",
    "@types/body-parser": "^1.19.5",
    "@types/compression": "^1.7.5",
    "@types/connect-timeout": "^0.0.38",
    "@types/cors": "^2.8.17",
    "@types/express": "^5.0.5",
    "@types/express-rate-limit": "^6.0.0",
    "@types/node": "^22.14.0",
    "@types/react": "^19.2.2",
    "@types/react-dom": "^19.2.2",
    "@typescript-eslint/eslint-plugin": "^8.15.0",
    "@typescript-eslint/parser": "^8.15.0",
    "@vitest/coverage-istanbul": "3.2.4",
    "@vitest/coverage-v8": "^3.1.3",
    "chalk": "^5.4.1",
    "commander": "^12.1.0",
    "cross-env": "^10.1.0",
    "eslint": "^9.29.0",
    "eslint-config-next": "^15.3.3",
    "eslint-config-prettier": "^9.1.0",
    "eslint-import-resolver-typescript": "^3.10.1",
    "eslint-mdx": "^3.5.0",
    "eslint-plugin-better-tailwindcss": "3.2.1",
    "eslint-plugin-functional": "^4.4.1",
    "eslint-plugin-import": "^2.31.0",
    "eslint-plugin-jest": "^28.13.5",
    "eslint-plugin-jsdoc": "^50.8.0",
    "eslint-plugin-jsonc": "^2.20.1",
    "eslint-plugin-jsx-a11y": "^6.10.2",
    "eslint-plugin-markdownlint": "^0.9.0",
    "eslint-plugin-mdx": "^3.5.0",
    "eslint-plugin-n": "^17.20.0",
    "eslint-plugin-prettier": "^5.5.0",
    "eslint-plugin-promise": "^7.2.1",
    "eslint-plugin-react": "^7.37.2",
    "eslint-plugin-react-hooks": "^5.0.0",
    "eslint-plugin-react-refresh": "^0.4.19",
    "eslint-plugin-regexp": "^2.9.0",
    "eslint-plugin-security": "^3.0.1",
    "eslint-plugin-simple-import-sort": "^12.1.1",
    "eslint-plugin-sonarjs": "^0.23.0",
    "eslint-plugin-storybook": "^0.12.0",
    "eslint-plugin-testing-library": "^6.5.0",
    "eslint-plugin-unicorn": "^56.0.1",
    "eslint-plugin-unused-imports": "^4.1.4",
    "express": "^5.1.0",
    "glob": "11.0.3",
    "jiti": "^2.4.2",
    "jsdom": "^26.1.0",
    "markdownlint": "^0.38.0",
    "next": "16.1.0",
    "prettier": "^3.5.3",
    "reflect-metadata": "^0.2.2",
    "standard-version": "^9.5.0",
    "tailwindcss": "^4.1.8",
    "ts-morph": "^26.0.0",
    "ts-node": "^10.9.2",
    "tsconfig-paths": "^4.2.0",
    "tsup": "8.5.0",
    "typescript": "^5",
    "typescript-eslint": "^8.34.0",
    "typescript-transform-paths": "^3.5.5",
    "vitest": "3.2.4"
  },
  "peerDependencies": {
    "@plyaz/db": "^0.5.5",
    "@plyaz/notifications": "^1.1.0",
    "@plyaz/storage": "^1.0.6",
    "react": "^18.0.0 || ^19.0.0",
    "react-dom": "^18.0.0 || ^19.0.0"
  },
  "peerDependenciesMeta": {
    "react": {
      "optional": true
    },
    "react-dom": {
      "optional": true
    },
    "next": {
      "optional": true
    },
    "@plyaz/db": {
      "optional": true
    },
    "@plyaz/storage": {
      "optional": true
    },
    "@plyaz/notifications": {
      "optional": true
    }
  },
  "scripts": {
    "build": "pnpm clean && pnpm build:js && pnpm build:types",
    "build:js": "tsup",
    "build:types": "node --max-old-space-size=8192 node_modules/typescript/bin/tsc -p tsconfig.build.json",
    "build:watch": "tsup --watch",
    "dev": "tsup --watch",
    "lint": "eslint ./src ./tests",
    "lint:fix": "eslint ./src ./tests --fix",
    "format": "prettier --write './**/*.{ts,tsx,js,jsx}'",
    "format:check": "prettier --check './**/*.{ts,tsx,js,jsx}'",
    "type:check": "node --max-old-space-size=8192 node_modules/typescript/bin/tsc --noEmit",
    "test": "vitest run --no-watch",
    "test:ci": "vitest run --no-watch",
    "test:watch": "vitest --watch",
    "test:coverage": "vitest run --coverage",
    "test:ui": "vitest --ui",
    "clean": "rm -rf dist",
    "example:db": "npx tsx examples/db-service.ts",
    "nest:dev": "npx tsx --watch server/main.ts",
    "nest:start": "npx tsx server/main.ts",
    "nest:start:debug": "npx tsx --inspect server/main.ts",
    "nest:start:prod": "node dist/server/main.js",
    "nest:generate": "nest generate",
    "generate": "npx tsx bin/generate.ts",
    "generate:feature": "npx tsx bin/generate.ts feature",
    "generate:list": "npx tsx bin/generate.ts list --files",
    "generate:info": "npx tsx bin/generate.ts info",
    "generate:init": "npx tsx bin/generate.ts init",
    "generate:undo": "npx tsx bin/generate.ts undo",
    "generate:history": "npx tsx bin/generate.ts history",
    "generate:no-author": "npx tsx bin/generate.ts feature --no-author",
    "g": "npx tsx bin/generate.ts",
    "g:f": "npx tsx bin/generate.ts feature",
    "g:f:na": "npx tsx bin/generate.ts feature --no-author",
    "g:u": "npx tsx bin/generate.ts undo",
    "db:init": "plyaz-db init",
    "db:version": "plyaz-db version",
    "db:migrate": "plyaz-db migrate up",
    "db:migrate:down": "plyaz-db migrate down",
    "db:migrate:down:all": "plyaz-db migrate reset --confirm",
    "db:migrate:status": "plyaz-db migrate status",
    "db:migrate:verify": "plyaz-db migrate verify",
    "db:migrate:generate-down": "plyaz-db migrate generate-down",
    "db:migrate:generate-down:write": "plyaz-db migrate generate-down --write",
    "db:seed": "plyaz-db seed run",
    "db:seed:status": "plyaz-db seed status",
    "db:seed:reset": "plyaz-db seed reset --confirm",
    "db:health": "plyaz-db health",
    "db:create:migration": "plyaz-db create migration",
    "db:create:migration:ts": "plyaz-db create migration -t ts",
    "db:create:migration:i": "plyaz-db create migration -i",
    "db:create:seed": "plyaz-db create seed",
    "db:create:seed:sql": "plyaz-db create seed -t sql",
    "db:create:seed:csv": "plyaz-db create seed -t csv",
    "db:create:seed:i": "plyaz-db create seed -i",
    "db:reset": "plyaz-db reset --confirm --drop-schemas --migrate --schemas public,backoffice ",
    "db:clear": "plyaz-db clear --confirm --schemas public,backoffice,audit",
    "db:drop": "plyaz-db drop --confirm --all --schemas public,backoffice,audit",
    "audit": "pnpm audit",
    "audit:moderate": "pnpm audit --audit-level moderate",
    "audit:high": "pnpm audit --audit-level high",
    "audit:critical": "pnpm audit --audit-level critical",
    "audit:fix": "pnpm audit --fix",
    "audit:enhanced": "npx audit-ci --moderate",
    "security:check": "pnpm audit:moderate && npx audit-ci --moderate",
    "remove:unused": "pnpm remove:unused:fnc && pnpm remove:unused:interfaces",
    "remove:unused:interfaces": "npx tsx check_types.ts --remove --report=./internal-reports/unused-types-report.md",
    "remove:unused:fnc": "npx tsx check_fnc.ts --report=./internal-reports/unused-declarations.md",
    "check:dependencies": "npx tsx check_dependencies_versions.ts --report=./internal-reports/dependency-report.md",
    "pre:deploy": "pnpm run build && pnpm run lint && pnpm run format && pnpm run type:check && pnpm run test"
  }
}