a676a3e99a
comboboxData(config) Alpine factory: typeable input + fuzzysort-ranked dropdown (prefix/substring/abbreviation subsequence matching), keyboard nav (Arrow/Enter/Escape/Tab), a11y roles, x-modelable value binding. allowFree (default) accepts off-list typed values so classics/kit cars are never blocked; allowFree:false for closed lists (US states) snaps back to a valid option on blur. Foundation for replacing native <select> chrome with inputs that match our text fields. 17/17 tests pass. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
57 lines
1.8 KiB
JSON
57 lines
1.8 KiB
JSON
{
|
|
"name": "@switchev/web-shared",
|
|
"version": "0.4.0",
|
|
"lockfileVersion": 3,
|
|
"requires": true,
|
|
"packages": {
|
|
"": {
|
|
"name": "@switchev/web-shared",
|
|
"version": "0.4.0",
|
|
"dependencies": {
|
|
"fuzzysort": "^3.1.0"
|
|
},
|
|
"peerDependencies": {
|
|
"dompurify": ">=3",
|
|
"marked": ">=12"
|
|
}
|
|
},
|
|
"node_modules/@types/trusted-types": {
|
|
"version": "2.0.7",
|
|
"resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz",
|
|
"integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==",
|
|
"license": "MIT",
|
|
"optional": true,
|
|
"peer": true
|
|
},
|
|
"node_modules/dompurify": {
|
|
"version": "3.4.9",
|
|
"resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.4.9.tgz",
|
|
"integrity": "sha512-4dPSRMRDqHvs0V4YDFCsaIZo4if5u0xM+llyxiM2fwuZFdKArUBAF3VtI2+n8NKg9P870WMdYk0UhqQNoWXbfQ==",
|
|
"license": "(MPL-2.0 OR Apache-2.0)",
|
|
"peer": true,
|
|
"optionalDependencies": {
|
|
"@types/trusted-types": "^2.0.7"
|
|
}
|
|
},
|
|
"node_modules/fuzzysort": {
|
|
"version": "3.1.0",
|
|
"resolved": "https://registry.npmjs.org/fuzzysort/-/fuzzysort-3.1.0.tgz",
|
|
"integrity": "sha512-sR9BNCjBg6LNgwvxlBd0sBABvQitkLzoVY9MYYROQVX/FvfJ4Mai9LsGhDgd8qYdds0bY77VzYd5iuB+v5rwQQ==",
|
|
"license": "MIT"
|
|
},
|
|
"node_modules/marked": {
|
|
"version": "18.0.5",
|
|
"resolved": "https://registry.npmjs.org/marked/-/marked-18.0.5.tgz",
|
|
"integrity": "sha512-S6GcvALHg6K4ohtu4E7x0a1AqhAjp6cV8KhLSyN9qVapnzJkusVBxZRcIU9AeYsbe6P1hKDusSbEOzGyyuce6w==",
|
|
"license": "MIT",
|
|
"peer": true,
|
|
"bin": {
|
|
"marked": "bin/marked.js"
|
|
},
|
|
"engines": {
|
|
"node": ">= 20"
|
|
}
|
|
}
|
|
}
|
|
}
|