From 7ca8a72a119d8df2844184e5052476f6f1265b2b Mon Sep 17 00:00:00 2001 From: MarvNC Date: Sat, 10 Feb 2024 20:55:02 -0800 Subject: [PATCH 1/4] Add buildHonziDict script --- package-lock.json | 1753 +++++++++++++++++++++++++++++++ package.json | 2 + src/convertToHonziDictionary.js | 60 ++ 3 files changed, 1815 insertions(+) create mode 100644 src/convertToHonziDictionary.js diff --git a/package-lock.json b/package-lock.json index c60d114..ad0d25c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,6 +10,7 @@ "@gerhobbelt/xregexp": "^4.4.0-32", "axios": "^1.6.7", "csv-parser": "^3.0.0", + "is-cjk-hanzi": "^1.0.0", "jsdom": "^23.0.1", "sharp": "^0.33.2", "yomichan-dict-builder": "^2.2.0", @@ -596,6 +597,1687 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@stdlib/array-float32": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/array-float32/-/array-float32-0.1.1.tgz", + "integrity": "sha512-6HEwUqo2wyGOeZj2KXwWjoK+O+8NmHAkJIt3dR8gdDbzG51SUsuaUaCCZ4730TAZ/ZM6gSSdja0iwoWOnBAfyQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-float32array-support": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/array-float64": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/array-float64/-/array-float64-0.1.1.tgz", + "integrity": "sha512-rvVH0NT4+kBFylR5sAgAk6A1gPc0KjLl9aYAzP1/3HxWSQYK9WetBr1ZxA3m2yQ3TUkYgiwvGfmzLrypfC9yrQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-float64array-support": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-has-float32array-support": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-has-float32array-support/-/assert-has-float32array-support-0.1.1.tgz", + "integrity": "sha512-saztEmn0svD4ids3wttuiD83Uh6aVNiG8zyKXdmiFdgzqbnbklJGV64c43/onPgCRYRX82sszSV7/EPiYM8dsA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-float32array": "^0.1.1", + "@stdlib/constants-float64-pinf": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-has-float64array-support": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-has-float64array-support/-/assert-has-float64array-support-0.1.1.tgz", + "integrity": "sha512-8NdNkqL3S/AYUxtrNK8VLb32x5YERkuUmOPx6iQi8NwOh7kXRKcG+pcDZdET+vYLs+3gV0ZI7WPIWnWuL9qL5Q==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-float64array": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-has-own-property": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-has-own-property/-/assert-has-own-property-0.1.1.tgz", + "integrity": "sha512-Zsylp37i4rz3r0SEknZHDiqRf3StznHRm/tsh4vq6w63C+q8gyFDZVQcwFQ55OrK9OmvWmW+ypAFBUpEFAjX6Q==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-has-symbol-support": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-has-symbol-support/-/assert-has-symbol-support-0.1.1.tgz", + "integrity": "sha512-wQpag9EQENPG+EAel6YuUDvNgT8DlaR9s582xE3ScNTLvjNFCzS9M6tFKbgYojxUP7ZCj9VVnh0BAMg+Cxyrww==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-has-tostringtag-support": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-has-tostringtag-support/-/assert-has-tostringtag-support-0.1.1.tgz", + "integrity": "sha512-EQbfk5kH0rqaL8fFBPjcj3xloZ+vHMLnSM8TvKS0ViMH2adp/qneR+tr9fk3AavxMikrLe8iK/AdTGGDd5xv9A==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-symbol-support": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-has-utf16-surrogate-pair-at": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@stdlib/assert-has-utf16-surrogate-pair-at/-/assert-has-utf16-surrogate-pair-at-0.1.0.tgz", + "integrity": "sha512-YMWbA/H/73VJ0XwGFXMU25jzHJTrMrxgsz30i60giyk6+1QaTGBSmBC/80SZNY1/gU0fql3zCl0EgrzVlg5uwg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-nonnegative-integer": "^0.1.0", + "@stdlib/assert-is-string": "^0.1.0", + "@stdlib/string-format": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-array": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-array/-/assert-is-array-0.1.1.tgz", + "integrity": "sha512-KTWYXjecLsijeIzZ4V+s+pE3P5Nq9q5uZwF4NwYRmPCiLd3CQX0Z+Oyyl1Tfsc/uuNwtd/QMTK4jeR0kTlgkxQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-boolean": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-boolean/-/assert-is-boolean-0.1.1.tgz", + "integrity": "sha512-4lyxL8U0rn0IS2fDdYaK9V5RR61eUuWuspZALllocpfWgYJQx6IjVK2YuEH9Xq/vlSsvNLv5Gich7bm//SKCOA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-tostringtag-support": "^0.1.1", + "@stdlib/boolean-ctor": "^0.1.1", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1", + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-buffer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-buffer/-/assert-is-buffer-0.1.1.tgz", + "integrity": "sha512-N3YbHZiM2GmQjJ95g28B3BH440SAKfZDgTKhswD1xgvuZXbRVgoW0IDdY45PZyXQTXrwRXJyL932IcOnL0ZSKA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-object-like": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-float32array": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-float32array/-/assert-is-float32array-0.1.1.tgz", + "integrity": "sha512-ozlS1urZ88CycZpR2kx6s/BP26gsBf2W387qRzVZ1v7ISG6Fra4sTR+4Sj5omdbWLpUgDpGKIokxmDRqbjuSLg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-float64array": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-float64array/-/assert-is-float64array-0.1.1.tgz", + "integrity": "sha512-UyJLC3/f712J79GdZA1AWOhIhqqCVLX1FYh0zyNHVf204ulm6sEXqwfsWyLH9fq19+LMoAlLYgItsLFh8DF+rQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-function": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-function/-/assert-is-function-0.1.1.tgz", + "integrity": "sha512-uLgNA19fkSnAtiGv5De51WHYt6pOVKzgTtHjDORNnmR6WA0+B38PW4gu3VjwLFXf9dAbd7znESkDjiAOzlah+Q==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-type-of": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-integer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-integer/-/assert-is-integer-0.1.0.tgz", + "integrity": "sha512-PfoiOuk5sUNj7ICjLVB1b435nCDhZAlVPzOcSPoWXJC8U4JWv9LTU/z1g8lNwUFZFNJDtdrS95dSgmBt8ZwTqA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-number": "^0.1.0", + "@stdlib/constants-float64-ninf": "^0.1.0", + "@stdlib/constants-float64-pinf": "^0.1.0", + "@stdlib/math-base-assert-is-integer": "^0.1.0", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-nonnegative-integer": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-nonnegative-integer/-/assert-is-nonnegative-integer-0.1.0.tgz", + "integrity": "sha512-58Ax7mnkfz6qqMqs+WK7PzhwUXxoHdUY3gKUpoO2zWukzX09cfj4v+YOqhN91Z39CqaBx/copWfh1+fdpyX3PA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-integer": "^0.1.0", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-number": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-number/-/assert-is-number-0.1.1.tgz", + "integrity": "sha512-mDzHAQuo75Xi+iA3CHTvglQAIaBdOpT9Sblrr17+47AGZuwyoMvHWz1ggsOrpydaHUUS2yoCVAqLWPxadjGA/w==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-tostringtag-support": "^0.1.1", + "@stdlib/number-ctor": "^0.1.1", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1", + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-object": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-object/-/assert-is-object-0.1.1.tgz", + "integrity": "sha512-GrQ7COsfCfl2zThd6scIkpauo+UPMj5I/PxFxMMie6ptvLKcfJ5BOtampcY5phTdAiVNAWywwXE30b94cEnvrw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-array": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-object-like": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-object-like/-/assert-is-object-like-0.1.1.tgz", + "integrity": "sha512-MbPagSu0R5iqmXSTb0H5dDaHRgjGCFA+pxJouPPkjSv/mpVAwdRIuAqJwnjIK7xG7XZ4NV8L3h+k6FM0zuurmg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-tools-array-function": "^0.1.1", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-plain-object": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-plain-object/-/assert-is-plain-object-0.1.1.tgz", + "integrity": "sha512-u5JfFzhvm6vLKPwqNqRSrQXB1Xp2FwkcxEoJVkrXxQLI/6IyWlRgnd7YjXKrunvsrq1RRY1fsKS3vEwSdlgfeA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-own-property": "^0.1.1", + "@stdlib/assert-is-function": "^0.1.1", + "@stdlib/assert-is-object": "^0.1.1", + "@stdlib/utils-get-prototype-of": "^0.1.1", + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-regexp": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-regexp/-/assert-is-regexp-0.1.1.tgz", + "integrity": "sha512-gwj7Ly2nnKBSAubFMBJUs/uogxu0sQhZKwsV+NHE/1w3OcXDUPga+g5SqQeNUscSvCtdL2VITYQ4iCm4hXYFeA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-tostringtag-support": "^0.1.1", + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-is-string": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-is-string/-/assert-is-string-0.1.1.tgz", + "integrity": "sha512-GrQjWcirF4xAAp48e4rWpr0SmmUbdsAsoGse9PdOXSLaGRhAjDziLAgx2GLEJMcBuxCR5n1g2dCicPo6bM1hDw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-tostringtag-support": "^0.1.1", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1", + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/assert-tools-array-function": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/assert-tools-array-function/-/assert-tools-array-function-0.1.1.tgz", + "integrity": "sha512-XctryOr7EYS8I/Yb27VkOKp6yqvU1kJd2Es7BdWnw3SO4wP7hGpEHpPTwfsT/WeKiAW1OS4Id4GJNpGsHpBdgA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-array": "^0.1.1", + "@stdlib/error-tools-fmtprodmsg": "^0.1.0", + "@stdlib/string-format": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/boolean-ctor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/boolean-ctor/-/boolean-ctor-0.1.1.tgz", + "integrity": "sha512-6zt/RjHyo9v5T/qq981TK24+hr5sOC5ITexqGoo/karh7mqj/zLY/KmczBK8ZSacioDN+WGvzelpqa0bedNv+A==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/complex-float32": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/complex-float32/-/complex-float32-0.1.1.tgz", + "integrity": "sha512-A89rTB+GZq/MAXryGthz15n0XKqeeXhqt87s40NvoO/eGMyU/QhZuNzoL/nvJK99MbPHklyzw5Vst5iTfigZKQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-number": "^0.1.1", + "@stdlib/error-tools-fmtprodmsg": "^0.1.1", + "@stdlib/number-float64-base-to-float32": "^0.1.1", + "@stdlib/string-format": "^0.1.1", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1", + "@stdlib/utils-define-property": "^0.1.1", + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/complex-float64": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/complex-float64/-/complex-float64-0.1.1.tgz", + "integrity": "sha512-q7KPkxhJPsP0EYTbUpdTQLXzKkk4DOtgItvlR6ZqRUxXxyQMLDQv1rHO9yScrZ8Tkw0qM5CpQlKezsHkhrBNqA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-number": "^0.1.1", + "@stdlib/complex-float32": "^0.1.1", + "@stdlib/error-tools-fmtprodmsg": "^0.1.1", + "@stdlib/string-format": "^0.1.1", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1", + "@stdlib/utils-define-property": "^0.1.1", + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/complex-reim": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/complex-reim/-/complex-reim-0.1.1.tgz", + "integrity": "sha512-YHbV2/uG9nK6qVMg+JNTtt5TUum0R1sbLX30U/VmEG2vg8yAm681E+SkQNAqfWhKYqBuJpn9N7WLSfybA2A3lQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/array-float64": "^0.1.1", + "@stdlib/complex-float64": "^0.1.1", + "@stdlib/types": "^0.1.0", + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/complex-reimf": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/complex-reimf/-/complex-reimf-0.1.1.tgz", + "integrity": "sha512-lERvrMT3CUngdA0Fc290Hx4pvK/bti+eEomKNV1zg/ZDpT8/cvGW9AzhEUEAGgIlrzz1tVVOYW2Xb3DkFrhpbQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/array-float32": "^0.1.1", + "@stdlib/complex-float32": "^0.1.1", + "@stdlib/types": "^0.1.0", + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/constants-float64-ninf": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/constants-float64-ninf/-/constants-float64-ninf-0.1.1.tgz", + "integrity": "sha512-3N/Hsli6ILp83wDikYerNb0LHZ0JcGu1qQTF7HQAr2Uo5l7lOOMnWaGr0f8vtj5U0zXQMoG5jOIsVaRg6TvJnw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/number-ctor": "^0.1.1", + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/constants-float64-pinf": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/constants-float64-pinf/-/constants-float64-pinf-0.1.1.tgz", + "integrity": "sha512-+KQ1MMdZgai5e7Dscn0qgcv5XtwZUzrLvwCrTdeJXfzhnCE0Le94hPresBjs7MFUeXZMKZjxzP8cc5MgxuyN9g==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/error-tools-fmtprodmsg": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/error-tools-fmtprodmsg/-/error-tools-fmtprodmsg-0.1.1.tgz", + "integrity": "sha512-gyQsjgr+TacoDXpPUIkL5LxEx+tT7uWycyv92no0Jo4J+mCzxOq47cBNuwTxboeIKtUSuscD5trWpL9oIdYYbQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/types": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/fs-exists": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/fs-exists/-/fs-exists-0.1.1.tgz", + "integrity": "sha512-S8UmYjFlkuW3GF2XG5rKgIMd+cSrVPTtDvPax5QCFZy7sQmmWZ3H+LTmA1GEi0Qbqwx0x2a7//VoPX0LkkW3Jg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/fs-resolve-parent-path": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/fs-resolve-parent-path/-/fs-resolve-parent-path-0.1.1.tgz", + "integrity": "sha512-PQcs95K1uvdkuOysRyl8xf62oApqM8E9vBgES0/jKJCD7t85N/RDhDf53SDLoRwR5BftDd+AmXlyTgEn5a0QWw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-own-property": "^0.1.1", + "@stdlib/assert-is-function": "^0.1.1", + "@stdlib/assert-is-plain-object": "^0.1.1", + "@stdlib/assert-is-string": "^0.1.1", + "@stdlib/fs-exists": "^0.1.1", + "@stdlib/process-cwd": "^0.1.1", + "@stdlib/string-format": "^0.1.1", + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/math-base-assert-is-integer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/math-base-assert-is-integer/-/math-base-assert-is-integer-0.1.1.tgz", + "integrity": "sha512-fmWxzWHSa1rNQpvzgxQfFVGBKeBD4T2wEEOQMlTWcUjbIO6tfPfJQxfnUG+K95Wq0Il62byVuVUXOQkGvcnoHg==", + "hasInstallScript": true, + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/math-base-special-floor": "^0.1.1", + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/math-base-napi-unary": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/math-base-napi-unary/-/math-base-napi-unary-0.1.1.tgz", + "integrity": "sha512-ipjGEDy/rsYVvx9FGe6maZEmz1CdTkk6wukhvhGJcF33Lq3/i3JnlbMfh3jWFqfGGz+fQvteXr1HB1O4uz67zg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/complex-float32": "^0.1.1", + "@stdlib/complex-float64": "^0.1.1", + "@stdlib/complex-reim": "^0.1.1", + "@stdlib/complex-reimf": "^0.1.1", + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/math-base-special-floor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/math-base-special-floor/-/math-base-special-floor-0.1.1.tgz", + "integrity": "sha512-qMYQWgWrXsH7uiq4v2EzeThJa9h5/tLgzZbbtnMTQD1BG8OFADla/BXiNPovD0OxwGqMycG7nRUyzA/bFavWfQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/math-base-napi-unary": "^0.1.1", + "@stdlib/utils-library-manifest": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/number-ctor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/number-ctor/-/number-ctor-0.1.1.tgz", + "integrity": "sha512-KV8MkYo6QWa2BCUyqu7TiL8fJfWp9Fuz3Ndrr3BbkxUoVTWNFbUoXUEIS02l5ApX5RxvE7p0I47EJLEO7ddlUA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/number-float64-base-to-float32": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/number-float64-base-to-float32/-/number-float64-base-to-float32-0.1.1.tgz", + "integrity": "sha512-+QTVelFLU288n69qVHMKCz1NdR1plSi5tJqiQXu59iXV9K1tzLPLxkAgsRjFPgmKoOtv1U1p9QdmmCCmRRtxsQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/array-float32": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/object-ctor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/object-ctor/-/object-ctor-0.1.1.tgz", + "integrity": "sha512-IidMltQaL210Rff14s5o7/PhKbiQbPwLGjZW/80bqRegUFmWLvOaMMvshGGcuwRL/QNxjm9GekvxOa4L9dcY4A==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/process-cwd": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/process-cwd/-/process-cwd-0.1.1.tgz", + "integrity": "sha512-0K5VVqrPbhz24/0hkDet17Xhle/+cHCSZW4o805oML62MVnceFWl41uHB7gfwR9NtiDZ/xXSuXRnUCQh1OzaNA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/regexp-extended-length-path": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/regexp-extended-length-path/-/regexp-extended-length-path-0.1.1.tgz", + "integrity": "sha512-MN9HsjGnl/aE+X8AVzZiw9ArdFXvfCxtFtDPCyLlAZoZaO1Pyfw3Tr3IbNLAUWk6qfpOe70I83lKxSy+2cn0zg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/regexp-function-name": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/regexp-function-name/-/regexp-function-name-0.1.1.tgz", + "integrity": "sha512-gyDtmW5sT2b5T9k2+YEaPqAoWrGw1H+UIIOngjDUDyd4k4IzrRUyUbsJzhJedZ1PDk+xbeVBLdIHMPAMREF/xw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-define-nonenumerable-read-only-property": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/string-base-format-interpolate": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/string-base-format-interpolate/-/string-base-format-interpolate-0.1.1.tgz", + "integrity": "sha512-amSiQPOaKNoMgsgvdOCwLjlhrhcj1wUTnBrKmOcjUl3wSR+kRW1zEmGs92DaeGGf0B/SJMe1D3oq5DPriIPP8Q==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/string-base-format-tokenize": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/string-base-format-tokenize/-/string-base-format-tokenize-0.1.1.tgz", + "integrity": "sha512-Og33cMtG6btAdA9Dwu69rEZ3/piZEGGLsbt1O2kIi1mxsVk34CO5Wr2JE0VetBjtJ+ylyNm5FODBjsObUhiliQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/string-base-lowercase": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@stdlib/string-base-lowercase/-/string-base-lowercase-0.2.1.tgz", + "integrity": "sha512-sU5ao/NCg8BCLke5j/99ILxRw09n8g+bXMkabw3DDP+jGpnh5fXpQt4WUicQASOs//WWAX/2h8ARhXiYyGq+bg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/string-base-replace": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/string-base-replace/-/string-base-replace-0.1.1.tgz", + "integrity": "sha512-vS1ujnyaKaoYMNjVkrpjH2LIY3xb1f8GqcyKFgG6FV2Ls1Jujv7Je1h5qcOv1W8v3/1i4vKLOTxv7EddPkCSIw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/string-format": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/string-format/-/string-format-0.1.1.tgz", + "integrity": "sha512-s/AyPpI2hh2mHcvb/OXrVSv2IQbLlXCL55YSW1HyByVsKRMUgE8RsU2uSuwIIbEczbLIffMugG5ly5QxX7fbCw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/string-base-format-interpolate": "^0.1.1", + "@stdlib/string-base-format-tokenize": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/string-replace": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/string-replace/-/string-replace-0.1.1.tgz", + "integrity": "sha512-cgr1KBzGLhpCHiAhkVdECT/7jnWD3nC4H3zG1EGX+XNXMobJt536QBPQ6mqPjOfLJScDlAIjEe+P2OPvqLFGrg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-function": "^0.1.1", + "@stdlib/assert-is-regexp": "^0.1.1", + "@stdlib/assert-is-string": "^0.1.1", + "@stdlib/string-base-replace": "^0.1.1", + "@stdlib/string-format": "^0.1.1", + "@stdlib/utils-escape-regexp-string": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/symbol-ctor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/symbol-ctor/-/symbol-ctor-0.1.1.tgz", + "integrity": "sha512-XhhpiWoXwoB6pBkICOlgQsqRbX11TOsA9w18ntv8NAYaimT/dljxuvq258Dq48yuLy/XyFzXYP17uZ92UGFWLg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/types": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@stdlib/types/-/types-0.1.0.tgz", + "integrity": "sha512-gnUBNBOoDvA5BRJ11e/mNGasMRQwZrTERt6qICAAwqjCJuMamK+SKELv+GNQP/wX6i7rdqhocJy/7Fq7cGbRLQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-constructor-name": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-constructor-name/-/utils-constructor-name-0.1.1.tgz", + "integrity": "sha512-xn9qBIleueB9G5RgRfnO5xee1dVZbE+zPXPZOQpbJvaeRp9AWYHqB67x422jkhqu2ntWdv9yLLQAdVfgjVQqhA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-buffer": "^0.1.1", + "@stdlib/regexp-function-name": "^0.1.1", + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-convert-path": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-convert-path/-/utils-convert-path-0.1.1.tgz", + "integrity": "sha512-1iVffbaJvbmRTDk8rXfq781FSVvuZe4OpkG7ZAuyj9Hm8/jO88O9z5OZpvKlaOp9jNPr/HijUkf9eXRVIxtULw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-string": "^0.1.1", + "@stdlib/regexp-extended-length-path": "^0.1.1", + "@stdlib/string-base-lowercase": "^0.2.1", + "@stdlib/string-format": "^0.1.1", + "@stdlib/string-replace": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-define-nonenumerable-read-only-property": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-define-nonenumerable-read-only-property/-/utils-define-nonenumerable-read-only-property-0.1.1.tgz", + "integrity": "sha512-QCSKAflKO3vuljGaNgFNp3hIbe43CGiXiYET/RPCIo5cjIho8EN0rOQtcbT2s2udiGXXusl0t/v5YLiwueC6JQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/types": "^0.1.0", + "@stdlib/utils-define-property": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-define-property": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-define-property/-/utils-define-property-0.1.1.tgz", + "integrity": "sha512-vy6vaNV5aijnGZi1sWY8GPueOPmGc8No39ejXoSrHymMix83vNsk/pNsY2Usg1J80g71cZIlbCxiJjLJiXmOzw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/error-tools-fmtprodmsg": "^0.1.0", + "@stdlib/string-format": "^0.1.1", + "@stdlib/types": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-escape-regexp-string": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-escape-regexp-string/-/utils-escape-regexp-string-0.1.1.tgz", + "integrity": "sha512-4eOr5YOA5LjJrNyuaofuXg/lc4qxhpl/ZlazLddtiXWcAqf0nzclFbe/nHvF4fgvgUtYiC9+rRASbZyIDhxxkw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-string": "^0.1.1", + "@stdlib/error-tools-fmtprodmsg": "^0.1.0", + "@stdlib/string-format": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-get-prototype-of": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-get-prototype-of/-/utils-get-prototype-of-0.1.1.tgz", + "integrity": "sha512-JaVlxSs7G9GgEvgoPjUbjyFeHIcjO8gKn+Sc5eRHL9I8T1t40wFJTBJZc3ERZNyd+wh3A3xQ3GXFH1OaQLXD+A==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-function": "^0.1.1", + "@stdlib/object-ctor": "^0.1.1", + "@stdlib/utils-native-class": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-global": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-global/-/utils-global-0.1.1.tgz", + "integrity": "sha512-wXvsY8k2ZavYyh1tbRhO/d6JCZG9zyxt04FAY+pJh9NhOT98gbCRsUj6Yyp8TQ8Y1VDzUcNZpqei3q9Mg4CIdw==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-is-boolean": "^0.1.1", + "@stdlib/error-tools-fmtprodmsg": "^0.1.0", + "@stdlib/string-format": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-library-manifest": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-library-manifest/-/utils-library-manifest-0.1.1.tgz", + "integrity": "sha512-GO7XwUAhdI8KJyCMACYPwrn0caGi1hVa2Xc9SUPHUsGBhlKEa96ylz38FEsRVc75jcfduLfKQFJwuQETdxessQ==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/fs-resolve-parent-path": "^0.1.1", + "@stdlib/utils-convert-path": "^0.1.1", + "debug": "^2.6.9", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-library-manifest/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@stdlib/utils-library-manifest/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/@stdlib/utils-native-class": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@stdlib/utils-native-class/-/utils-native-class-0.1.1.tgz", + "integrity": "sha512-I8kGJN8T/Fjb+Yew0Asp6bg8Cbb7/XA973UAQ38LCb9uR3uKVsg+mKboMxKrnVkVGvZMp6kfmW8TlowMBzcsrg==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/assert-has-own-property": "^0.1.1", + "@stdlib/assert-has-tostringtag-support": "^0.1.1", + "@stdlib/symbol-ctor": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, + "node_modules/@stdlib/utils-type-of": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@stdlib/utils-type-of/-/utils-type-of-0.1.2.tgz", + "integrity": "sha512-xkNdrHnow25tNOuUpUxXyTnkIO14XUW35PYbTiypOLNqCoFLPEOUlrj7PkCdJKm0NW6DR0kbG/LzBUCso+VkIA==", + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "dependencies": { + "@stdlib/utils-constructor-name": "^0.1.1", + "@stdlib/utils-global": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stdlib" + } + }, "node_modules/@vercel/nft": { "version": "0.24.4", "resolved": "https://registry.npmjs.org/@vercel/nft/-/nft-0.24.4.tgz", @@ -1489,6 +3171,14 @@ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", "dev": true }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/gauge": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz", @@ -1644,6 +3334,17 @@ "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", "dev": true }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/html-encoding-sniffer": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", @@ -1763,6 +3464,26 @@ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" }, + "node_modules/is-cjk-hanzi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-cjk-hanzi/-/is-cjk-hanzi-1.0.0.tgz", + "integrity": "sha512-D1wR0pjPy8O4wKHFTVxlqABB9LbSturJBALg/dTorRw6BDZDMWrhrp7sSGWjtK8zHSjM+JakC7/XpTZ7/lu7Dg==", + "dependencies": { + "@gerhobbelt/xregexp": "^4.4.0-32", + "@stdlib/assert-has-utf16-surrogate-pair-at": "^0.1.0" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -2330,6 +4051,11 @@ "node": ">=0.10.0" } }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, "node_modules/path-type": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", @@ -2465,6 +4191,22 @@ "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/resolve-cwd": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", @@ -2763,6 +4505,17 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", diff --git a/package.json b/package.json index eba8491..62e12c7 100644 --- a/package.json +++ b/package.json @@ -3,12 +3,14 @@ "download": "node src/downloadLatest.js", "buildTermDict": "node src/convertToTermDictionary.js", "buildFreq": "node src/convertToFrequencyDictionary.js", + "buildHonziDict": "node src/convertToHonziDictionary.js", "test": "ava" }, "dependencies": { "@gerhobbelt/xregexp": "^4.4.0-32", "axios": "^1.6.7", "csv-parser": "^3.0.0", + "is-cjk-hanzi": "^1.0.0", "jsdom": "^23.0.1", "sharp": "^0.33.2", "yomichan-dict-builder": "^2.2.0", diff --git a/src/convertToHonziDictionary.js b/src/convertToHonziDictionary.js new file mode 100644 index 0000000..8f88378 --- /dev/null +++ b/src/convertToHonziDictionary.js @@ -0,0 +1,60 @@ +import { Dictionary, DictionaryIndex, KanjiEntry } from 'yomichan-dict-builder'; +import { getVersion } from './util/getVersion.js'; +import { dataFolder, exportDirectory } from './constants.js'; +import { readAndParseCSVs } from './util/readAndParseCSVs.js'; +import { isSingleCJKHanzi } from 'is-cjk-hanzi'; + +(async () => { + const { dictionaryEntries, dateString } = await readAndParseCSVs(dataFolder); + + const dictionary = new Dictionary({ + fileName: `Words.hk 漢字 ${dateString}.zip`, + }); + + const dictionaryIndex = new DictionaryIndex() + .setAuthor('Marv') + .setAttribution( + `Words.hk & contributers (https://words.hk) + See license at https://words.hk/base/hoifong/` + ) + .setUrl('https://github.com/MarvNC/wordshk-yomitan') + .setDescription( + `Converted from the free Words.hk dictionary found at https://words.hk/. + Converted using https://github.com/MarvNC/yomichan-dict-builder` + ) + .setTitle(`Words.hk 粵典 漢字 [${dateString}]`) + .setRevision(`${getVersion()}`); + await dictionary.setIndex(dictionaryIndex.build()); + + for (const entry of dictionaryEntries) { + addHonziEntry(dictionary, entry); + // const kanjiEntry = new KanjiEntry(entry.) + } + console.log(`Finished adding entries to dictionary.`); + + const stats = await dictionary.export(exportDirectory); + console.log(`Exported honzi dictionary to ${exportDirectory}.`); + console.log(`Added ${stats.kanjiCount} honzi entries.`); +})(); + +/** + * + * @param {Dictionary} dictionary + * @param {DictionaryEntry} entry + */ +function addHonziEntry(dictionary, entry) { + for (const headword of entry.headwords) { + if (!isSingleCJKHanzi(headword.text)) { + continue; + } + const kanjiEntry = new KanjiEntry(headword.text).setKunyomi( + headword.readings.join(' ') + ); + for (const sense of entry.senses) { + for (const explanationText of Object.values(sense.explanation)) { + kanjiEntry.addMeaning(explanationText); + } + } + dictionary.addKanji(kanjiEntry.build()); + } +} From 10b7c94be3282477298da458025a2ea968e9fd75 Mon Sep 17 00:00:00 2001 From: MarvNC Date: Sat, 10 Feb 2024 20:55:12 -0800 Subject: [PATCH 2/4] =?UTF-8?q?Add=20Words.hk=20=E6=BC=A2=E5=AD=97=20for?= =?UTF-8?q?=20Yomitan=20to=20readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/readme.md b/readme.md index 76fb189..3051fc0 100644 --- a/readme.md +++ b/readme.md @@ -16,6 +16,7 @@ more Yomitan dictionaries and tools, see ## Download - [Words.hk for Yomitan](https://github.com/MarvNC/wordshk-yomitan/releases/latest) +- [Words.hk 漢字 for Yomitan](https://github.com/MarvNC/wordshk-yomitan/releases/latest) - [Words.hk Frequency](https://drive.google.com/open?id=14kx0q9EBftwqaZPw55y9USkXFQlUrjf1&usp=drive_fs) ## Screenshots From 1c389ebbaf06f5f6bc89b3708f77f8b5fe133988 Mon Sep 17 00:00:00 2001 From: marv Date: Sat, 10 Feb 2024 20:56:47 -0800 Subject: [PATCH 3/4] =?UTF-8?q?Add=20=E6=BC=A2=E5=AD=97=20dict=20images?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- readme.md | 1 + 1 file changed, 1 insertion(+) diff --git a/readme.md b/readme.md index 3051fc0..0f16970 100644 --- a/readme.md +++ b/readme.md @@ -24,6 +24,7 @@ more Yomitan dictionaries and tools, see | ![chrome_廣東話_-_廣東話解釋__粵典_-_Google_Chrome_2024-02-03_22-57-37](https://github.com/MarvNC/wordshk-yomitan/assets/17340496/83eacfc1-6e31-453c-91c2-a8dac3be0bc4) | ![chrome_老虎_-_廣東話解釋__粵典_-_Google_Chrome_2024-02-03_22-58-13](https://github.com/MarvNC/wordshk-yomitan/assets/17340496/e882daa8-6fc4-491d-930e-ca9a0a081193) | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ![chrome_全脂_-_廣東話解釋__粵典_-_Google_Chrome_2024-02-03_22-58-35](https://github.com/MarvNC/wordshk-yomitan/assets/17340496/51fa78ba-c882-4f8c-b159-57a86f08e74b) | ![chrome_講_-_廣東話解釋__粵典_-_Google_Chrome_2024-02-03_22-58-48](https://github.com/MarvNC/wordshk-yomitan/assets/17340496/233798e0-2363-48c4-9c11-6665e6262ef2) | +| ![chrome_Yomitan_Settings_-_Google_Chrome_2024-02-10_20-54-43](https://github.com/MarvNC/wordshk-yomitan/assets/17340496/57190a49-baaa-4313-87c7-9e8252daf2ae) | ![chrome_Yomitan_Settings_-_Google_Chrome_2024-02-10_20-53-17](https://github.com/MarvNC/wordshk-yomitan/assets/17340496/4f6b9654-eb5d-4187-8d8d-56f4a10dfcf6) | ## Usage From eaa6d73efbcfd94ba0ccd953bb3d339822084123 Mon Sep 17 00:00:00 2001 From: MarvNC Date: Sat, 10 Feb 2024 20:58:32 -0800 Subject: [PATCH 4/4] Update build process to include additional dictionaries --- .github/workflows/daily-build.yaml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/daily-build.yaml b/.github/workflows/daily-build.yaml index dd35ce6..7f16069 100644 --- a/.github/workflows/daily-build.yaml +++ b/.github/workflows/daily-build.yaml @@ -18,8 +18,10 @@ jobs: - name: Download Latest CSVs run: npm run download - - name: Build Dictionary - run: npm run buildTermDict + - name: Build Dictionaries + run: | + npm run buildTermDict + npm run buildHonziDict - name: Upload Artifacts uses: actions/upload-artifact@v2