rrule-rust
Version:
RRule implementation for browsers and Node.js written in Rust
120 lines • 4.46 kB
JSON
{
"name": "rrule-rust",
"version": "3.1.0",
"main": "dist/node/index.js",
"browser": "dist/browser/index.js",
"keywords": [
"rrule",
"icalendar",
"rust",
"wasm",
"rs"
],
"description": "RRule implementation for browsers and Node.js written in Rust",
"repository": "lsndr/rrule-rust",
"author": {
"name": "lsndr",
"email": "alexander@lsndr.me",
"url": "https://lsndr.me"
},
"publishConfig": {
"registry": "https://registry.npmjs.org/",
"access": "public"
},
"napi": {
"binaryName": "rrule-rust",
"packageName": "@rrule-rust/lib",
"targets": [
"x86_64-pc-windows-msvc",
"x86_64-apple-darwin",
"x86_64-unknown-linux-gnu",
"x86_64-unknown-linux-musl",
"aarch64-unknown-linux-gnu",
"i686-pc-windows-msvc",
"armv7-unknown-linux-gnueabihf",
"aarch64-apple-darwin",
"aarch64-linux-android",
"x86_64-unknown-freebsd",
"aarch64-unknown-linux-musl",
"aarch64-pc-windows-msvc",
"armv7-linux-androideabi",
"wasm32-wasip1-threads"
]
},
"license": "MIT",
"devDependencies": {
"@atao60/fse-cli": "^0.1.9",
"@commitlint/cli": "^20.1.0",
"@commitlint/config-conventional": "^20.0.0",
"@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
"@eslint/compat": "^2.0.0",
"@eslint/js": "^9.27.0",
"@napi-rs/cli": "^3.0.4",
"@semantic-release/git": "^10.0.1",
"@types/luxon": "^3.4.2",
"@types/node": "^24.10.1",
"benny": "^3.7.1",
"conventional-changelog-conventionalcommits": "^7.0.2",
"cross-env": "^10.1.0",
"eslint": "^9.27.0",
"eslint-config-prettier": "^10.1.5",
"eslint-import-resolver-typescript": "^4.3.5",
"eslint-plugin-import-x": "^4.12.2",
"husky": "^9.0.11",
"is-ci": "^4.1.0",
"luxon": "^3.4.4",
"mkdirp": "^3.0.1",
"patch-package": "^8.0.1",
"prettier": "^3.5.3",
"rimraf": "^6.0.1",
"rrule": "^2.7.2",
"semantic-release": "^25.0.2",
"ts-node": "^10.9.1",
"typescript": "^5.4.5",
"typescript-eslint": "^8.32.1",
"vitest": "^4.0.9"
},
"engines": {
"node": ">= 20",
"npm": ">= 10"
},
"scripts": {
"artifacts": "napi artifacts --build-output-dir src/lib",
"build:lib": "napi build --no-const-enum --platform --release --output-dir src/lib",
"prebuild": "fse remove --quiet ./dist",
"build": "npm run build:lib && npm run build:node && npm run build:browser && npm run build:npm",
"prebuild:node": "fse remove --quiet ./dist/node",
"build:node": "tsc -p ./tsconfig.node.json && fse copy --quiet ./src/lib/index.js ./dist/node/lib/index.js && fse copy --quiet ./src/lib/rrule-rust.wasi.cjs ./dist/node/lib/rrule-rust.wasi.cjs",
"prebuild:browser": "fse remove --quiet ./dist/browser",
"build:browser": "tsc -p ./tsconfig.browser.json && fse copy --quiet ./src/lib/browser.js ./dist/browser/lib/index.js",
"build:tests": "tsc -p ./tsconfig.test.json",
"build:npm": "napi create-npm-dirs && cd npm/wasm32-wasi && npm pkg delete cpu",
"test": "cross-env TZ=Europe/Moscow vitest run --config ./tests/.config/vitest.unit.config.ts",
"test:e2e": "vitest run --no-file-parallelism --config ./tests/.config/vitest.e2e.config.ts",
"universal": "napi universal",
"version": "napi version",
"benchmark": "ts-node ./benchmark/index.ts",
"format": "cargo fmt --all --check && prettier --check .",
"format:fix": "cargo fmt --all && prettier --write .",
"lint": "eslint --max-warnings=0 && cargo clippy -- -Dwarnings",
"lint:fix": "eslint --max-warnings=0 --fix && cargo clippy --fix --allow-dirty",
"prepare": "patch-package && husky",
"prepublishOnly": "npm run build && napi prepublish -t npm"
},
"optionalDependencies": {
"@rrule-rust/lib-win32-x64-msvc": "3.1.0",
"@rrule-rust/lib-darwin-x64": "3.1.0",
"@rrule-rust/lib-linux-x64-gnu": "3.1.0",
"@rrule-rust/lib-linux-x64-musl": "3.1.0",
"@rrule-rust/lib-linux-arm64-gnu": "3.1.0",
"@rrule-rust/lib-win32-ia32-msvc": "3.1.0",
"@rrule-rust/lib-linux-arm-gnueabihf": "3.1.0",
"@rrule-rust/lib-darwin-arm64": "3.1.0",
"@rrule-rust/lib-android-arm64": "3.1.0",
"@rrule-rust/lib-freebsd-x64": "3.1.0",
"@rrule-rust/lib-linux-arm64-musl": "3.1.0",
"@rrule-rust/lib-win32-arm64-msvc": "3.1.0",
"@rrule-rust/lib-android-arm-eabi": "3.1.0",
"@rrule-rust/lib-wasm32-wasi": "3.1.0"
}
}