{
	"name": "@alessiofrittoli/web-utils",
	"version": "1.12.0",
	"description": "Common TypeScript web utilities",
	"author": {
		"name": "Alessio Frittoli",
		"email": "info@alessiofrittoli.it",
		"url": "https://alessiofrittoli.it"
	},
	"license": "MIT",
	"funding": [
		{
			"type": "github",
			"url": "https://github.com/sponsors/alessiofrittoli"
		}
	],
	"keywords": [
		"web-utilities",
		"typed-map",
		"map",
		"string-utilities",
		"web-storage-api",
		"browser-api-utilities"
	],
	"homepage": "https://github.com/alessiofrittoli/web-utils#readme",
	"bugs": {
		"url": "https://github.com/alessiofrittoli/web-utils/issues",
		"email": "info@alessiofrittoli.it"
	},
	"repository": {
		"type": "git",
		"url": "git+https://github.com/alessiofrittoli/web-utils.git"
	},
	"main": "./dist/index.js",
	"module": "./dist/index.mjs",
	"types": "./dist/index.d.ts",
	"files": [
		"dist"
	],
	"exports": {
		".": {
			"types": "./dist/index.d.ts",
			"import": "./dist/index.mjs",
			"require": "./dist/index.js"
		},
		"./browser-api": {
			"types": "./dist/browser-api/index.d.ts",
			"import": "./dist/browser-api/index.mjs",
			"require": "./dist/browser-api/index.js"
		},
		"./device": {
			"types": "./dist/device/index.d.ts",
			"import": "./dist/device/index.mjs",
			"require": "./dist/device/index.js"
		},
		"./storage/Cookie": {
			"types": "./dist/storage/Cookie.d.ts",
			"import": "./dist/storage/Cookie.mjs",
			"require": "./dist/storage/Cookie.js"
		},
		"./storage/LocalStorage": {
			"types": "./dist/storage/LocalStorage.d.ts",
			"import": "./dist/storage/LocalStorage.mjs",
			"require": "./dist/storage/LocalStorage.js"
		},
		"./storage/SessionStorage": {
			"types": "./dist/storage/SessionStorage.d.ts",
			"import": "./dist/storage/SessionStorage.mjs",
			"require": "./dist/storage/SessionStorage.js"
		},
		"./arrays": {
			"types": "./dist/arrays.d.ts",
			"import": "./dist/arrays.mjs",
			"require": "./dist/arrays.js"
		},
		"./blob": {
			"types": "./dist/blob.d.ts",
			"import": "./dist/blob.mjs",
			"require": "./dist/blob.js"
		},
		"./dom": {
			"types": "./dist/dom.d.ts",
			"import": "./dist/dom.mjs",
			"require": "./dist/dom.js"
		},
		"./generators": {
			"types": "./dist/generators.d.ts",
			"import": "./dist/generators.mjs",
			"require": "./dist/generators.js"
		},
		"./map": {
			"types": "./dist/map.d.ts",
			"import": "./dist/map.mjs",
			"require": "./dist/map.js"
		},
		"./promises": {
			"types": "./dist/promises.d.ts",
			"import": "./dist/promises.mjs",
			"require": "./dist/promises.js"
		},
		"./regex": {
			"types": "./dist/regex.d.ts",
			"import": "./dist/regex.mjs",
			"require": "./dist/regex.js"
		},
		"./strings": {
			"types": "./dist/strings.d.ts",
			"import": "./dist/strings.mjs",
			"require": "./dist/strings.js"
		},
		"./types": {
			"types": "./dist/types.d.ts",
			"import": "./dist/types.mjs",
			"require": "./dist/types.js"
		},
		"./validation": {
			"types": "./dist/validation.d.ts",
			"import": "./dist/validation.mjs",
			"require": "./dist/validation.js"
		}
	},
	"sideEffects": false,
	"scripts": {
		"//1a": "*********************************************************************",
		"//1b": "******************** DEV - BUILD - LINT - RELEASE *******************",
		"//1c": "*********************************************************************",
		"dev": "NODE_ENV=development tsup --watch",
		"build:prod": "NODE_ENV=production tsup",
		"build": "pnpm lint && pnpm test:ci && pnpm build:prod",
		"lint": "eslint",
		"release": "node scripts/publish.js --verbose --npm",
		"//2a": "*********************************************************************",
		"//2b": "***************************** UNIT TESTS ****************************",
		"//2c": "*********************************************************************",
		"test": "jest --verbose",
		"test:watch": "jest --watchAll --verbose",
		"test:ci": "jest --ci --verbose",
		"//3a": "*********************************************************************",
		"//3b": "************************ UNIT TESTS COVERAGE ************************",
		"//3c": "*********************************************************************",
		"test:coverage": "pnpm test:watch --coverage",
		"test:coverage:ci": "pnpm test:ci --coverage",
		"test:serve-coverage": "http-server ./coverage/lcov-report --gzip true -p 0 -o --silent",
		"test:coverage:serve": "concurrently --prefix none --kill-others \"pnpm test:coverage\" \"pnpm test:serve-coverage\"",
		"//4a": "*********************************************************************",
		"//4b": "************************ TARGETED UNIT TESTS ************************",
		"//4c": "*********************************************************************",
		"test:map": "pnpm test:watch map.test.ts",
		"test:blob": "pnpm test:watch blob.test.ts",
		"test:generators": "pnpm test:watch generators.test.ts",
		"test:regex": "pnpm test:watch regex.test.ts",
		"test:strings": "pnpm test:watch strings.test.ts",
		"test:types": "pnpm test:watch types.test.ts",
		"test:validation": "pnpm test:watch validation.test.ts",
		"test:cookie": "pnpm test:watch storage/cookie.test.ts storage/cookie.jsdom.test.ts",
		"test:local": "pnpm test:watch storage/local.test.ts",
		"test:session": "pnpm test:watch storage/session.test.ts",
		"test:browser-api": "pnpm test:watch browser-api/*",
		"test:device": "pnpm test:watch device/*",
		"test:promises": "pnpm test:watch promises.test.ts"
	},
	"devDependencies": {
		"@alessiofrittoli/node-scripts": "^2.6.0",
		"@eslint/js": "^9.27.0",
		"@jest/globals": "^29.7.0",
		"@types/jest": "^29.5.14",
		"@types/node": "^22.15.21",
		"concurrently": "^9.1.2",
		"dotenv": "^16.5.0",
		"eslint": "^9.27.0",
		"globals": "^16.1.0",
		"http-server": "^14.1.1",
		"jest": "^29.7.0",
		"jest-environment-jsdom": "^29.7.0",
		"ts-jest": "^29.3.4",
		"ts-node": "^10.9.2",
		"tsup": "^8.5.0",
		"typescript": "^5.8.3",
		"typescript-eslint": "^8.32.1"
	},
	"pnpm": {
		"onlyBuiltDependencies": [
			"@alessiofrittoli/type-utils",
			"esbuild"
		]
	},
	"dependencies": {
		"@alessiofrittoli/date-utils": "^3.2.0",
		"@alessiofrittoli/math-utils": "^1.13.0",
		"@alessiofrittoli/type-utils": "^1.8.0",
		"@alessiofrittoli/url-utils": "^3.4.0"
	}
}
