feat: add multi-engine regex flavour support

This commit is contained in:
2026-07-27 11:43:51 +02:00
parent 7079cde15f
commit 7f3a91ad37
340 changed files with 643286 additions and 483 deletions

135
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "regex-tools",
"version": "0.3.0",
"version": "0.4.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "regex-tools",
"version": "0.3.0",
"version": "0.4.0",
"license": "GPL-3.0-or-later",
"dependencies": {
"@add-ideas/toolbox-contract": "0.2.2",
@@ -24,8 +24,13 @@
},
"devDependencies": {
"@add-ideas/toolbox-testkit": "0.2.2",
"@bjorn3/browser_wasi_shim": "0.4.2",
"@eslint/js": "10.0.1",
"@php-wasm/universal": "3.1.46",
"@php-wasm/web-8-5": "3.1.46",
"@playwright/test": "1.61.1",
"@ruby/4.0-wasm-wasi": "2.9.3-2.9.4",
"@ruby/wasm-wasi": "2.9.3-2.9.4",
"@testing-library/jest-dom": "6.9.1",
"@testing-library/react": "16.3.2",
"@testing-library/user-event": "14.6.1",
@@ -389,6 +394,13 @@
"node": ">=6.9.0"
}
},
"node_modules/@bjorn3/browser_wasi_shim": {
"version": "0.4.2",
"resolved": "https://registry.npmjs.org/@bjorn3/browser_wasi_shim/-/browser_wasi_shim-0.4.2.tgz",
"integrity": "sha512-/iHkCVUG3VbcbmEHn5iIUpIrh7a7WPiwZ3sHy4HZKZzBdSadwdddYDZAII2zBvQYV0Lfi8naZngPCN7WPHI/hA==",
"dev": true,
"license": "MIT OR Apache-2.0"
},
"node_modules/@bramus/specificity": {
"version": "2.4.2",
"resolved": "https://registry.npmjs.org/@bramus/specificity/-/specificity-2.4.2.tgz",
@@ -954,6 +966,84 @@
"url": "https://github.com/sponsors/Boshen"
}
},
"node_modules/@php-wasm/logger": {
"version": "3.1.46",
"resolved": "https://registry.npmjs.org/@php-wasm/logger/-/logger-3.1.46.tgz",
"integrity": "sha512-PfnDq5ammh5FXxkGX1TGEck9gmW3i76IvBCqtX4D45xnSBIuCeu8uf2oWuty2j/c8wTEO8vyRDdvCj5oow7bXw==",
"dev": true,
"license": "GPL-2.0-or-later",
"engines": {
"node": ">=20.10.0",
"npm": ">=10.2.3"
}
},
"node_modules/@php-wasm/progress": {
"version": "3.1.46",
"resolved": "https://registry.npmjs.org/@php-wasm/progress/-/progress-3.1.46.tgz",
"integrity": "sha512-WmmgEm6yz322M3pzgAUjxckyhpVxr2WWlHyVYDyaMZWU6UIDUHfiRZRPzADohNyYvV3g0/zMNaDGmxz+TTXwQQ==",
"dev": true,
"license": "GPL-2.0-or-later",
"dependencies": {
"@php-wasm/logger": "3.1.46"
},
"engines": {
"node": ">=20.10.0",
"npm": ">=10.2.3"
}
},
"node_modules/@php-wasm/stream-compression": {
"version": "3.1.46",
"resolved": "https://registry.npmjs.org/@php-wasm/stream-compression/-/stream-compression-3.1.46.tgz",
"integrity": "sha512-+oUw4CPX52FgYXEh5C+MgJAg7Cy5OeaVuh7HnQR6oxb69nU63/r8tHTLV/WrWRyjBYh321uJzLV7Gg29qmiUtg==",
"dev": true,
"license": "GPL-2.0-or-later",
"dependencies": {
"@php-wasm/util": "3.1.46"
}
},
"node_modules/@php-wasm/universal": {
"version": "3.1.46",
"resolved": "https://registry.npmjs.org/@php-wasm/universal/-/universal-3.1.46.tgz",
"integrity": "sha512-sx0KyN5kcsCMzwy+XJAyoOukSA5TEZYd0LK3l9kRP3I0CSd5h6JItkf5eZ42WltB+wD+aTRdqSwc/Mvkc7qBjQ==",
"dev": true,
"license": "GPL-2.0-or-later",
"dependencies": {
"@php-wasm/logger": "3.1.46",
"@php-wasm/progress": "3.1.46",
"@php-wasm/stream-compression": "3.1.46",
"@php-wasm/util": "3.1.46",
"ini": "4.1.2"
},
"engines": {
"node": ">=20.10.0",
"npm": ">=10.2.3"
}
},
"node_modules/@php-wasm/util": {
"version": "3.1.46",
"resolved": "https://registry.npmjs.org/@php-wasm/util/-/util-3.1.46.tgz",
"integrity": "sha512-Yh9HNbx+rB2R1tScUvvAsbJVIB7msjWceWYogyR2YvAOqlDL0ymZyaQ65+K3QcHh/8HostTRwwgQh5oK4DLDrA==",
"dev": true,
"engines": {
"node": ">=20.10.0",
"npm": ">=10.2.3"
}
},
"node_modules/@php-wasm/web-8-5": {
"version": "3.1.46",
"resolved": "https://registry.npmjs.org/@php-wasm/web-8-5/-/web-8-5-3.1.46.tgz",
"integrity": "sha512-j9wwlY6aNXuKBr4JPJzqE+vkM3Onk+byJsxLqaJs4U0gYDUBLr8CuKuVr+p13apSTUosConePYTAs0214aNxYA==",
"dev": true,
"license": "GPL-2.0-or-later",
"dependencies": {
"@php-wasm/universal": "3.1.46",
"wasm-feature-detect": "1.8.0"
},
"engines": {
"node": ">=20.10.0",
"npm": ">=10.2.3"
}
},
"node_modules/@playwright/test": {
"version": "1.61.1",
"resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.61.1.tgz",
@@ -1252,6 +1342,27 @@
"dev": true,
"license": "MIT"
},
"node_modules/@ruby/4.0-wasm-wasi": {
"version": "2.9.3-2.9.4",
"resolved": "https://registry.npmjs.org/@ruby/4.0-wasm-wasi/-/4.0-wasm-wasi-2.9.3-2.9.4.tgz",
"integrity": "sha512-USLEWmCjM/DIota/9c7Mwzzl3v8mvmg4x24m+zMq8+vLx5+AdOS6dyXvsL/B8+XjQn5UgYhh3c8ekaUdWFkUMA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@ruby/wasm-wasi": "2.9.3-2.9.4"
}
},
"node_modules/@ruby/wasm-wasi": {
"version": "2.9.3-2.9.4",
"resolved": "https://registry.npmjs.org/@ruby/wasm-wasi/-/wasm-wasi-2.9.3-2.9.4.tgz",
"integrity": "sha512-WxW9wON/TIf+8Ktng8qDJeV/6iH8kw+YwxOsOyXdAdLJgfYDPAXOqpIVd/96y2C9V8VJ2yqZm/IRv6nLeV6EKg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@bjorn3/browser_wasi_shim": "^0.4.2",
"tslib": "^2.8.1"
}
},
"node_modules/@standard-schema/spec": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz",
@@ -2614,6 +2725,16 @@
"node": ">=8"
}
},
"node_modules/ini": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz",
"integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==",
"dev": true,
"license": "ISC",
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
"node_modules/is-extglob": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
@@ -3731,8 +3852,7 @@
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
"dev": true,
"license": "0BSD",
"optional": true
"license": "0BSD"
},
"node_modules/type-check": {
"version": "0.4.0",
@@ -4045,6 +4165,13 @@
"node": ">=18"
}
},
"node_modules/wasm-feature-detect": {
"version": "1.8.0",
"resolved": "https://registry.npmjs.org/wasm-feature-detect/-/wasm-feature-detect-1.8.0.tgz",
"integrity": "sha512-zksaLKM2fVlnB5jQQDqKXXwYHLQUVH9es+5TOOHwGOVJOCeRBCiPjwSg+3tN2AdTCzjgli4jijCH290kXb/zWQ==",
"dev": true,
"license": "Apache-2.0"
},
"node_modules/webidl-conversions": {
"version": "8.0.1",
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-8.0.1.tgz",