diff --git a/README.md b/README.md index 14192bc6abd..e9c64f4da2c 100644 --- a/README.md +++ b/README.md @@ -98,11 +98,13 @@ The API covers the following modules: ### Templates -Faker contains a generator method `faker.fake` for combining faker API methods using a mustache string format. +Faker contains a generator method `faker.helpers.fake` for combining faker API methods using a mustache string format. ```ts console.log( - faker.fake('Hello {{name.prefix}} {{name.lastName}}, how are you today?') + faker.helpers.fake( + 'Hello {{name.prefix}} {{name.lastName}}, how are you today?' + ) ); ``` diff --git a/package.json b/package.json index 1eff32aa4f1..94a378d2baf 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,7 @@ ] }, "devDependencies": { - "@algolia/client-search": "~4.14.1", + "@algolia/client-search": "~4.14.2", "@types/markdown-it": "~12.2.3", "@types/node": "~18.0.6", "@types/prettier": "~2.6.4", @@ -106,7 +106,7 @@ "c8": "~7.12.0", "conventional-changelog-cli": "~2.2.2", "cypress": "~10.3.1", - "esbuild": "~0.14.50", + "esbuild": "~0.14.51", "eslint": "~8.20.0", "eslint-config-prettier": "~8.5.0", "eslint-define-config": "~1.5.1", @@ -135,7 +135,7 @@ "vitepress": "~0.22.4", "vitest": "~0.19.1" }, - "packageManager": "pnpm@7.6.0", + "packageManager": "pnpm@7.7.0", "engines": { "node": ">=14.0.0", "npm": ">=6.0.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e6f6295e541..421c7e7f201 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,7 +1,7 @@ lockfileVersion: 5.4 specifiers: - '@algolia/client-search': ~4.14.1 + '@algolia/client-search': ~4.14.2 '@types/markdown-it': ~12.2.3 '@types/node': ~18.0.6 '@types/prettier': ~2.6.4 @@ -14,7 +14,7 @@ specifiers: c8: ~7.12.0 conventional-changelog-cli: ~2.2.2 cypress: ~10.3.1 - esbuild: ~0.14.50 + esbuild: ~0.14.51 eslint: ~8.20.0 eslint-config-prettier: ~8.5.0 eslint-define-config: ~1.5.1 @@ -44,7 +44,7 @@ specifiers: vitest: ~0.19.1 devDependencies: - '@algolia/client-search': 4.14.1 + '@algolia/client-search': 4.14.2 '@types/markdown-it': 12.2.3 '@types/node': 18.0.6 '@types/prettier': 2.6.4 @@ -57,7 +57,7 @@ devDependencies: c8: 7.12.0 conventional-changelog-cli: 2.2.2 cypress: 10.3.1 - esbuild: 0.14.50 + esbuild: 0.14.51 eslint: 8.20.0 eslint-config-prettier: 8.5.0_eslint@8.20.0 eslint-define-config: 1.5.1 @@ -83,7 +83,7 @@ devDependencies: typescript: 4.7.4 validator: 13.7.0 vite: 3.0.3 - vitepress: 0.22.4_ju6wpa2hqqdrjfl4p3m6tanjem + vitepress: 0.22.4_imvgwgjzmeisgkq5uchhrryg6y vitest: 0.19.1_jcfjdqfldivpyjgll3wfgmwbia packages: @@ -94,14 +94,14 @@ packages: '@algolia/autocomplete-shared': 1.7.1 dev: true - /@algolia/autocomplete-preset-algolia/1.7.1_peqgqe7uij6smhko32m3outymy: + /@algolia/autocomplete-preset-algolia/1.7.1_bynjdelmk7kqfxl6rolmquprhm: resolution: {integrity: sha512-pJwmIxeJCymU1M6cGujnaIYcY3QPOVYZOXhFkWVM7IxKzy272BwCvMFMyc5NpG/QmiObBxjo7myd060OeTNJXg==} peerDependencies: '@algolia/client-search': ^4.9.1 algoliasearch: ^4.9.1 dependencies: '@algolia/autocomplete-shared': 1.7.1 - '@algolia/client-search': 4.14.1 + '@algolia/client-search': 4.14.2 algoliasearch: 4.13.1 dev: true @@ -119,8 +119,8 @@ packages: resolution: {integrity: sha512-7Vaf6IM4L0Jkl3sYXbwK+2beQOgVJ0mKFbz/4qSxKd1iy2Sp77uTAazcX+Dlexekg1fqGUOSO7HS4Sx47ZJmjA==} dev: true - /@algolia/cache-common/4.14.1: - resolution: {integrity: sha512-XhAzm0Sm3D3DuOWUyDoVSXZ/RjYMvI1rbki+QH4ODAVaHDWVhMhg3IJPv3gIbBQnEQdtPdBhsf2hyPxAu28E5w==} + /@algolia/cache-common/4.14.2: + resolution: {integrity: sha512-SbvAlG9VqNanCErr44q6lEKD2qoK4XtFNx9Qn8FK26ePCI8I9yU7pYB+eM/cZdS9SzQCRJBbHUumVr4bsQ4uxg==} dev: true /@algolia/cache-in-memory/4.13.1: @@ -153,11 +153,11 @@ packages: '@algolia/transporter': 4.13.1 dev: true - /@algolia/client-common/4.14.1: - resolution: {integrity: sha512-WDwziD7Rt1yCRDfONmeLOfh1Lt8uOy6Vn7dma171KOH9NN3q8yDQpOhPqdFOCz1j3GC1FfIZxaC0YEOIobZ2lg==} + /@algolia/client-common/4.14.2: + resolution: {integrity: sha512-43o4fslNLcktgtDMVaT5XwlzsDPzlqvqesRi4MjQz2x4/Sxm7zYg5LRYFol1BIhG6EwxKvSUq8HcC/KxJu3J0Q==} dependencies: - '@algolia/requester-common': 4.14.1 - '@algolia/transporter': 4.14.1 + '@algolia/requester-common': 4.14.2 + '@algolia/transporter': 4.14.2 dev: true /@algolia/client-personalization/4.13.1: @@ -176,20 +176,20 @@ packages: '@algolia/transporter': 4.13.1 dev: true - /@algolia/client-search/4.14.1: - resolution: {integrity: sha512-K6XrdIIQq8a3o+kCedj5slUVzA1aKttae4mLzwnY0bS7tYduv1IQggi9Sz8gOG6/MMyKMB4IwYqr47t/0z4Vxw==} + /@algolia/client-search/4.14.2: + resolution: {integrity: sha512-L5zScdOmcZ6NGiVbLKTvP02UbxZ0njd5Vq9nJAmPFtjffUSOGEp11BmD2oMJ5QvARgx2XbX4KzTTNS5ECYIMWw==} dependencies: - '@algolia/client-common': 4.14.1 - '@algolia/requester-common': 4.14.1 - '@algolia/transporter': 4.14.1 + '@algolia/client-common': 4.14.2 + '@algolia/requester-common': 4.14.2 + '@algolia/transporter': 4.14.2 dev: true /@algolia/logger-common/4.13.1: resolution: {integrity: sha512-L6slbL/OyZaAXNtS/1A8SAbOJeEXD5JcZeDCPYDqSTYScfHu+2ePRTDMgUTY4gQ7HsYZ39N1LujOd8WBTmM2Aw==} dev: true - /@algolia/logger-common/4.14.1: - resolution: {integrity: sha512-58CK87wTjUWI1QNXc3nFDQ7EXBi28NoLufXE9sMjng2fAL1wPdyO+KFD8KTBoXOZnJWflPj5F7p6jLyGAfgvcQ==} + /@algolia/logger-common/4.14.2: + resolution: {integrity: sha512-/JGlYvdV++IcMHBnVFsqEisTiOeEr6cUJtpjz8zc0A9c31JrtLm318Njc72p14Pnkw3A/5lHHh+QxpJ6WFTmsA==} dev: true /@algolia/logger-console/4.13.1: @@ -208,8 +208,8 @@ packages: resolution: {integrity: sha512-eGVf0ID84apfFEuXsaoSgIxbU3oFsIbz4XiotU3VS8qGCJAaLVUC5BUJEkiFENZIhon7hIB4d0RI13HY4RSA+w==} dev: true - /@algolia/requester-common/4.14.1: - resolution: {integrity: sha512-EbXBKrfYcX5/JJfaw7IZxhWlbUtjd5Chs+Alrfc4tutgRQn4dmImWS07n3iffwJcYdOWY1eRrnfBK5BwopuN5A==} + /@algolia/requester-common/4.14.2: + resolution: {integrity: sha512-73YQsBOKa5fvVV3My7iZHu1sUqmjjfs9TteFWwPwDmnad7T0VTCopttcsM3OjLxZFtBnX61Xxl2T2gmG2O4ehg==} dev: true /@algolia/requester-node-http/4.13.1: @@ -226,12 +226,12 @@ packages: '@algolia/requester-common': 4.13.1 dev: true - /@algolia/transporter/4.14.1: - resolution: {integrity: sha512-xbmoIqszFDOCCZqizBQ2TNHcGtjZX7EkJCzABsrokA0WqtfZzClFmtc+tZYgtEiyAfIF70alTegG19poQGdkvg==} + /@algolia/transporter/4.14.2: + resolution: {integrity: sha512-t89dfQb2T9MFQHidjHcfhh6iGMNwvuKUvojAj+JsrHAGbuSy7yE4BylhLX6R0Q1xYRoC4Vvv+O5qIw/LdnQfsQ==} dependencies: - '@algolia/cache-common': 4.14.1 - '@algolia/logger-common': 4.14.1 - '@algolia/requester-common': 4.14.1 + '@algolia/cache-common': 4.14.2 + '@algolia/logger-common': 4.14.2 + '@algolia/requester-common': 4.14.2 dev: true /@babel/code-frame/7.18.6: @@ -319,10 +319,10 @@ packages: resolution: {integrity: sha512-utLgg7E1agqQeqCJn05DWC7XXMk4tMUUnL7MZupcknRu2OzGN13qwey2qA/0NAKkVBGugiWtON0+rlU0QIPojg==} dev: true - /@docsearch/js/3.1.1_ju6wpa2hqqdrjfl4p3m6tanjem: + /@docsearch/js/3.1.1_imvgwgjzmeisgkq5uchhrryg6y: resolution: {integrity: sha512-bt7l2aKRoSnLUuX+s4LVQ1a7AF2c9myiZNv5uvQCePG5tpvVGpwrnMwqVXOUJn9q6FwVVhOrQMO/t+QmnnAEUw==} dependencies: - '@docsearch/react': 3.1.1_ju6wpa2hqqdrjfl4p3m6tanjem + '@docsearch/react': 3.1.1_imvgwgjzmeisgkq5uchhrryg6y preact: 10.10.0 transitivePeerDependencies: - '@algolia/client-search' @@ -331,7 +331,7 @@ packages: - react-dom dev: true - /@docsearch/react/3.1.1_ju6wpa2hqqdrjfl4p3m6tanjem: + /@docsearch/react/3.1.1_imvgwgjzmeisgkq5uchhrryg6y: resolution: {integrity: sha512-cfoql4qvtsVRqBMYxhlGNpvyy/KlCoPqjIsJSZYqYf9AplZncKjLBTcwBu6RXFMVCe30cIFljniI4OjqAU67pQ==} peerDependencies: '@types/react': '>= 16.8.0 < 19.0.0' @@ -339,7 +339,7 @@ packages: react-dom: '>= 16.8.0 < 19.0.0' dependencies: '@algolia/autocomplete-core': 1.7.1 - '@algolia/autocomplete-preset-algolia': 1.7.1_peqgqe7uij6smhko32m3outymy + '@algolia/autocomplete-preset-algolia': 1.7.1_bynjdelmk7kqfxl6rolmquprhm '@docsearch/css': 3.1.1 '@types/react': 18.0.15 algoliasearch: 4.13.1 @@ -368,7 +368,7 @@ packages: /@esbuild-kit/core-utils/2.1.0: resolution: {integrity: sha512-fZirrc2KjeTumVjE4bpleWOk2gD83b7WuGeQqOceKFQL+heNKKkNB5G5pekOUTLzfSBc0hP7hCSBoD9TuR0hLw==} dependencies: - esbuild: 0.14.50 + esbuild: 0.14.51 source-map-support: 0.5.21 dev: true @@ -1751,8 +1751,8 @@ packages: is-symbol: 1.0.4 dev: true - /esbuild-android-64/0.14.50: - resolution: {integrity: sha512-H7iUEm7gUJHzidsBlFPGF6FTExazcgXL/46xxLo6i6bMtPim6ZmXyTccS8yOMpy6HAC6dPZ/JCQqrkkin69n6Q==} + /esbuild-android-64/0.14.51: + resolution: {integrity: sha512-6FOuKTHnC86dtrKDmdSj2CkcKF8PnqkaIXqvgydqfJmqBazCPdw+relrMlhGjkvVdiiGV70rpdnyFmA65ekBCQ==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -1760,8 +1760,8 @@ packages: dev: true optional: true - /esbuild-android-arm64/0.14.50: - resolution: {integrity: sha512-NFaoqEwa+OYfoYVpQWDMdKII7wZZkAjtJFo1WdnBeCYlYikvUhTnf2aPwPu5qEAw/ie1NYK0yn3cafwP+kP+OQ==} + /esbuild-android-arm64/0.14.51: + resolution: {integrity: sha512-vBtp//5VVkZWmYYvHsqBRCMMi1MzKuMIn5XDScmnykMTu9+TD9v0NMEDqQxvtFToeYmojdo5UCV2vzMQWJcJ4A==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -1769,8 +1769,8 @@ packages: dev: true optional: true - /esbuild-darwin-64/0.14.50: - resolution: {integrity: sha512-gDQsCvGnZiJv9cfdO48QqxkRV8oKAXgR2CGp7TdIpccwFdJMHf8hyIJhMW/05b/HJjET/26Us27Jx91BFfEVSA==} + /esbuild-darwin-64/0.14.51: + resolution: {integrity: sha512-YFmXPIOvuagDcwCejMRtCDjgPfnDu+bNeh5FU2Ryi68ADDVlWEpbtpAbrtf/lvFTWPexbgyKgzppNgsmLPr8PA==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -1778,8 +1778,8 @@ packages: dev: true optional: true - /esbuild-darwin-arm64/0.14.50: - resolution: {integrity: sha512-36nNs5OjKIb/Q50Sgp8+rYW/PqirRiFN0NFc9hEvgPzNJxeJedktXwzfJSln4EcRFRh5Vz4IlqFRScp+aiBBzA==} + /esbuild-darwin-arm64/0.14.51: + resolution: {integrity: sha512-juYD0QnSKwAMfzwKdIF6YbueXzS6N7y4GXPDeDkApz/1RzlT42mvX9jgNmyOlWKN7YzQAYbcUEJmZJYQGdf2ow==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -1787,8 +1787,8 @@ packages: dev: true optional: true - /esbuild-freebsd-64/0.14.50: - resolution: {integrity: sha512-/1pHHCUem8e/R86/uR+4v5diI2CtBdiWKiqGuPa9b/0x3Nwdh5AOH7lj+8823C6uX1e0ufwkSLkS+aFZiBCWxA==} + /esbuild-freebsd-64/0.14.51: + resolution: {integrity: sha512-cLEI/aXjb6vo5O2Y8rvVSQ7smgLldwYY5xMxqh/dQGfWO+R1NJOFsiax3IS4Ng300SVp7Gz3czxT6d6qf2cw0g==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -1796,8 +1796,8 @@ packages: dev: true optional: true - /esbuild-freebsd-arm64/0.14.50: - resolution: {integrity: sha512-iKwUVMQztnPZe5pUYHdMkRc9aSpvoV1mkuHlCoPtxZA3V+Kg/ptpzkcSY+fKd0kuom+l6Rc93k0UPVkP7xoqrw==} + /esbuild-freebsd-arm64/0.14.51: + resolution: {integrity: sha512-TcWVw/rCL2F+jUgRkgLa3qltd5gzKjIMGhkVybkjk6PJadYInPtgtUBp1/hG+mxyigaT7ib+od1Xb84b+L+1Mg==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -1805,8 +1805,8 @@ packages: dev: true optional: true - /esbuild-linux-32/0.14.50: - resolution: {integrity: sha512-sWUwvf3uz7dFOpLzYuih+WQ7dRycrBWHCdoXJ4I4XdMxEHCECd8b7a9N9u7FzT6XR2gHPk9EzvchQUtiEMRwqw==} + /esbuild-linux-32/0.14.51: + resolution: {integrity: sha512-RFqpyC5ChyWrjx8Xj2K0EC1aN0A37H6OJfmUXIASEqJoHcntuV3j2Efr9RNmUhMfNE6yEj2VpYuDteZLGDMr0w==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -1814,8 +1814,8 @@ packages: dev: true optional: true - /esbuild-linux-64/0.14.50: - resolution: {integrity: sha512-u0PQxPhaeI629t4Y3EEcQ0wmWG+tC/LpP2K7yDFvwuPq0jSQ8SIN+ARNYfRjGW15O2we3XJvklbGV0wRuUCPig==} + /esbuild-linux-64/0.14.51: + resolution: {integrity: sha512-dxjhrqo5i7Rq6DXwz5v+MEHVs9VNFItJmHBe1CxROWNf4miOGoQhqSG8StStbDkQ1Mtobg6ng+4fwByOhoQoeA==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -1823,8 +1823,8 @@ packages: dev: true optional: true - /esbuild-linux-arm/0.14.50: - resolution: {integrity: sha512-VALZq13bhmFJYFE/mLEb+9A0w5vo8z+YDVOWeaf9vOTrSC31RohRIwtxXBnVJ7YKLYfEMzcgFYf+OFln3Y0cWg==} + /esbuild-linux-arm/0.14.51: + resolution: {integrity: sha512-LsJynDxYF6Neg7ZC7748yweCDD+N8ByCv22/7IAZglIEniEkqdF4HCaa49JNDLw1UQGlYuhOB8ZT/MmcSWzcWg==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -1832,8 +1832,8 @@ packages: dev: true optional: true - /esbuild-linux-arm64/0.14.50: - resolution: {integrity: sha512-ZyfoNgsTftD7Rp5S7La5auomKdNeB3Ck+kSKXC4pp96VnHyYGjHHXWIlcbH8i+efRn9brszo1/Thl1qn8RqmhQ==} + /esbuild-linux-arm64/0.14.51: + resolution: {integrity: sha512-D9rFxGutoqQX3xJPxqd6o+kvYKeIbM0ifW2y0bgKk5HPgQQOo2k9/2Vpto3ybGYaFPCE5qTGtqQta9PoP6ZEzw==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -1841,8 +1841,8 @@ packages: dev: true optional: true - /esbuild-linux-mips64le/0.14.50: - resolution: {integrity: sha512-ygo31Vxn/WrmjKCHkBoutOlFG5yM9J2UhzHb0oWD9O61dGg+Hzjz9hjf5cmM7FBhAzdpOdEWHIrVOg2YAi6rTw==} + /esbuild-linux-mips64le/0.14.51: + resolution: {integrity: sha512-vS54wQjy4IinLSlb5EIlLoln8buh1yDgliP4CuEHumrPk4PvvP4kTRIG4SzMXm6t19N0rIfT4bNdAxzJLg2k6A==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -1850,8 +1850,8 @@ packages: dev: true optional: true - /esbuild-linux-ppc64le/0.14.50: - resolution: {integrity: sha512-xWCKU5UaiTUT6Wz/O7GKP9KWdfbsb7vhfgQzRfX4ahh5NZV4ozZ4+SdzYG8WxetsLy84UzLX3Pi++xpVn1OkFQ==} + /esbuild-linux-ppc64le/0.14.51: + resolution: {integrity: sha512-xcdd62Y3VfGoyphNP/aIV9LP+RzFw5M5Z7ja+zdpQHHvokJM7d0rlDRMN+iSSwvUymQkqZO+G/xjb4/75du8BQ==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -1859,8 +1859,8 @@ packages: dev: true optional: true - /esbuild-linux-riscv64/0.14.50: - resolution: {integrity: sha512-0+dsneSEihZTopoO9B6Z6K4j3uI7EdxBP7YSF5rTwUgCID+wHD3vM1gGT0m+pjCW+NOacU9kH/WE9N686FHAJg==} + /esbuild-linux-riscv64/0.14.51: + resolution: {integrity: sha512-syXHGak9wkAnFz0gMmRBoy44JV0rp4kVCEA36P5MCeZcxFq8+fllBC2t6sKI23w3qd8Vwo9pTADCgjTSf3L3rA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -1868,8 +1868,8 @@ packages: dev: true optional: true - /esbuild-linux-s390x/0.14.50: - resolution: {integrity: sha512-tVjqcu8o0P9H4StwbIhL1sQYm5mWATlodKB6dpEZFkcyTI8kfIGWiWcrGmkNGH2i1kBUOsdlBafPxR3nzp3TDA==} + /esbuild-linux-s390x/0.14.51: + resolution: {integrity: sha512-kFAJY3dv+Wq8o28K/C7xkZk/X34rgTwhknSsElIqoEo8armCOjMJ6NsMxm48KaWY2h2RUYGtQmr+RGuUPKBhyw==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -1877,8 +1877,8 @@ packages: dev: true optional: true - /esbuild-netbsd-64/0.14.50: - resolution: {integrity: sha512-0R/glfqAQ2q6MHDf7YJw/TulibugjizBxyPvZIcorH0Mb7vSimdHy0XF5uCba5CKt+r4wjax1mvO9lZ4jiAhEg==} + /esbuild-netbsd-64/0.14.51: + resolution: {integrity: sha512-ZZBI7qrR1FevdPBVHz/1GSk1x5GDL/iy42Zy8+neEm/HA7ma+hH/bwPEjeHXKWUDvM36CZpSL/fn1/y9/Hb+1A==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -1886,8 +1886,8 @@ packages: dev: true optional: true - /esbuild-openbsd-64/0.14.50: - resolution: {integrity: sha512-7PAtmrR5mDOFubXIkuxYQ4bdNS6XCK8AIIHUiZxq1kL8cFIH5731jPcXQ4JNy/wbj1C9sZ8rzD8BIM80Tqk29w==} + /esbuild-openbsd-64/0.14.51: + resolution: {integrity: sha512-7R1/p39M+LSVQVgDVlcY1KKm6kFKjERSX1lipMG51NPcspJD1tmiZSmmBXoY5jhHIu6JL1QkFDTx94gMYK6vfA==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -1895,8 +1895,8 @@ packages: dev: true optional: true - /esbuild-sunos-64/0.14.50: - resolution: {integrity: sha512-gBxNY/wyptvD7PkHIYcq7se6SQEXcSC8Y7mE0FJB+CGgssEWf6vBPfTTZ2b6BWKnmaP6P6qb7s/KRIV5T2PxsQ==} + /esbuild-sunos-64/0.14.51: + resolution: {integrity: sha512-HoHaCswHxLEYN8eBTtyO0bFEWvA3Kdb++hSQ/lLG7TyKF69TeSG0RNoBRAs45x/oCeWaTDntEZlYwAfQlhEtJA==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -1904,8 +1904,8 @@ packages: dev: true optional: true - /esbuild-windows-32/0.14.50: - resolution: {integrity: sha512-MOOe6J9cqe/iW1qbIVYSAqzJFh0p2LBLhVUIWdMVnNUNjvg2/4QNX4oT4IzgDeldU+Bym9/Tn6+DxvUHJXL5Zw==} + /esbuild-windows-32/0.14.51: + resolution: {integrity: sha512-4rtwSAM35A07CBt1/X8RWieDj3ZUHQqUOaEo5ZBs69rt5WAFjP4aqCIobdqOy4FdhYw1yF8Z0xFBTyc9lgPtEg==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -1913,8 +1913,8 @@ packages: dev: true optional: true - /esbuild-windows-64/0.14.50: - resolution: {integrity: sha512-r/qE5Ex3w1jjGv/JlpPoWB365ldkppUlnizhMxJgojp907ZF1PgLTuW207kgzZcSCXyquL9qJkMsY+MRtaZ5yQ==} + /esbuild-windows-64/0.14.51: + resolution: {integrity: sha512-HoN/5HGRXJpWODprGCgKbdMvrC3A2gqvzewu2eECRw2sYxOUoh2TV1tS+G7bHNapPGI79woQJGV6pFH7GH7qnA==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -1922,8 +1922,8 @@ packages: dev: true optional: true - /esbuild-windows-arm64/0.14.50: - resolution: {integrity: sha512-EMS4lQnsIe12ZyAinOINx7eq2mjpDdhGZZWDwPZE/yUTN9cnc2Ze/xUTYIAyaJqrqQda3LnDpADKpvLvol6ENQ==} + /esbuild-windows-arm64/0.14.51: + resolution: {integrity: sha512-JQDqPjuOH7o+BsKMSddMfmVJXrnYZxXDHsoLHc0xgmAZkOOCflRmC43q31pk79F9xuyWY45jDBPolb5ZgGOf9g==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -1931,32 +1931,32 @@ packages: dev: true optional: true - /esbuild/0.14.50: - resolution: {integrity: sha512-SbC3k35Ih2IC6trhbMYW7hYeGdjPKf9atTKwBUHqMCYFZZ9z8zhuvfnZihsnJypl74FjiAKjBRqFkBkAd0rS/w==} + /esbuild/0.14.51: + resolution: {integrity: sha512-+CvnDitD7Q5sT7F+FM65sWkF8wJRf+j9fPcprxYV4j+ohmzVj2W7caUqH2s5kCaCJAfcAICjSlKhDCcvDpU7nw==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - esbuild-android-64: 0.14.50 - esbuild-android-arm64: 0.14.50 - esbuild-darwin-64: 0.14.50 - esbuild-darwin-arm64: 0.14.50 - esbuild-freebsd-64: 0.14.50 - esbuild-freebsd-arm64: 0.14.50 - esbuild-linux-32: 0.14.50 - esbuild-linux-64: 0.14.50 - esbuild-linux-arm: 0.14.50 - esbuild-linux-arm64: 0.14.50 - esbuild-linux-mips64le: 0.14.50 - esbuild-linux-ppc64le: 0.14.50 - esbuild-linux-riscv64: 0.14.50 - esbuild-linux-s390x: 0.14.50 - esbuild-netbsd-64: 0.14.50 - esbuild-openbsd-64: 0.14.50 - esbuild-sunos-64: 0.14.50 - esbuild-windows-32: 0.14.50 - esbuild-windows-64: 0.14.50 - esbuild-windows-arm64: 0.14.50 + esbuild-android-64: 0.14.51 + esbuild-android-arm64: 0.14.51 + esbuild-darwin-64: 0.14.51 + esbuild-darwin-arm64: 0.14.51 + esbuild-freebsd-64: 0.14.51 + esbuild-freebsd-arm64: 0.14.51 + esbuild-linux-32: 0.14.51 + esbuild-linux-64: 0.14.51 + esbuild-linux-arm: 0.14.51 + esbuild-linux-arm64: 0.14.51 + esbuild-linux-mips64le: 0.14.51 + esbuild-linux-ppc64le: 0.14.51 + esbuild-linux-riscv64: 0.14.51 + esbuild-linux-s390x: 0.14.51 + esbuild-netbsd-64: 0.14.51 + esbuild-openbsd-64: 0.14.51 + esbuild-sunos-64: 0.14.51 + esbuild-windows-32: 0.14.51 + esbuild-windows-64: 0.14.51 + esbuild-windows-arm64: 0.14.51 dev: true /escalade/3.1.1: @@ -4556,7 +4556,7 @@ packages: stylus: optional: true dependencies: - esbuild: 0.14.50 + esbuild: 0.14.51 postcss: 8.4.14 resolve: 1.22.1 rollup: 2.77.0 @@ -4583,7 +4583,7 @@ packages: terser: optional: true dependencies: - esbuild: 0.14.50 + esbuild: 0.14.51 postcss: 8.4.14 resolve: 1.22.1 rollup: 2.77.0 @@ -4591,13 +4591,13 @@ packages: fsevents: 2.3.2 dev: true - /vitepress/0.22.4_ju6wpa2hqqdrjfl4p3m6tanjem: + /vitepress/0.22.4_imvgwgjzmeisgkq5uchhrryg6y: resolution: {integrity: sha512-oZUnLO/SpYdThaBKefDeOiVlr0Rie4Ppx3FzMnMyLtJnI5GlBMNjqYqMy/4+umm/iC+ZDJfI+IlDKxv5fZnYzA==} engines: {node: '>=14.0.0'} hasBin: true dependencies: '@docsearch/css': 3.1.1 - '@docsearch/js': 3.1.1_ju6wpa2hqqdrjfl4p3m6tanjem + '@docsearch/js': 3.1.1_imvgwgjzmeisgkq5uchhrryg6y '@vitejs/plugin-vue': 2.3.3_vite@2.9.14+vue@3.2.37 prismjs: 1.28.0 vite: 2.9.14 diff --git a/src/locales/de/word/adjective.ts b/src/locales/de/word/adjective.ts index 85001a924df..75662b030c8 100644 --- a/src/locales/de/word/adjective.ts +++ b/src/locales/de/word/adjective.ts @@ -1,193 +1,1136 @@ +// source: https://buchkodex.de/blog/adjektive/ export default [ + 'abenteuerlustig', 'absolut', + 'achtsam', + 'achtungswert', + 'adrett', + 'agil', + 'akkurat', + 'akribisch', + 'aktiv', 'aktuell', + 'allerbest', + 'allerliebst', 'alt', 'alternativ', - 'ängstlich', - 'ärgerlich', + 'ambitioniert', + 'amüsant', + 'andersartig', + 'andächtig', + 'anerkannt', + 'angenehm', + 'animierend', + 'anmutig', + 'ansprechend', + 'anspruchsvoll', + 'anständig', + 'anziehend', + 'apart', + 'aphrodisierend', + 'arbeitsam', + 'arbeitswütig', + 'arkadisch', 'arm', + 'atemberaubend', + 'athletisch', + 'attraktiv', + 'aufbauend', + 'auffallend', + 'auffällig', + 'aufmerksam', + 'aufmunternd', + 'aufrecht', + 'aufreizend', + 'aufrichtig', + 'aufsehenerregend', + 'ausdrucksstark', + 'auserlesen', + 'auserwählt', + 'ausgefallen', + 'ausgeflippt', + 'ausgeglichen', + 'ausgelassen', + 'ausgereift', + 'ausgesucht', + 'ausgewählt', + 'ausgezeichnet', + 'ausnahmslos', + 'ausschlaggebend', + 'auszeichnungswürdig', + 'autark', + 'authentisch', 'automatisch', - 'bärenstark', - 'begabt', + 'autonom', + 'außergewöhnlich', + 'außerordentlich', + 'avantgardistisch', + 'bahnbrechend', + 'barmherzig', + 'beachtenswert', + 'beachtlich', + 'beachtsam', + 'bedacht', + 'bedenkenlos', + 'bedeutend', + 'bedeutsam', 'bedrohlich', + 'beeindruckend', + 'beeinflussend', + 'beflügelnd', + 'befreiend', + 'begabt', + 'begehrenswert', + 'begehrt', + 'begeisternd', + 'begeistert', + 'begeisterungsfähig', + 'begierig', + 'beglückend', + 'begnügsam', + 'beharrlich', + 'beherrscht', + 'beherzt', + 'behutsam', + 'behänd', + 'beispielgebend', + 'beispielhaft', + 'beispiellos', + 'bekannt', + 'bekräftigend', + 'belastbar', + 'belebend', + 'belebt', + 'beliebt', + 'bemerkenswert', + 'bemüht', + 'bequem', + 'berauschend', + 'berechenbar', + 'berufen', + 'beruhigt', + 'berückend', + 'berühmt', + 'bescheiden', + 'beschwingt', + 'beseelt', + 'besonders', + 'besonnen', + 'bestechend', + 'bestimmt', + 'bestmöglich', + 'beständig', + 'betriebsam', + 'bevorzugt', + 'beweglich', + 'bewundernswert', + 'bewunderungswürdig', + 'bewusst', + 'bewährt', + 'bezaubernd', + 'bildhübsch', + 'bildlich', + 'bildschön', 'billig', 'blass', 'blind', + 'bodenständig', + 'bombig', + 'brandaktuell', + 'brandneu', 'breit', + 'brillant', + 'brüderlich', 'bunt', + 'bärenstark', 'chancenlos', 'chaotisch', 'charakterstark', + 'charismatisch', 'charmant', 'chronologisch', 'clever', 'cool', + 'couragiert', 'dankbar', 'darstellbar', 'deckend', 'defensiv', + 'delikat', + 'deliziös', + 'detailliert', + 'deutlich', + 'dezent', + 'dezidiert', + 'diplomatisch', + 'direkt', + 'diszipliniert', + 'divenhaft', + 'dogmatisch', + 'dominant', + 'dringend', + 'duftend', 'dumm', + 'durchblickend', + 'durchdacht', + 'durchschlagend', + 'durchsetzungsstark', + 'durchtrieben', + 'dynamisch', 'dünn', - 'dringend', + 'echt', 'eckig', + 'edel', + 'edelmütig', + 'effektiv', + 'effektvoll', + 'effizient', 'egoistisch', + 'ehrenhaft', + 'ehrfürchtig', 'ehrgeizig', + 'ehrlich', + 'ehrwürdig', + 'eifrig', + 'eigen', + 'eigenartig', + 'eigenbestimmt', + 'eigensinnig', + 'eigenständig', + 'eigenwillig', + 'eindeutig', + 'eindrucksvoll', 'einfach', + 'einfallsreich', + 'einfühlsam', + 'einladend', 'einmalig', + 'einnehmend', + 'einsatzbereit', + 'einsichtig', + 'einträglich', + 'einwandfrei', 'einzig', + 'einzigartig', + 'eitel', + 'eklatant', + 'ekstatisch', + 'elanvoll', + 'elegant', + 'elementar', + 'elitär', + 'eloquent', + 'elysisch', + 'emotional', + 'empathisch', + 'empfehlenswert', + 'empfindlich', + 'empfindsam', + 'empfindungsvoll', + 'emsig', + 'energiegeladen', + 'energievoll', + 'energisch', + 'engagiert', + 'engelsgleich', + 'enigmatisch', + 'enorm', + 'entdeckungsfreudig', + 'entgegenkommend', + 'enthusiastisch', + 'entscheidungsfreudig', + 'entschlossen', + 'entschlussfreudig', + 'entspannt', + 'entzückend', + 'epochemachend', + 'erbaulich', + 'erfahren', + 'erfinderisch', + 'erfolgreich', + 'erfolgsorientiert', + 'erfolgssicher', + 'erfreulich', + 'erfrischend', + 'ergebnisorientiert', + 'ergebnisreich', + 'ergiebig', + 'erhaben', + 'erhebend', + 'erhellend', + 'erlebnisreich', + 'erlesen', + 'ernst', + 'ernsthaft', + 'erotisch', + 'erprobt', + 'erregend', + 'erstaunlich', + 'erstklassig', + 'erstmalig', + 'erstrangig', + 'erstrebenswert', + 'erträglich', + 'erwünscht', 'essbar', + 'etabliert', + 'euphorisch', + 'exakt', + 'exemplarisch', + 'exklusiv', + 'experimentierfreudig', + 'explosiv', + 'exquisit', + 'extravagant', + 'extravertiert', + 'exzellent', + 'exzentrisch', + 'exzessiv', + 'fabelhaft', + 'facettenreich', + 'fachgerecht', + 'fachkundig', + 'fair', + 'faktenreich', 'falsch', + 'familiär', + 'famosfacettenreich', + 'fantasiereich', + 'fantasievoll', 'fantastisch', + 'farbenfroh', + 'faszinierend', 'faul', + 'fehlerfrei', + 'feierlich', 'fein', + 'feinfühlig', + 'feinsinnig', + 'fertig', + 'fesch', + 'fesselnd', 'fest', + 'festlich', 'fett', - 'fertig', 'feucht', + 'feurig', + 'fidel', + 'fit', 'fleißig', + 'flexibel', + 'flink', + 'flott', + 'fokussiert', + 'formidabel', + 'forsch', + 'fortschrittlich', + 'frech', + 'frei', + 'freidenkend', + 'freigiebig', + 'freiheitsliebend', + 'freimütig', + 'freizügig', + 'fresh', + 'freudig', + 'freudvoll', + 'freundlich', + 'friedfertig', 'friedlich', + 'friedselig', + 'friedvoll', + 'frisch', + 'froh', + 'frohsinnig', + 'fruchtbar', + 'fruchtsam', + 'fröhlich', + 'fulminant', + 'fundamental', + 'fundiert', + 'funkelnd', + 'furchtlos', + 'furios', + 'führend', + 'fürsorglich', + 'galant', + 'garantiert', + 'gastfreundlich', + 'geachtet', + 'gebildet', + 'geborgen', + 'gediegen', + 'geduldig', + 'geehrt', 'geeignet', + 'geerdet', + 'gefeiert', + 'gefühlsbetont', + 'gefühlvoll', + 'geheimnisvoll', + 'gehoben', + 'geistreich', + 'gelassen', + 'gelungen', + 'gemütlich', + 'gemütvoll', 'genau', + 'generös', + 'genial', + 'genießbar', + 'genießerisch', + 'genügsam', + 'genüsslich', + 'gepflegt', + 'geradlinig', + 'gerecht', 'gern', + 'geschickt', + 'geschmeidig', + 'geschäftig', + 'geschätzt', + 'gesellig', + 'gesetzt', + 'gesichert', + 'gespannt', + 'gesprächig', + 'gestanden', + 'getrost', + 'gewaltig', + 'gewichtig', + 'gewieft', + 'gewinnend', + 'gewissenhaft', + 'gewitzt', + 'gewünscht', + 'geübt', + 'gigantisch', + 'glamourös', 'glatt', + 'glaubensstark', + 'glaubwürdig', + 'glorreich', + 'glänzend', 'glücklich', + 'gnädig', + 'grandios', + 'gravierend', + 'grazil', + 'grenzenlos', 'grob', 'groß', - 'günstig', + 'großartig', + 'großherzig', + 'großmütig', + 'großzügig', + 'grundlegend', + 'grundsolide', + 'grundsätzlich', + 'gründlich', 'gut', + 'gutherzig', + 'gutmütig', + 'gönnerhaft', + 'günstig', + 'gütig', 'halb', + 'harmonisch', 'hart', + 'hartnäckig', + 'heilsam', 'heimlich', + 'heiter', 'heiß', + 'heißblütig', 'hektisch', + 'heldenhaft', + 'heldenmütig', 'hell', + 'hellhörig', + 'hemmungslos', + 'herausfordernd', + 'herausragend', + 'heroisch', + 'herrlich', + 'hervorhebend', + 'hervorragend', + 'hervorstechend', + 'herzensgut', + 'herzerfrischend', + 'herzlich', + 'hilfreich', + 'hilfsbereit', + 'himmlisch', + 'hingebungsvoll', + 'hinreißend', + 'hintergründig', + 'hochanständig', + 'hochehrenhaft', + 'hochgeschätzt', + 'hochgradig', + 'hochinteressant', + 'hochkarätig', + 'hochmodern', + 'hochmotiviert', + 'hochmütig', + 'hochrangig', + 'hochwertig', + 'hochwirksam', 'hoffnungsvoll', + 'humorvoll', + 'höflich', + 'hübsch', + 'hüllenlos', 'ideal', + 'idealistisch', + 'ideenreich', 'identisch', + 'idyllisch', 'ignorant', 'illegal', + 'imagefördernd', 'imaginär', + 'imponierend', + 'imposant', 'individuell', + 'influent', + 'informativ', + 'inhaltsreich', + 'initial', + 'initiativ', + 'innovativ', + 'inspirierend', + 'instinktiv', + 'integer', 'integriert', + 'intellektuell', + 'intelligent', + 'intensiv', + 'interessiert', 'international', + 'intuitiv', + 'irre', 'jahrelang', - 'jährlich', + 'jovial', 'jugendlich', 'jung', + 'jährlich', 'kalt', 'kantig', + 'keck', + 'kennerisch', + 'kenntnisreich', + 'klar', + 'klasse', 'klein', 'klug', - 'kurz', + 'knallig', + 'knuffig', + 'kokett', + 'kollegial', + 'kolossal', + 'komfortabel', + 'kommunikationsfähig', + 'kommunikativ', + 'kompetent', + 'kompetitiv', + 'kompromissbereit', + 'konkret', + 'konkurrenzlos', + 'konsequent', + 'konsistent', + 'konstant', + 'konstitutiv', + 'konstruktiv', + 'kontrolliert', + 'konventionell', + 'konzentriert', + 'konziliant', + 'kooperativ', + 'kordial', + 'korrekt', + 'kostbar', + 'kraftvoll', 'krank', + 'kreativ', + 'krisenfest', 'krumm', + 'kräftig', + 'kulant', + 'kultiviert', + 'kundig', + 'kunstvoll', + 'kurios', + 'kurz', + 'kämpferisch', + 'königlich', + 'köstlich', + 'kühn', + 'künstlerisch', 'künstlich', 'lahm', - 'ländlich', 'lang', 'laut', + 'lebendig', + 'lebensbejahend', + 'lebensfroh', + 'lebenslustig', + 'lebensnah', + 'lebhaft', + 'leger', + 'lehrreich', 'leicht', + 'leichtfüssig', + 'leidenschaftlich', + 'leistungsbereit', + 'leistungsfähig', + 'leistungsorientiert', + 'leistungsstark', + 'lernbereit', + 'leuchtend', + 'leutselig', + 'liberal', 'lieb', + 'liebenswert', + 'liebenswürdig', + 'liebevoll', + 'liebreizend', + 'lobenswert', + 'locker', 'lockig', + 'logisch', + 'lohnenswert', + 'loyal', + 'lukrativ', + 'lustig', + 'lustvoll', + 'luxuriös', + 'ländlich', + 'lässig', 'löslich', - 'mächtig', + 'lösungsorientiert', + 'lüstern', + 'magisch', + 'majestätisch', + 'makellos', 'malerisch', - 'meisterlich', + 'markant', + 'marktgerecht', + 'massiv', + 'maximal', + 'maßgeblich', + 'maßgeschneidert', 'mehrsprachig', + 'meinungsstark', + 'meisterhaft', + 'meisterlich', + 'menschlich', + 'methodisch', + 'mild', + 'mitfühlend', + 'mitreißend', + 'mobil', + 'modebewusst', + 'modern', + 'modisch', 'monatlich', + 'mondän', + 'monströs', + 'monumental', + 'motiviert', + 'munter', 'musikalisch', + 'mustergültig', + 'musterhaft', 'mutig', + 'mysteriös', + 'mystisch', + 'mächtig', + 'märchenhaft', + 'mühelos', + 'nachdrücklich', + 'nachhaltig', + 'nachweislich', 'nah', + 'narrensicher', 'nass', + 'natürlich', 'negativ', + 'nett', 'neu', 'neugierig', + 'niedlich', 'niedrig', - 'nördlich', + 'niveauvoll', + 'nobel', 'normal', + 'notorisch', + 'nuanciert', + 'nutzbringend', + 'nördlich', + 'nüchtern', + 'nützlich', 'oberflächlich', + 'objektiv', + 'obligatorisch', 'offen', + 'offenherzig', 'offensichtlich', - 'öffentlich', + 'offensiv', 'okay', + 'olympisch', 'optimal', + 'optimistisch', 'ordentlich', - 'örtlich', + 'organisiert', + 'originell', + 'packend', 'panisch', + 'paradiesisch', 'parallel', + 'partnerschaftlich', + 'passioniert', 'passiv', 'peinlich', + 'penibel', + 'perfekt', 'persönlich', + 'pfiffig', + 'pflichtbewusst', + 'phantasievoll', + 'phantastisch', 'physikalisch', + 'phänomenal', + 'pietätvoll', + 'pikant', + 'pittoresk', + 'plausibel', + 'poetisch', 'politisch', + 'pompös', + 'populär', + 'positiv', + 'potent', + 'prachtvoll', + 'pragmatisch', + 'praktikabel', 'praktisch', + 'prall', + 'prestigefördernd', + 'prestigeträchtig', + 'prestigevoll', + 'prinzipientreu', + 'proaktiv', + 'probat', + 'problemlos', + 'produktiv', + 'professionell', + 'profiliert', + 'profitabel', + 'progressiv', + 'prominent', + 'prophetisch', + 'protektiv', + 'prunkvoll', + 'prächtig', + 'prägnant', + 'präzise', + 'putzig', + 'pünktlich', 'quadratisch', + 'qualifiziert', 'qualitativ', + 'qualitätsvoll', 'qualvoll', 'quer', + 'querdenkend', + 'quicklebendig', + 'quirlig', + 'raffiniert', + 'rasant', + 'rational', 'ratlos', - 'rätselhaft', 'rauchfrei', + 'raumfüllend', + 'real', + 'realistisch', + 'rechtschaffend', + 'redselig', + 'reell', + 'reflektiert', + 'rege', 'regnerisch', + 'regsam', 'reich', + 'reif', + 'rein', + 'reizend', + 'reizvoll', + 'rekordverdächtig', 'relativ', + 'relevant', + 'renommiert', + 'rentabel', + 'resilient', + 'resistent', + 'resolut', + 'respektabel', + 'respektiert', + 'respektvoll', + 'revolutionär', 'richtig', + 'richtungsgebend', + 'richtungsweisend', + 'riesig', + 'rigoros', + 'risikobereit', + 'riskant', + 'ritterlich', + 'robust', + 'romantisch', + 'rotzig', + 'routiniert', + 'ruhevoll', + 'ruhig', + 'rätselhaft', + 'rücksichtsvoll', + 'sachgemäß', + 'sachgerecht', + 'sachkundig', 'sachlich', + 'sachverständig', + 'sagenhaft', 'salzig', + 'sanft', + 'sanftmütig', + 'sanguinisch', + 'sauber', 'scharf', 'schattig', + 'schillernd', + 'schlagfertig', + 'schlau', 'schnell', + 'schwungvoll', 'schön', + 'schöpferisch', + 'selbstbestimmt', + 'selbstbewusst', + 'selbstlos', + 'selbstsicher', + 'selbstständig', + 'selbständig', + 'selten', + 'sensationell', + 'sensibel', + 'sensitiv', + 'seriös', + 'sexuell', + 'sexy', 'sicher', + 'sicherheitsorientiert', + 'siegreich', + 'signifikant', + 'simpel', + 'sinnlich', + 'skandalös', + 'smart', + 'solidarisch', + 'solide', + 'sonnig', + 'sorgenfrei', + 'sorgfältig', + 'sorgsam', + 'souverän', + 'sozial', + 'sozialverträglich', + 'spannend', + 'sparsam', + 'spaßig', + 'spektakulär', + 'speziell', + 'spielerisch', 'spitz', + 'spitze', + 'spontan', + 'sportlich', + 'sprachlos', + 'spritzig', + 'spürbar', + 'stabil', + 'standhaft', 'stark', + 'stattlich', 'steil', + 'stichfest', + 'stilbewusst', 'still', + 'stilsicher', + 'stilvoll', + 'stimmig', + 'stimmungsvoll', + 'stoisch', + 'stolz', + 'strahlend', + 'strategisch', + 'strebsam', + 'streng', + 'strikt', + 'strukturiert', 'stumm', - 'süß', + 'stürmisch', + 'substanziell', + 'substanzreich', 'sympathisch', + 'sündig', + 'süß', + 'tadellos', + 'taff', + 'taktvoll', + 'talentiert', + 'tapfer', + 'tatkräftig', 'taub', + 'tauglich', 'teamfähig', 'teilbar', + 'temperamentvoll', + 'teuer', 'theoretisch', + 'tief', + 'tiefgründig', + 'tolerant', + 'tonangebend', 'tot', + 'tough', 'traditionell', + 'transparent', + 'transzendent', + 'traumhaft', 'traurig', + 'treffend', + 'treffsicher', + 'treu', + 'treuherzig', 'trocken', + 'träumerisch', + 'tugendhaft', 'typisch', + 'tüchtig', + 'ultimativ', + 'umfassend', + 'umgänglich', + 'umjubelt', 'umkehrbar', + 'umschwärmt', + 'umsichtig', 'umständlich', + 'umtriebig', + 'umwerfend', + 'unabhängig', + 'unangreifbar', + 'unantastbar', + 'unaufhaltsam', 'unbedeutend', + 'unbeeinflussbar', + 'unbefangen', + 'unbeirrbar', + 'unbekümmert', + 'unbeschreiblich', + 'unbeschwert', + 'unbesehen', + 'unbesorgt', + 'unbestechlich', + 'unbestritten', + 'unbezahlbar', + 'unbändig', 'undurchsichtig', + 'uneigennützig', + 'unerbittlich', + 'unerreichbar', + 'unerschöpflich', + 'unersetzlich', + 'unfassbar', 'ungenau', + 'ungewöhnlich', + 'ungezwungen', 'unglaublich', + 'unkompliziert', + 'unkonventionell', + 'unnachahmlich', + 'unnachgiebig', + 'unproblematisch', + 'unschlagbar', + 'unsterblich', + 'unterhaltsam', + 'unternehmungsfreudig', + 'unternehmungslustig', + 'unterstützend', + 'unverfälscht', + 'unvergesslich', + 'unvergleichbar', + 'unverkennbar', + 'unverletzbar', + 'unverwechselbar', + 'unverwundbar', + 'unverzichtbar', + 'unvoreingenommen', + 'unvorstellbar', + 'unwiderstehlich', + 'unübersehbar', + 'unübertroffen', 'uralt', + 'verantwortungsbewusst', 'verantwortungslos', - 'veränderbar', + 'verantwortungsvoll', + 'verbindend', + 'verbindlich', + 'verblüffend', + 'verbogen', 'verbrannt', + 'verbreitet', + 'verbrieft', + 'verbürgt', + 'verdient', + 'verehrt', + 'verführerisch', + 'vergebend', 'verkehrt', + 'verklärt', + 'verlockend', + 'verlässlich', + 'vermittelnd', + 'vernetzend', + 'vernünftig', 'versichert', - 'verbogen', + 'versiert', + 'verspielt', + 'verständnisvoll', + 'versöhnlich', + 'vertrauensvoll', + 'vertrauenswürdig', + 'verträglich', + 'verträumt', + 'verwegen', + 'verwundert', + 'verwöhnt', + 'veränderbar', + 'vielfältig', + 'vielschichtig', + 'vielseitig', + 'visionär', + 'vital', 'voll', + 'vollkommen', 'vollständig', + 'vorausschauend', + 'vorbehaltlos', + 'vorbildhaft', + 'vorbildlich', + 'vornehm', + 'vorsorglich', + 'vorteilhaft', + 'vortrefflich', + 'vorurteilsfrei', + 'vorwitzig', + 'vorzeigenswert', + 'vorzüglich', 'wach', + 'wachsam', + 'wagemutig', + 'wahrhaftig', + 'wahrheitsliebend', + 'wandelbar', 'warm', + 'warmherzig', 'weich', + 'weise', 'weit', + 'weitblickend', + 'weitsichtig', + 'weltbekannt', + 'weltgewandt', + 'weltoffen', + 'wendig', + 'wertschätzend', 'wertvoll', + 'wesentlich', 'wichtig', + 'widerstandsfähig', + 'wieselflink', 'wild', + 'willensstark', + 'willkommen', + 'wirksam', + 'wissbegierig', + 'wissenschaftlich', + 'wissenshungrig', + 'witzig', + 'wohlerzogen', + 'wohlgesinnt', + 'wohlklingend', + 'wohlriechend', + 'wohlschmeckend', + 'wohltuend', + 'wohlverdient', + 'wohlwollend', + 'wohlüberlegt', + 'wortgewandt', 'wunderbar', + 'wunderhübsch', + 'wunderlich', + 'wunderschön', + 'wundervoll', + 'wählerisch', + 'wünschenswert', + 'würdevoll', 'x-beliebig', 'x-fach', 'x-förmig', + 'xenophil', 'y-förmig', 'zahnlos', + 'zart', + 'zartbesaitet', + 'zartfühlend', + 'zauberhaft', 'zeitlich', + 'zeitlos', 'zentral', 'zerbrechlich', + 'zielbewusst', + 'zielführend', + 'zielgerichtet', + 'zielorientiert', + 'zielsicher', + 'zielstrebig', 'zornig', + 'zugeneigt', + 'zukunftsorientiert', + 'zupackend', + 'zurechnungsfähig', 'zurückhaltend', 'zusammenhängend', + 'zuständig', + 'zuverlässig', + 'zuversichtlich', + 'zuvorkommend', 'zweifach', + 'zäh', + 'zärtlich', + 'zündend', + 'ängstlich', + 'ärgerlich', + 'öffentlich', + 'örtlich', + 'überdurchschnittlich', + 'übergenau', + 'überlegen', + 'überlegt', + 'überragend', + 'überraschend', + 'übersichtlich', + 'übersinnlich', + 'überwältigend', + 'überzeugend', ]; diff --git a/src/locales/de/word/adverb.ts b/src/locales/de/word/adverb.ts new file mode 100644 index 00000000000..0c7b3cf3257 --- /dev/null +++ b/src/locales/de/word/adverb.ts @@ -0,0 +1,1031 @@ +// source https://de.wiktionary.org/wiki/Verzeichnis:Deutsch/Adverbien +export default [ + 'abends', + 'aber', + 'abermals', + 'abhanden', + 'abher', + 'abhin', + 'abseits', + 'absonderlicherweise', + 'absurderweise', + 'achtens', + 'achteraus', + 'achtern', + 'achtmal', + 'allda', + 'alldieweil', + 'alle', + 'allein', + 'allemal', + 'allenfalls', + 'allenthalben', + 'allerdings', + 'allerhöchstens', + 'allerorten', + 'allerseits', + 'allerspätestens', + 'alleweg', + 'alleweil', + 'allgemach', + 'allig', + 'allseits', + 'allzeit', + 'allzu', + 'alsbald', + 'alsdann', + 'also', + 'alters', + 'altershalber', + 'amtshalber', + 'an', + 'anbei', + 'andante', + 'andantino', + 'anderenfalls', + 'anderenorts', + 'anderentags', + 'andererseits', + 'andernfalls', + 'andernorts', + 'anderntags', + 'anders', + 'anderswo', + 'anderweit', + 'andrerseits', + 'aneinander', + 'anfangs', + 'angst', + 'anhand', + 'anjetzt', + 'anno', + 'ansatzweise', + 'anscheinend', + 'ansonsten', + 'anstandshalber', + 'anständigerweise', + 'anstandslos', + 'anwesend', + 'apropos', + 'arschling', + 'auch', + 'auf', + 'aufhin', + 'aufi', + 'aufwärts', + 'aus', + 'auseinander', + 'ausgangs', + 'ausgerechnet', + 'aushilfsweise', + 'ausnahmsweise', + 'ausschließlich', + 'außen', + 'außenvor', + 'außerdem', + 'außerhalb', + 'außerorts', + 'außerstande', + 'auswärts', + 'auswendig', + 'backbord', + 'bald', + 'bannig', + 'bäuchlings', + 'bauchoben', + 'bedauerlicherweise', + 'beflissentlich', + 'befremdlicherweise', + 'behelfsweise', + 'beiderseits', + 'beidseits', + 'beieinander', + 'beinahe', + 'beisammen', + 'beiseite', + 'beispielhalber', + 'beispielsweise', + 'beizeiten', + 'beizu', + 'bekanntermaßen', + 'bekannterweise', + 'bekanntlich', + 'bemerkenswerterweise', + 'bequemlichkeitshalber', + 'bereits', + 'bergab', + 'bergan', + 'bergauf', + 'berufshalber', + 'besonders', + 'bestenfalls', + 'bestens', + 'bestimmt', + 'betreffend', + 'bezeichnenderweise', + 'billigermaßen', + 'billigerweise', + 'bisher', + 'bislang', + 'bisschen', + 'bisweilen', + 'bitte', + 'blindlings', + 'bloß', + 'blödsinnigerweise', + 'brockenweise', + 'circa', + 'crescendo', + 'da', + 'dabei', + 'dadrauf', + 'dadurch', + 'dafür', + 'dagegen', + 'dahannen', + 'dahaußen', + 'daheim', + 'daher', + 'dahin', + 'dahinnen', + 'dahinten', + 'dahüben', + 'dahunten', + 'dalli', + 'damals', + 'damit', + 'danach', + 'daneben', + 'dankenswerterweise', + 'dann', + 'daran', + 'darauf', + 'daraufhin', + 'daraus', + 'darein', + 'darin', + 'darob', + 'darüber', + 'darum', + 'darunter', + 'daselbst', + 'dato', + 'dauernd', + 'dauß', + 'daußen', + 'davon', + 'davor', + 'dazu', + 'dazumal', + 'dazwischen', + 'deinerseits', + 'deinetwillen', + 'dementgegen', + 'dementsprechend', + 'demnach', + 'demnächst', + 'demzufolge', + 'denn', + 'dennoch', + 'derart', + 'dereinst', + 'dermaßen', + 'derohalben', + 'derowegen', + 'derweil', + 'deshalb', + 'dessentwillen', + 'deswegen', + 'detto', + 'deutlichkeitshalber', + 'dichtauf', + 'dienstags', + 'dieserart', + 'diesmal', + 'dieweil', + 'diktando', + 'diminuendo', + 'direttissimo', + 'dito', + 'doch', + 'donnerstags', + 'dort', + 'dorther', + 'dorthin', + 'dorthinan', + 'dortmals', + 'dortzulande', + 'dran', + 'drauf', + 'draußen', + 'drin', + 'drinnen', + 'droben', + 'drüben', + 'drüber', + 'drum', + 'drumherum', + 'drunten', + 'dummerweise', + 'durch', + 'durchaus', + 'durcheinander', + 'durchweg', + 'dutzendmal', + 'eben', + 'ebenda', + 'ebendaher', + 'ebendaselbst', + 'ebendort', + 'ebenfalls', + 'ebenso', + 'egal', + 'eh', + 'ehedem', + 'ehemals', + 'eher', + 'ehnder', + 'ehrenhalber', + 'ehrlicherweise', + 'eigenartigerweise', + 'eigens', + 'eigentlich', + 'eigentümlicherweise', + 'eilends', + 'eimerweise', + 'einerseits', + 'einfacherweise', + 'einfachheitshalber', + 'eingangs', + 'einigermaßen', + 'einmal', + 'eins', + 'einst', + 'einstens', + 'einstmals', + 'einstweilen', + 'elbabwärts', + 'elbaufwärts', + 'empor', + 'endlich', + 'entgegen', + 'erforderlichenfalls', + 'erfreulicherweise', + 'ergo', + 'erprobungshalber', + 'erst', + 'erstaunlicherweise', + 'erstens', + 'erstmal', + 'erstmals', + 'erwartungsgemäß', + 'esslöffelweise', + 'etwa', + 'etwas', + 'euertwillen', + 'eurerseits', + 'euretwillen', + 'eventualiter', + 'extra', + 'fairerweise', + 'faktisch', + 'fast', + 'faszinierenderweise', + 'ferienhalber', + 'fernab', + 'ferner', + 'flugs', + 'flussabwärts', + 'flussaufwärts', + 'folgendermaßen', + 'folglich', + 'fort', + 'fortan', + 'forthin', + 'franco', + 'franko', + 'freiheraus', + 'freilich', + 'freitags', + 'freundlicherweise', + 'früher', + 'frühestens', + 'frühmorgens', + 'fürderhin', + 'fürwahr', + 'gänzlich', + 'ganztags', + 'gar', + 'gebietsweise', + 'gech', + 'gefälligkeitshalber', + 'gefälligst', + 'gegebenenfalls', + 'gegenüber', + 'geheimnisvollerweise', + 'gemach', + 'gemeinhin', + 'gemeiniglich', + 'gen', + 'genau', + 'genauestens', + 'genauso', + 'genug', + 'gerade', + 'geradeaus', + 'geradeheraus', + 'geradeso', + 'geradewegs', + 'geradezu', + 'gerechterweise', + 'gern', + 'gerne', + 'geschäftehalber', + 'gestern', + 'gesundheitshalber', + 'gewissermaßen', + 'gewöhnlicherweise', + 'gleich', + 'gleichauf', + 'gleichentags', + 'gleichermaßen', + 'gleichfalls', + 'gleichsam', + 'gleichviel', + 'gleichwohl', + 'glücklicherweise', + 'grad', + 'gradweise', + 'gratis', + 'großenteils', + 'großteils', + 'größtenteils', + 'gruppenweise', + 'grüppchenweise', + 'gutenteils', + 'gültigkeitshalber', + 'günstigenfalls', + 'halb', + 'halbe-halbe', + 'halbleer', + 'halbmast', + 'halbtags', + 'halbvoll', + 'halbwegs', + 'halt', + 'hannen', + 'haufenweise', + 'hauß', + 'haußen', + 'häppchenweise', + 'hehlings', + 'heim', + 'heimwärts', + 'heint', + 'hellauf', + 'her', + 'herab', + 'heran', + 'herauf', + 'heraus', + 'herbei', + 'herein', + 'hergebrachterweise', + 'herinnen', + 'hernach', + 'heroben', + 'herüber', + 'herum', + 'herunten', + 'herunter', + 'hervor', + 'herzu', + 'heuer', + 'heute', + 'heutigentags', + 'heutzutage', + 'hi', + 'hie', + 'hiedurch', + 'hiefür', + 'hienieden', + 'hier', + 'hieran', + 'hierauf', + 'hierbei', + 'hierdurch', + 'hierfür', + 'hierher', + 'hierhin', + 'hiermit', + 'hierunter', + 'hierzu', + 'hierzuland', + 'hierzulande', + 'hiezu', + 'himmelan', + 'himmelwärts', + 'hin', + 'hinab', + 'hinauf', + 'hinaus', + 'hindurch', + 'hinein', + 'hinfort', + 'hinnen', + 'hinten', + 'hintenach', + 'hintereinander', + 'hintereinanderweg', + 'hinterher', + 'hinterhin', + 'hinterrücks', + 'hinüber', + 'hinum', + 'hinunter', + 'hinweg', + 'hinzu', + 'hoben', + 'hoch', + 'hochkant', + 'höchst', + 'höchstens', + 'höchstwahrscheinlich', + 'hoffentlich', + 'holterdiepolter', + 'holterdipolter', + 'hopplahopp', + 'höflichkeitshalber', + 'hüben', + 'hujus', + 'hunten', + 'idealerweise', + 'idealiter', + 'ihrerseits', + 'ihretwegen', + 'immer', + 'immerdar', + 'immerhin', + 'immerzu', + 'imstande', + 'indem', + 'indes', + 'infolgedessen', + 'infrage', + 'inkognito', + 'innen', + 'innerorts', + 'insbesondere', + 'insgeheim', + 'insgesamt', + 'insofern', + 'instand', + 'interessanterweise', + 'interessehalber', + 'intus', + 'inwiefern', + 'inzwischen', + 'irgend', + 'irgendwann', + 'irgendwie', + 'irgendwo', + 'ironischerweise', + 'irrigerweise', + 'item', + 'itzo', + 'itzund', + 'ja', + 'jählings', + 'jawohl', + 'je', + 'jedenfalls', + 'jederzeit', + 'jedesmal', + 'jedoch', + 'jeher', + 'jemals', + 'jenseits', + 'jetzt', + 'jeweils', + 'jüngst', + 'just', + 'justament', + 'jüngstens', + 'jüngsthin', + 'kannenweise', + 'kapitelweise', + 'kaum', + 'keinesfalls', + 'keineswegs', + 'keinmal', + 'kistenweise', + 'klassischerweise', + 'kleinweis', + 'klipp', + 'komischerweise', + 'komplizierterweise', + 'kopfunter', + 'kopfüber', + 'kreuzweise', + 'kurioserweise', + 'künftig', + 'kurzerhand', + 'kürzlich', + 'kurzweg', + 'landab', + 'landauf', + 'lange', + 'längs', + 'längsseits', + 'längst', + 'lauter', + 'lauthals', + 'lediglich', + 'leewärts', + 'lehnan', + 'leichterhand', + 'leichtsinnigerweise', + 'leider', + 'letztendlich', + 'letztens', + 'letzthin', + 'letztlich', + 'letztmals', + 'lieber', + 'links', + 'literweise', + 'logischerweise', + 'los', + 'lustigerweise', + 'luvwärts', + 'massenweise', + 'mählich', + 'mal', + 'manchenorts', + 'mancherorts', + 'manchmal', + 'meerwärts', + 'mehr', + 'mehrfach', + 'mehrmals', + 'meinerseits', + 'meinerzeit', + 'meinethalben', + 'meinetwegen', + 'meinetwillen', + 'meist', + 'meistens', + 'meistenteils', + 'merkwürdigerweise', + 'minder', + 'mindestens', + 'missbräuchlicherweise', + 'miteinander', + 'mithin', + 'mitnichten', + 'mittags', + 'mitten', + 'mittendrin', + 'mittenmang', + 'mitternachts', + 'mittlerweile', + 'mittschiffs', + 'mittsommers', + 'mittwochs', + 'mitunter', + 'möglicherweise', + 'möglichst', + 'montags', + 'morgen', + 'morgens', + 'mütterlicherseits', + 'mysteriöserweise', + 'nacheinander', + 'nachgerade', + 'nachher', + 'nachmals', + 'nachmittags', + 'nachtsüber', + 'nahebei', + 'naheliegenderweise', + 'nächstens', + 'nächtens', + 'nachts', + 'näherungsweise', + 'nahezu', + 'namens', + 'namentlich', + 'nämlich', + 'natürlich', + 'nebbich', + 'nebenan', + 'nebenbei', + 'nebeneinander', + 'nebenher', + 'nee', + 'nein', + 'net', + 'netterweise', + 'neuerdings', + 'neulich', + 'nicht', + 'nie', + 'niemals', + 'nimmer', + 'nimmermehr', + 'nirgends', + 'nirgendwo', + 'nirgendwohin', + 'noch', + 'nocheinmal', + 'nochmal', + 'nochmals', + 'nordwärts', + 'normalerweise', + 'notabene', + 'notfalls', + 'nötigenfalls', + 'notwendigerweise', + 'nu', + 'nun', + 'nunmehr', + 'nur', + 'oben', + 'obenauf', + 'obendrauf', + 'obendrein', + 'obenherum', + 'obenrum', + 'offenbar', + 'oft', + 'oftmals', + 'ohnedem', + 'ohnedies', + 'ohnegleichen', + 'ohnehin', + 'ohnlängst', + 'ordnungshalber', + 'ostwärts', + 'paarmal', + 'paarweise', + 'paradoxerweise', + 'parterre', + 'partout', + 'passim', + 'pikanterweise', + 'pillepalle', + 'polwärts', + 'praktisch', + 'praktischerweise', + 'prima', + 'privatim', + 'probehalber', + 'quartalsweise', + 'quasi', + 'quer', + 'querbeet', + 'querfeldein', + 'ran', + 'rattekahl', + 'ratzekahl', + 'ratzeputz', + 'ratzfatz', + 'raus', + 'realiter', + 'recht', + 'rechtens', + 'rechts', + 'reihenweise', + 'rein', + 'retour', + 'richtig', + 'ringsherum', + 'ringsum', + 'ringsumher', + 'rittlings', + 'rüber', + 'rücklings', + 'rückwärts', + 'ruckzuck', + 'rum', + 'rund', + 'rundherum', + 'rundum', + 'rückzu', + 'samstags', + 'sattsam', + 'schandehalber', + 'scharenweise', + 'schätzungsweise', + 'scheibchenweise', + 'schier', + 'schlankweg', + 'schlechthin', + 'schließlich', + 'schlimmstenfalls', + 'schnellstens', + 'schnurstracks', + 'schon', + 'schonmal', + 'schrittweise', + 'schuldenhalber', + 'schwerlich', + 'sehr', + 'seinerseits', + 'seinerzeit', + 'seinethalben', + 'seinetwegen', + 'seinetwillen', + 'seitab', + 'seitdem', + 'seither', + 'seitlings', + 'seitwärts', + 'selbander', + 'selbdritt', + 'selbigesmal', + 'selbst', + 'selbstredend', + 'selbviert', + 'seltsamerweise', + 'sicher', + 'sicherheitshalber', + 'sicherlich', + 'sinnvollerweise', + 'so', + 'sodann', + 'soeben', + 'sofort', + 'sogar', + 'sogleich', + 'solala', + 'somit', + 'sommers', + 'sommersüber', + 'sonderbarerweise', + 'sonnabends', + 'sonntags', + 'sonst', + 'soweit', + 'sowieso', + 'sozusagen', + 'spätabends', + 'später', + 'späterhin', + 'spätestens', + 'spätnachmittags', + 'sperrangelweit', + 'stadtauswärts', + 'stadteinwärts', + 'statt', + 'stattdessen', + 'stellenweise', + 'stets', + 'steuerbord', + 'stoßweise', + 'stracks', + 'stromab', + 'stromauf', + 'studienhalber', + 'stufenweise', + 'stückchenweise', + 'stückweise', + 'südwärts', + 'sukzessive', + 'tageweise', + 'tags', + 'tagsunter', + 'tagsüber', + 'talab', + 'talabwärts', + 'talauf', + 'talaufwärts', + 'talaus', + 'talauswärts', + 'talein', + 'taleinwärts', + 'talwärts', + 'teils', + 'teilweise', + 'testweise', + 'traurigerweise', + 'treppab', + 'treppauf', + 'tröpfchenweise', + 'tropfenweise', + 'trotzdem', + 'tröpferlweise', + 'tunlichst', + 'typischerweise', + 'umhin', + 'umsonst', + 'umständehalber', + 'umstandshalber', + 'unerwarteterweise', + 'ungefähr', + 'ungefrühstückt', + 'ungerechterweise', + 'ungern', + 'ungestraft', + 'unglücklicherweise', + 'unglückseligerweise', + 'unisono', + 'unlängst', + 'unnötigerweise', + 'unsererseits', + 'unseretwillen', + 'unserseits', + 'unsertwillen', + 'unsrerseits', + 'unten', + 'untenan', + 'untenherum', + 'untenrum', + 'unterdessen', + 'untereinander', + 'untertags', + 'unterwegs', + 'unterweil', + 'unterweilen', + 'unversehens', + 'unvorsichtigerweise', + 'väterlicherseits', + 'vergebens', + 'vergleichsweise', + 'vergnügenshalber', + 'vergnügungshalber', + 'verhältnismäßig', + 'verschiedentlich', + 'verständlicherweise', + 'viel', + 'vielenorts', + 'vielerorts', + 'vielfach', + 'vielleicht', + 'vielmals', + 'vielmehr', + 'vollauf', + 'vollends', + 'volley', + 'vollständig', + 'vonjeher', + 'vonstatten', + 'vorab', + 'voran', + 'vorauf', + 'voraus', + 'vorbei', + 'vordem', + 'voreinst', + 'vorerst', + 'vorgestern', + 'vorher', + 'vorhin', + 'vorläufig', + 'vormals', + 'vormittags', + 'vorn', + 'vorne', + 'vornehmlich', + 'vorneweg', + 'vorschüssig', + 'vorsichtshalber', + 'vorüber', + 'vorwärts', + 'vorweg', + 'vorwiegend', + 'vorzugsweise', + 'völlig', + 'wahlweise', + 'währenddem', + 'wahrhaftig', + 'wahrlich', + 'wann', + 'warum', + 'weg', + 'weiland', + 'weitab', + 'weitaus', + 'weiter', + 'weiterhin', + 'weiters', + 'weitherum', + 'weithin', + 'weniger', + 'wenigstens', + 'werktags', + 'weshalb', + 'westwärts', + 'weswegen', + 'wie', + 'wieder', + 'wiederum', + 'wieso', + 'winters', + 'wintersüber', + 'wirklich', + 'wo', + 'woanders', + 'woandershin', + 'wochenends', + 'wodurch', + 'wogegen', + 'woher', + 'woherum', + 'wohin', + 'wohl', + 'wohlan', + 'wohlauf', + 'wohlgemerkt', + 'womit', + 'womöglich', + 'wonach', + 'worauf', + 'woraufhin', + 'worein', + 'worin', + 'worüber', + 'woselbst', + 'wozu', + 'wunderbarerweise', + 'wunderlicherweise', + 'x-mal', + 'zahlungshalber', + 'zeither', + 'zeitlang', + 'zeitlebens', + 'zeitweise', + 'ziemlich', + 'zigmal', + 'zirka', + 'zu', + 'zuallerallererst', + 'zuallerallerletzt', + 'zuallererst', + 'zuallerletzt', + 'zuallermeist', + 'zualleroberst', + 'zuallerunterst', + 'zuäußerst', + 'zueinander', + 'zuerst', + 'zufälligerweise', + 'zugegebenermaßen', + 'zugleich', + 'zugrunde', + 'zugute', + 'zuhauf', + 'zuhause', + 'zulande', + 'zuleid', + 'zuleide', + 'zuletzt', + 'zumal', + 'zumeist', + 'zumindest', + 'zumindestens', + 'zumute', + 'zunächst', + 'zunutze', + 'zuoberst', + 'zurande', + 'zurück', + 'zusammen', + 'zuschanden', + 'zusehends', + 'zustande', + 'zuständigkeitshalber', + 'zutage', + 'zutiefst', + 'zuunterst', + 'zuviel', + 'zuvor', + 'zuvorderst', + 'zuvörderst', + 'zuweilen', + 'zuwider', + 'zuzeiten', + 'zwangsweise', + 'zwar', + 'zweifellos', + 'zweifelsohne', + 'zwischendurch', + 'äußerst', + 'öfters', + 'östlich', + 'überall', + 'überallhin', + 'überaus', + 'überdies', + 'überein', + 'übergangsweise', + 'überhand', + 'überhaupt', + 'überkopf', + 'übermorgen', + 'überraschenderweise', + 'überwiegend', + 'üblicherweise', + 'übrigens', + 'übungshalber', +]; diff --git a/src/locales/de/word/index.ts b/src/locales/de/word/index.ts index 3fda6e22954..4e25dffc032 100644 --- a/src/locales/de/word/index.ts +++ b/src/locales/de/word/index.ts @@ -4,9 +4,17 @@ */ import type { WordDefinitions } from '../../..'; import adjective from './adjective'; +import adverb from './adverb'; +import noun from './noun'; +import preposition from './preposition'; +import verb from './verb'; const word: WordDefinitions = { adjective, + adverb, + noun, + preposition, + verb, }; export default word; diff --git a/src/locales/de/word/noun.ts b/src/locales/de/word/noun.ts new file mode 100644 index 00000000000..6b29fb0908f --- /dev/null +++ b/src/locales/de/word/noun.ts @@ -0,0 +1,438 @@ +// source: https://de.wiktionary.org/wiki/Wiktionary:Liste_der_W%C3%B6rter,_die_jedes_Wiktionary_enthalten_sollte +export default [ + 'AIDS', + 'Abtreibung', + 'Adipositas', + 'Adjectiv', + 'Adler', + 'Adverb', + 'Agnostizismus', + 'Alkalimetall', + 'Alphabet', + 'Aluminium', + 'Anarchie', + 'Anatomie', + 'Anderes', + 'Antike', + 'Architektur', + 'Archäologie', + 'Arm', + 'Astronomie', + 'Atheismus', + 'Atom', + 'Aufzug', + 'Auge', + 'Automobil', + 'Autor', + 'Axt', + 'Backgammon', + 'Badezimmer', + 'Bahnhof', + 'Bakterium', + 'Ball', + 'Baseball', + 'Baum', + 'Behandlung', + 'Bein', + 'Benzin', + 'Beruf', + 'Beschleunigung', + 'Bestrafung', + 'Bett', + 'Bewusstsein', + 'Biathlon', + 'Bibliographie', + 'Bibliothek', + 'Bier', + 'Biographie', + 'Biologie', + 'Blei', + 'Blindheit', + 'Blume', + 'Bogen', + 'Bronze', + 'Brot', + 'Brücke', + 'Buch', + 'Buddhismus', + 'Burg', + 'Bär', + 'Bürostuhl', + 'Chemie', + 'Chirurgie', + 'Cholera', + 'Christentum', + 'Comic', + 'Computer', + 'Cricket', + 'Dach', + 'Dame', + 'Dampfmaschine', + 'Darm', + 'Daumen', + 'Demokratie', + 'Denker', + 'Diamant', + 'Diktatur', + 'Dinosaurier', + 'Diplomatie', + 'Drache', + 'Durchfall', + 'Eisen', + 'Eisenbahn', + 'Elefant', + 'Elektrizität', + 'Elektromotor', + 'Elektron', + 'Elektronik', + 'Element', + 'Ellenbogen', + 'Energie', + 'Entdecker', + 'Entdeckung', + 'Epistemologie', + 'Erdbeben', + 'Erde', + 'Erfahrung', + 'Erfinder', + 'Erwachsener', + 'Essen', + 'Ethik', + 'Fahrer', + 'Fahrrad', + 'Farbe', + 'Faschismus', + 'Fels', + 'Feminismus', + 'Fenster', + 'Fernsehen', + 'Fernseher', + 'Feuer', + 'Feuerstein', + 'Film', + 'Finger', + 'Fisch', + 'Flaschenzug', + 'Flughafen', + 'Flugzeug', + 'Fluss', + 'Fläche', + 'Fortpflanzung', + 'Frau', + 'Freiheit', + 'Frieden', + 'Frucht', + 'Fuß', + 'Fußball', + 'Fötus', + 'Galaxie', + 'Gebirge', + 'Geburtenkontrolle', + 'Gebäude', + 'Gehirn', + 'Geist', + 'Gemüse', + 'Geographie', + 'Geologie', + 'Gerste', + 'Geschichte', + 'Geschwindigkeit', + 'Gesellschaft', + 'Getränke', + 'Globalisierung', + 'Glücksspiel', + 'Go', + 'Gold', + 'Gott', + 'Grad', + 'Gramm', + 'Granit', + 'Gravitation', + 'Grundbegriff', + 'Grundkonzept', + 'Hafer', + 'Hagel', + 'Hand', + 'Handgelenk', + 'Haus', + 'Wohnhaus', + 'Haut', + 'Hebel', + 'Herz', + 'Hinduismus', + 'Hitze', + 'Hochhaus', + 'Hotel', + 'Humanismus', + 'Hund', + 'Hunger', + 'Hurrikan', + 'Hütte', + 'Imperialismus', + 'Impfung', + 'Innenarchitektur', + 'Insekt', + 'Internet', + 'Islam', + 'Jazz', + 'Judentum', + 'Jugendliche', + 'Junge', + 'Jupiter', + 'Kaffee', + 'Kamel', + 'Kapitalismus', + 'Karte', + 'Kartoffel', + 'Katastrophe', + 'Katze', + 'Kernschmelze', + 'Kilogramm', + 'Kilometer', + 'Kind', + 'Kino', + 'Kirche', + 'Klappstuhl', + 'Klassik', + 'Klinge', + 'Knie', + 'Knöchel', + 'Kommunismus', + 'Konjunktion', + 'Kopf', + 'Kraft', + 'Krankheiten', + 'Krebs', + 'Kreide', + 'Krieg', + 'Kubus', + 'Kultur', + 'Kunst', + 'Kupfer', + 'Kuppel', + 'Käse', + 'Körper', + 'Laden', + 'Lampe', + 'Land', + 'Landwirtschaft', + 'Laser', + 'Lawine', + 'Leben', + 'Leber', + 'Legierung', + 'Leichtathletik', + 'Lepra', + 'Liberalismus', + 'Liter', + 'Literatur', + 'Lunge', + 'Länge', + 'Löwe', + 'Magen', + 'Magnetismus', + 'Mais', + 'Malaria', + 'Mann', + 'Mars', + 'Masse', + 'Mathematik', + 'Mathematiker', + 'Maß', + 'Medikation', + 'Medizin', + 'Meer', + 'Mensch', + 'Menschenrecht', + 'Merkur', + 'Messing', + 'Metall', + 'Metallurgie', + 'Metaphysik', + 'Meteorologie', + 'Meter', + 'Milch', + 'Milchstraße', + 'Milz', + 'Mineral', + 'Minute', + 'Molekül', + 'Monarchie', + 'Monat', + 'Mond', + 'Monotheismus', + 'Motel', + 'Mund', + 'Museum', + 'Musik', + 'Musiker', + 'Mädchen', + 'Möbel', + 'Nachttisch', + 'Nagel', + 'Nationalismus', + 'Nationalsozialismus', + 'Neptun', + 'Neutron', + 'Niere', + 'Nomen', + 'Objekte', + 'Ohr', + 'Optik', + 'Ozean', + 'Palast', + 'Parkhaus', + 'Penis', + 'Periodensystem', + 'Petroleum', + 'Pferd', + 'Pflanze', + 'Pfund', + 'Philosophie', + 'Photon', + 'Physik', + 'Pilz', + 'Platin', + 'Plazenta', + 'Pluto', + 'Pocken', + 'Politik', + 'Politiker', + 'Polytheismus', + 'Pop', + 'Protist', + 'Proton', + 'Prähistorie', + 'Pulver', + 'Pyramide', + 'Quarz', + 'Rad', + 'Radio', + 'Rassismus', + 'Reaktion', + 'Realität', + 'Regal', + 'Regen', + 'Religion', + 'Renaissance', + 'Reptil', + 'Revolution', + 'Riff', + 'Rock', + 'Rolltreppe', + 'Rudern', + 'Sache', + 'Saft', + 'Salz', + 'Sandstein', + 'Saturn', + 'Schach', + 'Schaf', + 'Schaukelstuhl', + 'Schießpulver', + 'Schiff', + 'Schlafzimmer', + 'Schlange', + 'Schlucht', + 'Schnee', + 'Schrank', + 'Schraube', + 'Schreibtisch', + 'Schrift', + 'Schule', + 'Schusswaffe', + 'Schwangerschaft', + 'Schwert', + 'Schwimmen', + 'See', + 'Seele', + 'Segel', + 'Sekunde', + 'Sessel', + 'Sexismus', + 'Sikhreligion', + 'Silber', + 'Skelett', + 'Sklaverei', + 'Sojabohne', + 'Sonne', + 'Sonnensystem', + 'Sorghum', + 'Sozialismus', + 'Spiel', + 'Sport', + 'Sprache', + 'Sprengstoff', + 'Staatsmann', + 'Stadt', + 'Stahl', + 'Stuhl', + 'Stunde', + 'Substantiv', + 'Säugetier', + 'Säugling', + 'Säure', + 'Tag', + 'Tanz', + 'Taubheit', + 'Technologie', + 'Tee', + 'Telefon', + 'Tempel', + 'Teppich', + 'Theater', + 'Tier', + 'Tisch', + 'Tor', + 'Tornado', + 'Treppe', + 'Tsunami', + 'Tuberkulose', + 'Tür', + 'Unterernährung', + 'Uranus', + 'Urknall', + 'Vagina', + 'Venus', + 'Verben', + 'Verbindung', + 'Verhütung', + 'Verstand', + 'Vieh', + 'Virus', + 'Vogel', + 'Volksmusik', + 'Vulkan', + 'Waffe', + 'Wahrheit', + 'Wasser', + 'Wasserfall', + 'Wein', + 'Weizen', + 'Wille', + 'Wind', + 'Wissenschaft', + 'Wissenschaftler', + 'Wohnzimmer', + 'Wolke', + 'Wolkenkratzer', + 'Wärme', + 'Würfel', + 'Zahl', + 'Zeh', + 'Zeit', + 'Zeitalter', + 'Zimmer', + 'Zimmermann', + 'Zinn', + 'Zionismus', + 'pH-Wert', + 'Ebene', + 'Rampe', + 'Brust', + 'Busen', + 'Ästhetik', + 'Ökologie', + 'Öl', + 'Überschwemmung', +]; diff --git a/src/locales/de/word/preposition.ts b/src/locales/de/word/preposition.ts new file mode 100644 index 00000000000..7110ad8b1d6 --- /dev/null +++ b/src/locales/de/word/preposition.ts @@ -0,0 +1,157 @@ +// source: https://de.wiktionary.org/wiki/Verzeichnis:Deutsch/Pr%C3%A4positionen +export default [ + 'ab', + 'abseits', + 'abzüglich', + 'an', + 'anfangs', + 'angesichts', + 'anhand', + 'anlässlich', + 'anstatt', + 'anstelle', + 'auf', + 'aufgrund', + 'aufseiten', + 'aus', + 'ausgangs', + 'ausschließlich', + 'ausweislich', + 'außer', + 'außerhalb', + 'bar', + 'behufs', + 'bei', + 'beiderseits', + 'beidseits', + 'beim', + 'betreffend', + 'betreffs', + 'beziehentlich', + 'bezüglich', + 'binnen', + 'bis', + 'contra', + 'dank', + 'diesseits', + 'durch', + 'einbezüglich', + 'eingangs', + 'eingedenk', + 'einschließlich', + 'entgegen', + 'entlang', + 'entsprechend', + 'exklusive', + 'fern', + 'fernab', + 'für', + 'gegen', + 'gegenüber', + 'gelegentlich', + 'gemäß', + 'gen', + 'getreu', + 'gleich', + 'halber', + 'hinsichtlich', + 'hinter', + 'in', + 'infolge', + 'inklusive', + 'inmitten', + 'innerhalb', + 'innert', + 'je', + 'jenseits', + 'kontra', + 'kraft', + 'lang', + 'laut', + 'links', + 'längs', + 'längsseits', + 'mangels', + 'minus', + 'mit', + 'mithilfe', + 'mitsamt', + 'mittels', + 'nach', + 'nahe', + 'namens', + 'neben', + 'nebst', + 'nordwestlich', + 'nordöstlich', + 'nächst', + 'nördlich', + 'ob', + 'oberhalb', + 'ohne', + 'per', + 'plus', + 'pro', + 'punkto', + 'rechts', + 'rücksichtlich', + 'samt', + 'seit', + 'seitens', + 'seitlich', + 'seitwärts', + 'sonder', + 'statt', + 'südlich', + 'südwestlich', + 'südöstlich', + 'trotz', + 'um', + 'unbeschadet', + 'uneingedenk', + 'unerachtet', + 'unfern', + 'ungeachtet', + 'ungerechnet', + 'unter', + 'unterhalb', + 'unweit', + 'vermittels', + 'vermittelst', + 'vermöge', + 'versus', + 'via', + 'vis-à-vis', + 'voller', + 'vom', + 'von', + 'vonseiten', + 'vor', + 'vorbehaltlich', + 'vorgängig', + 'wegen', + 'weitab', + 'westlich', + 'wider', + 'willen', + 'während', + 'zeit', + 'zu', + 'zufolge', + 'zugunsten', + 'zuhanden', + 'zulasten', + 'zulieb', + 'zuliebe', + 'zum', + 'zunächst', + 'zur', + 'zuseiten', + 'zuungunsten', + 'zuwider', + 'zuzüglich', + 'zwecks', + 'zwischen', + 'östlich', + 'über', +]; diff --git a/src/locales/de/word/verb.ts b/src/locales/de/word/verb.ts new file mode 100644 index 00000000000..fa65481a2f1 --- /dev/null +++ b/src/locales/de/word/verb.ts @@ -0,0 +1,3042 @@ +// source: https://de.wiktionary.org/wiki/Verzeichnis:Deutsch/Regelm%C3%A4%C3%9Fige_Verben +export default [ + 'aalen', + 'aasen', + 'abdunkeln', + 'abduzieren', + 'abfackeln', + 'abflauen', + 'abhausen', + 'abholzen', + 'abkanzeln', + 'abkapseln', + 'abkoppeln', + 'abkupfern', + 'abmagern', + 'abmontieren', + 'abmurksen', + 'abnabeln', + 'abschotten', + 'abseifen', + 'abseilen', + 'absolvieren', + 'absondern', + 'absorbieren', + 'abstatten', + 'abstauben', + 'abstrahieren', + 'abstufen', + 'abstumpfen', + 'abwägen', + 'abzweigen', + 'achten', + 'ächten', + 'ächzen', + 'ackern', + 'adaptieren', + 'addieren', + 'addizieren', + 'adeln', + 'administrieren', + 'adoptieren', + 'adressieren', + 'affirmieren', + 'affizieren', + 'agieren', + 'agitieren', + 'ahnden', + 'ähneln', + 'ahnen', + 'akkumulieren', + 'akquirieren', + 'aktivieren', + 'aktualisieren', + 'akzentuieren', + 'akzeptieren', + 'alarmieren', + 'albern', + 'algorithmisieren', + 'alimentieren', + 'allozieren', + 'alphabetisieren', + 'älteln', + 'altern', + 'alterieren', + 'alternieren', + 'altertümeln', + 'altmachen', + 'amalgamieren', + 'amerikanisieren', + 'amnestieren', + 'amortisieren', + 'amputieren', + 'amtieren', + 'amüsieren', + 'analysieren', + 'anästhetisieren', + 'anbändeln', + 'anbiedern', + 'ändern', + 'anecken', + 'anfeinden', + 'anfreunden', + 'angehören', + 'angeln', + 'ängstigen', + 'anheimeln', + 'anhimmeln', + 'animieren', + 'ankern', + 'anketten', + 'ankoppeln', + 'ankreiden', + 'anlasten', + 'anleinen', + 'anmontieren', + 'anmuten', + 'annektieren', + 'annoncieren', + 'annotieren', + 'annullieren', + 'anöden', + 'anonymisieren', + 'anprangern', + 'anreichern', + 'anschuldigen', + 'ansehen', + 'anseilen', + 'anstacheln', + 'anstrengen', + 'antichambrieren', + 'antizipieren', + 'antworten', + 'anwidern', + 'anzetteln', + 'apanagieren', + 'apern', + 'äpfeln', + 'apostrophieren', + 'appellieren', + 'applaudieren', + 'applizieren', + 'apportieren', + 'appretieren', + 'approximieren', + 'aptieren', + 'aquarellieren', + 'äquilibrieren', + 'arabisieren', + 'arbeiten', + 'arbitrieren', + 'archaisieren', + 'archivieren', + 'ärgern', + 'argumentieren', + 'argwöhnen', + 'arisieren', + 'arkadieren', + 'armieren', + 'armmachen', + 'aromatisieren', + 'arrangieren', + 'arretieren', + 'arrivieren', + 'arrodieren', + 'arrondieren', + 'arsenieren', + 'arten', + 'artikulieren', + 'äsen', + 'asphaltieren', + 'aspirieren', + 'assekurieren', + 'assemblieren', + 'asservieren', + 'assimilieren', + 'assistieren', + 'assoziieren', + 'asten', + 'ästen', + 'ästhetisieren', + 'äthern', + 'atmen', + 'atomisieren', + 'atrophieren', + 'attachieren', + 'attackieren', + 'attestieren', + 'attraktivieren', + 'attribuieren', + 'atzen', + 'ätzen', + 'aufächzen', + 'aufbahren', + 'aufforsten', + 'auffrischen', + 'aufhalsen', + 'aufheitern', + 'aufhellen', + 'aufklaren', + 'auflockern', + 'aufmöbeln', + 'aufmucken', + 'aufmuntern', + 'aufputschen', + 'aufstacheln', + 'auftischen', + 'auftrumpfen', + 'äugeln', + 'äugen', + 'ausarten', + 'ausbedingen', + 'ausbeuten', + 'ausbooten', + 'ausbüxen', + 'ausdünnen', + 'ausflippen', + 'aushändigen', + 'aushecken', + 'ausixen', + 'ausklinken', + 'auslasten', + 'ausloggen', + 'ausmergeln', + 'ausmerzen', + 'ausmisten', + 'ausrangieren', + 'ausrenken', + 'äußern', + 'aussöhnen', + 'aussondern', + 'ausstaffieren', + 'ausstatten', + 'ausstopfen', + 'ausufern', + 'ausweichen', + 'auszementieren', + 'auszieren', + 'auszirkeln', + 'auszupfen', + 'authentifizieren', + 'authentisieren', + 'autographieren', + 'autoklavieren', + 'automatisieren', + 'autonomisieren', + 'autorisieren', + 'auxiliieren', + 'avancieren', + 'aversionieren', + 'avertieren', + 'avisieren', + 'avivieren', + 'avouieren', + 'axiomatisieren', + 'azotieren', + 'babbeln', + 'baden', + 'bagatellisieren', + 'baggern', + 'bahnen', + 'balancieren', + 'balbieren', + 'baldowern', + 'balgen', + 'ballen', + 'ballern', + 'balsamieren', + 'balzen', + 'bammeln', + 'bandagieren', + 'bändern', + 'bändigen', + 'bangen', + 'bannen', + 'barbieren', + 'basieren', + 'basteln', + 'bauen', + 'baumeln', + 'bäumen', + 'bauschen', + 'beabsichtigen', + 'bearbeiten', + 'beargwöhnen', + 'beatmen', + 'beaufsichtigen', + 'beauftragen', + 'beäugen', + 'beben', + 'bebildern', + 'bechern', + 'becircen', + 'beckmessern', + 'bedingen', + 'beeiden', + 'beeidigen', + 'beeinträchtigen', + 'beendigen', + 'beengen', + 'beerdigen', + 'befehligen', + 'befeuchten', + 'beflecken', + 'befleißigen', + 'beflügeln', + 'befrachten', + 'befremden', + 'befreunden', + 'befriedigen', + 'befristen', + 'befummeln', + 'begegnen', + 'begehren', + 'begeistern', + 'beglaubigen', + 'begleiten', + 'beglotzen', + 'beglücken', + 'beglückwünschen', + 'begnaden', + 'begnadigen', + 'begnügen', + 'begradigen', + 'behelligen', + 'beherzigen', + 'beichten', + 'beipflichten', + 'beistehen', + 'beitreten', + 'beizen', + 'bejahen', + 'bekehren', + 'bekiffen', + 'beklagen', + 'beklatschen', + 'beklauen', + 'bekleben', + 'bekleckern', + 'beklecksen', + 'beköstigen', + 'bekräftigen', + 'bekreuzigen', + 'bekunden', + 'belämmern', + 'belasten', + 'belästigen', + 'beleidigen', + 'bellen', + 'belobigen', + 'belustigen', + 'bemächtigen', + 'bemängeln', + 'bemänteln', + 'bemuttern', + 'benachrichtigen', + 'benachteiligen', + 'benagen', + 'benebeln', + 'benedeien', + 'beneiden', + 'benennen', + 'benetzen', + 'benötigen', + 'benoten', + 'benutzen', + 'benützen', + 'bepflastern', + 'berappen', + 'berappeln', + 'berauschen', + 'bereden', + 'bereichern', + 'berichtigen', + 'berücksichtigen', + 'beruhen', + 'beruhigen', + 'besamen', + 'besänftigen', + 'beschäftigen', + 'beschälen', + 'beschallen', + 'bescheinigen', + 'beschenken', + 'beschichten', + 'beschleunigen', + 'beschönigen', + 'beschranken', + 'beschränken', + 'beschriften', + 'beschuldigen', + 'beschützen', + 'beschwatzen', + 'beschweren', + 'beschwichtigen', + 'beseelen', + 'beseitigen', + 'besichtigen', + 'besohlen', + 'besolden', + 'besorgen', + 'bespitzeln', + 'bespritzen', + 'besprühen', + 'bessemern', + 'bessern', + 'besserstellen', + 'bestallen', + 'bestätigen', + 'bestatten', + 'bestellen', + 'besteuern', + 'bestreuen', + 'bestücken', + 'bestuhlen', + 'bestürmen', + 'bestürzen', + 'betanken', + 'betasten', + 'betatschen', + 'betäuben', + 'beteiligen', + 'beten', + 'beteuern', + 'betiteln', + 'betonen', + 'betonieren', + 'betonnen', + 'betören', + 'betreuen', + 'betteln', + 'betten', + 'beugen', + 'beulen', + 'beunruhigen', + 'beurkunden', + 'beurlauben', + 'beurteilen', + 'beuteln', + 'bevölkern', + 'bevollmächtigen', + 'bevormunden', + 'bewachen', + 'bewaffnen', + 'bewahren', + 'bewältigen', + 'bewandern', + 'bewässern', + 'bewegen', + 'beweihräuchern', + 'beweinen', + 'bewerkstelligen', + 'bewilligen', + 'bewirken', + 'bewirten', + 'bewirtschaften', + 'bewohnen', + 'bewölken', + 'bezahlen', + 'bezähmen', + 'bezichtigen', + 'beziffern', + 'bezirzen', + 'bezuschussen', + 'bezwecken', + 'bezweifeln', + 'bibbern', + 'bilanzieren', + 'bilden', + 'billigen', + 'bimmeln', + 'bimsen', + 'blähen', + 'blamieren', + 'blanchieren', + 'blättern', + 'bläuen', + 'blechen', + 'blenden', + 'blessieren', + 'blicken', + 'blinken', + 'blinkern', + 'blinzeln', + 'blitzen', + 'blockieren', + 'blödeln', + 'blöken', + 'blubbern', + 'blühen', + 'bluten', + 'bohnern', + 'bohren', + 'bollern', + 'böllern', + 'bombardieren', + 'boomen', + 'borgen', + 'bosseln', + 'botanisieren', + 'boxen', + 'boykottieren', + 'brabbeln', + 'brandschatzen', + 'brauchen', + 'brausen', + 'bremsen', + 'brillieren', + 'bröckeln', + 'brodeln', + 'broschieren', + 'bröseln', + 'brühen', + 'brüllen', + 'brummeln', + 'brummen', + 'brüskieren', + 'brüsten', + 'brüten', + 'brutzeln', + 'buchen', + 'buckeln', + 'bücken', + 'buddeln', + 'büffeln', + 'bügeln', + 'bugsieren', + 'buhlen', + 'bummeln', + 'bummern', + 'bumsen', + 'bündeln', + 'bunkern', + 'bürgen', + 'bürsten', + 'büßen', + 'buttern', + 'changieren', + 'charakterisieren', + 'chargieren', + 'chatten', + 'chauffieren', + 'chiffrieren', + 'choreographieren', + 'computerisieren', + 'cremen', + 'chillen', + 'dämmen', + 'dämmern', + 'dämonisieren', + 'dampfen', + 'dämpfen', + 'danken', + 'darben', + 'datieren', + 'dauern', + 'debattieren', + 'debütieren', + 'decken', + 'deduzieren', + 'defäkieren', + 'defilieren', + 'definieren', + 'defragmentieren', + 'degradieren', + 'dehnen', + 'dehydrieren', + 'dekantieren', + 'deklamieren', + 'deklarieren', + 'deklassieren', + 'deklinieren', + 'dekorieren', + 'dekretieren', + 'delegieren', + 'delektieren', + 'dementieren', + 'demokratisieren', + 'demolieren', + 'demonstrieren', + 'demontieren', + 'demoralisieren', + 'demotivieren', + 'demütigen', + 'dengeln', + 'denunzieren', + 'depilieren', + 'deponieren', + 'deportieren', + 'deprimieren', + 'deputieren', + 'deregulieren', + 'desertieren', + 'desillusionieren', + 'destillieren', + 'detaillieren', + 'detektieren', + 'determinieren', + 'detonieren', + 'deuteln', + 'deuten', + 'devalvieren', + 'dezentralisieren', + 'dezimieren', + 'diagnostizieren', + 'dichten', + 'dienen', + 'diffamieren', + 'differenzieren', + 'differieren', + 'diffundieren', + 'digitalisieren', + 'diktieren', + 'dinieren', + 'dirigieren', + 'diskontieren', + 'diskriminieren', + 'diskutieren', + 'dispensieren', + 'disponieren', + 'disputieren', + 'disqualifizieren', + 'distanzieren', + 'distinguieren', + 'disziplinieren', + 'divergieren', + 'diversifizieren', + 'dividieren', + 'doktern', + 'dokumentieren', + 'dolmetschen', + 'domestizieren', + 'dominieren', + 'donnern', + 'dösen', + 'dosieren', + 'dotieren', + 'doubeln', + 'downloaden', + 'dozieren', + 'drainieren', + 'dramatisieren', + 'drängeln', + 'drängen', + 'drangsalieren', + 'drapieren', + 'dräuen', + 'drechseln', + 'drehen', + 'dressieren', + 'dribbeln', + 'driften', + 'dritteln', + 'drohen', + 'dröhnen', + 'dröseln', + 'drosseln', + 'drucken', + 'drücken', + 'drucksen', + 'dübeln', + 'ducken', + 'dudeln', + 'duellieren', + 'duften', + 'dulden', + 'dümpeln', + 'düngen', + 'düpieren', + 'duplizieren', + 'durchforsten', + 'durchfurchen', + 'durchqueren', + 'dürsten', + 'duschen', + 'duseln', + 'düsen', + 'duzen', + 'dynamisieren', + 'ebben', + 'ebnen', + 'echauffieren', + 'editieren', + 'egalisieren', + 'eggen', + 'ehren', + 'eichen', + 'eiern', + 'eifern', + 'eignen', + 'eilen', + 'einäschern', + 'einbürgern', + 'einen', + 'einengen', + 'einflößen', + 'einheimsen', + 'einigeln', + 'einigen', + 'einkapseln', + 'einkellern', + 'einkerkern', + 'einloggen', + 'einmotten', + 'einrenken', + 'einsargen', + 'einschiffen', + 'einschläfern', + 'einschüchtern', + 'einstufen', + 'eintüten', + 'einverleiben', + 'einwilligen', + 'eitern', + 'ejakulieren', + 'ekeln', + 'elektrifizieren', + 'elektrisieren', + 'eliminieren', + 'emaillieren', + 'emanzipieren', + 'emeritieren', + 'emigrieren', + 'emittieren', + 'empören', + 'emulgieren', + 'emulieren', + 'enden', + 'enervieren', + 'engagieren', + 'entbehren', + 'entblöden', + 'entblößen', + 'enteisen', + 'entern', + 'entfachen', + 'entfernen', + 'entfremden', + 'entgegnen', + 'entgraten', + 'entgräten', + 'entkernen', + 'entkoppeln', + 'entkorken', + 'entkräften', + 'entlarven', + 'entlasten', + 'entlauben', + 'entledigen', + 'entleiben', + 'entmündigen', + 'entmutigen', + 'entmystifizieren', + 'entnazifizieren', + 'entpersönlichen', + 'entpolitisieren', + 'entrinden', + 'entrümpeln', + 'entsaften', + 'entschlacken', + 'entschuldigen', + 'entsprechen', + 'entvölkern', + 'entwaffnen', + 'entwanzen', + 'entwirren', + 'entwöhnen', + 'erbarmen', + 'erben', + 'erbeuten', + 'erbittern', + 'erblassen', + 'erblinden', + 'erbosen', + 'erden', + 'erfrechen', + 'erfrischen', + 'ergänzen', + 'ergattern', + 'ergaunern', + 'ergötzen', + 'ergrauen', + 'erheitern', + 'erhellen', + 'erhitzen', + 'erhöhen', + 'erigieren', + 'erinnern', + 'erkalten', + 'erkälten', + 'erkranken', + 'erkühnen', + 'erkunden', + 'erkundigen', + 'erlauben', + 'erledigen', + 'erleichtern', + 'ermächtigen', + 'ermatten', + 'ermüden', + 'ermuntern', + 'ermutigen', + 'erniedrigen', + 'ernten', + 'ernüchtern', + 'erobern', + 'erodieren', + 'erörtern', + 'erotisieren', + 'erquicken', + 'erröten', + 'ersäufen', + 'erschlaffen', + 'erschüttern', + 'erschweren', + 'erstarken', + 'erstatten', + 'ertauben', + 'ertüchtigen', + 'erübrigen', + 'eruieren', + 'erwägen', + 'erweitern', + 'erwidern', + 'eskalieren', + 'eskamotieren', + 'eskortieren', + 'etablieren', + 'etikettieren', + 'evakuieren', + 'evaluieren', + 'evangelisieren', + 'evozieren', + 'examinieren', + 'exekutieren', + 'exerzieren', + 'exhumieren', + 'existieren', + 'exmatrikulieren', + 'exmittieren', + 'expandieren', + 'expedieren', + 'experimentieren', + 'explizieren', + 'explodieren', + 'exponieren', + 'exportieren', + 'extemporieren', + 'extrahieren', + 'extrapolieren', + 'exzerpieren', + 'fabrizieren', + 'fabulieren', + 'fächeln', + 'fächern', + 'fachsimpeln', + 'fädeln', + 'fahnden', + 'fakturieren', + 'fällen', + 'fälschen', + 'falsifizieren', + 'fälteln', + 'falten', + 'falzen', + 'färben', + 'faseln', + 'fassen', + 'fasten', + 'faszinieren', + 'fauchen', + 'faulen', + 'faulenzen', + 'favorisieren', + 'federn', + 'fegen', + 'fehlen', + 'feiern', + 'feilen', + 'feilschen', + 'feixen', + 'ferkeln', + 'fermentieren', + 'fertigen', + 'fesseln', + 'festigen', + 'fetten', + 'feudeln', + 'feuern', + 'fiebern', + 'fiedeln', + 'fiedern', + 'filetieren', + 'filmen', + 'filtern', + 'filtrieren', + 'finanzieren', + 'fingern', + 'fingieren', + 'fischen', + 'fixen', + 'fixieren', + 'flackern', + 'flaggen', + 'flambieren', + 'flammen', + 'flanieren', + 'flankieren', + 'flattern', + 'fläzen', + 'fleddern', + 'flehen', + 'flektieren', + 'flennen', + 'fletschen', + 'flicken', + 'flimmern', + 'flippern', + 'flirren', + 'flirten', + 'flitzen', + 'florieren', + 'flöten', + 'fluchen', + 'flüchten', + 'fluktuieren', + 'flunkern', + 'fluoreszieren', + 'flüstern', + 'fluten', + 'föhnen', + 'fokussieren', + 'folgen', + 'folgern', + 'foltern', + 'foppen', + 'forcieren', + 'fordern', + 'fördern', + 'formalisieren', + 'formatieren', + 'formen', + 'formieren', + 'formulieren', + 'forschen', + 'fotografieren', + 'foulen', + 'fragen', + 'fragmentieren', + 'fraktionieren', + 'frankieren', + 'frappieren', + 'fräsen', + 'fraternisieren', + 'fremdeln', + 'frequentieren', + 'freuen', + 'freveln', + 'frikassieren', + 'frisieren', + 'frittieren', + 'frömmeln', + 'frommen', + 'frönen', + 'frösteln', + 'frottieren', + 'frotzeln', + 'fruchten', + 'frühstücken', + 'frustrieren', + 'fuchteln', + 'fügen', + 'fühlen', + 'führen', + 'füllen', + 'fummeln', + 'fundieren', + 'fungieren', + 'funkeln', + 'funken', + 'funktionieren', + 'fürchten', + 'furnieren', + 'furzen', + 'fusionieren', + 'fusseln', + 'füßeln', + 'fußen', + 'futtern', + 'füttern', + 'gackern', + 'gaffen', + 'gähnen', + 'galoppieren', + 'galvanisieren', + 'gammeln', + 'gängeln', + 'garantieren', + 'garen', + 'garnieren', + 'gasen', + 'gastieren', + 'gaukeln', + 'gebärden', + 'gebaren', + 'gedeihen', + 'gefährden', + 'gehorchen', + 'gehören', + 'geifern', + 'geigen', + 'geißeln', + 'geistern', + 'geizen', + 'gelieren', + 'gellen', + 'gelüsten', + 'generalisieren', + 'generieren', + 'genieren', + 'genügen', + 'gerben', + 'gerieren', + 'gesellen', + 'gestalten', + 'gestatten', + 'gestikulieren', + 'gesunden', + 'gewichten', + 'gewittern', + 'gewöhnen', + 'gieren', + 'gipfeln', + 'girren', + 'glänzen', + 'glasieren', + 'glätten', + 'glauben', + 'gleißen', + 'gliedern', + 'glitzern', + 'glorifizieren', + 'glotzen', + 'glücken', + 'gluckern', + 'glucksen', + 'glühen', + 'gönnen', + 'goutieren', + 'grabbeln', + 'grämen', + 'granteln', + 'granulieren', + 'grapschen', + 'grasen', + 'grassieren', + 'gratulieren', + 'graupeln', + 'grausen', + 'gravieren', + 'greinen', + 'grenzen', + 'grienen', + 'grillen', + 'grinsen', + 'grölen', + 'grübeln', + 'grummeln', + 'gründeln', + 'gründen', + 'grundieren', + 'grünen', + 'grunzen', + 'gruppieren', + 'gruseln', + 'grüßen', + 'gucken', + 'guillotinieren', + 'gummieren', + 'gurgeln', + 'gurren', + 'gustieren', + 'hacken', + 'häckseln', + 'hadern', + 'haften', + 'hageln', + 'hakeln', + 'häkeln', + 'halbieren', + 'hallen', + 'halluzinieren', + 'hämmern', + 'hampeln', + 'hamstern', + 'handeln', + 'hangeln', + 'hängen', + 'hänseln', + 'hantieren', + 'hapern', + 'harken', + 'härmen', + 'harmonieren', + 'harmonisieren', + 'harpunieren', + 'harren', + 'härten', + 'haschen', + 'haspeln', + 'hassen', + 'hasten', + 'hätscheln', + 'hauchen', + 'häufeln', + 'häufen', + 'hausen', + 'hausieren', + 'häuten', + 'hebeln', + 'hecheln', + 'hechten', + 'heften', + 'hegen', + 'hehlen', + 'heilen', + 'heiligen', + 'heiraten', + 'heißen', + 'heizen', + 'hemmen', + 'herabstufen', + 'herrschen', + 'herzen', + 'hetzen', + 'heucheln', + 'heuen', + 'heuern', + 'heulen', + 'hexen', + 'hieven', + 'hindern', + 'hinken', + 'hissen', + 'historisieren', + 'hobeln', + 'hocken', + 'hoffen', + 'hofieren', + 'höhnen', + 'hökern', + 'holen', + 'holpern', + 'homogenisieren', + 'honorieren', + 'hoppeln', + 'hopsen', + 'horchen', + 'hören', + 'horten', + 'hospitalisieren', + 'hospitieren', + 'huldigen', + 'hüllen', + 'humanisieren', + 'humpeln', + 'hungern', + 'hupen', + 'hüpfen', + 'huren', + 'huschen', + 'hüsteln', + 'husten', + 'hüten', + 'hutzeln', + 'hygienisieren', + 'hypnotisieren', + 'idealisieren', + 'identifizieren', + 'ignorieren', + 'illuminieren', + 'illustrieren', + 'imitieren', + 'immatrikulieren', + 'immigrieren', + 'immunisieren', + 'impfen', + 'implantieren', + 'implementieren', + 'implizieren', + 'implodieren', + 'imponieren', + 'importieren', + 'imprägnieren', + 'improvisieren', + 'indexieren', + 'indignieren', + 'individualisieren', + 'indizieren', + 'indoktrinieren', + 'indossieren', + 'industrialisieren', + 'induzieren', + 'infizieren', + 'inhaftieren', + 'inhalieren', + 'initialisieren', + 'initiieren', + 'injizieren', + 'inkludieren', + 'inkommodieren', + 'inkrementieren', + 'inkriminieren', + 'innovieren', + 'inserieren', + 'insistieren', + 'inspirieren', + 'inspizieren', + 'installieren', + 'institutionalisieren', + 'instruieren', + 'instrumentalisieren', + 'instrumentieren', + 'insultieren', + 'inszenieren', + 'integrieren', + 'intendieren', + 'intensivieren', + 'interagieren', + 'interessieren', + 'interferieren', + 'internalisieren', + 'internieren', + 'interpellieren', + 'interpretieren', + 'intervenieren', + 'interviewen', + 'inthronisieren', + 'intonieren', + 'intrigieren', + 'inventarisieren', + 'invertieren', + 'investieren', + 'involvieren', + 'ionisieren', + 'ironisieren', + 'irren', + 'irritieren', + 'isolieren', + 'iterieren', + 'jagen', + 'jähren', + 'jammern', + 'japsen', + 'jäten', + 'jauchzen', + 'jaulen', + 'jobben', + 'jodeln', + 'joggen', + 'johlen', + 'jonglieren', + 'jubeln', + 'jubilieren', + 'jucken', + 'judizieren', + 'justieren', + 'kabbeln', + 'kacheln', + 'kacken', + 'kalauern', + 'kalben', + 'kalibrieren', + 'kalken', + 'kalkulieren', + 'kämmen', + 'kämpfen', + 'kampieren', + 'kanalisieren', + 'kandieren', + 'kannelieren', + 'kanonisieren', + 'kapieren', + 'kapitalisieren', + 'kapitulieren', + 'kappen', + 'karamellisieren', + 'karessieren', + 'karikieren', + 'karren', + 'kartieren', + 'kaschieren', + 'kasernieren', + 'kaspern', + 'kassieren', + 'kastrieren', + 'katalogisieren', + 'katalysieren', + 'katapultieren', + 'kategorisieren', + 'kauen', + 'kauern', + 'kaufen', + 'kegeln', + 'kehren', + 'keifen', + 'keilen', + 'keimen', + 'kellnern', + 'keltern', + 'kentern', + 'kerben', + 'ketzern', + 'keuchen', + 'kichern', + 'kidnappen', + 'kiebitzen', + 'kiffen', + 'kippeln', + 'kippen', + 'kitten', + 'kitzeln', + 'klaffen', + 'kläffen', + 'klagen', + 'klammern', + 'klamüsern', + 'klappen', + 'klappern', + 'klapsen', + 'klären', + 'klassifizieren', + 'klatschen', + 'klauben', + 'klauen', + 'kleben', + 'kleckern', + 'klecksen', + 'kleiden', + 'kleistern', + 'klemmen', + 'klempnern', + 'klettern', + 'klicken', + 'klimatisieren', + 'klimmen', + 'klimpern', + 'klingeln', + 'klirren', + 'klittern', + 'klonen', + 'klönen', + 'klopfen', + 'klöppeln', + 'klotzen', + 'klüngeln', + 'knabbern', + 'knacken', + 'knallen', + 'knapsen', + 'knarren', + 'knattern', + 'knäueln', + 'knausern', + 'knebeln', + 'knechten', + 'kneten', + 'knicken', + 'knickern', + 'knicksen', + 'knipsen', + 'knirschen', + 'knistern', + 'knittern', + 'knobeln', + 'knöpfen', + 'knospen', + 'knoten', + 'knuddeln', + 'knüllen', + 'knüpfen', + 'knüppeln', + 'knurren', + 'knuspern', + 'knutschen', + 'koalieren', + 'kochen', + 'ködern', + 'kodieren', + 'kodifizieren', + 'kohlen', + 'kokeln', + 'kokettieren', + 'koksen', + 'kollektivieren', + 'kollern', + 'kollidieren', + 'kolonisieren', + 'kolorieren', + 'kolportieren', + 'kombinieren', + 'kommandieren', + 'kommentieren', + 'kommerzialisieren', + 'kommunalisieren', + 'kommunizieren', + 'kompensieren', + 'kompilieren', + 'komplettieren', + 'komplizieren', + 'komponieren', + 'kompostieren', + 'komprimieren', + 'kompromittieren', + 'kondensieren', + 'konditionieren', + 'kondolieren', + 'konferieren', + 'konfigurieren', + 'konfiszieren', + 'konfrontieren', + 'konjugieren', + 'konkretisieren', + 'konkurrieren', + 'konservieren', + 'konsolidieren', + 'konspirieren', + 'konstatieren', + 'konsternieren', + 'konstituieren', + 'konstruieren', + 'konsultieren', + 'konsumieren', + 'kontakten', + 'kontaktieren', + 'kontaminieren', + 'konterkarieren', + 'kontern', + 'kontingentieren', + 'kontrahieren', + 'kontrastieren', + 'kontrollieren', + 'konvenieren', + 'konvergieren', + 'konvertieren', + 'konzessionieren', + 'konzipieren', + 'koordinieren', + 'köpfen', + 'kopieren', + 'kopulieren', + 'korrelieren', + 'korrespondieren', + 'korrigieren', + 'korrodieren', + 'korrumpieren', + 'kosen', + 'kosten', + 'kostümieren', + 'koten', + 'kotzen', + 'krabbeln', + 'krachen', + 'krächzen', + 'krähen', + 'krallen', + 'kramen', + 'krampfen', + 'kränkeln', + 'kränken', + 'kränzen', + 'kratzen', + 'kraulen', + 'kräuseln', + 'kraxeln', + 'kredenzen', + 'kreditieren', + 'kreiseln', + 'kreisen', + 'kreißen', + 'krempeln', + 'krepieren', + 'kreuzen', + 'kribbeln', + 'krickeln', + 'kriegen', + 'kringeln', + 'kriseln', + 'kristallisieren', + 'kritisieren', + 'kritteln', + 'kritzeln', + 'krönen', + 'krümeln', + 'krümmen', + 'kugeln', + 'kühlen', + 'kujonieren', + 'kullern', + 'kulminieren', + 'kultivieren', + 'kümmeln', + 'kümmern', + 'kumulieren', + 'künden', + 'kündigen', + 'kungeln', + 'kupieren', + 'kuppeln', + 'kurbeln', + 'kurieren', + 'kursieren', + 'kurven', + 'kürzen', + 'kuscheln', + 'kuschen', + 'küssen', + 'laben', + 'labern', + 'laborieren', + 'lächeln', + 'lachen', + 'lackieren', + 'lädieren', + 'lagern', + 'lahmen', + 'lähmen', + 'laichen', + 'lallen', + 'lamentieren', + 'lancieren', + 'landen', + 'langen', + 'läppern', + 'lärmen', + 'lasieren', + 'lästern', + 'latschen', + 'lauern', + 'laugen', + 'lauschen', + 'lausen', + 'lauten', + 'läuten', + 'läutern', + 'lavieren', + 'leasen', + 'leben', + 'lechzen', + 'lecken', + 'leeren', + 'legalisieren', + 'legen', + 'legieren', + 'legitimieren', + 'lehnen', + 'lehren', + 'leiern', + 'leimen', + 'leisten', + 'leiten', + 'lenken', + 'lernen', + 'leuchten', + 'leugnen', + 'liberalisieren', + 'lichten', + 'liebäugeln', + 'lieben', + 'liefern', + 'liften', + 'liieren', + 'limitieren', + 'lindern', + 'liniieren', + 'liquidieren', + 'lispeln', + 'listen', + 'lithographieren', + 'lizenzieren', + 'loben', + 'lobhudeln', + 'lochen', + 'löchern', + 'locken', + 'löcken', + 'lodern', + 'löffeln', + 'logieren', + 'lohnen', + 'lokalisieren', + 'losen', + 'lösen', + 'loten', + 'löten', + 'lotsen', + 'luchsen', + 'lüften', + 'lullen', + 'lümmeln', + 'lungern', + 'lüpfen', + 'lutschen', + 'lynchen', + 'mäandern', + 'machen', + 'magnetisieren', + 'mähen', + 'mahlen', + 'mahnen', + 'majorisieren', + 'makeln', + 'mäkeln', + 'malen', + 'malmen', + 'malochen', + 'malträtieren', + 'mampfen', + 'managen', + 'mangeln', + 'manifestieren', + 'manipulieren', + 'manövrieren', + 'marginalisieren', + 'marinieren', + 'markieren', + 'marmorieren', + 'marodieren', + 'marschieren', + 'martern', + 'maskieren', + 'massakrieren', + 'massieren', + 'mäßigen', + 'mästen', + 'masturbieren', + 'materialisieren', + 'mattieren', + 'mauern', + 'maulen', + 'maunzen', + 'mauscheln', + 'mausen', + 'mausern', + 'maximieren', + 'mechanisieren', + 'meckern', + 'meditieren', + 'mehren', + 'meinen', + 'meißeln', + 'meistern', + 'melden', + 'melieren', + 'memorieren', + 'mendeln', + 'mengen', + 'menscheln', + 'menstruieren', + 'merken', + 'metallisieren', + 'metzeln', + 'meucheln', + 'meutern', + 'miauen (Partizip II: miaut)', + 'miefen', + 'mieten', + 'mildern', + 'militarisieren', + 'mindern', + 'minimalisieren', + 'minimieren', + 'mischen', + 'missionieren', + 'misslingen', + 'mixen', + 'mobilisieren', + 'mobben', + 'möblieren', + 'möchten', + 'modellieren', + 'modeln', + 'moderieren', + 'modern', + 'modernisieren', + 'modifizieren', + 'modulieren', + 'mogeln', + 'mokieren', + 'monieren', + 'monopolisieren', + 'montieren', + 'moppen', + 'mopsen', + 'moralisieren', + 'morden', + 'morsen', + 'motivieren', + 'motorisieren', + 'motzen', + 'mucksen', + 'muffeln', + 'müffeln', + 'muhen', + 'mühen', + 'multiplizieren', + 'mumifizieren', + 'mummeln', + 'mümmeln', + 'munden', + 'münden', + 'munkeln', + 'münzen', + 'murmeln', + 'murren', + 'musizieren', + 'mustern', + 'mutmaßen', + 'nachäffen', + 'nachdunkeln', + 'nachhaken', + 'nachspionieren', + 'nächtigen', + 'nageln', + 'nagen', + 'nahen', + 'nähen', + 'nähern', + 'nähren', + 'narkotisieren', + 'narren', + 'naschen', + 'näseln', + 'nässen', + 'nationalisieren', + 'naturalisieren', + 'navigieren', + 'necken', + 'negieren', + 'neiden', + 'neigen', + 'neppen', + 'nerven', + 'nesteln', + 'neuern', + 'neutralisieren', + 'nicken', + 'nieseln', + 'niesen', + 'nippen', + 'nisten', + 'nivellieren', + 'nölen', + 'nominieren', + 'nörgeln', + 'normalisieren', + 'normieren', + 'notieren', + 'nötigen', + 'novellieren', + 'nuancieren', + 'nuckeln', + 'nummerieren', + 'nuscheln', + 'nutzen', + 'nützen', + 'obduzieren', + 'objektivieren', + 'observieren', + 'obstruieren', + 'offenbaren', + 'offerieren', + 'öffnen', + 'ohrfeigen', + 'okkupieren', + 'oktroyieren', + 'ölen', + 'onanieren', + 'ontologisieren', + 'operieren', + 'opfern', + 'opponieren', + 'optieren', + 'optimieren', + 'orakeln', + 'ordern', + 'ordinieren', + 'ordnen', + 'organisieren', + 'orgeln', + 'orientieren', + 'orten', + 'oszillieren', + 'outen', + 'oxidieren', + 'oxydieren', + 'pachten', + 'packen', + 'paddeln', + 'paffen', + 'paginieren', + 'palavern', + 'paneelieren', + 'panieren', + 'panschen', + 'pantschen', + 'panzern', + 'päppeln', + 'paradieren', + 'paralysieren', + 'parametrisieren', + 'paraphieren', + 'parfümieren', + 'parieren', + 'parken', + 'parkettieren', + 'parkieren', + 'parlieren', + 'parodieren', + 'partitionieren', + 'partizipieren', + 'parzellieren', + 'passen', + 'passieren', + 'passivieren', + 'pasteurisieren', + 'patentieren', + 'patrouillieren', + 'patschen', + 'pauken', + 'pausieren', + 'peilen', + 'peinigen', + 'peitschen', + 'pellen', + 'pendeln', + 'penetrieren', + 'pennen', + 'pensionieren', + 'perfektionieren', + 'perforieren', + 'perlen', + 'permutieren', + 'persiflieren', + 'personalisieren', + 'personifizieren', + 'pervertieren', + 'petzen', + 'pfählen', + 'pfeffern', + 'pferchen', + 'pflanzen', + 'pflastern', + 'pflücken', + 'pflügen', + 'pfriemeln', + 'pfropfen', + 'pfuschen', + 'phantasieren', + 'philosophieren', + 'phosphoreszieren', + 'photographieren', + 'phrasieren', + 'picheln', + 'picken', + 'piepsen', + 'piesacken', + 'pikieren', + 'pilgern', + 'pilotieren', + 'pimpern', + 'pinkeln', + 'pinseln', + 'pirschen', + 'pissen', + 'placken', + 'pladdern', + 'plädieren', + 'plagiieren', + 'planen', + 'planieren', + 'plänkeln', + 'planschen', + 'plantschen', + 'plappern', + 'platschen', + 'plätschern', + 'plätten', + 'plattieren', + 'platzen', + 'platzieren', + 'plaudern', + 'plombieren', + 'plumpsen', + 'plündern', + 'plustern', + 'pöbeln', + 'pochieren', + 'pointieren', + 'pökeln', + 'pokern', + 'polarisieren', + 'polemisieren', + 'polieren', + 'politisieren', + 'polstern', + 'poltern', + 'polymerisieren', + 'pomadisieren', + 'popeln', + 'popularisieren', + 'porträtieren', + 'posaunen', + 'posen', + 'posieren', + 'positionieren', + 'postieren', + 'postulieren', + 'potenzieren', + 'poussieren', + 'prädestinieren', + 'prahlen', + 'praktizieren', + 'prallen', + 'prämiieren', + 'prangen', + 'präparieren', + 'präsentieren', + 'prasseln', + 'prassen', + 'präzisieren', + 'predigen', + 'prellen', + 'preschen', + 'pressen', + 'pressieren', + 'prickeln', + 'privatisieren', + 'proben', + 'probieren', + 'problematisieren', + 'produzieren', + 'profanieren', + 'profilieren', + 'profitieren', + 'prognostizieren', + 'programmieren', + 'projektieren', + 'projizieren', + 'proklamieren', + 'promenieren', + 'promovieren', + 'propagieren', + 'prosten', + 'prostituieren', + 'protegieren', + 'protestieren', + 'protokollieren', + 'protzen', + 'provozieren', + 'prozessieren', + 'prüfen', + 'prügeln', + 'prunken', + 'pubertieren', + 'publizieren', + 'pudern', + 'pulen', + 'pullern', + 'pulsen', + 'pulsieren', + 'pulverisieren', + 'pulvern', + 'pumpen', + 'punktieren', + 'pupen', + 'pupsen', + 'purzeln', + 'pusten', + 'putzen', + 'puzzeln', + 'quadrieren', + 'quälen', + 'qualifizieren', + 'qualmen', + 'quantifizieren', + 'quartieren', + 'quasseln', + 'quatschen', + 'quengeln', + 'querulieren', + 'quetschen', + 'quieken', + 'quietschen', + 'quirlen', + 'quittieren', + 'quotieren', + 'rabattieren', + 'rächen', + 'rackern', + 'radeln', + 'rädern', + 'radieren', + 'radikalisieren', + 'raffen', + 'raffinieren', + 'ragen', + 'rahmen', + 'räkeln', + 'rammeln', + 'rammen', + 'ramponieren', + 'randalieren', + 'rangeln', + 'rangieren', + 'ranken', + 'rappeln', + 'rascheln', + 'rasen', + 'rasieren', + 'räsonieren', + 'raspeln', + 'rasseln', + 'rasten', + 'rastern', + 'ratifizieren', + 'rationalisieren', + 'rationieren', + 'rätseln', + 'rattern', + 'rauben', + 'räubern', + 'rauchen', + 'räuchern', + 'raufen', + 'räumen', + 'raunen', + 'raunzen', + 'rauschen', + 'räuspern', + 'reagieren', + 'realisieren', + 'reanimieren', + 'rebellieren', + 'recherchieren', + 'rechnen', + 'recken', + 'recyceln', + 'reden', + 'redigieren', + 'reduzieren', + 'referenzieren', + 'referieren', + 'reffen', + 'regeln', + 'regen', + 'regenerieren', + 'regieren', + 'registrieren', + 'reglementieren', + 'regnen', + 'regulieren', + 'rehabilitieren', + 'reichen', + 'reifen', + 'reihen', + 'reihern', + 'reimen', + 'reinigen', + 'reisen', + 'reizen', + 'rekapitulieren', + 'rekeln', + 'reklamieren', + 'rekognoszieren', + 'rekonvaleszieren', + 'rekrutieren', + 'rekultivieren', + 'relationieren', + 'relativieren', + 'relegieren', + 'relokalisieren', + 'rempeln', + 'renaturieren', + 'renegieren', + 'renitieren', + 'renommieren', + 'renoncieren', + 'renovieren', + 'rentieren', + 'reparieren', + 'repetieren', + 'replizieren', + 'repräsentieren', + 'requirieren', + 'reservieren', + 'residieren', + 'respektieren', + 'restaurieren', + 'restituieren', + 'resultieren', + 'resümieren', + 'retardieren', + 'retirieren', + 'retten', + 'retuschieren', + 'reuen', + 'reüssieren', + 'revanchieren', + 'reversieren', + 'revieren', + 'revitalisieren', + 'revoltieren', + 'revolutionieren', + 'rezensieren', + 'rezipieren', + 'richten', + 'riegeln', + 'rieseln', + 'ringeln', + 'riskieren', + 'ritualisieren', + 'ritzen', + 'rivalisieren', + 'robben', + 'röcheln', + 'rochieren', + 'rodeln', + 'roden', + 'rollen', + 'rosten', + 'rösten', + 'rotieren', + 'rotten', + 'rotzen', + 'rubbeln', + 'rubrizieren', + 'ruckeln', + 'rucken', + 'rücken', + 'rückkoppeln', + 'rudern', + 'rügen', + 'ruhen', + 'rühmen', + 'ruinieren', + 'rülpsen', + 'rumoren', + 'rumpeln', + 'rümpfen', + 'runden', + 'runzeln', + 'rupfen', + 'rußen', + 'rüsten', + 'rutschen', + 'rütteln', + 'sabbeln', + 'sabbern', + 'sabotieren', + 'sächseln', + 'sacken', + 'säen', + 'sagen', + 'sägen', + 'säkularisieren', + 'salben', + 'salutieren', + 'salzen', + 'sammeln', + 'sanieren', + 'sanktionieren', + 'satteln', + 'sättigen', + 'saturieren', + 'säubern', + 'säuern', + 'säugen', + 'säumen', + 'säuseln', + 'sausen', + 'schaben', + 'schachern', + 'schaden', + 'schädigen', + 'schäkern', + 'schälen', + 'schalten', + 'schämen', + 'scharen', + 'schärfen', + 'scharren', + 'scharwenzeln', + 'schattieren', + 'schätzen', + 'schaudern', + 'schauen', + 'schauern', + 'schaufeln', + 'schaukeln', + 'schäumen', + 'schauspielern', + 'scheitern', + 'schellen', + 'schematisieren', + 'schenken', + 'scheppern', + 'scherzen', + 'scheuchen', + 'scheuen', + 'scheuern', + 'schichten', + 'schicken', + 'schielen', + 'schienen', + 'schikanieren', + 'schildern', + 'schillern', + 'schimmeln', + 'schimmern', + 'schimpfen', + 'schippen', + 'schippern', + 'schirmen', + 'schlabbern', + 'schlängeln', + 'schlauchen', + 'schlecken', + 'schleckern', + 'schleimen', + 'schlemmen', + 'schlendern', + 'schleppen', + 'schleudern', + 'schlichten', + 'schlingern', + 'schlittern', + 'schlitzen', + 'schlottern', + 'schluchzen', + 'schlucken', + 'schludern', + 'schlummern', + 'schlüpfen', + 'schlürfen', + 'schmarotzen', + 'schmatzen', + 'schmauchen', + 'schmausen', + 'schmecken', + 'schmeicheln', + 'schmerzen', + 'schmiegen', + 'schmieren', + 'schminken', + 'schmirgeln', + 'schmökern', + 'schmollen', + 'schmoren', + 'schmücken', + 'schmuggeln', + 'schmunzeln', + 'schmutzen', + 'schnäbeln', + 'schnabulieren', + 'schnackeln', + 'schnallen', + 'schnalzen', + 'schnappen', + 'schnarchen', + 'schnarren', + 'schnattern', + 'schnaufen', + 'schnauzen', + 'schnäuzen', + 'schneidern', + 'schnellen', + 'schnetzeln', + 'schniegeln', + 'schnipseln', + 'schnitzeln', + 'schnitzen', + 'schnörkeln', + 'schnorren', + 'schnüffeln', + 'schnuppern', + 'schnüren', + 'schnurren', + 'schockieren', + 'schonen', + 'schönen', + 'schöpfen', + 'schraffieren', + 'schrämen', + 'schrammen', + 'schrauben', + 'schreinern', + 'schriftstellern', + 'schrillen', + 'schröpfen', + 'schrubben', + 'schrumpeln', + 'schrumpfen', + 'schuften', + 'schulden', + 'schulen', + 'schultern', + 'schummeln', + 'schunkeln', + 'schüren', + 'schürfen', + 'schurigeln', + 'schürzen', + 'schustern', + 'schütteln', + 'schütten', + 'schützen', + 'schwabbeln', + 'schwäbeln', + 'schwächen', + 'schwadronieren', + 'schwafeln', + 'schwängern', + 'schwanken', + 'schwänzeln', + 'schwänzen', + 'schwappen', + 'schwärmen', + 'schwatzen', + 'schweben', + 'schweifen', + 'schweinigeln', + 'schweißen', + 'schwelen', + 'schwelgen', + 'schwenken', + 'schwindeln', + 'schwirren', + 'sedimentieren', + 'segeln', + 'segmentieren', + 'segnen', + 'sehnen', + 'seihen', + 'sekkieren', + 'sekundieren', + 'selektieren', + 'sengen', + 'senken', + 'sensibilisieren', + 'separieren', + 'servieren', + 'setzen', + 'seufzen', + 'sexualisieren', + 'sezieren', + 'sichern', + 'sichten', + 'sickern', + 'sieben', + 'siechen', + 'siedeln', + 'siegeln', + 'siegen', + 'siezen', + 'signalisieren', + 'signieren', + 'simplifizieren', + 'simulieren', + 'sirren', + 'sistieren', + 'skalieren', + 'skalpieren', + 'skandieren', + 'skaten', + 'skizzieren', + 'solidarisieren', + 'sondieren', + 'sonnen', + 'sorgen', + 'sortieren', + 'soufflieren', + 'soupieren', + 'sowjetisieren', + 'sozialisieren', + 'spachteln', + 'spähen', + 'spannen', + 'sparen', + 'spaßen', + 'spazieren', + 'speicheln', + 'speichern', + 'speisen', + 'spekulieren', + 'spenden', + 'spendieren', + 'sperren', + 'spezialisieren', + 'spezifizieren', + 'spicken', + 'spiegeln', + 'spielen', + 'spintisieren', + 'spionieren', + 'spitzen', + 'splittern', + 'sponsern', + 'spornen', + 'spötteln', + 'spotten', + 'sprayen', + 'spreizen', + 'sprengen', + 'sprenkeln', + 'sprinten', + 'spritzen', + 'sprudeln', + 'sprühen', + 'spucken', + 'spuken', + 'spulen', + 'spülen', + 'spuren', + 'spüren', + 'spurten', + 'sputen', + 'stabilisieren', + 'stagnieren', + 'stählen', + 'staksen', + 'stammeln', + 'stammen', + 'stampfen', + 'standardisieren', + 'stänkern', + 'stanzen', + 'stapeln', + 'stapfen', + 'stärken', + 'starren', + 'starten', + 'stationieren', + 'statuieren', + 'stäuben', + 'stauchen', + 'stauen', + 'staunen', + 'stäupen', + 'steigern', + 'steinigen', + 'stellen', + 'stemmen', + 'stempeln', + 'stenografieren', + 'stenographieren', + 'steppen', + 'sterilisieren', + 'steuern', + 'stibitzen', + 'sticheln', + 'sticken', + 'stieren', + 'stiften', + 'stilisieren', + 'stillen', + 'stimmen', + 'stimulieren', + 'stöbern', + 'stochern', + 'stocken', + 'stöhnen', + 'stolpern', + 'stolzieren', + 'stopfen', + 'stoppeln', + 'stoppen', + 'stöpseln', + 'stören', + 'stornieren', + 'stottern', + 'strafen', + 'straffen', + 'strahlen', + 'strampeln', + 'stranden', + 'strangulieren', + 'strapazieren', + 'sträuben', + 'straucheln', + 'streben', + 'strecken', + 'streicheln', + 'streifen', + 'stressen', + 'streuen', + 'stricken', + 'strömen', + 'strotzen', + 'strudeln', + 'strukturieren', + 'stückeln', + 'studieren', + 'stülpen', + 'stümpern', + 'stunden', + 'stürmen', + 'stürzen', + 'stutzen', + 'stützen', + 'sublimieren', + 'substituieren', + 'subsumieren', + 'subtrahieren', + 'subventionieren', + 'suchen', + 'sudeln', + 'suggerieren', + 'suhlen', + 'sühnen', + 'sülzen', + 'summen', + 'summieren', + 'sündigen', + 'surfen', + 'surren', + 'suspendieren', + 'symbolisieren', + 'sympathisieren', + 'synchronisieren', + 'synthetisieren', + 'systematisieren', + 'tabellarisieren', + 'tabellieren', + 'tabuisieren', + 'tadeln', + 'tafeln', + 'täfeln', + 'tagen', + 'taillieren', + 'takeln', + 'taktieren', + 'tändeln', + 'tangieren', + 'tanken', + 'tänzeln', + 'tanzen', + 'tapern', + 'tapezieren', + 'tappen', + 'tapsen', + 'tarieren', + 'tarnen', + 'tasten', + 'tätigen', + 'tätowieren', + 'tätscheln', + 'tattern', + 'tauchen', + 'tauen', + 'taufen', + 'taugen', + 'taumeln', + 'tauschen', + 'täuschen', + 'taxieren', + 'teeren', + 'teilen', + 'telefonieren', + 'telegrafieren', + 'telegraphieren', + 'temperieren', + 'tendieren', + 'terminieren', + 'terrorisieren', + 'testen', + 'testieren', + 'texten', + 'thematisieren', + 'theoretisieren', + 'therapieren', + 'thronen', + 'ticken', + 'tigern', + 'tilgen', + 'tingeln', + 'tippeln', + 'tippen', + 'tirilieren', + 'tischlern', + 'titulieren', + 'toasten', + 'toben', + 'tolerieren', + 'tollen', + 'tönen', + 'töpfern', + 'torkeln', + 'torpedieren', + 'tosen', + 'töten', + 'touchieren', + 'toupieren', + 'traben', + 'trachten', + 'tradieren', + 'trainieren', + 'traktieren', + 'trällern', + 'trampeln', + 'trampen', + 'tranchieren', + 'tränken', + 'transferieren', + 'transpirieren', + 'transplantieren', + 'transponieren', + 'transportieren', + 'trassieren', + 'tratschen', + 'trauen', + 'trauern', + 'träufeln', + 'träumen', + 'travestieren', + 'tremolieren', + 'trennen', + 'tricksen', + 'triezen', + 'triggern', + 'trillern', + 'trimmen', + 'trippeln', + 'triumphieren', + 'trivialisieren', + 'trocknen', + 'trödeln', + 'trommeln', + 'trompeten', + 'tröpfeln', + 'tropfen', + 'trösten', + 'trotteln', + 'trotzen', + 'trüben', + 'trudeln', + 'trutzen', + 'tuckern', + 'tüfteln', + 'tummeln', + 'tünchen', + 'tunken', + 'tüpfeln', + 'tupfen', + 'türmen', + 'turnen', + 'turteln', + 'tuscheln', + 'tuschen', + 'tuten', + 'typisieren', + 'tyrannisieren', + 'üben', + 'überbrücken', + 'überdachen', + 'überfrachten', + 'überlasten', + 'übermannen', + 'übernachten', + 'überqueren', + 'überraschen', + 'übersetzen', + 'übertölpeln', + 'übertrumpfen', + 'überwältigen', + 'überwintern', + 'umarmen', + 'umfloren', + 'umgarnen', + 'ummanteln', + 'umpolen', + 'umranden', + 'umringen', + 'umschiffen', + 'umtopfen', + 'umwölken', + 'umzingeln', + 'unifizieren', + 'unken', + 'unterjochen', + 'unterkellern', + 'unterminieren', + 'untertunneln', + 'urbanisieren', + 'urinieren', + 'usurpieren', + 'vagabundieren', + 'validieren', + 'variieren', + 'vegetieren', + 'ventilieren', + 'verallgemeinern', + 'veralten', + 'veranschaulichen', + 'veräppeln', + 'verargen', + 'verarmen', + 'verarschen', + 'verästeln', + 'verballhornen', + 'verbarrikadieren', + 'verbiestern', + 'verbittern', + 'verblassen', + 'verblöden', + 'verbrämen', + 'verbrüdern', + 'verbünden', + 'verchromen', + 'verdächtigen', + 'verdauen', + 'verdeutlichen', + 'verdicken', + 'verdingen', + 'verdoppeln', + 'verdorren', + 'verdrecken', + 'verdummen', + 'verdunkeln', + 'verdünnen', + 'verdünnisieren', + 'verdüstern', + 'verdutzen', + 'veredeln', + 'verehelichen', + 'vereidigen', + 'vereinen', + 'vereinfachen', + 'vereinzeln', + 'vereiteln', + 'verengen', + 'verewigen', + 'verfeinden', + 'verfeinern', + 'verfemen', + 'verfilzen', + 'verfinstern', + 'verflüchtigen', + 'verflüssigen', + 'verfrachten', + 'verfremden', + 'verfrühen', + 'verfugen', + 'vergackeiern', + 'vergällen', + 'vergattern', + 'vergegenwärtigen', + 'vergeistigen', + 'vergeuden', + 'vergewaltigen', + 'vergewissern', + 'vergiften', + 'vergilben', + 'vergipsen', + 'vergittern', + 'vergletschern', + 'vergnügen', + 'vergöttern', + 'vergrätzen', + 'vergraulen', + 'vergreisen', + 'vergröbern', + 'vergrößern', + 'vergüten', + 'verheddern', + 'verheeren', + 'verheimlichen', + 'verherrlichen', + 'verhohnepiepeln', + 'verhohnepipeln', + 'verifizieren', + 'verinnerlichen', + 'verjüngen', + 'verkabeln', + 'verklausulieren', + 'verkleinern', + 'verklickern', + 'verknappen', + 'verknöchern', + 'verkorksen', + 'verkörpern', + 'verköstigen', + 'verkrusten', + 'verkupfern', + 'verlängern', + 'verletzen', + 'verleumden', + 'verlottern', + 'verludern', + 'verlustieren', + 'vermählen', + 'vermarkten', + 'vermasseln', + 'vermiesen', + 'verminen', + 'vermöbeln', + 'vermummen', + 'vermurksen', + 'vermuten', + 'vernachlässigen', + 'vernarben', + 'vernetzen', + 'vernichten', + 'vernickeln', + 'verniedlichen', + 'vernünfteln', + 'veröden', + 'verpatzen', + 'verpesten', + 'verpflichten', + 'verplempern', + 'verplomben', + 'verpönen', + 'verproviantieren', + 'verquicken', + 'verramschen', + 'verrecken', + 'verrenken', + 'verringern', + 'versanden', + 'versauen', + 'verschachteln', + 'verschandeln', + 'verscheißern', + 'verscherbeln', + 'verschiffen', + 'verschlammen', + 'verschlimmern', + 'verschönern', + 'verschrotten', + 'verschüchtern', + 'verschwenden', + 'verseuchen', + 'versilbern', + 'versinnbildlichen', + 'versklaven', + 'versöhnen', + 'verspäten', + 'verspießern', + 'verstaatlichen', + 'verständigen', + 'verstauben', + 'versteifen', + 'versteinern', + 'verstopfen', + 'verstümmeln', + 'verstummen', + 'versumpfen', + 'versüßen', + 'vertäuen', + 'verteidigen', + 'verteuern', + 'verteufeln', + 'vertiefen', + 'vertonen', + 'verübeln', + 'verulken', + 'verunglimpfen', + 'verunstalten', + 'vervielfältigen', + 'verwaisen', + 'verweltlichen', + 'verwesen', + 'verwirren', + 'verwittern', + 'verwöhnen', + 'verwunden', + 'verwüsten', + 'verzärteln', + 'verzetteln', + 'verzichten', + 'verzinsen', + 'verzweigen', + 'vespern', + 'vibrieren', + 'vierteln', + 'virtualisieren', + 'visieren', + 'visitieren', + 'visualisieren', + 'vitaminisieren', + 'vögeln', + 'voltigieren', + 'vormontieren', + 'votieren', + 'vulkanisieren', + 'wabern', + 'wachen', + 'wackeln', + 'wagen', + 'wählen', + 'wähnen', + 'währen', + 'walken', + 'wallen', + 'walten', + 'walzen', + 'wälzen', + 'wandeln', + 'wandern', + 'wanken', + 'wappnen', + 'wärmen', + 'warnen', + 'warten', + 'wässern', + 'waten', + 'watscheln', + 'wattieren', + 'wechseln', + 'wecken', + 'wedeln', + 'wegarbeiten', + 'wegdiskutieren', + 'wegdrängen', + 'wegdrehen', + 'wegschnippen', + 'wehen', + 'wehren', + 'weiden', + 'weigern', + 'weihen', + 'weilen', + 'weinen', + 'weiten', + 'welken', + 'werkeln', + 'werken', + 'werten', + 'wetten', + 'wettern', + 'wetzen', + 'wichsen', + 'wickeln', + 'widerstehen', + 'widmen', + 'wiederkäuen', + 'wiegeln', + 'wiehern', + 'wienern', + 'wildern', + 'wimmeln', + 'wimmern', + 'windeln', + 'winkeln', + 'winken', + 'winseln', + 'wippen', + 'wirbeln', + 'wirken', + 'wischen', + 'wispern', + 'witzeln', + 'wogen', + 'wohnen', + 'wölben', + 'wuchern', + 'wuchten', + 'wühlen', + 'wummern', + 'wundern', + 'wünschen', + 'würdigen', + 'würfeln', + 'würgen', + 'wurmen', + 'wursteln', + 'wurzeln', + 'würzen', + 'wuscheln', + 'wuseln', + 'wüten', + 'xerographieren', + 'zagen', + 'zahlen', + 'zählen', + 'zähmen', + 'zahnen', + 'zanken', + 'zapfen', + 'zappeln', + 'zaubern', + 'zaudern', + 'zäumen', + 'zausen', + 'zechen', + 'zehren', + 'zeichnen', + 'zeigen', + 'zeitigen', + 'zelebrieren', + 'zelten', + 'zementieren', + 'zensieren', + 'zentralisieren', + 'zentrieren', + 'zentrifugieren', + 'zerdeppern', + 'zerfetzen', + 'zerfurchen', + 'zerkleinern', + 'zerknautschen', + 'zerren', + 'zertifizieren', + 'zertrümmern', + 'zetern', + 'zeugen', + 'ziegeln', + 'zielen', + 'ziemen', + 'zieren', + 'zimmern', + 'zirkeln', + 'zirkulieren', + 'zirpen', + 'zischeln', + 'zischen', + 'ziselieren', + 'zitieren', + 'zittern', + 'zivilisieren', + 'zocken', + 'zögern', + 'zollen', + 'zoomen', + 'zotteln', + 'zublinzeln', + 'züchten', + 'züchtigen', + 'zuckeln', + 'zucken', + 'zücken', + 'zuckern', + 'zügeln', + 'zuhören', + 'zumuten', + 'zündeln', + 'zünden', + 'züngeln', + 'zupfen', + 'zureden', + 'zürnen', + 'zurren', + 'zurückstufen', + 'zuwenden', + 'zwängen', + 'zweifeln', + 'zwicken', + 'zwiebeln', + 'zwinkern', + 'zwirbeln', + 'zwitschern', +]; diff --git a/src/modules/address/index.ts b/src/modules/address/index.ts index 7c55bb51325..4c2469e1b7e 100644 --- a/src/modules/address/index.ts +++ b/src/modules/address/index.ts @@ -86,7 +86,7 @@ export class Address { format = this.faker.datatype.number(formats.length - 1); } - return this.faker.fake(formats[format]); + return this.faker.helpers.fake(formats[format]); } /** @@ -171,7 +171,7 @@ export class Address { const format = this.faker.helpers.arrayElement( this.faker.definitions.address.street ); - return this.faker.fake(format); + return this.faker.helpers.fake(format); } /** @@ -212,7 +212,7 @@ export class Address { const formats = this.faker.definitions.address.street_address; const format = formats[useFullAddress ? 'full' : 'normal']; - return this.faker.fake(format); + return this.faker.helpers.fake(format); } /** diff --git a/src/modules/company/index.ts b/src/modules/company/index.ts index 968afbbfcbe..1dce91fd935 100644 --- a/src/modules/company/index.ts +++ b/src/modules/company/index.ts @@ -45,7 +45,7 @@ export class Company { format = this.faker.datatype.number(formats.length - 1); } - return this.faker.fake(formats[format]); + return this.faker.helpers.fake(formats[format]); } /** @@ -88,9 +88,11 @@ export class Company { * faker.company.catchPhrase() // 'Upgradable systematic flexibility' */ catchPhrase(): string { - return this.faker.fake( - '{{company.catchPhraseAdjective}} {{company.catchPhraseDescriptor}} {{company.catchPhraseNoun}}' - ); + return [ + this.catchPhraseAdjective(), + this.catchPhraseDescriptor(), + this.catchPhraseNoun(), + ].join(' '); } /** @@ -100,9 +102,7 @@ export class Company { * faker.company.bs() // 'cultivate synergistic e-markets' */ bs(): string { - return this.faker.fake( - '{{company.bsBuzz}} {{company.bsAdjective}} {{company.bsNoun}}' - ); + return [this.bsBuzz(), this.bsAdjective(), this.bsNoun()].join(' '); } /** diff --git a/src/modules/fake/index.ts b/src/modules/fake/index.ts index 9dff1c8ec36..a60acd5b05c 100644 --- a/src/modules/fake/index.ts +++ b/src/modules/fake/index.ts @@ -1,8 +1,10 @@ import type { Faker } from '../..'; -import { FakerError } from '../../errors/faker-error'; +import { deprecated } from '../../internal/deprecated'; /** * Generator method for combining faker methods based on string input. + * + * @deprecated */ export class Fake { constructor(private readonly faker: Faker) { @@ -47,6 +49,7 @@ export class Fake { * @param str The template string that will get interpolated. Must not be empty. * * @see faker.helpers.mustache() to use custom functions for resolution. + * @see faker.helpers.fake() * * @example * faker.fake('{{name.lastName}}') // 'Barrows' @@ -55,93 +58,16 @@ export class Fake { * faker.fake('Good Morning {{name.firstName}}!') // 'Good Morning Estelle!' * faker.fake('You can call me at {{phone.number(!## ### #####!)}}.') // 'You can call me at 202 555 973722.' * faker.fake('I flipped the coin an got: {{helpers.arrayElement(["heads", "tails"])}}') // 'I flipped the coin an got: tails' + * + * @deprecated Use faker.helpers.fake() instead. */ fake(str: string): string { - // if incoming str parameter is not provided, return error message - if (typeof str !== 'string' || str.length === 0) { - throw new FakerError('string parameter is required!'); - } - - // find first matching {{ and }} - const start = str.search(/{{[a-z]/); - const end = str.indexOf('}}', start); - - // if no {{ and }} is found, we are done - if (start === -1 || end === -1) { - return str; - } - - // extract method name from between the {{ }} that we found - // for example: {{name.firstName}} - const token = str.substring(start + 2, end + 2); - let method = token.replace('}}', '').replace('{{', ''); - - // extract method parameters - const regExp = /\(([^)]+)\)/; - const matches = regExp.exec(method); - let parameters = ''; - if (matches) { - method = method.replace(regExp, ''); - parameters = matches[1]; - } - - // split the method into module and function - const parts = method.split('.'); - - let currentModuleOrMethod: unknown = this.faker; - let currentDefinitions: unknown = this.faker.definitions; - - // Search for the requested method or definition - for (const part of parts) { - currentModuleOrMethod = currentModuleOrMethod?.[part]; - currentDefinitions = currentDefinitions?.[part]; - } - - // Make method executable - let fn: (args?: unknown) => unknown; - if (typeof currentModuleOrMethod === 'function') { - fn = currentModuleOrMethod as (args?: unknown) => unknown; - } else if (Array.isArray(currentDefinitions)) { - fn = () => - this.faker.helpers.arrayElement(currentDefinitions as unknown[]); - } else { - throw new FakerError(`Invalid module method or definition: ${method} -- faker.${method} is not a function -- faker.definitions.${method} is not an array`); - } - - // assign the function from the module.function namespace - fn = fn.bind(this); - - // If parameters are populated here, they are always going to be of string type - // since we might actually be dealing with an object or array, - // we always attempt to the parse the incoming parameters into JSON - let params: unknown; - // Note: we experience a small performance hit here due to JSON.parse try / catch - // If anyone actually needs to optimize this specific code path, please open a support issue on github - try { - params = JSON.parse(parameters); - } catch (err) { - // since JSON.parse threw an error, assume parameters was actually a string - params = parameters; - } - - let result: string; - if (typeof params === 'string' && params.length === 0) { - result = String(fn()); - } else { - result = String(fn(params)); - } - - // Replace the found tag with the returned fake value - // We cannot use string.replace here because the result might contain evaluated characters - const res = str.substring(0, start) + result + str.substring(end + 2); - - if (res === '') { - return ''; - } - - // return the response recursively until we are done finding all tags - return this.fake(res); + deprecated({ + deprecated: 'faker.fake()', + proposed: 'faker.helpers.fake()', + since: '7.4', + until: '8.0', + }); + return this.faker.helpers.fake(str); } } diff --git a/src/modules/helpers/index.ts b/src/modules/helpers/index.ts index a68b66ae9de..b4d73b2e934 100644 --- a/src/modules/helpers/index.ts +++ b/src/modules/helpers/index.ts @@ -1,4 +1,5 @@ import type { Faker } from '../..'; +import { FakerError } from '../../errors/faker-error'; import { luhnCheckValue } from './luhn-check'; /** @@ -454,4 +455,134 @@ export class Helpers { return arrayCopy.slice(min); } + + /** + * Generator for combining faker methods based on a static string input. + * + * Note: We recommend using string template literals instead of `fake()`, + * which are faster and strongly typed (if you are using TypeScript), + * e.g. ``const address = `${faker.address.zipCode()} ${faker.address.city()}`;`` + * + * This method is useful if you have to build a random string from a static, non-executable source + * (e.g. string coming from a user, stored in a database or a file). + * + * It checks the given string for placeholders and replaces them by calling faker methods: + * + * ```js + * const hello = faker.helpers.fake('Hi, my name is {{name.firstName}} {{name.lastName}}!') + * ``` + * + * This would use the `faker.name.firstName()` and `faker.name.lastName()` method to resolve the placeholders respectively. + * + * It is also possible to provide parameters. At first, they will be parsed as json, + * and if that isn't possible, we will fall back to string: + * + * ```js + * const message = faker.helpers.fake(`You can call me at {{phone.number(+!# !## #### #####!)}}.') + * ``` + * + * Currently it is not possible to set more than a single parameter. + * + * It is also NOT possible to use any non-faker methods or plain javascript in such templates. + * + * @param str The template string that will get interpolated. Must not be empty. + * + * @see faker.helpers.mustache() to use custom functions for resolution. + * + * @example + * faker.helpers.fake('{{name.lastName}}') // 'Barrows' + * faker.helpers.fake('{{name.lastName}}, {{name.firstName}} {{name.suffix}}') // 'Durgan, Noe MD' + * faker.helpers.fake('This is static test.') // 'This is static test.' + * faker.helpers.fake('Good Morning {{name.firstName}}!') // 'Good Morning Estelle!' + * faker.helpers.fake('You can call me at {{phone.number(!## ### #####!)}}.') // 'You can call me at 202 555 973722.' + * faker.helpers.fake('I flipped the coin an got: {{helpers.arrayElement(["heads", "tails"])}}') // 'I flipped the coin an got: tails' + */ + fake(str: string): string { + // if incoming str parameter is not provided, return error message + if (typeof str !== 'string' || str.length === 0) { + throw new FakerError('string parameter is required!'); + } + + // find first matching {{ and }} + const start = str.search(/{{[a-z]/); + const end = str.indexOf('}}', start); + + // if no {{ and }} is found, we are done + if (start === -1 || end === -1) { + return str; + } + + // extract method name from between the {{ }} that we found + // for example: {{name.firstName}} + const token = str.substring(start + 2, end + 2); + let method = token.replace('}}', '').replace('{{', ''); + + // extract method parameters + const regExp = /\(([^)]+)\)/; + const matches = regExp.exec(method); + let parameters = ''; + if (matches) { + method = method.replace(regExp, ''); + parameters = matches[1]; + } + + // split the method into module and function + const parts = method.split('.'); + + let currentModuleOrMethod: unknown = this.faker; + let currentDefinitions: unknown = this.faker.definitions; + + // Search for the requested method or definition + for (const part of parts) { + currentModuleOrMethod = currentModuleOrMethod?.[part]; + currentDefinitions = currentDefinitions?.[part]; + } + + // Make method executable + let fn: (args?: unknown) => unknown; + if (typeof currentModuleOrMethod === 'function') { + fn = currentModuleOrMethod as (args?: unknown) => unknown; + } else if (Array.isArray(currentDefinitions)) { + fn = () => + this.faker.helpers.arrayElement(currentDefinitions as unknown[]); + } else { + throw new FakerError(`Invalid module method or definition: ${method} +- faker.${method} is not a function +- faker.definitions.${method} is not an array`); + } + + // assign the function from the module.function namespace + fn = fn.bind(this); + + // If parameters are populated here, they are always going to be of string type + // since we might actually be dealing with an object or array, + // we always attempt to the parse the incoming parameters into JSON + let params: unknown; + // Note: we experience a small performance hit here due to JSON.parse try / catch + // If anyone actually needs to optimize this specific code path, please open a support issue on github + try { + params = JSON.parse(parameters); + } catch (err) { + // since JSON.parse threw an error, assume parameters was actually a string + params = parameters; + } + + let result: string; + if (typeof params === 'string' && params.length === 0) { + result = String(fn()); + } else { + result = String(fn(params)); + } + + // Replace the found tag with the returned fake value + // We cannot use string.replace here because the result might contain evaluated characters + const res = str.substring(0, start) + result + str.substring(end + 2); + + if (res === '') { + return ''; + } + + // return the response recursively until we are done finding all tags + return this.fake(res); + } } diff --git a/src/modules/internet/user-agent.ts b/src/modules/internet/user-agent.ts index 046758d4821..972b25741e8 100644 --- a/src/modules/internet/user-agent.ts +++ b/src/modules/internet/user-agent.ts @@ -44,58 +44,41 @@ import type { Faker } from '../..'; -export type Arch = 'lin' | 'mac' | 'win'; +type OS = 'lin' | 'mac' | 'win'; -export function generate(faker: Faker): string { - function rnd( - a?: string[] | number | Record, - b?: number - ): string | number { - //calling rnd() with no arguments is identical to rnd(0, 100) - a = a || 0; - b = b || 100; - - if (typeof b === 'number' && typeof a === 'number') { - // 9/2018 - Added faker random to ensure mersenne and seed - return faker.datatype.number({ min: a, max: b }); - } +type Browser = 'chrome' | 'iexplorer' | 'firefox' | 'safari' | 'opera'; - if (Array.isArray(a)) { - //returns a random element from array (a), even weighting - return faker.helpers.arrayElement(a); - } - - if (a && typeof a === 'object') { - //returns a random key from the passed object; keys are weighted by the decimal probability in their value - return ((obj) => { - const rand = (rnd(0, 100) as number) / 100; - let min = 0; - let max = 0; - let return_val: string; +/** + * Generates a random user-agent. + * + * @param faker An existing faker instance. + */ +export function generate(faker: Faker): string { + const weightedKeyFromObject = >( + obj: T + ): keyof T => { + //returns a random key from the passed object; keys are weighted by the decimal probability in their value + const rand = faker.datatype.number({ min: 0, max: 100 }) / 100; + let min = 0; + let max = 0; + let return_val: string; - for (const key in obj) { - if (Object.prototype.hasOwnProperty.call(obj, key)) { - max = obj[key] + min; - return_val = key; - if (rand >= min && rand <= max) { - break; - } - min = min + obj[key]; - } + for (const key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) { + max = obj[key] + min; + return_val = key; + if (rand >= min && rand <= max) { + break; } - - return return_val; - })(a); + min = min + obj[key]; + } } - throw new TypeError( - // eslint-disable-next-line @typescript-eslint/restrict-template-expressions - `Invalid arguments passed to rnd. (${b ? `${a}, ${b}` : a})` - ); - } + return return_val; + }; - function randomLang(): string | number { - return rnd([ + const randomLang = (): string => + faker.helpers.arrayElement([ 'AB', 'AF', 'AN', @@ -193,80 +176,113 @@ export function generate(faker: Faker): string { 'YI', 'ZH', ]); - } - function randomBrowserAndOS(): Array { - const browser = rnd({ + const randomBrowserAndOS = (): [Browser, OS] => { + const browser: Browser = weightedKeyFromObject({ chrome: 0.45132810566, iexplorer: 0.27477061836, firefox: 0.19384170608, safari: 0.06186781118, opera: 0.01574236955, }); - const os = { - chrome: { win: 0.89, mac: 0.09, lin: 0.02 }, - firefox: { win: 0.83, mac: 0.16, lin: 0.01 }, - opera: { win: 0.91, mac: 0.03, lin: 0.06 }, - safari: { win: 0.04, mac: 0.96 }, - iexplorer: ['win'], - }; + const os: OS = weightedKeyFromObject( + { + chrome: { win: 0.89, mac: 0.09, lin: 0.02 }, + firefox: { win: 0.83, mac: 0.16, lin: 0.01 }, + opera: { win: 0.91, mac: 0.03, lin: 0.06 }, + safari: { win: 0.04, mac: 0.96 }, + iexplorer: { win: 1 }, + }[browser] + ); - return [browser, rnd(os[browser])]; - } + return [browser, os]; + }; - function randomProc(arch: Arch): string | number { + const randomProc = (arch: OS): string => { const procs = { lin: ['i686', 'x86_64'], mac: { Intel: 0.48, PPC: 0.01, 'U; Intel': 0.48, 'U; PPC': 0.01 }, win: ['', 'WOW64', 'Win64; x64'], }; - return rnd(procs[arch]); - } + const archValue = procs[arch]; + const proc = Array.isArray(archValue) + ? faker.helpers.arrayElement(archValue) + : weightedKeyFromObject(archValue); - function randomRevision(dots: number): string { + return proc; + }; + + const randomRevision = (dots: number): string => { let return_val = ''; //generate a random revision //dots = 2 returns .x.y where x & y are between 0 and 9 for (let x = 0; x < dots; x++) { - return_val += `.${rnd(0, 9)}`; + return_val += `.${faker.datatype.number({ min: 0, max: 9 })}`; } return return_val; - } + }; const version_string = { net() { - return [rnd(1, 4), rnd(0, 9), rnd(10000, 99999), rnd(0, 9)].join('.'); + return [ + faker.datatype.number({ min: 1, max: 4 }), + faker.datatype.number({ min: 0, max: 9 }), + faker.datatype.number({ min: 10000, max: 99999 }), + faker.datatype.number({ min: 0, max: 9 }), + ].join('.'); }, nt() { - return `${rnd(5, 6)}.${rnd(0, 3)}`; + return [ + faker.datatype.number({ min: 5, max: 6 }), + faker.datatype.number({ min: 0, max: 3 }), + ].join('.'); }, ie() { - return rnd(7, 11); + return faker.datatype.number({ min: 7, max: 11 }); }, trident() { - return `${rnd(3, 7)}.${rnd(0, 1)}`; + return [ + faker.datatype.number({ min: 3, max: 7 }), + faker.datatype.number({ min: 0, max: 1 }), + ].join('.'); }, osx(delim?: string) { - return [10, rnd(5, 10), rnd(0, 9)].join(delim || '.'); + return [ + 10, + faker.datatype.number({ min: 5, max: 10 }), + faker.datatype.number({ min: 0, max: 9 }), + ].join(delim || '.'); }, chrome() { - return [rnd(13, 39), 0, rnd(800, 899), 0].join('.'); + return [ + faker.datatype.number({ min: 13, max: 39 }), + 0, + faker.datatype.number({ min: 800, max: 899 }), + 0, + ].join('.'); }, presto() { - return `2.9.${rnd(160, 190)}`; + return `2.9.${faker.datatype.number({ min: 160, max: 190 })}`; }, presto2() { - return `${rnd(10, 12)}.00`; + return `${faker.datatype.number({ min: 10, max: 12 })}.00`; }, safari() { - return `${rnd(531, 538)}.${rnd(0, 2)}.${rnd(0, 2)}`; + return [ + faker.datatype.number({ min: 531, max: 538 }), + faker.datatype.number({ min: 0, max: 2 }), + faker.datatype.number({ min: 0, max: 2 }), + ].join('.'); }, }; - const browser = { - firefox(arch: Arch): string { + const browserMap = { + firefox(arch: OS): string { //https://developer.mozilla.org/en-US/docs/Gecko_user_agent_string_reference - const firefox_ver = `${rnd(5, 15)}${randomRevision(2)}`, + const firefox_ver = `${faker.datatype.number({ + min: 5, + max: 15, + })}${randomRevision(2)}`, gecko_ver = `Gecko/20100101 Firefox/${firefox_ver}`, proc = randomProc(arch), os_ver = @@ -287,19 +303,21 @@ export function generate(faker: Faker): string { if (ver >= 11) { //http://msdn.microsoft.com/en-us/library/ie/hh869301(v=vs.85).aspx - return `Mozilla/5.0 (Windows NT 6.${rnd(1, 3)}; Trident/7.0; ${rnd([ - 'Touch; ', - '', - ])}rv:11.0) like Gecko`; + return `Mozilla/5.0 (Windows NT 6.${faker.datatype.number({ + min: 1, + max: 3, + })}; Trident/7.0; ${ + faker.datatype.boolean() ? 'Touch; ' : '' + }rv:11.0) like Gecko`; } //http://msdn.microsoft.com/en-us/library/ie/ms537503(v=vs.85).aspx return `Mozilla/5.0 (compatible; MSIE ${ver}.0; Windows NT ${version_string.nt()}; Trident/${version_string.trident()}${ - rnd(0, 1) === 1 ? `; .NET CLR ${version_string.net()}` : '' + faker.datatype.boolean() ? `; .NET CLR ${version_string.net()}` : '' })`; }, - opera(arch: Arch): string { + opera(arch: OS): string { //http://www.opera.com/docs/history/ const presto_ver = ` Presto/${version_string.presto()} Version/${version_string.presto2()})`, os_ver = @@ -309,23 +327,38 @@ export function generate(faker: Faker): string { ? `(X11; Linux ${randomProc(arch)}; U; ${randomLang()}${presto_ver}` : `(Macintosh; Intel Mac OS X ${version_string.osx()} U; ${randomLang()} Presto/${version_string.presto()} Version/${version_string.presto2()})`; - return `Opera/${rnd(9, 14)}.${rnd(0, 99)} ${os_ver}`; + return `Opera/${faker.datatype.number({ + min: 9, + max: 14, + })}.${faker.datatype.number({ + min: 0, + max: 99, + })} ${os_ver}`; }, - safari(arch: Arch): string { + safari(arch: OS): string { const safari = version_string.safari(), - ver = `${rnd(4, 7)}.${rnd(0, 1)}.${rnd(0, 10)}`, + ver = `${faker.datatype.number({ + min: 4, + max: 7, + })}.${faker.datatype.number({ + min: 0, + max: 1, + })}.${faker.datatype.number({ min: 0, max: 10 })}`, os_ver = arch === 'mac' ? `(Macintosh; ${randomProc('mac')} Mac OS X ${version_string.osx( '_' - )} rv:${rnd(2, 6)}.0; ${randomLang()}) ` + )} rv:${faker.datatype.number({ + min: 2, + max: 6, + })}.0; ${randomLang()}) ` : `(Windows; U; Windows NT ${version_string.nt()})`; return `Mozilla/5.0 ${os_ver}AppleWebKit/${safari} (KHTML, like Gecko) Version/${ver} Safari/${safari}`; }, - chrome(arch: Arch): string { + chrome(arch: OS): string { const safari = version_string.safari(), os_ver = arch === 'mac' @@ -340,6 +373,6 @@ export function generate(faker: Faker): string { }, }; - const random = randomBrowserAndOS(); - return browser[random[0]](random[1]); + const [browser, arch] = randomBrowserAndOS(); + return browserMap[browser](arch); } diff --git a/test/__snapshots__/helpers.spec.ts.snap b/test/__snapshots__/helpers.spec.ts.snap index d959cafe430..c79f19c886c 100644 --- a/test/__snapshots__/helpers.spec.ts.snap +++ b/test/__snapshots__/helpers.spec.ts.snap @@ -29,6 +29,10 @@ exports[`helpers > 42 > arrayElements > with array 2`] = ` ] `; +exports[`helpers > 42 > fake > with args 1`] = `"my string: Cky2eiXX/J"`; + +exports[`helpers > 42 > fake > with plain string 1`] = `"my test string"`; + exports[`helpers > 42 > maybe > with only value 1`] = `"Hello World!"`; exports[`helpers > 42 > maybe > with value and probability 1`] = `undefined`; @@ -139,6 +143,10 @@ exports[`helpers > 1211 > arrayElements > with array 2`] = ` ] `; +exports[`helpers > 1211 > fake > with args 1`] = `"my string: wKti5-}$_/"`; + +exports[`helpers > 1211 > fake > with plain string 1`] = `"my test string"`; + exports[`helpers > 1211 > maybe > with only value 1`] = `undefined`; exports[`helpers > 1211 > maybe > with value and probability 1`] = `undefined`; @@ -239,6 +247,10 @@ exports[`helpers > 1337 > arrayElements > with array 2`] = ` ] `; +exports[`helpers > 1337 > fake > with args 1`] = `"my string: 9U/4:SK$>6"`; + +exports[`helpers > 1337 > fake > with plain string 1`] = `"my test string"`; + exports[`helpers > 1337 > maybe > with only value 1`] = `"Hello World!"`; exports[`helpers > 1337 > maybe > with value and probability 1`] = `undefined`; diff --git a/test/all_functional.spec.ts b/test/all_functional.spec.ts index b391b61e86f..f857b84c6de 100644 --- a/test/all_functional.spec.ts +++ b/test/all_functional.spec.ts @@ -99,7 +99,7 @@ describe('functional tests', () => { } }); -describe('faker.fake functional tests', () => { +describe('faker.helpers.fake functional tests', () => { for (const locale in faker.locales) { describe(locale, () => { Object.keys(modules).forEach((module) => { @@ -109,7 +109,7 @@ describe('faker.fake functional tests', () => { faker.locale = locale; // TODO ST-DDT 2022-03-28: Use random seed once there are no more failures faker.seed(1); - const result = faker.fake(`{{${module}.${meth}}}`); + const result = faker.helpers.fake(`{{${module}.${meth}}}`); expect(result).toBeTypeOf('string'); }); diff --git a/test/helpers.spec.ts b/test/helpers.spec.ts index 6a89667f774..61d742a7118 100644 --- a/test/helpers.spec.ts +++ b/test/helpers.spec.ts @@ -1,5 +1,5 @@ import { afterEach, describe, expect, it } from 'vitest'; -import { faker } from '../src'; +import { faker, FakerError } from '../src'; import { luhnCheck } from '../src/modules/helpers/luhn-check'; import { seededTests } from './support/seededRuns'; @@ -86,6 +86,13 @@ describe('helpers', () => { t.describe('objectValue', (t) => { t.it('simple', { a: 1, b: 2, c: 3 }); }); + + t.describe('fake', (t) => { + t.it('with plain string', 'my test string').it( + 'with args', + 'my string: {{datatype.string}}' + ); + }); }); describe(`random seeded tests for seed ${faker.seed()}`, () => { @@ -477,6 +484,130 @@ describe('helpers', () => { expect(actual).toBeUndefined(); }); }); + + describe('fake()', () => { + it('replaces a token with a random value for a method with no parameters', () => { + const name = faker.helpers.fake('{{phone.number}}'); + expect(name).toMatch(/\d/); + }); + + it('replaces multiple tokens with random values for methods with no parameters', () => { + const name = faker.helpers.fake( + '{{helpers.arrayElement}}{{helpers.arrayElement}}{{helpers.arrayElement}}' + ); + expect(name).toMatch(/[abc]{3}/); + }); + + it('replaces a token with a random value for a methods with a simple parameter', () => { + const random = faker.helpers.fake( + '{{helpers.slugify("Will This Work")}}' + ); + expect(random).toBe('Will-This-Work'); + }); + + it('replaces a token with a random value for a method with an array parameter', () => { + const arr = ['one', 'two', 'three']; + const random = faker.helpers.fake( + '{{helpers.arrayElement(["one", "two", "three"])}}' + ); + expect(arr).toContain(random); + }); + + it('does not allow undefined parameters', () => { + expect(() => + // @ts-expect-error: The parameter is required + faker.helpers.fake() + ).toThrowError(new FakerError('string parameter is required!')); + }); + + it('does not allow invalid module name', () => { + expect(() => faker.helpers.fake('{{foo.bar}}')).toThrowError( + new FakerError(`Invalid module method or definition: foo.bar +- faker.foo.bar is not a function +- faker.definitions.foo.bar is not an array`) + ); + }); + + it('does not allow missing method name', () => { + expect(() => faker.helpers.fake('{{address}}')).toThrowError( + new FakerError(`Invalid module method or definition: address +- faker.address is not a function +- faker.definitions.address is not an array`) + ); + }); + + it('does not allow invalid method name', () => { + expect(() => faker.helpers.fake('{{address.foo}}')).toThrowError( + new FakerError(`Invalid module method or definition: address.foo +- faker.address.foo is not a function +- faker.definitions.address.foo is not an array`) + ); + }); + + it('does not allow invalid definitions data', () => { + expect(() => + faker.helpers.fake('{{finance.credit_card}}') + ).toThrowError( + new FakerError(`Invalid module method or definition: finance.credit_card +- faker.finance.credit_card is not a function +- faker.definitions.finance.credit_card is not an array`) + ); + }); + + it('should be able to return empty strings', () => { + expect(faker.helpers.fake('{{helpers.repeatString}}')).toBe(''); + }); + + it('should be able to return locale definition strings', () => { + expect(faker.definitions.cell_phone.formats).toContain( + faker.helpers.fake('{{cell_phone.formats}}') + ); + }); + + it('should be able to return locale definition strings that starts with the name of an existing module', () => { + expect(faker.definitions.address.city_name).toContain( + faker.helpers.fake('{{address.city_name}}') + ); + }); + + it('should be able to handle only {{ brackets', () => { + expect(faker.helpers.fake('{{hello')).toBe('{{hello'); + expect(faker.helpers.fake('hello{{')).toBe('hello{{'); + }); + + it('should be able to handle only }} brackets', () => { + expect(faker.helpers.fake('hello}}')).toBe('hello}}'); + expect(faker.helpers.fake('}}hello')).toBe('}}hello'); + }); + + it('should be able to handle inverted brackets', () => { + expect(faker.helpers.fake('}}hello{{')).toBe('}}hello{{'); + }); + + it('should be able to handle random }} brackets', () => { + expect(faker.helpers.fake('}}hello{{random.alpha}}')).toMatch( + /^}}hello[a-z]$/ + ); + }); + + it('should be able to handle connected brackets', () => { + expect(faker.helpers.fake('{{{random.alpha}}}')).toMatch(/^{[a-z]}$/); + }); + + it('should be able to handle empty brackets', () => { + expect(faker.helpers.fake('{{}}')).toBe('{{}}'); + }); + + it('should be able to handle special replacement patterns', () => { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + (faker.random as any).special = () => '$&'; + + expect(faker.helpers.fake('{{random.special}}')).toBe('$&'); + + // eslint-disable-next-line @typescript-eslint/no-explicit-any + delete (faker.random as any).special; + }); + }); } }); });