{
    "name": "@qualtrics/ui-react",
    "version": "2.78.0",
    "description": "Official Qualtrics UI component library designed for React",
    "repository": {
        "type": "git",
        "directory": "packages/ui-react"
    },
    "license": "SEE LICENSE IN LICENSE",
    "main": "dist/index.js",
    "module": "dist/index.es.js",
    "types": "dist/index.d.ts",
    "exports": {
        ".": {
            "types": "./dist/index.d.ts",
            "import": "./dist/index.es.js",
            "require": "./dist/index.js"
        },
        "./next": {
            "types": "./dist/next/index.d.ts",
            "import": "./dist/next/index.es.js",
            "require": "./dist/next/index.js"
        },
        "./icons": {
            "types": "./dist/icons/index.d.ts",
            "import": "./dist/icons/index.es.js",
            "require": "./dist/icons/index.js"
        },
        "./dist/design-tokens*": {
            "import": "./dist/design-tokens*",
            "require": "./dist/design-tokens*"
        },
        "./package.json": "./package.json",
        "./CHANGELOG.md": "./CHANGELOG.md",
        "./LICENSE": "./LICENSE",
        "./dist": "./dist/index.js",
        "./dist/index": "./dist/index.js",
        "./dist/index.js": "./dist/index.js"
    },
    "publishConfig": {
        "registry": "https://registry.npmjs.org/"
    },
    "scripts": {
        "alpha": "npm version prerelease --preid=alpha && npm publish --tag=alpha",
        "prebuild": "npm run generate-translations && npm run generate-design-tokens",
        "build": "npm run clean && run-p types build:rollup",
        "generate-translations": "node scripts/generate-translations.js",
        "generate-design-tokens": "ts-node src/design-tokens/generate/generate-all.ts",
        "build:rollup": "rollup -c",
        "clean": "rimraf dist/* && rimraf icons/* && rimraf next/*",
        "icons": "node scripts/build-icons",
        "lint": "eslint  --ignore-path .gitignore --ext .js,.ts,.tsx,.jsx .",
        "lint:fix": "npm run lint -- --fix",
        "prettier": "prettier --check .",
        "prettier:fix": "prettier --write .",
        "start": "rollup -c -w",
        "test": "NODE_ENV=test npm run test:unit && npm run test:postbuild",
        "test:ci": "NODE_ENV=test npm run test:unit:ci",
        "test:unit": "jest -w 3",
        "test:unit:ci": "npm run test:unit -- --silent",
        "test:postbuild": "jest --config jest.postbuild.config.js",
        "test:postbuild:ci": "npm run test:postbuild",
        "test:postbuild:rerun": "RERUN=1 jest --config jest.postbuild.config.js",
        "test:postbuild:update": "RERUN=1 SNAPSHOTUPDATE=1 jest --config jest.postbuild.config.js -u",
        "test:postbuild:forceupdate": "RERUN=1 FORCESNAPSHOTUPDATE=1 jest --config jest.postbuild.config.js -u",
        "test:playwright:ci": "CI=true npm run test:playwright:functional && npm run test:playwright:visual && npm run test:playwright:e2e && npm run test:playwright:a11y",
        "test:playwright:update-snapshots": "npx playwright test -c playwright-viz.config.ts --tsconfig=./playwright/tsconfig.json --update-snapshots",
        "test:playwright:functional": "npx playwright test -c playwright-ct.config.ts --tsconfig=./playwright/tsconfig.json",
        "test:playwright:visual": "npx playwright test -c playwright-viz.config.ts --tsconfig=./playwright/tsconfig.json",
        "test:playwright:a11y": "npx playwright test -c playwright-a11y.config.ts --tsconfig=./playwright/tsconfig.json",
        "test:playwright:e2e": "npx playwright test -c playwright-e2e.config.ts",
        "types": "run-s types:generate types:build types:replace-react-jsx-namespace types:clean",
        "types:generate": "run-p types:generate:*",
        "types:generate:tsc": "tsc",
        "types:generate:copy": "node scripts/generate-types",
        "types:build": "run-p types:api-extractor:* types:typedoc",
        "types:api-extractor:dist": "api-extractor run",
        "types:api-extractor:next": "api-extractor run -c config/api-extractor.next.json",
        "types:api-extractor:icons": "api-extractor run -c config/api-extractor.icons.json",
        "types:typedoc": "run-p types:typedoc:* && node scripts/typedoc/generate-api-data.js",
        "types:typedoc:dist": "typedoc --options config/typedoc.json",
        "types:typedoc:next": "typedoc --options config/typedoc.next.json",
        "types:typedoc:icons": "typedoc --options config/typedoc.icons.json",
        "types:replace-react-jsx-namespace": "node scripts/replace-react-jsx-namespace",
        "types:clean": "rimraf dist/types",
        "watch:typedoc": "run-p \"types:typedoc:* -- --watch --preserveWatchOutput\" watch:typedoc-post",
        "watch:typedoc-post": "node --watch-path=\"./dist/types/\" scripts/typedoc/generate-api-data.js"
    },
    "peerDependencies": {
        "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
        "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0",
        "typescript": ">=3.9.10"
    },
    "peerDependenciesMeta": {
        "typescript": {
            "optional": true
        }
    },
    "dependencies": {
        "@babel/runtime-corejs3": "^7.24.7",
        "@dnd-kit/core": "6.1.0",
        "@dnd-kit/modifiers": "7.0.0",
        "@juggle/resize-observer": "^3.4.0",
        "@floating-ui/react-dom": "^2.1.2",
        "@qualtrics/component-styles": "0.157.0",
        "@radix-ui/react-dropdown-menu": "2.1.16",
        "@react-aria/interactions": "^3.21.3",
        "@react-hook/resize-observer": "^1.2.6",
        "@vanilla-extract/css": "^1.15.3",
        "classnames": "^2.5.1",
        "core-js": "^3.37.1",
        "libphonenumber-js": "1.11.20",
        "react-aria": "^3.33.1",
        "react-focus-lock": "^2.12.1",
        "react-imask": "^7.6.1",
        "react-virtuoso": "4.7.13",
        "throttle-debounce": "^2.1.0",
        "uuid": "^8.3.2"
    },
    "devDependencies": {
        "@axe-core/playwright": "^4.10.1",
        "@babel/core": "^7.24.7",
        "@babel/eslint-parser": "^7.24.7",
        "@babel/plugin-transform-runtime": "^7.24.7",
        "@babel/preset-env": "^7.24.7",
        "@babel/preset-react": "^7.24.7",
        "@babel/preset-typescript": "^7.24.7",
        "@microsoft/api-extractor": "^7.48.1",
        "@playwright/experimental-ct-react": "1.58.2",
        "@playwright/test": "1.58.2",
        "@qualtrics/base-styles": "0.4.1",
        "@qualtrics/translations-qualtricsdesignsystemui": "^0.6.39377",
        "@qualtrics/translations-qualtricsdesignsystemuicountries": "^0.6.37430",
        "@rollup/plugin-babel": "^5.0.2",
        "@rollup/plugin-commonjs": "^22.0.1",
        "@rollup/plugin-json": "^4.0.3",
        "@rollup/plugin-node-resolve": "^13.3.0",
        "@rollup/plugin-replace": "^3.0.0",
        "@testing-library/jest-dom": "^6.4.6",
        "@testing-library/react": "^16.0.0",
        "@testing-library/user-event": "^14.5.2",
        "@types/classnames": "^2.2.6",
        "@types/estree": "^0.0.52",
        "@types/jest": "^29.5.0",
        "@types/node": "^18.17.13",
        "@types/react": "^19.0.0",
        "@types/react-dom": "^19.0.0",
        "@types/uuid": "^8.3.4",
        "@types/webpack": "^5.28.0",
        "@types/webpack-dev-server": "^4.3.1",
        "@typescript-eslint/eslint-plugin": "^8.5.0",
        "@typescript-eslint/parser": "^8.5.0",
        "@vanilla-extract/integration": "^8.0.4",
        "@vanilla-extract/jest-transform": "^1.1.1",
        "@vanilla-extract/webpack-plugin": "^2.3.11",
        "babel-loader": "^8.2.3",
        "babel-plugin-istanbul": "^6.1.1",
        "css-loader": "^6.5.1",
        "cssnano": "^4.1.11",
        "csstype": "^3.0.10",
        "eslint": "^8.57.0",
        "eslint-config-airbnb": "^19.0.4",
        "eslint-config-prettier": "^9.1.0",
        "eslint-plugin-babel": "^5.3.0",
        "eslint-plugin-compat": "^4.0.0",
        "eslint-plugin-import": "^2.25.3",
        "eslint-plugin-jsx-a11y": "^6.5.1",
        "eslint-plugin-playwright": "^2.1.0",
        "eslint-plugin-react": "^7.24.0",
        "eslint-plugin-react-hooks": "^4.6.2",
        "generic-names": "^4.0.0",
        "html-webpack-plugin": "^5.5.0",
        "identity-obj-proxy": "^3.0.0",
        "jest": "^29.7.0",
        "jest-environment-jsdom": "^29.7.0",
        "jest-junit": "^15.0.0",
        "less": "3.13.1",
        "less-loader": "^10.2.0",
        "memfs": "^3.3.0",
        "npm-run-all": "^4.1.5",
        "postcss": "^7.0.35",
        "postcss-modules": "^2.0.0",
        "postcss-preset-env": "^6.7.0",
        "postcss-reporter": "^6.0.1",
        "prettier": "^2.4.1",
        "react": "^19.0.0",
        "react-dom": "^19.0.0",
        "react-router-dom": "^6.3.0",
        "rimraf": "^3.0.2",
        "rollup": "^2.75.6",
        "rollup-plugin-copy": "^3.5.0",
        "rollup-plugin-postcss": "3.1.8",
        "rollup-plugin-rename-node-modules": "^1.3.1",
        "shelljs": "^0.8.5",
        "style-loader": "^3.3.1",
        "ts-node": "^10.9.2",
        "typedoc": "0.26.3",
        "typedoc-plugin-missing-exports": "3.0.0",
        "typescript": "^5.5.3",
        "webpack": "^5.58.0",
        "webpack-cli": "^4.9.1",
        "webpack-dev-server": "^4.15.2"
    },
    "sideEffects": [
        "**/*.vanilla.js"
    ],
    "browserslist": [
        "defaults",
        "ios 12.2",
        "not op_mini all"
    ],
    "files": [
        "dist",
        "icons",
        "next",
        "CHANGELOG.md"
    ],
    "prettier": {
        "tabWidth": 4,
        "singleQuote": true,
        "arrowParens": "avoid"
    },
    "jest": {
        "collectCoverage": true,
        "collectCoverageFrom": [
            "src/**/*.{js,ts,tsx}",
            "!src/**/*.css.ts",
            "!**/*.test.util.js",
            "!**/*.d.ts",
            "!src/icons/components**/*"
        ],
        "reporters": [
            "default",
            [
                "jest-junit",
                {
                    "suiteName": "UI React unit tests",
                    "outputName": "unit-test-results.xml",
                    "outputDirectory": "."
                }
            ]
        ],
        "modulePathIgnorePatterns": [
            "/playwright"
        ],
        "testTimeout": 8000,
        "coverageReporters": [
            "cobertura",
            "text"
        ],
        "coverageThreshold": {
            "global": {
                "lines": 80,
                "branches": 80,
                "functions": 80,
                "statements": 80
            }
        },
        "resolver": "./test/resolver.js",
        "setupFilesAfterEnv": [
            "./jest.setup.ts"
        ],
        "moduleNameMapper": {
            "\\.less$": "identity-obj-proxy"
        },
        "testEnvironment": "jsdom",
        "transform": {
            "\\.css(\\.ts)?$": "@vanilla-extract/jest-transform",
            "\\.[jt]sx?$": "babel-jest"
        }
    }
}
