From 5bb347c388930059f5d8c588d8c337710d02bce3 Mon Sep 17 00:00:00 2001 From: Foromo Ernest Teoro Date: Thu, 22 Aug 2024 11:57:44 +0100 Subject: [PATCH 1/7] Add jest, mock and test example --- .vscode/launch.json | 17 + package-lock.json | 6048 +++++++++++++++++++++++++++++++----------- package.json | 4 +- test/example.spec.js | 6 + test/mocks/mocks.js | 16 + 5 files changed, 4508 insertions(+), 1583 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 test/example.spec.js create mode 100644 test/mocks/mocks.js diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..fc9fe17 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,17 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "type": "node", + "request": "launch", + "name": "Run Jest Tests", + "program": "${workspaceFolder}/node_modules/jest/bin/jest.js", + "args": [ + "${workspaceFolder}/test/example.spec.js", + "--runInBand", + "--verbose" + ], + "console": "integratedTerminal" + } + ] + } \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index c35e300..6cca677 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,9 +26,33 @@ "eslint": "^6.8.0", "eslint-plugin-json": "^2.0.1", "git-cz": "^4.9.0", + "jest": "^29.7.0", "rewire": "^6.0.0" } }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@ampproject/remapping/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, "node_modules/@babel/code-frame": { "version": "7.12.11", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", @@ -38,24 +62,235 @@ "@babel/highlight": "^7.10.4" } }, + "node_modules/@babel/compat-data": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.2.tgz", + "integrity": "sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz", + "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.25.0", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", + "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.25.2", + "@babel/helper-validator-option": "^7.24.8", + "browserslist": "^4.23.1", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", + "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", + "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz", + "integrity": "sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", + "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", + "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", + "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.0.tgz", + "integrity": "sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==", "dev": true, + "dependencies": { + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.0" + }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", + "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==", "dev": true, "dependencies": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" + "@babel/helper-validator-identifier": "^7.24.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" }, "engines": { "node": ">=6.9.0" @@ -123,284 +358,354 @@ "node": ">=4" } }, - "node_modules/@commitlint/config-validator": { - "version": "17.4.4", - "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-17.4.4.tgz", - "integrity": "sha512-bi0+TstqMiqoBAQDvdEP4AFh0GaKyLFlPPEObgI29utoKEYoPQTvF0EYqIwYYLEoJYhj5GfMIhPHJkTJhagfeg==", + "node_modules/@babel/parser": { + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz", + "integrity": "sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==", "dev": true, - "optional": true, "dependencies": { - "@commitlint/types": "^17.4.4", - "ajv": "^8.11.0" + "@babel/types": "^7.25.2" + }, + "bin": { + "parser": "bin/babel-parser.js" }, "engines": { - "node": ">=v14" + "node": ">=6.0.0" } }, - "node_modules/@commitlint/config-validator/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, - "optional": true, "dependencies": { - "fast-deep-equal": "^3.1.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2", - "uri-js": "^4.2.2" + "@babel/helper-plugin-utils": "^7.8.0" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@commitlint/config-validator/node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", "dev": true, - "optional": true + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "node_modules/@commitlint/execute-rule": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-17.4.0.tgz", - "integrity": "sha512-LIgYXuCSO5Gvtc0t9bebAMSwd68ewzmqLypqI2Kke1rqOqqDbMpYcYfoPfFlv9eyLIh4jocHWwCK5FS7z9icUA==", + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, - "optional": true, - "engines": { - "node": ">=v14" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@commitlint/load": { - "version": "17.5.0", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-17.5.0.tgz", - "integrity": "sha512-l+4W8Sx4CD5rYFsrhHH8HP01/8jEP7kKf33Xlx2Uk2out/UKoKPYMOIRcDH5ppT8UXLMV+x6Wm5osdRKKgaD1Q==", + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", "dev": true, - "optional": true, "dependencies": { - "@commitlint/config-validator": "^17.4.4", - "@commitlint/execute-rule": "^17.4.0", - "@commitlint/resolve-extends": "^17.4.4", - "@commitlint/types": "^17.4.4", - "@types/node": "*", - "chalk": "^4.1.0", - "cosmiconfig": "^8.0.0", - "cosmiconfig-typescript-loader": "^4.0.0", - "lodash.isplainobject": "^4.0.6", - "lodash.merge": "^4.6.2", - "lodash.uniq": "^4.5.0", - "resolve-from": "^5.0.0", - "ts-node": "^10.8.1", - "typescript": "^4.6.4 || ^5.0.0" + "@babel/helper-plugin-utils": "^7.14.5" }, "engines": { - "node": ">=v14" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@commitlint/load/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.7.tgz", + "integrity": "sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A==", "dev": true, - "optional": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, "engines": { - "node": ">=8" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@commitlint/resolve-extends": { - "version": "17.4.4", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-17.4.4.tgz", - "integrity": "sha512-znXr1S0Rr8adInptHw0JeLgumS11lWbk5xAWFVno+HUFVN45875kUtqjrI6AppmD3JI+4s0uZlqqlkepjJd99A==", + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", "dev": true, - "optional": true, "dependencies": { - "@commitlint/config-validator": "^17.4.4", - "@commitlint/types": "^17.4.4", - "import-fresh": "^3.0.0", - "lodash.mergewith": "^4.6.2", - "resolve-from": "^5.0.0", - "resolve-global": "^1.0.0" + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": ">=v14" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@commitlint/resolve-extends/node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, - "optional": true, - "engines": { - "node": ">=8" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@commitlint/types": { - "version": "17.4.4", - "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-17.4.4.tgz", - "integrity": "sha512-amRN8tRLYOsxRr6mTnGGGvB5EmW/4DDjLMgiwK3CCVEmN6Sr/6xePGEpWaspKkckILuUORCwe6VfDBw6uj4axQ==", + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.7.tgz", + "integrity": "sha512-6ddciUPe/mpMnOKv/U+RSd2vvVy+Yw/JfBB0ZHYjEZt9NLHmCUylNYlsbqCCS1Bffjlb0fCwC9Vqz+sBz6PsiQ==", "dev": true, - "optional": true, "dependencies": { - "chalk": "^4.1.0" + "@babel/helper-plugin-utils": "^7.24.7" }, "engines": { - "node": ">=v14" + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, - "optional": true, "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" + "@babel/helper-plugin-utils": "^7.10.4" }, - "engines": { - "node": ">=12" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@fast-csv/format": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@fast-csv/format/-/format-4.3.5.tgz", - "integrity": "sha512-8iRn6QF3I8Ak78lNAa+Gdl5MJJBM5vRHivFtMRUWINdevNo00K7OXxS2PshawLKTejVwieIlPmK5YlLu6w4u8A==", + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, "dependencies": { - "@types/node": "^14.0.1", - "lodash.escaperegexp": "^4.1.2", - "lodash.isboolean": "^3.0.3", - "lodash.isequal": "^4.5.0", - "lodash.isfunction": "^3.0.9", - "lodash.isnil": "^4.0.0" + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@fast-csv/parse": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/@fast-csv/parse/-/parse-4.3.6.tgz", - "integrity": "sha512-uRsLYksqpbDmWaSmzvJcuApSEe38+6NQZBUsuAyMZKqHxH0g1wcJgsKUvN3WC8tewaqFjBMMGrkHmC+T7k8LvA==", + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, "dependencies": { - "@types/node": "^14.0.1", - "lodash.escaperegexp": "^4.1.2", - "lodash.groupby": "^4.6.0", - "lodash.isfunction": "^3.0.9", - "lodash.isnil": "^4.0.0", - "lodash.isundefined": "^3.0.1", - "lodash.uniq": "^4.5.0" + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", - "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, - "optional": true, - "engines": { - "node": ">=6.0.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "optional": true + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "optional": true, "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "node_modules/@medic/eslint-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@medic/eslint-config/-/eslint-config-1.1.0.tgz", - "integrity": "sha512-KQXLM4BJ2GVmFL56iIqDUQWPPmIrJXJ03gB8zqnB6tTxwPIwAUrdXQXsb3rudMItVe9VNVRXdzBVnpd/ntfAzw==", - "dev": true + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "node_modules/@tsconfig/node10": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", - "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", "dev": true, - "optional": true + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.7.tgz", + "integrity": "sha512-c/+fVeJBB0FeKsFvwytYiUD+LBvhHjGSI0g446PRGdSVGZLRNArBUno2PETbAly3tpiNAQR5XaZ+JslxkotsbA==", "dev": true, - "optional": true + "dependencies": { + "@babel/helper-plugin-utils": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "node_modules/@babel/template": { + "version": "7.25.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", + "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", "dev": true, - "optional": true + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/parser": "^7.25.0", + "@babel/types": "^7.25.0" + }, + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/@tsconfig/node16": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", - "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "node_modules/@babel/template/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dev": true, - "optional": true + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/@types/node": { - "version": "14.18.36", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.36.tgz", - "integrity": "sha512-FXKWbsJ6a1hIrRxv+FoukuHnGTgEzKYGi7kilfMae96AL9UNkPFNWJEEYWzdRI9ooIkbr4AKldyuSTLql06vLQ==" + "node_modules/@babel/traverse": { + "version": "7.25.3", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.3.tgz", + "integrity": "sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/parser": "^7.25.3", + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.2", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/acorn": { - "version": "8.8.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", - "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "node_modules/@babel/traverse/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", "dev": true, - "bin": { - "acorn": "bin/acorn" + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" }, "engines": { - "node": ">=0.4.0" + "node": ">=6.9.0" } }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + "engines": { + "node": ">=4" } }, - "node_modules/acorn-walk": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", - "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "node_modules/@babel/types": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", + "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@commitlint/config-validator": { + "version": "17.4.4", + "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-17.4.4.tgz", + "integrity": "sha512-bi0+TstqMiqoBAQDvdEP4AFh0GaKyLFlPPEObgI29utoKEYoPQTvF0EYqIwYYLEoJYhj5GfMIhPHJkTJhagfeg==", "dev": true, "optional": true, + "dependencies": { + "@commitlint/types": "^17.4.4", + "ajv": "^8.11.0" + }, "engines": { - "node": ">=0.4.0" + "node": ">=v14" } }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "node_modules/@commitlint/config-validator/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, + "optional": true, "dependencies": { "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", "uri-js": "^4.2.2" }, "funding": { @@ -408,60 +713,841 @@ "url": "https://github.com/sponsors/epoberezkin" } }, - "node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "node_modules/@commitlint/config-validator/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "optional": true + }, + "node_modules/@commitlint/execute-rule": { + "version": "17.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-17.4.0.tgz", + "integrity": "sha512-LIgYXuCSO5Gvtc0t9bebAMSwd68ewzmqLypqI2Kke1rqOqqDbMpYcYfoPfFlv9eyLIh4jocHWwCK5FS7z9icUA==", "dev": true, + "optional": true, "engines": { - "node": ">=6" + "node": ">=v14" } }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "node_modules/@commitlint/load": { + "version": "17.5.0", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-17.5.0.tgz", + "integrity": "sha512-l+4W8Sx4CD5rYFsrhHH8HP01/8jEP7kKf33Xlx2Uk2out/UKoKPYMOIRcDH5ppT8UXLMV+x6Wm5osdRKKgaD1Q==", + "dev": true, + "optional": true, "dependencies": { - "type-fest": "^0.21.3" + "@commitlint/config-validator": "^17.4.4", + "@commitlint/execute-rule": "^17.4.0", + "@commitlint/resolve-extends": "^17.4.4", + "@commitlint/types": "^17.4.4", + "@types/node": "*", + "chalk": "^4.1.0", + "cosmiconfig": "^8.0.0", + "cosmiconfig-typescript-loader": "^4.0.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "lodash.uniq": "^4.5.0", + "resolve-from": "^5.0.0", + "ts-node": "^10.8.1", + "typescript": "^4.6.4 || ^5.0.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=v14" } }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/@commitlint/load/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "optional": true, "engines": { "node": ">=8" } }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/@commitlint/resolve-extends": { + "version": "17.4.4", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-17.4.4.tgz", + "integrity": "sha512-znXr1S0Rr8adInptHw0JeLgumS11lWbk5xAWFVno+HUFVN45875kUtqjrI6AppmD3JI+4s0uZlqqlkepjJd99A==", + "dev": true, + "optional": true, "dependencies": { - "color-convert": "^2.0.1" + "@commitlint/config-validator": "^17.4.4", + "@commitlint/types": "^17.4.4", + "import-fresh": "^3.0.0", + "lodash.mergewith": "^4.6.2", + "resolve-from": "^5.0.0", + "resolve-global": "^1.0.0" }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@commitlint/resolve-extends/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "optional": true, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/archiver": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.1.tgz", - "integrity": "sha512-8KyabkmbYrH+9ibcTScQ1xCJC/CGcugdVIwB+53f5sZziXgwUh3iXlAlANMxcZyDEfTHMe6+Z5FofV8nopXP7w==", - "dependencies": { - "archiver-utils": "^2.1.0", - "async": "^3.2.3", - "buffer-crc32": "^0.2.1", - "readable-stream": "^3.6.0", + "node_modules/@commitlint/types": { + "version": "17.4.4", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-17.4.4.tgz", + "integrity": "sha512-amRN8tRLYOsxRr6mTnGGGvB5EmW/4DDjLMgiwK3CCVEmN6Sr/6xePGEpWaspKkckILuUORCwe6VfDBw6uj4axQ==", + "dev": true, + "optional": true, + "dependencies": { + "chalk": "^4.1.0" + }, + "engines": { + "node": ">=v14" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "optional": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@fast-csv/format": { + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/@fast-csv/format/-/format-4.3.5.tgz", + "integrity": "sha512-8iRn6QF3I8Ak78lNAa+Gdl5MJJBM5vRHivFtMRUWINdevNo00K7OXxS2PshawLKTejVwieIlPmK5YlLu6w4u8A==", + "dependencies": { + "@types/node": "^14.0.1", + "lodash.escaperegexp": "^4.1.2", + "lodash.isboolean": "^3.0.3", + "lodash.isequal": "^4.5.0", + "lodash.isfunction": "^3.0.9", + "lodash.isnil": "^4.0.0" + } + }, + "node_modules/@fast-csv/parse": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/@fast-csv/parse/-/parse-4.3.6.tgz", + "integrity": "sha512-uRsLYksqpbDmWaSmzvJcuApSEe38+6NQZBUsuAyMZKqHxH0g1wcJgsKUvN3WC8tewaqFjBMMGrkHmC+T7k8LvA==", + "dependencies": { + "@types/node": "^14.0.1", + "lodash.escaperegexp": "^4.1.2", + "lodash.groupby": "^4.6.0", + "lodash.isfunction": "^3.0.9", + "lodash.isnil": "^4.0.0", + "lodash.isundefined": "^3.0.1", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "dev": true, + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "optional": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@medic/eslint-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@medic/eslint-config/-/eslint-config-1.1.0.tgz", + "integrity": "sha512-KQXLM4BJ2GVmFL56iIqDUQWPPmIrJXJ03gB8zqnB6tTxwPIwAUrdXQXsb3rudMItVe9VNVRXdzBVnpd/ntfAzw==", + "dev": true + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true, + "optional": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true, + "optional": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true, + "optional": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true, + "optional": true + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/node": { + "version": "14.18.36", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.18.36.tgz", + "integrity": "sha512-FXKWbsJ6a1hIrRxv+FoukuHnGTgEzKYGi7kilfMae96AL9UNkPFNWJEEYWzdRI9ooIkbr4AKldyuSTLql06vLQ==" + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.8.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", + "integrity": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/archiver": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.1.tgz", + "integrity": "sha512-8KyabkmbYrH+9ibcTScQ1xCJC/CGcugdVIwB+53f5sZziXgwUh3iXlAlANMxcZyDEfTHMe6+Z5FofV8nopXP7w==", + "dependencies": { + "archiver-utils": "^2.1.0", + "async": "^3.2.3", + "buffer-crc32": "^0.2.1", + "readable-stream": "^3.6.0", "readdir-glob": "^1.0.0", "tar-stream": "^2.2.0", "zip-stream": "^4.1.0" @@ -470,27 +1556,969 @@ "node": ">= 10" } }, - "node_modules/archiver-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.1.0.tgz", - "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==", + "node_modules/archiver-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-2.1.0.tgz", + "integrity": "sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==", + "dependencies": { + "glob": "^7.1.4", + "graceful-fs": "^4.2.0", + "lazystream": "^1.0.0", + "lodash.defaults": "^4.2.0", + "lodash.difference": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.isplainobject": "^4.0.6", + "lodash.union": "^4.6.0", + "normalize-path": "^3.0.0", + "readable-stream": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/archiver-utils/node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/archiver-utils/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/archiver-utils/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true, + "optional": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true, + "optional": true + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", + "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "dev": true, + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/binary": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", + "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", + "dependencies": { + "buffers": "~0.1.1", + "chainsaw": "~0.1.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bluebird": { + "version": "3.4.7", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", + "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.23.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", + "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001646", + "electron-to-chromium": "^1.5.4", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "engines": { + "node": "*" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "dev": true + }, + "node_modules/buffer-indexof-polyfill": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", + "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/buffers": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", + "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", + "engines": { + "node": ">=0.2.0" + } + }, + "node_modules/cachedir": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", + "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001651", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz", + "integrity": "sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/chainsaw": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", + "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", + "dependencies": { + "traverse": ">=0.3.0 <0.4" + }, + "engines": { + "node": "*" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "node_modules/cht-nootils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/cht-nootils/-/cht-nootils-4.2.0.tgz", + "integrity": "sha512-qESIg6BkYTWYJ7IjPSDSoFrp94n0AOhgTDYeOsik5OPcZhRB3oH6EZ2+gjT8Ht3EWsniJwNKtyy4Mi07HCc1hg==", + "dev": true, + "dependencies": { + "underscore": "^1.9.1" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.3.1.tgz", + "integrity": "sha512-a3KdPAANPbNE4ZUv9h6LckSl9zLsYOP4MBmhIPkRaeyybt+r4UghLvq+xw/YwUcC1gqylCkL4rdVs3Lwupjm4Q==", + "dev": true + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", + "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "dev": true + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/commitizen": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/commitizen/-/commitizen-4.3.0.tgz", + "integrity": "sha512-H0iNtClNEhT0fotHvGV3E9tDejDeS04sN1veIebsKYGMuGscFaswRoYJKmT3eW85eIJAs0F28bG2+a/9wCOfPw==", + "dev": true, + "dependencies": { + "cachedir": "2.3.0", + "cz-conventional-changelog": "3.3.0", + "dedent": "0.7.0", + "detect-indent": "6.1.0", + "find-node-modules": "^2.1.2", + "find-root": "1.1.0", + "fs-extra": "9.1.0", + "glob": "7.2.3", + "inquirer": "8.2.5", + "is-utf8": "^0.2.1", + "lodash": "4.17.21", + "minimist": "1.2.7", + "strip-bom": "4.0.0", + "strip-json-comments": "3.1.1" + }, + "bin": { + "commitizen": "bin/commitizen", + "cz": "bin/git-cz", + "git-cz": "bin/git-cz" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/commitizen/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dev": true, + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/compress-commons": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz", + "integrity": "sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==", + "dependencies": { + "buffer-crc32": "^0.2.13", + "crc32-stream": "^4.0.2", + "normalize-path": "^3.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/conventional-commit-types": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/conventional-commit-types/-/conventional-commit-types-3.0.0.tgz", + "integrity": "sha512-SmmCYnOniSsAa9GqWOeLqc179lfr5TRu5b4QFDkbsrJ5TZjPJx85wtOr3zn+1dbeNiXDKGPbZ72IKbPhLXh/Lg==", + "dev": true + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cosmiconfig": { + "version": "8.1.3", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.1.3.tgz", + "integrity": "sha512-/UkO2JKI18b5jVMJUp0lvKFMpa/Gye+ZgZjKD+DGEN9y7NRcf/nK1A0sp67ONmKtnDCNMS44E6jrk0Yc3bDuUw==", + "dev": true, + "optional": true, + "dependencies": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + } + }, + "node_modules/cosmiconfig-typescript-loader": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.3.0.tgz", + "integrity": "sha512-NTxV1MFfZDLPiBMjxbHRwSh5LaLcPMwNdCutmnHJCKoVnlvldPWlllonKwrsRJ5pYZBIBGRWWU2tfvzxgeSW5Q==", + "dev": true, + "optional": true, + "engines": { + "node": ">=12", + "npm": ">=6" + }, + "peerDependencies": { + "@types/node": "*", + "cosmiconfig": ">=7", + "ts-node": ">=10", + "typescript": ">=3" + } + }, + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/crc32-stream": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", + "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", + "dependencies": { + "crc-32": "^1.2.0", + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, "dependencies": { - "glob": "^7.1.4", - "graceful-fs": "^4.2.0", - "lazystream": "^1.0.0", - "lodash.defaults": "^4.2.0", - "lodash.difference": "^4.5.0", - "lodash.flatten": "^4.4.0", - "lodash.isplainobject": "^4.0.6", - "lodash.union": "^4.6.0", - "normalize-path": "^3.0.0", - "readable-stream": "^2.0.0" + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true, + "optional": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cz-conventional-changelog": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/cz-conventional-changelog/-/cz-conventional-changelog-3.3.0.tgz", + "integrity": "sha512-U466fIzU5U22eES5lTNiNbZ+d8dfcHcssH4o7QsdWaCcRs/feIPCxKYSWkYBNs5mny7MvEfwpTLWjvbm94hecw==", + "dev": true, + "dependencies": { + "chalk": "^2.4.1", + "commitizen": "^4.0.3", + "conventional-commit-types": "^3.0.0", + "lodash.map": "^4.5.1", + "longest": "^2.0.1", + "word-wrap": "^1.0.3" + }, + "engines": { + "node": ">= 10" + }, + "optionalDependencies": { + "@commitlint/load": ">6.1.1" + } + }, + "node_modules/cz-conventional-changelog/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cz-conventional-changelog/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cz-conventional-changelog/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/cz-conventional-changelog/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/cz-conventional-changelog/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/cz-conventional-changelog/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/dayjs": { + "version": "1.11.7", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", + "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-indent": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", + "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" }, "engines": { - "node": ">= 6" + "node": ">=6.0.0" } }, - "node_modules/archiver-utils/node_modules/readable-stream": { + "node_modules/duplexer2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", + "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", + "dependencies": { + "readable-stream": "^2.0.2" + } + }, + "node_modules/duplexer2/node_modules/readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", @@ -504,12 +2532,12 @@ "util-deprecate": "~1.0.1" } }, - "node_modules/archiver-utils/node_modules/safe-buffer": { + "node_modules/duplexer2/node_modules/safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, - "node_modules/archiver-utils/node_modules/string_decoder": { + "node_modules/duplexer2/node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", @@ -517,1281 +2545,1222 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true, - "optional": true - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "optional": true - }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/async": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", - "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" + "node_modules/electron-to-chromium": { + "version": "1.5.11", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.11.tgz", + "integrity": "sha512-R1CccCDYqndR25CaXFd6hp/u9RaaMcftMkphmvuepXr5b1vfLkRml6aWVeBhXJ7rbevHkKEMJtz8XqPf7ffmew==", + "dev": true }, - "node_modules/at-least-node": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", "dev": true, "engines": { - "node": ">= 4.0.0" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, - "node_modules/big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==", - "engines": { - "node": ">=0.6" + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" } }, - "node_modules/binary": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", - "integrity": "sha512-D4H1y5KYwpJgK8wk1Cue5LLPgmwHKYSChkbspQg5JtVuR5ulGckxfR62H3AE9UDkdMC8yyXlqYihuz3Aqg2XZg==", + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, "dependencies": { - "buffers": "~0.1.1", - "chainsaw": "~0.1.0" + "ansi-colors": "^4.1.1" }, "engines": { - "node": "*" + "node": ">=8.6" } }, - "node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" + "is-arrayish": "^0.2.1" } }, - "node_modules/bluebird": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz", - "integrity": "sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==" + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" } }, - "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "node_modules/eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" }, "engines": { - "node": ">=8" + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], + "node_modules/eslint-plugin-json": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-2.1.2.tgz", + "integrity": "sha512-isM/fsUxS4wN1+nLsWoV5T4gLgBQnsql3nMTr8u+cEls1bL8rRQO5CP5GtxJxaOfbcKqnz401styw+H/P+e78Q==", + "dev": true, "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, - "node_modules/buffer-crc32": { - "version": "0.2.13", - "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - "engines": { - "node": "*" - } - }, - "node_modules/buffer-indexof-polyfill": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz", - "integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==", + "lodash": "^4.17.19", + "vscode-json-languageservice": "^3.7.0" + }, "engines": { - "node": ">=0.10" + "node": ">=8.10.0" } }, - "node_modules/buffers": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", - "integrity": "sha512-9q/rDEGSb/Qsvv2qvzIzdluL5k7AaJOTrw23z9reQthrbF7is4CtlT0DXyO1oei2DCp4uojjzQ7igaSHp1kAEQ==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, "engines": { - "node": ">=0.2.0" + "node": ">=8.0.0" } }, - "node_modules/cachedir": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz", - "integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==", + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true, "engines": { - "node": ">=6" + "node": ">=4.0" } }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, "engines": { "node": ">=6" } }, - "node_modules/chainsaw": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", - "integrity": "sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==", - "dependencies": { - "traverse": ">=0.3.0 <0.4" - }, + "node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, "engines": { - "node": "*" + "node": ">=4" } }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "node_modules/eslint/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "color-convert": "^1.9.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "node": ">=4" } }, - "node_modules/chardet": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" - }, - "node_modules/cht-nootils": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/cht-nootils/-/cht-nootils-4.2.0.tgz", - "integrity": "sha512-qESIg6BkYTWYJ7IjPSDSoFrp94n0AOhgTDYeOsik5OPcZhRB3oH6EZ2+gjT8Ht3EWsniJwNKtyy4Mi07HCc1hg==", + "node_modules/eslint/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "dev": true, "dependencies": { - "underscore": "^1.9.1" + "sprintf-js": "~1.0.2" } }, - "node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dependencies": { - "restore-cursor": "^3.1.0" - }, + "node_modules/eslint/node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true, "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/cli-spinners": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", - "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", - "engines": { - "node": ">=6" + "node_modules/eslint/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "engines": { - "node": ">= 10" + "node": ">=4" } }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", - "engines": { - "node": ">=0.8" + "node_modules/eslint/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" } }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "node_modules/eslint/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/eslint/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, "dependencies": { - "color-name": "~1.1.4" + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" }, "engines": { - "node": ">=7.0.0" + "node": ">=4.8" } }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" - }, - "node_modules/commitizen": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/commitizen/-/commitizen-4.3.0.tgz", - "integrity": "sha512-H0iNtClNEhT0fotHvGV3E9tDejDeS04sN1veIebsKYGMuGscFaswRoYJKmT3eW85eIJAs0F28bG2+a/9wCOfPw==", + "node_modules/eslint/node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true, - "dependencies": { - "cachedir": "2.3.0", - "cz-conventional-changelog": "3.3.0", - "dedent": "0.7.0", - "detect-indent": "6.1.0", - "find-node-modules": "^2.1.2", - "find-root": "1.1.0", - "fs-extra": "9.1.0", - "glob": "7.2.3", - "inquirer": "8.2.5", - "is-utf8": "^0.2.1", - "lodash": "4.17.21", - "minimist": "1.2.7", - "strip-bom": "4.0.0", - "strip-json-comments": "3.1.1" - }, "bin": { - "commitizen": "bin/commitizen", - "cz": "bin/git-cz", - "git-cz": "bin/git-cz" - }, - "engines": { - "node": ">= 12" + "semver": "bin/semver" } }, - "node_modules/commitizen/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "node_modules/eslint/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "node_modules/eslint/node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", "dev": true, "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" + "flat-cache": "^2.0.1" }, "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/compress-commons": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-4.1.1.tgz", - "integrity": "sha512-QLdDLCKNV2dtoTorqgxngQCMA+gWXkM/Nwu7FpeBhk/RdkzimqC3jueb/FDmaZeXh+uby1jkBqE3xArsLBE5wQ==", + "node_modules/eslint/node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, "dependencies": { - "buffer-crc32": "^0.2.13", - "crc32-stream": "^4.0.2", - "normalize-path": "^3.0.0", - "readable-stream": "^3.6.0" + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" }, "engines": { - "node": ">= 10" + "node": ">=4" } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, - "node_modules/conventional-commit-types": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/conventional-commit-types/-/conventional-commit-types-3.0.0.tgz", - "integrity": "sha512-SmmCYnOniSsAa9GqWOeLqc179lfr5TRu5b4QFDkbsrJ5TZjPJx85wtOr3zn+1dbeNiXDKGPbZ72IKbPhLXh/Lg==", + "node_modules/eslint/node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, - "node_modules/core-util-is": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", - "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" - }, - "node_modules/cosmiconfig": { - "version": "8.1.3", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.1.3.tgz", - "integrity": "sha512-/UkO2JKI18b5jVMJUp0lvKFMpa/Gye+ZgZjKD+DGEN9y7NRcf/nK1A0sp67ONmKtnDCNMS44E6jrk0Yc3bDuUw==", + "node_modules/eslint/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", "dev": true, - "optional": true, "dependencies": { - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0" + "type-fest": "^0.8.1" }, "engines": { - "node": ">=14" + "node": ">=8" }, "funding": { - "url": "https://github.com/sponsors/d-fischer" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cosmiconfig-typescript-loader": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-4.3.0.tgz", - "integrity": "sha512-NTxV1MFfZDLPiBMjxbHRwSh5LaLcPMwNdCutmnHJCKoVnlvldPWlllonKwrsRJ5pYZBIBGRWWU2tfvzxgeSW5Q==", + "node_modules/eslint/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, - "optional": true, "engines": { - "node": ">=12", - "npm": ">=6" - }, - "peerDependencies": { - "@types/node": "*", - "cosmiconfig": ">=7", - "ts-node": ">=10", - "typescript": ">=3" + "node": ">=4" } }, - "node_modules/crc-32": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", - "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", - "bin": { - "crc32": "bin/crc32.njs" + "node_modules/eslint/node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" }, "engines": { - "node": ">=0.8" + "node": ">=8.0.0" } }, - "node_modules/crc32-stream": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-4.0.2.tgz", - "integrity": "sha512-DxFZ/Hk473b/muq1VJ///PMNLj0ZMnzye9thBpmjpJKCc5eMgB95aK8zCGrGfQ90cWo561Te6HK9D+j4KPdM6w==", + "node_modules/eslint/node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, "dependencies": { - "crc-32": "^1.2.0", - "readable-stream": "^3.4.0" + "color-convert": "^2.0.1" }, "engines": { - "node": ">= 10" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true, - "optional": true - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "node_modules/eslint/node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" }, "engines": { - "node": ">= 8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/cz-conventional-changelog": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/cz-conventional-changelog/-/cz-conventional-changelog-3.3.0.tgz", - "integrity": "sha512-U466fIzU5U22eES5lTNiNbZ+d8dfcHcssH4o7QsdWaCcRs/feIPCxKYSWkYBNs5mny7MvEfwpTLWjvbm94hecw==", + "node_modules/eslint/node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "dependencies": { - "chalk": "^2.4.1", - "commitizen": "^4.0.3", - "conventional-commit-types": "^3.0.0", - "lodash.map": "^4.5.1", - "longest": "^2.0.1", - "word-wrap": "^1.0.3" + "color-name": "~1.1.4" }, "engines": { - "node": ">= 10" - }, - "optionalDependencies": { - "@commitlint/load": ">6.1.1" + "node": ">=7.0.0" } }, - "node_modules/cz-conventional-changelog/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/eslint/node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eslint/node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/cz-conventional-changelog/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/eslint/node_modules/inquirer/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-regex": "^5.0.1" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/cz-conventional-changelog/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/eslint/node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "dependencies": { - "color-name": "1.1.3" + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "node_modules/cz-conventional-changelog/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/cz-conventional-changelog/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/eslint/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true, "engines": { "node": ">=4" } }, - "node_modules/cz-conventional-changelog/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/eslint/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, "dependencies": { - "has-flag": "^3.0.0" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, - "engines": { - "node": ">=4" + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/dayjs": { - "version": "1.11.7", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz", - "integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==" - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "node_modules/eslint/node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", "dev": true, "dependencies": { - "ms": "2.1.2" + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">= 0.8.0" } }, - "node_modules/dedent": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", - "dev": true - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/defaults": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", - "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "node_modules/eslint/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, "dependencies": { - "clone": "^1.0.2" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 0.8.0" } }, - "node_modules/detect-file": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", - "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==", + "node_modules/eslint/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=4" } - }, - "node_modules/detect-indent": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", - "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==", + }, + "node_modules/eslint/node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", "dev": true, "engines": { - "node": ">=8" + "node": ">= 0.8.0" } }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "node_modules/eslint/node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", "dev": true, - "optional": true, "engines": { - "node": ">=0.3.1" + "node": ">=6.5.0" } }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "node_modules/eslint/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "dev": true, "dependencies": { - "esutils": "^2.0.2" + "glob": "^7.1.3" }, - "engines": { - "node": ">=6.0.0" + "bin": { + "rimraf": "bin.js" } }, - "node_modules/duplexer2": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", - "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==", + "node_modules/eslint/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, "dependencies": { - "readable-stream": "^2.0.2" + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "node_modules/duplexer2/node_modules/readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dependencies": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "node_modules/eslint/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/duplexer2/node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" - }, - "node_modules/duplexer2/node_modules/string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "node_modules/eslint/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "dev": true, "dependencies": { - "safe-buffer": "~5.1.0" + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" + "node_modules/eslint/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "node_modules/eslint/node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", "dev": true, "dependencies": { - "ansi-colors": "^4.1.1" + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" }, "engines": { - "node": ">=8.6" + "node": ">=6" } }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "node_modules/eslint/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "dev": true, - "optional": true, "dependencies": { - "is-arrayish": "^0.2.1" + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" } }, - "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/eslint/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true, "engines": { - "node": ">=0.8.0" + "node": ">=6" } }, - "node_modules/eslint": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", - "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "node_modules/eslint/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.0.0", - "ajv": "^6.10.0", - "chalk": "^2.1.0", - "cross-spawn": "^6.0.5", - "debug": "^4.0.1", - "doctrine": "^3.0.0", - "eslint-scope": "^5.0.0", - "eslint-utils": "^1.4.3", - "eslint-visitor-keys": "^1.1.0", - "espree": "^6.1.2", - "esquery": "^1.0.1", - "esutils": "^2.0.2", - "file-entry-cache": "^5.0.1", - "functional-red-black-tree": "^1.0.1", - "glob-parent": "^5.0.0", - "globals": "^12.1.0", - "ignore": "^4.0.6", - "import-fresh": "^3.0.0", - "imurmurhash": "^0.1.4", - "inquirer": "^7.0.0", - "is-glob": "^4.0.0", - "js-yaml": "^3.13.1", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.3.0", - "lodash": "^4.17.14", - "minimatch": "^3.0.4", - "mkdirp": "^0.5.1", - "natural-compare": "^1.4.0", - "optionator": "^0.8.3", - "progress": "^2.0.0", - "regexpp": "^2.0.1", - "semver": "^6.1.2", - "strip-ansi": "^5.2.0", - "strip-json-comments": "^3.0.1", - "table": "^5.2.3", - "text-table": "^0.2.0", - "v8-compile-cache": "^2.0.3" - }, - "bin": { - "eslint": "bin/eslint.js" + "has-flag": "^3.0.0" }, "engines": { - "node": "^8.10.0 || ^10.13.0 || >=11.10.1" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=4" } }, - "node_modules/eslint-plugin-json": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-2.1.2.tgz", - "integrity": "sha512-isM/fsUxS4wN1+nLsWoV5T4gLgBQnsql3nMTr8u+cEls1bL8rRQO5CP5GtxJxaOfbcKqnz401styw+H/P+e78Q==", + "node_modules/eslint/node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", "dev": true, "dependencies": { - "lodash": "^4.17.19", - "vscode-json-languageservice": "^3.7.0" + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" }, "engines": { - "node": ">=8.10.0" + "node": ">=6.0.0" } }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "node_modules/eslint/node_modules/table/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" }, "engines": { - "node": ">=8.0.0" + "node": ">=6" } }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, - "engines": { - "node": ">=4.0" - } + "node_modules/eslint/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true }, - "node_modules/eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "node_modules/eslint/node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", "dev": true, "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "prelude-ls": "~1.1.2" }, "engines": { - "node": ">=6" + "node": ">= 0.8.0" } }, - "node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "node_modules/eslint/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/eslint/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/eslint/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "dependencies": { - "color-convert": "^1.9.0" + "isexe": "^2.0.0" }, - "engines": { - "node": ">=4" + "bin": { + "which": "bin/which" } }, - "node_modules/eslint/node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", "dev": true, "dependencies": { - "sprintf-js": "~1.0.2" + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6.0.0" } }, - "node_modules/eslint/node_modules/astral-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "node_modules/espree/node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true, + "bin": { + "acorn": "bin/acorn" + }, "engines": { - "node": ">=4" + "node": ">=0.4.0" } }, - "node_modules/eslint/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { "node": ">=4" } }, - "node_modules/eslint/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "dependencies": { - "color-name": "1.1.3" + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" } }, - "node_modules/eslint/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/eslint/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=4.8" + "node": ">=4.0" } }, - "node_modules/eslint/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "bin": { - "semver": "bin/semver" + "engines": { + "node": ">=4.0" } }, - "node_modules/eslint/node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true - }, - "node_modules/eslint/node_modules/file-entry-cache": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", - "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, - "dependencies": { - "flat-cache": "^2.0.1" - }, "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/eslint/node_modules/flat-cache": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", - "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, + "node_modules/exceljs": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/exceljs/-/exceljs-4.4.0.tgz", + "integrity": "sha512-XctvKaEMaj1Ii9oDOqbW/6e1gXknSY4g/aLCDicOXqBE4M0nRWkUu0PTp++UPNzoFY12BNHMfs/VadKIS6llvg==", "dependencies": { - "flatted": "^2.0.0", - "rimraf": "2.6.3", - "write": "1.0.3" + "archiver": "^5.0.0", + "dayjs": "^1.8.34", + "fast-csv": "^4.3.1", + "jszip": "^3.10.1", + "readable-stream": "^3.6.0", + "saxes": "^5.0.1", + "tmp": "^0.2.0", + "unzipper": "^0.10.11", + "uuid": "^8.3.0" }, "engines": { - "node": ">=4" + "node": ">=8.3.0" } }, - "node_modules/eslint/node_modules/flatted": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", - "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", - "dev": true - }, - "node_modules/eslint/node_modules/globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", "dev": true, "dependencies": { - "type-fest": "^0.8.1" + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/eslint/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", "dev": true, "engines": { - "node": ">=4" + "node": ">= 0.8.0" } }, - "node_modules/eslint/node_modules/inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "node_modules/expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" + "homedir-polyfill": "^1.0.1" }, "engines": { - "node": ">=8.0.0" + "node": ">=0.10.0" } }, - "node_modules/eslint/node_modules/inquirer/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "dev": true, "dependencies": { - "color-convert": "^2.0.1" + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/eslint/node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">=10" + "node": ">=4" + } + }, + "node_modules/external-editor/node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dependencies": { + "os-tmpdir": "~1.0.2" }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" + "engines": { + "node": ">=0.6.0" } }, - "node_modules/eslint/node_modules/inquirer/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, + "node_modules/fast-csv": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/fast-csv/-/fast-csv-4.3.6.tgz", + "integrity": "sha512-2RNSpuwwsJGP0frGsOmTb9oUF+VkFSM4SyLTDgwf2ciHWTarN0lQTC+F2f/t5J9QjW+c65VFIAAu85GsvMIusw==", "dependencies": { - "color-name": "~1.1.4" + "@fast-csv/format": "4.3.5", + "@fast-csv/parse": "4.3.6" }, "engines": { - "node": ">=7.0.0" + "node": ">=10.0.0" } }, - "node_modules/eslint/node_modules/inquirer/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true }, - "node_modules/eslint/node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, "engines": { "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/inquirer/node_modules/strip-ansi": { + "node_modules/file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.1" + "flat-cache": "^3.0.4" }, "engines": { - "node": ">=8" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/eslint/node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "to-regex-range": "^5.0.1" }, "engines": { "node": ">=8" } }, - "node_modules/eslint/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "node_modules/find-node-modules": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/find-node-modules/-/find-node-modules-2.1.3.tgz", + "integrity": "sha512-UC2I2+nx1ZuOBclWVNdcnbDR5dlrOdVb7xNjmT/lHE+LsgztWks3dG7boJ37yTS/venXw84B/mAW9uHVoC5QRg==", "dev": true, - "engines": { - "node": ">=4" + "dependencies": { + "findup-sync": "^4.0.0", + "merge": "^2.1.1" } }, - "node_modules/eslint/node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", + "dev": true + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": ">=8" } }, - "node_modules/eslint/node_modules/levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==", + "node_modules/findup-sync": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", + "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", "dev": true, "dependencies": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^4.0.2", + "resolve-dir": "^1.0.1" }, "engines": { - "node": ">= 0.8.0" + "node": ">= 8" } }, - "node_modules/eslint/node_modules/optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", "dev": true, "dependencies": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" + "flatted": "^3.1.0", + "rimraf": "^3.0.2" }, "engines": { - "node": ">= 0.8.0" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/eslint/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", - "dev": true, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", "engines": { - "node": ">=4" + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" } }, - "node_modules/eslint/node_modules/prelude-ls": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==", - "dev": true, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "node_modules/fs-extra": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz", + "integrity": "sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, "engines": { - "node": ">= 0.8.0" + "node": ">=14.14" } }, - "node_modules/eslint/node_modules/regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=6.5.0" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/eslint/node_modules/rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, + "node_modules/fstream": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", + "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", "dependencies": { - "glob": "^7.1.3" + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=0.6" } }, - "node_modules/eslint/node_modules/rxjs": { - "version": "6.6.7", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", - "dev": true, + "node_modules/fstream/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dependencies": { - "tslib": "^1.9.0" + "glob": "^7.1.3" }, - "engines": { - "npm": ">=2.0.0" - } - }, - "node_modules/eslint/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, "bin": { - "semver": "bin/semver.js" + "rimraf": "bin.js" } }, - "node_modules/eslint/node_modules/shebang-command": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "dev": true, - "dependencies": { - "shebang-regex": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint/node_modules/shebang-regex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", + "dev": true + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" } }, - "node_modules/eslint/node_modules/slice-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", - "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, - "dependencies": { - "ansi-styles": "^3.2.0", - "astral-regex": "^1.0.0", - "is-fullwidth-code-point": "^2.0.0" - }, "engines": { - "node": ">=6" + "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/eslint/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, "engines": { - "node": ">=6" + "node": ">=8.0.0" } }, - "node_modules/eslint/node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", "dev": true, "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/git-cz": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/git-cz/-/git-cz-4.9.0.tgz", + "integrity": "sha512-cSRL8IIOXU7UFLdbziCYqg8f8InwLwqHezkiRHNSph7oZqGv0togId1kMTfKil6gzK0VaSXeVBb4oDl0fQCHiw==", "dev": true, + "bin": { + "git-cz": "bin/git-cz.js", + "gitcz": "bin/git-cz.js" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", "dependencies": { - "has-flag": "^3.0.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" }, "engines": { - "node": ">=4" + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/eslint/node_modules/table": { - "version": "5.4.6", - "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", - "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dev": true, "dependencies": { - "ajv": "^6.10.2", - "lodash": "^4.17.14", - "slice-ansi": "^2.1.0", - "string-width": "^3.0.0" + "is-glob": "^4.0.1" }, "engines": { - "node": ">=6.0.0" + "node": ">= 6" } }, - "node_modules/eslint/node_modules/table/node_modules/string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "node_modules/global-dirs": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", + "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", "dev": true, + "optional": true, "dependencies": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "ini": "^1.3.4" }, "engines": { - "node": ">=6" + "node": ">=4" } }, - "node_modules/eslint/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - }, - "node_modules/eslint/node_modules/type-check": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==", + "node_modules/global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", "dev": true, "dependencies": { - "prelude-ls": "~1.1.2" + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" }, "engines": { - "node": ">= 0.8.0" + "node": ">=0.10.0" } }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "node_modules/global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", "dev": true, + "dependencies": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + }, "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/eslint/node_modules/which": { + "node_modules/global-prefix/node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", @@ -1803,645 +3772,959 @@ "which": "bin/which" } }, - "node_modules/espree": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", - "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "node_modules/globals": { + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "dependencies": { - "acorn": "^7.1.1", - "acorn-jsx": "^5.2.0", - "eslint-visitor-keys": "^1.1.0" + "type-fest": "^0.20.2" }, "engines": { - "node": ">=6.0.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/espree/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "node_modules/globals/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true, - "bin": { - "acorn": "bin/acorn" - }, "engines": { - "node": ">=0.4.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dev": true, "dependencies": { - "estraverse": "^5.1.0" + "function-bind": "^1.1.2" }, "engines": { - "node": ">=0.10" + "node": ">= 0.4" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", "dev": true, "dependencies": { - "estraverse": "^5.2.0" + "parse-passwd": "^1.0.0" }, "engines": { - "node": ">=4.0" + "node": ">=0.10.0" } }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true, "engines": { - "node": ">=4.0" + "node": ">=10.17.0" } }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, "engines": { "node": ">=0.10.0" } }, - "node_modules/exceljs": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/exceljs/-/exceljs-4.4.0.tgz", - "integrity": "sha512-XctvKaEMaj1Ii9oDOqbW/6e1gXknSY4g/aLCDicOXqBE4M0nRWkUu0PTp++UPNzoFY12BNHMfs/VadKIS6llvg==", - "dependencies": { - "archiver": "^5.0.0", - "dayjs": "^1.8.34", - "fast-csv": "^4.3.1", - "jszip": "^3.10.1", - "readable-stream": "^3.6.0", - "saxes": "^5.0.1", - "tmp": "^0.2.0", - "unzipper": "^0.10.11", - "uuid": "^8.3.0" - }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, "engines": { - "node": ">=8.3.0" + "node": ">= 4" } }, - "node_modules/expand-tilde": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", - "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==", + "node_modules/immediate": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", + "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==" + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dev": true, "dependencies": { - "homedir-polyfill": "^1.0.1" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/external-editor/node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dependencies": { - "os-tmpdir": "~1.0.2" - }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, "engines": { - "node": ">=0.6.0" + "node": ">=0.8.19" } }, - "node_modules/fast-csv": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/fast-csv/-/fast-csv-4.3.6.tgz", - "integrity": "sha512-2RNSpuwwsJGP0frGsOmTb9oUF+VkFSM4SyLTDgwf2ciHWTarN0lQTC+F2f/t5J9QjW+c65VFIAAu85GsvMIusw==", + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dependencies": { - "@fast-csv/format": "4.3.5", - "@fast-csv/parse": "4.3.6" - }, - "engines": { - "node": ">=10.0.0" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", "dev": true }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "node_modules/inquirer": { + "version": "8.2.5", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz", + "integrity": "sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==", + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "node_modules/is-core-module": { + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz", + "integrity": "sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==", + "dev": true, "dependencies": { - "escape-string-regexp": "^1.0.5" + "hasown": "^2.0.2" }, "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=0.10.0" } }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "engines": { "node": ">=8" } }, - "node_modules/find-node-modules": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/find-node-modules/-/find-node-modules-2.1.3.tgz", - "integrity": "sha512-UC2I2+nx1ZuOBclWVNdcnbDR5dlrOdVb7xNjmT/lHE+LsgztWks3dG7boJ37yTS/venXw84B/mAW9uHVoC5QRg==", + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", "dev": true, - "dependencies": { - "findup-sync": "^4.0.0", - "merge": "^2.1.1" + "engines": { + "node": ">=6" } }, - "node_modules/find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", - "dev": true - }, - "node_modules/findup-sync": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", - "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "dependencies": { - "detect-file": "^1.0.0", - "is-glob": "^4.0.0", - "micromatch": "^4.0.2", - "resolve-dir": "^1.0.1" + "is-extglob": "^2.1.1" }, "engines": { - "node": ">= 8" + "node": ">=0.10.0" } }, - "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, - "dependencies": { - "flatted": "^3.1.0", - "rimraf": "^3.0.2" - }, "engines": { - "node": "^10.12.0 || >=12.0.0" + "node": ">=0.12.0" } }, - "node_modules/flatted": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", - "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", - "dev": true + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "engines": { - "node": "*" + "node": ">=10" }, "funding": { - "type": "patreon", - "url": "https://www.patreon.com/infusion" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + "node_modules/is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", + "dev": true }, - "node_modules/fs-extra": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz", - "integrity": "sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, "engines": { - "node": ">=14.14" + "node": ">=0.10.0" } }, - "node_modules/fs.realpath": { + "node_modules/isarray": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, - "node_modules/fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dependencies": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, "engines": { - "node": ">=0.6" + "node": ">=8" } }, - "node_modules/fstream/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "dev": true, "dependencies": { - "glob": "^7.1.3" + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" }, - "bin": { - "rimraf": "bin.js" + "engines": { + "node": ">=10" } }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", - "dev": true - }, - "node_modules/git-cz": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/git-cz/-/git-cz-4.9.0.tgz", - "integrity": "sha512-cSRL8IIOXU7UFLdbziCYqg8f8InwLwqHezkiRHNSph7oZqGv0togId1kMTfKil6gzK0VaSXeVBb4oDl0fQCHiw==", + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, "bin": { - "git-cz": "bin/git-cz.js", - "gitcz": "bin/git-cz.js" + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=10" } }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", "dev": true, "dependencies": { - "is-glob": "^4.0.1" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" }, "engines": { - "node": ">= 6" + "node": ">=10" } }, - "node_modules/global-dirs": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", - "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", "dev": true, - "optional": true, "dependencies": { - "ini": "^1.3.4" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, - "node_modules/global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "dev": true, "dependencies": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==", + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", "dev": true, "dependencies": { - "expand-tilde": "^2.0.2", - "homedir-polyfill": "^1.0.1", - "ini": "^1.3.4", - "is-windows": "^1.0.1", - "which": "^1.2.14" + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/global-prefix/node_modules/which": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", - "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/dedent": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", + "dev": true, + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" }, - "bin": { - "which": "bin/which" + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } } }, - "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", "dev": true, "dependencies": { - "type-fest": "^0.20.2" + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } } }, - "node_modules/globals/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, "engines": { - "node": ">=10" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } } }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", "dev": true, "dependencies": { - "parse-passwd": "^1.0.0" + "detect-newline": "^3.0.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, "engines": { - "node": ">= 4" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/immediate": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", - "integrity": "sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==" + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "dev": true, "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" }, "engines": { - "node": ">=6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "optionalDependencies": { + "fsevents": "^2.3.2" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, "engines": { - "node": ">=0.8.19" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "node_modules/inquirer": { - "version": "8.2.5", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.5.tgz", - "integrity": "sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==", + "node_modules/jest-message-util/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" }, "engines": { - "node": ">=12.0.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", "dev": true, - "optional": true + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "dev": true, "dependencies": { - "is-extglob": "^2.1.1" + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, "engines": { - "node": ">=8" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "bin": { + "semver": "bin/semver.js" + }, "engines": { - "node": ">=0.12.0" + "node": ">=10" } }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, "engines": { "node": ">=10" }, @@ -2449,31 +4732,54 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==", - "dev": true - }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "dev": true, + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, "engines": { - "node": ">=0.10.0" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "dev": true, + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } }, "node_modules/js-tokens": { "version": "4.0.0", @@ -2494,12 +4800,23 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true, - "optional": true + "dev": true }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -2513,6 +4830,18 @@ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/jsonc-parser": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", @@ -2568,6 +4897,15 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/lazystream": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz", @@ -2606,6 +4944,15 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -2631,14 +4978,25 @@ "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true, - "optional": true + "dev": true }, "node_modules/listenercount": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz", "integrity": "sha512-3mk/Zag0+IJxeDrxSgaDPy4zZ3w05PRZeJNnlWhzFz5OkX49J4krc+A8X2d2M69vGMBEX0uyl8M+W+8gH+kBqQ==" }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -2778,6 +5136,33 @@ "node": ">=12" } }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", @@ -2785,12 +5170,27 @@ "dev": true, "optional": true }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, "node_modules/merge": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/merge/-/merge-2.1.1.tgz", "integrity": "sha512-jz+Cfrg9GWOZbQAnDQ4hlVnQky+341Yk5ru8bZSe6sIDTCIg8n9i/u7hSQGSVOF3C7lH6mGtqjkiT9G4wFLL0w==", "dev": true }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, "node_modules/micromatch": { "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", @@ -2865,6 +5265,18 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", @@ -2873,6 +5285,18 @@ "node": ">=0.10.0" } }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", @@ -2928,18 +5352,69 @@ "wcwidth": "^1.0.1" }, "engines": { - "node": ">=10" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, "node_modules/pako": { @@ -2964,7 +5439,6 @@ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dev": true, - "optional": true, "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -2987,6 +5461,15 @@ "node": ">=0.10.0" } }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -3004,6 +5487,12 @@ "node": ">=8" } }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -3014,6 +5503,12 @@ "node": ">=8" } }, + "node_modules/picocolors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", + "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "dev": true + }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", @@ -3026,6 +5521,27 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -3035,6 +5551,32 @@ "node": ">= 0.8.0" } }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -3049,6 +5591,19 @@ "node": ">=0.4.0" } }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/punycode": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", @@ -3058,6 +5613,28 @@ "node": ">=6" } }, + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true + }, "node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -3110,6 +5687,15 @@ "url": "https://github.com/sponsors/mysticatea" } }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/require-from-string": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", @@ -3119,6 +5705,44 @@ "node": ">=0.10.0" } }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/resolve-dir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", @@ -3154,6 +5778,15 @@ "node": ">=8" } }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -3479,6 +6112,21 @@ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", @@ -3496,12 +6144,52 @@ "url": "https://github.com/chalk/slice-ansi?sponsor=1" } }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -3510,6 +6198,19 @@ "safe-buffer": "~5.2.0" } }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -3543,6 +6244,15 @@ "node": ">=8" } }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -3566,6 +6276,18 @@ "node": ">=8" } }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/table": { "version": "6.8.1", "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", @@ -3619,6 +6341,20 @@ "node": ">=6" } }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -3641,6 +6377,21 @@ "node": ">=8.17.0" } }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -3722,6 +6473,15 @@ "node": ">= 0.8.0" } }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/type-fest": { "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", @@ -3805,6 +6565,36 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/update-browserslist-db": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.2", + "picocolors": "^1.0.1" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -3840,6 +6630,30 @@ "dev": true, "optional": true }, + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, "node_modules/vscode-json-languageservice": { "version": "3.11.0", "resolved": "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-3.11.0.tgz", @@ -3877,6 +6691,15 @@ "integrity": "sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==", "dev": true }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -3942,17 +6765,66 @@ "node": ">=4" } }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, "node_modules/xmlchars": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/yn": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", @@ -3963,6 +6835,18 @@ "node": ">=6" } }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/zip-stream": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", diff --git a/package.json b/package.json index 5feb6d0..7326392 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,8 @@ "cht-stock-monitoring-workflow": "./main.js" }, "scripts": { - "cz": "cz" + "cz": "cz", + "test": "jest" }, "license": "AGPL-3.0-only", "devDependencies": { @@ -21,6 +22,7 @@ "eslint": "^6.8.0", "eslint-plugin-json": "^2.0.1", "git-cz": "^4.9.0", + "jest": "^29.7.0", "rewire": "^6.0.0" }, "dependencies": { diff --git a/test/example.spec.js b/test/example.spec.js new file mode 100644 index 0000000..cb73162 --- /dev/null +++ b/test/example.spec.js @@ -0,0 +1,6 @@ + +describe('JEST unit test example', () => { + it('', async() => { + expect(2+2).toBe(4); + }); +}); diff --git a/test/mocks/mocks.js b/test/mocks/mocks.js new file mode 100644 index 0000000..e0797d5 --- /dev/null +++ b/test/mocks/mocks.js @@ -0,0 +1,16 @@ + +const ItemRowMock = { + type: '', // Row type + name: '', // Row name + label: '', // Item description + required: '', // If Row item is required or not + relevant: '', // If Row item is related to another (display condition) + appearance: '', // How should the Row item be displayed + calculation: '', // If the item is calculated + default: '', // The default value of the item if there is any + constraint: '' // Constraints if there is any +}; + +module.exports = { + ItemRowMock +}; From 37b263392ff8144b910049973e0afb51b3cc7486 Mon Sep 17 00:00:00 2001 From: Foromo Ernest Teoro Date: Thu, 22 Aug 2024 12:24:51 +0100 Subject: [PATCH 2/7] Added test automation on the repo --- .github/workflows/build.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..9c61450 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,25 @@ +name: CI + +on: [push] + +jobs: + test: + runs-on: ubuntu-latest + timeout-minutes: 15 + + defaults: + run: + working-directory: . + + strategy: + matrix: + node-version: [16.x] + + steps: + - uses: actions/checkout@v3 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + - run: npm ci + - run: npm test From 7e758f2baa72ce37706b5bfa9eefc658bcb657fa Mon Sep 17 00:00:00 2001 From: Foromo Ernest Teoro Date: Thu, 29 Aug 2024 14:02:54 +0100 Subject: [PATCH 3/7] Added first part unit test for stock count --- src/add-item.js | 228 +- src/features/stock-count.js | 65 +- src/init.js | 104 +- test/mocks/mocks.js | 45 +- .../app_settings/base_settings.json | 449 + ..._pregnant_women_and_others.properties.json | 18 + .../care_of_pregnant_women_and_others.xlsx | Bin 0 -> 53203 bytes .../app/care_of_pregnant_women_and_others.xml | 2820 +++++ ...patient_assessment_under_5.properties.json | 18 + .../forms/app/patient_assessment_under_5.xlsx | Bin 0 -> 81709 bytes .../forms/app/patient_assessment_under_5.xml | 9105 +++++++++++++++++ .../forms/contact/PLACE_TYPE-create.xlsx | Bin 0 -> 23953 bytes .../forms/contact/PLACE_TYPE-edit.xlsx | Bin 0 -> 18550 bytes ...50_supervision_area-create.properties.json | 12 + .../contact/c50_supervision_area-create.xlsx | Bin 0 -> 24721 bytes .../contact/c50_supervision_area-create.xml | 250 + .../c50_supervision_area-edit.properties.json | 12 + .../contact/c50_supervision_area-edit.xlsx | Bin 0 -> 19526 bytes .../contact/c50_supervision_area-edit.xml | 141 + ...52_supervision_area-create.properties.json | 15 + .../forms/contact/c52_supervisor-create.xlsx | Bin 0 -> 17088 bytes .../forms/contact/c52_supervisor-create.xml | 175 + .../forms/contact/c52_supervisor-edit.xlsx | Bin 0 -> 17514 bytes .../forms/contact/c52_supervisor-edit.xml | 186 + .../c60_chw_site-create.properties.json | 12 + .../forms/contact/c60_chw_site-create.xlsx | Bin 0 -> 17569 bytes .../forms/contact/c60_chw_site-create.xml | 325 + .../contact/c60_chw_site-edit.properties.json | 12 + .../forms/contact/c60_chw_site-edit.xlsx | Bin 0 -> 15576 bytes .../forms/contact/c60_chw_site-edit.xml | 176 + .../contact/c62_chw-create.properties.json | 15 + .../forms/contact/c62_chw-create.xlsx | Bin 0 -> 18319 bytes .../forms/contact/c62_chw-create.xml | 222 + .../forms/contact/c62_chw-edit.xlsx | Bin 0 -> 18084 bytes .../forms/contact/c62_chw-edit.xml | 242 + .../c70_village-create.properties.json | 12 + .../forms/contact/c70_village-create.xml | 1040 ++ .../contact/c70_village-edit.properties.json | 12 + .../forms/contact/c70_village-edit.xml | 418 + .../c72_village-create.properties.json | 15 + .../forms/contact/c72_village-create.xlsx | Bin 0 -> 16367 bytes .../forms/contact/c72_village-create.xml | 149 + .../forms/contact/c72_village-edit.xlsx | Bin 0 -> 20174 bytes .../forms/contact/c72_village-edit.xml | 183 + .../forms/contact/place-types.json | 5 + .../translations/messages-en.properties | 775 ++ .../translations/messages-fr.properties | 910 ++ test/stock-count.spec.js | 46 + test/test-utils.js | 24 + 49 files changed, 18211 insertions(+), 25 deletions(-) create mode 100644 test/project-config/app_settings/base_settings.json create mode 100644 test/project-config/forms/app/care_of_pregnant_women_and_others.properties.json create mode 100644 test/project-config/forms/app/care_of_pregnant_women_and_others.xlsx create mode 100644 test/project-config/forms/app/care_of_pregnant_women_and_others.xml create mode 100644 test/project-config/forms/app/patient_assessment_under_5.properties.json create mode 100644 test/project-config/forms/app/patient_assessment_under_5.xlsx create mode 100644 test/project-config/forms/app/patient_assessment_under_5.xml create mode 100644 test/project-config/forms/contact/PLACE_TYPE-create.xlsx create mode 100644 test/project-config/forms/contact/PLACE_TYPE-edit.xlsx create mode 100644 test/project-config/forms/contact/c50_supervision_area-create.properties.json create mode 100644 test/project-config/forms/contact/c50_supervision_area-create.xlsx create mode 100644 test/project-config/forms/contact/c50_supervision_area-create.xml create mode 100644 test/project-config/forms/contact/c50_supervision_area-edit.properties.json create mode 100644 test/project-config/forms/contact/c50_supervision_area-edit.xlsx create mode 100644 test/project-config/forms/contact/c50_supervision_area-edit.xml create mode 100644 test/project-config/forms/contact/c52_supervision_area-create.properties.json create mode 100644 test/project-config/forms/contact/c52_supervisor-create.xlsx create mode 100644 test/project-config/forms/contact/c52_supervisor-create.xml create mode 100644 test/project-config/forms/contact/c52_supervisor-edit.xlsx create mode 100644 test/project-config/forms/contact/c52_supervisor-edit.xml create mode 100644 test/project-config/forms/contact/c60_chw_site-create.properties.json create mode 100644 test/project-config/forms/contact/c60_chw_site-create.xlsx create mode 100644 test/project-config/forms/contact/c60_chw_site-create.xml create mode 100644 test/project-config/forms/contact/c60_chw_site-edit.properties.json create mode 100644 test/project-config/forms/contact/c60_chw_site-edit.xlsx create mode 100644 test/project-config/forms/contact/c60_chw_site-edit.xml create mode 100644 test/project-config/forms/contact/c62_chw-create.properties.json create mode 100644 test/project-config/forms/contact/c62_chw-create.xlsx create mode 100644 test/project-config/forms/contact/c62_chw-create.xml create mode 100644 test/project-config/forms/contact/c62_chw-edit.xlsx create mode 100644 test/project-config/forms/contact/c62_chw-edit.xml create mode 100644 test/project-config/forms/contact/c70_village-create.properties.json create mode 100644 test/project-config/forms/contact/c70_village-create.xml create mode 100644 test/project-config/forms/contact/c70_village-edit.properties.json create mode 100644 test/project-config/forms/contact/c70_village-edit.xml create mode 100644 test/project-config/forms/contact/c72_village-create.properties.json create mode 100644 test/project-config/forms/contact/c72_village-create.xlsx create mode 100644 test/project-config/forms/contact/c72_village-create.xml create mode 100644 test/project-config/forms/contact/c72_village-edit.xlsx create mode 100644 test/project-config/forms/contact/c72_village-edit.xml create mode 100644 test/project-config/forms/contact/place-types.json create mode 100644 test/project-config/translations/messages-en.properties create mode 100644 test/project-config/translations/messages-fr.properties create mode 100644 test/stock-count.spec.js create mode 100644 test/test-utils.js diff --git a/src/add-item.js b/src/add-item.js index 5a1d632..a2a30b0 100644 --- a/src/add-item.js +++ b/src/add-item.js @@ -33,6 +33,14 @@ async function getItemConfig(configs) { return `Form ${input} not found`; } return true; + }, + when: function(answers){ + const argv = process.argv; + if (!argv[14]){ + return true; + } + answers.form = argv[14]; + return false; } } ]); @@ -49,7 +57,15 @@ async function getItemConfig(configs) { type: 'confirm', name: 'isAlwaysCurrent', message: `Is ${form} report reported date always the current date?`, - default: true + default: true, + when: function(answers){ + const argv = process.argv; + if (!argv[15]){ + return true; + } + answers.isAlwaysCurrent = argv[15]; + return false; + } } ]); if (!reportedDateSameAsCurrent.isAlwaysCurrent) { @@ -58,7 +74,15 @@ async function getItemConfig(configs) { type: 'input', name: 'reportedDate', message: 'Enter a xlsform calculation formular to calculate the reported date', - default: 'now()' + default: 'now()', + when: function(answers){ + const argv = process.argv; + if (!argv[16]){ + return true; + } + answers.reportedDate = argv[16]; + return false; + } } ]); formConfig.reportedDate = `${reportDateFormular.reportedDate}`; @@ -80,6 +104,7 @@ async function getItemConfig(configs) { value: it, }; }); + choices.push({ name: 'Create new item', value: '___new_item___' @@ -89,6 +114,14 @@ async function getItemConfig(configs) { name: 'item', message: 'Select item', choices, + when: function(answers){ + const argv = process.argv; + if (!argv[17]){ + return true; + } + answers.item = argv[17]; + return false; + } }]); if (itemSelect.item !== '___new_item___') { itemConfig = configs.items[itemSelect.item]; @@ -127,16 +160,78 @@ async function getItemConfig(configs) { type: 'input', name: 'name', message: 'Enter category name', + when: function(answers){ + const argv = process.argv; + if (!argv[17]){ + return true; + } + answers.name = argv[17]; + return false; + } }, ...configs.languages.map((language) => ({ type: 'input', name: `label.${language}`, - message: `Enter category label in ${language}` + message: `Enter category label in ${language}`, + when: function(answers) { + const argv = process.argv; + if (!argv[18]){ + return true; + } + let answer = {}; + argv[18].split(',').forEach(el => { + switch(language){ + case 'en': + answer = { + label: { + 'en': el + } + }; + break; + case 'fr': + answer = { + label: { + 'fr': el + } + }; + break; + } + }); + + Object.assign(answers, answer); + return false; + } })), ...configs.languages.map((language) => ({ type: 'input', name: `description.${language}`, - message: `Enter category description in ${language}` + message: `Enter category description in ${language}`, + when: function(answers){ + const argv = process.argv; + if (!argv[19]){ + return true; + } + let answer = {}; + switch(language){ + case 'en': + answer = { + description: { + 'en': argv[19].split(',')[0] + } + }; + break; + case 'fr': + answer = { + description: { + 'fr': argv[19].split(',')[1] + } + }; + break; + } + + Object.assign(answers, answer); + return false; + } })) ]); } @@ -146,17 +241,47 @@ async function getItemConfig(configs) { type: 'input', name: 'name', message: 'Enter item name', + when: function(answers){ + const argv = process.argv; + if (!argv[20]){ + return true; + } + answers.name = argv[20]; + return false; + } }, ...configs.languages.map((language) => ({ type: 'input', name: `label.${language}`, - message: `Enter item label in ${language}` + message: `Enter item label in ${language}`, + when: function(answers){ + const argv = process.argv; + if (!argv[21]){ + return true; + } + const answer = { + label: { + 'en': argv[21].split(',')[0], + 'fr': argv[21].split(',')[1] + } + }; + Object.assign(answers, answer); + return false; + } })), { type: 'confirm', name: 'isInSet', message: 'Can this item be organized in set like box/blister?', default: true, + when: function(answers){ + const argv = process.argv; + if (!argv[22]){ + return true; + } + answers.isInSet = argv[22]; + return false; + } }, ]); @@ -165,12 +290,38 @@ async function getItemConfig(configs) { ...configs.languages.map((language) => ({ type: 'input', name: `set.label.${language}`, - message: `What is the name of the set? Ex: box of 8 in ${language} ?` + message: `What is the name of the set? Ex: box of 8 in ${language} ?`, + when: function(answers){ + const argv = process.argv; + if (!argv[23]){ + return true; + } + const answer = { + set:{ + label: { + 'en': argv[23].split(',')[0], + 'fr': argv[23].split(',')[1] + } + } + }; + Object.assign(answers, answer); + + return false; + } })), { type: 'number', name: 'set.count', - message: 'How many units are there in the set ? ' + message: 'How many units are there in the set ? ', + when: function(answers){ + const argv = process.argv; + if (!argv[24]){ + return true; + } + + answers.set.count = argv[24]; + return false; + } }, ]); Object.assign(itemConfig, setConfigs); @@ -179,23 +330,64 @@ async function getItemConfig(configs) { ...configs.languages.map((language) => ({ type: 'input', name: `unit.label.${language}`, - message: `What is the name of the unit? Ex: Tablet in ${language} ?` + message: `What is the name of the unit? Ex: Tablet in ${language} ?`, + when: function(answers){ + const argv = process.argv; + if (!argv[25]){ + return true; + } + const answer = { + unit:{ + label: { + 'en': argv[25].split(',')[0], + 'fr': argv[25].split(',')[1] + } + } + }; + + Object.assign(answers, answer); + return false; + } })), { type: 'number', name: 'warning_total', message: 'What is the threshold (quantity) that requires attention ? ', + when: function(answers){ + const argv = process.argv; + if (!argv[26]){ + return true; + } + answers.warning_total = argv[26]; + return false; + } }, { type: 'number', name: 'danger_total', message: 'What is the threshold (quantity) that triggers a stock out ? ', + when: function(answers){ + const argv = process.argv; + if (!argv[27]){ + return true; + } + answers.danger_total = argv[27]; + return false; + } }, { type: 'number', name: 'max_total', message: 'What is the maximum quantity to have for this item ? ', default: -1, + when: function(answers){ + const argv = process.argv; + if (!argv[28]){ + return true; + } + answers.max_total = argv[28]; + return false; + } } ]); Object.assign(itemConfig, itemGeneralConfigs); @@ -218,7 +410,15 @@ async function getItemConfig(configs) { name: 'Custom automatic formula', value: 'formula' } - ] + ], + when: function(answers){ + const argv = process.argv; + if (!argv[29]){ + return true; + } + answers.deduction_type = argv[29]; + return false; + } } ]); @@ -226,7 +426,15 @@ async function getItemConfig(configs) { { type: 'input', name: 'formular', - message: itemDeduction.deduction_type === 'formula' ? 'Enter formular' : 'In what condition ask the quantity?' + message: itemDeduction.deduction_type === 'formula' ? 'Enter formular' : 'In what condition ask the quantity?', + when: function(answers){ + const argv = process.argv; + if (!argv[30]){ + return true; + } + answers.formular = argv[30]; + return false; + } } ]); itemDeduction.formular = formularRequest.formular; diff --git a/src/features/stock-count.js b/src/features/stock-count.js index 0c04801..7b2a22a 100644 --- a/src/features/stock-count.js +++ b/src/features/stock-count.js @@ -228,12 +228,35 @@ async function getStockCountConfigs(levels, locales) { name: 'useItemCategory', message: 'Categorize stock items', default: true, + when: function(answers){ + const argv = process.argv; + if (!argv[9]){ + return true; + } + answers.useItemCategory = argv[9]; + return false; + } }, { type: 'input', name: 'features.stock_count.form_name', message: 'Stock count form (Used to fill in balances on hand) ID', default: 'stock_count', + when: function(answers){ + const argv = process.argv; + if (!argv[9]){ + return true; + } + const answer = { + features: { + stock_count: { + form_name: argv[9] + } + } + }; + Object.assign(answers, answer); + return false; + } }, { type: 'checkbox', @@ -245,6 +268,16 @@ async function getStockCountConfigs(levels, locales) { value: l, }; }), + when: function(answers){ + const argv = process.argv; + if (!argv[10]){ + return true; + } + + answers.features.stock_count.contact_types = eval(argv[10]); + + return false; + } }, { type: 'list', @@ -260,6 +293,15 @@ async function getStockCountConfigs(levels, locales) { value: 'task' } ], + when: function(answers){ + const argv = process.argv; + if (!argv[11]){ + return true; + } + + answers.features.stock_count.type = argv[11]; + return false; + } }, ]); @@ -283,6 +325,14 @@ async function getStockCountConfigs(levels, locales) { value: 'end_of_month' } ], + when: function(answers){ + const argv = process.argv; + if (!argv[12]){ + return true; + } + answers.frequency = argv[12]; + return false; + } } ]); answers.features.stock_count.frequency = tasksAnswers.frequency; @@ -294,7 +344,20 @@ async function getStockCountConfigs(levels, locales) { type: 'input', name: locale.code, message: `Stock count form title in ${locale.name}`, - default: 'Stock count' + default: 'Stock count', + when: function(answers){ + const argv = process.argv; + if (!argv[13]){ + return true; + } + + const answer = { + 'en': argv[13].split(',')[0], + 'fr': argv[13].split(',')[1] + }; + Object.assign(answers, answer); + return false; + } }; }), ]); diff --git a/src/init.js b/src/init.js index 218d85f..9ff85b9 100644 --- a/src/init.js +++ b/src/init.js @@ -27,6 +27,14 @@ async function getInitConfigs() { value: '3_levels' } ], + when: function (answers) { + const argv = process.argv; + if (argv[3] === '2_levels') { + answers.monitoring_type = argv[3]; + return false; + } + return true; + }, } ]); @@ -59,14 +67,73 @@ async function getInitConfigs() { name: `${levelNumber}.contact_type`, message: `Select level ${levelNumber}${messagePrecision} contact type`, choices: appPersonTypes.map((p) => p.id), + when: function (answers) { + const argv = process.argv; + let answer = {}; + if (!argv[4] || !argv[6]){ + return true; + } + + switch(levelNumber){ + case 1: + answer = { + 1: { + contact_type: argv[4], + role: argv[5] + } + }; + break; + case 2: + answer = { + 2: { + contact_type: argv[6], + role: argv[7] + } + }; + break; + } + Object.assign(answers, answer); + return false; + }, }, { type: 'list', name: `${levelNumber}.role`, message: `Select level ${levelNumber}${messagePrecision} user role`, - choices: appUserRoles + choices: appUserRoles, + when: function (answers) { + const argv = process.argv; + let answer = {}; + if (!argv[5] || !argv[7]){ + return true; + } + + switch(levelNumber){ + case 1: + answer = { + 1: { + contact_type: argv[4], + role: argv[5] + } + }; + break; + case 2: + answer = { + 2: { + contact_type: argv[6], + role: argv[7] + } + }; + break; + } + + Object.assign(answers, answer); + + return false; + }, } ]); + const contactType = level[`${levelNumber}`].contact_type; // Get parent const contactTypeDetails = appSettings.contact_types.find((ct) => ct.id === contactType); @@ -77,6 +144,41 @@ async function getInitConfigs() { name: 'parent', message: `Select level ${levelNumber}${messagePrecision} parent`, choices: contactTypeDetails.parents, + when:function(answers){ + const argv = process.argv; + let answer = {}; + if (!argv[10]){ + return true; + } + + switch(levelNumber){ + case 1: + answer = { + 1: { + parent: argv[10], + } + }; + break; + case 2: + answer = { + 2: { + parent: argv[10], + } + }; + break; + case 3: + answer = { + 3: { + parent: argv[10], + } + }; + break; + } + + Object.assign(answers, answer); + + return false; + } } ]); level[`${levelNumber}`].place_type = parent.parent; diff --git a/test/mocks/mocks.js b/test/mocks/mocks.js index e0797d5..ececc6f 100644 --- a/test/mocks/mocks.js +++ b/test/mocks/mocks.js @@ -1,16 +1,35 @@ - -const ItemRowMock = { - type: '', // Row type - name: '', // Row name - label: '', // Item description - required: '', // If Row item is required or not - relevant: '', // If Row item is related to another (display condition) - appearance: '', // How should the Row item be displayed - calculation: '', // If the item is calculated - default: '', // The default value of the item if there is any - constraint: '' // Constraints if there is any -}; +const stockCountScenario = [ + 'init', + '2_levels', + 'c62_chw', + 'chw', + 'c52_supervisor', + 'supervisor', + 'Y', + 'stock_count', + '[{contact_type: \'c62_chw\', role: \'chw\', place_type: \'c60_chw_site\' },{contact_type: \'c52_supervisor\',role: \'supervisor\',place_type: \'c50_supervision_area\'}]', + 'action', + 'end_of_week', + ['Stock count', 'Stock count'], + 'patient_assessment_under_5', + 'Y', + 'now()', + 'malaria', + ['Category', 'Categorie'], + ['Category', 'Categorie'], + 'paracetamol', + ['Paracetamol', 'Paracetamole'], + 'Y', + ['Box of 8', 'Boite de 8'], + 8, + ['Tablet', 'Comprimes'], + 20, + 15, + 15, + 'by_user', + 0 +]; module.exports = { - ItemRowMock + stockCountScenario }; diff --git a/test/project-config/app_settings/base_settings.json b/test/project-config/app_settings/base_settings.json new file mode 100644 index 0000000..4300067 --- /dev/null +++ b/test/project-config/app_settings/base_settings.json @@ -0,0 +1,449 @@ +{ + "app_url": "https://moh-mali-chw.dev.medicmobile.org", + "token_login": { + "enabled": true, + "translation_key": "sms.token.login.help" + }, + "sms": { + "outgoing_service": "rapidpro", + "rapidpro": { + "url": "https://rapidpro.app.medicmobile.org/" + } + }, + "locales": [ + { + "code": "en", + "name": "English" + }, + { + "code": "fr", + "name": "French" + } + ], + "locale": "fr", + "locale_outgoing": "fr", + "date_format": "ddd, Do MMM, YYYY", + "reported_date_format": "ddd, MMM Do, YYYY [at] h:mm A", + "forms_only_mode": false, + "task_days_overdue": true, + "roles": { + "central_admin": { + "name": "usertype.central_admin" + }, + "regional_admin": { + "name": "usertype.national_admin" + }, + "district_admin": { + "name": "usertype.district_admin" + }, + "dtc": { + "name": "usertype.dtc", + "offline": true + }, + "supervisor": { + "name": "usertype.supervisor", + "offline": true + }, + "chw": { + "name": "usertype.chw", + "offline": true + }, + "oca": { + "name": "usertype.oca", + "offline": true + }, + "oca_supervisor": { + "name": "usertype.oca_supervisor", + "offline": true + }, + "savings": { + "name": "usertype.savings", + "offline": true + }, + "wash_comity": { + "name": "usertype.wash_comity", + "offline": true + }, + "cvs": { + "name": "usertype.cvs", + "offline": true + }, + "manager_stock": { + "name": "usertype.manager_stock", + "offline": true + } + }, + "replication_depth": [ + { + "role": "dtc", + "depth": 1 + }, + { + "role": "supervisor", + "depth": 2, + "report_depth": 0 + }, + { + "role": "oca_supervisor", + "depth": 3, + "report_depth": 0 + }, + { + "role": "savings", + "depth": 3, + "report_depth": 0 + }, + { + "role": "oca", + "depth": 3, + "report_depth": 0 + }, + { + "role": "wash_comity", + "depth": 3, + "report_depth": 0 + }, + { + "role": "cvs", + "depth": 3, + "report_depth": 0 + }, + { + "role": "chw", + "depth": 4, + "report_depth": 0 + }, + { + "role": "manager_stock", + "depth": 2, + "report_depth": 1 + } + ], + "permissions": { + "can_access_gateway_api": [], + "can_aggregate_targets": [], + "can_bulk_delete_reports": [ + "central_admin", + "regional_admin" + ], + "can_configure": [ + "central_admin" + ], + "can_create_people": [ + "central_admin", + "regional_admin", + "chw", + "oca_supervisor" + ], + "can_create_places": [ + "central_admin", + "regional_admin", + "chw", + "oca_supervisor" + ], + "can_create_records": [ + "central_admin", + "regional_admin", + "chw", + "oca", + "savings", + "wash_comity", + "cvs", + "oca_supervisor", + "supervisor" + ], + "can_create_users": [ + "central_admin", + "regional_admin" + ], + "can_delete_contacts": [ + "central_admin" + ], + "can_delete_messages": [ + "central_admin" + ], + "can_delete_reports": [ + "central_admin" + ], + "can_delete_users": [], + "can_edit": [ + "central_admin", + "regional_admin", + "district_admin", + "dtc", + "supervisor", + "chw", + "oca_supervisor", + "savings", + "oca", + "wash_comity", + "cvs", + "manager_stock" + ], + "can_edit_profile": [ + "central_admin", + "regional_admin" + ], + "can_edit_verification": [ + "central_admin", + "regional_admin", + "district_admin", + "dtc", + "supervisor", + "oca_supervisor", + "manager_stock" + ], + "can_export_all": [], + "can_export_contacts": [ + "central_admin", + "regional_admin" + ], + "can_export_dhis": [], + "can_export_feedback": [], + "can_export_messages": [], + "can_log_out_on_android": [], + "can_update_places": [ + "central_admin", + "regional_admin", + "district_admin", + "chw", + "oca" + ], + "can_update_reports": [ + "central_admin", + "regional_admin", + "district_admin" + ], + "can_update_users": [ + "central_admin" + ], + "can_verify_reports": [ + "central_admin", + "regional_admin", + "district_admin", + "dtc", + "supervisor", + "chw", + "oca", + "oca_supervisor", + "manager_stock" + ], + "can_view_analytics": [ + "chw", + "oca", + "savings", + "wash_comity", + "cvs" + ], + "can_view_analytics_tab": [ + "chw", + "oca", + "savings", + "wash_comity", + "cvs" + ], + "can_view_call_action": [], + "can_view_contacts": [ + "central_admin", + "regional_admin", + "district_admin", + "dtc", + "supervisor", + "chw", + "oca", + "wash_comity", + "cvs", + "oca_supervisor", + "savings", + "manager_stock" + ], + "can_view_contacts_tab": [ + "central_admin", + "regional_admin", + "district_admin", + "dtc", + "supervisor", + "chw", + "oca", + "oca_supervisor", + "savings", + "cvs", + "wash_comity", + "manager_stock" + ], + "can_view_last_visited_date": [], + "can_view_message_action": [], + "can_view_messages": [], + "can_view_messages_tab": [], + "can_view_outgoing_messages": [], + "can_view_reports": [ + "central_admin", + "regional_admin", + "district_admin", + "dtc" + ], + "can_view_reports_tab": [ + "central_admin", + "regional_admin", + "district_admin", + "dtc" + ], + "can_view_tasks": [ + "dtc", + "supervisor", + "chw", + "oca", + "oca_supervisor", + "savings", + "wash_comity", + "cvs", + "manager_stock" + ], + "can_view_tasks_tab": [ + "dtc", + "supervisor", + "chw", + "oca", + "oca_supervisor", + "savings", + "wash_comity", + "cvs", + "manager_stock" + ], + "can_view_uhc_stats": [], + "can_view_unallocated_data_records": [ + "central_admin", + "regional_admin", + "district_admin" + ], + "can_view_users": [ + "central_admin", + "regional_admin", + "district_admin" + ], + "can_write_wealth_quintiles": [], + "can_create_chw": [ + "central_admin", + "regional_admin" + ], + "can_manage_cvss": [ + "savings", + "oca" + ], + "can_view_old_action_bar": [ + "central_admin", + "regional_admin", + "district_admin", + "dtc", + "supervisor", + "chw", + "oca", + "savings", + "manager_stock" + ] + }, + "place_hierarchy_types": [ + "c50_supervision_area", + "c60_chw_site", + "c70_village" + ], + "contact_types": [ + { + "id": "c50_supervision_area", + "name_key": "contact.type.c50_supervision_area", + "group_key": "contact.type.c50_supervision_area.plural", + "create_key": "contact.type.c50_supervision_area.new", + "edit_key": "contact.type.c50_supervision_area.edit", + "icon": "icon-manager", + "create_form": "form:contact:c50_supervision_area:create", + "edit_form": "form:contact:c50_supervision_area:edit" + }, + { + "id": "c60_chw_site", + "name_key": "contact.type.c60_chw_site", + "group_key": "contact.type.c60_chw_site.plural", + "create_key": "contact.type.c60_chw_site.new", + "edit_key": "contact.type.c60_chw_site.edit", + "parents": [ + "c50_supervision_area" + ], + "icon": "icon-chw-area", + "create_form": "form:contact:c60_chw_site:create", + "edit_form": "form:contact:c60_chw_site:edit" + }, + { + "id": "c70_village", + "name_key": "contact.type.c70_village", + "group_key": "contact.type.c70_village.plural", + "create_key": "contact.type.c70_village.new", + "edit_key": "contact.type.c70_village.edit", + "parents": [ + "c60_chw_site" + ], + "icon": "icon-community", + "create_form": "form:contact:c70_village:create", + "edit_form": "form:contact:c70_village:edit" + }, + { + "id": "c52_supervisor", + "name_key": "contact.type.c52_supervisor", + "group_key": "contact.type.c52_supervisor.plural", + "create_key": "contact.type.c52_supervisor.new", + "edit_key": "contact.type.c52_supervisor.edit", + "parents": [ + "c50_supervision_area" + ], + "icon": "icon-manager", + "create_form": "form:contact:c52_supervisor:create", + "edit_form": "form:contact:c52_supervisor:edit", + "person": true + }, + { + "id": "c62_chw", + "name_key": "contact.type.c62_chw", + "group_key": "contact.type.c62_chw.plural", + "create_key": "contact.type.c62_chw.new", + "edit_key": "contact.type.c62_chw.edit", + "parents": [ + "c60_chw_site" + ], + "icon": "icon-chw", + "create_form": "form:contact:c62_chw:create", + "edit_form": "form:contact:c62_chw:edit", + "person": true + }, + { + "id": "c72_village", + "name_key": "contact.type.c72_village", + "group_key": "contact.type.c72_village.plural", + "create_key": "contact.type.c72_village.new", + "edit_key": "contact.type.c72_village.edit", + "parents": [ + "c70_village" + ], + "icon": "medic-person", + "create_form": "form:contact:c72_village:create", + "edit_form": "form:contact:c72_village:edit", + "person": true + } + ], + "create_user_for_contacts": { + "replace_forms": [ + "replace_user" + ] + }, + "transitions": { + "death_reporting": true, + "default_responses": true, + "update_clinics": true, + "conditional_alerts": true, + "generate_shortcode_on_contacts": true, + "create_user_for_contacts": true + }, + "death_reporting": { + "mark_deceased_forms": [ + "death_report" + ], + "date_field": "fields.death_report.date_of_death" + } +} diff --git a/test/project-config/forms/app/care_of_pregnant_women_and_others.properties.json b/test/project-config/forms/app/care_of_pregnant_women_and_others.properties.json new file mode 100644 index 0000000..47dcbcb --- /dev/null +++ b/test/project-config/forms/app/care_of_pregnant_women_and_others.properties.json @@ -0,0 +1,18 @@ +{ + "title": [ + { + "locale": "en", + "content": "Care of Adult and pregnant women" + }, + { + "locale": "fr", + "content": "PEC adulte et femme enceinte" + } + ], + "context": { + "place": false, + "person": true, + "expression": "contact.contact_type === 'c92_household' && summary.alive && ageInYears(contact) >= 5 && user.role === 'chw'" + }, + "icon": "icon-healthcare-assessment" + } \ No newline at end of file diff --git a/test/project-config/forms/app/care_of_pregnant_women_and_others.xlsx b/test/project-config/forms/app/care_of_pregnant_women_and_others.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..5d2687625f1a68a8342f02f3bddc0bdee181832e GIT binary patch literal 53203 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

ZBj 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 literal 0 HcmV?d00001 diff --git a/test/project-config/forms/app/care_of_pregnant_women_and_others.xml b/test/project-config/forms/app/care_of_pregnant_women_and_others.xml new file mode 100644 index 0000000..4983219 --- /dev/null +++ b/test/project-config/forms/app/care_of_pregnant_women_and_others.xml @@ -0,0 +1,2820 @@ + + + + PEC de la femme enceinte et autres + + + + + <b>Do the RDT to have the result RDT to date</b> + + + 1. Please disinfect your hands before performing the RDT + + + 2. Please put on your gloves + jr://images/put_gloves.JPG + + + 3. Please mark the patient information on the cassette (first and last name, date and time of RDT completion) before proceeding with RDT + jr://images/notice_name.JPG + + + 4. Please clean the patient's finger where the blood will be collected + jr://images/clean_finger.JPG + + + mRDT + + + 5. Please prick the patient's finger in the right place to collect blood + jr://images/prick_finger.JPG + + + 6.Please extract the blood using the pipette and spread it on the cassette in the round well for the sample. Note that a single pipette of blood is sufficient + jr://images/drops.JPG + + + 7. Please add 4 drops of solvent to the square diluent well + jr://images/Ajouter_les_gouttes.JPG + + + 8. Please activate the 15 min timer below. While you wait to read the result, please store the needles in the safety box after use. Give the rules of hygiene that the patient can follow to avoid malaria. + + + mRDT + + + Example of a positive RDT + jr://images/positive.png + + + Example of negative RDT + jr://images/negative.png + + + Negative + + + Positive + + + This field is required + + + What is the result of the RDT? + + + mRDT + + + Other + + + Paracetamol Tablet 500 mg + + + This field is required + + + What is the treatment received ? + + + This field is required + + + Specify (Other) + + + No + + + Yes + + + This field is required + + + Did have a history of a hot body, or hot to the touch? + + + No + + + Yes + + + This field is required + + + Has had a positive RDT in the past 15 days? + + + No + + + Yes + + + This field is required + + + Did receive treatment? + + + <h2 style="background-color:#EAD1DC"> has a fever</h2> + + + <h2 style="background-color:#67ce1a"> doesn't have a fever</h2> + + + The number of days is between 1 and 10 days + + + This field is required + + + For how many days did he have a history of fever? + + + No + + + Yes + + + This field is required + + + Can you do the RDT now? + + + Other + + + Out Of Stock + + + This field is required + + + Why can't you do the TDR? + + + This field is required + + + Specify (Other) + + + Complaints/History + + + Properly disinfect the thermometer before storing it. + + + Thermometer + jr://images/thermometer.png + + + Use the thermometer to take the temperature. + + + The temperature must be between 36 and 45 inclusive + + + This field is required + + + What is the temperature? + + + The weight should be between 5 kg and 200 kg + + + What is the weight (in kg)? + + + Constants + + + No + + + Yes + + + This field is required + + + Abdominal pain + + + No + + + Yes + + + This field is required + + + Spontaneous bleeding + + + No + + + Yes + + + This field is required + + + Difficulty breathing + + + No + + + Yes + + + This field is required + + + Convulsions + + + No + + + Yes + + + This field is required + + + Dark urine (cola colored) + + + No + + + Yes + + + This field is required + + + Difficulty drinking and/or eating + + + No + + + Yes + + + This field is required + + + Severe headache/blurred vision + + + No + + + Yes + + + This field is required + + + jaundice (yellow eyes) + + + No + + + Yes + + + This field is required + + + Pronounced conjunctival pallor + + + No + + + Yes + + + This field is required + + + Inability to stand or sit + + + No + + + Yes + + + This field is required + + + Unconscious + + + No + + + Yes + + + This field is required + + + Vomiting of any food intake + + + <b>Does have any of the following danger signs? </b> + + + Danger sign search + + + What is the patient's name? + + + Date of Birth + + + Name + + + Patient ID + + + Sex + + + Source + + + Source ID + + + Contact ID + + + Langue + + + Nom + + + Telephone + + + Utilisateur + + + next follow-up visit treatment + + + <h2 style="background-color:#ee2a02">FEVER TO REFER</h2> + + + <h2 style="background-color:#f6b426">SIMPLE MALARIA</h2> + + + <h2 style="background-color:#ee2a02"> is a pregnant woman in her 1st trimester. </br> +Refer to CSCom for ANC and malaria management</h2> + + + This field is required + + + For how many days has been taking ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? + + + No + + + Yes + + + Verify if the patient has been following the treatment. + + + This field is required + + + taken CTA (Artemether + Lumefantrine (AL): 20mg/120mg)? + + + Other + + + Out Of Stock + + + This field is required + + + Why didn't take ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? + + + Fever + + + Refer to the CSCOM for a TB test. + + + Days old + + + Months + + + Week + + + Patient Sex + + + Patient Sex + + + Patient Sex + + + box of 12 pills + + + Quantity of FREE ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/12 + + + box of 24 pills + + + Quantity of FREE ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 FOR PREGNANT WOMEN + + + box of 18 pills + + + Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/18 + + + box of 24 pills + + + Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 + + + Materials <i class="fa fa-cubes"></i> + + + Fever <i class="fa fa-cubes"></i> + + + Quantity of BULK GLOVES + + + Malaria <i class="fa fa-cubes"></i> + + + Quantity of PARACETAMOL TABLET 500MG + + + Quantity of FREE RAPID DIAGNOSTIC TEST (TDR) + + + Stock uses + + + Date must be before today + + + This field is required + + + Enter the date the assessment was made + + + The patient went to the ASC + + + During the home visit + + + Other + + + This field is required + + + How was found? + + + This field is required + + + Specify (Other) + + + This field is required + + + Specify (Other) + + + No + + + Yes + + + This field is required + + + Was the assessment done today? + + + Other + + + Phone lost + + + Phone Discharged/Broken + + + This field is required + + + Why was the evaluation not done today? + + + Carrying out the assessment + + + Refer + + + Treat at home + + + This field is required + + + What is your course of action? + + + No + + + Yes + + + This field is required + + + Have you treated with Artemether 20mg – Lumefantrine 120mg/tablets? + + + Uncomplicated Malaria + + + Give Artemether + Lumefantrine (AL): 20mg/120mg. </br> +2 tablets Morning-Evening for 3 days + + + Give Artemether + Lumefantrine (AL): 20mg/120mg.</br> +3 tablets Morning-Evening for 3 days + + + Give Artemether + Lumefantrine (AL): 20mg/120mg. </br> +4 tablets Morning-Evening for 3 days + + + Other + + + Out Of Stock + + + This field is required + + + Why didn't you treat the patient with Artemether 20 mg - Lumefantrine 120mg/ tablets? + + + This field is required + + + Specify (Other) + + + Pregnant woman and the pregnancy is less than 4 months + + + TDR not produced due to out of stock. + + + Danger Signs <i class="fa fa-warning"></i> + + + Diagnostic<i class="fa fa-stethoscope"></i> + + + Fever + + + Give paracetamol: ½ tablet of 500 mg. </br> +3 times a day for 3 days + + + Give paracetamol: 1 tablet of 500 mg. </br> +3 times a day for 3 days + + + Give paracetamol: 2 tablets of 500 mg. </br> +3 times a day for 3 days + + + Give paracetamol: ½ tablet of 500 mg. + + + Give paracetamol: 1 tablet of 500 mg. + + + Give paracetamol: 2 tablets of 500 mg. + + + Follow<i class="fa fa-flag"></i> + + + The next follow-up visit is: + + + The next treatment follow-up visit is: + + + Vomiting of any food intake + + + Abdominal pain + + + Spontaneous bleeding + + + Difficulty breathing + + + Convulsions + + + Dark urine (cola colored) + + + Difficulty drinking and/or eating + + + Severe headache/blurred vision + + + jaundice (yellow eyes) + + + Pronounced conjunctival pallor + + + Inability to stand or sit + + + Unconscious + + + Presence of Fever + + + Refer the patient to the CSCOM. +Inform the patient that the CSCOM provides free testing, treatment, and support for people with tuberculosis. + + + Advise on the use of impregnated mosquito nets, environmental sanitation and the elimination of breeding grounds (stagnant water, old cans, canaries,...) + + + Simple Malaria + + + <h4 style="text-align:center;"></h4><h5 style="text-align:center;"> </h5> <h5 style="text-align:center;"> </h5> + + + Fever persists after 3 days of well conducted treatment (CTA). + + + <b>Refer to CSCOM </b><i class="fa fa-warning"></i> + + + Patient Summary<I class="fa fa-user"></i> + + + Suspicion of Tuberculosis + + + TDR Result: + + + TREATMENT<i class="fa fa-medkit"></i> + + + No + + + Yes + + + This field is required + + + Did you refer? + + + SPECIAL INSTRUCTIONS <i class = "fa fa-hand-o-right"></i> + + + Summary + + + <b>Does have any of the following characteristics:</b> + + + No + + + Yes + + + This field is required + + + Presence of chronic cough for more than 14 days + + + No + + + Yes + + + This field is required + + + Hemoptysis + + + No + + + Yes + + + This field is required + + + Prolonged fever of more than 21 days. + + + No + + + Yes + + + This field is required + + + Visible weight loss + + + Tb signs + + + Follow up on the patient + + + Refer to the CSCOM + + + This field is required + + + What is your course of action? + + + This field is required + + + Specify any other problems + + + To behave + + + next follow-up visit + + + + + <b>Faire le TDR pour avoir le résultat TDR à ce jour</b> + + + 1. Veuillez vous désinfecter les mains avant de prodécer au TDR + + + 2. Merci de mettre vos gants + jr://images/put_gloves.JPG + + + 3. Veuillez marquer les informations du patient sur la cassette (prénom et nom, date et heure de réalisation du TDR) avant de procéder au TDR + jr://images/notice_name.JPG + + + 4. Veuillez nettoyer le doigt du patient où le sang sera recueilli + jr://images/clean_finger.JPG + + + Comment faire un TDR paludisme + + + 5. Veuillez piquer le doigt du patient au bon endroit pour collecter le sang + jr://images/prick_finger.JPG + + + 6.Veuillez extraire le sang en utilisant la pipette et l'étaler sur la cassette dans le puits rond pour l'échantillon. Notez qu'une seule pipette de sang est suffisante + jr://images/drops.JPG + + + 7. Mettez le nombre de gouttes de solvants indiqué pour ce type de TDR dans le puit du dilluant. + jr://images/Ajouter_les_gouttes.JPG + + + 8. Veuillez activer le minuteur de 15 mn ci dessous. Pendant que vous patientez pour lire le résultat, merci de ranger les aiguilles dans la boite de sécurité après usage. Donnez les règles d'hygiène que le patient peut suivre pour éviter le paludisme. + + + Comment faire un TDR paludisme + + + Exemple d'un TDR positif + jr://images/positive.png + + + Exemple de TDR négatif + jr://images/negative.png + + + Négatif + + + Positif + + + Ce champ est obligatoire + + + Quel est le résultat du TDR? + + + Comment faire un TDR paludisme + + + Autre + + + Paracétamol Comprime 500 mg + + + Ce champ est obligatoire + + + Quel est le traitement reçu ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Non + + + Oui + + + Ce champ est obligatoire + + + avait-il/elle un antécédent de corps chaud, ou corps chaud au toucher? + + + Non + + + Oui + + + Ce champ est obligatoire + + + a-t-il/elle eu un TDR positif dans les 15 jours passés ? + + + Non + + + Oui + + + Ce champ est obligatoire + + + a-t-il/elle reçu un traitement? + + + <h2 style="background-color:#EAD1DC"> a de la fièvre</h2> + + + <h2 style="background-color:#67ce1a"> n'a pas de la fièvre</h2> + + + Le nombre de jours est compris entre 1 et 10 jours + + + Ce champ est obligatoire + + + Depuis combien de jours avait t-il/elle un antécédent de fièvre? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Pouvez- vous faire le TDR maintenant? + + + Autre + + + Rupture de stock + + + Ce champ est obligatoire + + + Pourquoi vous ne pouvez pas faire le TDR ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Plaintes/Antécédents + + + Désinfectez correctement le thermomètre avant de le ranger. + + + Thermomètre + jr://images/thermometer.png + + + Utilisez le thermomètre pour prendre la température. + + + La température doit être comprise entre 36 et 45 inclus + + + Ce champ est obligatoire + + + Quelle est la température? + + + Le poids doit être compris entre 4 kg et 200 kg + + + Quel est le poids (en kg)? + + + Constantes + + + Non + + + Oui + + + Ce champ est obligatoire + + + Douleur abdominale + + + Non + + + Oui + + + Ce champ est obligatoire + + + Saignement spontané + + + Non + + + Oui + + + Ce champ est obligatoire + + + Difficulté respiratoire + + + Non + + + Oui + + + Ce champ est obligatoire + + + Convulsions + + + Non + + + Oui + + + Ce champ est obligatoire + + + Urine foncée (couleur coca cola) + + + Non + + + Oui + + + Ce champ est obligatoire + + + Difficulté de boire et ou de s'alimenter + + + Non + + + Oui + + + Ce champ est obligatoire + + + Maux de têtes intenses/trouble de la vue + + + Non + + + Oui + + + Ce champ est obligatoire + + + Ictère (yeux jaunes) + + + Non + + + Oui + + + Ce champ est obligatoire + + + Pâleur conjonctivale prononcée + + + Non + + + Oui + + + Ce champ est obligatoire + + + Incapacité de se tenir debout ou de s'assoir + + + Non + + + Oui + + + Ce champ est obligatoire + + + Inconscient + + + Non + + + Oui + + + Ce champ est obligatoire + + + Vomissement de toute prise alimentaire + + + <b> a t-il l'un des signes de danger suivants?</b> + + + Recherche de signe de danger + + + - + + + - + + + - + + + - + + + Sexe + + + Source + + + Source de l'ID + + + Contact ID + + + Language + + + Name + + + Phone + + + User + + + - + + + prochaine visite suivi traitement + + + <h2 style="background-color:#ee2a02">FIEVRE À REFERER</h2> + + + <h2 style="background-color:#f6b426">PALUDISME SIMPLE</h2> + + + <h2 style="background-color:#ee2a02"> est une femme enceinte au 1er trimestre. </br> +Fièvre à référer</h2> + + + Ce champ est obligatoire + + + Depuis combien jours a-t-il/elle pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? + + + Non + + + Oui + + + Vérifiez si le patient a bien suivi le traitement + + + Ce champ est obligatoire + + + a-t-il/elle pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? + + + Autre + + + Rupture de stock + + + Ce champ est obligatoire + + + Pourquoi n'a-t-il/elle pas pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? + + + Fièvre + + + Référez au CSCOM pour un test de tuberculose. + + + Days old + + + Mois + + + Semaine + + + - + + + - + + + - + + + Sexe du patient + + + Sexe du patient + + + Sexe du patient + + + - + + + plaquette de 12 cp comprimés + + + Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/12 GRATUIT + + + plaquette de 24 cp comprimés + + + Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 GRATUIT POUR FEMME ENCEINTE + + + plaquette de 18cp comprimés + + + Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/18 + + + plaquette de 24cp comprimés + + + Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 + + + Equipements <i class="fa fa-cubes"></i> + + + Fièvre <i class="fa fa-cubes"></i> + + + Quantité de GANTS EN VRAC + + + Paludisme <i class="fa fa-cubes"></i> + + + Quantité de PARACÉTAMOL COMPRIMÉ 500MG + + + Quantité de TDR GRATUIT + + + Stock livré + + + Date doit être avant aujourd'hui + + + Ce champ est obligatoire + + + Entrez la date où l'évaluation a été faite + + + Le patient s'est rendu chez l'ASC + + + Au cours de la visite à domicile + + + Autre + + + Ce champ est obligatoire + + + Comment a été retrouvé(e)? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Non + + + Oui + + + Ce champ est obligatoire + + + L'évaluation a t-elle été faite aujourd'hui? + + + Autre + + + Téléphone Perdu + + + Téléphone Déchargé/Cassé + + + Ce champ est obligatoire + + + Pourquoi l'évaluation n'a pas été faite aujourd'hui? + + + Réalisation de l'évaluation + + + Référer + + + Traiter à domicile + + + Ce champ est obligatoire + + + Quelle est votre conduite à tenir ? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec de l' Artemether 20 mg – Luméfantrine 120mg/ comprimés? + + + Paludisme Simple + + + Donnez l'Artémether + Luméfantrine (AL): 20mg/120mg. </br> +2 comprimés Matin-Soir pendant 3 jours + + + Donnez l'Artémether + Luméfantrine (AL): 20mg/120mg. </br> +3 comprimés Matin-Soir pendant 3 jours + + + Donnez l'Artémether + Luméfantrine (AL): 20mg/120mg. </br> +4 comprimés Matin-Soir pendant 3 jours + + + Autre + + + Rupture de stock + + + Ce champ est obligatoire + + + Pouquoi n'avez-vous pas traité le patient avec de l' Artemether 20 mg – Luméfantrine 120mg/ comprimés? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Femme Enceinte et l'âge de la grossesse est inférieur à 4 mois + + + TDR non réalisé pour rupture de stock. + + + Signes de Danger<i class="fa fa-warning"></i> + + + Diagnostic<i class="fa fa-stethoscope"></i> + + + Fièvre + + + Donnez du Paracétamol: ½ comprimé de 500 mg. </br> +3 fois par jour pendant 3 jours + + + Donnez du Paracétamol: 1 comprimé de 500 mg. </br> +3 fois par jour pendant 3 jours + + + Donnez du Paracétamol: 2 comprimés de 500 mg. </br> +3 fois par jour pendant 3 jours + + + Donnez du Paracétamol: ½ comprimé de 500 mg. + + + Donnez du Paracétamol: 1 comprimé de 500 mg. + + + Donnez du Paracétamol: 2 comprimés de 500 mg. + + + Suivi<i class="fa fa-flag"></i> + + + La prochaine visite de suivi sera le : + + + La prochaine visite de suivi sera le : + + + Vomissement de toute prise alimentaire + + + Douleur abdominale + + + Saignement spontané + + + Difficulté respiratoire + + + Convulsions + + + Urine foncée (couleur coca cola) + + + Difficulté de boire et ou de s'alimenter + + + Maux tête intenses/trouble de la vue + + + Ictère (yeux jaunes) + + + Pâleur conjonctivale prononcée + + + Incapacité de se tenir debout ou de s'assoir + + + Inconscient + + + Présence de Fièvre + + + Réferez le patient au CSCOM. +Informez le patient que le CSCOM fournit des tests gratuits, un traitement et un soutien aux personnes atteintes de Tuberculose. + + + Conseillez sur l'utilisation des moustiquaires imprégnées, l'assainissement du milieu et l'élimination des gîtes larvaires (eaux stagnantes, vieilles boîtes de conserves, canaris,…) + + + Paludisme simple + + + <h4 style="text-align:center;"></h4><h5 style="text-align:center;"> </h5> <h5 style="text-align:center;"> </h5> + + + Fièvre persiste après 3 jours de traitement (CTA) bien conduit. + + + <b>Référer au CSCOM </b><i class="fa fa-warning"></i> + + + Détail du Patient <I class="fa fa-user"></i> + + + Suspicion de Tuberculose + + + Résultat TDR: + + + TRAITEMENT<i class="fa fa-medkit"></i> + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous référé? + + + INSTRUCTIONS SPECIALES <i class = "fa fa-hand-o-right"></i> + + + Résumé + + + <b> présente t-il/elle l'une des caractéristiques suivantes :</b> + + + Non + + + Oui + + + Ce champ est obligatoire + + + Présence de Toux chronique de plus de 14 jours + + + Non + + + Oui + + + Ce champ est obligatoire + + + Hémoptysie + + + Non + + + Oui + + + Ce champ est obligatoire + + + Fièvre prolongée de plus de 21 jours. + + + Non + + + Oui + + + Ce champ est obligatoire + + + Amaigrissement visible + + + Signes de Tuberculose + + + Faire le suivi du patient + + + Référer au CSCOM + + + Ce champ est obligatoire + + + Quelle est votre conduite à tenir ? + + + Ce champ est obligatoire + + + Précisez tout autre problème + + + Conduite à tenir + + + prochaine visite suivi + + + + + + + + + + + + + + + user + + + <_id/> + + + + 0 + + + db-object + + + <_id/> + + + + + + + + + + + 0 + 0 + 0 + + + + + + "" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 900 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + <_id/> + + + + 0/0 + 0/0 + 0/0 + 0/0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/app/patient_assessment_under_5.properties.json b/test/project-config/forms/app/patient_assessment_under_5.properties.json new file mode 100644 index 0000000..3b09815 --- /dev/null +++ b/test/project-config/forms/app/patient_assessment_under_5.properties.json @@ -0,0 +1,18 @@ +{ + "title": [ + { + "locale": "en", + "content": "CEP of the sick child" + }, + { + "locale": "fr", + "content": "PEC de l'enfant malade" + } + ], + "context": { + "place": false, + "person": true, + "expression": "contact.contact_type === 'c92_household' && summary.alive && ageInYears(contact) < 5 && user.role === 'chw'" + }, + "icon": "infant" +} diff --git a/test/project-config/forms/app/patient_assessment_under_5.xlsx b/test/project-config/forms/app/patient_assessment_under_5.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..6e5b9ab9b31cdc82eaf4542efa236c08f8e7f883 GIT binary patch literal 81709 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 + + + PEC de l'enfant + + + + + This field is required + + + Do the TDR to have the TDR result to date + + + This field is required + + + 1. Please disinfect your hands before performing the RDT + + + This field is required + + + 2. Please put on your gloves + jr://images/put_gloves.JPG + + + This field is required + + + 3. Please mark the patient information on the cassette (first and last name, date and time of RDT completion) before proceeding with RDT + jr://images/notice_name.JPG + + + This field is required + + + 4. Please clean the patient's finger where the blood will be collected + jr://images/clean_finger.JPG + + + How to do a malaria RDT + + + This field is required + + + 5. Please prick the patient's finger in the right place to collect blood + jr://images/prick_finger.JPG + + + This field is required + + + 6.Please extract the blood using the pipette and spread it on the cassette in the round well for the sample. Note that a single pipette of blood is sufficient + jr://images/extract_blood_2.jpg + + + This field is required + + + 7. Put the number of drops of solvent indicated for this type of RDT in the square well of diluent + jr://images/add_drop.JPG + + + This field is required + + + 8. Please activate the 15 min timer below. While you wait to read the result, please store the needles in the safety box after use. Give the rules of hygiene that the patient can follow to avoid malaria. + + + How to do a malaria RDT + + + This field is required + + + Number of test(s) used + + + This field is required + + + Example of a positive RDT + jr://images/positive.png + + + This field is required + + + Example of negative RDT + jr://images/negative.png + + + Negative + + + Positive + + + This field is required + + + What is the result of the TDR? + + + How to do a malaria RDT + + + This field is required + + + Specify (Other) + + + Amoxicillin + + + Balembo syrup or carbocisteine + + + Lemon honey or eucalyptus leaf infusion + + + None + + + Other + + + This field is required + + + What is the treatment received at home? + + + No + + + Yes + + + This field is required + + + Did take ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? +Check if the patient has followed the treatment + + + Any + + + Other + + + Antipyretics/Paracetamol Syrup 125 mg + + + Antipyretics/Paracetamol Tablet 500 mg + + + This field is required + + + What is the treatment received at home? + + + This field is required + + + Specify (Other) + + + No + + + Yes + + + This field is required + + + Does have a cough or a cold? + + + No + + + Yes + + + This field is required + + + Did have a history of a hot body, or hot to the touch? + + + No + + + Yes + + + This field is required + + + Has had a positive RDT in the past 15 days? + + + No + + + Yes + + + This field is required + + + Can you do the RDT now? + + + The number of days must be between 0 and 15 + + + This field is required + + + How many days has he been taking ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? + + + This field is required + + + has a fever + + + This field is required + + + does not have a fever + + + This field is required + + + **Press the timer and count the number of breaths for 60 seconds** + + + The number of days must be between 0 and 15 + + + This field is required + + + How many days does the cough or cold last? + + + The number of days must be between 0 and 15 + + + This field is required + + + For how many days did he have a history of a hot body, or a hot body to the touch? + + + Fréquence doit être comprise entre 20 et 60 mouvements + + + This field is required + + + What is the respiratory rate? + + + Other + + + Out Of Stock + + + This field is required + + + Why didn't take ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? + + + Other + + + Out Of Stock + + + This field is required + + + Why can't you do the TDR? + + + This field is required + + + Specify (Other) + + + Complaints/History + + + Green + jr://images/- + + + Red + jr://images/- + + + Yellow + jr://images/- + + + This field is required + + + What is the color of the shakir band? + +Green: If PB >= 12.5 cm +Yellow: If 11.5cm≤PB<12.5cm +Red: If PB<11.5cm + + + None + + + Other + + + SRO + + + Zinc + + + If none is chosen the other options should not be chosen + + + This field is required + + + What is the treatment received? + + + This field is required + + + Specify (Other) + + + No + + + Yes + + + This field is required + + + Does have more than 3 stools per day? + + + No + + + Yes + + + This field is required + + + Is there any other complaint not related to cough, fever or diarrhea? + + + This field is required + + + Nutritional status research + + + Number of days must be between 0 and 15 + + + This field is required + + + How many days has he had diarrhea? + + + This field is required + + + What are the complaints? + + + Diarrhea and malnutrition + + + This field is required + + + Properly disinfect the thermometer before storing it. + + + This field is required + + + Use the thermometer to take the temperature. + + + The temperature must be between 35 and 45 inclusive + + + This field is required + + + What is the temperature? + + + Thermometer + jr://images/thermometer.png + + + The weight should be between 8kg and 50kg + + + This field is required + + + What is the weight (in kg)? + + + The weight should be between 0.5kg and 18kg + + + This field is required + + + What is the weight (in kg)? + + + Constants + + + Frequency is Fast + + + Frequency is Normal + + + has a cough + + + Cough/cold for more than 14 days + + + <h2 style="background-color:#FEC002">Pneumonia</h2> + + + <h2 style="background-color:#93C47E">Cough or cold</h2> + + + Cough or Cold + + + No + + + Yes + + + This field is required + + + Any illnesses that last 14 days or more + + + No + + + Yes + + + This field is required + + + scanty coca cola colored urine + + + No + + + Yes + + + This field is required + + + Has the child convulsed or is convulsing now? + + + No + + + Yes + + + This field is required + + + Difficult breathing with chest indrawing or wheezing + + + No + + + Yes + + + This field is required + + + Lower limb edema + + + This field is required + + + Does have any of the following danger signs? + + + This field is required + + + 's age is less than 2 months. + +You cannot continue the assessment of infant under 2 months. + +Please refer the infant to the CSCOM + + + No + + + Yes + + + This field is required + + + Severe palmar pallor (Anaemia) + + + No + + + Yes + + + This field is required + + + Visible and severe weight loss in children aged 2 to 6 months + + + No + + + Yes + + + This field is required + + + Child becomes sicker despite home care + + + No + + + Yes + + + This field is required + + + Spontaneous bleeding + + + No + + + Yes + + + This field is required + + + Is the child unable to drink or breastfeed? + + + No + + + Yes + + + This field is required + + + Unable to sit or stand + + + No + + + Yes + + + This field is required + + + Child is unconscious or unresponsive to external stimuli + + + No + + + Yes + + + This field is required + + + Does the child vomit everything he eats? + + + Danger sign search + + + None + + + sunken eyes + + + Thirsty skin pinch slowly fading away + + + This field is required + + + Does have the following signs of dehydration? + + + No + + + Yes + + + This field is required + + + Blood in stool + + + No + + + Yes + + + This field is required + + + Stools that are too liquid (like water) + + + <h2 style="background-color:#FF0200">DIARRHEA TO REFER</h2> + + + <h2 style="background-color:#FEC002">SIMPLE DIARRHEA</h2> + + + Diarrhea for more than 14 days + + + This field is required + + + Presence of Diarrhea + + + This field is required + + + Shakir band is Red + + + Diarrhea + + + No + + + Yes + + + This field is required + + + Does have rashes? + + + <h2 style="background-color:#FF0200">FEVER TO REFER</h2> + + + <h2 style="background-color:#93C47E">NO MALARIA</h2> + + + <h2 style="background-color:#FEC002">SIMPLE MALARIA</h2> + + + <h2 style="background-color:#FEC002">MALARIA SUSPICION</h2> + + + This field is required + + + has a fever + + + Fever for more than 14 days + + + This field is required + + + TDR is Negative + + + This field is required + + + RDT is positive + + + This field is required + + + Positive RDT in the last 15 days + + + Fever + + + What is the patient's name? + + + Date of Birth + + + Name + + + Household ID + + + Area ID + + + CHW name + + + CHW phone + + + Health Facility ID + + + Patient ID + + + Sex + + + Short Name + + + - + + + Source + + + Source ID + + + Contact ID + + + Name + + + Phone + + + Role + + + User + + + No + + + Yes + + + This field is required + + + Is getting bigger? + + + This field is required + + + <h2 style="background-color:#FF0200">Severe Acute Malnutrition without complications</h2> + + + This field is required + + + Appetite test + + + This field is required + + + Give a 10% sugar water solution (4 teaspoon or 4 sugar cubes for 200l of water: 5ml per kg + + + This field is required + + + Here are the average amounts a child needs to take to pass their appetite test + + + This field is required + + + 1/2 or more of the contents of the glass of tea n°8 + + + This field is required + + + 1/3 or more of the contents of the glass of tea n°8 + + + This field is required + + + 1/4 or more of the contents of the glass of tea n°8 + + + This field is required + + + <h2 style="background-color:#FEFF03">Moderate Acute Malnutrition</h2> + + + This field is required + + + <h2 style="background-color:#93C47E">No Malnutrition</h2> + + + This field is required + + + <h2 style="background-color:#FF0200">Severe Malnutrition to Refer</h2> + + + Negative + + + Positive + + + This field is required + + + What is the result of the appetite test? + + + Malnutrition + + + To behave + + + Days old + + + Months + + + Week + + + Patient Sex + + + Patient Sex + + + Patient Sex + + + Quantity of FREE ALBENDAZOLE 200 MG TABLETS + + + Quantity of FREE ALBENDAZOLE 400 MG TABLETS + + + Quantity of FREE AMOXICILLIN 250 MG TABLETS FOR MALNOURISHED CHILDREN + + + box of 18 pills + + + Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/18 + + + box of 24 pills + + + Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 + + + box of 6 pills + + + Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/6 FREE FOR CHILDREN < 5 YEARS + + + Quantity of ARTESUNATE SUPPOSITORY 200 MG + + + Quantity of ARTESUNATE SUPPOSITORY 50 MG + + + Quantity of BALEMBO CHILD SYRUP + + + Quantity of CARBETUX SYRUP + + + Quantity of CARBOCYSTEINE 2% + + + Cough <i class="fa fa-cubes"></i> + + + Diarrhea <i class="fa fa-cubes"></i> + + + Materials <i class="fa fa-cubes"></i> + + + Fever <i class="fa fa-cubes"></i> + + + Quantity of FREE IRON/FOLIC ACID SUPPLEMENTS FOR MALNOURISHED INDIVIDUALS + + + Quantity of Free ORS + + + Quantity of FREE ZINC + + + Quantity of BULK GLOVES + + + Malnutrition <i class="fa fa-cubes"></i> + + + Malaria <i class="fa fa-cubes"></i> + + + Quantity of Paracetamol Syrup + + + Quantity of PARACETAMOL TABLET 100MG FREE FOR CHILDREN < 5 YEARS + + + Quantity of PARACETAMOL TABLET 500MG + + + Quantity of FREE PLUMPLY NUT SUPPLEMENT FOR MAS-C + + + Quantity of FREE PLUMPY SUP SUPPLEMENT FOR MAM + + + Pneumonia <i class="fa fa-cubes"></i> + + + Quantity of ORS (Oral Rehydration Solution) + Zinc + + + Quantity of FREE SUPERCEREAL (CSB) FOR MALNOURISHED INDIVIDUALS + + + Quantity of FREE RAPID DIAGNOSTIC TEST (TDR) + + + Quantity of FREE 100,000 IU VITAMIN A CAPSULES + + + Quantity of FREE 200,000 IU VITAMIN A CAPSULES + + + Stock uses + + + Date must be before today + + + This field is required + + + Enter the date the assessment was made + + + The patient went to the ASC + + + During the home visit + + + Other + + + This field is required + + + How was found? + + + This field is required + + + Specify (Other) + + + This field is required + + + Specify (Other) + + + No + + + Yes + + + This field is required + + + Was the assessment done today? + + + Other + + + Phone lost + + + Phone Discharged/Broken + + + This field is required + + + Why was the evaluation not done today? + + + Carrying out the assessment + + + Danger Signs + + + Any illnesses that last 14 days or more + + + scanty coca cola colored urine + + + The child convulsed or is convulsing now + + + Difficult breathing with chest indrawing or wheezing + + + Lower limb edema + + + Severe palmar pallor (Anaemia) + + + Visible and severe weight loss in children aged 2 to 6 months + + + Child becomes sicker despite home care + + + Spontaneous bleeding + + + The child unable to drink or breastfeed + + + Unable to sit or stand + + + Child is unconscious or unresponsive to external stimuli + + + The child vomit everything he eats + + + Cough, cold for more than 14 days + + + Diarrhea for more than 14 days + + + Fever for more than 14 days + + + Diagnostic <i class = "fa fa-stethoscope"></i> + + + Fever to refer + + + Presence of Fever + + + Presence of simple malaria + + + Simple Malaria Suspicion + + + Malaria under treatment + + + Presence of Moderate Acute Malnutrition (MAM) + + + Severe Malnutrition to Refer + + + Presence of Severe Acute Malnutrition (SAM) Without complications + + + Other problem + + + Persistent Fever + + + Presence of simple cough/cold + + + Presence of simple diarrhea + + + Presence of Diarrhea with sign of severity + + + Presence of Pneumonia + + + TDR Result: + + + Vaccination is not up to date + + + Vaccination is up to date + + + No + + + Yes + + + This field is required + + + Did you refer? + + + SPECIAL INSTRUCTIONS<i class = "fa fa-hand-o-right"></i> + + + Do wet wrap for , if he can nurse or drink, continue to nurse en route (or expressed milk by cup) + + + Advise on good breastfeeding practices. + + + Feed the child properly + +Return immediately if signs of worsening (sicker child, rapid breathing) + +Return after 2 days if no complications + +Cover children well, especially toddlers + +Do not expose children to smoke (cooking, cigarettes, shisha, incense, etc.) and dust + + + Continue feeding. + +Increase fluids to drink (or breast milk if exclusively breastfeeding). + +Recognize when to return to the site immediately (if the child becomes sicker). + +Continue treatment even if the child is better. + + + Give frequent sips of ORS with the cup if no SAM (even if exclusively breastfeeding); If SAM, give a 10% sugar water solution (4 teaspoons or 4 sugar cubes for 200ml of water). + + + Wash hands before preparing and administering medication + +Observe the child for 30 minutes to ensure that he does not vomit the drugs and resume if necessary + +Emphasize the importance of giving zinc for the full 14 days. The child will have a better appetite and will have more strength + + + Mom, from the 6th month in addition to breast milk, give complementary foods at least four times a day + +Diversify foods + + + Sleep under an insecticidal mosquito net (MILDA) + +Get your child vaccinated on the right date for their health + +Diversify the child's foods + +Have good hygiene and wash your hands during the 4 critical moments + + + Refer + + + Treat at home + + + This field is required + + + What is the course of action? + + + Follow <i class="fa fa-flag"></i> + + + The next follow-up referral visit is today + + + The next follow-up visit is : + + + The next malaria follow-up visit is: + + + The next follow-up visit is : + + + <h5 style="text-align:center;"> </h5> + + + <h4 style="text-align:center;"></h4> + + + <h5 style="text-align:center;"> </h5> + + + Refer to CSCOM <i class="fa fa-warning"></i> + + + Refer to CSCOM/CHW <i class="fa fa-warning"></i> + + + Patient Summary<I class="fa fa-user"></i> + + + The next vaccine follow-up visit is : + + + Balembo + + + Carbo Cystéine + + + With which drug do you want to treat? + + + No + + + Yes + + + This field is required + + + Have you treated with paracetamol? + + + Fever + + + Give paracetamol 1 to 4 times a day + + + <b>Pre-Transfer Treatment</b> + + + Give paracetamol + + + ¼ tablet of 500 mg or 1 measuring spoonful of Paracetamol syrup (125 mg) + + + ½ tablet of 500 mg or 2 measuring spoonfuls of Paracetamol syrup (125 mg) + + + Wet wrap in case of high fever. +If the child can breastfeed or drink, continue to breastfeed on the way (or expressed milk by cup or give sugar water. + + + Which ? + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + No + + + Yes + + + This field is required + + + Have you treated with Artemether 20mg – Lumefantrine 120mg/tablets? + + + No + + + Yes + + + This field is required + + + Have you treated the cough/cold? + + + No + + + Yes + + + This field is required + + + Have you treated with ORS? + + + No + + + Yes + + + This field is required + + + Have you treated with ZINC? + + + Pre-Transfer Treatment + + + This field is required + + + How much? + + + No + + + Yes + + + This field is required + + + Have you treated with Albendazole? + + + No + + + Yes + + + This field is required + + + Have you treated with Iron + Folic Acid? + + + No + + + Yes + + + This field is required + + + Have you treated with the Ready-to-Use Food (RUTF)? + + + No + + + Yes + + + This field is required + + + Have you treated with Vitamin A? + + + Therapeutic Ready-to-Use Food (RUTF) + + + Treating with Super Cereal (CSB) +Give 295g per day to the child, i.e. 2065g per week (4.13kg for 2 weeks) + + + 1/2 tablet / Week for 2 months if the child is less than 10 kg + + + 1 tablet/week for 2 months if the child is over 10 kg + + + <b>Moderate Acute Malnutrition (MAM)</b> + + + Treat with Albendazole + + + 1/2 tablet of 400ml or 1 tablet of 200mg in one take + + + 1 tablet of 400mg in a single dose + + + Treat Iron + Folic Acid + + + 1/2 tablet / Week for 2 months if the child is less than 10 kg + + + 1 tablet/week for 2 months if the child is over 10 kg + + + Treating with Plumpy Sup. +Give one (1) sachet per day to the child, i.e. 7 sachets per week. + + + Treat with Super Cereal Plus +Give 200g per day to the child, i.e. 1400g per week (2.8kg for 2 weeks) + + + Give Vitamin A + + + Give the first dose on the same day and give a dose to the mother for administration at home the next day + + + 1/2 capsule of 100,000 IU + + + 1 capsule of 100,000 IU + + + 2 capsules of 100,000 IU + + + No + + + Yes + + + This field is required + + + Has received vitamin A in the past two months? + + + Plumpy Sup + + + Supercereal (CSB) + + + Super Cereal Plus + + + This field is required + + + What do you want to do the treatment with? + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Simple Cough/Cold + + + Give 1 teaspoon of Balembo 2 times a day + + + Give 1 teaspoon of Balembo 3 times a day + + + Give 1 teaspoon of Carbo Cysteine ​​3 times a day + + + Simple diarrhea + + + Treat with ORS + + + 50 to 100ml after each loose stool (1/2 or 1 SD ladle) + + + 100 to 200ml after each loose stool (1 -2 SD ladles) +If vomiting, wait 10 minutes then give again + + + Treat with zinc + + + 1/2 tablet of 20mg for 14 days + + + 1 tablet of 20mg for 14 days + + + Uncomplicated Malaria + + + Artemether 20mg – Lumefantrine 120mg/tablets +1 morning-evening tablet for 3 days + + + Artemether 20mg – Lumefantrine 120mg/tablets +2 tablets Morning-Evening for 3 days + + + Administer one 50mg Artesunate suppository + + + Administer a 100mg Artesunate suppository + + + Administer one 200 mg Artesunate suppository. + + + TREATMENT <i class="fa fa-medkit"></i> + + + Simple Malaria Suspicion + + + This field is required + + + Which did you give? + + + No + + + Yes + + + This field is required + + + Have you treated with amoxicillin? + + + Pneumonia + + + Treat with Amoxicillin 2 times a day for 5 days + + + 1/2 tablet of 250 mg Or 1/4 tablet of 500 mg Or 1 measuring spoon of 125 mg + + + 1 tablet of 250 mg Or 1/2 tablet of 500 mg Or 2 measuring spoons of 125 mg Or 1 measuring spoon of Syrup 250 mg + + + 1+1/2 250mg tablet Or 1 500mg tablet Or 3 125mg measuring spoons Or 1+ 1/2 250mg syrup measuring spoon + + + 2 tablets of 250 mg Or 1 tablet of 500 mg Or 4 measuring spoons of 125 mg Or 2 measuring spoons of Syrup 250 mg + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + No + + + Yes + + + This field is required + + + Have you treated with Plumpy Nut.? + + + <b>Malnutrition</b> + + + Uncomplicated Severe Acute Malnutrition (SAM) + + + <b>Therapeutic Ready-to-Use Food (RUTF)</b> + + + Treat with Plumpy Nut. + + + *If weight between 3 – 3.4kg* +Give 1/4 sachets/Day or 8 sachets/week + +*If weight between 3.5 – 4.9 kg* +Give 1/2 sachets/Day or 10 sachets/week + +*If weight between 5.0 – 6.9 Kg* +Give 2 sachets/Day or 15 sachets/week + +*If weight between 7.0 – 9.9 kg* +Give 3 sachets/Day or 20 sachets/week + +*If weight between 10.0 – 14.9 Kg* +Give 4 sachets/Day or 30 sachets/week + +*If weight between 15.0 – 19.9 kg* +Give 5 sachets/Day or 35 sachets/week + + + 1/2 sachets/Day or 10 sachets/week + + + 1/4 sachets/Day or 8 sachets/week + + + 2 sachets/day or 15 sachets/week + + + 3 sachets/day or 20 sachets/week + + + 4 sachets/day or 30 sachets/week + + + 5 sachets/Day or 35 sachets/week + + + This field is required + + + How much? + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Other + + + Out Of Stock + + + This field is required + + + Why ? + + + This field is required + + + Specify (Other) + + + Summary + + + REFER TO CSCOM + + + Observe + + + What is your course of action (CAT)? + + + Specify ANY OTHER PROBLEM + + + To behave + + + No + + + Yes + + + Did come with his vaccination record? + + + No + + + Yes + + + This field is required + + + BCG + + + No + + + Yes + + + This field is required + + + Men AfriVac(Méningite) + + + No + + + Yes + + + This field is required + + + PCV13_1(Pneumo1) + + + No + + + Yes + + + This field is required + + + PCV13_2(Pneumo2) + + + No + + + Yes + + + This field is required + + + PCV13_3(Pneumo 3) + + + No + + + Yes + + + This field is required + + + Penta 1 + + + No + + + Yes + + + This field is required + + + Penta 2 + + + No + + + Yes + + + This field is required + + + Penta 3 + + + No + + + Yes + + + This field is required + + + Polio O + + + No + + + Yes + + + This field is required + + + Rota 1 + + + No + + + Yes + + + This field is required + + + Rota 2 + + + No + + + Yes + + + This field is required + + + Rota 3 + + + No + + + Yes + + + This field is required + + + VAR 1 + + + No + + + Yes + + + This field is required + + + VAR 2 + + + No + + + Yes + + + This field is required + + + VPI 1 + + + No + + + Yes + + + This field is required + + + VPI 2 + + + No + + + Yes + + + This field is required + + + VPO 1 + + + No + + + Yes + + + This field is required + + + VPO 2 + + + No + + + Yes + + + This field is required + + + VPO 3 + + + No + + + Yes + + + This field is required + + + VAA(Fièvre Jaune) + + + This field is required + + + Has received the following vaccines: + + + Vaccination is not up to date + + + Vaccination is up to date + + + + + + Vaccinated against BCG + + + + + + Vaccinated against Men AfriVac (Meningitis) + + + + + + Vaccinated against PCV13_1(Pneumo1) + + + + + + Vaccinated against PCV13_2 (Pneumo2) + + + + + + Vaccinated against PCV13_3 (Pneumo 3) + + + + + + Vaccinated against Penta 1 + + + + + + Vaccinated against Penta 2 + + + + + + Vaccinated against Penta 3 + + + + + + Vaccinated against Polio O + + + + + + Vaccinated against Rota 1 + + + + + + Vaccinated against Rota 2 + + + + + + Rvaccinated against Rota 3 + + + + + + Vaccinated against VAR 1 + + + + + + Vaccinated against VAR 2 + + + + + + Vaccinated against IPV 1 + + + + + + Vaccinated against IPV 2 + + + + + + Vaccinated against OPV 1 + + + + + + Vaccinated against OPV 2 + + + + + + Vaccinated against OPV 3 + + + + + + Vaccinated against AAV (Yellow Fever) + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + The date must be between birthday and today + + + Enter the date the vaccine was administered + + + At home + + + lost card + + + Does not exist + + + This field is required + + + Why ? + + + Vaccination follow-up + + + No + + + Yes + + + This field is required + + + Has received vitamin A in the past six months? + + + 1 dose of 100,000 IU + + + 1 dose of 200,000 IU + + + 1 dose of 50,000 IU + + + This field is required + + + What is the dose received? + + + Vitamin A + + + 1/2 tablet of 400mg + + + 1 tablet of 200mg + + + 1 tablet of 400mg + + + 1/2 tablet of 250 mg + + + 1 measuring spoon of 125 mg + + + 1+ 1/2 measuring spoon Syrup 250 mg + + + 2 tablets of 250mg + + + 4 measuring spoons of 125mg + + + 1 tablet of 500mg + + + 2 measuring spoons of Syrup 250 mg + + + 1/4 tablet of 500mg + + + 1 tablet of 250mg + + + 2 measuring spoons of 125 mg + + + 1/2 tablet of 500 mg + + + 1 measuring spoon of Syrup 250 mg + + + 1+1/2 tablet of 250 mg + + + 3 measuring spoons of 125mg + + + 1 tablet of 500mg + + + REFER TO CSCOM + + + Observe + + + 1/4 tablet of 500mg + + + 1 measuring spoonful of Paracetamol syrup (125 mg) + + + 1/2 tablet of 500mg + + + 2 measuring spoonfuls of Paracetamol syrup (125 mg) + + + Green + jr://images/- + + + Yellow + jr://images/- + + + Red + jr://images/- + + + Amoxicillin + + + Balembo syrup or carbocisteine + + + Lemon honey or eucalyptus leaf infusion + + + Other + + + None + + + Balembo + + + Carbo Cystéine + + + sunken eyes + + + Thirsty skin pinch slowly fading away + + + None + + + SRO + + + Zinc + + + Other + + + None + + + Antipyretics/Paracetamol Tablet 500 mg + + + Antipyretics/Paracetamol Syrup 125 mg + + + Any + + + Other + + + Phone lost + + + Phone Discharged/Broken + + + Other + + + Refer + + + Treat at home + + + lost card + + + Does not exist + + + At home + + + During the home visit + + + The patient went to the ASC + + + Other + + + 1/4 sachets/Day or 8 sachets/week + + + 1/2 sachets/Day or 10 sachets/week + + + 2 sachets/day or 15 sachets/week + + + 3 sachets/day or 20 sachets/week + + + 4 sachets/day or 30 sachets/week + + + 5 sachets/Day or 35 sachets/week + + + Positive + + + Negative + + + Out Of Stock + + + Other + + + Positive + + + Negative + + + Plumpy Sup + + + Super Cereal Plus + + + Supercereal (CSB) + + + 1 dose of 50,000 IU + + + 1 dose of 100,000 IU + + + 1 dose of 200,000 IU + + + Yes + + + No + + + + + Ce champ est obligatoire + + + Faire le TDR pour avoir le résultat TDR à ce jour + + + Ce champ est obligatoire + + + 1. Veuillez vous désinfecter les mains avant de prodécer au TDR + + + Ce champ est obligatoire + + + 2. Merci de mettre vos gants + jr://images/put_gloves.JPG + + + Ce champ est obligatoire + + + 3. Veuillez marquer les informations du patient sur la cassette (prénom et nom, date et heure de réalisation du TDR) avant de procéder au TDR + jr://images/notice_name.JPG + + + Ce champ est obligatoire + + + 4. Veuillez nettoyer le doigt du patient où le sang sera recueilli + jr://images/clean_finger.JPG + + + Comment faire un TDR paludisme + + + Ce champ est obligatoire + + + 5. Veuillez piquer le doigt du patient au bon endroit pour collecter le sang + jr://images/prick_finger.JPG + + + Ce champ est obligatoire + + + 6.Veuillez extraire le sang en utilisant la pipette et l'étaler sur la cassette dans le puits rond pour l'échantillon. Notez qu'une seule pipette de sang est suffisante + jr://images/extract_blood_2.jpg + + + Ce champ est obligatoire + + + 7. Mettez le nombre de gouttes de solvants indiqué pour ce type de TDR dans le puits du dilluant + jr://images/add_drop.JPG + + + Ce champ est obligatoire + + + 8. Veuillez activer le minuteur de 15 mn ci dessous. Pendant que vous patientez pour lire le résultat, merci de ranger les aiguilles dans la boite de sécurité après usage. Donnez les règles d'hygiène que le patient peut suivre pour éviter le paludisme. + + + Comment faire un TDR paludisme + + + Ce champ est obligatoire + + + Nombre de test (s) utilisé (s) + + + Ce champ est obligatoire + + + Exemple d'un TDR positif + jr://images/positive.png + + + Ce champ est obligatoire + + + Exemple de TDR négatif + jr://images/negative.png + + + Négatif + + + Positif + + + Ce champ est obligatoire + + + Quel est le résultat du TDR? + + + Comment faire un TDR paludisme + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Amoxiciline + + + Sirop Balembo ou carbocystéine + + + Miel au citron ou et infusion de feuille d'eucalyptus + + + Aucun + + + Autre + + + Ce champ est obligatoire + + + Quel est le traitement reçu à domicile? + + + Non + + + Oui + + + Ce champ est obligatoire + + + a t-il pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? +Vérifiez si le patient a bien suivi le traitement + + + Aucun + + + Autre + + + Antipyrétiques/Paracétamol Sirop à 125 mg + + + Antipyrétiques/Paracétamol Comprime 500 mg + + + Ce champ est obligatoire + + + Quel est le traitement reçu à domicile? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Non + + + Oui + + + Ce champ est obligatoire + + + a t-il de la toux ou un rhume ? + + + Non + + + Oui + + + Ce champ est obligatoire + + + avait-il un antécédent de corps chaud, ou corps chaud au toucher? + + + Non + + + Oui + + + Ce champ est obligatoire + + + a t-il eu un TDR positif dans les 15 jours passés ? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Pouvez- vous faire le TDR maintenant? + + + Le nombre de jours doit être compris entre 0 et 15 + + + Ce champ est obligatoire + + + Depuis combien de jours a t-il pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? + + + Ce champ est obligatoire + + + a de la fièvre + + + Ce champ est obligatoire + + + n'a pas de la fièvre + + + Ce champ est obligatoire + + + **Appuyer sur le minuteur et compter le nombre de respirations durant 60 secondes** + + + Le nombre de jours doit être compris entre 0 et 15 + + + Ce champ est obligatoire + + + Depuis combien de jours dure la toux ou rhume? + + + Le nombre de jours doit être compris entre 0 et 15 + + + Ce champ est obligatoire + + + Depuis combien de jours avait t-il un antécédent de corps chaud, ou corps chaud au toucher? + + + Frequency must be between 20 and 60 movements + + + Ce champ est obligatoire + + + Quelle est la fréquence respiratoire? + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi n'a t-il pas pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ne pouvez-vous pas faire le TDR ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Plaintes/Antécédents + + + Vert + jr://images/green.jpg + + + Rouge + jr://images/red.png + + + Jaune + jr://images/yellow.jpg + + + Ce champ est obligatoire + + + Quelle est la couleur de la bande de shakir? + +Vert : Si PB >= 12,5 cm +Jaune : Si 11,5 cm≤PB<12,5 cm +Rouge: Si PB<11,5 cm + + + Aucun + + + Autre + + + SRO + + + Zinc + + + Si aucun est choisit les autres options ne devraient pas être choisies + + + Ce champ est obligatoire + + + Quel est le traitement reçu? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Non + + + Oui + + + Ce champ est obligatoire + + + fait-il plus de 3 selles par jour? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Il y a t-il une autre plainte non liée à la toux, fièvre ou diarrhée? + + + Ce champ est obligatoire + + + Recherche de statut nutritionnel + + + Nombre de jours doit être comprise entre 0 et 15 + + + Ce champ est obligatoire + + + Depuis combien de jours a t-il la diarrhée? + + + Ce champ est obligatoire + + + Quelles sont les plaintes? + + + Diarrhée et malnutrition + + + Ce champ est obligatoire + + + Désinfecter correctement le thermomètre avant de le ranger. + + + Ce champ est obligatoire + + + Utiliser le thermomètre pour prendre la température. + + + La température doit être comprise entre 35 et 45 inclus + + + Ce champ est obligatoire + + + Quelle est la température? + + + Thermomètre + jr://images/thermometer.png + + + Le poids doit être compris entre 8 kg et 50kg + + + Ce champ est obligatoire + + + Quel est le poids (en kg)? + + + Le poids doit être compris entre 0,5 kg et 18kg + + + Ce champ est obligatoire + + + Quel est le poids (en kg)? + + + Constantes + + + La fréquence est Rapide + + + La fréquence est Normale + + + a la toux + + + Toux/rhume de plus de 14 jours + + + <h2 style="background-color:#FEC002">Pneumonie</h2> + + + <h2 style="background-color:#93C47E">Toux ou Rhume</h2> + + + Toux ou Rhume + + + Non + + + Oui + + + Ce champ est obligatoire + + + Toutes maladies qui durent 14 jours ou plus + + + Non + + + Oui + + + Ce champ est obligatoire + + + Urine peu abondante couleur coca cola + + + Non + + + Oui + + + Ce champ est obligatoire + + + L'enfant a-t-il convulsé ou convulse maintenant ? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Respiration difficile avec tirage sous costal ou sifflement + + + Non + + + Oui + + + Ce champ est obligatoire + + + Œdèmes aux membres inférieurs + + + Ce champ est obligatoire + + + a t-il l'un des signes de danger suivants? + + + Ce champ est obligatoire + + + L'âge de est inférieur à 2 mois. + +Vous ne pouvez pas continuer l'évaluation du nourrisson de moins de 2 mois. + +Merci de référer le nourrisson vers le CSCOM + + + Non + + + Oui + + + Ce champ est obligatoire + + + Pâleur palmaire sévère (Anémie) + + + Non + + + Oui + + + Ce champ est obligatoire + + + Amaigrissement visible et sévère chez l'enfant de 2 à 6 mois + + + Non + + + Oui + + + Ce champ est obligatoire + + + Enfant devient plus malade malgré les soins à domicile + + + Non + + + Oui + + + Ce champ est obligatoire + + + Saignement spontané + + + Non + + + Oui + + + Ce champ est obligatoire + + + L'enfant est-il incapable de boire ou de téter ? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Incapable de s'assoir ou se tenir debout + + + Non + + + Oui + + + Ce champ est obligatoire + + + L'enfant est inconscient ou ne répond pas aux stimuli externes + + + Non + + + Oui + + + Ce champ est obligatoire + + + L'enfant vomit tout ce qu'il consomme ? + + + Récherche de signe de danger + + + Aucun + + + Yeux enfoncés + + + Asoiffé pli cutané qui s'efface lentement + + + Ce champ est obligatoire + + + a t-il les signes de déshydratation suivants? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Sang dans les selles + + + Non + + + Oui + + + Ce champ est obligatoire + + + Selles trop liquides (comme eau) + + + <h2 style="background-color:#FF0200">DIARRHÉE À RÉFÉRER</h2> + + + <h2 style="background-color:#FEC002">DIARRHÉE SIMPLE</h2> + + + Diarrhée de plus de 14 jours + + + Ce champ est obligatoire + + + Présence de Diarrhée + + + Ce champ est obligatoire + + + La bande de shakir est Rouge + + + Diarrhée + + + Non + + + Oui + + + Ce champ est obligatoire + + + a t-il des éruptions cutanées? + + + <h2 style="background-color:#FF0200">FIÈVRE À RÉFÉRER</h2> + + + <h2 style="background-color:#93C47E">PAS DE PALUDISME</h2> + + + <h2 style="background-color:#FEC002">PALUDISME SIMPLE</h2> + + + <h2 style="background-color:#FEC002">SUSPICION DE PALUDISME</h2> + + + Ce champ est obligatoire + + + a de la fièvre + + + Fièvre de plus de 14 jours + + + Ce champ est obligatoire + + + TDR est Négatif + + + Ce champ est obligatoire + + + TDR est positif + + + Ce champ est obligatoire + + + TDR positif dans les 15 derniers jours + + + Fièvre + + + Quel est le nom de la patiente ? + + + Date de naissance + + + Nom + + + ID du Menage + + + ID de la concession + + + Nom de l'ASC + + + Téléphone de l'ASC + + + ID du village + + + ID de patiente + + + Sexe + + + Nom Court + + + user + + + Source + + + Source ID + + + Contact ID + + + Nom + + + Téléphone + + + Role + + + Utilisateur + + + Non + + + Oui + + + Ce champ est obligatoire + + + grossit t-il? + + + Ce champ est obligatoire + + + <h2 style="background-color:#FF0200">Malnutrition Aigüe Sévère sans complications</h2> + + + Ce champ est obligatoire + + + Test d'appétit + + + Ce champ est obligatoire + + + Donner une solution d'eau sucrée à 10% (4 cuillère à café ou 4 morceaux de sucre pour 200l d'eau: 5ml par kg + + + Ce champ est obligatoire + + + Voici les quantités moyennes qu'un enfant doit prendre pour réussir son test de l'appétit + + + Ce champ est obligatoire + + + 1/2 ou plus du contenu du verre de thé n°8 + + + Ce champ est obligatoire + + + 1/3 ou plus du contenu du verre de thé n°8 + + + Ce champ est obligatoire + + + 1/4 ou plus du contenu du verre de thé n°8 + + + Ce champ est obligatoire + + + <h2 style="background-color:#FEFF03">Malnutrition Aigüe Modérée</h2> + + + Ce champ est obligatoire + + + <h2 style="background-color:#93C47E">Pas de Malnutrition</h2> + + + Ce champ est obligatoire + + + <h2 style="background-color:#FF0200">Malnutrition Sévère à Référer </h2> + + + Négatif + + + Positif + + + Ce champ est obligatoire + + + Quel est le résultat du test d'appétit? + + + Malnutrition + + + Conduite à tenir + + + Days old + + + Mois + + + Semaine + + + - + + + - + + + - + + + Sexe du patient + + + Sexe du patient + + + Sexe du patient + + + - + + + Quantité de ABENDAZOLE 200 MG COMP GRATUIT + + + Quantité de ABENDAZOLE COMP 400 MG GRATUIT + + + Quantité de AMOXICILLINE 250 COMP GRATUIT/MALNUTRIS + + + plaquette de 18cp comprimés + + + Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/18 + + + plaquette de 24cp comprimés + + + Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 + + + plaquette de 6cp comprimés + + + Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/6 GRATUITS ENFANT < 5ANS + + + Quantité de ARTESUNATE SUPPOSITOIRE 200 MG + + + Quantité de ARTESUNATE SUPPOSITOIRE 50 MG + + + Quantité de BALEMBO SIROP ENFANT + + + Quantité de CARBETUX SIROP + + + Quantité de CARBOCYSTEÏNE 2% + + + Toux ou Rhume <i class="fa fa-cubes"></i> + + + Diarrhée <i class="fa fa-cubes"></i> + + + Equipements <i class="fa fa-cubes"></i> + + + Fièvre <i class="fa fa-cubes"></i> + + + Quantité de FER/ACIDE FOLIQUE GRATUIT POUR LES MALNUTRIS + + + Quantité de SRO GRATUIT + + + Quantité de ZINC GRATUIT ENFANT < 5 ANS + + + Quantité de GANTS EN VRAC + + + Malnutrition <i class="fa fa-cubes"></i> + + + Paludisme <i class="fa fa-cubes"></i> + + + Quantité de Paracétamol Sirop + + + Quantité de PARACETAMOL COMP 100 MG GRATUIT ENFANT < 5 ANS + + + Quantité de PARACÉTAMOL COMPRIMÉ 500MG + + + Quantité de PLUMPLY NUT GRATUIT POUR LES MAS-C + + + Quantité de PLUMPY SUP GRATUIT POUR LES MAM + + + Pneumonie <i class="fa fa-cubes"></i> + + + Quantité de SRO+ZINC (ORASEL….) + + + Quantité de SUPERCEREAL (CSB) GRATUIT POUR LES MALNUTRIS + + + Quantité de TDR GRATUIT + + + Quantité de CAPSULE DE VITAMINE A 100 000 UI + + + Quantité de CAPSULE DE VITAMINE A 200 000 UI + + + Stock livré + + + Date doit être avant aujourd'hui + + + Ce champ est obligatoire + + + Entrez la date où l'évaluation a été faite + + + Le patient s'est rendu chez l'ASC + + + Au cours de la visite à domicile + + + Autre + + + Ce champ est obligatoire + + + Comment a été retrouvé? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Non + + + Oui + + + Ce champ est obligatoire + + + L'évaluation a t-elle été faite aujourd'hui? + + + Autre + + + Téléphone Perdu + + + Téléphone Déchargé/Cassé + + + Ce champ est obligatoire + + + Pourquoi l'évaluation n'a pas été faite aujourd'hui? + + + Réalisation de l'évaluation + + + Signes de Danger + + + Toutes maladies qui durent 14 jours ou plus + + + Urine peu abondante couleur coca cola + + + L'enfant a-t-il convulsé ou convulse maintenant + + + Respiration difficile avec tirage sous costal ou sifflement + + + Œdèmes aux membres inférieurs + + + Pâleur palmaire sévère (Anémie) + + + Amaigrissement visible et sévère chez l'enfant de 2 à 6 mois + + + Enfant devient plus malade malgré les soins à domicile + + + Saignement spontané + + + L'enfant est incapable de boire ou de téter + + + Incapable de s'assoir ou se tenir debout + + + L'enfant est inconscient ou ne répond pas aux stimuli externes + + + L'enfant vomit tout ce qu'il consomme + + + Toux, rhume de plus de 14 jours + + + Diarrhée de plus de 14 jours + + + Fièvre de plus de 14 jours + + + Diagnostic <i class = "fa fa-stethoscope"></i> + + + Fièvre à référer + + + Présence de Fièvre + + + Présence de Paludisme simple + + + Suspicion de Paludisme simple + + + Paludisme en cours de traitement + + + Présence de Malnutrition Aigue Modérée (MAM) + + + Malnutrition Sévère à Référer + + + Présence de Malnutrition Aigue Sèvère (MAS) Sans complication + + + Autre problème + + + Fièvre Persistante + + + Présence de Toux/Rhume simple + + + Présence de Diarrhée simple + + + Présence de Diarrhée avec signe de gravité + + + Présence de Pneumonie + + + Résultat TDR: + + + La vaccination n'est pas à jour + + + La vaccination est à jour + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous référé? + + + INSTRUCTIONS SPECIALES<i class = "fa fa-hand-o-right"></i> + + + Faire l'enveloppement humide de , s'il peut téter ou boire, continuer à téter en route (ou lait exprimé à la tasse) + + + Conseillez la bonne pratique de l'allaitement. + + + Alimentez correctement l'enfant + +Revenez immédiatement si signes d'aggravation (enfant plus malade, respiration rapide) + +Revenez au bout de 2 jours si pas de complication + +Bien couvrir les enfants, surtout les tous petits + +Ne pas exposer les enfants à la fumée (cuisine, cigarettes, chicha, encens…) et à la poussière + + + Continuez l'alimentation. + +Augmentez les liquides à boire (ou le lait maternel en cas d'allaitement exclusif). + +Reconnaîssez quand revenir immédiatement au site (si l'enfant devient plus malade). + +Poursuivez le traitement même si l'enfant va mieux. + + + Donnez fréquemment des gorgées de SRO avec la tasse si pas de MAS, (même si allaitement exclusif) ; Si MAS, donner une solution d'eau sucrée à 10% (4 cuillères à café ou 4 morceaux de sucre pour 200ml d'eau). + + + Faites le lavage des mains avant la préparation et l'administration des médicaments + +Observer pendant 30 mn l'enfant pour s'assurer qu'il ne vomit pas les médicaments et reprendre au besoin + +Insister sur l'importance de donner le zinc pendant la totalité des 14 jours. L'enfant aura meilleur appétit et aura plus de force + + + Maman, à partir du 6ème mois en plus du lait maternel, donner des aliments de complément au moins quatre fois par jour + +Diversifier les aliments + + + Faire dormir sous moustiquaire impregnée insecticite (MILDA) + +Faire vacciner son enfant à bonne date pour sa santé + +Diversifier les aliments de l'enfant + +Avoir une bonne hygiène et faire le lavage des mains pendant les 4 moments critiques + + + Référer + + + Traiter à domicile + + + Ce champ est obligatoire + + + Quelle est la conduite à tenir? + + + Suivi <i class="fa fa-flag"></i> + + + La prochaine visite de suivi de référence est aujourd'hui + + + La prochaine visite de suivi est le : + + + La prochaine visite de suivi de paludisme est le : + + + La prochaine visite de suivi est le : + + + <h5 style="text-align:center;"> </h5> + + + <h4 style="text-align:center;"></h4> + + + <h5 style="text-align:center;"> </h5> + + + Référer au CSCOM <i class="fa fa-warning"></i> + + + Référer au CSCOM/ASC <i class="fa fa-warning"></i> + + + Détails du Patient <I class="fa fa-user"></i> + + + La prochaine visite de suivi vaccinal est le : + + + Balembo + + + Carbo Cystéine + + + Avec quelle médicament voulez-vous traiter ? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec du paracétamol? + + + Fièvre + + + Donnez du paracétamol 1 à 4 fois par jour + + + <b>Traitement Pré-Transfert</b> + + + Donnez du paracétamol + + + ¼ comprimé de 500 mg ou 1 cuillérée mesure de Paracétamol sirop (125 mg) + + + ½ comprimé de 500 mg ou 2 cuillérées mesure de Paracétamol sirop (125 mg) + + + Enveloppement humide en cas de forte fièvre. +Si l'enfant peut téter ou boire, continuer à téter en route (ou lait exprimé à la tasse ou donner de l'eau sucrée. + + + Lequel ? + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec de l' Artemether 20 mg – Luméfantrine 120mg/ comprimés? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité la toux/rhume? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec du SRO? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec du ZINC? + + + Traitement Pré-Transfert + + + Ce champ est obligatoire + + + Quelle quantité? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec de l'Albendazole? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec du fer + Acide Folique? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec l'Aliment Therapeutique Prêt à l'Emploi (ATPE)? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec de la Vitamine A? + + + Aliment Therapeutique Prêt à l'Emploi (ATPE) + + + Traitez avec du Super Céréale (CSB) +Donner 295g par jour à l'enfant soit 2065g par semaine (4,13kg pour 2 semaines + + + 1/2 comprimé/ Semaine pendant 2 mois si l'enfant a moins de 10 kg + + + 1 comprimé/Semaine pendant 2 mois si l'enfant a plus de 10 kg + + + <b>Malnutrition Aiguë Modérée (MAM)</b> + + + Traitez avec de l'Albendazole + + + 1/2 comprimé de 400ml ou 1 comprimé de 200mg en une prise + + + 1 comprimé de 400mg en une seule prise + + + Traitez du fer + Acide Folique + + + 1/2 comprimé/ Semaine pendant 2 mois si l'enfant a moins de 10 kg + + + 1 comprimé/Semaine pendant 2 mois si l'enfant a plus de 10 kg + + + Traitez avec . +Donner un (1) sachet par jour à l'enfant soit 7 sachets par semaine. + + + Traitez avec du Super Céréale Plus +Donner 200g par jour à l'enfant soit 1400g par semaine (2,8kg pour 2 semaines) + + + Donnez de la Vitamine A + + + Donnez la première dose le même jour et remettre une dose à la maman pour administration à la maison le lendemain + + + 1/2 capsule de 100 000 UI + + + 1 capsule de 100 000 UI + + + 2 capsules de 100 000 UI + + + Non + + + Oui + + + Ce champ est obligatoire + + + a t-il reçu de la vitamine A les deux dernières mois? + + + Plumpy Sup + + + Supercéréale (CSB) + + + Super Céréale plus + + + Ce champ est obligatoire + + + Avec quoi voulez- vous faire le traitement? + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Toux/Rhume Simple + + + Donnez 1 cuillère à café de Balembo 2 fois par jour + + + Donnez 1 cuillère à café de Balembo 3 fois par jour + + + Donnez 1 cuillère à café de Carbo Cystéine 3 fois par jour + + + Diarrhée simple + + + Traitez avec du SRO + + + 50 à 100ml après chaque selle liquide (1/2 ou 1 louche SD) + + + 100 à 200ml après chaque selle liquide (1 -2 louches SD) +Si vomissement, attendre 10 min puis redonner + + + Traitez avec du zinc + + + 1/2 comprimé de 20mg pendant 14 jours + + + 1 comprimé de 20mg pendant 14 jours + + + Paludisme Simple + + + Artemether 20 mg – Luméfantrine 120mg/ comprimés +1 comprimé Matin-Soir pendant 3 jours + + + Artemether 20 mg – Luméfantrine 120mg/ comprimés +2 comprimés Matin-Soir pendant 3 jours + + + Administrez un suppositoire d'Artesunate de 50mg + + + Administrez un suppositoire d'Artesunate de 100mg + + + Administrez un suppositoire d'Artesunate de 200 mg. + + + TRAITEMENT <i class="fa fa-medkit"></i> + + + Suspicion de Paludisme + + + Ce champ est obligatoire + + + Lequel avez-vous donné? + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec de l'amoxiciline? + + + Pneumonie + + + Traitez avec de l'Amoxiciline 2 fois par jour pendant 5 jours + + + 1/2 Comprimé de 250 mg Ou 1/4 comprimé de 500 mg Ou 1 cuillère à mesurer de125 mg + + + 1 Comprimé de 250 mg Ou 1/2 comprimé de 500 mg Ou 2 cuillères à mesurer de125 mg Ou 1 cuillère à mesurer de Sirop 250 mg + + + 1+1/2 Comprimé de 250 mg Ou 1 comprimé de 500 mg Ou 3 cuillères à mesurer de125mg Ou 1+ 1/2 cuillère à mesurer de Sirop 250 mg + + + 2 Comprimés de 250 mg Ou 1 comprimé de 500 mg Ou 4 cuillères à mesurer de125mg Ou 2 cuillères à mesurer de Sirop 250 mg + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Non + + + Oui + + + Ce champ est obligatoire + + + Avez-vous traité avec du Plumpy Nut.? + + + <b>Malnutrition</b> + + + Malnutrition Aiguë Sévère (MAS) sans complication + + + <b>Aliment Therapeutique Prêt à l'Emploi (ATPE)</b> + + + Traitez avec du Plumpy Nut. + + + *Si Poids entre 3 – 3.4kg* +Donner 1/4 sachets/Jour ou 8 sachets/semaine + +*Si Poids entre 3.5 – 4.9 kg* +Donner 1/2sachets/Jour ou 10 sachets/semaine + +*Si Poids entre 5.0 – 6.9 Kg* +Donner 2 sachets/Jour ou 15 sachets/semaine + +*Si Poids entre 7.0 – 9.9 kg* +Donner 3 sachets/Jour ou 20 sachets/semaine + +*Si Poids entre 10.0 – 14.9 Kg* +Donner 4 sachets/Jour ou 30 sachets/semaine + +*Si Poids entre 15.0 – 19.9 kg* +Donner 5 sachets/Jour ou 35 sachets/semaine + + + 1/2sachets/Jour ou 10 sachets/semaine + + + 1/4 sachets/Jour ou 8 sachets/semaine + + + 2 sachets/Jour ou 15 sachets/semaine + + + 3 sachets/Jour ou 20 sachets/semaine + + + 4 sachets/Jour ou 30 sachets/semaine + + + 5 sachets/Jour ou 35 sachets/semaine + + + Ce champ est obligatoire + + + Quelle quantité? + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Autres + + + Rupture de stocks + + + Ce champ est obligatoire + + + Pourquoi ? + + + Ce champ est obligatoire + + + Précisez (Autre) + + + Résumé + + + REFERER AU CSCOM + + + Mettre en observation + + + Quelle est votre conduite à tenir (CAT)? + + + Préciser TOUT AUTRE PROBLEME + + + Conduite à tenir + + + Non + + + Oui + + + est-il venu avec son carnet vaccination? + + + Non + + + Oui + + + Ce champ est obligatoire + + + BCG + + + Non + + + Oui + + + Ce champ est obligatoire + + + Men AfriVac(Méningite) + + + Non + + + Oui + + + Ce champ est obligatoire + + + PCV13_1(Pneumo1) + + + Non + + + Oui + + + Ce champ est obligatoire + + + PCV13_2(Pneumo2) + + + Non + + + Oui + + + Ce champ est obligatoire + + + PCV13_3(Pneumo 3) + + + Non + + + Oui + + + Ce champ est obligatoire + + + Penta 1 + + + Non + + + Oui + + + Ce champ est obligatoire + + + Penta 2 + + + Non + + + Oui + + + Ce champ est obligatoire + + + Penta 3 + + + Non + + + Oui + + + Ce champ est obligatoire + + + Polio O + + + Non + + + Oui + + + Ce champ est obligatoire + + + Rota 1 + + + Non + + + Oui + + + Ce champ est obligatoire + + + Rota 2 + + + Non + + + Oui + + + Ce champ est obligatoire + + + Rota 3 + + + Non + + + Oui + + + Ce champ est obligatoire + + + VAR 1 + + + Non + + + Oui + + + Ce champ est obligatoire + + + VAR 2 + + + Non + + + Oui + + + Ce champ est obligatoire + + + VPI 1 + + + Non + + + Oui + + + Ce champ est obligatoire + + + VPI 2 + + + Non + + + Oui + + + Ce champ est obligatoire + + + VPO 1 + + + Non + + + Oui + + + Ce champ est obligatoire + + + VPO 2 + + + Non + + + Oui + + + Ce champ est obligatoire + + + VPO 3 + + + Non + + + Oui + + + Ce champ est obligatoire + + + VAA(Fièvre Jaune) + + + Ce champ est obligatoire + + + a t-il reçu les vaccins suivants: + + + La vaccination n'est pas à jour + + + La vaccination est à jour + + + + + + Vacciné contre la BCG + + + + + + Vacciné contre la Men AfriVac(Méningite) + + + + + + Vacciné contre la PCV13_1(Pneumo1) + + + + + + Vacciné contre la PCV13_2(Pneumo2) + + + + + + Vacciné contre la PCV13_3(Pneumo 3) + + + + + + Vacciné contre la Penta 1 + + + + + + Vacciné contre la Penta 2 + + + + + + Vacciné contre la Penta 3 + + + + + + Vacciné contre la Polio O + + + + + + Vacciné contre la Rota 1 + + + + + + Vacciné contre la Rota 2 + + + + + + Vacciné contre la Rota 3 + + + + + + Vacciné contre la VAR 1 + + + + + + Vacciné contre la VAR 2 + + + + + + Vacciné contre la VPI 1 + + + + + + Vacciné contre la VPI 2 + + + + + + Vacciné contre la VPO 1 + + + + + + Vacciné contre la VPO 2 + + + + + + Vacciné contre la VPO 3 + + + + + + Vacciné contre la VAA(Fièvre Jaune) + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + La date doit être entre la date de naissance et aujourd'hui + + + Entrez la date à laquelle le vaccin a été administré + + + À la maison + + + Carnet perdu + + + N'existe pas + + + Ce champ est obligatoire + + + Pourquoi ? + + + Suivi Vaccinal + + + Non + + + Oui + + + Ce champ est obligatoire + + + a t-il reçu la vitamine A les six derniers mois? + + + 1 dose de 100 000 UI + + + 1 dose de 200 000 UI + + + 1 dose de 50 000 UI + + + Ce champ est obligatoire + + + Quelle est la dose reçu ? + + + Vitamine A + + + 1/2 comprimé de 400mg + + + 1 comprimé de 200mg + + + 1 comprimé de 400mg + + + 1/2 comprimé de 250 mg + + + 1 cuillère à mesurer de125 mg + + + 1+ 1/2 cuillère à mesurer de Sirop 250 mg + + + 2 comprimés de 250 mg + + + 4 cuillères à mesurer de125mg + + + 1 comprimé de 500 mg + + + 2 cuillères à mesurer de Sirop 250 mg + + + 1/4 comprimé de 500 mg + + + 1 comprimé de 250 mg + + + 2 cuillères à mesurer de125 mg + + + 1/2 comprimé de 500 mg + + + 1 cuillère à mesurer de Sirop 250 mg + + + 1+1/2 comprimé de 250 mg + + + 3 cuillères à mesurer de125mg + + + 1 comprimé de 500 mg + + + REFERER AU CSCOM + + + Mettre en observation + + + 1/4 comprimé de 500 mg + + + 1 cuillérée mesure de Paracétamol sirop (125 mg) + + + 1/2 comprimé de 500 mg + + + 2 cuillérées mesure de Paracétamol sirop (125 mg) + + + Vert + jr://images/green.jpg + + + Jaune + jr://images/yellow.jpg + + + Rouge + jr://images/red.png + + + Amoxiciline + + + Sirop Balembo ou carbocystéine + + + Miel au citron ou et infusion de feuille d'eucalyptus + + + Autre + + + Aucun + + + Balembo + + + Carbo Cystéine + + + Yeux enfoncés + + + Asoiffé pli cutané qui s'efface lentement + + + Aucun + + + SRO + + + Zinc + + + Autre + + + Aucun + + + Antipyrétiques/Paracétamol Comprime 500 mg + + + Antipyrétiques/Paracétamol Sirop à 125 mg + + + Aucun + + + Autre + + + Téléphone Perdu + + + Téléphone Déchargé/Cassé + + + Autre + + + Référer + + + Traiter à domicile + + + Carnet perdu + + + N'existe pas + + + À la maison + + + Au cours de la visite à domicile + + + Le patient s'est rendu chez l'ASC + + + Autre + + + 1/4 sachets/Jour ou 8 sachets/semaine + + + 1/2sachets/Jour ou 10 sachets/semaine + + + 2 sachets/Jour ou 15 sachets/semaine + + + 3 sachets/Jour ou 20 sachets/semaine + + + 4 sachets/Jour ou 30 sachets/semaine + + + 5 sachets/Jour ou 35 sachets/semaine + + + Positif + + + Négatif + + + Rupture de stocks + + + Autres + + + Positif + + + Négatif + + + Plumpy Sup + + + Super Céréale plus + + + Supercéréale (CSB) + + + 1 dose de 50 000 UI + + + 1 dose de 100 000 UI + + + 1 dose de 200 000 UI + + + Oui + + + Non + + + + + + + + + + + + + + + + + + + + <_id/> + + + + + + + + <_id/> + + + + + + + <_id/> + + <_id/> + + <_id/> + + + + + + + + + + + + + + 0 + 0 + 0 + + + + + + + + + no + no + no + no + no + no + no + no + no + no + no + no + no + no + no + no + no + no + no + no + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 60 + + + + + + + + + + + + + + + + + + + + + + + + + + + 900 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_id/> + + + + 0/0 + 0/0 + + + 0/0 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + static_instance-yes_no-0 + yes + + + static_instance-yes_no-1 + no + + + + + + + static_instance-followup_not_done_today-0 + phone_lost + + + static_instance-followup_not_done_today-1 + phone_unavailable + + + static_instance-followup_not_done_today-2 + other + + + + + + + static_instance-color_shakir_band-0 + green + + + static_instance-color_shakir_band-1 + yellow + + + static_instance-color_shakir_band-2 + red + + + + + + + static_instance-patient_found-0 + home_visit + + + static_instance-patient_found-1 + came_to_chw + + + static_instance-patient_found-2 + other + + + + + + + static_instance-cough_cold_treatment-0 + amoxicillin + + + static_instance-cough_cold_treatment-1 + balembo + + + static_instance-cough_cold_treatment-2 + lemon_eucalyptus + + + static_instance-cough_cold_treatment-3 + other + + + static_instance-cough_cold_treatment-4 + none + + + + + + + static_instance-fever_treatment-0 + para500mg + + + static_instance-fever_treatment-1 + para125mg + + + static_instance-fever_treatment-2 + any + + + static_instance-fever_treatment-3 + other + + + + + + + static_instance-tdr_result-0 + positive + + + static_instance-tdr_result-1 + negative + + + + + + + static_instance-diarrhea_treatment-0 + sro + + + static_instance-diarrhea_treatment-1 + zinc + + + static_instance-diarrhea_treatment-2 + other + + + static_instance-diarrhea_treatment-3 + none + + + + + + + static_instance-dehydration_sign-0 + sunken_eyes + + + static_instance-dehydration_sign-1 + thirsty_skin + + + static_instance-dehydration_sign-2 + none + + + + + + + static_instance-positive_negative-0 + positive + + + static_instance-positive_negative-1 + negative + + + + + + + static_instance-cat-0 + cscom + + + static_instance-cat-1 + observe + + + + + + + static_instance-reason_no_medicine-0 + out_of_stock + + + static_instance-reason_no_medicine-1 + other + + + + + + + static_instance-vitamin_a_dose-0 + 50kui + + + static_instance-vitamin_a_dose-1 + 100kui + + + static_instance-vitamin_a_dose-2 + 200kui + + + + + + + static_instance-therapeutic_treatment-0 + plumpy_sup + + + static_instance-therapeutic_treatment-1 + super_cereal_plus + + + static_instance-therapeutic_treatment-2 + super_cereal + + + + + + + static_instance-medicine_cat-0 + cscom + + + static_instance-medicine_cat-1 + home + + + + + + + static_instance-cough_cold_treatment_cscom-0 + balembo + + + static_instance-cough_cold_treatment_cscom-1 + carbo + + + + + + + static_instance-no_vaccination_card_reason-0 + lost + + + static_instance-no_vaccination_card_reason-1 + no_card + + + static_instance-no_vaccination_card_reason-2 + at_home + + + + + + + static_instance-amoxicillin_treatment-0 + 6 + 1_2_tablet_250 + + + static_instance-amoxicillin_treatment-1 + 6 + 1_spoon_125mg + + + static_instance-amoxicillin_treatment-2 + 6 + 1_4_tablet_500 + + + static_instance-amoxicillin_treatment-3 + 9 + 1_tablet_250 + + + static_instance-amoxicillin_treatment-4 + 9 + 2_spoon_125mg + + + static_instance-amoxicillin_treatment-5 + 9 + 1_2_tablet_500 + + + static_instance-amoxicillin_treatment-6 + 9 + 1_spoon_250mg + + + static_instance-amoxicillin_treatment-7 + 13 + 1_1_2_tablet_250mg + + + static_instance-amoxicillin_treatment-8 + 13 + 3_spoon_125mg + + + static_instance-amoxicillin_treatment-9 + 13 + 1_tablet_500mg + + + static_instance-amoxicillin_treatment-10 + 13 + 1_1_2_spoon_250mg + + + static_instance-amoxicillin_treatment-11 + 18 + 2_tablet_250mg + + + static_instance-amoxicillin_treatment-12 + 18 + 4_spoon_125_mg + + + static_instance-amoxicillin_treatment-13 + 18 + 1_tablet_500mg + + + static_instance-amoxicillin_treatment-14 + 18 + 2_spoon_250mg + + + + + + + static_instance-chw_fever_treatment-0 + 12 + 1_4_tablet_500mg + + + static_instance-chw_fever_treatment-1 + 12 + 1_spoon + + + static_instance-chw_fever_treatment-2 + 60 + 1_2_tablet_500mg + + + static_instance-chw_fever_treatment-3 + 60 + 2_spoon + + + + + + + static_instance-plumpy_nut_medicine-0 + 1_4_sachets + + + static_instance-plumpy_nut_medicine-1 + 1_2_sachets + + + static_instance-plumpy_nut_medicine-2 + 2_sachets + + + static_instance-plumpy_nut_medicine-3 + 3_sachets + + + static_instance-plumpy_nut_medicine-4 + 4_sachets + + + static_instance-plumpy_nut_medicine-5 + 5_sachets + + + + + + + static_instance-abendazole_qt-0 + 12 + 1_2_tablet_400 + + + static_instance-abendazole_qt-1 + 12 + 1_tablet_200 + + + static_instance-abendazole_qt-2 + 60 + 1_tablet_400 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/PLACE_TYPE-create.xlsx b/test/project-config/forms/contact/PLACE_TYPE-create.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..cf3841d266c32a85d56c492ac4a1a90e7458079a GIT binary patch literal 23953 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 literal 0 HcmV?d00001 diff --git a/test/project-config/forms/contact/c50_supervision_area-create.properties.json b/test/project-config/forms/contact/c50_supervision_area-create.properties.json new file mode 100644 index 0000000..48ba295 --- /dev/null +++ b/test/project-config/forms/contact/c50_supervision_area-create.properties.json @@ -0,0 +1,12 @@ +{ + "title": [ + { + "locale": "en", + "content": "New supervision area" + }, + { + "locale": "fr", + "content": "Nouvelle zone de supervision" + } + ] +} \ No newline at end of file diff --git a/test/project-config/forms/contact/c50_supervision_area-create.xlsx b/test/project-config/forms/contact/c50_supervision_area-create.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..374177c2a3e88a8565d7a74d6905a1fd1796497b GIT binary patch literal 24721 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 SXfQAc0pWGvAx=x8K|BD{vCba= literal 0 HcmV?d00001 diff --git a/test/project-config/forms/contact/c50_supervision_area-create.xml b/test/project-config/forms/contact/c50_supervision_area-create.xml new file mode 100644 index 0000000..610abec --- /dev/null +++ b/test/project-config/forms/contact/c50_supervision_area-create.xml @@ -0,0 +1,250 @@ + + + + New Supervision Area + + + + + Supervision area name + + + - + + + Email + + + First name + + + Last name + + + Put "11111111" if no number is available + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + ADC (OCA Coach) + + + Supervisor + + + Role + + + Username + + + Health area name + + + District to which the health area belongs + + + + + Nom de la zone du supervision + + + Entrez une adresse email valide(ex. adrien@health.org) + + + Adresse email + + + Prénom du Superviseur + + + Nom du Superviseur + + + - + + + Si le numéro n'est pas disponible, mettre "11111111" + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + ADC (OCA Coach) + + + Superviseur + + + Role + + + Nom d'utilisateur + + + Nom de l'aire de santé + + + District d'appartenance de l'aire de Santé + + + + + + + + + + + + + + + + + + + + + + PARENT + + + + + + + + + + + + + + + + + + + + + + + PARENT + contact + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c50_supervision_area-edit.properties.json b/test/project-config/forms/contact/c50_supervision_area-edit.properties.json new file mode 100644 index 0000000..820174a --- /dev/null +++ b/test/project-config/forms/contact/c50_supervision_area-edit.properties.json @@ -0,0 +1,12 @@ +{ + "title": [ + { + "locale": "en", + "content": "Edit supervision area" + }, + { + "locale": "fr", + "content": "Modifier zone de supervision" + } + ] +} \ No newline at end of file diff --git a/test/project-config/forms/contact/c50_supervision_area-edit.xlsx b/test/project-config/forms/contact/c50_supervision_area-edit.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..dc7eb93be501cff9f9076ed9cac38421b67edd41 GIT binary patch literal 19526 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 literal 0 HcmV?d00001 diff --git a/test/project-config/forms/contact/c50_supervision_area-edit.xml b/test/project-config/forms/contact/c50_supervision_area-edit.xml new file mode 100644 index 0000000..198b923 --- /dev/null +++ b/test/project-config/forms/contact/c50_supervision_area-edit.xml @@ -0,0 +1,141 @@ + + + + Edit Supervision Area + + + + + Primary Contact + + + Name of this Supervision area + + + + + Contact primaire + + + - + + + - + + + - + + + - + + + Nom de la zone de supervision + + + - + + + - + + + - + + + - + + + - + + + - + + + - + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + <_id/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c52_supervision_area-create.properties.json b/test/project-config/forms/contact/c52_supervision_area-create.properties.json new file mode 100644 index 0000000..298aef4 --- /dev/null +++ b/test/project-config/forms/contact/c52_supervision_area-create.properties.json @@ -0,0 +1,15 @@ +{ + "title": [ + { + "locale": "en", + "content": "Edit supervision area" + }, + { + "locale": "fr", + "content": "Modifier zone de supervision" + } + ], + "context": { + "expression": "user.role !== 'oca_supervisor'" + } +} \ No newline at end of file diff --git a/test/project-config/forms/contact/c52_supervisor-create.xlsx b/test/project-config/forms/contact/c52_supervisor-create.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..9ae09099e486d0556d8cefc5ad47d91fc7bbe378 GIT binary patch literal 17088 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 + + + Ajouter personne + + + + + Enter a valid email address (e.g. adrien@health.org) + + + Email + + + First name + + + Last name + + + Put "11111111" if no number is available + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + ADC (OCA Coach) + + + Supervisor + + + Role + + + Username + + + + + Entrez une adresse email valide(ex. adrien@health.org) + + + Adresse email + + + Prénom (s) + + + Nom + + + - + + + Si le numéro n'est pas disponible, mettre "11111111" + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + ADC (OCA Coach) + + + Superviseur + + + Role + + + Nom d'utilisateur + + + + + + + + + + + + + + + + + + + + + + PARENT + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c52_supervisor-edit.xlsx b/test/project-config/forms/contact/c52_supervisor-edit.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..96eb109fe58a2f35c5a3eb9a26bb1cbc892a7ba1 GIT binary patch literal 17514 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 literal 0 HcmV?d00001 diff --git a/test/project-config/forms/contact/c52_supervisor-edit.xml b/test/project-config/forms/contact/c52_supervisor-edit.xml new file mode 100644 index 0000000..172c33f --- /dev/null +++ b/test/project-config/forms/contact/c52_supervisor-edit.xml @@ -0,0 +1,186 @@ + + + + Ajouter personne + + + + + Enter a valid email address (e.g. adrien@health.org) + + + Email + + + First name + + + Last name + + + Put "11111111" if no number is available + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + ADC (OCA Coach) + + + Supervisor + + + Role + + + Username + + + + + Entrez une adresse email valide(ex. adrien@health.org) + + + Adresse email + + + Prénom (s) + + + Nom + + + - + + + Si le numéro n'est pas disponible, mettre "11111111" + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + ADC (OCA Coach) + + + Superviseur + + + Role + + + Nom d'utilisateur + + + + + + + + + + + + + + + + + + + + + + + PARENT + + + + + + + ${user_role} + + + + + Will be hidden + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c60_chw_site-create.properties.json b/test/project-config/forms/contact/c60_chw_site-create.properties.json new file mode 100644 index 0000000..56cc1f3 --- /dev/null +++ b/test/project-config/forms/contact/c60_chw_site-create.properties.json @@ -0,0 +1,12 @@ +{ + "title": [ + { + "locale": "en", + "content": "New CHW site" + }, + { + "locale": "fr", + "content": "Nouveau site ASC" + } + ] +} \ No newline at end of file diff --git a/test/project-config/forms/contact/c60_chw_site-create.xlsx b/test/project-config/forms/contact/c60_chw_site-create.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..4bfa07efb2cc2aa948fbba46b6626eae3296419b GIT binary patch literal 17569 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 + + + New CHW Site + + + + + CHW Site name + + + First name + + + No + + + Yes + + + Have you geolocated? + + + Last name + + + Put "11111111" if no number is available + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + CHW + + + Other Community Actor + + + Role + + + Female + + + Male + + + Sex + + + Existing + + + Non existing + + + Site category + + + Username + + + Health area + + + Belongs To + + + + + Nom du site ASC + + + Prénom de l'Agent + + + Non + + + Oui + + + Avez-vous géolocalisé? + + + Nom de l'Agent + + + - + + + Si le numéro n'est pas disponible, mettre "11111111" + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + ASC + + + Autre Acteur Communautaire + + + Rôle + + + Femme + + + Homme + + + Sexe + + + Existant + + + Non existant + + + Catégorie de site + + + Nom d'utilisateur + + + Aire de santé + + + Appartient à + + + + + + + + + + + + + + + + + + + + + + PARENT + + + + + + + + + + + + + + + + + + + + + + PARENT + contact + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c60_chw_site-edit.properties.json b/test/project-config/forms/contact/c60_chw_site-edit.properties.json new file mode 100644 index 0000000..86cfe9b --- /dev/null +++ b/test/project-config/forms/contact/c60_chw_site-edit.properties.json @@ -0,0 +1,12 @@ +{ + "title": [ + { + "locale": "en", + "content": "Edit CHW site" + }, + { + "locale": "fr", + "content": "Modifier site ASC" + } + ] +} \ No newline at end of file diff --git a/test/project-config/forms/contact/c60_chw_site-edit.xlsx b/test/project-config/forms/contact/c60_chw_site-edit.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..f2cca274e47d0d2d96be06c99b60cc67afd90c99 GIT binary patch literal 15576 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 B7$*P# literal 0 HcmV?d00001 diff --git a/test/project-config/forms/contact/c60_chw_site-edit.xml b/test/project-config/forms/contact/c60_chw_site-edit.xml new file mode 100644 index 0000000..61b514b --- /dev/null +++ b/test/project-config/forms/contact/c60_chw_site-edit.xml @@ -0,0 +1,176 @@ + + + + Edit CHW Site + + + + + Primary Contact + + + CHW site + + + Existing + + + Non existing + + + Site category + + + + + Contact primaire + + + - + + + - + + + - + + + - + + + Nom du site ASC + + + - + + + Existant + + + Non existant + + + Catégorie de site + + + - + + + - + + + - + + + - + + + - + + + - + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_id/> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c62_chw-create.properties.json b/test/project-config/forms/contact/c62_chw-create.properties.json new file mode 100644 index 0000000..58a57fd --- /dev/null +++ b/test/project-config/forms/contact/c62_chw-create.properties.json @@ -0,0 +1,15 @@ +{ + "title": [ + { + "locale": "en", + "content": "New CHW" + }, + { + "locale": "fr", + "content": "Ajouter personne" + } + ], + "context": { + "permission": "can_create_chw" + } +} \ No newline at end of file diff --git a/test/project-config/forms/contact/c62_chw-create.xlsx b/test/project-config/forms/contact/c62_chw-create.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..e1d7a6a6d3f8567efa6705a0e254663d008c5840 GIT binary patch literal 18319 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 cYx;{VQ;-G&sN-*T4iShEu(>B8{M*(41N^E + + + Ajouter personne + + + + + First name + + + No + + + Yes + + + You cannot add a new person here. Please refer to your supervisor or the administrator. + + + Have you geolocated? + + + Last name + + + Enter a valid number in the form XXXXXXXX + + + Phone Number + + + Role + + + Female + + + Male + + + Sex + + + Username + + + <span style="color:red;">You cannot add a new person here. Please refer to your supervisor or the administrator.</span> + + + + + Prénom (s) + + + Non + + + Oui + + + Vous ne pouvez pas ajouter de nouvelle personne ici. Veuillez vous référer à votre superviseur ou à l'administrateur. + + + Avez-vous géolocalisé? + + + Nom + + + - + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + Rôle + + + Femme + + + Homme + + + Sexe + + + Nom d'utilisateur + + + <span style="color:red;">Vous ne pouvez pas ajouter de nouvelle personne ici. Veuillez vous référer à votre superviseur ou à l'administrateur.</span> + + + + + + + + + + + + + + + + + + + + + + PARENT + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c62_chw-edit.xlsx b/test/project-config/forms/contact/c62_chw-edit.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..e7062e3b235381c5ca3a07e37c84e849e2d0975e GIT binary patch literal 18084 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 b{(tfka+07QL + + + Ajouter personne + + + + + First name + + + No + + + Yes + + + You can not edit this form. Please cancel. + + + Have you geolocated? + + + Last name + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + Role + + + Female + + + Male + + + Sex + + + Username + + + Belongs to + + + <span style="color:red;">You can not edit this form. Please cancel.</span> + + + + + Prénom (s) + + + Non + + + Oui + + + Vous ne pouvez pas modifier ce formulaire. Veuillez annuler. + + + Avez-vous géolocalisé? + + + Nom + + + - + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + Rôle + + + Femme + + + Homme + + + Sexe + + + Nom d'utilisateur + + + Associé avec + + + <span style="color:red;">Vous ne pouvez pas modifier ce formulaire. Veuillez annuler.</span> + + + + + + + + + + + + + + + + + + + + + + PARENT + + + + + + + + + + + + + Will be hidden + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c70_village-create.properties.json b/test/project-config/forms/contact/c70_village-create.properties.json new file mode 100644 index 0000000..cf8f27b --- /dev/null +++ b/test/project-config/forms/contact/c70_village-create.properties.json @@ -0,0 +1,12 @@ +{ + "title": [ + { + "locale": "en", + "content": "New village" + }, + { + "locale": "fr", + "content": "Nouveau village" + } + ] +} \ No newline at end of file diff --git a/test/project-config/forms/contact/c70_village-create.xml b/test/project-config/forms/contact/c70_village-create.xml new file mode 100644 index 0000000..3179409 --- /dev/null +++ b/test/project-config/forms/contact/c70_village-create.xml @@ -0,0 +1,1040 @@ + + + + New Village + + + + + Click on this point only when you are in the concession. + + + Geolocation of the family +Click on this point only when you are in the family + + + Should be between 1 and 50 + + + Number of household(s) in the compound + + + : **** + + + + + + Monogamy + + + Polygamy + + + Marital status + + + Divorced + + + Married + + + Single + + + Widowed + + + Matrimonial Status + + + Artisan + + + Breeder + + + Commercial employee + + + Driver + + + FAMA + + + Farmer + + + Health worker + + + Household + + + Other + + + Reseller + + + Retirement + + + Shopkeeper + + + Social worker / volunteer + + + Pupil/student + + + Teacher + + + Trader + + + Unemployed + + + Worker + + + Profession + + + Specify (Other) + + + - + + + Email + + + **Age** + + + Months must between 0 and 11 + + + Months + + + Age must be between 0 and 130 + + + Years + + + DOB + + + Date of Birth + + + Date must be before today + + + Age + + + Months: +Year: +DOB Approx: +DOB Calendar: +DOB ISO: + + Date of Birth + + + Date of birth unknown + + + + + First name + + + Last name + + + Membership Structure + + + No + + + Yes + + + Out of CHW Area ? + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number 2 + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + Put "11111111" if no number is available + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + Female + + + Male + + + Sex + + + Username + + + 's Concession + + + 's Household + + + super_admin + + + village_head + + + concession_head + + + patient + + + Role + + + of the person + + + of the village chief + + + of the concession chief + + + of the household head + + + c12_central + + + c72_village + + + c82_concession + + + c92_household + + + Name of the new central + + + Name of the village + + + Name of the concession + + + Name of the household + + + Central + + + Village + + + Concession + + + Household + + + Enter the name of this place + + + + + Cliquez sur ce point seulement lorsque vous êtes dans la concession + + + Géolocalisation de la concession +Cliquez sur ce point seulement lorsque vous êtes dans la concession + + + Doit être compris entre 1 et 50 + + + Nombre de ménage (s) dans la concession: + + + : **** + + + + + + Monogamie + + + Polygamie + + + Régime marital + + + Divorcé (e) + + + Marié(e) + + + Célibataire + + + Veuve + + + Situation Matrimoniale + + + Artisan + + + Eleveur + + + Employé de commerce + + + Chauffeur + + + FAMA + + + Cultivateur + + + Agent de Santé + + + Ménagère + + + Autre + + + Revendeur ( se ) + + + Retraité + + + Boutiquier + + + Travailleur social / volontaire + + + Elève/étudiant + + + Enseignant (e) + + + Commerçant (e) + + + Sans emploi + + + Ouvrier + + + Profession + + + Spécifier (Autre) + + + Entrez une adresse email valide(ex. adrien@health.org) + + + Adresse email + + + **Age** + + + - + + + Mois + + + - + + + Année + + + - + + + Date de naissance + + + - + + + Date de naissance + + + - + + + - + + + Date de naissance non connue + + + + + Prénom (s) + + + Nom + + + Structure d'appartenance + + + - + + + Non + + + Oui + + + Hors zone ASC ? + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone 2 + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + Si le numéro n'est pas disponible, mettre "11111111" + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + Femme + + + Homme + + + Sexe + + + Nom d'utilisateur + + + Concession de + + + Ménage de + + + super_admin + + + village_head + + + concession_head + + + patient + + + Rôle + + + de la Personne + + + du Chef de village + + + du Chef de concession + + + du chef de ménage + + + c12_central + + + c72_village + + + c82_concession + + + c92_household + + + Nom du niveau central + + + Nom du village + + + Nom de la concession + + + Nom du ménage + + + Central + + + Village + + + Concession + + + Famille + + + Nom de l'endroit + + + + + + + + + + + + + + + + + + + + + + PARENT + + + + + + + + + + + + + + + + + + c70_village + c70_village + c70_village + c70_village + c70_village + c70_village + + + + + + PARENT + contact + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c70_village-edit.properties.json b/test/project-config/forms/contact/c70_village-edit.properties.json new file mode 100644 index 0000000..43275bf --- /dev/null +++ b/test/project-config/forms/contact/c70_village-edit.properties.json @@ -0,0 +1,12 @@ +{ + "title": [ + { + "locale": "en", + "content": "Edit village" + }, + { + "locale": "fr", + "content": "Modifier village" + } + ] +} \ No newline at end of file diff --git a/test/project-config/forms/contact/c70_village-edit.xml b/test/project-config/forms/contact/c70_village-edit.xml new file mode 100644 index 0000000..3679397 --- /dev/null +++ b/test/project-config/forms/contact/c70_village-edit.xml @@ -0,0 +1,418 @@ + + + + Edit Village + + + + + Select Person + + + Select Person + + + Select Person + + + Select Person + + + - + + + Geolocation of the family +Click on this point only when you are in the family + + + Should be between 1 and 50 + + + Number of household(s) in the compound + + + You can not edit this form. Please cancel. + + + + + + No + + + Yes + + + Out of CHW Area ? + + + No + + + Yes + + + Do you want to change the primary contact? + + + Primary contact: + + + Name of the central + + + Name of the village + + + Name of the concession + + + Name of the household + + + Central + + + Village + + + Concession + + + Household + + + <span style="color:red;">You can not edit this form. Please cancel.</span> + + + + + Choisisser le contact primaire + + + Choisisser le contact primaire + + + Choisisser le contact primaire + + + Choisisser le contact primaire + + + Click on this point only when you are in the concession. + + + Géolocalisation de la concession +Cliquez sur ce point seulement lorsque vous êtes dans la concession + + + Doit être compris entre 1 et 50 + + + Nombre de ménage (s) dans la concession: + + + - + + + - + + + - + + + - + + + Vous ne pouvez pas modifier ce formulaire. Veuillez annuler. + + + + + + Non + + + Oui + + + Hors zone ASC ? + + + - + + + - + + + - + + + Non + + + Oui + + + Voulez-vous changer le contact primaire? + + + Contact primaire: + + + Nom du central + + + Nom du village + + + Nom de la concession + + + Nom du ménage + + + Central + + + Village + + + Concession + + + Famille + + + <span style="color:red;">Vous ne pouvez pas modifier ce formulaire. Veuillez annuler.</span> + + + - + + + - + + + - + + + - + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + <_id/> + + + + + + Cliquez sur ce point seulement lorsque vous êtes dans la concession + + + + + + + + + + + + c70_village + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c72_village-create.properties.json b/test/project-config/forms/contact/c72_village-create.properties.json new file mode 100644 index 0000000..25a326e --- /dev/null +++ b/test/project-config/forms/contact/c72_village-create.properties.json @@ -0,0 +1,15 @@ +{ + "title": [ + { + "locale": "en", + "content": "New person" + }, + { + "locale": "fr", + "content": "Nouvelle personne" + } + ], + "context": { + "permission": "can_create_users" + } +} diff --git a/test/project-config/forms/contact/c72_village-create.xlsx b/test/project-config/forms/contact/c72_village-create.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..be6eeb9655a744f1e16352bec6806a211f6eb063 GIT binary patch literal 16367 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 literal 0 HcmV?d00001 diff --git a/test/project-config/forms/contact/c72_village-create.xml b/test/project-config/forms/contact/c72_village-create.xml new file mode 100644 index 0000000..6d28ce6 --- /dev/null +++ b/test/project-config/forms/contact/c72_village-create.xml @@ -0,0 +1,149 @@ + + + + Ajouter personne + + + + + First name + + + Last name + + + Put "11111111" if no number is available + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + Female + + + Male + + + Sex + + + + + Prénom (s) + + + Nom + + + - + + + Si le numéro n'est pas disponible, mettre "11111111" + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + Femme + + + Homme + + + Sexe + + + + + + + + + + + + + + + + + + + + + + PARENT + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/c72_village-edit.xlsx b/test/project-config/forms/contact/c72_village-edit.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..03f49c23ccc52167271466b872f2dc92052d230c GIT binary patch literal 20174 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 XtOVGHpaTKHfBb}g=n9R*AOHP7D?mse literal 0 HcmV?d00001 diff --git a/test/project-config/forms/contact/c72_village-edit.xml b/test/project-config/forms/contact/c72_village-edit.xml new file mode 100644 index 0000000..2122407 --- /dev/null +++ b/test/project-config/forms/contact/c72_village-edit.xml @@ -0,0 +1,183 @@ + + + + Ajouter personne + + + + + First name + + + Last name + + + Put "11111111" if no number is available + + + Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 + + + Phone Number + + + Female + + + Male + + + You can not edit this form. Please cancel. + + + Sex + + + <span style="color:red;">You can not edit this form. Please cancel.</span> + + + + + Prénom (s) + + + Nom + + + - + + + Si le numéro n'est pas disponible, mettre "11111111" + + + Entrez un numero valide sous la forme XXXXXXXX + + + N° de téléphone + + + Femme + + + Homme + + + Vous ne pouvez pas modifier ce formulaire. Veuillez annuler. + + + Sexe + + + <span style="color:red;">Vous ne pouvez pas modifier ce formulaire. Veuillez annuler.</span> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Will be hidden + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/forms/contact/place-types.json b/test/project-config/forms/contact/place-types.json new file mode 100644 index 0000000..d30e2b1 --- /dev/null +++ b/test/project-config/forms/contact/place-types.json @@ -0,0 +1,5 @@ +{ + "c10_central": "Central", + "c70_village": "Village", + "c80_concession": "Family" +} \ No newline at end of file diff --git a/test/project-config/translations/messages-en.properties b/test/project-config/translations/messages-en.properties new file mode 100644 index 0000000..d05fa49 --- /dev/null +++ b/test/project-config/translations/messages-en.properties @@ -0,0 +1,775 @@ +contact.type.c10_central = Central level +contact.type.c10_central.plural = Central levels +contact.type.c10_central.new = New central level +contact.type.c10_central.edit = Edit central level + +contact.type.c20_region = Region +contact.type.c20_region.plural = Regions +contact.type.c20_region.new = New region +contact.type.c20_region.edit = Edit region + +contact.type.c30_district = District +contact.type.c30_district.plural = Districts +contact.type.c30_district.new = New district +contact.type.c30_district.edit = Edit district + +contact.type.c40_health_area = Health Area +contact.type.c40_health_area.plural = Health Area +contact.type.c40_health_area.new = New Health Area +contact.type.c40_health_area.edit = Edit Health Area + +contact.type.c50_supervision_area = Supervision area +contact.type.c50_supervision_area.edit = Edit supervision area +contact.type.c50_supervision_area.new = New supervision area +contact.type.c50_supervision_area.plural = Supervision area + +contact.type.c60_chw_site = CHW Site +contact.type.c60_chw_site.edit = Edit CHW site +contact.type.c60_chw_site.new = New CHW site +contact.type.c60_chw_site.plural = CHW Sites + +contact.type.c70_village = Village +contact.type.c70_village.edit = Edit village +contact.type.c70_village.new = New village +contact.type.c70_village.plural = Villages + +contact.type.c80_concession = Concession +contact.type.c80_concession.edit = Edit concessions +contact.type.c80_concession.new = New concession +contact.type.c80_concession.plural = Concessions + +contact.type.c90_household = Household +contact.type.c90_household.plural = Household +contact.type.c90_household.new = New household +contact.type.c90_household.edit = Edit household + +contact.type.person = Person +contact.type.person.edit = Edit person +contact.type.person.new = New person +contact.type.person.plural = Persons + +contact.type.c12_central = Person +contact.type.c12_central.edit = Edit person +contact.type.c12_central.new = New person +contact.type.c12_central.plural = Persons + +contact.type.c22_region = Person +contact.type.c22_region.edit = Edit person +contact.type.c22_region.new = New person +contact.type.c22_region.plural = Persons + +contact.type.c32_district = Person +contact.type.c32_district.edit = Edit person +contact.type.c32_district.new = New person +contact.type.c32_district.plural = Persons + +contact.type.c42_health_area = Person +contact.type.c42_health_area.edit = Edit person +contact.type.c42_health_area.new = New person +contact.type.c42_health_area.plural = Persons + +contact.type.c52_supervisor = Person +contact.type.c52_supervisor.edit = Edit person +contact.type.c52_supervisor.new = New person +contact.type.c52_supervisor.plural = Persons + +contact.type.c62_chw = Person +contact.type.c62_chw.edit = Edit person +contact.type.c62_chw.new = New person +contact.type.c62_chw.plural = Persons + +contact.type.c72_village = Person +contact.type.c72_village.edit = Edit person +contact.type.c72_village.new = New person +contact.type.c72_village.plural = Persons + +contact.type.c82_concession = Person +contact.type.c82_concession.edit = Edit person +contact.type.c82_concession.new = New person +contact.type.c82_concession.plural = Persons + +contact.type.c92_household = Person +contact.type.c92_household.edit = Edit person +contact.type.c92_household.new = New person +contact.type.c92_household.plural = Household members + +contact.type.c74_community_actor = New Community Actor +contact.type.c74_community_actor.edit = Edit Community Actor +contact.type.c74_community_actor.new = New Community Actor +contact.type.c74_community_actor.plural = New Community Actors + +contact.sex.male = Male +contact.sex.female = Female +contact.sex. = Undefined +person.field.telephone = phone + +contact.pregnancy.lmp = Day of last menstruations +contact.pregnancy.estimated_delivery = Estimated delivery +contact.pregnancy.type = Type of pregnancy +contact.pregnancy.high_risk = High risque +contact.pregnancy.not_high_risk = No risque +contact-prgnancy-activity = Pregnacy Active + +task.pregnancy_confirmation = Pregnancy Confirmation +task.child_longitudinal_followup_1_24 = Child Longitudinal Followup 1 to 24 month +task.child_longitudinal_followup_2_5 = Child Longitudinal Followup 2 to 5 years +task.child_longitudinal_followup_6_12 = Child Longitudinal Followup 6 to 12 years +task.child_longitudinal_followup_13_19 = Child Longitudinal Followup 13 to 19 years +task.newborn_registration = Newborn Registration +task.mother_referral_followup = Mother Referral Followup +task.cpon_realisation = Home birth reference +task.postnatal_followup = Postnatal Followup +task.treatment_followup_under_5 = Treatment Followup less than 5 years +task.referral_followup_under_5 = Referral Followup less than 5 years +task.treatment_referral_followup_under_5 = Follow-up Treatment after Referral less than 5 years +task.mas_followup_under_5 = MAS less than 5 years +task.mam_followup_under_5 = MAM less than 5 years +task.vaccine_followup_under_5 = Vaccine Followup less than 5 years +task.treatment_followup_multiple = Multiple Treatment Followup +task.treatment_followup_under_5.diarrhea = Diarrhea Treatment Followup +task.treatment_followup_under_5.pneumonia = Pneumonia Treatment Followup +task.treatment_followup_under_5.malaria = Malaria Treatment Followup +contact.delivery.number_pregnancy_confirmed = Pregnancy Confirmed +contact.delivery.number_of_children = Number of Newborn +contact.delivery.delivery_date = Delivery Date +contact.delivery.general = Delivery Details +contact.fp.general = Family Planning +contact.fp.recent_fp_method = Recent FP Method +contact.fp.state = Status +contact.fp.stop = Stop +contact.fp.in_progress = In Progress + +task.pregnancy_followup = Pregnancy Followup +task.priority.high = High + +enketo.geopicker.latitude = Latitude +enketo.geopicker.longitude = Longitude +enketo.geopicker.altitude = Altitude +enketo.geopicker.accuracy = Accuracy +enketo.geopicker.searchPlaceholder = Search for a place +enketo.selectpicker.noneselected = None + +usertype.central_admin = Central Admin +usertype.national_admin = National Admin +usertype.district_admin = District Admin +usertype.dtc = DTC +usertype.supervisor = Supervisor +usertype.chw = CHW +usertype.oca = Other Community Actor +usertype.oca_supervisor = ADC(OCA Coach) +usertype.cvs = CVS +usertype.wash_comity = Wash Comity + +usertype.savings = Savings Manager +usertype.manager_stock= Stock Warehouse Manager + +vaccine.title = Vaccinations +contact.birth.certificate = Birth Certificate +contact.birth.certificate_number = Birth Certificate Number +contact.birth.certificate_date = Birth Certificate Date + +task.overdue = Past due +task.overdue.days = {DAYS, plural, =0{Due today} =1{Due yesterday} other{Due \# days ago}} +task.days.left = {DAYS, plural, =1{1 day left} other{# days left}} +task.pregnancy_referral_followup = Pregnancy Referral Followup +task.anc_followup = ANC Visit Realization +task.fp_reference_followup = FP Reference {{contact.name}} +task.fp_renewal_followup = FP Followup +task.treatment_followup_over_5 = Treatment Followup +task.referral_followup_over_5 = Referral Followup over 5 +task.tb_treatment_followup = Weekly Treatment Follow-up TB +sms.token.login.help = Hi, ready to start? You will need data and a good connection. Go to https://play.google.com/store/apps/details?id=org.medicmobile.webapp.mobile.moh_mali_chw&hl=en_US to install the app. After the installation, click the next link to log in. + +task.referral_followup=Referral +task.treatment.malaria=Malaria followup +task.treatment.diarrhea=Diarrhea followup +task.treatment.ari=Pneumonia followup +task.treatment.multiple=Treatment followup +task.treatment.malnutrition=Malnutrition +task.pnc_followup=Postnatal realization +task.anc_supervision_followup=Antenatal realization +task.newborn_followup=Newborn followup +task.prenatal_followup=Prenatal followup +task.supervision_visit_realization=Supervision visit +task.supervision_with_chw_confirmation=Visit with CHW +task.supervision_without_chw_confirmation=Visit without CHW +task.individual_feedback_confirmation=Individual feedback +task.oca_individual_feedback_confirmation = Individual Meeting Realization +task.oca_supervision_visit_realization=Coaching Visit Realization (PC) +task.oca_supervision_visit_scheduling=Coaching visit scheduling (PC) +task.meeting_with_authorities_realization=Meeting with authorities after coaching +task.visit_with_pc_realization=Visit Realization with the PC +task.visit_realisation_without_pc= Visit Realization to households without the PC +task.sebac_alert_sort = Alert sorting +task.sebac_alert_sort_not_done = Alert sorting not done +task.sebac_alert_sort_2 = Alert sorting 2 +task.sebac_alert_verification=Alert Verification +task.sebac_verification_notification=Alert Verification Notification +task.sebac_verification_result=Alert Verification Result +task.sebac_test_result_reminder=Test Result Reminder +task.sebac_result_notification_supervisor=Test Result Notification To Supervisor +task.sebac_result_notification_chw=Test Result Notification To CHW + +target.home_visits=# Home visit +target.2-home-visits-per-fam=% households who received ≥2 VAD +target.chv-receive-supervision-visit=% of CHVs who received a 360 degree supervision visit +target.patient_assessment-24h=% of children <5 years who received care within 24 hours of the onset of illness +target.patient_assessment_over_5-24h=% of children> = 5 years who received care within 24 hours of the beginning of their illness +target.preg-first-trimester=% of pregnancies diagnosed in the first trimester +target.protocol-error-percentage=% of the evaluations without protocol errors +target.protocol-error-count=# total protocol errors + +target.danger-signs-without-accompany=Sign(s) of danger without reference or accompaniment to the CSCOM +target.symptoms-of-malaria-without-tdr=Malaria sign, TDR malaria not realized +target.fever-without-tdr=Presence of fever, RDT malaria not achieved +target.tdr-without-malaria=CTA given by the ASC, TDR negative malaria +target.incorrect-dosage-of-act-based-combination=CTA dose given by incorrect ASC +target.diarrhea-without-zinc=Diarrhea without zinc administration +target.incorrect-dosage-of-zinc=Zinc dose given by incorrect ASC +target.pneumonia-without-amoxicillin=Pneumonia without amoxicillin +target.amoxicillin-without-pneumonia=Amoxicillin without pneumonia +target.incorrect-dosage-of-amoxicillin=Amoxicillin dose given by the incorrect ASC +target.muac-yellow-incomplete-drugs=Shakir band in yellow without complete treatment on the first day +target.incorrect-dosage-of-vitamin-a=Vitamin A dose given by the incorrect ASC +target.incorrect-dosage-of-albendazole=Albendazol dose given by incorrect ASC +target.incorrect-dosage-of-paracetamol=Paracetamol dose given by the incorrect ASC +target.no-24h-follow-up=No 24h follow-up +target.no-48h-follow-up=No 48h follow-up +target.no-72h-follow-up=No 72h follow-up +target.no-120h-follow-up=No follow-up of 5th d ay (For IRA or Diarrhea) +target.aggrevated-no-accompany=Aggravated condition at 24H or 48H or 72H or day 5 without reference / accompaniment at the CSCOM +target.unchanged-no-accompany=No change at 48H or 72H or 5th day without reference / accompaniment at the CSCOM +target.not-improved-3d-no-accompany=Not improved or not cured at 72H without reference / accompaniment at the CSCOM +target.not-improved-5d-no-accompany=Not improved or not cured the 5th without reference / accompaniment to the CSCOM + +contact.profile.death.date = Date of death +contact.profile.death.place = Place of death +contact.profile.death.title = Death +contact.profile.value.unknown = Unknown +contact.profile.death.places.village = At the village +contact.profile.death.places.home = At home +contact.profile.death.places.other = Other +contact.profile.death.places.undefined = Unknown + +target.childcare_by_chw.title = Number of new curative consultations for children under 5 by CHW +target.childcare_by_chw.fever.title = Number of RDTs performed in children under 5 years old with fever +target.childcare_by_chw.diarrhea.title = Number of children under 5 years old with diarrhea treated with zinc and SRO by CHW +target.childcare_by_chw.pneumonia.title = Number of children under 5 years old with pneumonia treated with Amoxicillin by CHW +target.childcare_by_chw.cough_cold_ari.title = Number of children under 5 years old with Cough/Cold treated by CHW +target.child_uncomplicated_malaria.title = Number of children under 5 years old with uncomplicated malaria confirmed by RDT and treated by CTA by the CHW +target.childcare_by_chw.malnourished.title = Children detected malnourished +target.childcare_by_chw.moderate_acute_malnutrition.title = Number of children under 5 years old with moderate acute malnutrition treated by CHW +target.childcare_by_chw.uncomplicated_severe_malnutrition.title = Number of children under 5 years old with severe acute malnutrition without complications treated with plumpy nut by CHWs +target.uncomplicated_malaria_5_plus.title = Number of children over 5 years old with uncomplicated malaria confirmed by RDT and treated by CTA by CHW +target.pregnant_with_uncomplicated_malaria_rdt_cta.title = Proportion of pregnant women with uncomplicated malaria confirmed by RDT and treated with CTA by CHWs. +target.newborns_followed_first_7_days = Newborns followed within the first 7 days of life +target.newborns_followed_declared = Newborns declared to the civil registry +target.new_fp_user = New FP users in CHW site +target.proportion_with_danger_case = Proportion of cases with a danger or alert sign referred by the CHW +target.proportion_children_fully_vaccinated = Proportion of children from 0 to 23 months fully vaccinated +target.new_patient_followed_by_community_agent = New patients in treatment followed +target.presumptive_tb_followed_by_community_agent = Presumptive TB cases referred +target.home_visit_chw = Total of Home visits +target.chw_talks = Talks made +target.tb_cases_lost = Cases TB of loss of sight +target.household_with_hand_washing = Proportion of households with a hand washing device (functional with water and soap) +target.household_with_improved_latrine = Proportion (Percentage) of households using an improved latrine + +target.cvss.household_as_member.title = Number of households joining the CVSS +target.cvss.individual_as_member.title = Number of individual CVSS memberships +target.village_motivation_mecanism.title = Number of CVSS villages with a CHW motivation mechanism +target.village_promotional_activities.title = Number of CVSS villages having supported other health promotion activities +target.cvss.nutritional_demonstration.title = Number of CVSS having supported nutritional demonstrations +target.cvss_total_expense_transportation.title = Amount of expenses on transport (pregnant women and children under five) +target.cvss_total_expense_nd.title = Amount of expenses on nutrition demonstrations +target.cvss_member_total_expense.title = Amount of expenses recorded by CVSS members +target.village_transportation_mecanism.title = Number of villages with transport mechanism +target.fonctional_transportation.title = Number of villages with a functioning transport mechanism +target.cvss.individual_leaving_cvss.title = Number of people who left CVSS fund +target.cvss.household_leaving_cvss.title = Number of households that left CVSS fund +target.cvss_under_5_transported_title = Number of children under 5 transported by the transport mechanism +target.cvss_pregnant_woman_transported_title = Number of pregnant women transported by the transport mechanism +target.cvss_postpartum_woman_transported_title = Number of Postpartum women transported by the transport mechanism +target.cvss_average_contribution.title = Average contribution of health solidarity funds for the period +target.cvss.cvss_total_contribution.title = Total Contribution +target.cvss.cvss_donation_diaspora.title = Amount mobilized from the diaspora +target.cvss.cvss_donation_private_sector.title = Amount mobilized from the private sector +target.chw_helped_in_nature_by_community.title = Number of CHWs having received in nature support +target.chw_financially_helpedby_community.title = Number of CHWs having received motivation from CVSS +target.rdts_carried_out_5_plus_with_fever.title = Number of RDTs performed in those over 5 years old with fever +target.number_of_traitments_followup_carried_out.title = Number of follow-up treatment carried out PEC of cases by CHW + +contact.savings.title = CVSS Group Contact Card +contact.savings.manager.name = CVSS Manager's name +contact.savings.cvss_balance = Available Balance +contact.savings.manager.phone = Manager Phone number +contact.savings.total_members = Total number of CVSS members +contact.savings.total_amount_contributed = Total amount contributed +contact.savings.total_loan_disbursed = Loan disbursed +contact.savings.total_loan_paid = Loan Imbursed +contact.savings.loan_balance = Loan balance +contact.savings.total_expenses = Total expenses +contact.savings.total_disbursement = Total Amount Disbursed +contact.savings.beneficiary.title = Beneficiary Contact Card +contact.savings.beneficiary.total_contribution = Total contribution Record +contact.savings.beneficiary.total_expense = Total Expense Record +contact.savings.total_loan = Total Loan +contact.savings.beneficiary.loan_balance = Total Loan Balance + +task.savings.loan_reminder = Loan Reminder +task.savings.confirmation_of_expenditure = Confirmation of expenditure +task.savings.loan_reimbursement = Loan Reimbursement +target.home_visit_gsan = Proportion of home visits made +target.gsan_affected_men = Men affected +target.gsan_affected_women = Women affected +target.gsan_affected_men_chat = Men reached during educational talks +target.gsan_affected_women_chat = Women reached during educational talks +target.gsan_chat_proportion = Proportion of talks carried out +target.gsan_affected_men_genre = Men sensitized on the gender approach +target.gsan_affected_women_genre = Women sensitized on the gender approach +target.chw_promo_pregnancy = Home visits made for promotional activities + follow-up of the pregnant woman +target.curative_home_visits = Home visits made for curative activities + +vaccine.status.no_dose = Zero Dose +vaccine.status.full_dose = Complet +vaccine.status.partial_dose = Incomplet +child.civil_status = Civil status +child.civil_status.declared = Declared child +child.civil_status.not_declared = Not declared child +child.schooling = Schooling +child.schooling.not_schooled = Not schooled +child.schooling.schooled = Schooled +child.schooling.waiting = Waiting +reports.sidebar.filter.title = Filter +reports.sidebar.filter.form_type = Form Type +reports.sidebar.filter.place = Place +reports.sidebar.filter.date = Date +reports.sidebar.filter.status = Status +search_bar.filter.label = Filter +fast_action_button.title = New + +cht-stock-monitoring-workflow.stock_count.balance_fill = Use this form to fill in balances on hand for all commodities as of today +cht-stock-monitoring-workflow.stock_count.commodities_note =

    Commodities Balance on hand

    +cht-stock-monitoring-workflow.stock_count.message.summary_header = Results/Summary page +cht-stock-monitoring-workflow.stock_count.contact_summary.title = Stock count +cht-stock-monitoring-workflow.stock_count.message.submit_note =

    Be sure you Submit to complete this action.

    +cht-stock-monitoring-workflow.stock_count.message.summary_note = Stock items you currently have. +cht-stock-monitoring-workflow.stock_count.tasks.stock-count = Stock count +cht-stock-monitoring-workflow.stock_count.forms.additional_doc_title = Stock uses +cht-stock-monitoring-workflow.stock_count.forms.item_used_question = Quantity of {{item}} +cht-stock-monitoring-workflow.stock_supply.page_1.header = Select item to supply +cht-stock-monitoring-workflow.stock_supply.forms.select_category = Select the category of what you want to return +cht-stock-monitoring-workflow.stock_supply.page_1.select_input = Select +cht-stock-monitoring-workflow.stock_supply.page_1.select_input_hint = Select all items to supply +cht-stock-monitoring-workflow.stock_supply.item.stock_on_hand = Stock on hand +cht-stock-monitoring-workflow.stock_supply.item.quantity_of = Quantity of +cht-stock-monitoring-workflow.stock_supply.summary_header = Results/Summary page +cht-stock-monitoring-workflow.stock_supply.submit_note =

    Be sure you Submit to complete this action.

    +cht-stock-monitoring-workflow.stock_supply.summary_note = Stock items you supply. +cht-stock-monitoring-workflow.stock_supply.tasks.reception-confirmation = Stock received +cht-stock-monitoring-workflow.stock_supply.confirmation.item_received_question = Did you received {{qty}} {{unit}} of {{item}} +cht-stock-monitoring-workflow.stock_supply.choices.yes_no.yes = Yes +cht-stock-monitoring-workflow.stock_supply.choices.yes_no.no = No +cht-stock-monitoring-workflow.stock_supply.forms.additional_doc_title = Stock uses +cht-stock-monitoring-workflow.stock_supply.forms.item_used_question = Quantity of {{item}} +cht-stock-monitoring-workflow.stock_supply.confirmation.qty_received_question = Enter the quantitity received +cht-stock-monitoring-workflow.stock_supply.tasks.stock-descreptancy = Commodity Discrepancy Resolution +cht-stock-monitoring-workflow.stock_supply.forms.select_items = Select the different item you want to supply +cht-stock-monitoring-workflow.stock_supply.confirmation.summary_note = Stock items you received. +cht-stock-monitoring-workflow.stock_supply.discrepancy.summary_header = Results/Summary page +cht-stock-monitoring-workflow.stock_supply.discrepancy.submit_note =

    Be sure you Submit to complete this action.

    +cht-stock-monitoring-workflow.stock_supply.discrepancy.summary_note = Discrepancy resolution +cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_issued = Quantity issued: {{qty}} +cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_confirmed = Quantity confirmed: {{qty}} +cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_final = What is the final quantity ? +cht-stock-monitoring-workflow.stock_supply.label.confirm_qty = Confirm quantities +cht-stock-monitoring-workflow.stock_return.forms.select_category_label = Categories selection +cht-stock-monitoring-workflow.stock_return.forms.select_category = Select the category of what you want to return +cht-stock-monitoring-workflow.stock_return.forms.select_items = Select the different item you want to return +cht-stock-monitoring-workflow.stock_return.forms.select_items.return_reason = Reason for return +cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.excess = Excess +cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.damaged = Damaged +cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.expired = Expired +cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.other = Other +cht-stock-monitoring-workflow.stock_return.message.items_selection = Items selection +cht-stock-monitoring-workflow.stock_return.forms.specify = Specify reason +cht-stock-monitoring-workflow.stock_return.forms.qty_before = Quantity before +cht-stock-monitoring-workflow.stock_return.forms.qty_after = Quantity after +cht-stock-monitoring-workflow.stock_return.forms.qty_returned = Quantity to return +cht-stock-monitoring-workflow.stock_return.summary_header = Results/Summary page +cht-stock-monitoring-workflow.stock_return.summary_note = Stock items you returned. +cht-stock-monitoring-workflow.stock_return.submit_note =

    Be sure you Submit to complete this action.

    +cht-stock-monitoring-workflow.stock_return.confirmation.item_received_question = Did you receive {{qty}} ? +cht-stock-monitoring-workflow.stock_return.confirmation.qty_received_question = Enter the quantity received +cht-stock-monitoring-workflow.stock_return.tasks.return-confirmation = Return confirmation +cht-stock-monitoring-workflow.stock_out.tasks.stock_out = Stock out +cht-stock-monitoring-workflow.stock_out.message.stock_at_hand = Stock at hand: {{qty}} +cht-stock-monitoring-workflow.stock_out.message.stock_required = Stock required: {{qty}} +cht-stock-monitoring-workflow.stock_out.message.summary_header = Summary +cht-stock-monitoring-workflow.stock_out.message.submit_note = {{name}} has low stock of the following items +cht-stock-monitoring-workflow.stock_out.message.summary_note = Stock out +cht-stock-monitoring-workflow.items.artemether_pl_18.label = ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/18 +cht-stock-monitoring-workflow.items.artemether_pl_24.label = ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 +cht-stock-monitoring-workflow.items.artesunate_50.label = ARTESUNATE SUPPOSITORY 50 MG +cht-stock-monitoring-workflow.items.artesunate_200.label = ARTESUNATE SUPPOSITORY 200 MG +cht-stock-monitoring-workflow.items.artemether_pl_6.label = ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 FREE FOR CHILDREN < 5 YEARS +cht-stock-monitoring-workflow.items.paracetamol_syrup.label = Paracetamol Syrup +cht-stock-monitoring-workflow.items.paracetamol_tablet_500.label = PARACETAMOL TABLET 500MG +cht-stock-monitoring-workflow.items.paracetamol_tablet_100.label = PARACETAMOL TABLET 100MG FREE FOR CHILDREN < 5 YEARS +cht-stock-monitoring-workflow.items.sro_zinc.label = ORS (Oral Rehydration Solution) + Zinc +cht-stock-monitoring-workflow.items.free_sro.label = Free ORS +cht-stock-monitoring-workflow.items.free_zinc.label = FREE ZINC +cht-stock-monitoring-workflow.items.amoxicillin_syrup_125.label = AMOXICILLIN SYRUP 125 MG +cht-stock-monitoring-workflow.items.amoxicillin_syrup_250.label = AMOXICILLIN SYRUP 250 MG +cht-stock-monitoring-workflow.items.balembo_syrup.label = BALEMBO CHILD SYRUP +cht-stock-monitoring-workflow.items.carbetux_syrup.label = CARBETUX SYRUP +cht-stock-monitoring-workflow.items.carbo.label = CARBOCYSTEINE 2% +cht-stock-monitoring-workflow.items.amoxicillin_tablet_250.label = FREE AMOXICILLIN 250 MG TABLETS FOR MALNOURISHED CHILDREN +cht-stock-monitoring-workflow.items.amoxicillin_syrup_125_free.label = FREE AMOXICILLIN SYRUP 125 MG FOR MALNOURISHE CHILDREN +cht-stock-monitoring-workflow.items.amoxicillin_syrup_250_free.label = FREE AMOXICILLIN SYRUP 250 MG FOR MALNOURISHE CHILDREN +cht-stock-monitoring-workflow.items.albendazole_tablet_200.label = FREE ALBENDAZOLE 200 MG TABLETS +cht-stock-monitoring-workflow.items.albendazole_tablet_400.label = FREE ALBENDAZOLE 400 MG TABLETS +cht-stock-monitoring-workflow.items.vitamin_100_ui.label = FREE 100,000 IU VITAMIN A CAPSULES +cht-stock-monitoring-workflow.items.vitamin_200_ui.label = FREE 200,000 IU VITAMIN A CAPSULES +cht-stock-monitoring-workflow.items.folic_acid.label = FREE IRON/FOLIC ACID SUPPLEMENTS FOR MALNOURISHED INDIVIDUALS +cht-stock-monitoring-workflow.items.plumply_nut.label = FREE PLUMPLY NUT SUPPLEMENT FOR MAS-C +cht-stock-monitoring-workflow.items.plumply_sup.label = FREE PLUMPY SUP SUPPLEMENT FOR MAM +cht-stock-monitoring-workflow.items.supercereal.label = FREE SUPERCEREAL (CSB) FOR MALNOURISHED INDIVIDUALS +cht-stock-monitoring-workflow.items.gant.label = BULK GLOVES +cht-stock-monitoring-workflow.items.tdr.label = FREE RAPID DIAGNOSTIC TEST (TDR) +cht-stock-monitoring-workflow.items.artemether_free_pl_12.label = FREE ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/12 +cht-stock-monitoring-workflow.items.artemether_free_pl_24.label = FREE ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 FOR PREGNANT WOMEN +cht-stock-monitoring-workflow.items.male_condom.label = Male Condom +cht-stock-monitoring-workflow.items.female_condom.label = Female Condom +cht-stock-monitoring-workflow.items.pilplan_coc.label = Combined Oral Contraceptive (COC) - brand name PILPLAN +cht-stock-monitoring-workflow.items.ovrette_coc.label = Progestin-only Pill (COP) - brand name OVRETTE +cht-stock-monitoring-workflow.items.depo.label = Depo-Provera (DMPA) Injectable (Intramuscular) +cht-stock-monitoring-workflow.items.sayana_press.label = Sayana Press (DMPA) Injectable (Subcutaneous) +cht-stock-monitoring-workflow.items.cycle_beads.label = Cycle Beads (as a natural family planning method) +cht-stock-monitoring-workflow.items.aquatabs.label = Aquatabs +cht-stock-monitoring-workflow.items.chlorhexidine.label = CHLORHEXIDINE SOLUTION 7,1% +contact.child.mother.indicator.title = Child and mother's indicators +contact.child.mother.indicator.pregnant_from_15_49 = Number of pregnant women from 15-49 years old +contact.child.mother.indicator.health_facility.delivery = Number of pregnant women who gave birth in a health facility +contact.child.mother.indicator.exclusive.breastfeeding = Number of children under 6 months exclusively breastfed +contact.child.mother.indicator.no.vaccine = Number of children who have not received any vaccine +contact.child.mother.indicator.fully.immunized = Number of children fully immunized +contact.child.mother.indicator.early.learning = Number of children aged 2-5 years who have benefited from early learning +contact.child.mother.indicator.improved.latrine = Number of households with improved latrine +contact.child.mother.indicator.potable.water = Number of households with access to drinking water +contact.child.mother.indicator.cash.transfert = Number of households that have benefited from cash transfers +contact.child.mother.indicator.sexual.mutilation = Number of children with sexual mutilations +contact.child.mother.indicator.malnutrition = Number of children aged 6-59 months having been screened for malnutrition in a household + + +cht-stock-monitoring-workflow.stock_order.message.select_category_label = Categories selection +cht-stock-monitoring-workflow.stock_order.message.select_category = Select the category of what you want to order +cht-stock-monitoring-workflow.stock_order.message.select_items = Select the different item you want to order +cht-stock-monitoring-workflow.stock_order.message.items_selection = Items selection +cht-stock-monitoring-workflow.stock_order.message.qty_before = Quantity before +cht-stock-monitoring-workflow.stock_order.message.qty_ordered = Quantity to order +cht-stock-monitoring-workflow.stock_order.message.qty_after = Quantity after +cht-stock-monitoring-workflow.stock_order.message.summary_header = Results/Summary page +cht-stock-monitoring-workflow.stock_order.message.submit_note =

    Be sure you Submit to complete this action.

    +cht-stock-monitoring-workflow.stock_order.message.summary_note = Stock items you ordered. +cht-stock-monitoring-workflow.stock_order.supply.message.summary_header = Results/Summary page +cht-stock-monitoring-workflow.stock_order.supply.message.submit_note =

    Be sure you Submit to complete this action.

    +cht-stock-monitoring-workflow.stock_order.supply.message.summary_note = Stock items you supplied. +cht-stock-monitoring-workflow.stock_order.tasks.stock_supply = Stock Supply +cht-stock-monitoring-workflow.stock_order.label.add_item_qty = Add item quantity +cht-stock-monitoring-workflow.stock_order.supply.message.qty_ordered = Quantity ordered: {{qty}} +cht-stock-monitoring-workflow.stock_order.supply.message.qty = Quantity to supply +cht-stock-monitoring-workflow.stock_return.message.summary_header = Results/Summary page +cht-stock-monitoring-workflow.stock_return.message.submit_note =

    Be sure you Submit to complete this action.

    +cht-stock-monitoring-workflow.stock_return.message.summary_note = Stock items you returned. +cht-stock-monitoring-workflow.stock_count.message.set_unit_constraint_message = Should be in the form x/y for x {{set_label}} and y {{unit_label}} +cht-stock-monitoring-workflow.stock_count.message.unit_quantity_hint = Add the quantity: {{quantity}} {{unit_label}} +cht-stock-monitoring-workflow.stock_supply.message.set_unit_constraint_message = Should be in the form x/y for x {{set_label}} and y {{unit_label}} +cht-stock-monitoring-workflow.stock_supply.message.unit_quantity_hint = Add the quantity: {{quantity}} {{unit_label}} +cht-stock-monitoring-workflow.stock_supply.confirmation.item_received_confirmation_question = Did you received {{qty_unit}} + + +cht-stock-monitoring-workflow.items.test_medecin.label = Medecin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +cht-stock-monitoring-workflow.items.paracetamol.label = + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/project-config/translations/messages-fr.properties b/test/project-config/translations/messages-fr.properties new file mode 100644 index 0000000..5da6590 --- /dev/null +++ b/test/project-config/translations/messages-fr.properties @@ -0,0 +1,910 @@ +contact.type.c10_central = Niveau Central +contact.type.c10_central.plural = Niveaux Centraux +contact.type.c10_central.new = Ajouter niveau central +contact.type.c10_central.edit = Modifier niveau central + +contact.type.c20_region = Région +contact.type.c20_region.plural = Régions +contact.type.c20_region.new = Ajouter région +contact.type.c20_region.edit = Modifier région + +contact.type.c30_district = District +contact.type.c30_district.plural = Districts +contact.type.c30_district.new = Ajouter district +contact.type.c30_district.edit = Modifier district + +contact.type.c40_health_area = Aire de santé +contact.type.c40_health_area.plural = Aires de santé +contact.type.c40_health_area.new = Ajouter Aire de santé +contact.type.c40_health_area.edit = Modifier Aire de santé + +contact.type.c50_supervision_area = Zone de Supervision +contact.type.c50_supervision_area.edit = Modifier zone de supervision +contact.type.c50_supervision_area.new = Nouvelle zone du supervision +contact.type.c50_supervision_area.plural = Zones de Supervision + +contact.type.c60_chw_site = Site ASC +contact.type.c60_chw_site.edit = Modifier site ASC +contact.type.c60_chw_site.new = Nouveau site ASC +contact.type.c60_chw_site.plural = Sites ASC + +contact.type.c70_village = Village +contact.type.c70_village.edit = Modifier Village +contact.type.c70_village.new = Nouveau Village +contact.type.c70_village.plural = Villages + +contact.type.c80_concession = Concession +contact.type.c80_concession.edit = Modifier Concession +contact.type.c80_concession.new = Nouvelle Concession +contact.type.c80_concession.plural = Concession + +contact.type.c90_household = Ménage +contact.type.c90_household.plural = Ménages +contact.type.c90_household.new = Ajouter ménage +contact.type.c90_household.edit = Modifier ménage + +contact.type.person = Personne +contact.type.person.edit = Modifier personne +contact.type.person.new = Nouvelle personne +contact.type.person.plural = Personnes + +contact.type.c12_central = Personne +contact.type.c12_central.edit = Modifier personne +contact.type.c12_central.new = Nouvelle personne +contact.type.c12_central.plural = Personnes + +contact.type.c22_region = Personne +contact.type.c22_region.edit = Modifier personne +contact.type.c22_region.new = Nouvelle personne +contact.type.c22_region.plural = Personnes + +contact.type.c32_district = Personne +contact.type.c32_district.edit = Modifier personne +contact.type.c32_district.new = Nouvelle personne +contact.type.c32_district.plural = Personnes + +contact.type.c42_health_area = Personne +contact.type.c42_health_area.edit = Modifier personne +contact.type.c42_health_area.new = Nouvelle personne +contact.type.c42_health_area.plural = Personnes + +contact.type.c52_supervisor = Personne +contact.type.c52_supervisor.edit = Modifier personne +contact.type.c52_supervisor.new = Nouvelle personne +contact.type.c52_supervisor.plural = Personnes + +contact.type.c62_chw = Personne +contact.type.c62_chw.edit = Modifier personne +contact.type.c62_chw.new = Nouvelle personne +contact.type.c62_chw.plural = Personnes + +contact.type.c72_village = Personne +contact.type.c72_village.edit = Modifier personne +contact.type.c72_village.new = Nouvelle personne +contact.type.c72_village.plural = Personnes + +contact.type.c82_concession = Personne +contact.type.c82_concession.edit = Modifier personne +contact.type.c82_concession.new = Nouvelle personne +contact.type.c82_concession.plural = Personnes + +contact.type.c92_household = Personne +contact.type.c92_household.edit = Modifier personne +contact.type.c92_household.new = Nouvelle personne +contact.type.c92_household.plural = Membre du ménage + +contact.type.c74_community_actor = Nouveau Acteur Communautaire +contact.type.c74_community_actor.edit = Modifier Acteur Communautaire +contact.type.c74_community_actor.new = Nouveau Acteur Communautaire +contact.type.c74_community_actor.plural = Nouveaux Acteurs Communautaires + +contact.sex.male = Homme +contact.sex.female = Femme +contact.sex. = Non Definis +person.field.telephone = Téléphone + +contact.pregnancy.lmp = Date des dernières règles +contact.pregnancy.estimated_delivery = Date estimative de l''accouchement +contact.pregnancy.type = Type de grossesse +contact.pregnancy.high_risk = Haut risque +contact.pregnancy.not_high_risk = Aucun risque +contact-prgnancy-active = Grossesse Active + +task.child_longitudinal_followup_1_24 = Suivi longitudinal de l'enfant 1 à 24 mois +task.child_longitudinal_followup_2_5 = Suivi longitudinal de l'enfant 2 à 5 ans +task.child_longitudinal_followup_6_12 = Suivi longitudinal de l'enfant 6 à 12 ans +task.child_longitudinal_followup_13_19 = Suivi longitudinal de l'enfant 13 à 19 ans +task.newborn_registration = Création Profil enfant +task.mother_referral_followup = Suivi Référence Mère +task.cpon_realisation = Référence naissance à domicile +task.postnatal_followup = Suivi Après Naissance +task.treatment_followup_under_5 = Suivi traitement moins de 5 ans +task.referral_followup_under_5 = Suivi référence moins de 5 ans +task.treatment_referral_followup_under_5 = Suivi traitement après Référence moins de 5 ans +task.mas_followup_under_5 = Suivi malnutrition (MAS Sans Complication) moins de 5 ans +task.mam_followup_under_5 = Suivi MAM moins de 5 ans +task.vaccine_followup_under_5 = Suivi vaccinal moins de 5 ans +task.treatment_followup_multiple = Suivi Traitement Multiple +task.treatment_followup_under_5.diarrhea = Suivi Traitement Diarrhée +task.treatment_followup_under_5.pneumonia = Suivi Traitement Pneumonie +task.treatment_followup_under_5.malaria = Suivi Traitement Paludisme +contact.delivery.number_pregnancy_confirmed = Grossesses Confirmées +contact.delivery.number_of_children = Nombre de nouveaux nés +contact.delivery.delivery_date = Date d'accouchement +contact.delivery.general = Informations accouchements + +task.pregnancy_followup = Suivi Grossesse +task.priority.high = Elévé + +enketo.geopicker.latitude = Latitude +enketo.geopicker.longitude = Longitude +enketo.geopicker.altitude = Altitude +enketo.geopicker.accuracy = Précision +enketo.geopicker.searchPlaceholder = Rechercher un lieu +enketo.selectpicker.noneselected = Non Sélectionner + +usertype.central_admin = Central Admin +usertype.national_admin = National Admin +usertype.district_admin = District Admin +usertype.dtc = DTC +usertype.supervisor = Supervisor +usertype.chw = ASC +usertype.oca = Autre acteur communautaire +usertype.oca_supervisor = ADC(OCA Coach) +usertype.cvs = CVS +usertype.wash_comity = Comité WASH +usertype.savings = Manager CVSS +usertype.manager_stock = Responsable Approvisionnement + +task.pregnancy_confirmation = Confirmation de la grossesse +contact.birth.certificate = Acte de naissance +contact.birth.certificate_number = Numero de l''acte de naissance +contact.birth.certificate_date = Date de délivrance +contact.fp.general = Planning Familial +contact.fp.recent_fp_method = Méthode de PF Récente +contact.fp.state = Status +contact.fp.stop = Arrêt +contact.fp.in_progress = En cours + +task.overdue = Aujourd’hui +task.overdue.days = {DAYS, plural, =0{Aujourd''hui} =1{Retard d''1 jour} other{Retard de \# jours}} +task.days.left = {DAYS, plural, =1{1 jour restant} other{# jours restant}} + +task.pregnancy_referral_followup = Suivi Référence Femme enceinte +task.anc_followup = Réalisation Visite CPN +task.fp_reference_followup = Référence FP {{contact.name}} +task.fp_renewal_followup = Suivi PF +task.treatment_followup_over_5 = Suivi traitement +task.referral_followup_over_5 = Suivi référence +5 ans +task.tb_treatment_followup = Suivi Traitement Hebdomadaire TB + +admin.display = Affichage +admin.display.datetime = Date et heure +admin.targets.description = Si désactivé, l'onglet cible sera masqué pour tous les utilisateurs. Un objectif de -1 montrera une cible sans objectif. +app.name = Application +branding.favicon.field = Petite icône +branding.logo.field = Logo +branding.title.field = Titre +branding.title.field.help = Affichera les installations PWA. Devrait être au moins 144 pixels carrés. +configuration.sms = SMS +configuration.sms.forms = Formes SMS +configuration.sms.forms.title = Vous devez choisir à la fois un fichier XML et un fichier META avant de cliquer sur le bouton Télécharger. Vous ne pouvez télécharger qu'un seul fichier de formulaire d'application à la fois et tous les formulaires existants seront écrasés. +configuration.sms.settings = Paramètres de base +configuration.sms.test.description = Utilisez cette page pour envoyer un message de test à l'application de production sans passer par la passerelle SMS. Assurez-vous d'utiliser un numéro de téléphone enregistré dans le profil d'un ASC pour imiter un rapport venant de lui sur un patient particulier. +configuration.sms.test.from.number = À partir du numéro de téléphone +configuration.sms.test.message.description = Limite de 144 caractères +configuration.sms.test.number.validation.description = Veuillez saisir un numéro de téléphone valide sans tirets ni ponctuation. +configuration.sms.test.title = Message d'essai +display.language.accordion.title = Les langages activés seront disponibles pour les utilisateurs en option lorsqu'ils sélectionnent leur langue principale. Nous vous recommandons de choisir 1 à 3 langues prises en charge et de désactiver le reste. Parmi les langues prises en charge activées, il devrait y avoir 0 traduction manquante. +display.privacy.policies.current = Politique actuelle +display.privacy.policies.select = Sélectionnez le fichier HTML +display.privacy.policies.title = Les politiques de confidentialité +display.privacy.policies.update = Mettre à jour la politique +display.privacy.policies.upload = Soumettre pour télécharger des modifications. +display.translation.description = Veuillez noter que toutes les modifications ou ajouts que vous apportez ici aux traductions ne sont pas actuellement enregistrés ou suivis ailleurs. +edit.name = Modifier le nom +export.dhis.dataset.description = Sélectionnez parmi les intégrations DHIS2 disponibles. +export.dhis.dataset.label = Ensemble de données DHIS2 +export.dhis.description = Téléchargez un fichier contenant un DHIS2 DataValueNeset pour intégrer avec DHIS2. +export.dhis.period.description = Sélectionnez parmi les intervalles de temps mensuels disponibles. +export.dhis.period.label = Filtre par période +export.dhis.place.all = Tous les lieux +export.dhis.place.description = Filtrez des données exportées pour inclure des données associées aux contacts sous cet endroit dans la hiérarchie. +export.dhis.place.label = Filtre par lieu +export.feedback.description = Téléchargez un journal des erreurs détectées et des commentaires des utilisateurs soumis via la fonction «Bug de rapport» au format CSV. Le tableau ci-dessous montre les rapports les plus récemment soumis. +export.messages.description = Téléchargez tous les messages qui ont jamais été envoyés ou reçus au format CSV. +export.people.description = Téléchargez tous les contacts enregistrés dans le système au format JSON. +export.reports.description = Le lancement d'Android Apps n'est pas disponible sur cet appareil. +icon.library = Bibliothèque d'icônes CHT +images.header.tabs.icons = Icônes des onglets d'en-tête +images.header.tabs.icons.default = Icône par défaut +images.header.tabs.icons.description = Configurer les icônes d'onglet d'en-tête. Vous pouvez choisir entre les icônes d'application au format .svg et les icônes Fontawesome. +images.header.tabs.icons.fa.icon = Icône Fontawesome +images.header.tabs.icons.fontawesome.link = En savoir plus sur Fontawesome. +images.header.tabs.icons.resource.icon = Icône de ressources +images.header.tabs.icons.tab = Languette +images.icons.description = Les images téléchargées ici sont utilisées dans l'application à divers endroits comme spécifié dans le code d'application. Par exemple, l'image qui apparaît pour un widget particulier dans la page cible est spécifiée dans le code cible. Vous pouvez télécharger des images un à la fois, et si vous téléchargez une image avec le même nom qu'une image existante, elle sera écrasée avec le nouveau fichier. Il est recommandé que les images soient au format .svg ou .png et aient une taille inférieure à 500 Ko. Des ressources sont disponibles dans le +images.partners.description = Tous les logos partenaires qui sont ajoutés ici seront affichés sur la page "À propos" de l'application. +partner.logo.field = Logo partenaire +partner.logo.upload = Télécharger le logo du partenaire +partner.name.field = Nom de partenaire +partner.tab.partners = Les partenaires +permission.description.can_access_gateway_api = Autorisé à accéder aux API pour agir comme une passerelle SMS. +permission.description.can_aggregate_targets = Page des agrégats cibles autorisés +permission.description.can_bulk_delete_reports = Autorisé à utiliser des fonctions de suppression en vrac pour supprimer plusieurs rapports. +permission.description.can_configure = Autorisé à configurer toutes les configurations d'application. +permission.description.can_create_people = Autorisé à créer de nouvelles personnes. +permission.description.can_create_places = Autorisé à créer de nouveaux lieux. +permission.description.can_create_records = Autorisé à accéder aux API pour créer des rapports. +permission.description.can_create_users = Autorisé à créer des utilisateurs. +permission.description.can_delete_contacts = Autorisé à supprimer des personnes et des lieux. +permission.description.can_delete_messages = Autorisé à supprimer les messages. +permission.description.can_delete_reports = Autorisé à supprimer les rapports. +permission.description.can_delete_users = Autorisé à supprimer les utilisateurs. +permission.description.can_edit = Autorisé à créer et à modifier des documents dans la base de données. +permission.description.can_edit_profile = Autorisé à modifier leurs propres paramètres utilisateur. +permission.description.can_edit_verification = Autorisé à mettre à jour les statuts de vérification des rapports. +permission.description.can_export_all = Autorisé à exporter toutes les données même s'ils n'auraient généralement pas la permission de les visualiser. +permission.description.can_export_contacts = Autorisé à exporter tous les contacts. +permission.description.can_export_feedback = Autorisé à exporter tous les commentaires de l'utilisateur. +permission.description.can_export_messages = Autorisé à exporter tous les rapports et messages. +permission.description.can_log_out_on_android = Autorisé à déconnecter de l'application Android. +permission.description.can_update_places = Autorisé à mettre à jour les documents de lieu existants. +permission.description.can_update_reports = Autorisé à mettre à jour les documents de rapport existants. +permission.description.can_update_users = Autorisé à mettre à jour les utilisateurs existants. +permission.description.can_verify_reports = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_analytics = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_analytics_tab = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_call_action = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_contacts = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_contacts_tab = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_last_visited_date = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_message_action = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_messages = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_messages_tab = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_outgoing_messages = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_reports = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_reports_tab = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_tasks = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_tasks_tab = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_unallocated_data_records = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_view_users = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +permission.description.can_write_wealth_quintiles = Autorisé à mettre à niveau la version CHT Core Framework via l'interface API ou Admin. +submit.icon = Icône de téléchargement +unique.id = Identifiant unique +upload = Télécharger +upload.sms.forms = Télécharger les formulaires SMS + +admin.app.name = Configuration de l’application +Cancel = Annuler +Import\ from\ file = Importer à partir d’un fichier +Add\ User = Ajouter un utilisateur +To\ add\ multiple\ users,\ please\ upload\ the\ appropriate\ spreadsheet. = Pour ajouter plusieurs utilisateurs, veuillez charger le fichier approprié. +Only\ .csv\ file\ are\ accepted. = Seuls les fichiers .csv sont acceptés. +Upload\ .csv = Charger le .csv +Are\ you\ sure\ you\ want\ to\ upload = Voulez-vous vraiment charger le fichier? +Yes,\ upload = Oui, charger +Processing\ users = Traitement des utilisateurs en cours +This\ process\ can\ take\ a\ long\ time,\ if\ you''re\ uploading\ a\ lot\ of\ users,\ please\ be\ patient. = Le traitement peut prendre un peu de temps, si vous importez un grand nombre d’utilisateurs, s’il vous plait, soyez patient. +Currently\ unavailable = Actuellement indisponible +Someone\ else\ in\ the\ system\ is\ currently\ in\ the\ process\ of\ adding\ multiple\ users. = Quelqu’un d’autre dans le système est actuellement en train d’importer des utilisateurs. +users\ added = utilisateurs ajoutés +previously\ imported = déjà importés +contained\ errors = contenant des erreurs +Click = Cliquez +here = ici +to\ download\ your\ status\ file. = pour télécharger le rapport de traitement +To\ resubmit\ the\ users\ containing\ errors\ \: = Pour corriger les erreurs et soumettre à nouveau : +1.\ Open\ the\ downloaded\ status\ file = 1. Ouvrir le rapport de traitement téléchargé +2.\ Cross-reference\ the\ errors\ against\ your\ formatted\ spreadsheet = 2. Comparer et croiser les erreurs avec le fichier formatté +3.\ Correct\ rows\ with\ errors\ and\ export\ to\ .csv = 3. Corriger les lignes contenant les erreurs et exporter le fichier au format csv +4.\ Reupload\ updated\ spreadsheet = 4. Charger de nouveau le fichier +Back\ to\ user\ list = Retour à la liste des utilisateurs +upgrade.description = Pour mettre à niveau votre application vers une version, une bêta ou une branche spécifique, il est recommandé d'effectuer une première étape en cliquant sur "Staging". Cela permet d'effectuer un travail de fond pour préparer l'installation sans interrompre les utilisateurs. Une fois la mise en scène terminée, cliquez sur Installer pour procéder à la mise à niveau. Cette action ne peut pas être annulée, alors assurez-vous que vos données ont été sauvegardées et que vos utilisateurs sont informés de l'interruption de service. +instance.upgrade.date = Date de mise à jour +users.manage.add_single_user = Ajouter un utilisateur +users.manage.back = Retour à la liste des utilisateurs +users.manage.import_users = Importer à partir d'un fichier +login.unsupported_browser = Pour une meilleure experience avec l'application, veuillez contacter l'administrator ou votre superviseur. +login.unsupported_browser.outdated_cht_android = Demander leur de mettre à niveau cht-android. +login.unsupported_browser.outdated_webview_apk = Demander leur de mettre à niveau l'apk webview. +login.unsupported_browser.outdated_browser = Demander leur de mettre à niveau leur navigateur. + +task.referral_followup=Suivi référence +task.treatment.malaria=Suivi traitement malaria +task.treatment.diarrhea=Suivi traitement diarhée +task.treatment.ari=Suivi traitement pneumonie +task.treatment.multiple=Suivi traitement multiple +task.treatment.malnutrition=Suivi traitement malnutrition +task.pnc_followup=Suivi réalisation CPON +task.anc_supervision_followup=Suivi réalisation CPN +task.newborn_followup=Suivi Nouveau-né +task.prenatal_followup=Suivi CPN +task.supervision_visit_realization=Réalisation de la visite de Supervision +task.supervision_with_chw_confirmation=Visite du site d''ASC +task.supervision_without_chw_confirmation=Visite dans la communauté sans l''ASC +task.individual_feedback_confirmation=Rencontre Individuelle +task.oca_supervision_visit_realization=Réalisation de la visite de coaching de la PC +task.oca_supervision_visit_scheduling=Planification de la visite de coaching (PC) +task.meeting_with_authorities_realization=Réalisation de la réunion avec les autorités +task.visit_with_pc_realization=Réalisation Visite Avec la PC +task.visit_realisation_without_pc=Réalisation Visite des Ménages sans PC +task.oca_individual_feedback_confirmation = Réalisation Rencontre individuelle +task.sebac_alert_sort = Tri de l'alerte +task.sebac_alert_sort_not_done = Tri de l'alerte non réalisé +task.sebac_alert_sort_2 = Tri de l'alerte 2 +task.sebac_alert_verification=Vérification d'Alerte +task.sebac_verification_notification=Notification Vérification d'Alerte +task.sebac_verification_result=Résultat Vérification d'Alerte +task.sebac_test_result_reminder=Rappel des Résultat des Tests +task.sebac_result_notification_supervisor=Notification Résultat Tests Superviseur +task.sebac_result_notification_chw=Notification Résultat Tests ASC + +target.home_visits=Visite à domicile +target.2-home-visits-per-fam=% de ménages ayant reçu ≥2 VAD +target.chv-receive-supervision-visit=% des ASC ayant reçu de visite de supervision 360 degré +target.patient_assessment-24h=% <5 ans ayant reçu de soins dans les 24H du début de la maladie +target.patient_assessment_over_5-24h=% >5 ans ayant reçu de soins dans les 24H du début de la maladie +target.preg-first-trimester=% des grossesses diagnostiquées dans le premier trimestre +target.protocol-error-percentage=% des évaluations sans erreur de protocole +target.protocol-error-count=# Total des erreurs de protocole + +target.danger-signs-without-accompany=Signe (s) de danger sans référence ou accompagnement au CSCOM +target.symptoms-of-malaria-without-tdr=Signe de paludisme, TDR paludisme pas réalisé +target.fever-without-tdr=Présence de fièvre, TDR paludisme pas réalisé +target.tdr-without-malaria=CTA donnée par l''ASC, TDR paludisme négatif +target.incorrect-dosage-of-act-based-combination=Dose de CTA donnée par l''ASC incorrecte +target.diarrhea-without-zinc=Diarrhée sans administration de zinc +target.incorrect-dosage-of-zinc=Dose de Zinc donnée par l''ASC incorrecte +target.pneumonia-without-amoxicillin=Pneumonie sans amoxicilline +target.amoxicillin-without-pneumonia=Amoxicilline sans pneumonie +target.incorrect-dosage-of-amoxicillin=Dose d''amoxicilline donnée par l''ASC incorrecte +target.muac-yellow-incomplete-drugs=Bande de Shakir au jaune sans traitement au complet le premier jour +target.incorrect-dosage-of-vitamin-a=Dose de vitamine A donnée par l''ASC incorrecte +target.incorrect-dosage-of-albendazole=Dose d''Albendazol donnée par l''ASC incorrecte +target.incorrect-dosage-of-paracetamol=Dose de paracetamol donnée par l''ASC incorrecte +target.no-24h-follow-up=Pas de suivi de 24H +target.no-48h-follow-up=Pas de suivi de 48H +target.no-72h-follow-up=Pas de suivi de 72H +target.no-120h-follow-up=Pas de suivi de 5eme jour (Pour IRA ou Diarrhée) +target.aggrevated-no-accompany=Etat aggravé à 24H ou 48H ou 72H ou 5eme jour sans référence/accompagnement au CSCOM +target.unchanged-no-accompany=Pas de changement à 48H ou 72H ou 5eme jour sans référence/accompagnement au CSCOM +target.not-improved-3d-no-accompany=Pas amélioré ou pas guéri à 72H sans référence/accompagnement au CSCOM +target.not-improved-5d-no-accompany=Pas amélioré ou pas guéri le 5eme sans référence/accompagnement au CSCOM +sms.token.login.help = + +contact.profile.death.date = Date de décès +contact.profile.death.place = Lieu du décès +contact.profile.death.title = Décès +contact.profile.value.unknown = Inconnu +contact.profile.death.places.village = Au village +contact.profile.death.places.home = A la maison +contact.profile.death.places.other = Autre +contact.profile.death.places.undefined = Inconnu + +sync.now = Rafraîchir +Report\ Bug = Reporter une erreur + +target.childcare_by_chw.title = Nombre de nouvelles consultations curatives d’enfants de moins de 5 ans par les ASC +target.childcare_by_chw.fever.title = Nombre de TDR réalisé chez les enfants de moins de 5 ans présentant une fièvre +target.childcare_by_chw.diarrhea.title = Nombre d’enfants de moins de 5 ans présentant une diarrhée traitée avec le zinc et SRO par l'ASC +target.childcare_by_chw.pneumonia.title = Nombre d’enfants de moins de 5 ans présentant une pneumonie traitée avec Amoxicilline par l'ASC +target.childcare_by_chw.cough_cold_ari.title = Nombre d’enfants de moins de 5 ans présentant Toux/Rhume traitée par l'ASC +target.child_uncomplicated_malaria.title = Nombre d’enfants de moins de 5 ans présentant un paludisme simple confirmé par TDR et traité avec CTA par l'ASC +target.childcare_by_chw.malnourished.title = Nombre d’enfants dépistés malnutris +target.childcare_by_chw.moderate_acute_malnutrition.title = Nombre d’enfants de moins de 5 ans présentant une malnutrition aiguë modérée prise en charge par les ASC +target.childcare_by_chw.uncomplicated_severe_malnutrition.title = Nombre d’enfants de moins de 5 ans présentant une malnutrition aiguë sévère sans complication prise en charge avec plumpy nut par l'ASC +target.uncomplicated_malaria_5_plus.title = Nombre d’enfants de plus de 5 ans présentant un paludisme simple confirmé par TDR et traité avec CTA par l'ASC +target.pregnant_with_uncomplicated_malaria_rdt_cta.title = Proportion de femme enceinte présentant un paludisme simple confirmé par TDR et traité avec CTA par les ASC +target.newborns_followed_first_7_days = Nouveau-nés suivis dans le délai les 7 premiers jours de vie +target.newborns_followed_declared = Nouveaux nés déclarés à l’état civil +target.new_fp_user = Nouvelle utilisatrice en PF réalisé par les ASC +target.proportion_with_danger_case = Proportion de cas présentant un signe de danger ou d'alerte référés par l'ASC +target.proportion_children_fully_vaccinated = Proportion d'enfants de 0 à 23 mois entièrement vaccinés +target.new_patient_followed_by_community_agent = Nombre de nouveaux malades TB en traitement suivis +target.presumptive_tb_followed_by_community_agent = Cas présumés de TB référés +target.home_visit_chw = VAD Total +target.chw_talks = Causeries réalisées +target.tb_cases_lost = Nombre de cas de TB perdu de vue +target.household_with_hand_washing = Proportion de ménage disposant d’un dispositif de lavage des mains (fonctionnel avec eau et savon) +target.household_with_improved_latrine = Proportion (Pourcentage) de ménage utilisant une latrine améliorée +target.home_visit_gsan = Proportion de visites à domicile réalisées +target.gsan_affected_men = Nombre d’hommes touchés lors d’une VAD +target.gsan_affected_women = Nombre de femmes touchées lors d’une VAD +target.gsan_affected_men_chat = Nombre d’hommes touchés lors causeries éducatives +target.gsan_affected_women_chat = Nombre de femmes touchées lors des causeries éducatives +target.gsan_chat_proportion = Proportion de causeries réalisées +target.gsan_affected_men_genre = Nombre d’hommes sensibilisés sur l’approche genre + +target.cvss.household_as_member.title = Nombre d'adhésion ménages à la CVSS +target.cvss.individual_as_member.title = Nombre d'adhésion individuelle à la CVSS +target.village_motivation_mecanism.title = Nombre de caisses ayant un mecanisme de motivation des ASC +target.village_promotional_activities.title = Nombre de caisses ayant appuyé d’autres activité de promotion de la santé +target.village_transportation_mecanism.title = Nombre de villages ayant un mecanisme de transport +target.fonctional_transportation.title = Nombre de villages avec un mécanisme transport fonctionnel +target.cvss.individual_leaving_cvss.title = Nombre de personne ayant quitté la caisse de solidarité santé +target.cvss.household_leaving_cvss.title = Nombre de ménages ayant quitté la caisse de solidarité santé +target.cvss_under_5_transported_title = Nombre d’enfants de moins de 5ans transportés par le mécanisme de transport +target.cvss_pregnant_woman_transported_title = Nombre de femmes enceintes transportées par le mécanisme de transport +target.cvss_postpartum_woman_transported_title = Nombre de femmes en suite de couche transportées par le mécanisme de transport +target.cvss.nutritional_demonstration.title = Nombre de caisses ayant appuyées les démonstrations nutritionnelles +target.cvss_average_contribution.title = Contribution moyenne des caisses de solidarité santé pour la période +target.cvss_total_expense_transportation.title = Montant dépensé pour le transport( femmes enceintes et les enfants de moins de cinq ans) +target.cvss_total_expense_nd.title = Montant dépensé pour les demonstrations nutritionnelles +target.cvss.cvss_donation_diaspora.title = Montant mobilisé par la diaspora +target.cvss.cvss_donation_private_sector.title = Montant mobilisé par le secteur privé +target.cvss.cvss_total_contribution.title = Contribution Totale +target.cvss_member_total_expense.title = Montant de dépenses enregistrées par les membre CVSS +target.chw_helped_in_nature_by_community.title = Nombre d'ASC ayant reçu un appui en nature +target.chw_financially_helpedby_community.title = Nombre d'ASC ayant recu une motivation financiere de la CVSS +target.rdts_carried_out_5_plus_with_fever.title = Nombre de TDR réalisé chez les plus de 5 ans présentant une fièvre +target.number_of_traitments_followup_carried_out.title = Nombre de suivi traitement réalisé (PEC des cas) par l'ASC + +contact.savings.title = Fiche de contact du groupe CVSS +contact.savings.manager.name = Nom manager CVSS +contact.savings.cvss_balance = Solde total +contact.savings.manager.phone = Numéro de téléphone du gestionnaire +contact.savings.total_members = Nombre total de membres CVSS +contact.savings.total_amount_contributed = Montant total cotisé +contact.savings.total_loan_disbursed = Prêt décaissé +contact.savings.loan_balance = Solde du prêt +contact.savings.total_expenses = Dépenses totales +contact.savings.total_disbursement = Montant total décaissé +contact.savings.total_loan_paid = Prêt Remboursé +contact.savings.total_loan = Prêt Total +contact.savings.beneficiary.title = Fiche Contact Bénéficiaire +contact.savings.beneficiary.total_contribution = Cotisation totale Record +contact.savings.beneficiary.total_expense = Total des depense enregistré +contact.savings.beneficiary.total_loan = Prêt Total +contact.savings.beneficiary.loan_balance = Solde total du prêt + +task.savings.loan_reminder = Rappel de prêt +task.savings.confirmation_of_expenditure = Confirmation des dépenses +task.savings.loan_reimbursement = Remboursement de prêt +target.gsan_affected_women_genre = Femmes sensibilisées sur l’approche genre +target.chw_promo_pregnancy = Visites à domicile réalisées pour les activités promotionnelles + suivi de la femme enceinte +target.curative_home_visits = Visite à domicile réalisés pour les activités curatives + +vaccine.status.no_dose = Zero Dose +vaccine.status.full_dose = Complet +vaccine.status.partial_dose = Incomplet +vaccine.title = Vaccination +child.civil_status = Etat civil +child.civil_status.declared = Enfant déclaré +child.civil_status.not_declared = Enfant non déclaré +child.schooling = Scolarité +child.schooling.not_schooled = Non scolarisé +child.schooling.schooled = Scolarisé +child.schooling.waiting = En attente + +reports.sidebar.filter.title = Filtre +reports.sidebar.filter.form_type = Type de Formulaire +reports.sidebar.filter.place = Lieu +reports.sidebar.filter.date = Date +reports.sidebar.filter.status = Status +search_bar.filter.label = Filtre +fast_action_button.title = Nouveau + +contact.child.mother.indicator.title = Indicateurs de la mère et de l'enfant +contact.child.mother.indicator.pregnant_from_15_49 = Nombre des femmes enceintes de 15-49 ans +contact.child.mother.indicator.health_facility.delivery = Nombre des femmes enceintes ayant accouché dans une formation sanitaire +contact.child.mother.indicator.exclusive.breastfeeding = Nombre d\'enfant de 0-5 mois sous allaitement maternel exclusif +contact.child.mother.indicator.no.vaccine = Nombre d'enfants n'ayant reçu aucun vaccin dans un ménage +contact.child.mother.indicator.fully.immunized = Nombre d'enfants complètement vaccinés +contact.child.mother.indicator.early.learning = Nombre d'enfant de 2-5 ans qui participe à un type de programme d'apprentissage précoce +contact.child.mother.indicator.improved.latrine = Nombre de ménage disposant de latrine améliorée +contact.child.mother.indicator.potable.water = Nombre de ménage qui a accès à l'eau potable (pompe, réseau public) +contact.child.mother.indicator.cash.transfert = Nombre de ménage qui recoit un cash transfert +contact.child.mother.indicator.sexual.mutilation = Nombre d'enfant fille ayant subi une mutilation sexuelle +contact.child.mother.indicator.malnutrition = Nombre d\'enfant de 6-59 mois ayant ete depiste de la malnutrition dans un menage + +cht-stock-monitoring-workflow.stock_count.balance_fill = Utiliser ce formulaire pour enregistrer votre stock actuel +cht-stock-monitoring-workflow.stock_count.commodities_note =

    Stock actuel

    +cht-stock-monitoring-workflow.stock_count.message.summary_header = Résultats +cht-stock-monitoring-workflow.stock_count.contact_summary.title = Fiche de Stock +cht-stock-monitoring-workflow.stock_count.message.submit_note =

    Assurez-vous de soumettre pour complèter cette action.

    +cht-stock-monitoring-workflow.stock_count.message.summary_note = Votre stock actuel +cht-stock-monitoring-workflow.stock_count.tasks.stock-count = Inventaire +cht-stock-monitoring-workflow.stock_count.forms.additional_doc_title = Stock livré +cht-stock-monitoring-workflow.stock_count.forms.item_used_question = Quantité de {{item}} +cht-stock-monitoring-workflow.stock_supply.page_1.header = Sélectionner les éléments à livrer +cht-stock-monitoring-workflow.stock_supply.forms.select_category = Sélectionner les catégories des éléments à retourner +cht-stock-monitoring-workflow.stock_supply.page_1.select_input = Sélectionner +cht-stock-monitoring-workflow.stock_supply.page_1.select_input_hint = Sélectionner tous les éléments à livrer +cht-stock-monitoring-workflow.stock_supply.item.stock_on_hand = Stock actuel +cht-stock-monitoring-workflow.stock_supply.item.quantity_of = Quantité de +cht-stock-monitoring-workflow.stock_supply.summary_header = Page Résultats +cht-stock-monitoring-workflow.stock_supply.submit_note =

    Assurez vous de soumettre pour enregistrer cette action.

    +cht-stock-monitoring-workflow.stock_supply.summary_note = Stock livré. +cht-stock-monitoring-workflow.stock_supply.tasks.reception-confirmation = Stock reçu +cht-stock-monitoring-workflow.stock_supply.confirmation.item_received_question = Avez-vous reçu {{qty}} {{unit}} de {{item}} +cht-stock-monitoring-workflow.stock_supply.choices.yes_no.yes = Oui +cht-stock-monitoring-workflow.stock_supply.choices.yes_no.no = Non +cht-stock-monitoring-workflow.stock_supply.forms.additional_doc_title = Stock utilisé +cht-stock-monitoring-workflow.stock_supply.forms.item_used_question = Quantité de {{item}} +cht-stock-monitoring-workflow.stock_supply.confirmation.qty_received_question = Entrer la quantité reçue +cht-stock-monitoring-workflow.stock_supply.tasks.stock-descreptancy = Résolution Conflit +cht-stock-monitoring-workflow.stock_supply.forms.select_items = Sélectionner les différents éléments que vous voulez livrer +cht-stock-monitoring-workflow.stock_supply.confirmation.summary_note = Stock que vous avez reçu. +cht-stock-monitoring-workflow.stock_supply.discrepancy.summary_header = Page Résultats +cht-stock-monitoring-workflow.stock_supply.discrepancy.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    +cht-stock-monitoring-workflow.stock_supply.discrepancy.summary_note = Résolution de conflits +cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_issued = Quantité envoyée : {{qty}} +cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_confirmed = Quantité confirmée : {{qty}} +cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_final = Quelle est la quantité finale ? +cht-stock-monitoring-workflow.stock_supply.label.confirm_qty = Confirmer les quantités +cht-stock-monitoring-workflow.stock_return.forms.select_category_label = Sélection Catégorie +cht-stock-monitoring-workflow.stock_return.forms.select_category = Sélectionner la catégorie de l'élément à retourner +cht-stock-monitoring-workflow.stock_return.forms.select_items = Sélectionner les différents éléments à retourner +cht-stock-monitoring-workflow.stock_return.forms.select_items.return_reason = Raison du retour +cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.excess = Excès +cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.damaged = Détruit +cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.expired = Expiré +cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.other = Autre +cht-stock-monitoring-workflow.stock_return.message.items_selection = Sélection d'éléments +cht-stock-monitoring-workflow.stock_return.forms.specify = Specifier Raison +cht-stock-monitoring-workflow.stock_return.forms.qty_before = Quantité avant +cht-stock-monitoring-workflow.stock_return.forms.qty_after = Quantité aprés +cht-stock-monitoring-workflow.stock_return.forms.qty_returned = Quantité à retourner +cht-stock-monitoring-workflow.stock_return.summary_header = Page Résultats/Résumé +cht-stock-monitoring-workflow.stock_return.summary_note = éléments retournés. +cht-stock-monitoring-workflow.stock_return.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    +cht-stock-monitoring-workflow.stock_return.confirmation.item_received_question = Avez-vous reçu {{qty}} ? +cht-stock-monitoring-workflow.stock_return.confirmation.qty_received_question = Entrer la quantité reçue +cht-stock-monitoring-workflow.stock_return.tasks.return-confirmation = Confirmation Retour +cht-stock-monitoring-workflow.stock_out.tasks.stock_out = Stock épuisé +cht-stock-monitoring-workflow.stock_out.message.stock_at_hand = Stock en main: {{qty}} +cht-stock-monitoring-workflow.stock_out.message.stock_required = Stock nécessaire: {{qty}} +cht-stock-monitoring-workflow.stock_out.message.summary_header = Résumé +cht-stock-monitoring-workflow.stock_out.message.submit_note = {{name}} a épuisé son stock des éléments suivants: +cht-stock-monitoring-workflow.stock_out.message.summary_note = Stock épuisé +cht-stock-monitoring-workflow.items.artemether_pl_18.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/18 +cht-stock-monitoring-workflow.items.artemether_pl_24.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 +cht-stock-monitoring-workflow.items.artesunate_50.label = ARTESUNATE SUPPOSITOIRE 50 MG +cht-stock-monitoring-workflow.items.artesunate_200.label = ARTESUNATE SUPPOSITOIRE 200 MG +cht-stock-monitoring-workflow.items.artemether_pl_6.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/6 GRATUITS ENFANT < 5ANS +cht-stock-monitoring-workflow.items.paracetamol_syrup.label = Paracétamol Sirop +cht-stock-monitoring-workflow.items.paracetamol_tablet_500.label = PARACÉTAMOL COMPRIMÉ 500MG +cht-stock-monitoring-workflow.items.paracetamol_tablet_100.label = PARACETAMOL COMP 100 MG GRATUIT ENFANT < 5 ANS +cht-stock-monitoring-workflow.items.sro_zinc.label = SRO+ZINC (ORASEL….) +cht-stock-monitoring-workflow.items.free_sro.label = SRO GRATUIT +cht-stock-monitoring-workflow.items.free_zinc.label = ZINC GRATUIT ENFANT < 5 ANS +cht-stock-monitoring-workflow.items.amoxicillin_syrup_125.label = AMOXICILLINE SIROP 125 MG +cht-stock-monitoring-workflow.items.amoxicillin_syrup_250.label = AMOXICILLIN SYRUP 250 MG +cht-stock-monitoring-workflow.items.balembo_syrup.label = BALEMBO SIROP ENFANT +cht-stock-monitoring-workflow.items.carbetux_syrup.label = CARBETUX SIROP +cht-stock-monitoring-workflow.items.carbo.label = CARBOCYSTEÏNE 2% +cht-stock-monitoring-workflow.items.amoxicillin_tablet_250.label = AMOXICILLINE 250 COMP GRATUIT/MALNUTRIS +cht-stock-monitoring-workflow.items.amoxicillin_syrup_125_free.label = AMOXICILLINE SIROP 125 MG GRATUIT/MALNUTRIS +cht-stock-monitoring-workflow.items.amoxicillin_syrup_250_free.label = AMOXICILLINE SIROP 250 MG GRATUIT/MALNUTRIS +cht-stock-monitoring-workflow.items.albendazole_tablet_200.label = ABENDAZOLE 200 MG COMP GRATUIT +cht-stock-monitoring-workflow.items.albendazole_tablet_400.label = ABENDAZOLE COMP 400 MG GRATUIT +cht-stock-monitoring-workflow.items.vitamin_100_ui.label = CAPSULE DE VITAMINE A 100 000 UI +cht-stock-monitoring-workflow.items.vitamin_200_ui.label = CAPSULE DE VITAMINE A 200 000 UI +cht-stock-monitoring-workflow.items.folic_acid.label = FER/ACIDE FOLIQUE GRATUIT POUR LES MALNUTRIS +cht-stock-monitoring-workflow.items.plumply_nut.label = PLUMPLY NUT GRATUIT POUR LES MAS-C +cht-stock-monitoring-workflow.items.plumply_sup.label = PLUMPY SUP GRATUIT POUR LES MAM +cht-stock-monitoring-workflow.items.supercereal.label = SUPERCEREAL (CSB) GRATUIT POUR LES MALNUTRIS +cht-stock-monitoring-workflow.items.gant.label = GANTS EN VRAC +cht-stock-monitoring-workflow.items.tdr.label = TDR GRATUIT +cht-stock-monitoring-workflow.items.artemether_free_pl_12.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/12 GRATUIT +cht-stock-monitoring-workflow.items.artemether_free_pl_24.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 GRATUIT POUR FEMME ENCEINTE +cht-stock-monitoring-workflow.items.male_condom.label = CONDOM MASCULIN +cht-stock-monitoring-workflow.items.female_condom.label = CONDOM FEMININ +cht-stock-monitoring-workflow.items.pilplan_coc.label = PILPLAN (COC) +cht-stock-monitoring-workflow.items.ovrette_coc.label = OVRETTE (COP) +cht-stock-monitoring-workflow.items.depo.label = DEPO-PROVERA (DMPA IM) +cht-stock-monitoring-workflow.items.sayana_press.label = SAYANA PRESS (DMPA S/C) +cht-stock-monitoring-workflow.items.cycle_beads.label = COLLIER DU CYCLE +cht-stock-monitoring-workflow.items.aquatabs.label = Aquatabs +cht-stock-monitoring-workflow.items.chlorhexidine.label = CHLORHEXIDINE SOLUTION 7,1% +cht-stock-monitoring-workflow.stock_order.message.select_category_label = Sélection des catégories +cht-stock-monitoring-workflow.stock_order.message.select_category = Sélectionner les catégories des éléments à commander +cht-stock-monitoring-workflow.stock_order.message.select_items = Sélectionner les différents éléments à commander +cht-stock-monitoring-workflow.stock_order.message.items_selection = Sélection des éléments +cht-stock-monitoring-workflow.stock_order.message.qty_before = Quantité avant +cht-stock-monitoring-workflow.stock_order.message.qty_ordered = Quantité à commander +cht-stock-monitoring-workflow.stock_order.message.qty_after = Quantité aprés +cht-stock-monitoring-workflow.stock_order.message.summary_header = Page Résultats/Résumé +cht-stock-monitoring-workflow.stock_order.message.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    +cht-stock-monitoring-workflow.stock_order.message.summary_note = éléments commandés. +cht-stock-monitoring-workflow.stock_order.supply.message.summary_header = Page Résultats/Résumé +cht-stock-monitoring-workflow.stock_order.supply.message.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    +cht-stock-monitoring-workflow.stock_order.supply.message.summary_note = éléments livrés. +cht-stock-monitoring-workflow.stock_order.tasks.stock_supply = Stock à livrer +cht-stock-monitoring-workflow.stock_order.label.add_item_qty = Ajouter la quantité +cht-stock-monitoring-workflow.stock_order.supply.message.qty_ordered = Quantité commandée : {{qty}} +cht-stock-monitoring-workflow.stock_order.supply.message.qty = Quantité à livrer +cht-stock-monitoring-workflow.stock_return.message.summary_header = Page Résultats/Résumé +cht-stock-monitoring-workflow.stock_return.message.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    +cht-stock-monitoring-workflow.stock_return.message.summary_note = éléments retournés. +cht-stock-monitoring-workflow.stock_count.message.set_unit_constraint_message = Doit être sous la forme x/y pour x {{set_label}} et y {{unit_label}} +cht-stock-monitoring-workflow.stock_count.message.unit_quantity_hint = Ajouter quantité : {{quantity}} {{unit_label}} +cht-stock-monitoring-workflow.stock_supply.message.set_unit_constraint_message = Doit étre sous la forme x/y pour x {{set_label}} et y {{unit_label}} +cht-stock-monitoring-workflow.stock_supply.message.unit_quantity_hint = Ajouter quantité : {{quantity}} {{unit_label}} +cht-stock-monitoring-workflow.stock_supply.confirmation.item_received_confirmation_question = Avez-vous reçu {{qty_unit}} + +cht-stock-monitoring-workflow.items.test_medecin.label = Medicament + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +cht-stock-monitoring-workflow.items.paracetamol.label = Paracetamole + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/stock-count.spec.js b/test/stock-count.spec.js new file mode 100644 index 0000000..f0bdc80 --- /dev/null +++ b/test/stock-count.spec.js @@ -0,0 +1,46 @@ +const { fork } = require('child_process'); +const path = require('path'); +const fs = require('fs-extra'); +const { once } = require('events'); + +const { stockCountScenario } = require('./mocks/mocks'); +const { + setDirToprojectConfig, + revertBackToProjectHome +} = require('./test-utils'); + + +describe('Stock count', () => { + + beforeEach(() => { + setDirToprojectConfig(); + }); + + afterEach(() => { + revertBackToProjectHome(process.cwd()); + }); + + it('Add stock count summaries test', async() => { + const processDir = process.cwd(); + const childProcess = fork('../../main.js', stockCountScenario); + await once(childProcess, 'close'); + + const formPath = path.join(processDir, 'forms', 'app', `stock_count.xlsx`); + const formPropertiesPath = path.join(processDir, 'forms', 'app', `stock_count.properties.json`); + const stockMonitoringConfig = path.join(processDir, 'stock-monitoring.config.json'); + + // Check that stock monitoring is initialized and stock count form is generated + expect(fs.existsSync(stockMonitoringConfig)).toBe(true); + expect(fs.existsSync(formPropertiesPath)).toBe(true); + expect(fs.existsSync(formPath)).toBe(true); + + // Removing the stock monitoring init file and stock count file + expect(fs.unlinkSync(stockMonitoringConfig)).toBe(undefined); + expect(fs.unlinkSync(formPath)).toBe(undefined); + expect(fs.unlinkSync(formPropertiesPath)).toBe(undefined); + + }); + +}); + + diff --git a/test/test-utils.js b/test/test-utils.js new file mode 100644 index 0000000..a7cf32e --- /dev/null +++ b/test/test-utils.js @@ -0,0 +1,24 @@ +const process = require('process'); +const path = require('path'); + +const currentWorkingDirectory = () =>{ + return process.cwd(); +}; + +function setDirToprojectConfig(){ + const processDir = process.cwd(); + process.chdir(path.join(processDir,'test/project-config/')); +} + +const revertBackToProjectHome = (projectHome) =>{ + process.chdir(projectHome); +}; + +module.exports = { + setDirToprojectConfig, + currentWorkingDirectory, + revertBackToProjectHome +}; + + + From 5ffe615e24d599e877daa4b41e22080a947c5889 Mon Sep 17 00:00:00 2001 From: Foromo Ernest Teoro Date: Sat, 14 Sep 2024 13:25:31 +0100 Subject: [PATCH 4/7] fix: feedback correction and finalise unit test --- .vscode/launch.json | 2 +- test/mocks/mocks.js | 82 +- .../app_settings/base_settings.json | 346 +- .../app/care_of_pregnant_women_and_others.xml | 2820 ----- .../forms/app/patient_assessment_under_5.xlsx | Bin 81709 -> 81704 bytes .../forms/app/patient_assessment_under_5.xml | 9105 ----------------- .../forms/contact/PLACE_TYPE-create.xlsx | Bin 23953 -> 0 bytes .../forms/contact/PLACE_TYPE-edit.xlsx | Bin 18550 -> 0 bytes .../contact/c50_supervision_area-create.xml | 250 - .../c50_supervision_area-edit.properties.json | 12 - .../contact/c50_supervision_area-edit.xlsx | Bin 19526 -> 0 bytes .../contact/c50_supervision_area-edit.xml | 141 - .../forms/contact/c52_supervisor-create.xml | 175 - .../forms/contact/c52_supervisor-edit.xlsx | Bin 17514 -> 0 bytes .../forms/contact/c52_supervisor-edit.xml | 186 - .../forms/contact/c60_chw_site-create.xml | 325 - .../contact/c60_chw_site-edit.properties.json | 12 - .../forms/contact/c60_chw_site-edit.xlsx | Bin 15576 -> 0 bytes .../forms/contact/c60_chw_site-edit.xml | 176 - .../forms/contact/c62_chw-create.xml | 222 - .../forms/contact/c62_chw-edit.xlsx | Bin 18084 -> 0 bytes .../forms/contact/c62_chw-edit.xml | 242 - .../c70_village-create.properties.json | 12 - .../forms/contact/c70_village-create.xml | 1040 -- .../contact/c70_village-edit.properties.json | 12 - .../forms/contact/c70_village-edit.xml | 418 - .../c72_village-create.properties.json | 15 - .../forms/contact/c72_village-create.xlsx | Bin 16367 -> 0 bytes .../forms/contact/c72_village-create.xml | 149 - .../forms/contact/c72_village-edit.xlsx | Bin 20174 -> 0 bytes .../forms/contact/c72_village-edit.xml | 183 - .../translations/messages-en.properties | 475 +- .../translations/messages-fr.properties | 501 +- test/stock-count.spec.js | 55 +- 34 files changed, 149 insertions(+), 16807 deletions(-) delete mode 100644 test/project-config/forms/app/care_of_pregnant_women_and_others.xml delete mode 100644 test/project-config/forms/app/patient_assessment_under_5.xml delete mode 100644 test/project-config/forms/contact/PLACE_TYPE-create.xlsx delete mode 100644 test/project-config/forms/contact/PLACE_TYPE-edit.xlsx delete mode 100644 test/project-config/forms/contact/c50_supervision_area-create.xml delete mode 100644 test/project-config/forms/contact/c50_supervision_area-edit.properties.json delete mode 100644 test/project-config/forms/contact/c50_supervision_area-edit.xlsx delete mode 100644 test/project-config/forms/contact/c50_supervision_area-edit.xml delete mode 100644 test/project-config/forms/contact/c52_supervisor-create.xml delete mode 100644 test/project-config/forms/contact/c52_supervisor-edit.xlsx delete mode 100644 test/project-config/forms/contact/c52_supervisor-edit.xml delete mode 100644 test/project-config/forms/contact/c60_chw_site-create.xml delete mode 100644 test/project-config/forms/contact/c60_chw_site-edit.properties.json delete mode 100644 test/project-config/forms/contact/c60_chw_site-edit.xlsx delete mode 100644 test/project-config/forms/contact/c60_chw_site-edit.xml delete mode 100644 test/project-config/forms/contact/c62_chw-create.xml delete mode 100644 test/project-config/forms/contact/c62_chw-edit.xlsx delete mode 100644 test/project-config/forms/contact/c62_chw-edit.xml delete mode 100644 test/project-config/forms/contact/c70_village-create.properties.json delete mode 100644 test/project-config/forms/contact/c70_village-create.xml delete mode 100644 test/project-config/forms/contact/c70_village-edit.properties.json delete mode 100644 test/project-config/forms/contact/c70_village-edit.xml delete mode 100644 test/project-config/forms/contact/c72_village-create.properties.json delete mode 100644 test/project-config/forms/contact/c72_village-create.xlsx delete mode 100644 test/project-config/forms/contact/c72_village-create.xml delete mode 100644 test/project-config/forms/contact/c72_village-edit.xlsx delete mode 100644 test/project-config/forms/contact/c72_village-edit.xml diff --git a/.vscode/launch.json b/.vscode/launch.json index fc9fe17..2ccd0c9 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -7,7 +7,7 @@ "name": "Run Jest Tests", "program": "${workspaceFolder}/node_modules/jest/bin/jest.js", "args": [ - "${workspaceFolder}/test/example.spec.js", + "${workspaceFolder}/test/stock-count.spec.js", "--runInBand", "--verbose" ], diff --git a/test/mocks/mocks.js b/test/mocks/mocks.js index ececc6f..e1c41e6 100644 --- a/test/mocks/mocks.js +++ b/test/mocks/mocks.js @@ -1,35 +1,51 @@ -const stockCountScenario = [ - 'init', - '2_levels', - 'c62_chw', - 'chw', - 'c52_supervisor', - 'supervisor', - 'Y', - 'stock_count', - '[{contact_type: \'c62_chw\', role: \'chw\', place_type: \'c60_chw_site\' },{contact_type: \'c52_supervisor\',role: \'supervisor\',place_type: \'c50_supervision_area\'}]', - 'action', - 'end_of_week', - ['Stock count', 'Stock count'], - 'patient_assessment_under_5', - 'Y', - 'now()', - 'malaria', - ['Category', 'Categorie'], - ['Category', 'Categorie'], - 'paracetamol', - ['Paracetamol', 'Paracetamole'], - 'Y', - ['Box of 8', 'Boite de 8'], - 8, - ['Tablet', 'Comprimes'], - 20, - 15, - 15, - 'by_user', - 0 -]; - module.exports = { - stockCountScenario + stockCountScenario: { + initScenario: [ + 'init', + '2_levels', + 'c62_chw', + 'chw', + 'c52_supervisor', + 'supervisor', + 'Y', + 'stock_count', + '[{contact_type: \'c62_chw\', role: \'chw\', place_type: \'c60_chw_site\' },{contact_type: \'c52_supervisor\',role: \'supervisor\',place_type: \'c50_supervision_area\'}]', + 'action', + 'end_of_week', + ['Stock count', 'Stock count'], + 'patient_assessment_under_5', + 'Y', + 'now()', + 'malaria', + ['Category', 'Categorie'], + ['Category', 'Categorie'], + 'paracetamol', + ['Paracetamol', 'Paracetamole'], + 'Y', + ['Box of 8', 'Boite de 8'], + 8, + ['Tablet', 'Comprimes'], + 20, + 15, + 15, + 'by_user', + 0 + ], + productCategoryScenario: [ + 'malaria' + ], + productsScenario: [ + 'paracetamol___set', + 'paracetamol___unit', + 'paracetamol', + 'paracetamol___count' + ] + + } }; + + + + + + diff --git a/test/project-config/app_settings/base_settings.json b/test/project-config/app_settings/base_settings.json index 4300067..c4ad669 100644 --- a/test/project-config/app_settings/base_settings.json +++ b/test/project-config/app_settings/base_settings.json @@ -27,15 +27,6 @@ "forms_only_mode": false, "task_days_overdue": true, "roles": { - "central_admin": { - "name": "usertype.central_admin" - }, - "regional_admin": { - "name": "usertype.national_admin" - }, - "district_admin": { - "name": "usertype.district_admin" - }, "dtc": { "name": "usertype.dtc", "offline": true @@ -47,300 +38,13 @@ "chw": { "name": "usertype.chw", "offline": true - }, - "oca": { - "name": "usertype.oca", - "offline": true - }, - "oca_supervisor": { - "name": "usertype.oca_supervisor", - "offline": true - }, - "savings": { - "name": "usertype.savings", - "offline": true - }, - "wash_comity": { - "name": "usertype.wash_comity", - "offline": true - }, - "cvs": { - "name": "usertype.cvs", - "offline": true - }, - "manager_stock": { - "name": "usertype.manager_stock", - "offline": true } }, - "replication_depth": [ - { - "role": "dtc", - "depth": 1 - }, - { - "role": "supervisor", - "depth": 2, - "report_depth": 0 - }, - { - "role": "oca_supervisor", - "depth": 3, - "report_depth": 0 - }, - { - "role": "savings", - "depth": 3, - "report_depth": 0 - }, - { - "role": "oca", - "depth": 3, - "report_depth": 0 - }, - { - "role": "wash_comity", - "depth": 3, - "report_depth": 0 - }, - { - "role": "cvs", - "depth": 3, - "report_depth": 0 - }, - { - "role": "chw", - "depth": 4, - "report_depth": 0 - }, - { - "role": "manager_stock", - "depth": 2, - "report_depth": 1 - } - ], "permissions": { "can_access_gateway_api": [], "can_aggregate_targets": [], - "can_bulk_delete_reports": [ - "central_admin", - "regional_admin" - ], - "can_configure": [ - "central_admin" - ], - "can_create_people": [ - "central_admin", - "regional_admin", - "chw", - "oca_supervisor" - ], - "can_create_places": [ - "central_admin", - "regional_admin", - "chw", - "oca_supervisor" - ], - "can_create_records": [ - "central_admin", - "regional_admin", - "chw", - "oca", - "savings", - "wash_comity", - "cvs", - "oca_supervisor", - "supervisor" - ], - "can_create_users": [ - "central_admin", - "regional_admin" - ], - "can_delete_contacts": [ - "central_admin" - ], - "can_delete_messages": [ - "central_admin" - ], - "can_delete_reports": [ - "central_admin" - ], - "can_delete_users": [], - "can_edit": [ - "central_admin", - "regional_admin", - "district_admin", - "dtc", - "supervisor", - "chw", - "oca_supervisor", - "savings", - "oca", - "wash_comity", - "cvs", - "manager_stock" - ], - "can_edit_profile": [ - "central_admin", - "regional_admin" - ], - "can_edit_verification": [ - "central_admin", - "regional_admin", - "district_admin", - "dtc", - "supervisor", - "oca_supervisor", - "manager_stock" - ], - "can_export_all": [], - "can_export_contacts": [ - "central_admin", - "regional_admin" - ], - "can_export_dhis": [], - "can_export_feedback": [], - "can_export_messages": [], - "can_log_out_on_android": [], - "can_update_places": [ - "central_admin", - "regional_admin", - "district_admin", - "chw", - "oca" - ], - "can_update_reports": [ - "central_admin", - "regional_admin", - "district_admin" - ], - "can_update_users": [ - "central_admin" - ], - "can_verify_reports": [ - "central_admin", - "regional_admin", - "district_admin", - "dtc", - "supervisor", - "chw", - "oca", - "oca_supervisor", - "manager_stock" - ], - "can_view_analytics": [ - "chw", - "oca", - "savings", - "wash_comity", - "cvs" - ], - "can_view_analytics_tab": [ - "chw", - "oca", - "savings", - "wash_comity", - "cvs" - ], - "can_view_call_action": [], - "can_view_contacts": [ - "central_admin", - "regional_admin", - "district_admin", - "dtc", - "supervisor", - "chw", - "oca", - "wash_comity", - "cvs", - "oca_supervisor", - "savings", - "manager_stock" - ], - "can_view_contacts_tab": [ - "central_admin", - "regional_admin", - "district_admin", - "dtc", - "supervisor", - "chw", - "oca", - "oca_supervisor", - "savings", - "cvs", - "wash_comity", - "manager_stock" - ], - "can_view_last_visited_date": [], - "can_view_message_action": [], "can_view_messages": [], - "can_view_messages_tab": [], - "can_view_outgoing_messages": [], - "can_view_reports": [ - "central_admin", - "regional_admin", - "district_admin", - "dtc" - ], - "can_view_reports_tab": [ - "central_admin", - "regional_admin", - "district_admin", - "dtc" - ], - "can_view_tasks": [ - "dtc", - "supervisor", - "chw", - "oca", - "oca_supervisor", - "savings", - "wash_comity", - "cvs", - "manager_stock" - ], - "can_view_tasks_tab": [ - "dtc", - "supervisor", - "chw", - "oca", - "oca_supervisor", - "savings", - "wash_comity", - "cvs", - "manager_stock" - ], - "can_view_uhc_stats": [], - "can_view_unallocated_data_records": [ - "central_admin", - "regional_admin", - "district_admin" - ], - "can_view_users": [ - "central_admin", - "regional_admin", - "district_admin" - ], - "can_write_wealth_quintiles": [], - "can_create_chw": [ - "central_admin", - "regional_admin" - ], - "can_manage_cvss": [ - "savings", - "oca" - ], - "can_view_old_action_bar": [ - "central_admin", - "regional_admin", - "district_admin", - "dtc", - "supervisor", - "chw", - "oca", - "savings", - "manager_stock" - ] + "can_view_messages_tab": [] }, "place_hierarchy_types": [ "c50_supervision_area", @@ -371,19 +75,6 @@ "create_form": "form:contact:c60_chw_site:create", "edit_form": "form:contact:c60_chw_site:edit" }, - { - "id": "c70_village", - "name_key": "contact.type.c70_village", - "group_key": "contact.type.c70_village.plural", - "create_key": "contact.type.c70_village.new", - "edit_key": "contact.type.c70_village.edit", - "parents": [ - "c60_chw_site" - ], - "icon": "icon-community", - "create_form": "form:contact:c70_village:create", - "edit_form": "form:contact:c70_village:edit" - }, { "id": "c52_supervisor", "name_key": "contact.type.c52_supervisor", @@ -411,39 +102,6 @@ "create_form": "form:contact:c62_chw:create", "edit_form": "form:contact:c62_chw:edit", "person": true - }, - { - "id": "c72_village", - "name_key": "contact.type.c72_village", - "group_key": "contact.type.c72_village.plural", - "create_key": "contact.type.c72_village.new", - "edit_key": "contact.type.c72_village.edit", - "parents": [ - "c70_village" - ], - "icon": "medic-person", - "create_form": "form:contact:c72_village:create", - "edit_form": "form:contact:c72_village:edit", - "person": true } - ], - "create_user_for_contacts": { - "replace_forms": [ - "replace_user" - ] - }, - "transitions": { - "death_reporting": true, - "default_responses": true, - "update_clinics": true, - "conditional_alerts": true, - "generate_shortcode_on_contacts": true, - "create_user_for_contacts": true - }, - "death_reporting": { - "mark_deceased_forms": [ - "death_report" - ], - "date_field": "fields.death_report.date_of_death" - } + ] } diff --git a/test/project-config/forms/app/care_of_pregnant_women_and_others.xml b/test/project-config/forms/app/care_of_pregnant_women_and_others.xml deleted file mode 100644 index 4983219..0000000 --- a/test/project-config/forms/app/care_of_pregnant_women_and_others.xml +++ /dev/null @@ -1,2820 +0,0 @@ - - - - PEC de la femme enceinte et autres - - - - - <b>Do the RDT to have the result RDT to date</b> - - - 1. Please disinfect your hands before performing the RDT - - - 2. Please put on your gloves - jr://images/put_gloves.JPG - - - 3. Please mark the patient information on the cassette (first and last name, date and time of RDT completion) before proceeding with RDT - jr://images/notice_name.JPG - - - 4. Please clean the patient's finger where the blood will be collected - jr://images/clean_finger.JPG - - - mRDT - - - 5. Please prick the patient's finger in the right place to collect blood - jr://images/prick_finger.JPG - - - 6.Please extract the blood using the pipette and spread it on the cassette in the round well for the sample. Note that a single pipette of blood is sufficient - jr://images/drops.JPG - - - 7. Please add 4 drops of solvent to the square diluent well - jr://images/Ajouter_les_gouttes.JPG - - - 8. Please activate the 15 min timer below. While you wait to read the result, please store the needles in the safety box after use. Give the rules of hygiene that the patient can follow to avoid malaria. - - - mRDT - - - Example of a positive RDT - jr://images/positive.png - - - Example of negative RDT - jr://images/negative.png - - - Negative - - - Positive - - - This field is required - - - What is the result of the RDT? - - - mRDT - - - Other - - - Paracetamol Tablet 500 mg - - - This field is required - - - What is the treatment received ? - - - This field is required - - - Specify (Other) - - - No - - - Yes - - - This field is required - - - Did have a history of a hot body, or hot to the touch? - - - No - - - Yes - - - This field is required - - - Has had a positive RDT in the past 15 days? - - - No - - - Yes - - - This field is required - - - Did receive treatment? - - - <h2 style="background-color:#EAD1DC"> has a fever</h2> - - - <h2 style="background-color:#67ce1a"> doesn't have a fever</h2> - - - The number of days is between 1 and 10 days - - - This field is required - - - For how many days did he have a history of fever? - - - No - - - Yes - - - This field is required - - - Can you do the RDT now? - - - Other - - - Out Of Stock - - - This field is required - - - Why can't you do the TDR? - - - This field is required - - - Specify (Other) - - - Complaints/History - - - Properly disinfect the thermometer before storing it. - - - Thermometer - jr://images/thermometer.png - - - Use the thermometer to take the temperature. - - - The temperature must be between 36 and 45 inclusive - - - This field is required - - - What is the temperature? - - - The weight should be between 5 kg and 200 kg - - - What is the weight (in kg)? - - - Constants - - - No - - - Yes - - - This field is required - - - Abdominal pain - - - No - - - Yes - - - This field is required - - - Spontaneous bleeding - - - No - - - Yes - - - This field is required - - - Difficulty breathing - - - No - - - Yes - - - This field is required - - - Convulsions - - - No - - - Yes - - - This field is required - - - Dark urine (cola colored) - - - No - - - Yes - - - This field is required - - - Difficulty drinking and/or eating - - - No - - - Yes - - - This field is required - - - Severe headache/blurred vision - - - No - - - Yes - - - This field is required - - - jaundice (yellow eyes) - - - No - - - Yes - - - This field is required - - - Pronounced conjunctival pallor - - - No - - - Yes - - - This field is required - - - Inability to stand or sit - - - No - - - Yes - - - This field is required - - - Unconscious - - - No - - - Yes - - - This field is required - - - Vomiting of any food intake - - - <b>Does have any of the following danger signs? </b> - - - Danger sign search - - - What is the patient's name? - - - Date of Birth - - - Name - - - Patient ID - - - Sex - - - Source - - - Source ID - - - Contact ID - - - Langue - - - Nom - - - Telephone - - - Utilisateur - - - next follow-up visit treatment - - - <h2 style="background-color:#ee2a02">FEVER TO REFER</h2> - - - <h2 style="background-color:#f6b426">SIMPLE MALARIA</h2> - - - <h2 style="background-color:#ee2a02"> is a pregnant woman in her 1st trimester. </br> -Refer to CSCom for ANC and malaria management</h2> - - - This field is required - - - For how many days has been taking ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? - - - No - - - Yes - - - Verify if the patient has been following the treatment. - - - This field is required - - - taken CTA (Artemether + Lumefantrine (AL): 20mg/120mg)? - - - Other - - - Out Of Stock - - - This field is required - - - Why didn't take ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? - - - Fever - - - Refer to the CSCOM for a TB test. - - - Days old - - - Months - - - Week - - - Patient Sex - - - Patient Sex - - - Patient Sex - - - box of 12 pills - - - Quantity of FREE ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/12 - - - box of 24 pills - - - Quantity of FREE ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 FOR PREGNANT WOMEN - - - box of 18 pills - - - Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/18 - - - box of 24 pills - - - Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 - - - Materials <i class="fa fa-cubes"></i> - - - Fever <i class="fa fa-cubes"></i> - - - Quantity of BULK GLOVES - - - Malaria <i class="fa fa-cubes"></i> - - - Quantity of PARACETAMOL TABLET 500MG - - - Quantity of FREE RAPID DIAGNOSTIC TEST (TDR) - - - Stock uses - - - Date must be before today - - - This field is required - - - Enter the date the assessment was made - - - The patient went to the ASC - - - During the home visit - - - Other - - - This field is required - - - How was found? - - - This field is required - - - Specify (Other) - - - This field is required - - - Specify (Other) - - - No - - - Yes - - - This field is required - - - Was the assessment done today? - - - Other - - - Phone lost - - - Phone Discharged/Broken - - - This field is required - - - Why was the evaluation not done today? - - - Carrying out the assessment - - - Refer - - - Treat at home - - - This field is required - - - What is your course of action? - - - No - - - Yes - - - This field is required - - - Have you treated with Artemether 20mg – Lumefantrine 120mg/tablets? - - - Uncomplicated Malaria - - - Give Artemether + Lumefantrine (AL): 20mg/120mg. </br> -2 tablets Morning-Evening for 3 days - - - Give Artemether + Lumefantrine (AL): 20mg/120mg.</br> -3 tablets Morning-Evening for 3 days - - - Give Artemether + Lumefantrine (AL): 20mg/120mg. </br> -4 tablets Morning-Evening for 3 days - - - Other - - - Out Of Stock - - - This field is required - - - Why didn't you treat the patient with Artemether 20 mg - Lumefantrine 120mg/ tablets? - - - This field is required - - - Specify (Other) - - - Pregnant woman and the pregnancy is less than 4 months - - - TDR not produced due to out of stock. - - - Danger Signs <i class="fa fa-warning"></i> - - - Diagnostic<i class="fa fa-stethoscope"></i> - - - Fever - - - Give paracetamol: ½ tablet of 500 mg. </br> -3 times a day for 3 days - - - Give paracetamol: 1 tablet of 500 mg. </br> -3 times a day for 3 days - - - Give paracetamol: 2 tablets of 500 mg. </br> -3 times a day for 3 days - - - Give paracetamol: ½ tablet of 500 mg. - - - Give paracetamol: 1 tablet of 500 mg. - - - Give paracetamol: 2 tablets of 500 mg. - - - Follow<i class="fa fa-flag"></i> - - - The next follow-up visit is: - - - The next treatment follow-up visit is: - - - Vomiting of any food intake - - - Abdominal pain - - - Spontaneous bleeding - - - Difficulty breathing - - - Convulsions - - - Dark urine (cola colored) - - - Difficulty drinking and/or eating - - - Severe headache/blurred vision - - - jaundice (yellow eyes) - - - Pronounced conjunctival pallor - - - Inability to stand or sit - - - Unconscious - - - Presence of Fever - - - Refer the patient to the CSCOM. -Inform the patient that the CSCOM provides free testing, treatment, and support for people with tuberculosis. - - - Advise on the use of impregnated mosquito nets, environmental sanitation and the elimination of breeding grounds (stagnant water, old cans, canaries,...) - - - Simple Malaria - - - <h4 style="text-align:center;"></h4><h5 style="text-align:center;"> </h5> <h5 style="text-align:center;"> </h5> - - - Fever persists after 3 days of well conducted treatment (CTA). - - - <b>Refer to CSCOM </b><i class="fa fa-warning"></i> - - - Patient Summary<I class="fa fa-user"></i> - - - Suspicion of Tuberculosis - - - TDR Result: - - - TREATMENT<i class="fa fa-medkit"></i> - - - No - - - Yes - - - This field is required - - - Did you refer? - - - SPECIAL INSTRUCTIONS <i class = "fa fa-hand-o-right"></i> - - - Summary - - - <b>Does have any of the following characteristics:</b> - - - No - - - Yes - - - This field is required - - - Presence of chronic cough for more than 14 days - - - No - - - Yes - - - This field is required - - - Hemoptysis - - - No - - - Yes - - - This field is required - - - Prolonged fever of more than 21 days. - - - No - - - Yes - - - This field is required - - - Visible weight loss - - - Tb signs - - - Follow up on the patient - - - Refer to the CSCOM - - - This field is required - - - What is your course of action? - - - This field is required - - - Specify any other problems - - - To behave - - - next follow-up visit - - - - - <b>Faire le TDR pour avoir le résultat TDR à ce jour</b> - - - 1. Veuillez vous désinfecter les mains avant de prodécer au TDR - - - 2. Merci de mettre vos gants - jr://images/put_gloves.JPG - - - 3. Veuillez marquer les informations du patient sur la cassette (prénom et nom, date et heure de réalisation du TDR) avant de procéder au TDR - jr://images/notice_name.JPG - - - 4. Veuillez nettoyer le doigt du patient où le sang sera recueilli - jr://images/clean_finger.JPG - - - Comment faire un TDR paludisme - - - 5. Veuillez piquer le doigt du patient au bon endroit pour collecter le sang - jr://images/prick_finger.JPG - - - 6.Veuillez extraire le sang en utilisant la pipette et l'étaler sur la cassette dans le puits rond pour l'échantillon. Notez qu'une seule pipette de sang est suffisante - jr://images/drops.JPG - - - 7. Mettez le nombre de gouttes de solvants indiqué pour ce type de TDR dans le puit du dilluant. - jr://images/Ajouter_les_gouttes.JPG - - - 8. Veuillez activer le minuteur de 15 mn ci dessous. Pendant que vous patientez pour lire le résultat, merci de ranger les aiguilles dans la boite de sécurité après usage. Donnez les règles d'hygiène que le patient peut suivre pour éviter le paludisme. - - - Comment faire un TDR paludisme - - - Exemple d'un TDR positif - jr://images/positive.png - - - Exemple de TDR négatif - jr://images/negative.png - - - Négatif - - - Positif - - - Ce champ est obligatoire - - - Quel est le résultat du TDR? - - - Comment faire un TDR paludisme - - - Autre - - - Paracétamol Comprime 500 mg - - - Ce champ est obligatoire - - - Quel est le traitement reçu ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Non - - - Oui - - - Ce champ est obligatoire - - - avait-il/elle un antécédent de corps chaud, ou corps chaud au toucher? - - - Non - - - Oui - - - Ce champ est obligatoire - - - a-t-il/elle eu un TDR positif dans les 15 jours passés ? - - - Non - - - Oui - - - Ce champ est obligatoire - - - a-t-il/elle reçu un traitement? - - - <h2 style="background-color:#EAD1DC"> a de la fièvre</h2> - - - <h2 style="background-color:#67ce1a"> n'a pas de la fièvre</h2> - - - Le nombre de jours est compris entre 1 et 10 jours - - - Ce champ est obligatoire - - - Depuis combien de jours avait t-il/elle un antécédent de fièvre? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Pouvez- vous faire le TDR maintenant? - - - Autre - - - Rupture de stock - - - Ce champ est obligatoire - - - Pourquoi vous ne pouvez pas faire le TDR ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Plaintes/Antécédents - - - Désinfectez correctement le thermomètre avant de le ranger. - - - Thermomètre - jr://images/thermometer.png - - - Utilisez le thermomètre pour prendre la température. - - - La température doit être comprise entre 36 et 45 inclus - - - Ce champ est obligatoire - - - Quelle est la température? - - - Le poids doit être compris entre 4 kg et 200 kg - - - Quel est le poids (en kg)? - - - Constantes - - - Non - - - Oui - - - Ce champ est obligatoire - - - Douleur abdominale - - - Non - - - Oui - - - Ce champ est obligatoire - - - Saignement spontané - - - Non - - - Oui - - - Ce champ est obligatoire - - - Difficulté respiratoire - - - Non - - - Oui - - - Ce champ est obligatoire - - - Convulsions - - - Non - - - Oui - - - Ce champ est obligatoire - - - Urine foncée (couleur coca cola) - - - Non - - - Oui - - - Ce champ est obligatoire - - - Difficulté de boire et ou de s'alimenter - - - Non - - - Oui - - - Ce champ est obligatoire - - - Maux de têtes intenses/trouble de la vue - - - Non - - - Oui - - - Ce champ est obligatoire - - - Ictère (yeux jaunes) - - - Non - - - Oui - - - Ce champ est obligatoire - - - Pâleur conjonctivale prononcée - - - Non - - - Oui - - - Ce champ est obligatoire - - - Incapacité de se tenir debout ou de s'assoir - - - Non - - - Oui - - - Ce champ est obligatoire - - - Inconscient - - - Non - - - Oui - - - Ce champ est obligatoire - - - Vomissement de toute prise alimentaire - - - <b> a t-il l'un des signes de danger suivants?</b> - - - Recherche de signe de danger - - - - - - - - - - - - - - - - - - - Sexe - - - Source - - - Source de l'ID - - - Contact ID - - - Language - - - Name - - - Phone - - - User - - - - - - - prochaine visite suivi traitement - - - <h2 style="background-color:#ee2a02">FIEVRE À REFERER</h2> - - - <h2 style="background-color:#f6b426">PALUDISME SIMPLE</h2> - - - <h2 style="background-color:#ee2a02"> est une femme enceinte au 1er trimestre. </br> -Fièvre à référer</h2> - - - Ce champ est obligatoire - - - Depuis combien jours a-t-il/elle pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? - - - Non - - - Oui - - - Vérifiez si le patient a bien suivi le traitement - - - Ce champ est obligatoire - - - a-t-il/elle pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? - - - Autre - - - Rupture de stock - - - Ce champ est obligatoire - - - Pourquoi n'a-t-il/elle pas pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? - - - Fièvre - - - Référez au CSCOM pour un test de tuberculose. - - - Days old - - - Mois - - - Semaine - - - - - - - - - - - - - - - Sexe du patient - - - Sexe du patient - - - Sexe du patient - - - - - - - plaquette de 12 cp comprimés - - - Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/12 GRATUIT - - - plaquette de 24 cp comprimés - - - Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 GRATUIT POUR FEMME ENCEINTE - - - plaquette de 18cp comprimés - - - Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/18 - - - plaquette de 24cp comprimés - - - Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 - - - Equipements <i class="fa fa-cubes"></i> - - - Fièvre <i class="fa fa-cubes"></i> - - - Quantité de GANTS EN VRAC - - - Paludisme <i class="fa fa-cubes"></i> - - - Quantité de PARACÉTAMOL COMPRIMÉ 500MG - - - Quantité de TDR GRATUIT - - - Stock livré - - - Date doit être avant aujourd'hui - - - Ce champ est obligatoire - - - Entrez la date où l'évaluation a été faite - - - Le patient s'est rendu chez l'ASC - - - Au cours de la visite à domicile - - - Autre - - - Ce champ est obligatoire - - - Comment a été retrouvé(e)? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Non - - - Oui - - - Ce champ est obligatoire - - - L'évaluation a t-elle été faite aujourd'hui? - - - Autre - - - Téléphone Perdu - - - Téléphone Déchargé/Cassé - - - Ce champ est obligatoire - - - Pourquoi l'évaluation n'a pas été faite aujourd'hui? - - - Réalisation de l'évaluation - - - Référer - - - Traiter à domicile - - - Ce champ est obligatoire - - - Quelle est votre conduite à tenir ? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec de l' Artemether 20 mg – Luméfantrine 120mg/ comprimés? - - - Paludisme Simple - - - Donnez l'Artémether + Luméfantrine (AL): 20mg/120mg. </br> -2 comprimés Matin-Soir pendant 3 jours - - - Donnez l'Artémether + Luméfantrine (AL): 20mg/120mg. </br> -3 comprimés Matin-Soir pendant 3 jours - - - Donnez l'Artémether + Luméfantrine (AL): 20mg/120mg. </br> -4 comprimés Matin-Soir pendant 3 jours - - - Autre - - - Rupture de stock - - - Ce champ est obligatoire - - - Pouquoi n'avez-vous pas traité le patient avec de l' Artemether 20 mg – Luméfantrine 120mg/ comprimés? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Femme Enceinte et l'âge de la grossesse est inférieur à 4 mois - - - TDR non réalisé pour rupture de stock. - - - Signes de Danger<i class="fa fa-warning"></i> - - - Diagnostic<i class="fa fa-stethoscope"></i> - - - Fièvre - - - Donnez du Paracétamol: ½ comprimé de 500 mg. </br> -3 fois par jour pendant 3 jours - - - Donnez du Paracétamol: 1 comprimé de 500 mg. </br> -3 fois par jour pendant 3 jours - - - Donnez du Paracétamol: 2 comprimés de 500 mg. </br> -3 fois par jour pendant 3 jours - - - Donnez du Paracétamol: ½ comprimé de 500 mg. - - - Donnez du Paracétamol: 1 comprimé de 500 mg. - - - Donnez du Paracétamol: 2 comprimés de 500 mg. - - - Suivi<i class="fa fa-flag"></i> - - - La prochaine visite de suivi sera le : - - - La prochaine visite de suivi sera le : - - - Vomissement de toute prise alimentaire - - - Douleur abdominale - - - Saignement spontané - - - Difficulté respiratoire - - - Convulsions - - - Urine foncée (couleur coca cola) - - - Difficulté de boire et ou de s'alimenter - - - Maux tête intenses/trouble de la vue - - - Ictère (yeux jaunes) - - - Pâleur conjonctivale prononcée - - - Incapacité de se tenir debout ou de s'assoir - - - Inconscient - - - Présence de Fièvre - - - Réferez le patient au CSCOM. -Informez le patient que le CSCOM fournit des tests gratuits, un traitement et un soutien aux personnes atteintes de Tuberculose. - - - Conseillez sur l'utilisation des moustiquaires imprégnées, l'assainissement du milieu et l'élimination des gîtes larvaires (eaux stagnantes, vieilles boîtes de conserves, canaris,…) - - - Paludisme simple - - - <h4 style="text-align:center;"></h4><h5 style="text-align:center;"> </h5> <h5 style="text-align:center;"> </h5> - - - Fièvre persiste après 3 jours de traitement (CTA) bien conduit. - - - <b>Référer au CSCOM </b><i class="fa fa-warning"></i> - - - Détail du Patient <I class="fa fa-user"></i> - - - Suspicion de Tuberculose - - - Résultat TDR: - - - TRAITEMENT<i class="fa fa-medkit"></i> - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous référé? - - - INSTRUCTIONS SPECIALES <i class = "fa fa-hand-o-right"></i> - - - Résumé - - - <b> présente t-il/elle l'une des caractéristiques suivantes :</b> - - - Non - - - Oui - - - Ce champ est obligatoire - - - Présence de Toux chronique de plus de 14 jours - - - Non - - - Oui - - - Ce champ est obligatoire - - - Hémoptysie - - - Non - - - Oui - - - Ce champ est obligatoire - - - Fièvre prolongée de plus de 21 jours. - - - Non - - - Oui - - - Ce champ est obligatoire - - - Amaigrissement visible - - - Signes de Tuberculose - - - Faire le suivi du patient - - - Référer au CSCOM - - - Ce champ est obligatoire - - - Quelle est votre conduite à tenir ? - - - Ce champ est obligatoire - - - Précisez tout autre problème - - - Conduite à tenir - - - prochaine visite suivi - - - - - - - - - - - - - - - user - - - <_id/> - - - - 0 - - - db-object - - - <_id/> - - - - - - - - - - - 0 - 0 - 0 - - - - - - "" - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 900 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_id/> - - - - 0/0 - 0/0 - 0/0 - 0/0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/app/patient_assessment_under_5.xlsx b/test/project-config/forms/app/patient_assessment_under_5.xlsx index 6e5b9ab9b31cdc82eaf4542efa236c08f8e7f883..d28e763a2e34d036065da0bd31f518cf80e1062b 100644 GIT binary patch delta 3836 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 n3_sZ|rZsy4HtM))TdRHRR7S - - - PEC de l'enfant - - - - - This field is required - - - Do the TDR to have the TDR result to date - - - This field is required - - - 1. Please disinfect your hands before performing the RDT - - - This field is required - - - 2. Please put on your gloves - jr://images/put_gloves.JPG - - - This field is required - - - 3. Please mark the patient information on the cassette (first and last name, date and time of RDT completion) before proceeding with RDT - jr://images/notice_name.JPG - - - This field is required - - - 4. Please clean the patient's finger where the blood will be collected - jr://images/clean_finger.JPG - - - How to do a malaria RDT - - - This field is required - - - 5. Please prick the patient's finger in the right place to collect blood - jr://images/prick_finger.JPG - - - This field is required - - - 6.Please extract the blood using the pipette and spread it on the cassette in the round well for the sample. Note that a single pipette of blood is sufficient - jr://images/extract_blood_2.jpg - - - This field is required - - - 7. Put the number of drops of solvent indicated for this type of RDT in the square well of diluent - jr://images/add_drop.JPG - - - This field is required - - - 8. Please activate the 15 min timer below. While you wait to read the result, please store the needles in the safety box after use. Give the rules of hygiene that the patient can follow to avoid malaria. - - - How to do a malaria RDT - - - This field is required - - - Number of test(s) used - - - This field is required - - - Example of a positive RDT - jr://images/positive.png - - - This field is required - - - Example of negative RDT - jr://images/negative.png - - - Negative - - - Positive - - - This field is required - - - What is the result of the TDR? - - - How to do a malaria RDT - - - This field is required - - - Specify (Other) - - - Amoxicillin - - - Balembo syrup or carbocisteine - - - Lemon honey or eucalyptus leaf infusion - - - None - - - Other - - - This field is required - - - What is the treatment received at home? - - - No - - - Yes - - - This field is required - - - Did take ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? -Check if the patient has followed the treatment - - - Any - - - Other - - - Antipyretics/Paracetamol Syrup 125 mg - - - Antipyretics/Paracetamol Tablet 500 mg - - - This field is required - - - What is the treatment received at home? - - - This field is required - - - Specify (Other) - - - No - - - Yes - - - This field is required - - - Does have a cough or a cold? - - - No - - - Yes - - - This field is required - - - Did have a history of a hot body, or hot to the touch? - - - No - - - Yes - - - This field is required - - - Has had a positive RDT in the past 15 days? - - - No - - - Yes - - - This field is required - - - Can you do the RDT now? - - - The number of days must be between 0 and 15 - - - This field is required - - - How many days has he been taking ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? - - - This field is required - - - has a fever - - - This field is required - - - does not have a fever - - - This field is required - - - **Press the timer and count the number of breaths for 60 seconds** - - - The number of days must be between 0 and 15 - - - This field is required - - - How many days does the cough or cold last? - - - The number of days must be between 0 and 15 - - - This field is required - - - For how many days did he have a history of a hot body, or a hot body to the touch? - - - Fréquence doit être comprise entre 20 et 60 mouvements - - - This field is required - - - What is the respiratory rate? - - - Other - - - Out Of Stock - - - This field is required - - - Why didn't take ACT (Artemether + Lumefantrine (AL): 20mg/120mg)? - - - Other - - - Out Of Stock - - - This field is required - - - Why can't you do the TDR? - - - This field is required - - - Specify (Other) - - - Complaints/History - - - Green - jr://images/- - - - Red - jr://images/- - - - Yellow - jr://images/- - - - This field is required - - - What is the color of the shakir band? - -Green: If PB >= 12.5 cm -Yellow: If 11.5cm≤PB<12.5cm -Red: If PB<11.5cm - - - None - - - Other - - - SRO - - - Zinc - - - If none is chosen the other options should not be chosen - - - This field is required - - - What is the treatment received? - - - This field is required - - - Specify (Other) - - - No - - - Yes - - - This field is required - - - Does have more than 3 stools per day? - - - No - - - Yes - - - This field is required - - - Is there any other complaint not related to cough, fever or diarrhea? - - - This field is required - - - Nutritional status research - - - Number of days must be between 0 and 15 - - - This field is required - - - How many days has he had diarrhea? - - - This field is required - - - What are the complaints? - - - Diarrhea and malnutrition - - - This field is required - - - Properly disinfect the thermometer before storing it. - - - This field is required - - - Use the thermometer to take the temperature. - - - The temperature must be between 35 and 45 inclusive - - - This field is required - - - What is the temperature? - - - Thermometer - jr://images/thermometer.png - - - The weight should be between 8kg and 50kg - - - This field is required - - - What is the weight (in kg)? - - - The weight should be between 0.5kg and 18kg - - - This field is required - - - What is the weight (in kg)? - - - Constants - - - Frequency is Fast - - - Frequency is Normal - - - has a cough - - - Cough/cold for more than 14 days - - - <h2 style="background-color:#FEC002">Pneumonia</h2> - - - <h2 style="background-color:#93C47E">Cough or cold</h2> - - - Cough or Cold - - - No - - - Yes - - - This field is required - - - Any illnesses that last 14 days or more - - - No - - - Yes - - - This field is required - - - scanty coca cola colored urine - - - No - - - Yes - - - This field is required - - - Has the child convulsed or is convulsing now? - - - No - - - Yes - - - This field is required - - - Difficult breathing with chest indrawing or wheezing - - - No - - - Yes - - - This field is required - - - Lower limb edema - - - This field is required - - - Does have any of the following danger signs? - - - This field is required - - - 's age is less than 2 months. - -You cannot continue the assessment of infant under 2 months. - -Please refer the infant to the CSCOM - - - No - - - Yes - - - This field is required - - - Severe palmar pallor (Anaemia) - - - No - - - Yes - - - This field is required - - - Visible and severe weight loss in children aged 2 to 6 months - - - No - - - Yes - - - This field is required - - - Child becomes sicker despite home care - - - No - - - Yes - - - This field is required - - - Spontaneous bleeding - - - No - - - Yes - - - This field is required - - - Is the child unable to drink or breastfeed? - - - No - - - Yes - - - This field is required - - - Unable to sit or stand - - - No - - - Yes - - - This field is required - - - Child is unconscious or unresponsive to external stimuli - - - No - - - Yes - - - This field is required - - - Does the child vomit everything he eats? - - - Danger sign search - - - None - - - sunken eyes - - - Thirsty skin pinch slowly fading away - - - This field is required - - - Does have the following signs of dehydration? - - - No - - - Yes - - - This field is required - - - Blood in stool - - - No - - - Yes - - - This field is required - - - Stools that are too liquid (like water) - - - <h2 style="background-color:#FF0200">DIARRHEA TO REFER</h2> - - - <h2 style="background-color:#FEC002">SIMPLE DIARRHEA</h2> - - - Diarrhea for more than 14 days - - - This field is required - - - Presence of Diarrhea - - - This field is required - - - Shakir band is Red - - - Diarrhea - - - No - - - Yes - - - This field is required - - - Does have rashes? - - - <h2 style="background-color:#FF0200">FEVER TO REFER</h2> - - - <h2 style="background-color:#93C47E">NO MALARIA</h2> - - - <h2 style="background-color:#FEC002">SIMPLE MALARIA</h2> - - - <h2 style="background-color:#FEC002">MALARIA SUSPICION</h2> - - - This field is required - - - has a fever - - - Fever for more than 14 days - - - This field is required - - - TDR is Negative - - - This field is required - - - RDT is positive - - - This field is required - - - Positive RDT in the last 15 days - - - Fever - - - What is the patient's name? - - - Date of Birth - - - Name - - - Household ID - - - Area ID - - - CHW name - - - CHW phone - - - Health Facility ID - - - Patient ID - - - Sex - - - Short Name - - - - - - - Source - - - Source ID - - - Contact ID - - - Name - - - Phone - - - Role - - - User - - - No - - - Yes - - - This field is required - - - Is getting bigger? - - - This field is required - - - <h2 style="background-color:#FF0200">Severe Acute Malnutrition without complications</h2> - - - This field is required - - - Appetite test - - - This field is required - - - Give a 10% sugar water solution (4 teaspoon or 4 sugar cubes for 200l of water: 5ml per kg - - - This field is required - - - Here are the average amounts a child needs to take to pass their appetite test - - - This field is required - - - 1/2 or more of the contents of the glass of tea n°8 - - - This field is required - - - 1/3 or more of the contents of the glass of tea n°8 - - - This field is required - - - 1/4 or more of the contents of the glass of tea n°8 - - - This field is required - - - <h2 style="background-color:#FEFF03">Moderate Acute Malnutrition</h2> - - - This field is required - - - <h2 style="background-color:#93C47E">No Malnutrition</h2> - - - This field is required - - - <h2 style="background-color:#FF0200">Severe Malnutrition to Refer</h2> - - - Negative - - - Positive - - - This field is required - - - What is the result of the appetite test? - - - Malnutrition - - - To behave - - - Days old - - - Months - - - Week - - - Patient Sex - - - Patient Sex - - - Patient Sex - - - Quantity of FREE ALBENDAZOLE 200 MG TABLETS - - - Quantity of FREE ALBENDAZOLE 400 MG TABLETS - - - Quantity of FREE AMOXICILLIN 250 MG TABLETS FOR MALNOURISHED CHILDREN - - - box of 18 pills - - - Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/18 - - - box of 24 pills - - - Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 - - - box of 6 pills - - - Quantity of ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/6 FREE FOR CHILDREN < 5 YEARS - - - Quantity of ARTESUNATE SUPPOSITORY 200 MG - - - Quantity of ARTESUNATE SUPPOSITORY 50 MG - - - Quantity of BALEMBO CHILD SYRUP - - - Quantity of CARBETUX SYRUP - - - Quantity of CARBOCYSTEINE 2% - - - Cough <i class="fa fa-cubes"></i> - - - Diarrhea <i class="fa fa-cubes"></i> - - - Materials <i class="fa fa-cubes"></i> - - - Fever <i class="fa fa-cubes"></i> - - - Quantity of FREE IRON/FOLIC ACID SUPPLEMENTS FOR MALNOURISHED INDIVIDUALS - - - Quantity of Free ORS - - - Quantity of FREE ZINC - - - Quantity of BULK GLOVES - - - Malnutrition <i class="fa fa-cubes"></i> - - - Malaria <i class="fa fa-cubes"></i> - - - Quantity of Paracetamol Syrup - - - Quantity of PARACETAMOL TABLET 100MG FREE FOR CHILDREN < 5 YEARS - - - Quantity of PARACETAMOL TABLET 500MG - - - Quantity of FREE PLUMPLY NUT SUPPLEMENT FOR MAS-C - - - Quantity of FREE PLUMPY SUP SUPPLEMENT FOR MAM - - - Pneumonia <i class="fa fa-cubes"></i> - - - Quantity of ORS (Oral Rehydration Solution) + Zinc - - - Quantity of FREE SUPERCEREAL (CSB) FOR MALNOURISHED INDIVIDUALS - - - Quantity of FREE RAPID DIAGNOSTIC TEST (TDR) - - - Quantity of FREE 100,000 IU VITAMIN A CAPSULES - - - Quantity of FREE 200,000 IU VITAMIN A CAPSULES - - - Stock uses - - - Date must be before today - - - This field is required - - - Enter the date the assessment was made - - - The patient went to the ASC - - - During the home visit - - - Other - - - This field is required - - - How was found? - - - This field is required - - - Specify (Other) - - - This field is required - - - Specify (Other) - - - No - - - Yes - - - This field is required - - - Was the assessment done today? - - - Other - - - Phone lost - - - Phone Discharged/Broken - - - This field is required - - - Why was the evaluation not done today? - - - Carrying out the assessment - - - Danger Signs - - - Any illnesses that last 14 days or more - - - scanty coca cola colored urine - - - The child convulsed or is convulsing now - - - Difficult breathing with chest indrawing or wheezing - - - Lower limb edema - - - Severe palmar pallor (Anaemia) - - - Visible and severe weight loss in children aged 2 to 6 months - - - Child becomes sicker despite home care - - - Spontaneous bleeding - - - The child unable to drink or breastfeed - - - Unable to sit or stand - - - Child is unconscious or unresponsive to external stimuli - - - The child vomit everything he eats - - - Cough, cold for more than 14 days - - - Diarrhea for more than 14 days - - - Fever for more than 14 days - - - Diagnostic <i class = "fa fa-stethoscope"></i> - - - Fever to refer - - - Presence of Fever - - - Presence of simple malaria - - - Simple Malaria Suspicion - - - Malaria under treatment - - - Presence of Moderate Acute Malnutrition (MAM) - - - Severe Malnutrition to Refer - - - Presence of Severe Acute Malnutrition (SAM) Without complications - - - Other problem - - - Persistent Fever - - - Presence of simple cough/cold - - - Presence of simple diarrhea - - - Presence of Diarrhea with sign of severity - - - Presence of Pneumonia - - - TDR Result: - - - Vaccination is not up to date - - - Vaccination is up to date - - - No - - - Yes - - - This field is required - - - Did you refer? - - - SPECIAL INSTRUCTIONS<i class = "fa fa-hand-o-right"></i> - - - Do wet wrap for , if he can nurse or drink, continue to nurse en route (or expressed milk by cup) - - - Advise on good breastfeeding practices. - - - Feed the child properly - -Return immediately if signs of worsening (sicker child, rapid breathing) - -Return after 2 days if no complications - -Cover children well, especially toddlers - -Do not expose children to smoke (cooking, cigarettes, shisha, incense, etc.) and dust - - - Continue feeding. - -Increase fluids to drink (or breast milk if exclusively breastfeeding). - -Recognize when to return to the site immediately (if the child becomes sicker). - -Continue treatment even if the child is better. - - - Give frequent sips of ORS with the cup if no SAM (even if exclusively breastfeeding); If SAM, give a 10% sugar water solution (4 teaspoons or 4 sugar cubes for 200ml of water). - - - Wash hands before preparing and administering medication - -Observe the child for 30 minutes to ensure that he does not vomit the drugs and resume if necessary - -Emphasize the importance of giving zinc for the full 14 days. The child will have a better appetite and will have more strength - - - Mom, from the 6th month in addition to breast milk, give complementary foods at least four times a day - -Diversify foods - - - Sleep under an insecticidal mosquito net (MILDA) - -Get your child vaccinated on the right date for their health - -Diversify the child's foods - -Have good hygiene and wash your hands during the 4 critical moments - - - Refer - - - Treat at home - - - This field is required - - - What is the course of action? - - - Follow <i class="fa fa-flag"></i> - - - The next follow-up referral visit is today - - - The next follow-up visit is : - - - The next malaria follow-up visit is: - - - The next follow-up visit is : - - - <h5 style="text-align:center;"> </h5> - - - <h4 style="text-align:center;"></h4> - - - <h5 style="text-align:center;"> </h5> - - - Refer to CSCOM <i class="fa fa-warning"></i> - - - Refer to CSCOM/CHW <i class="fa fa-warning"></i> - - - Patient Summary<I class="fa fa-user"></i> - - - The next vaccine follow-up visit is : - - - Balembo - - - Carbo Cystéine - - - With which drug do you want to treat? - - - No - - - Yes - - - This field is required - - - Have you treated with paracetamol? - - - Fever - - - Give paracetamol 1 to 4 times a day - - - <b>Pre-Transfer Treatment</b> - - - Give paracetamol - - - ¼ tablet of 500 mg or 1 measuring spoonful of Paracetamol syrup (125 mg) - - - ½ tablet of 500 mg or 2 measuring spoonfuls of Paracetamol syrup (125 mg) - - - Wet wrap in case of high fever. -If the child can breastfeed or drink, continue to breastfeed on the way (or expressed milk by cup or give sugar water. - - - Which ? - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - No - - - Yes - - - This field is required - - - Have you treated with Artemether 20mg – Lumefantrine 120mg/tablets? - - - No - - - Yes - - - This field is required - - - Have you treated the cough/cold? - - - No - - - Yes - - - This field is required - - - Have you treated with ORS? - - - No - - - Yes - - - This field is required - - - Have you treated with ZINC? - - - Pre-Transfer Treatment - - - This field is required - - - How much? - - - No - - - Yes - - - This field is required - - - Have you treated with Albendazole? - - - No - - - Yes - - - This field is required - - - Have you treated with Iron + Folic Acid? - - - No - - - Yes - - - This field is required - - - Have you treated with the Ready-to-Use Food (RUTF)? - - - No - - - Yes - - - This field is required - - - Have you treated with Vitamin A? - - - Therapeutic Ready-to-Use Food (RUTF) - - - Treating with Super Cereal (CSB) -Give 295g per day to the child, i.e. 2065g per week (4.13kg for 2 weeks) - - - 1/2 tablet / Week for 2 months if the child is less than 10 kg - - - 1 tablet/week for 2 months if the child is over 10 kg - - - <b>Moderate Acute Malnutrition (MAM)</b> - - - Treat with Albendazole - - - 1/2 tablet of 400ml or 1 tablet of 200mg in one take - - - 1 tablet of 400mg in a single dose - - - Treat Iron + Folic Acid - - - 1/2 tablet / Week for 2 months if the child is less than 10 kg - - - 1 tablet/week for 2 months if the child is over 10 kg - - - Treating with Plumpy Sup. -Give one (1) sachet per day to the child, i.e. 7 sachets per week. - - - Treat with Super Cereal Plus -Give 200g per day to the child, i.e. 1400g per week (2.8kg for 2 weeks) - - - Give Vitamin A - - - Give the first dose on the same day and give a dose to the mother for administration at home the next day - - - 1/2 capsule of 100,000 IU - - - 1 capsule of 100,000 IU - - - 2 capsules of 100,000 IU - - - No - - - Yes - - - This field is required - - - Has received vitamin A in the past two months? - - - Plumpy Sup - - - Supercereal (CSB) - - - Super Cereal Plus - - - This field is required - - - What do you want to do the treatment with? - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Simple Cough/Cold - - - Give 1 teaspoon of Balembo 2 times a day - - - Give 1 teaspoon of Balembo 3 times a day - - - Give 1 teaspoon of Carbo Cysteine ​​3 times a day - - - Simple diarrhea - - - Treat with ORS - - - 50 to 100ml after each loose stool (1/2 or 1 SD ladle) - - - 100 to 200ml after each loose stool (1 -2 SD ladles) -If vomiting, wait 10 minutes then give again - - - Treat with zinc - - - 1/2 tablet of 20mg for 14 days - - - 1 tablet of 20mg for 14 days - - - Uncomplicated Malaria - - - Artemether 20mg – Lumefantrine 120mg/tablets -1 morning-evening tablet for 3 days - - - Artemether 20mg – Lumefantrine 120mg/tablets -2 tablets Morning-Evening for 3 days - - - Administer one 50mg Artesunate suppository - - - Administer a 100mg Artesunate suppository - - - Administer one 200 mg Artesunate suppository. - - - TREATMENT <i class="fa fa-medkit"></i> - - - Simple Malaria Suspicion - - - This field is required - - - Which did you give? - - - No - - - Yes - - - This field is required - - - Have you treated with amoxicillin? - - - Pneumonia - - - Treat with Amoxicillin 2 times a day for 5 days - - - 1/2 tablet of 250 mg Or 1/4 tablet of 500 mg Or 1 measuring spoon of 125 mg - - - 1 tablet of 250 mg Or 1/2 tablet of 500 mg Or 2 measuring spoons of 125 mg Or 1 measuring spoon of Syrup 250 mg - - - 1+1/2 250mg tablet Or 1 500mg tablet Or 3 125mg measuring spoons Or 1+ 1/2 250mg syrup measuring spoon - - - 2 tablets of 250 mg Or 1 tablet of 500 mg Or 4 measuring spoons of 125 mg Or 2 measuring spoons of Syrup 250 mg - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - No - - - Yes - - - This field is required - - - Have you treated with Plumpy Nut.? - - - <b>Malnutrition</b> - - - Uncomplicated Severe Acute Malnutrition (SAM) - - - <b>Therapeutic Ready-to-Use Food (RUTF)</b> - - - Treat with Plumpy Nut. - - - *If weight between 3 – 3.4kg* -Give 1/4 sachets/Day or 8 sachets/week - -*If weight between 3.5 – 4.9 kg* -Give 1/2 sachets/Day or 10 sachets/week - -*If weight between 5.0 – 6.9 Kg* -Give 2 sachets/Day or 15 sachets/week - -*If weight between 7.0 – 9.9 kg* -Give 3 sachets/Day or 20 sachets/week - -*If weight between 10.0 – 14.9 Kg* -Give 4 sachets/Day or 30 sachets/week - -*If weight between 15.0 – 19.9 kg* -Give 5 sachets/Day or 35 sachets/week - - - 1/2 sachets/Day or 10 sachets/week - - - 1/4 sachets/Day or 8 sachets/week - - - 2 sachets/day or 15 sachets/week - - - 3 sachets/day or 20 sachets/week - - - 4 sachets/day or 30 sachets/week - - - 5 sachets/Day or 35 sachets/week - - - This field is required - - - How much? - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Other - - - Out Of Stock - - - This field is required - - - Why ? - - - This field is required - - - Specify (Other) - - - Summary - - - REFER TO CSCOM - - - Observe - - - What is your course of action (CAT)? - - - Specify ANY OTHER PROBLEM - - - To behave - - - No - - - Yes - - - Did come with his vaccination record? - - - No - - - Yes - - - This field is required - - - BCG - - - No - - - Yes - - - This field is required - - - Men AfriVac(Méningite) - - - No - - - Yes - - - This field is required - - - PCV13_1(Pneumo1) - - - No - - - Yes - - - This field is required - - - PCV13_2(Pneumo2) - - - No - - - Yes - - - This field is required - - - PCV13_3(Pneumo 3) - - - No - - - Yes - - - This field is required - - - Penta 1 - - - No - - - Yes - - - This field is required - - - Penta 2 - - - No - - - Yes - - - This field is required - - - Penta 3 - - - No - - - Yes - - - This field is required - - - Polio O - - - No - - - Yes - - - This field is required - - - Rota 1 - - - No - - - Yes - - - This field is required - - - Rota 2 - - - No - - - Yes - - - This field is required - - - Rota 3 - - - No - - - Yes - - - This field is required - - - VAR 1 - - - No - - - Yes - - - This field is required - - - VAR 2 - - - No - - - Yes - - - This field is required - - - VPI 1 - - - No - - - Yes - - - This field is required - - - VPI 2 - - - No - - - Yes - - - This field is required - - - VPO 1 - - - No - - - Yes - - - This field is required - - - VPO 2 - - - No - - - Yes - - - This field is required - - - VPO 3 - - - No - - - Yes - - - This field is required - - - VAA(Fièvre Jaune) - - - This field is required - - - Has received the following vaccines: - - - Vaccination is not up to date - - - Vaccination is up to date - - - - - - Vaccinated against BCG - - - - - - Vaccinated against Men AfriVac (Meningitis) - - - - - - Vaccinated against PCV13_1(Pneumo1) - - - - - - Vaccinated against PCV13_2 (Pneumo2) - - - - - - Vaccinated against PCV13_3 (Pneumo 3) - - - - - - Vaccinated against Penta 1 - - - - - - Vaccinated against Penta 2 - - - - - - Vaccinated against Penta 3 - - - - - - Vaccinated against Polio O - - - - - - Vaccinated against Rota 1 - - - - - - Vaccinated against Rota 2 - - - - - - Rvaccinated against Rota 3 - - - - - - Vaccinated against VAR 1 - - - - - - Vaccinated against VAR 2 - - - - - - Vaccinated against IPV 1 - - - - - - Vaccinated against IPV 2 - - - - - - Vaccinated against OPV 1 - - - - - - Vaccinated against OPV 2 - - - - - - Vaccinated against OPV 3 - - - - - - Vaccinated against AAV (Yellow Fever) - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - The date must be between birthday and today - - - Enter the date the vaccine was administered - - - At home - - - lost card - - - Does not exist - - - This field is required - - - Why ? - - - Vaccination follow-up - - - No - - - Yes - - - This field is required - - - Has received vitamin A in the past six months? - - - 1 dose of 100,000 IU - - - 1 dose of 200,000 IU - - - 1 dose of 50,000 IU - - - This field is required - - - What is the dose received? - - - Vitamin A - - - 1/2 tablet of 400mg - - - 1 tablet of 200mg - - - 1 tablet of 400mg - - - 1/2 tablet of 250 mg - - - 1 measuring spoon of 125 mg - - - 1+ 1/2 measuring spoon Syrup 250 mg - - - 2 tablets of 250mg - - - 4 measuring spoons of 125mg - - - 1 tablet of 500mg - - - 2 measuring spoons of Syrup 250 mg - - - 1/4 tablet of 500mg - - - 1 tablet of 250mg - - - 2 measuring spoons of 125 mg - - - 1/2 tablet of 500 mg - - - 1 measuring spoon of Syrup 250 mg - - - 1+1/2 tablet of 250 mg - - - 3 measuring spoons of 125mg - - - 1 tablet of 500mg - - - REFER TO CSCOM - - - Observe - - - 1/4 tablet of 500mg - - - 1 measuring spoonful of Paracetamol syrup (125 mg) - - - 1/2 tablet of 500mg - - - 2 measuring spoonfuls of Paracetamol syrup (125 mg) - - - Green - jr://images/- - - - Yellow - jr://images/- - - - Red - jr://images/- - - - Amoxicillin - - - Balembo syrup or carbocisteine - - - Lemon honey or eucalyptus leaf infusion - - - Other - - - None - - - Balembo - - - Carbo Cystéine - - - sunken eyes - - - Thirsty skin pinch slowly fading away - - - None - - - SRO - - - Zinc - - - Other - - - None - - - Antipyretics/Paracetamol Tablet 500 mg - - - Antipyretics/Paracetamol Syrup 125 mg - - - Any - - - Other - - - Phone lost - - - Phone Discharged/Broken - - - Other - - - Refer - - - Treat at home - - - lost card - - - Does not exist - - - At home - - - During the home visit - - - The patient went to the ASC - - - Other - - - 1/4 sachets/Day or 8 sachets/week - - - 1/2 sachets/Day or 10 sachets/week - - - 2 sachets/day or 15 sachets/week - - - 3 sachets/day or 20 sachets/week - - - 4 sachets/day or 30 sachets/week - - - 5 sachets/Day or 35 sachets/week - - - Positive - - - Negative - - - Out Of Stock - - - Other - - - Positive - - - Negative - - - Plumpy Sup - - - Super Cereal Plus - - - Supercereal (CSB) - - - 1 dose of 50,000 IU - - - 1 dose of 100,000 IU - - - 1 dose of 200,000 IU - - - Yes - - - No - - - - - Ce champ est obligatoire - - - Faire le TDR pour avoir le résultat TDR à ce jour - - - Ce champ est obligatoire - - - 1. Veuillez vous désinfecter les mains avant de prodécer au TDR - - - Ce champ est obligatoire - - - 2. Merci de mettre vos gants - jr://images/put_gloves.JPG - - - Ce champ est obligatoire - - - 3. Veuillez marquer les informations du patient sur la cassette (prénom et nom, date et heure de réalisation du TDR) avant de procéder au TDR - jr://images/notice_name.JPG - - - Ce champ est obligatoire - - - 4. Veuillez nettoyer le doigt du patient où le sang sera recueilli - jr://images/clean_finger.JPG - - - Comment faire un TDR paludisme - - - Ce champ est obligatoire - - - 5. Veuillez piquer le doigt du patient au bon endroit pour collecter le sang - jr://images/prick_finger.JPG - - - Ce champ est obligatoire - - - 6.Veuillez extraire le sang en utilisant la pipette et l'étaler sur la cassette dans le puits rond pour l'échantillon. Notez qu'une seule pipette de sang est suffisante - jr://images/extract_blood_2.jpg - - - Ce champ est obligatoire - - - 7. Mettez le nombre de gouttes de solvants indiqué pour ce type de TDR dans le puits du dilluant - jr://images/add_drop.JPG - - - Ce champ est obligatoire - - - 8. Veuillez activer le minuteur de 15 mn ci dessous. Pendant que vous patientez pour lire le résultat, merci de ranger les aiguilles dans la boite de sécurité après usage. Donnez les règles d'hygiène que le patient peut suivre pour éviter le paludisme. - - - Comment faire un TDR paludisme - - - Ce champ est obligatoire - - - Nombre de test (s) utilisé (s) - - - Ce champ est obligatoire - - - Exemple d'un TDR positif - jr://images/positive.png - - - Ce champ est obligatoire - - - Exemple de TDR négatif - jr://images/negative.png - - - Négatif - - - Positif - - - Ce champ est obligatoire - - - Quel est le résultat du TDR? - - - Comment faire un TDR paludisme - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Amoxiciline - - - Sirop Balembo ou carbocystéine - - - Miel au citron ou et infusion de feuille d'eucalyptus - - - Aucun - - - Autre - - - Ce champ est obligatoire - - - Quel est le traitement reçu à domicile? - - - Non - - - Oui - - - Ce champ est obligatoire - - - a t-il pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? -Vérifiez si le patient a bien suivi le traitement - - - Aucun - - - Autre - - - Antipyrétiques/Paracétamol Sirop à 125 mg - - - Antipyrétiques/Paracétamol Comprime 500 mg - - - Ce champ est obligatoire - - - Quel est le traitement reçu à domicile? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Non - - - Oui - - - Ce champ est obligatoire - - - a t-il de la toux ou un rhume ? - - - Non - - - Oui - - - Ce champ est obligatoire - - - avait-il un antécédent de corps chaud, ou corps chaud au toucher? - - - Non - - - Oui - - - Ce champ est obligatoire - - - a t-il eu un TDR positif dans les 15 jours passés ? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Pouvez- vous faire le TDR maintenant? - - - Le nombre de jours doit être compris entre 0 et 15 - - - Ce champ est obligatoire - - - Depuis combien de jours a t-il pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? - - - Ce champ est obligatoire - - - a de la fièvre - - - Ce champ est obligatoire - - - n'a pas de la fièvre - - - Ce champ est obligatoire - - - **Appuyer sur le minuteur et compter le nombre de respirations durant 60 secondes** - - - Le nombre de jours doit être compris entre 0 et 15 - - - Ce champ est obligatoire - - - Depuis combien de jours dure la toux ou rhume? - - - Le nombre de jours doit être compris entre 0 et 15 - - - Ce champ est obligatoire - - - Depuis combien de jours avait t-il un antécédent de corps chaud, ou corps chaud au toucher? - - - Frequency must be between 20 and 60 movements - - - Ce champ est obligatoire - - - Quelle est la fréquence respiratoire? - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi n'a t-il pas pris de la CTA (Artémether + Luméfantrine (AL): 20mg/120mg)? - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ne pouvez-vous pas faire le TDR ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Plaintes/Antécédents - - - Vert - jr://images/green.jpg - - - Rouge - jr://images/red.png - - - Jaune - jr://images/yellow.jpg - - - Ce champ est obligatoire - - - Quelle est la couleur de la bande de shakir? - -Vert : Si PB >= 12,5 cm -Jaune : Si 11,5 cm≤PB<12,5 cm -Rouge: Si PB<11,5 cm - - - Aucun - - - Autre - - - SRO - - - Zinc - - - Si aucun est choisit les autres options ne devraient pas être choisies - - - Ce champ est obligatoire - - - Quel est le traitement reçu? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Non - - - Oui - - - Ce champ est obligatoire - - - fait-il plus de 3 selles par jour? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Il y a t-il une autre plainte non liée à la toux, fièvre ou diarrhée? - - - Ce champ est obligatoire - - - Recherche de statut nutritionnel - - - Nombre de jours doit être comprise entre 0 et 15 - - - Ce champ est obligatoire - - - Depuis combien de jours a t-il la diarrhée? - - - Ce champ est obligatoire - - - Quelles sont les plaintes? - - - Diarrhée et malnutrition - - - Ce champ est obligatoire - - - Désinfecter correctement le thermomètre avant de le ranger. - - - Ce champ est obligatoire - - - Utiliser le thermomètre pour prendre la température. - - - La température doit être comprise entre 35 et 45 inclus - - - Ce champ est obligatoire - - - Quelle est la température? - - - Thermomètre - jr://images/thermometer.png - - - Le poids doit être compris entre 8 kg et 50kg - - - Ce champ est obligatoire - - - Quel est le poids (en kg)? - - - Le poids doit être compris entre 0,5 kg et 18kg - - - Ce champ est obligatoire - - - Quel est le poids (en kg)? - - - Constantes - - - La fréquence est Rapide - - - La fréquence est Normale - - - a la toux - - - Toux/rhume de plus de 14 jours - - - <h2 style="background-color:#FEC002">Pneumonie</h2> - - - <h2 style="background-color:#93C47E">Toux ou Rhume</h2> - - - Toux ou Rhume - - - Non - - - Oui - - - Ce champ est obligatoire - - - Toutes maladies qui durent 14 jours ou plus - - - Non - - - Oui - - - Ce champ est obligatoire - - - Urine peu abondante couleur coca cola - - - Non - - - Oui - - - Ce champ est obligatoire - - - L'enfant a-t-il convulsé ou convulse maintenant ? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Respiration difficile avec tirage sous costal ou sifflement - - - Non - - - Oui - - - Ce champ est obligatoire - - - Œdèmes aux membres inférieurs - - - Ce champ est obligatoire - - - a t-il l'un des signes de danger suivants? - - - Ce champ est obligatoire - - - L'âge de est inférieur à 2 mois. - -Vous ne pouvez pas continuer l'évaluation du nourrisson de moins de 2 mois. - -Merci de référer le nourrisson vers le CSCOM - - - Non - - - Oui - - - Ce champ est obligatoire - - - Pâleur palmaire sévère (Anémie) - - - Non - - - Oui - - - Ce champ est obligatoire - - - Amaigrissement visible et sévère chez l'enfant de 2 à 6 mois - - - Non - - - Oui - - - Ce champ est obligatoire - - - Enfant devient plus malade malgré les soins à domicile - - - Non - - - Oui - - - Ce champ est obligatoire - - - Saignement spontané - - - Non - - - Oui - - - Ce champ est obligatoire - - - L'enfant est-il incapable de boire ou de téter ? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Incapable de s'assoir ou se tenir debout - - - Non - - - Oui - - - Ce champ est obligatoire - - - L'enfant est inconscient ou ne répond pas aux stimuli externes - - - Non - - - Oui - - - Ce champ est obligatoire - - - L'enfant vomit tout ce qu'il consomme ? - - - Récherche de signe de danger - - - Aucun - - - Yeux enfoncés - - - Asoiffé pli cutané qui s'efface lentement - - - Ce champ est obligatoire - - - a t-il les signes de déshydratation suivants? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Sang dans les selles - - - Non - - - Oui - - - Ce champ est obligatoire - - - Selles trop liquides (comme eau) - - - <h2 style="background-color:#FF0200">DIARRHÉE À RÉFÉRER</h2> - - - <h2 style="background-color:#FEC002">DIARRHÉE SIMPLE</h2> - - - Diarrhée de plus de 14 jours - - - Ce champ est obligatoire - - - Présence de Diarrhée - - - Ce champ est obligatoire - - - La bande de shakir est Rouge - - - Diarrhée - - - Non - - - Oui - - - Ce champ est obligatoire - - - a t-il des éruptions cutanées? - - - <h2 style="background-color:#FF0200">FIÈVRE À RÉFÉRER</h2> - - - <h2 style="background-color:#93C47E">PAS DE PALUDISME</h2> - - - <h2 style="background-color:#FEC002">PALUDISME SIMPLE</h2> - - - <h2 style="background-color:#FEC002">SUSPICION DE PALUDISME</h2> - - - Ce champ est obligatoire - - - a de la fièvre - - - Fièvre de plus de 14 jours - - - Ce champ est obligatoire - - - TDR est Négatif - - - Ce champ est obligatoire - - - TDR est positif - - - Ce champ est obligatoire - - - TDR positif dans les 15 derniers jours - - - Fièvre - - - Quel est le nom de la patiente ? - - - Date de naissance - - - Nom - - - ID du Menage - - - ID de la concession - - - Nom de l'ASC - - - Téléphone de l'ASC - - - ID du village - - - ID de patiente - - - Sexe - - - Nom Court - - - user - - - Source - - - Source ID - - - Contact ID - - - Nom - - - Téléphone - - - Role - - - Utilisateur - - - Non - - - Oui - - - Ce champ est obligatoire - - - grossit t-il? - - - Ce champ est obligatoire - - - <h2 style="background-color:#FF0200">Malnutrition Aigüe Sévère sans complications</h2> - - - Ce champ est obligatoire - - - Test d'appétit - - - Ce champ est obligatoire - - - Donner une solution d'eau sucrée à 10% (4 cuillère à café ou 4 morceaux de sucre pour 200l d'eau: 5ml par kg - - - Ce champ est obligatoire - - - Voici les quantités moyennes qu'un enfant doit prendre pour réussir son test de l'appétit - - - Ce champ est obligatoire - - - 1/2 ou plus du contenu du verre de thé n°8 - - - Ce champ est obligatoire - - - 1/3 ou plus du contenu du verre de thé n°8 - - - Ce champ est obligatoire - - - 1/4 ou plus du contenu du verre de thé n°8 - - - Ce champ est obligatoire - - - <h2 style="background-color:#FEFF03">Malnutrition Aigüe Modérée</h2> - - - Ce champ est obligatoire - - - <h2 style="background-color:#93C47E">Pas de Malnutrition</h2> - - - Ce champ est obligatoire - - - <h2 style="background-color:#FF0200">Malnutrition Sévère à Référer </h2> - - - Négatif - - - Positif - - - Ce champ est obligatoire - - - Quel est le résultat du test d'appétit? - - - Malnutrition - - - Conduite à tenir - - - Days old - - - Mois - - - Semaine - - - - - - - - - - - - - - - Sexe du patient - - - Sexe du patient - - - Sexe du patient - - - - - - - Quantité de ABENDAZOLE 200 MG COMP GRATUIT - - - Quantité de ABENDAZOLE COMP 400 MG GRATUIT - - - Quantité de AMOXICILLINE 250 COMP GRATUIT/MALNUTRIS - - - plaquette de 18cp comprimés - - - Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/18 - - - plaquette de 24cp comprimés - - - Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 - - - plaquette de 6cp comprimés - - - Quantité de ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/6 GRATUITS ENFANT < 5ANS - - - Quantité de ARTESUNATE SUPPOSITOIRE 200 MG - - - Quantité de ARTESUNATE SUPPOSITOIRE 50 MG - - - Quantité de BALEMBO SIROP ENFANT - - - Quantité de CARBETUX SIROP - - - Quantité de CARBOCYSTEÏNE 2% - - - Toux ou Rhume <i class="fa fa-cubes"></i> - - - Diarrhée <i class="fa fa-cubes"></i> - - - Equipements <i class="fa fa-cubes"></i> - - - Fièvre <i class="fa fa-cubes"></i> - - - Quantité de FER/ACIDE FOLIQUE GRATUIT POUR LES MALNUTRIS - - - Quantité de SRO GRATUIT - - - Quantité de ZINC GRATUIT ENFANT < 5 ANS - - - Quantité de GANTS EN VRAC - - - Malnutrition <i class="fa fa-cubes"></i> - - - Paludisme <i class="fa fa-cubes"></i> - - - Quantité de Paracétamol Sirop - - - Quantité de PARACETAMOL COMP 100 MG GRATUIT ENFANT < 5 ANS - - - Quantité de PARACÉTAMOL COMPRIMÉ 500MG - - - Quantité de PLUMPLY NUT GRATUIT POUR LES MAS-C - - - Quantité de PLUMPY SUP GRATUIT POUR LES MAM - - - Pneumonie <i class="fa fa-cubes"></i> - - - Quantité de SRO+ZINC (ORASEL….) - - - Quantité de SUPERCEREAL (CSB) GRATUIT POUR LES MALNUTRIS - - - Quantité de TDR GRATUIT - - - Quantité de CAPSULE DE VITAMINE A 100 000 UI - - - Quantité de CAPSULE DE VITAMINE A 200 000 UI - - - Stock livré - - - Date doit être avant aujourd'hui - - - Ce champ est obligatoire - - - Entrez la date où l'évaluation a été faite - - - Le patient s'est rendu chez l'ASC - - - Au cours de la visite à domicile - - - Autre - - - Ce champ est obligatoire - - - Comment a été retrouvé? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Non - - - Oui - - - Ce champ est obligatoire - - - L'évaluation a t-elle été faite aujourd'hui? - - - Autre - - - Téléphone Perdu - - - Téléphone Déchargé/Cassé - - - Ce champ est obligatoire - - - Pourquoi l'évaluation n'a pas été faite aujourd'hui? - - - Réalisation de l'évaluation - - - Signes de Danger - - - Toutes maladies qui durent 14 jours ou plus - - - Urine peu abondante couleur coca cola - - - L'enfant a-t-il convulsé ou convulse maintenant - - - Respiration difficile avec tirage sous costal ou sifflement - - - Œdèmes aux membres inférieurs - - - Pâleur palmaire sévère (Anémie) - - - Amaigrissement visible et sévère chez l'enfant de 2 à 6 mois - - - Enfant devient plus malade malgré les soins à domicile - - - Saignement spontané - - - L'enfant est incapable de boire ou de téter - - - Incapable de s'assoir ou se tenir debout - - - L'enfant est inconscient ou ne répond pas aux stimuli externes - - - L'enfant vomit tout ce qu'il consomme - - - Toux, rhume de plus de 14 jours - - - Diarrhée de plus de 14 jours - - - Fièvre de plus de 14 jours - - - Diagnostic <i class = "fa fa-stethoscope"></i> - - - Fièvre à référer - - - Présence de Fièvre - - - Présence de Paludisme simple - - - Suspicion de Paludisme simple - - - Paludisme en cours de traitement - - - Présence de Malnutrition Aigue Modérée (MAM) - - - Malnutrition Sévère à Référer - - - Présence de Malnutrition Aigue Sèvère (MAS) Sans complication - - - Autre problème - - - Fièvre Persistante - - - Présence de Toux/Rhume simple - - - Présence de Diarrhée simple - - - Présence de Diarrhée avec signe de gravité - - - Présence de Pneumonie - - - Résultat TDR: - - - La vaccination n'est pas à jour - - - La vaccination est à jour - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous référé? - - - INSTRUCTIONS SPECIALES<i class = "fa fa-hand-o-right"></i> - - - Faire l'enveloppement humide de , s'il peut téter ou boire, continuer à téter en route (ou lait exprimé à la tasse) - - - Conseillez la bonne pratique de l'allaitement. - - - Alimentez correctement l'enfant - -Revenez immédiatement si signes d'aggravation (enfant plus malade, respiration rapide) - -Revenez au bout de 2 jours si pas de complication - -Bien couvrir les enfants, surtout les tous petits - -Ne pas exposer les enfants à la fumée (cuisine, cigarettes, chicha, encens…) et à la poussière - - - Continuez l'alimentation. - -Augmentez les liquides à boire (ou le lait maternel en cas d'allaitement exclusif). - -Reconnaîssez quand revenir immédiatement au site (si l'enfant devient plus malade). - -Poursuivez le traitement même si l'enfant va mieux. - - - Donnez fréquemment des gorgées de SRO avec la tasse si pas de MAS, (même si allaitement exclusif) ; Si MAS, donner une solution d'eau sucrée à 10% (4 cuillères à café ou 4 morceaux de sucre pour 200ml d'eau). - - - Faites le lavage des mains avant la préparation et l'administration des médicaments - -Observer pendant 30 mn l'enfant pour s'assurer qu'il ne vomit pas les médicaments et reprendre au besoin - -Insister sur l'importance de donner le zinc pendant la totalité des 14 jours. L'enfant aura meilleur appétit et aura plus de force - - - Maman, à partir du 6ème mois en plus du lait maternel, donner des aliments de complément au moins quatre fois par jour - -Diversifier les aliments - - - Faire dormir sous moustiquaire impregnée insecticite (MILDA) - -Faire vacciner son enfant à bonne date pour sa santé - -Diversifier les aliments de l'enfant - -Avoir une bonne hygiène et faire le lavage des mains pendant les 4 moments critiques - - - Référer - - - Traiter à domicile - - - Ce champ est obligatoire - - - Quelle est la conduite à tenir? - - - Suivi <i class="fa fa-flag"></i> - - - La prochaine visite de suivi de référence est aujourd'hui - - - La prochaine visite de suivi est le : - - - La prochaine visite de suivi de paludisme est le : - - - La prochaine visite de suivi est le : - - - <h5 style="text-align:center;"> </h5> - - - <h4 style="text-align:center;"></h4> - - - <h5 style="text-align:center;"> </h5> - - - Référer au CSCOM <i class="fa fa-warning"></i> - - - Référer au CSCOM/ASC <i class="fa fa-warning"></i> - - - Détails du Patient <I class="fa fa-user"></i> - - - La prochaine visite de suivi vaccinal est le : - - - Balembo - - - Carbo Cystéine - - - Avec quelle médicament voulez-vous traiter ? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec du paracétamol? - - - Fièvre - - - Donnez du paracétamol 1 à 4 fois par jour - - - <b>Traitement Pré-Transfert</b> - - - Donnez du paracétamol - - - ¼ comprimé de 500 mg ou 1 cuillérée mesure de Paracétamol sirop (125 mg) - - - ½ comprimé de 500 mg ou 2 cuillérées mesure de Paracétamol sirop (125 mg) - - - Enveloppement humide en cas de forte fièvre. -Si l'enfant peut téter ou boire, continuer à téter en route (ou lait exprimé à la tasse ou donner de l'eau sucrée. - - - Lequel ? - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec de l' Artemether 20 mg – Luméfantrine 120mg/ comprimés? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité la toux/rhume? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec du SRO? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec du ZINC? - - - Traitement Pré-Transfert - - - Ce champ est obligatoire - - - Quelle quantité? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec de l'Albendazole? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec du fer + Acide Folique? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec l'Aliment Therapeutique Prêt à l'Emploi (ATPE)? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec de la Vitamine A? - - - Aliment Therapeutique Prêt à l'Emploi (ATPE) - - - Traitez avec du Super Céréale (CSB) -Donner 295g par jour à l'enfant soit 2065g par semaine (4,13kg pour 2 semaines - - - 1/2 comprimé/ Semaine pendant 2 mois si l'enfant a moins de 10 kg - - - 1 comprimé/Semaine pendant 2 mois si l'enfant a plus de 10 kg - - - <b>Malnutrition Aiguë Modérée (MAM)</b> - - - Traitez avec de l'Albendazole - - - 1/2 comprimé de 400ml ou 1 comprimé de 200mg en une prise - - - 1 comprimé de 400mg en une seule prise - - - Traitez du fer + Acide Folique - - - 1/2 comprimé/ Semaine pendant 2 mois si l'enfant a moins de 10 kg - - - 1 comprimé/Semaine pendant 2 mois si l'enfant a plus de 10 kg - - - Traitez avec . -Donner un (1) sachet par jour à l'enfant soit 7 sachets par semaine. - - - Traitez avec du Super Céréale Plus -Donner 200g par jour à l'enfant soit 1400g par semaine (2,8kg pour 2 semaines) - - - Donnez de la Vitamine A - - - Donnez la première dose le même jour et remettre une dose à la maman pour administration à la maison le lendemain - - - 1/2 capsule de 100 000 UI - - - 1 capsule de 100 000 UI - - - 2 capsules de 100 000 UI - - - Non - - - Oui - - - Ce champ est obligatoire - - - a t-il reçu de la vitamine A les deux dernières mois? - - - Plumpy Sup - - - Supercéréale (CSB) - - - Super Céréale plus - - - Ce champ est obligatoire - - - Avec quoi voulez- vous faire le traitement? - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Toux/Rhume Simple - - - Donnez 1 cuillère à café de Balembo 2 fois par jour - - - Donnez 1 cuillère à café de Balembo 3 fois par jour - - - Donnez 1 cuillère à café de Carbo Cystéine 3 fois par jour - - - Diarrhée simple - - - Traitez avec du SRO - - - 50 à 100ml après chaque selle liquide (1/2 ou 1 louche SD) - - - 100 à 200ml après chaque selle liquide (1 -2 louches SD) -Si vomissement, attendre 10 min puis redonner - - - Traitez avec du zinc - - - 1/2 comprimé de 20mg pendant 14 jours - - - 1 comprimé de 20mg pendant 14 jours - - - Paludisme Simple - - - Artemether 20 mg – Luméfantrine 120mg/ comprimés -1 comprimé Matin-Soir pendant 3 jours - - - Artemether 20 mg – Luméfantrine 120mg/ comprimés -2 comprimés Matin-Soir pendant 3 jours - - - Administrez un suppositoire d'Artesunate de 50mg - - - Administrez un suppositoire d'Artesunate de 100mg - - - Administrez un suppositoire d'Artesunate de 200 mg. - - - TRAITEMENT <i class="fa fa-medkit"></i> - - - Suspicion de Paludisme - - - Ce champ est obligatoire - - - Lequel avez-vous donné? - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec de l'amoxiciline? - - - Pneumonie - - - Traitez avec de l'Amoxiciline 2 fois par jour pendant 5 jours - - - 1/2 Comprimé de 250 mg Ou 1/4 comprimé de 500 mg Ou 1 cuillère à mesurer de125 mg - - - 1 Comprimé de 250 mg Ou 1/2 comprimé de 500 mg Ou 2 cuillères à mesurer de125 mg Ou 1 cuillère à mesurer de Sirop 250 mg - - - 1+1/2 Comprimé de 250 mg Ou 1 comprimé de 500 mg Ou 3 cuillères à mesurer de125mg Ou 1+ 1/2 cuillère à mesurer de Sirop 250 mg - - - 2 Comprimés de 250 mg Ou 1 comprimé de 500 mg Ou 4 cuillères à mesurer de125mg Ou 2 cuillères à mesurer de Sirop 250 mg - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Non - - - Oui - - - Ce champ est obligatoire - - - Avez-vous traité avec du Plumpy Nut.? - - - <b>Malnutrition</b> - - - Malnutrition Aiguë Sévère (MAS) sans complication - - - <b>Aliment Therapeutique Prêt à l'Emploi (ATPE)</b> - - - Traitez avec du Plumpy Nut. - - - *Si Poids entre 3 – 3.4kg* -Donner 1/4 sachets/Jour ou 8 sachets/semaine - -*Si Poids entre 3.5 – 4.9 kg* -Donner 1/2sachets/Jour ou 10 sachets/semaine - -*Si Poids entre 5.0 – 6.9 Kg* -Donner 2 sachets/Jour ou 15 sachets/semaine - -*Si Poids entre 7.0 – 9.9 kg* -Donner 3 sachets/Jour ou 20 sachets/semaine - -*Si Poids entre 10.0 – 14.9 Kg* -Donner 4 sachets/Jour ou 30 sachets/semaine - -*Si Poids entre 15.0 – 19.9 kg* -Donner 5 sachets/Jour ou 35 sachets/semaine - - - 1/2sachets/Jour ou 10 sachets/semaine - - - 1/4 sachets/Jour ou 8 sachets/semaine - - - 2 sachets/Jour ou 15 sachets/semaine - - - 3 sachets/Jour ou 20 sachets/semaine - - - 4 sachets/Jour ou 30 sachets/semaine - - - 5 sachets/Jour ou 35 sachets/semaine - - - Ce champ est obligatoire - - - Quelle quantité? - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Autres - - - Rupture de stocks - - - Ce champ est obligatoire - - - Pourquoi ? - - - Ce champ est obligatoire - - - Précisez (Autre) - - - Résumé - - - REFERER AU CSCOM - - - Mettre en observation - - - Quelle est votre conduite à tenir (CAT)? - - - Préciser TOUT AUTRE PROBLEME - - - Conduite à tenir - - - Non - - - Oui - - - est-il venu avec son carnet vaccination? - - - Non - - - Oui - - - Ce champ est obligatoire - - - BCG - - - Non - - - Oui - - - Ce champ est obligatoire - - - Men AfriVac(Méningite) - - - Non - - - Oui - - - Ce champ est obligatoire - - - PCV13_1(Pneumo1) - - - Non - - - Oui - - - Ce champ est obligatoire - - - PCV13_2(Pneumo2) - - - Non - - - Oui - - - Ce champ est obligatoire - - - PCV13_3(Pneumo 3) - - - Non - - - Oui - - - Ce champ est obligatoire - - - Penta 1 - - - Non - - - Oui - - - Ce champ est obligatoire - - - Penta 2 - - - Non - - - Oui - - - Ce champ est obligatoire - - - Penta 3 - - - Non - - - Oui - - - Ce champ est obligatoire - - - Polio O - - - Non - - - Oui - - - Ce champ est obligatoire - - - Rota 1 - - - Non - - - Oui - - - Ce champ est obligatoire - - - Rota 2 - - - Non - - - Oui - - - Ce champ est obligatoire - - - Rota 3 - - - Non - - - Oui - - - Ce champ est obligatoire - - - VAR 1 - - - Non - - - Oui - - - Ce champ est obligatoire - - - VAR 2 - - - Non - - - Oui - - - Ce champ est obligatoire - - - VPI 1 - - - Non - - - Oui - - - Ce champ est obligatoire - - - VPI 2 - - - Non - - - Oui - - - Ce champ est obligatoire - - - VPO 1 - - - Non - - - Oui - - - Ce champ est obligatoire - - - VPO 2 - - - Non - - - Oui - - - Ce champ est obligatoire - - - VPO 3 - - - Non - - - Oui - - - Ce champ est obligatoire - - - VAA(Fièvre Jaune) - - - Ce champ est obligatoire - - - a t-il reçu les vaccins suivants: - - - La vaccination n'est pas à jour - - - La vaccination est à jour - - - - - - Vacciné contre la BCG - - - - - - Vacciné contre la Men AfriVac(Méningite) - - - - - - Vacciné contre la PCV13_1(Pneumo1) - - - - - - Vacciné contre la PCV13_2(Pneumo2) - - - - - - Vacciné contre la PCV13_3(Pneumo 3) - - - - - - Vacciné contre la Penta 1 - - - - - - Vacciné contre la Penta 2 - - - - - - Vacciné contre la Penta 3 - - - - - - Vacciné contre la Polio O - - - - - - Vacciné contre la Rota 1 - - - - - - Vacciné contre la Rota 2 - - - - - - Vacciné contre la Rota 3 - - - - - - Vacciné contre la VAR 1 - - - - - - Vacciné contre la VAR 2 - - - - - - Vacciné contre la VPI 1 - - - - - - Vacciné contre la VPI 2 - - - - - - Vacciné contre la VPO 1 - - - - - - Vacciné contre la VPO 2 - - - - - - Vacciné contre la VPO 3 - - - - - - Vacciné contre la VAA(Fièvre Jaune) - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - La date doit être entre la date de naissance et aujourd'hui - - - Entrez la date à laquelle le vaccin a été administré - - - À la maison - - - Carnet perdu - - - N'existe pas - - - Ce champ est obligatoire - - - Pourquoi ? - - - Suivi Vaccinal - - - Non - - - Oui - - - Ce champ est obligatoire - - - a t-il reçu la vitamine A les six derniers mois? - - - 1 dose de 100 000 UI - - - 1 dose de 200 000 UI - - - 1 dose de 50 000 UI - - - Ce champ est obligatoire - - - Quelle est la dose reçu ? - - - Vitamine A - - - 1/2 comprimé de 400mg - - - 1 comprimé de 200mg - - - 1 comprimé de 400mg - - - 1/2 comprimé de 250 mg - - - 1 cuillère à mesurer de125 mg - - - 1+ 1/2 cuillère à mesurer de Sirop 250 mg - - - 2 comprimés de 250 mg - - - 4 cuillères à mesurer de125mg - - - 1 comprimé de 500 mg - - - 2 cuillères à mesurer de Sirop 250 mg - - - 1/4 comprimé de 500 mg - - - 1 comprimé de 250 mg - - - 2 cuillères à mesurer de125 mg - - - 1/2 comprimé de 500 mg - - - 1 cuillère à mesurer de Sirop 250 mg - - - 1+1/2 comprimé de 250 mg - - - 3 cuillères à mesurer de125mg - - - 1 comprimé de 500 mg - - - REFERER AU CSCOM - - - Mettre en observation - - - 1/4 comprimé de 500 mg - - - 1 cuillérée mesure de Paracétamol sirop (125 mg) - - - 1/2 comprimé de 500 mg - - - 2 cuillérées mesure de Paracétamol sirop (125 mg) - - - Vert - jr://images/green.jpg - - - Jaune - jr://images/yellow.jpg - - - Rouge - jr://images/red.png - - - Amoxiciline - - - Sirop Balembo ou carbocystéine - - - Miel au citron ou et infusion de feuille d'eucalyptus - - - Autre - - - Aucun - - - Balembo - - - Carbo Cystéine - - - Yeux enfoncés - - - Asoiffé pli cutané qui s'efface lentement - - - Aucun - - - SRO - - - Zinc - - - Autre - - - Aucun - - - Antipyrétiques/Paracétamol Comprime 500 mg - - - Antipyrétiques/Paracétamol Sirop à 125 mg - - - Aucun - - - Autre - - - Téléphone Perdu - - - Téléphone Déchargé/Cassé - - - Autre - - - Référer - - - Traiter à domicile - - - Carnet perdu - - - N'existe pas - - - À la maison - - - Au cours de la visite à domicile - - - Le patient s'est rendu chez l'ASC - - - Autre - - - 1/4 sachets/Jour ou 8 sachets/semaine - - - 1/2sachets/Jour ou 10 sachets/semaine - - - 2 sachets/Jour ou 15 sachets/semaine - - - 3 sachets/Jour ou 20 sachets/semaine - - - 4 sachets/Jour ou 30 sachets/semaine - - - 5 sachets/Jour ou 35 sachets/semaine - - - Positif - - - Négatif - - - Rupture de stocks - - - Autres - - - Positif - - - Négatif - - - Plumpy Sup - - - Super Céréale plus - - - Supercéréale (CSB) - - - 1 dose de 50 000 UI - - - 1 dose de 100 000 UI - - - 1 dose de 200 000 UI - - - Oui - - - Non - - - - - - - - - - - - - - - - - - - - <_id/> - - - - - - - - <_id/> - - - - - - - <_id/> - - <_id/> - - <_id/> - - - - - - - - - - - - - - 0 - 0 - 0 - - - - - - - - - no - no - no - no - no - no - no - no - no - no - no - no - no - no - no - no - no - no - no - no - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 60 - - - - - - - - - - - - - - - - - - - - - - - - - - - 900 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_id/> - - - - 0/0 - 0/0 - - - 0/0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - static_instance-yes_no-0 - yes - - - static_instance-yes_no-1 - no - - - - - - - static_instance-followup_not_done_today-0 - phone_lost - - - static_instance-followup_not_done_today-1 - phone_unavailable - - - static_instance-followup_not_done_today-2 - other - - - - - - - static_instance-color_shakir_band-0 - green - - - static_instance-color_shakir_band-1 - yellow - - - static_instance-color_shakir_band-2 - red - - - - - - - static_instance-patient_found-0 - home_visit - - - static_instance-patient_found-1 - came_to_chw - - - static_instance-patient_found-2 - other - - - - - - - static_instance-cough_cold_treatment-0 - amoxicillin - - - static_instance-cough_cold_treatment-1 - balembo - - - static_instance-cough_cold_treatment-2 - lemon_eucalyptus - - - static_instance-cough_cold_treatment-3 - other - - - static_instance-cough_cold_treatment-4 - none - - - - - - - static_instance-fever_treatment-0 - para500mg - - - static_instance-fever_treatment-1 - para125mg - - - static_instance-fever_treatment-2 - any - - - static_instance-fever_treatment-3 - other - - - - - - - static_instance-tdr_result-0 - positive - - - static_instance-tdr_result-1 - negative - - - - - - - static_instance-diarrhea_treatment-0 - sro - - - static_instance-diarrhea_treatment-1 - zinc - - - static_instance-diarrhea_treatment-2 - other - - - static_instance-diarrhea_treatment-3 - none - - - - - - - static_instance-dehydration_sign-0 - sunken_eyes - - - static_instance-dehydration_sign-1 - thirsty_skin - - - static_instance-dehydration_sign-2 - none - - - - - - - static_instance-positive_negative-0 - positive - - - static_instance-positive_negative-1 - negative - - - - - - - static_instance-cat-0 - cscom - - - static_instance-cat-1 - observe - - - - - - - static_instance-reason_no_medicine-0 - out_of_stock - - - static_instance-reason_no_medicine-1 - other - - - - - - - static_instance-vitamin_a_dose-0 - 50kui - - - static_instance-vitamin_a_dose-1 - 100kui - - - static_instance-vitamin_a_dose-2 - 200kui - - - - - - - static_instance-therapeutic_treatment-0 - plumpy_sup - - - static_instance-therapeutic_treatment-1 - super_cereal_plus - - - static_instance-therapeutic_treatment-2 - super_cereal - - - - - - - static_instance-medicine_cat-0 - cscom - - - static_instance-medicine_cat-1 - home - - - - - - - static_instance-cough_cold_treatment_cscom-0 - balembo - - - static_instance-cough_cold_treatment_cscom-1 - carbo - - - - - - - static_instance-no_vaccination_card_reason-0 - lost - - - static_instance-no_vaccination_card_reason-1 - no_card - - - static_instance-no_vaccination_card_reason-2 - at_home - - - - - - - static_instance-amoxicillin_treatment-0 - 6 - 1_2_tablet_250 - - - static_instance-amoxicillin_treatment-1 - 6 - 1_spoon_125mg - - - static_instance-amoxicillin_treatment-2 - 6 - 1_4_tablet_500 - - - static_instance-amoxicillin_treatment-3 - 9 - 1_tablet_250 - - - static_instance-amoxicillin_treatment-4 - 9 - 2_spoon_125mg - - - static_instance-amoxicillin_treatment-5 - 9 - 1_2_tablet_500 - - - static_instance-amoxicillin_treatment-6 - 9 - 1_spoon_250mg - - - static_instance-amoxicillin_treatment-7 - 13 - 1_1_2_tablet_250mg - - - static_instance-amoxicillin_treatment-8 - 13 - 3_spoon_125mg - - - static_instance-amoxicillin_treatment-9 - 13 - 1_tablet_500mg - - - static_instance-amoxicillin_treatment-10 - 13 - 1_1_2_spoon_250mg - - - static_instance-amoxicillin_treatment-11 - 18 - 2_tablet_250mg - - - static_instance-amoxicillin_treatment-12 - 18 - 4_spoon_125_mg - - - static_instance-amoxicillin_treatment-13 - 18 - 1_tablet_500mg - - - static_instance-amoxicillin_treatment-14 - 18 - 2_spoon_250mg - - - - - - - static_instance-chw_fever_treatment-0 - 12 - 1_4_tablet_500mg - - - static_instance-chw_fever_treatment-1 - 12 - 1_spoon - - - static_instance-chw_fever_treatment-2 - 60 - 1_2_tablet_500mg - - - static_instance-chw_fever_treatment-3 - 60 - 2_spoon - - - - - - - static_instance-plumpy_nut_medicine-0 - 1_4_sachets - - - static_instance-plumpy_nut_medicine-1 - 1_2_sachets - - - static_instance-plumpy_nut_medicine-2 - 2_sachets - - - static_instance-plumpy_nut_medicine-3 - 3_sachets - - - static_instance-plumpy_nut_medicine-4 - 4_sachets - - - static_instance-plumpy_nut_medicine-5 - 5_sachets - - - - - - - static_instance-abendazole_qt-0 - 12 - 1_2_tablet_400 - - - static_instance-abendazole_qt-1 - 12 - 1_tablet_200 - - - static_instance-abendazole_qt-2 - 60 - 1_tablet_400 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/PLACE_TYPE-create.xlsx b/test/project-config/forms/contact/PLACE_TYPE-create.xlsx deleted file mode 100644 index cf3841d266c32a85d56c492ac4a1a90e7458079a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23953 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 diff --git a/test/project-config/forms/contact/c50_supervision_area-create.xml b/test/project-config/forms/contact/c50_supervision_area-create.xml deleted file mode 100644 index 610abec..0000000 --- a/test/project-config/forms/contact/c50_supervision_area-create.xml +++ /dev/null @@ -1,250 +0,0 @@ - - - - New Supervision Area - - - - - Supervision area name - - - - - - - Email - - - First name - - - Last name - - - Put "11111111" if no number is available - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - ADC (OCA Coach) - - - Supervisor - - - Role - - - Username - - - Health area name - - - District to which the health area belongs - - - - - Nom de la zone du supervision - - - Entrez une adresse email valide(ex. adrien@health.org) - - - Adresse email - - - Prénom du Superviseur - - - Nom du Superviseur - - - - - - - Si le numéro n'est pas disponible, mettre "11111111" - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - ADC (OCA Coach) - - - Superviseur - - - Role - - - Nom d'utilisateur - - - Nom de l'aire de santé - - - District d'appartenance de l'aire de Santé - - - - - - - - - - - - - - - - - - - - - - PARENT - - - - - - - - - - - - - - - - - - - - - - - PARENT - contact - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c50_supervision_area-edit.properties.json b/test/project-config/forms/contact/c50_supervision_area-edit.properties.json deleted file mode 100644 index 820174a..0000000 --- a/test/project-config/forms/contact/c50_supervision_area-edit.properties.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": [ - { - "locale": "en", - "content": "Edit supervision area" - }, - { - "locale": "fr", - "content": "Modifier zone de supervision" - } - ] -} \ No newline at end of file diff --git a/test/project-config/forms/contact/c50_supervision_area-edit.xlsx b/test/project-config/forms/contact/c50_supervision_area-edit.xlsx deleted file mode 100644 index dc7eb93be501cff9f9076ed9cac38421b67edd41..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19526 zcmeIa1yml(5-y5_;10npxLXMB?(QDk-Q8V(+}+)s1b26LmjJ=-vU6nbowLt-cfEJ- zU3aZ>1{kJ$roQQ}sp_uou4)-^(03?6?|~qIfPe^qs3>83eSm?0(%%CCAp=2xsPkJ{ z+8bEfYb&@|8`x>mI9r(G=ez?U%K`#GscK5@KiV9&)~S3 ziFl%MtTsUCpE0YB&Cms!qzlvUl_HVh^2>;ad8iiX#ix*zzLx zHr>5FhD~eah50u4!Ga2Am7c(bj{?yu(NjE2dD4%m6Vc5*s-Kk#deizdhYz5EfL>og zfn@%qxyV`_1|V;myZ)w_&~KWnZEIj|M@#eD`M(cdyq4!%Azu6J23*&)N~a8$; z!|7I~F7fB4CU8W6tx&{?NSDt?^OEDzYsLtQ-Ry;HuF$fr9Df?(S8sF&VWnPQ&Sni0 z7L|BgbhRI1@Fm0=@w+&I>zFd5pL)kcAlU6dbGYu>?%O^yOIDf;yIKwA6H-PO2#iIm z-bF9+9bGZyC}rmpeXH^uIt(6q{HONz!j5M}Z^YF%ne^r_Ap@^P(P#_>WNFX5iwtU!$3s@;dJ%|&^eB&hsV#&~l0u*V9 z2~E-&3x>LE&6gX+x+rV;A$Ew-KMu1P=<%k;Dwcr8l;J}i%(H6Gxz)vLfhZ&0&ru;cxv}!iuT_pu6O#>-&;+iVjp4e& zTmH~TO0baDzrjE>A8X$000&=|_bRIN0zB*m-hHE;s~fFU8V}@qEBfjD>nOcd1*2Bg zzEsP5RT{5oIinJ~2;UjgSliyIiIZ-bvc*Av^90#$XcY&J6Bvo(J^X!elRPRy$?O9B z9Zn8~z;k#UX?0&Zp@1(nA47X{rJvK)kxZR(h3 zW~(Le%D?D;WUY!&IaYY~qIdF@3FBn;F)I)FwsD(%U;|l|my4I_uwuoEK)2~uO%`Kg zUR(A=7}1fG%mxX**@IhXl1xfwNAS$}lgO6m&g*-lJUkg*%=q)XoNWGSFwHdTRlukx z*fMYTv=e6M$!dW8YxZL0^Bml<2$qjAOrj*~rdQ?#Yjfts-U zayy1|W4mnqwF0wkZ-X_&fk*48x5)rcC;wW33cI_xr22IijXNE<61d%duFGhgFJNz> z!%2VL46M#bP?R^D!(sjs{mU|jDRhIZQ@yEM5e(d#@EU%N8$Wn6q*QcR(C5&P>w;@6 zhb|r*k)&EV_1RGsI=P6o(q|%|r5-7Wvpn@jd=~vamVnh0U4~;4#~4oX{0*Bj%|*^< z?LcXSDql_GG!AWJ^w*}$HEm-z=H!kJqD0K7v)l_~Bdce6whu(#S=>C>vT+5haLEpFVjn+~S$+^^kl(!(a!QWL|$bpicHivzrlIWe5%iH?ic)M zk}JJP*ZM7gO&j-99qc2YbbT#I4G~zN607F2*w_BUYfJEO-#WF=V>#ZqkZ`@Hqc5;n z7+b^)4#HF=Do8qf2N^7+237HKO>h=vabt}PJrl}pfFml(9hVf#=GRi-UI_qBJ&@N7 zmQGyd+YHk9MGo2C~qg5GR)E zGNhpdHSdn{nMlVwfF=fsy6<8IB)^dB%=x!|#Viwn+8;-#ZOEV*>+wJKCTB=zr@y z(iAPMQt1$0xJ+Jw@7;hw2@nF5WOGg93yMu|Z)Sl3Dqth#g`#Yyo#*CshjZk*<#K1f z&m8-$Zez*Xr^iDsIeZLj`Vg&Lw#I-fU#4Rik9&8!7<^%hDU`e|*wG0eF?)ymmsR)v z-rNtu=6o|P8eUd3n^Le0?F$0*Do z`s2B+CCZQZ$#nNk_VKiNc-GMdI{w;?xWL2gf;NJgikYz+;tNtFuWN- zYrO-qZOZ>v-gGxRF^NNavBhmKh1{jvc}-KrA^9L>^7Of)d#{oRQF` zq?6RQI*CLz1=Tu|@^eN4{~BvW9CxkWInm9I|LH5xx0|o{T#(+F7(gn}!7KPuqy${Z z6h|>Srx<$7Y*BviBm}BBX>6W}By+4?*_cIofW9qxFT6hyTbR{ZItMkoz0VB=XKsW9 zngiiy{${h2Ny%Q+i~sFr0D;XqM;e`^{J09YxdN~`lPggrI1gGK4WMprk-i&X#M%|T{>o+C3C5$Y+0tj_TFkx89 z{?W`?1dTSoV3O@n6kH}mY(-$S{^0B`Pr9P6c|Z0YH!-=4W=GFAo9gxTO*dX&%U0BD zr{^&GE-JfDN^eMd*532IPr8_Epgwl5gL8_DEkKiG^C>uOtn`;M0+I}2AUvIxZo%iB?JUw0AJ6kOD>UiCizt!em^YXeq*&ko^I_+5Q zXmY#R)XwC3eSp8+UVps-JI{DFs&#wa?C*TJz1S{<$MZV$UH5W&-8x%Mg@5LI^vtI{ zc6jYBlzIbsPTlY9bh~=$PIA`yqDP8N(%`sdBVvA@F^}XMm;*Ahqoo9Zd z(<-?A3xs)|8$2Z}n5Ai+ zLUmR>R{kB+tAc?Qj)2@Q(Qk?@l+I8cd|3z-0#Ma_InfmQP|bYVG87sp6ai}4vc{-4 zZUdnDYf|NNXNIJ0p2V$=>difzWdb`$`!F%3^{F52PEjJENWqjh%QndGpnUj>5XgI= zLimO{UzKPsl5qi)C{X!bg4uFKsF(ptx}8Dc?3NkZ;o%OE#}#qREtfZx9{ItPi1!IQ zZ*YQXAMFrP{~cThv7xI(g$!976k32-wvsW5TEH{zB~UW6%6RZ(CKS1r~}l6pesd-@*;bcTm}Uc?gt5P~@*K>g}kLdbR<4*$Pc$3Q+ZYxf2v8 zx6$Cidch8S?$<#bKdwyjyJY8i7c9F40frAnb0Qi<#D}6_C58xqC2u9fg)*8LN3L*KcGJI1y9c{09 zs5vB=X~a~%6>o1pPPu>WH`dlVJ6&x^ts2QrOj3o1cG#aZAV|-PfNsxl`c5}gQz$%O zl3=h~9)6*L?GWgUfQQ7xC-N?Y0Fo#`KN?$(M{EF0j@MKK)P!I)&uMAq@L@W_l{Zq< zQTlQ5A_BJ*M$fpmP`!A*J22TTy(J>~mY?ed3KGi9X%EnX^P?Q<9Na~KAPEqO0*RtgVtH*vfXNBaM8Jv(VDkd( zsb`t1&BzDn2Q5vw?K)(|gD&bFc>B9+N5u}bg!0Ewjshc?BF zY(c$%zE>lH#J}+52}*+haLT- zB$}Z$*|l}aqr~s?yisC5%1MZckdxOA(C~1}waWqr9+oM3yI~A)o6qqv#5xvC*oNJU zuti7aArBI#i{cKFf!KHQ=J+>fh9*_W z)#E6FKAG3jLYI8yyTi${U1leupL7f!Y*$D7e3_?T#(Q2 z|4{@+6rY^PZzmc=j*li9N{$~>1p07H;Gx6ONesWAsI}?Y{933Nr?1Y?=Dyv8m@t>z zh*3WQcxsz$@3hr0lI7@~4S`WG_yxf?s^NV@QoRraVZmthSROf%_k#prdHx#ssCj{( zqCZT<%QY5K5)UjHKL%Cqjl7u5e>-I!IZ%!7!4E4 z42`3rf_;NvV-!CO_6huQS{nshOH%QmVaRe9r) z=l=O2`d|StxqR5DKN&Z#B_7y_5jpgyk1?yzSXfFvu;ltyM$j12IeX_hoA!c{lOG)& znZ8cipd%@8U*;4Tg|Quco1z(e{O+Q467maZe{|sfKY!gf2Ik*m?}y}L2cFK04~{^u z%)?{U#`z`X&y3iV+Wr&lLvEbyGTK(rUpGy1Z%tGFySJt(zipL2@$`FM&qG3pml3DI zo-oa}tRYxXxav3Fk>SQ6$m7444hV_wuO%6((8@!ZC0Z|5vuT-=a;buYl5ewMM2^LS z>pM$@-Ulhhe)?L4@Bgn~0X1^mS>#RFHZ5<%3p7dC*A=m#%Id&sf(_Vc$!BcGD8kx;M9J}^nL;Vr%{(DJ1O-xMtq7Nz^iHqXW)^{ z7lkl^$A70CT`z?d)0cbrjM#(V%Gn09> z9j}9gygxN~;=yGu-!wz-sbEra(+tSu|M^VYdi8@16HF5SjvLs|x`*S&n?^s}$^@P;` zIPd9$@a8rojr;oq-p!J30%Et$bEd0Craji8dznZjY{%C^wEJ;okN$er!HsMmUFB`Y zVHxJ%4iOoC4iV!tt(JaUK_NZm7U&=i;fKKcsGwN-+Za);^>m4aR0pv?*#gS`$ZNeC znG9KtH{$E(>h=A!c`ifO`gq0fFiQ}M`~HFSkXd^r2-hD;xiijO36ao;k9-wN0@F^u zMwc$`OHW5kQP#ez0!A_g0P^cci9%ttef3EcU}sq5DX5csGhGprg+M9WM3iKa`c;XN zi$ukf4#d$*sKA2Md*_i%m-#*^jC^@9B*&~R6!nCZVrW-m=B&{73vMp*Uv(jaB+6W& zHO*ga<6BoxVZb$K@sp{l`jAeu5|hS*b5;6N5``Dhdy;^+EYktVGyT-4j#fPjRfx z1%Sdhf!gBA%uJBad&bypWW;!^r5mY~O;F;jeR7V1Y|5s)3F~^_(VJmQ2^Kg%JI^$Q zzEfh-&aPvY$v(ogV6^OI{rRt!lclB8^0zutS8=0Vg)m-6IJAmy~ z7_qYIj+hj%x3=L}V{f@i+~WlYi!;|;JU6`p>-lnsB-IUUSy0+1THOlPeSw)(UBzv! zQ9 zGIEbH7XC|)x9Q|{aCRb(TUhrTFZ>*x8=v}HEZb|SHTP{j6KSAxkcwTXrD5As%%EZ- zsoNPyQbhBP%1y>;d7qztLjU)1| z20VlpDH??cbdVPgAB>hkGhp2#i~A`3#z!*eQRnJW2kMb7AsGsqKB3w_;DEs|*RXq_ z1<%gR4Rp)z9X`Rp2YqlPpA+6M(eH@B26=3wK}Eg|XL&tDHOs%6PkB8@>Dx;lc$r61 z|5!J;dnpW^@Zt_U#_IuxREeGQy=%^ZIs7N>>q zuzKR)Q^waK{TyabI@s7a@irs$4^G=hNW%H@zz9`N{QzPRxFAJTvScF3(3t><;33U7 z-a5n)5m{MKTz{PM?B6hBb1QGg%gP_JwJ*i-wOyrZ6-}}TlnG6?hi2Nr%R@FWX>nR) zNbUZRja2QWD~DaUhP8;E^#$hy^Mb)~*WCwyXeO08fvX?i^k@+w<$xQ>?*@gXzupdl zR&M(-Dr6kccwlE7Tz2=i^!Kl;90*L-;(Tw*8%dDB|8ByH@n>rU(0rS)`de#+zYb2P zEh;0TSY9%hYNB>aa5_d$qVg?iaZH%`y7PR2M~+-ADAZez?))l44^N4ibkZ5T;8UW7 zPZi$BsCtEjw$%>@%kz(mATCSM4MY*Ld?gv=SsrGjxB~G&OF8rKBjst91x$% zlkt}lam;iJV#N?ZqfD_5r0C_?VvK#sU}|{~)^akUOUYqW71L_iMQ?rU3xdez5J2yb zQ=DA$Albl3gO^TQG2(MTdjgqPI9SOp-;Lrmlq={@^Q@AlAsnTnq#vqDP6 z&(tt*Mf-8>A73VZW5E9*(Nf`s^q$n`3%Dioci+&p1SF~PvICH?b%^0Hx>gN}^{W~l zuddA`-kzHeV|)i-%$WNbldg)k3%cs@g(`|!>S?b%bWy(7L-i9*W04QN3yk_#1DHav zpjhE;>vEyOVwg9BH#(r_Jg18tt0K*{m*97F?DDQc`n&|IDd?ixPpq}`F1d0S++xwq)0@SXeC;}s@|8-OA-x%n<< zBDhASX>eRl&47h|@N80{iFJlUZY!-pM5pVV1Hab?3v8+xCIeNhxnBbFw$ z5?X6!eB3;f^iG^F8EamiSnG?DYparL%aUvBk{Kr?cyGUF zBzUJJc;_UUCnT9?B+^cRaYw+o6M)tcK0u*VQK%lG1La z(R$RcH<^rzPqy8!GdZ+wZM)ETEit^_>?|(QKL$y!KU^MC;sSdtS=6p)jZoKUL>}bb*>n^7#zR8dL3K`(QeFf;B-3B^v_dUuz8jy zN3MgsoZek5J+0%lyu93(s@K{-C6MEEYJS4;x}JD$XnZZ{T*md9UAKtpJUUP4Z!CSW zbbC_tYUIRyG+WT_erZ_WF6skPIH}b0!uea)`y1w} zPM>Gk6Du7r&_}F=^{+2Kv%bE7JVKw)R(1aAB6VTC=Y`~kxwdu}Qq(|{zE;Z`awX9~I0`u2vUQr?n7$E11T%1H`im2=-@)8ok#k`_almI}Etz4W`=#r=` z2YCsp;C)_ECJI7T%1B^ikPedc?pG}YJO2EN1`Hv@`mXLo^YPZ=wH4qg470zFR|6iH;i7BC=Z)!#*1yfvJ&%~5UG9tgY z`u}@o#QL82PXy0GTF+8i&q`X)T3XLWTF+M6|Ftjr|5?s|B|kK!(u~M2t+r=MsOX!T zRcXN#SJwMqpSjPe=q!)ArWnwuc;TUFuZOy(8qlb;*{C_lDcV&Z~s46 zIPs!tf6V_oP92fNGb(%$|Hn=SCDjs43B`R3vnmCc!wP!Ird09~|9P2m5yZ19|B?2m;eCc3> zwDS)^2ZFbxK{Q-S=`SGPe`tU>u0fS_cLj$GVZJHZXE*7bI?kYB`!OeoUIc)e-Sb8; zx0=&jpf&NCsDg;1#F&DIVnlWEROn@EoyN`9OYmYS9d5prVsJSy54II|PVX~p=Go90 z4EZoz(Z$;;Y+g_L4$u<>z!+OoYEp#S6y!C31mvABrgk%8ek|_%S-@W%a=)P=bV$8T zn)c!U=1Tw5QN-TZz`}s`=lQ3P$cgG`7#1^1C)xuyjGfaH({>c`+Qzs!V3kNeJr29R z;Y3!6ks-DX3mJr%^;(WBFF%pbiZgDC2NbsbM-(Jc-67s2>F5Gs`7TkaxtN+GY?$y% zdtu>ihNtV5{l!#!lB;kMbXRPGc8AO*XIl6|647*mml+G$CwFO)xNt-RNXvU@sweT~ zOix=xi$RF~1<-o|^XvpXQPyRO54{k9F->0$S$x(>!uv(K2s1zQW8?U(C4HdGmn%mn zjJ?zH{UYP$!9YNG0vj*pnmeIPfG7q!at;*+$!yncrv^8s+aY~{B=Cc&Mssiy~ zS~disD|yMeG`fS*4GWEq=d)0>)w}1#Pqkzkf0)S#h}t#<(gf6-IyEn$>USMPBCo;t z@wUg3kIP2GmY>OQ?Kg-c<`fW8ebv29YBY-5TtLk)D94X$m7_-RM~+o`yiO3Pd8& zX;L7E6;r&c;ekxFtBTy!_d0l=kcMGuoPV=gaq_3+BTa(u=O1&Zqm~#Lm|Xw(F{`6;#>| zkITzL0NT38^}ciz&eAeAPSSURkm~Ohn|kLYVY)tWj~Bq)={i9=p4ppaJ%h)P?U~L?oW{WL&7tKVG$(2IYU@Lmzj_6Ko8zm{j-@jXDNUQ>`nnPMc zCSuIaXvE5ZZuc3pl(*y-BdQGcU_+5Y3Ru2P$#+)shvSsC@(1tEb24m6RE7LFL#Xr% zo+jqE)ghLnspJ0=Jlth~@4s|8x@J+?U1T=P>8?+x`&JG*&*0+SzF}h;*%LWd0eU8! zjxhZl23xOh!Xy>6L;|j%lfb zB4jx1mLy^adOS(s2n1uC{6x{*qZZi(IQg+%4?U<&-kp@2)jNw$b zg(tV;q1pRZg&8byG%VDQhA^_TT@}YKwW7=0hxehoHFDXhOz1KW?>A2>f7FS`IT0(P z92ir)PSXK4h%GUjBezY2pftF>h_k3Nva<1Y{y-LjxSn^9DX=Q0$+DZK;F=x@C%M4{ zvWvG9HcdVcc0d=~+9`S*0ikM?==$NzUDKM<)2g;#M|+L)wBsFyyD0|#P2O$&gcu*7}rFLY%PDJl`NDb+e(-5u`u-$vGDD{iS zIJQ(WgM9&?TF6^GDl=E(jFqp}v1N91E{b+qvv;qLC5F>lT$Ki6X31A-eb+bFyr#)* z?mj~#=a&Z=(rwkdj0ACK!(hFwd`=$k+9t!n>57(RTS%KtfyX}Hr7$H?t;7*hZ`+V? zlQJwtO~9z}8?1g!3zfK5aAqXQ(#s2SphV4_D1Vf?a*m3amNIHCYe^}F28+FSCfA7I zPZTRSP~$vbE1x;`JWy~_O?*$bIE}6=VTdK`fG(>I$A_Y2S#IgO^z6%8J2fWx(OI)H9-P#Y#IQmq4)GL zNp5jH)Y{Zu@vxsJv2!damAw(T)V5Q2DDhHl5bW6poEg3mngp(*%VtR7`E1HpSih9? zuH%#uEn;`I<3&WZgR<>2Bj%~7&{Bd&hIohh*&dD3`=nN(#_ZlZZRrdd&$oq6vBpIb zvW3Yw<|OH7bTNfgj7&;X;-O0~rhLmjrr}5`0ljILUS-Cc9kP3GvS(D#OK~(~4>$~B z-+?W?u}yIjXe1py;H z^ZCxgL5PL(qJorrAbmv5frsi?EdB0bXr*n|5ZuX!!`0f0rBLobhR-UIknCX!Yas5k zPS^@SH3DM2jg^%8)sx&Dd{u0LIu28}6G6dGE*r6-G{6yEY52KH9xTRT3nPX^mJ)K>05B(0HThrEt*PqKDzjnVY1>1)GU_e0KI6y#e?wY^(Y1-Mlm>byrHrG9( zx*WO1^3%1SV2B-nC5rqmyahBtC!;@3#JNdoiULU%e=%cX)nkI4FU z!7p$SBB8?fGVZINW0TjS6%b2+Vgn4>#ack4GRKN~gWIz=N7y2WYMHNN8@Rq9GPv$u zKaTYDVYfNScl9{>waVOS)?sYpTf`VuLibtFh%UIINR9f%IU{L zEF*Z?XCx1a(efaTd{mN*+<}vY+PQu35+nh#5{Y2Wct)j6FKCPJJ?JT+79vP~UM^hlh@a8n&$3XeiGHIrfIRq{VMkaST7PFYDtY`Ne@az zYboWMTA-e#d>7m)Sqf*c&XJ2V`Vi;e`ofXz=CPAa#VCG^fXx z{dN|E&&-qd1TxVMqzIusXqC2S#z2cD8{Equ>>z`RhsZDbrQUWV7p8U$m5Bo?@|xB- z7`=oh$X+_tN>!suAyyM)@5}s7>F1sJ?;46Sk)iawn&HJ#g>Oz~wR%`C5V&}~5dibNq}0I|w$|+yH(By(&$v_shGSeoIl~7z#8W zw?9YM;3fr=PJ=J+zTI0xPI4ZcRM1PweIYkncfyuVdZ;TbW=&JAp!t?|Ux-b(9jLccCMlmU zy+}A+C;&K=zlnQ5Cw+{OJ(ag^c~0w|$GMwtNQ=1cG?IpYu@^d7`|6JQ;{nd$&Hee) zY4bDC9NJcD1IAm}J*?oNmX?Z3}c&chR_r&f%aFCX(_MEoBW* zPL)I`HZEX^!-tTBuC5&}-^Nq_y3k2+Vo9;{wgj5~7S4t8_ZHt+*VaH^-rm;4(&%Ty zAFi}+hD8tKiFe{fcRPieqM>x4#1}i|fCD3@w$Qf#uyJo;_Z#nc5NnN3^l5mj|CSao?R$?eL0rdFMb)qoRy(`Q z41EsTUE4<+_SxT4D?zJa0+PF)6Mbf8&f()mp_$k^J3_n_Fkj*D_TmZuBBTKniNz=2 zZCt%1;~5M8u=Jg6lWH~RdNqH=g_|m}Zc|yfb@pULoEVd8V9rcG(FkF|Q@H@Yf zl0e8IiA!Y6v`I3u+XQ~M zet6G&PwAaO`rB%7r@}U3meIOw;L`FD{xwX6w(f(wW!>@<{NT$?o)87ru0=a5$FFda z3tZ}EDc#+5xPIJnglQna6deTe8+_#?i*ufH;NacuF4!z=s7298yJ@Q1UwX6oZi)R`?;L*4r8cwOu=K6xZbH&eH!rr0GPF1qVzrwkDfW#n7G zl(iCbRVux{$^5@+#rPPVL+aa|mbX8IziEY@uDKq+v95{bZ>A7OBrjAK9fIJkuM@hV zl{{sz$TSTUrw=ZEUM?gNAQm#Gk-4bp>Ad@~6EBngt6$As59Y087?1h%)_ui=YqAsR zJMus@WF$Zz8f0X*R$xgUY(fbb(6>-;PaVo--A^@eWr4_lzf|;aqu{jAtL}7(5 zGMdY{ie(_!uF$I6GX%~N;Qlh1Sr41{Vca~=%0bM3SrG$>D|*W}Q!n{V#SwuZfc35P zWNfXh?P&F^Yz=;^$y=E7e?z$5SZ6LbY3WOc;-OvRh3^prBBTeQv-cs>uts1sq21vW zl|B2D1?ux-{8ovf+j0B8we1<}POZE=xUfu0V-AlfN-oel3k)S8rob;y1l<6KrkhZ(F)`-{b#AQUoDoRPFE=0d86DqE3rhf#Ht)X`NVj`RoJ=g- z76~~xxHo9$F~BS|L67Qou8AaFbdDpQ9)DSJ15Ol_ z6mY1DNW||N9WvNb9{c({uJH1gLYh)hhgbL}qy}#xFbIDXQeA87|H|ka%l>|(0lrx- z)4>FugWkXeo<*b?QU>xU$<|@HE>r>8wANBgSIej(3G|8F`~aMeRZpfn65b>C^k>F4 zan^r6#?QH^&^cBdW3XOQ?!$q)QSfYi=wcw+r7&ps^Gyd{EPuM=J;{Mb7z8pj@$dF! z63`uHJ$kPeP)gLAH^bEsDu)TbGG9OWedD?sO!$dy+=?X)LIZ48G3kAc%~nJ1D~_7W z>eZ&53ml|MDAJM+st?K&QbI-?wIsCdGwW=j#7clpgi;(w40m`Wu7~8}Jm5X$od$|Y zBIkkLC;NovjVpzd`Wov@I{k7g-;G3H=XbN}ZSo{JC^#1E6FYi=drl1ZDF(Dq*+H}_ zg*md3Q%D}mNify0BC;=+7pPc3eBb1|Rj|8U&N)73?id=2e5KX? zP(yYT5h|0yVo1Q$~>Vn{c-%D&U+pA`IDF7FW9$q0%W!cF^yta1FN&{_Rt0I_o_@F$-e*#l&l zK0B7c$)JD{enQ?+k+;l>nm~`u{hZ^tOAKf4QVX~@)29(pPhYdbG8vZ4$^70&ZrXi` z?rzANVgL-K;e}dI5!9BC1=k%CRseA?&aD{~Hj8Gh@3sIA*I(cMz&GSEPln~fP%GA9 zmWyP?!Sfc1;j9^|L;Es~d(&{b7#N%TrQp!|vl!bHoMm5x>)GIEDaG*4!@8a)o+~&H z)EqG=4HMUnQx{i8j)RN+xz)k)fvRjL?|#lUf~K5e4^}50Qnb3Bl4qn&#?9+x;`KL< z{>`KT2BCg4>i>G1qTkv6x2wO{v`9w$&j5ekE#;2@EpNj8hrLsNCH!^Ih~G(1-?mKp zWe160iT@mq{yQlU&^Xjj;(rsI{wvO}G049oeSDkh`gak@zoPu=rv5vMAl6@^{B&CX z73Ej=(%(_0@%|F!r?cs=D8DY2{f;93=41a>qhFWKeg*h-y6<;@q0c`7exLmNmGswf z=?+8=eKN0?9asNvFXT$b)S|FfQ9w4B9F>`+<|Fg;QM{*wi tKal_30Qr^r&u#i2sd0q`l;tfZ*PK!rpWxU*xyc{{T`#+%^CJ diff --git a/test/project-config/forms/contact/c50_supervision_area-edit.xml b/test/project-config/forms/contact/c50_supervision_area-edit.xml deleted file mode 100644 index 198b923..0000000 --- a/test/project-config/forms/contact/c50_supervision_area-edit.xml +++ /dev/null @@ -1,141 +0,0 @@ - - - - Edit Supervision Area - - - - - Primary Contact - - - Name of this Supervision area - - - - - Contact primaire - - - - - - - - - - - - - - - - - - - Nom de la zone de supervision - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_id/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c52_supervisor-create.xml b/test/project-config/forms/contact/c52_supervisor-create.xml deleted file mode 100644 index 6eabe6f..0000000 --- a/test/project-config/forms/contact/c52_supervisor-create.xml +++ /dev/null @@ -1,175 +0,0 @@ - - - - Ajouter personne - - - - - Enter a valid email address (e.g. adrien@health.org) - - - Email - - - First name - - - Last name - - - Put "11111111" if no number is available - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - ADC (OCA Coach) - - - Supervisor - - - Role - - - Username - - - - - Entrez une adresse email valide(ex. adrien@health.org) - - - Adresse email - - - Prénom (s) - - - Nom - - - - - - - Si le numéro n'est pas disponible, mettre "11111111" - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - ADC (OCA Coach) - - - Superviseur - - - Role - - - Nom d'utilisateur - - - - - - - - - - - - - - - - - - - - - - PARENT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c52_supervisor-edit.xlsx b/test/project-config/forms/contact/c52_supervisor-edit.xlsx deleted file mode 100644 index 96eb109fe58a2f35c5a3eb9a26bb1cbc892a7ba1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17514 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 diff --git a/test/project-config/forms/contact/c52_supervisor-edit.xml b/test/project-config/forms/contact/c52_supervisor-edit.xml deleted file mode 100644 index 172c33f..0000000 --- a/test/project-config/forms/contact/c52_supervisor-edit.xml +++ /dev/null @@ -1,186 +0,0 @@ - - - - Ajouter personne - - - - - Enter a valid email address (e.g. adrien@health.org) - - - Email - - - First name - - - Last name - - - Put "11111111" if no number is available - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - ADC (OCA Coach) - - - Supervisor - - - Role - - - Username - - - - - Entrez une adresse email valide(ex. adrien@health.org) - - - Adresse email - - - Prénom (s) - - - Nom - - - - - - - Si le numéro n'est pas disponible, mettre "11111111" - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - ADC (OCA Coach) - - - Superviseur - - - Role - - - Nom d'utilisateur - - - - - - - - - - - - - - - - - - - - - - - PARENT - - - - - - - ${user_role} - - - - - Will be hidden - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c60_chw_site-create.xml b/test/project-config/forms/contact/c60_chw_site-create.xml deleted file mode 100644 index a317d4e..0000000 --- a/test/project-config/forms/contact/c60_chw_site-create.xml +++ /dev/null @@ -1,325 +0,0 @@ - - - - New CHW Site - - - - - CHW Site name - - - First name - - - No - - - Yes - - - Have you geolocated? - - - Last name - - - Put "11111111" if no number is available - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - CHW - - - Other Community Actor - - - Role - - - Female - - - Male - - - Sex - - - Existing - - - Non existing - - - Site category - - - Username - - - Health area - - - Belongs To - - - - - Nom du site ASC - - - Prénom de l'Agent - - - Non - - - Oui - - - Avez-vous géolocalisé? - - - Nom de l'Agent - - - - - - - Si le numéro n'est pas disponible, mettre "11111111" - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - ASC - - - Autre Acteur Communautaire - - - Rôle - - - Femme - - - Homme - - - Sexe - - - Existant - - - Non existant - - - Catégorie de site - - - Nom d'utilisateur - - - Aire de santé - - - Appartient à - - - - - - - - - - - - - - - - - - - - - - PARENT - - - - - - - - - - - - - - - - - - - - - - PARENT - contact - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c60_chw_site-edit.properties.json b/test/project-config/forms/contact/c60_chw_site-edit.properties.json deleted file mode 100644 index 86cfe9b..0000000 --- a/test/project-config/forms/contact/c60_chw_site-edit.properties.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": [ - { - "locale": "en", - "content": "Edit CHW site" - }, - { - "locale": "fr", - "content": "Modifier site ASC" - } - ] -} \ No newline at end of file diff --git a/test/project-config/forms/contact/c60_chw_site-edit.xlsx b/test/project-config/forms/contact/c60_chw_site-edit.xlsx deleted file mode 100644 index f2cca274e47d0d2d96be06c99b60cc67afd90c99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15576 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 B7$*P# diff --git a/test/project-config/forms/contact/c60_chw_site-edit.xml b/test/project-config/forms/contact/c60_chw_site-edit.xml deleted file mode 100644 index 61b514b..0000000 --- a/test/project-config/forms/contact/c60_chw_site-edit.xml +++ /dev/null @@ -1,176 +0,0 @@ - - - - Edit CHW Site - - - - - Primary Contact - - - CHW site - - - Existing - - - Non existing - - - Site category - - - - - Contact primaire - - - - - - - - - - - - - - - - - - - Nom du site ASC - - - - - - - Existant - - - Non existant - - - Catégorie de site - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_id/> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c62_chw-create.xml b/test/project-config/forms/contact/c62_chw-create.xml deleted file mode 100644 index 74dfcea..0000000 --- a/test/project-config/forms/contact/c62_chw-create.xml +++ /dev/null @@ -1,222 +0,0 @@ - - - - Ajouter personne - - - - - First name - - - No - - - Yes - - - You cannot add a new person here. Please refer to your supervisor or the administrator. - - - Have you geolocated? - - - Last name - - - Enter a valid number in the form XXXXXXXX - - - Phone Number - - - Role - - - Female - - - Male - - - Sex - - - Username - - - <span style="color:red;">You cannot add a new person here. Please refer to your supervisor or the administrator.</span> - - - - - Prénom (s) - - - Non - - - Oui - - - Vous ne pouvez pas ajouter de nouvelle personne ici. Veuillez vous référer à votre superviseur ou à l'administrateur. - - - Avez-vous géolocalisé? - - - Nom - - - - - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - Rôle - - - Femme - - - Homme - - - Sexe - - - Nom d'utilisateur - - - <span style="color:red;">Vous ne pouvez pas ajouter de nouvelle personne ici. Veuillez vous référer à votre superviseur ou à l'administrateur.</span> - - - - - - - - - - - - - - - - - - - - - - PARENT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c62_chw-edit.xlsx b/test/project-config/forms/contact/c62_chw-edit.xlsx deleted file mode 100644 index e7062e3b235381c5ca3a07e37c84e849e2d0975e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18084 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 b{(tfka+07QL - - - Ajouter personne - - - - - First name - - - No - - - Yes - - - You can not edit this form. Please cancel. - - - Have you geolocated? - - - Last name - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - Role - - - Female - - - Male - - - Sex - - - Username - - - Belongs to - - - <span style="color:red;">You can not edit this form. Please cancel.</span> - - - - - Prénom (s) - - - Non - - - Oui - - - Vous ne pouvez pas modifier ce formulaire. Veuillez annuler. - - - Avez-vous géolocalisé? - - - Nom - - - - - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - Rôle - - - Femme - - - Homme - - - Sexe - - - Nom d'utilisateur - - - Associé avec - - - <span style="color:red;">Vous ne pouvez pas modifier ce formulaire. Veuillez annuler.</span> - - - - - - - - - - - - - - - - - - - - - - PARENT - - - - - - - - - - - - - Will be hidden - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c70_village-create.properties.json b/test/project-config/forms/contact/c70_village-create.properties.json deleted file mode 100644 index cf8f27b..0000000 --- a/test/project-config/forms/contact/c70_village-create.properties.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": [ - { - "locale": "en", - "content": "New village" - }, - { - "locale": "fr", - "content": "Nouveau village" - } - ] -} \ No newline at end of file diff --git a/test/project-config/forms/contact/c70_village-create.xml b/test/project-config/forms/contact/c70_village-create.xml deleted file mode 100644 index 3179409..0000000 --- a/test/project-config/forms/contact/c70_village-create.xml +++ /dev/null @@ -1,1040 +0,0 @@ - - - - New Village - - - - - Click on this point only when you are in the concession. - - - Geolocation of the family -Click on this point only when you are in the family - - - Should be between 1 and 50 - - - Number of household(s) in the compound - - - : **** - - - - - - Monogamy - - - Polygamy - - - Marital status - - - Divorced - - - Married - - - Single - - - Widowed - - - Matrimonial Status - - - Artisan - - - Breeder - - - Commercial employee - - - Driver - - - FAMA - - - Farmer - - - Health worker - - - Household - - - Other - - - Reseller - - - Retirement - - - Shopkeeper - - - Social worker / volunteer - - - Pupil/student - - - Teacher - - - Trader - - - Unemployed - - - Worker - - - Profession - - - Specify (Other) - - - - - - - Email - - - **Age** - - - Months must between 0 and 11 - - - Months - - - Age must be between 0 and 130 - - - Years - - - DOB - - - Date of Birth - - - Date must be before today - - - Age - - - Months: -Year: -DOB Approx: -DOB Calendar: -DOB ISO: - - Date of Birth - - - Date of birth unknown - - - - - First name - - - Last name - - - Membership Structure - - - No - - - Yes - - - Out of CHW Area ? - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number 2 - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - Put "11111111" if no number is available - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - Female - - - Male - - - Sex - - - Username - - - 's Concession - - - 's Household - - - super_admin - - - village_head - - - concession_head - - - patient - - - Role - - - of the person - - - of the village chief - - - of the concession chief - - - of the household head - - - c12_central - - - c72_village - - - c82_concession - - - c92_household - - - Name of the new central - - - Name of the village - - - Name of the concession - - - Name of the household - - - Central - - - Village - - - Concession - - - Household - - - Enter the name of this place - - - - - Cliquez sur ce point seulement lorsque vous êtes dans la concession - - - Géolocalisation de la concession -Cliquez sur ce point seulement lorsque vous êtes dans la concession - - - Doit être compris entre 1 et 50 - - - Nombre de ménage (s) dans la concession: - - - : **** - - - - - - Monogamie - - - Polygamie - - - Régime marital - - - Divorcé (e) - - - Marié(e) - - - Célibataire - - - Veuve - - - Situation Matrimoniale - - - Artisan - - - Eleveur - - - Employé de commerce - - - Chauffeur - - - FAMA - - - Cultivateur - - - Agent de Santé - - - Ménagère - - - Autre - - - Revendeur ( se ) - - - Retraité - - - Boutiquier - - - Travailleur social / volontaire - - - Elève/étudiant - - - Enseignant (e) - - - Commerçant (e) - - - Sans emploi - - - Ouvrier - - - Profession - - - Spécifier (Autre) - - - Entrez une adresse email valide(ex. adrien@health.org) - - - Adresse email - - - **Age** - - - - - - - Mois - - - - - - - Année - - - - - - - Date de naissance - - - - - - - Date de naissance - - - - - - - - - - - Date de naissance non connue - - - - - Prénom (s) - - - Nom - - - Structure d'appartenance - - - - - - - Non - - - Oui - - - Hors zone ASC ? - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone 2 - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - Si le numéro n'est pas disponible, mettre "11111111" - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - Femme - - - Homme - - - Sexe - - - Nom d'utilisateur - - - Concession de - - - Ménage de - - - super_admin - - - village_head - - - concession_head - - - patient - - - Rôle - - - de la Personne - - - du Chef de village - - - du Chef de concession - - - du chef de ménage - - - c12_central - - - c72_village - - - c82_concession - - - c92_household - - - Nom du niveau central - - - Nom du village - - - Nom de la concession - - - Nom du ménage - - - Central - - - Village - - - Concession - - - Famille - - - Nom de l'endroit - - - - - - - - - - - - - - - - - - - - - - PARENT - - - - - - - - - - - - - - - - - - c70_village - c70_village - c70_village - c70_village - c70_village - c70_village - - - - - - PARENT - contact - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c70_village-edit.properties.json b/test/project-config/forms/contact/c70_village-edit.properties.json deleted file mode 100644 index 43275bf..0000000 --- a/test/project-config/forms/contact/c70_village-edit.properties.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": [ - { - "locale": "en", - "content": "Edit village" - }, - { - "locale": "fr", - "content": "Modifier village" - } - ] -} \ No newline at end of file diff --git a/test/project-config/forms/contact/c70_village-edit.xml b/test/project-config/forms/contact/c70_village-edit.xml deleted file mode 100644 index 3679397..0000000 --- a/test/project-config/forms/contact/c70_village-edit.xml +++ /dev/null @@ -1,418 +0,0 @@ - - - - Edit Village - - - - - Select Person - - - Select Person - - - Select Person - - - Select Person - - - - - - - Geolocation of the family -Click on this point only when you are in the family - - - Should be between 1 and 50 - - - Number of household(s) in the compound - - - You can not edit this form. Please cancel. - - - - - - No - - - Yes - - - Out of CHW Area ? - - - No - - - Yes - - - Do you want to change the primary contact? - - - Primary contact: - - - Name of the central - - - Name of the village - - - Name of the concession - - - Name of the household - - - Central - - - Village - - - Concession - - - Household - - - <span style="color:red;">You can not edit this form. Please cancel.</span> - - - - - Choisisser le contact primaire - - - Choisisser le contact primaire - - - Choisisser le contact primaire - - - Choisisser le contact primaire - - - Click on this point only when you are in the concession. - - - Géolocalisation de la concession -Cliquez sur ce point seulement lorsque vous êtes dans la concession - - - Doit être compris entre 1 et 50 - - - Nombre de ménage (s) dans la concession: - - - - - - - - - - - - - - - - - - - Vous ne pouvez pas modifier ce formulaire. Veuillez annuler. - - - - - - Non - - - Oui - - - Hors zone ASC ? - - - - - - - - - - - - - - - Non - - - Oui - - - Voulez-vous changer le contact primaire? - - - Contact primaire: - - - Nom du central - - - Nom du village - - - Nom de la concession - - - Nom du ménage - - - Central - - - Village - - - Concession - - - Famille - - - <span style="color:red;">Vous ne pouvez pas modifier ce formulaire. Veuillez annuler.</span> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - <_id/> - - - - - - Cliquez sur ce point seulement lorsque vous êtes dans la concession - - - - - - - - - - - - c70_village - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c72_village-create.properties.json b/test/project-config/forms/contact/c72_village-create.properties.json deleted file mode 100644 index 25a326e..0000000 --- a/test/project-config/forms/contact/c72_village-create.properties.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "title": [ - { - "locale": "en", - "content": "New person" - }, - { - "locale": "fr", - "content": "Nouvelle personne" - } - ], - "context": { - "permission": "can_create_users" - } -} diff --git a/test/project-config/forms/contact/c72_village-create.xlsx b/test/project-config/forms/contact/c72_village-create.xlsx deleted file mode 100644 index be6eeb9655a744f1e16352bec6806a211f6eb063..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16367 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 diff --git a/test/project-config/forms/contact/c72_village-create.xml b/test/project-config/forms/contact/c72_village-create.xml deleted file mode 100644 index 6d28ce6..0000000 --- a/test/project-config/forms/contact/c72_village-create.xml +++ /dev/null @@ -1,149 +0,0 @@ - - - - Ajouter personne - - - - - First name - - - Last name - - - Put "11111111" if no number is available - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - Female - - - Male - - - Sex - - - - - Prénom (s) - - - Nom - - - - - - - Si le numéro n'est pas disponible, mettre "11111111" - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - Femme - - - Homme - - - Sexe - - - - - - - - - - - - - - - - - - - - - - PARENT - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/forms/contact/c72_village-edit.xlsx b/test/project-config/forms/contact/c72_village-edit.xlsx deleted file mode 100644 index 03f49c23ccc52167271466b872f2dc92052d230c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20174 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 XtOVGHpaTKHfBb}g=n9R*AOHP7D?mse diff --git a/test/project-config/forms/contact/c72_village-edit.xml b/test/project-config/forms/contact/c72_village-edit.xml deleted file mode 100644 index 2122407..0000000 --- a/test/project-config/forms/contact/c72_village-edit.xml +++ /dev/null @@ -1,183 +0,0 @@ - - - - Ajouter personne - - - - - First name - - - Last name - - - Put "11111111" if no number is available - - - Please enter a valid local number, or use the standard international format, which includes a plus sign (+) and country code. For example: +254712345678 - - - Phone Number - - - Female - - - Male - - - You can not edit this form. Please cancel. - - - Sex - - - <span style="color:red;">You can not edit this form. Please cancel.</span> - - - - - Prénom (s) - - - Nom - - - - - - - Si le numéro n'est pas disponible, mettre "11111111" - - - Entrez un numero valide sous la forme XXXXXXXX - - - N° de téléphone - - - Femme - - - Homme - - - Vous ne pouvez pas modifier ce formulaire. Veuillez annuler. - - - Sexe - - - <span style="color:red;">Vous ne pouvez pas modifier ce formulaire. Veuillez annuler.</span> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Will be hidden - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/translations/messages-en.properties b/test/project-config/translations/messages-en.properties index d05fa49..5479131 100644 --- a/test/project-config/translations/messages-en.properties +++ b/test/project-config/translations/messages-en.properties @@ -2,114 +2,92 @@ contact.type.c10_central = Central level contact.type.c10_central.plural = Central levels contact.type.c10_central.new = New central level contact.type.c10_central.edit = Edit central level - contact.type.c20_region = Region contact.type.c20_region.plural = Regions contact.type.c20_region.new = New region contact.type.c20_region.edit = Edit region - contact.type.c30_district = District contact.type.c30_district.plural = Districts contact.type.c30_district.new = New district contact.type.c30_district.edit = Edit district - contact.type.c40_health_area = Health Area contact.type.c40_health_area.plural = Health Area contact.type.c40_health_area.new = New Health Area contact.type.c40_health_area.edit = Edit Health Area - contact.type.c50_supervision_area = Supervision area contact.type.c50_supervision_area.edit = Edit supervision area contact.type.c50_supervision_area.new = New supervision area contact.type.c50_supervision_area.plural = Supervision area - contact.type.c60_chw_site = CHW Site contact.type.c60_chw_site.edit = Edit CHW site contact.type.c60_chw_site.new = New CHW site contact.type.c60_chw_site.plural = CHW Sites - contact.type.c70_village = Village contact.type.c70_village.edit = Edit village contact.type.c70_village.new = New village contact.type.c70_village.plural = Villages - contact.type.c80_concession = Concession contact.type.c80_concession.edit = Edit concessions contact.type.c80_concession.new = New concession contact.type.c80_concession.plural = Concessions - contact.type.c90_household = Household contact.type.c90_household.plural = Household contact.type.c90_household.new = New household contact.type.c90_household.edit = Edit household - contact.type.person = Person contact.type.person.edit = Edit person contact.type.person.new = New person contact.type.person.plural = Persons - contact.type.c12_central = Person contact.type.c12_central.edit = Edit person contact.type.c12_central.new = New person contact.type.c12_central.plural = Persons - contact.type.c22_region = Person contact.type.c22_region.edit = Edit person contact.type.c22_region.new = New person contact.type.c22_region.plural = Persons - contact.type.c32_district = Person contact.type.c32_district.edit = Edit person contact.type.c32_district.new = New person contact.type.c32_district.plural = Persons - contact.type.c42_health_area = Person contact.type.c42_health_area.edit = Edit person contact.type.c42_health_area.new = New person contact.type.c42_health_area.plural = Persons - contact.type.c52_supervisor = Person contact.type.c52_supervisor.edit = Edit person contact.type.c52_supervisor.new = New person contact.type.c52_supervisor.plural = Persons - contact.type.c62_chw = Person contact.type.c62_chw.edit = Edit person contact.type.c62_chw.new = New person contact.type.c62_chw.plural = Persons - contact.type.c72_village = Person contact.type.c72_village.edit = Edit person contact.type.c72_village.new = New person contact.type.c72_village.plural = Persons - contact.type.c82_concession = Person contact.type.c82_concession.edit = Edit person contact.type.c82_concession.new = New person contact.type.c82_concession.plural = Persons - contact.type.c92_household = Person contact.type.c92_household.edit = Edit person contact.type.c92_household.new = New person contact.type.c92_household.plural = Household members - contact.type.c74_community_actor = New Community Actor contact.type.c74_community_actor.edit = Edit Community Actor contact.type.c74_community_actor.new = New Community Actor contact.type.c74_community_actor.plural = New Community Actors - contact.sex.male = Male contact.sex.female = Female contact.sex. = Undefined person.field.telephone = phone - contact.pregnancy.lmp = Day of last menstruations contact.pregnancy.estimated_delivery = Estimated delivery contact.pregnancy.type = Type of pregnancy contact.pregnancy.high_risk = High risque contact.pregnancy.not_high_risk = No risque contact-prgnancy-activity = Pregnacy Active - task.pregnancy_confirmation = Pregnancy Confirmation task.child_longitudinal_followup_1_24 = Child Longitudinal Followup 1 to 24 month task.child_longitudinal_followup_2_5 = Child Longitudinal Followup 2 to 5 years @@ -138,17 +116,14 @@ contact.fp.recent_fp_method = Recent FP Method contact.fp.state = Status contact.fp.stop = Stop contact.fp.in_progress = In Progress - task.pregnancy_followup = Pregnancy Followup task.priority.high = High - enketo.geopicker.latitude = Latitude enketo.geopicker.longitude = Longitude enketo.geopicker.altitude = Altitude enketo.geopicker.accuracy = Accuracy enketo.geopicker.searchPlaceholder = Search for a place enketo.selectpicker.noneselected = None - usertype.central_admin = Central Admin usertype.national_admin = National Admin usertype.district_admin = District Admin @@ -159,18 +134,15 @@ usertype.oca = Other Community Actor usertype.oca_supervisor = ADC(OCA Coach) usertype.cvs = CVS usertype.wash_comity = Wash Comity - usertype.savings = Savings Manager usertype.manager_stock= Stock Warehouse Manager - vaccine.title = Vaccinations contact.birth.certificate = Birth Certificate contact.birth.certificate_number = Birth Certificate Number contact.birth.certificate_date = Birth Certificate Date - task.overdue = Past due -task.overdue.days = {DAYS, plural, =0{Due today} =1{Due yesterday} other{Due \# days ago}} -task.days.left = {DAYS, plural, =1{1 day left} other{# days left}} +task.overdue.days = {DAYS plural =0{Due today} =1{Due yesterday} other{Due \# days ago}} +task.days.left = {DAYS plural =1{1 day left} other{# days left}} task.pregnancy_referral_followup = Pregnancy Referral Followup task.anc_followup = ANC Visit Realization task.fp_reference_followup = FP Reference {{contact.name}} @@ -178,8 +150,7 @@ task.fp_renewal_followup = FP Followup task.treatment_followup_over_5 = Treatment Followup task.referral_followup_over_5 = Referral Followup over 5 task.tb_treatment_followup = Weekly Treatment Follow-up TB -sms.token.login.help = Hi, ready to start? You will need data and a good connection. Go to https://play.google.com/store/apps/details?id=org.medicmobile.webapp.mobile.moh_mali_chw&hl=en_US to install the app. After the installation, click the next link to log in. - +sms.token.login.help = Hi ready to start? You will need data and a good connection. Go to https://play.google.com/store/apps/details?id=org.medicmobile.webapp.mobile.moh_mali_chw&hl=en_US to install the app. After the installation click the next link to log in. task.referral_followup=Referral task.treatment.malaria=Malaria followup task.treatment.diarrhea=Diarrhea followup @@ -207,9 +178,8 @@ task.sebac_alert_verification=Alert Verification task.sebac_verification_notification=Alert Verification Notification task.sebac_verification_result=Alert Verification Result task.sebac_test_result_reminder=Test Result Reminder -task.sebac_result_notification_supervisor=Test Result Notification To Supervisor -task.sebac_result_notification_chw=Test Result Notification To CHW - +task.sebac_result_notification=Test Result Notification +task.sebac_alert_dtc_notification=Alert Notification target.home_visits=# Home visit target.2-home-visits-per-fam=% households who received ≥2 VAD target.chv-receive-supervision-visit=% of CHVs who received a 360 degree supervision visit @@ -218,11 +188,10 @@ target.patient_assessment_over_5-24h=% of children> = 5 years who received care target.preg-first-trimester=% of pregnancies diagnosed in the first trimester target.protocol-error-percentage=% of the evaluations without protocol errors target.protocol-error-count=# total protocol errors - target.danger-signs-without-accompany=Sign(s) of danger without reference or accompaniment to the CSCOM -target.symptoms-of-malaria-without-tdr=Malaria sign, TDR malaria not realized -target.fever-without-tdr=Presence of fever, RDT malaria not achieved -target.tdr-without-malaria=CTA given by the ASC, TDR negative malaria +target.symptoms-of-malaria-without-tdr=Malaria sign TDR malaria not realized +target.fever-without-tdr=Presence of fever RDT malaria not achieved +target.tdr-without-malaria=CTA given by the ASC TDR negative malaria target.incorrect-dosage-of-act-based-combination=CTA dose given by incorrect ASC target.diarrhea-without-zinc=Diarrhea without zinc administration target.incorrect-dosage-of-zinc=Zinc dose given by incorrect ASC @@ -241,7 +210,9 @@ target.aggrevated-no-accompany=Aggravated condition at 24H or 48H or 72H or day target.unchanged-no-accompany=No change at 48H or 72H or 5th day without reference / accompaniment at the CSCOM target.not-improved-3d-no-accompany=Not improved or not cured at 72H without reference / accompaniment at the CSCOM target.not-improved-5d-no-accompany=Not improved or not cured the 5th without reference / accompaniment to the CSCOM - +target.chw_observed_during_assessment.title= % of CHW observed by dedicated supervisor during the care of a patient +target.chw_rdts_correctly_carried_out.title= Number of Malaria RDTs correctly carried out by the CHW during supervision +target.chw_rdts_carrying_out_malaria.title= Number CHW observed by the SD for carrying out the Malaria RDT contact.profile.death.date = Date of death contact.profile.death.place = Place of death contact.profile.death.title = Death @@ -250,7 +221,6 @@ contact.profile.death.places.village = At the village contact.profile.death.places.home = At home contact.profile.death.places.other = Other contact.profile.death.places.undefined = Unknown - target.childcare_by_chw.title = Number of new curative consultations for children under 5 by CHW target.childcare_by_chw.fever.title = Number of RDTs performed in children under 5 years old with fever target.childcare_by_chw.diarrhea.title = Number of children under 5 years old with diarrhea treated with zinc and SRO by CHW @@ -274,7 +244,6 @@ target.chw_talks = Talks made target.tb_cases_lost = Cases TB of loss of sight target.household_with_hand_washing = Proportion of households with a hand washing device (functional with water and soap) target.household_with_improved_latrine = Proportion (Percentage) of households using an improved latrine - target.cvss.household_as_member.title = Number of households joining the CVSS target.cvss.individual_as_member.title = Number of individual CVSS memberships target.village_motivation_mecanism.title = Number of CVSS villages with a CHW motivation mechanism @@ -298,7 +267,11 @@ target.chw_helped_in_nature_by_community.title = Number of CHWs having received target.chw_financially_helpedby_community.title = Number of CHWs having received motivation from CVSS target.rdts_carried_out_5_plus_with_fever.title = Number of RDTs performed in those over 5 years old with fever target.number_of_traitments_followup_carried_out.title = Number of follow-up treatment carried out PEC of cases by CHW - +target.chw_site_visited_in_community_without_chw.title = % CHW site visited in community without CHW +target.chw_having_had_an_individual_meeting_with_the_supervisor.title = % Of CHWs having had an individual meeting with the supervisor +target.percentage_chw_received_visit_sd.title = % of CHWs having received a dedicated supervision visit with all steps +target.number_of_children_zero_doses.title = Number of children (0 to 23 months) with 0 doses +target.number_of_children_vaccination_not_up_to_date.title = Number of children (0 to 23 months) with vaccination not up to date contact.savings.title = CVSS Group Contact Card contact.savings.manager.name = CVSS Manager's name contact.savings.cvss_balance = Available Balance @@ -315,7 +288,6 @@ contact.savings.beneficiary.total_contribution = Total contribution Record contact.savings.beneficiary.total_expense = Total Expense Record contact.savings.total_loan = Total Loan contact.savings.beneficiary.loan_balance = Total Loan Balance - task.savings.loan_reminder = Loan Reminder task.savings.confirmation_of_expenditure = Confirmation of expenditure task.savings.loan_reimbursement = Loan Reimbursement @@ -329,7 +301,6 @@ target.gsan_affected_men_genre = Men sensitized on the gender approach target.gsan_affected_women_genre = Women sensitized on the gender approach target.chw_promo_pregnancy = Home visits made for promotional activities + follow-up of the pregnant woman target.curative_home_visits = Home visits made for curative activities - vaccine.status.no_dose = Zero Dose vaccine.status.full_dose = Complet vaccine.status.partial_dose = Incomplet @@ -347,107 +318,6 @@ reports.sidebar.filter.date = Date reports.sidebar.filter.status = Status search_bar.filter.label = Filter fast_action_button.title = New - -cht-stock-monitoring-workflow.stock_count.balance_fill = Use this form to fill in balances on hand for all commodities as of today -cht-stock-monitoring-workflow.stock_count.commodities_note =

    Commodities Balance on hand

    -cht-stock-monitoring-workflow.stock_count.message.summary_header = Results/Summary page -cht-stock-monitoring-workflow.stock_count.contact_summary.title = Stock count -cht-stock-monitoring-workflow.stock_count.message.submit_note =

    Be sure you Submit to complete this action.

    -cht-stock-monitoring-workflow.stock_count.message.summary_note = Stock items you currently have. -cht-stock-monitoring-workflow.stock_count.tasks.stock-count = Stock count -cht-stock-monitoring-workflow.stock_count.forms.additional_doc_title = Stock uses -cht-stock-monitoring-workflow.stock_count.forms.item_used_question = Quantity of {{item}} -cht-stock-monitoring-workflow.stock_supply.page_1.header = Select item to supply -cht-stock-monitoring-workflow.stock_supply.forms.select_category = Select the category of what you want to return -cht-stock-monitoring-workflow.stock_supply.page_1.select_input = Select -cht-stock-monitoring-workflow.stock_supply.page_1.select_input_hint = Select all items to supply -cht-stock-monitoring-workflow.stock_supply.item.stock_on_hand = Stock on hand -cht-stock-monitoring-workflow.stock_supply.item.quantity_of = Quantity of -cht-stock-monitoring-workflow.stock_supply.summary_header = Results/Summary page -cht-stock-monitoring-workflow.stock_supply.submit_note =

    Be sure you Submit to complete this action.

    -cht-stock-monitoring-workflow.stock_supply.summary_note = Stock items you supply. -cht-stock-monitoring-workflow.stock_supply.tasks.reception-confirmation = Stock received -cht-stock-monitoring-workflow.stock_supply.confirmation.item_received_question = Did you received {{qty}} {{unit}} of {{item}} -cht-stock-monitoring-workflow.stock_supply.choices.yes_no.yes = Yes -cht-stock-monitoring-workflow.stock_supply.choices.yes_no.no = No -cht-stock-monitoring-workflow.stock_supply.forms.additional_doc_title = Stock uses -cht-stock-monitoring-workflow.stock_supply.forms.item_used_question = Quantity of {{item}} -cht-stock-monitoring-workflow.stock_supply.confirmation.qty_received_question = Enter the quantitity received -cht-stock-monitoring-workflow.stock_supply.tasks.stock-descreptancy = Commodity Discrepancy Resolution -cht-stock-monitoring-workflow.stock_supply.forms.select_items = Select the different item you want to supply -cht-stock-monitoring-workflow.stock_supply.confirmation.summary_note = Stock items you received. -cht-stock-monitoring-workflow.stock_supply.discrepancy.summary_header = Results/Summary page -cht-stock-monitoring-workflow.stock_supply.discrepancy.submit_note =

    Be sure you Submit to complete this action.

    -cht-stock-monitoring-workflow.stock_supply.discrepancy.summary_note = Discrepancy resolution -cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_issued = Quantity issued: {{qty}} -cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_confirmed = Quantity confirmed: {{qty}} -cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_final = What is the final quantity ? -cht-stock-monitoring-workflow.stock_supply.label.confirm_qty = Confirm quantities -cht-stock-monitoring-workflow.stock_return.forms.select_category_label = Categories selection -cht-stock-monitoring-workflow.stock_return.forms.select_category = Select the category of what you want to return -cht-stock-monitoring-workflow.stock_return.forms.select_items = Select the different item you want to return -cht-stock-monitoring-workflow.stock_return.forms.select_items.return_reason = Reason for return -cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.excess = Excess -cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.damaged = Damaged -cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.expired = Expired -cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.other = Other -cht-stock-monitoring-workflow.stock_return.message.items_selection = Items selection -cht-stock-monitoring-workflow.stock_return.forms.specify = Specify reason -cht-stock-monitoring-workflow.stock_return.forms.qty_before = Quantity before -cht-stock-monitoring-workflow.stock_return.forms.qty_after = Quantity after -cht-stock-monitoring-workflow.stock_return.forms.qty_returned = Quantity to return -cht-stock-monitoring-workflow.stock_return.summary_header = Results/Summary page -cht-stock-monitoring-workflow.stock_return.summary_note = Stock items you returned. -cht-stock-monitoring-workflow.stock_return.submit_note =

    Be sure you Submit to complete this action.

    -cht-stock-monitoring-workflow.stock_return.confirmation.item_received_question = Did you receive {{qty}} ? -cht-stock-monitoring-workflow.stock_return.confirmation.qty_received_question = Enter the quantity received -cht-stock-monitoring-workflow.stock_return.tasks.return-confirmation = Return confirmation -cht-stock-monitoring-workflow.stock_out.tasks.stock_out = Stock out -cht-stock-monitoring-workflow.stock_out.message.stock_at_hand = Stock at hand: {{qty}} -cht-stock-monitoring-workflow.stock_out.message.stock_required = Stock required: {{qty}} -cht-stock-monitoring-workflow.stock_out.message.summary_header = Summary -cht-stock-monitoring-workflow.stock_out.message.submit_note = {{name}} has low stock of the following items -cht-stock-monitoring-workflow.stock_out.message.summary_note = Stock out -cht-stock-monitoring-workflow.items.artemether_pl_18.label = ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/18 -cht-stock-monitoring-workflow.items.artemether_pl_24.label = ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 -cht-stock-monitoring-workflow.items.artesunate_50.label = ARTESUNATE SUPPOSITORY 50 MG -cht-stock-monitoring-workflow.items.artesunate_200.label = ARTESUNATE SUPPOSITORY 200 MG -cht-stock-monitoring-workflow.items.artemether_pl_6.label = ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 FREE FOR CHILDREN < 5 YEARS -cht-stock-monitoring-workflow.items.paracetamol_syrup.label = Paracetamol Syrup -cht-stock-monitoring-workflow.items.paracetamol_tablet_500.label = PARACETAMOL TABLET 500MG -cht-stock-monitoring-workflow.items.paracetamol_tablet_100.label = PARACETAMOL TABLET 100MG FREE FOR CHILDREN < 5 YEARS -cht-stock-monitoring-workflow.items.sro_zinc.label = ORS (Oral Rehydration Solution) + Zinc -cht-stock-monitoring-workflow.items.free_sro.label = Free ORS -cht-stock-monitoring-workflow.items.free_zinc.label = FREE ZINC -cht-stock-monitoring-workflow.items.amoxicillin_syrup_125.label = AMOXICILLIN SYRUP 125 MG -cht-stock-monitoring-workflow.items.amoxicillin_syrup_250.label = AMOXICILLIN SYRUP 250 MG -cht-stock-monitoring-workflow.items.balembo_syrup.label = BALEMBO CHILD SYRUP -cht-stock-monitoring-workflow.items.carbetux_syrup.label = CARBETUX SYRUP -cht-stock-monitoring-workflow.items.carbo.label = CARBOCYSTEINE 2% -cht-stock-monitoring-workflow.items.amoxicillin_tablet_250.label = FREE AMOXICILLIN 250 MG TABLETS FOR MALNOURISHED CHILDREN -cht-stock-monitoring-workflow.items.amoxicillin_syrup_125_free.label = FREE AMOXICILLIN SYRUP 125 MG FOR MALNOURISHE CHILDREN -cht-stock-monitoring-workflow.items.amoxicillin_syrup_250_free.label = FREE AMOXICILLIN SYRUP 250 MG FOR MALNOURISHE CHILDREN -cht-stock-monitoring-workflow.items.albendazole_tablet_200.label = FREE ALBENDAZOLE 200 MG TABLETS -cht-stock-monitoring-workflow.items.albendazole_tablet_400.label = FREE ALBENDAZOLE 400 MG TABLETS -cht-stock-monitoring-workflow.items.vitamin_100_ui.label = FREE 100,000 IU VITAMIN A CAPSULES -cht-stock-monitoring-workflow.items.vitamin_200_ui.label = FREE 200,000 IU VITAMIN A CAPSULES -cht-stock-monitoring-workflow.items.folic_acid.label = FREE IRON/FOLIC ACID SUPPLEMENTS FOR MALNOURISHED INDIVIDUALS -cht-stock-monitoring-workflow.items.plumply_nut.label = FREE PLUMPLY NUT SUPPLEMENT FOR MAS-C -cht-stock-monitoring-workflow.items.plumply_sup.label = FREE PLUMPY SUP SUPPLEMENT FOR MAM -cht-stock-monitoring-workflow.items.supercereal.label = FREE SUPERCEREAL (CSB) FOR MALNOURISHED INDIVIDUALS -cht-stock-monitoring-workflow.items.gant.label = BULK GLOVES -cht-stock-monitoring-workflow.items.tdr.label = FREE RAPID DIAGNOSTIC TEST (TDR) -cht-stock-monitoring-workflow.items.artemether_free_pl_12.label = FREE ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/12 -cht-stock-monitoring-workflow.items.artemether_free_pl_24.label = FREE ARTEMETHER + LUMEFANTRINE DISPERSIBLE TABLET PL/24 FOR PREGNANT WOMEN -cht-stock-monitoring-workflow.items.male_condom.label = Male Condom -cht-stock-monitoring-workflow.items.female_condom.label = Female Condom -cht-stock-monitoring-workflow.items.pilplan_coc.label = Combined Oral Contraceptive (COC) - brand name PILPLAN -cht-stock-monitoring-workflow.items.ovrette_coc.label = Progestin-only Pill (COP) - brand name OVRETTE -cht-stock-monitoring-workflow.items.depo.label = Depo-Provera (DMPA) Injectable (Intramuscular) -cht-stock-monitoring-workflow.items.sayana_press.label = Sayana Press (DMPA) Injectable (Subcutaneous) -cht-stock-monitoring-workflow.items.cycle_beads.label = Cycle Beads (as a natural family planning method) -cht-stock-monitoring-workflow.items.aquatabs.label = Aquatabs -cht-stock-monitoring-workflow.items.chlorhexidine.label = CHLORHEXIDINE SOLUTION 7,1% contact.child.mother.indicator.title = Child and mother's indicators contact.child.mother.indicator.pregnant_from_15_49 = Number of pregnant women from 15-49 years old contact.child.mother.indicator.health_facility.delivery = Number of pregnant women who gave birth in a health facility @@ -460,316 +330,3 @@ contact.child.mother.indicator.potable.water = Number of households with access contact.child.mother.indicator.cash.transfert = Number of households that have benefited from cash transfers contact.child.mother.indicator.sexual.mutilation = Number of children with sexual mutilations contact.child.mother.indicator.malnutrition = Number of children aged 6-59 months having been screened for malnutrition in a household - - -cht-stock-monitoring-workflow.stock_order.message.select_category_label = Categories selection -cht-stock-monitoring-workflow.stock_order.message.select_category = Select the category of what you want to order -cht-stock-monitoring-workflow.stock_order.message.select_items = Select the different item you want to order -cht-stock-monitoring-workflow.stock_order.message.items_selection = Items selection -cht-stock-monitoring-workflow.stock_order.message.qty_before = Quantity before -cht-stock-monitoring-workflow.stock_order.message.qty_ordered = Quantity to order -cht-stock-monitoring-workflow.stock_order.message.qty_after = Quantity after -cht-stock-monitoring-workflow.stock_order.message.summary_header = Results/Summary page -cht-stock-monitoring-workflow.stock_order.message.submit_note =

    Be sure you Submit to complete this action.

    -cht-stock-monitoring-workflow.stock_order.message.summary_note = Stock items you ordered. -cht-stock-monitoring-workflow.stock_order.supply.message.summary_header = Results/Summary page -cht-stock-monitoring-workflow.stock_order.supply.message.submit_note =

    Be sure you Submit to complete this action.

    -cht-stock-monitoring-workflow.stock_order.supply.message.summary_note = Stock items you supplied. -cht-stock-monitoring-workflow.stock_order.tasks.stock_supply = Stock Supply -cht-stock-monitoring-workflow.stock_order.label.add_item_qty = Add item quantity -cht-stock-monitoring-workflow.stock_order.supply.message.qty_ordered = Quantity ordered: {{qty}} -cht-stock-monitoring-workflow.stock_order.supply.message.qty = Quantity to supply -cht-stock-monitoring-workflow.stock_return.message.summary_header = Results/Summary page -cht-stock-monitoring-workflow.stock_return.message.submit_note =

    Be sure you Submit to complete this action.

    -cht-stock-monitoring-workflow.stock_return.message.summary_note = Stock items you returned. -cht-stock-monitoring-workflow.stock_count.message.set_unit_constraint_message = Should be in the form x/y for x {{set_label}} and y {{unit_label}} -cht-stock-monitoring-workflow.stock_count.message.unit_quantity_hint = Add the quantity: {{quantity}} {{unit_label}} -cht-stock-monitoring-workflow.stock_supply.message.set_unit_constraint_message = Should be in the form x/y for x {{set_label}} and y {{unit_label}} -cht-stock-monitoring-workflow.stock_supply.message.unit_quantity_hint = Add the quantity: {{quantity}} {{unit_label}} -cht-stock-monitoring-workflow.stock_supply.confirmation.item_received_confirmation_question = Did you received {{qty_unit}} - - -cht-stock-monitoring-workflow.items.test_medecin.label = Medecin - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -cht-stock-monitoring-workflow.items.paracetamol.label = - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/project-config/translations/messages-fr.properties b/test/project-config/translations/messages-fr.properties index 5da6590..7031adb 100644 --- a/test/project-config/translations/messages-fr.properties +++ b/test/project-config/translations/messages-fr.properties @@ -2,114 +2,92 @@ contact.type.c10_central = Niveau Central contact.type.c10_central.plural = Niveaux Centraux contact.type.c10_central.new = Ajouter niveau central contact.type.c10_central.edit = Modifier niveau central - contact.type.c20_region = Région contact.type.c20_region.plural = Régions contact.type.c20_region.new = Ajouter région contact.type.c20_region.edit = Modifier région - contact.type.c30_district = District contact.type.c30_district.plural = Districts contact.type.c30_district.new = Ajouter district contact.type.c30_district.edit = Modifier district - contact.type.c40_health_area = Aire de santé contact.type.c40_health_area.plural = Aires de santé contact.type.c40_health_area.new = Ajouter Aire de santé contact.type.c40_health_area.edit = Modifier Aire de santé - contact.type.c50_supervision_area = Zone de Supervision contact.type.c50_supervision_area.edit = Modifier zone de supervision contact.type.c50_supervision_area.new = Nouvelle zone du supervision contact.type.c50_supervision_area.plural = Zones de Supervision - contact.type.c60_chw_site = Site ASC contact.type.c60_chw_site.edit = Modifier site ASC contact.type.c60_chw_site.new = Nouveau site ASC contact.type.c60_chw_site.plural = Sites ASC - contact.type.c70_village = Village contact.type.c70_village.edit = Modifier Village contact.type.c70_village.new = Nouveau Village contact.type.c70_village.plural = Villages - contact.type.c80_concession = Concession contact.type.c80_concession.edit = Modifier Concession contact.type.c80_concession.new = Nouvelle Concession contact.type.c80_concession.plural = Concession - contact.type.c90_household = Ménage contact.type.c90_household.plural = Ménages contact.type.c90_household.new = Ajouter ménage contact.type.c90_household.edit = Modifier ménage - contact.type.person = Personne contact.type.person.edit = Modifier personne contact.type.person.new = Nouvelle personne contact.type.person.plural = Personnes - contact.type.c12_central = Personne contact.type.c12_central.edit = Modifier personne contact.type.c12_central.new = Nouvelle personne contact.type.c12_central.plural = Personnes - contact.type.c22_region = Personne contact.type.c22_region.edit = Modifier personne contact.type.c22_region.new = Nouvelle personne contact.type.c22_region.plural = Personnes - contact.type.c32_district = Personne contact.type.c32_district.edit = Modifier personne contact.type.c32_district.new = Nouvelle personne contact.type.c32_district.plural = Personnes - contact.type.c42_health_area = Personne contact.type.c42_health_area.edit = Modifier personne contact.type.c42_health_area.new = Nouvelle personne contact.type.c42_health_area.plural = Personnes - contact.type.c52_supervisor = Personne contact.type.c52_supervisor.edit = Modifier personne contact.type.c52_supervisor.new = Nouvelle personne contact.type.c52_supervisor.plural = Personnes - contact.type.c62_chw = Personne contact.type.c62_chw.edit = Modifier personne contact.type.c62_chw.new = Nouvelle personne contact.type.c62_chw.plural = Personnes - contact.type.c72_village = Personne contact.type.c72_village.edit = Modifier personne contact.type.c72_village.new = Nouvelle personne contact.type.c72_village.plural = Personnes - contact.type.c82_concession = Personne contact.type.c82_concession.edit = Modifier personne contact.type.c82_concession.new = Nouvelle personne contact.type.c82_concession.plural = Personnes - contact.type.c92_household = Personne contact.type.c92_household.edit = Modifier personne contact.type.c92_household.new = Nouvelle personne contact.type.c92_household.plural = Membre du ménage - contact.type.c74_community_actor = Nouveau Acteur Communautaire contact.type.c74_community_actor.edit = Modifier Acteur Communautaire contact.type.c74_community_actor.new = Nouveau Acteur Communautaire contact.type.c74_community_actor.plural = Nouveaux Acteurs Communautaires - contact.sex.male = Homme contact.sex.female = Femme contact.sex. = Non Definis person.field.telephone = Téléphone - contact.pregnancy.lmp = Date des dernières règles contact.pregnancy.estimated_delivery = Date estimative de l''accouchement contact.pregnancy.type = Type de grossesse contact.pregnancy.high_risk = Haut risque contact.pregnancy.not_high_risk = Aucun risque contact-prgnancy-active = Grossesse Active - task.child_longitudinal_followup_1_24 = Suivi longitudinal de l'enfant 1 à 24 mois task.child_longitudinal_followup_2_5 = Suivi longitudinal de l'enfant 2 à 5 ans task.child_longitudinal_followup_6_12 = Suivi longitudinal de l'enfant 6 à 12 ans @@ -132,17 +110,14 @@ contact.delivery.number_pregnancy_confirmed = Grossesses Confirmées contact.delivery.number_of_children = Nombre de nouveaux nés contact.delivery.delivery_date = Date d'accouchement contact.delivery.general = Informations accouchements - task.pregnancy_followup = Suivi Grossesse task.priority.high = Elévé - enketo.geopicker.latitude = Latitude enketo.geopicker.longitude = Longitude enketo.geopicker.altitude = Altitude enketo.geopicker.accuracy = Précision enketo.geopicker.searchPlaceholder = Rechercher un lieu enketo.selectpicker.noneselected = Non Sélectionner - usertype.central_admin = Central Admin usertype.national_admin = National Admin usertype.district_admin = District Admin @@ -155,7 +130,6 @@ usertype.cvs = CVS usertype.wash_comity = Comité WASH usertype.savings = Manager CVSS usertype.manager_stock = Responsable Approvisionnement - task.pregnancy_confirmation = Confirmation de la grossesse contact.birth.certificate = Acte de naissance contact.birth.certificate_number = Numero de l''acte de naissance @@ -165,11 +139,9 @@ contact.fp.recent_fp_method = Méthode de PF Récente contact.fp.state = Status contact.fp.stop = Arrêt contact.fp.in_progress = En cours - task.overdue = Aujourd’hui -task.overdue.days = {DAYS, plural, =0{Aujourd''hui} =1{Retard d''1 jour} other{Retard de \# jours}} -task.days.left = {DAYS, plural, =1{1 jour restant} other{# jours restant}} - +task.overdue.days = {DAYS plural =0{Aujourd''hui} =1{Retard d''1 jour} other{Retard de \# jours}} +task.days.left = {DAYS plural =1{1 jour restant} other{# jours restant}} task.pregnancy_referral_followup = Suivi Référence Femme enceinte task.anc_followup = Réalisation Visite CPN task.fp_reference_followup = Référence FP {{contact.name}} @@ -177,10 +149,9 @@ task.fp_renewal_followup = Suivi PF task.treatment_followup_over_5 = Suivi traitement task.referral_followup_over_5 = Suivi référence +5 ans task.tb_treatment_followup = Suivi Traitement Hebdomadaire TB - admin.display = Affichage admin.display.datetime = Date et heure -admin.targets.description = Si désactivé, l'onglet cible sera masqué pour tous les utilisateurs. Un objectif de -1 montrera une cible sans objectif. +admin.targets.description = Si désactivé l'onglet cible sera masqué pour tous les utilisateurs. Un objectif de -1 montrera une cible sans objectif. app.name = Application branding.favicon.field = Petite icône branding.logo.field = Logo @@ -195,7 +166,7 @@ configuration.sms.test.from.number = À partir du numéro de téléphone configuration.sms.test.message.description = Limite de 144 caractères configuration.sms.test.number.validation.description = Veuillez saisir un numéro de téléphone valide sans tirets ni ponctuation. configuration.sms.test.title = Message d'essai -display.language.accordion.title = Les langages activés seront disponibles pour les utilisateurs en option lorsqu'ils sélectionnent leur langue principale. Nous vous recommandons de choisir 1 à 3 langues prises en charge et de désactiver le reste. Parmi les langues prises en charge activées, il devrait y avoir 0 traduction manquante. +display.language.accordion.title = Les langages activés seront disponibles pour les utilisateurs en option lorsqu'ils sélectionnent leur langue principale. Nous vous recommandons de choisir 1 à 3 langues prises en charge et de désactiver le reste. Parmi les langues prises en charge activées il devrait y avoir 0 traduction manquante. display.privacy.policies.current = Politique actuelle display.privacy.policies.select = Sélectionnez le fichier HTML display.privacy.policies.title = Les politiques de confidentialité @@ -223,7 +194,7 @@ images.header.tabs.icons.fa.icon = Icône Fontawesome images.header.tabs.icons.fontawesome.link = En savoir plus sur Fontawesome. images.header.tabs.icons.resource.icon = Icône de ressources images.header.tabs.icons.tab = Languette -images.icons.description = Les images téléchargées ici sont utilisées dans l'application à divers endroits comme spécifié dans le code d'application. Par exemple, l'image qui apparaît pour un widget particulier dans la page cible est spécifiée dans le code cible. Vous pouvez télécharger des images un à la fois, et si vous téléchargez une image avec le même nom qu'une image existante, elle sera écrasée avec le nouveau fichier. Il est recommandé que les images soient au format .svg ou .png et aient une taille inférieure à 500 Ko. Des ressources sont disponibles dans le +images.icons.description = Les images téléchargées ici sont utilisées dans l'application à divers endroits comme spécifié dans le code d'application. Par exemple l'image qui apparaît pour un widget particulier dans la page cible est spécifiée dans le code cible. Vous pouvez télécharger des images un à la fois et si vous téléchargez une image avec le même nom qu'une image existante elle sera écrasée avec le nouveau fichier. Il est recommandé que les images soient au format .svg ou .png et aient une taille inférieure à 500 Ko. Des ressources sont disponibles dans le images.partners.description = Tous les logos partenaires qui sont ajoutés ici seront affichés sur la page "À propos" de l'application. partner.logo.field = Logo partenaire partner.logo.upload = Télécharger le logo du partenaire @@ -274,18 +245,17 @@ submit.icon = Icône de téléchargement unique.id = Identifiant unique upload = Télécharger upload.sms.forms = Télécharger les formulaires SMS - admin.app.name = Configuration de l’application Cancel = Annuler Import\ from\ file = Importer à partir d’un fichier Add\ User = Ajouter un utilisateur -To\ add\ multiple\ users,\ please\ upload\ the\ appropriate\ spreadsheet. = Pour ajouter plusieurs utilisateurs, veuillez charger le fichier approprié. +To\ add\ multiple\ users\ please\ upload\ the\ appropriate\ spreadsheet. = Pour ajouter plusieurs utilisateurs veuillez charger le fichier approprié. Only\ .csv\ file\ are\ accepted. = Seuls les fichiers .csv sont acceptés. Upload\ .csv = Charger le .csv Are\ you\ sure\ you\ want\ to\ upload = Voulez-vous vraiment charger le fichier? -Yes,\ upload = Oui, charger +Yes\ upload = Oui charger Processing\ users = Traitement des utilisateurs en cours -This\ process\ can\ take\ a\ long\ time,\ if\ you''re\ uploading\ a\ lot\ of\ users,\ please\ be\ patient. = Le traitement peut prendre un peu de temps, si vous importez un grand nombre d’utilisateurs, s’il vous plait, soyez patient. +This\ process\ can\ take\ a\ long\ time\ if\ you''re\ uploading\ a\ lot\ of\ users\ please\ be\ patient. = Le traitement peut prendre un peu de temps si vous importez un grand nombre d’utilisateurs s’il vous plait soyez patient. Currently\ unavailable = Actuellement indisponible Someone\ else\ in\ the\ system\ is\ currently\ in\ the\ process\ of\ adding\ multiple\ users. = Quelqu’un d’autre dans le système est actuellement en train d’importer des utilisateurs. users\ added = utilisateurs ajoutés @@ -300,16 +270,15 @@ To\ resubmit\ the\ users\ containing\ errors\ \: = Pour corriger les erreurs et 3.\ Correct\ rows\ with\ errors\ and\ export\ to\ .csv = 3. Corriger les lignes contenant les erreurs et exporter le fichier au format csv 4.\ Reupload\ updated\ spreadsheet = 4. Charger de nouveau le fichier Back\ to\ user\ list = Retour à la liste des utilisateurs -upgrade.description = Pour mettre à niveau votre application vers une version, une bêta ou une branche spécifique, il est recommandé d'effectuer une première étape en cliquant sur "Staging". Cela permet d'effectuer un travail de fond pour préparer l'installation sans interrompre les utilisateurs. Une fois la mise en scène terminée, cliquez sur Installer pour procéder à la mise à niveau. Cette action ne peut pas être annulée, alors assurez-vous que vos données ont été sauvegardées et que vos utilisateurs sont informés de l'interruption de service. +upgrade.description = Pour mettre à niveau votre application vers une version une bêta ou une branche spécifique il est recommandé d'effectuer une première étape en cliquant sur "Staging". Cela permet d'effectuer un travail de fond pour préparer l'installation sans interrompre les utilisateurs. Une fois la mise en scène terminée cliquez sur Installer pour procéder à la mise à niveau. Cette action ne peut pas être annulée alors assurez-vous que vos données ont été sauvegardées et que vos utilisateurs sont informés de l'interruption de service. instance.upgrade.date = Date de mise à jour users.manage.add_single_user = Ajouter un utilisateur users.manage.back = Retour à la liste des utilisateurs users.manage.import_users = Importer à partir d'un fichier -login.unsupported_browser = Pour une meilleure experience avec l'application, veuillez contacter l'administrator ou votre superviseur. +login.unsupported_browser = Pour une meilleure experience avec l'application veuillez contacter l'administrator ou votre superviseur. login.unsupported_browser.outdated_cht_android = Demander leur de mettre à niveau cht-android. login.unsupported_browser.outdated_webview_apk = Demander leur de mettre à niveau l'apk webview. login.unsupported_browser.outdated_browser = Demander leur de mettre à niveau leur navigateur. - task.referral_followup=Suivi référence task.treatment.malaria=Suivi traitement malaria task.treatment.diarrhea=Suivi traitement diarhée @@ -337,9 +306,8 @@ task.sebac_alert_verification=Vérification d'Alerte task.sebac_verification_notification=Notification Vérification d'Alerte task.sebac_verification_result=Résultat Vérification d'Alerte task.sebac_test_result_reminder=Rappel des Résultat des Tests -task.sebac_result_notification_supervisor=Notification Résultat Tests Superviseur -task.sebac_result_notification_chw=Notification Résultat Tests ASC - +task.sebac_result_notification=Notification Résultat Tests +task.sebac_alert_dtc_notification=Notification d'Alerte target.home_visits=Visite à domicile target.2-home-visits-per-fam=% de ménages ayant reçu ≥2 VAD target.chv-receive-supervision-visit=% des ASC ayant reçu de visite de supervision 360 degré @@ -348,11 +316,10 @@ target.patient_assessment_over_5-24h=% >5 ans ayant reçu de soins dans les 24H target.preg-first-trimester=% des grossesses diagnostiquées dans le premier trimestre target.protocol-error-percentage=% des évaluations sans erreur de protocole target.protocol-error-count=# Total des erreurs de protocole - target.danger-signs-without-accompany=Signe (s) de danger sans référence ou accompagnement au CSCOM -target.symptoms-of-malaria-without-tdr=Signe de paludisme, TDR paludisme pas réalisé -target.fever-without-tdr=Présence de fièvre, TDR paludisme pas réalisé -target.tdr-without-malaria=CTA donnée par l''ASC, TDR paludisme négatif +target.symptoms-of-malaria-without-tdr=Signe de paludisme TDR paludisme pas réalisé +target.fever-without-tdr=Présence de fièvre TDR paludisme pas réalisé +target.tdr-without-malaria=CTA donnée par l''ASC TDR paludisme négatif target.incorrect-dosage-of-act-based-combination=Dose de CTA donnée par l''ASC incorrecte target.diarrhea-without-zinc=Diarrhée sans administration de zinc target.incorrect-dosage-of-zinc=Dose de Zinc donnée par l''ASC incorrecte @@ -372,7 +339,6 @@ target.unchanged-no-accompany=Pas de changement à 48H ou 72H ou 5eme jour sans target.not-improved-3d-no-accompany=Pas amélioré ou pas guéri à 72H sans référence/accompagnement au CSCOM target.not-improved-5d-no-accompany=Pas amélioré ou pas guéri le 5eme sans référence/accompagnement au CSCOM sms.token.login.help = - contact.profile.death.date = Date de décès contact.profile.death.place = Lieu du décès contact.profile.death.title = Décès @@ -381,10 +347,8 @@ contact.profile.death.places.village = Au village contact.profile.death.places.home = A la maison contact.profile.death.places.other = Autre contact.profile.death.places.undefined = Inconnu - sync.now = Rafraîchir Report\ Bug = Reporter une erreur - target.childcare_by_chw.title = Nombre de nouvelles consultations curatives d’enfants de moins de 5 ans par les ASC target.childcare_by_chw.fever.title = Nombre de TDR réalisé chez les enfants de moins de 5 ans présentant une fièvre target.childcare_by_chw.diarrhea.title = Nombre d’enfants de moins de 5 ans présentant une diarrhée traitée avec le zinc et SRO par l'ASC @@ -415,7 +379,6 @@ target.gsan_affected_men_chat = Nombre d’hommes touchés lors causeries éduca target.gsan_affected_women_chat = Nombre de femmes touchées lors des causeries éducatives target.gsan_chat_proportion = Proportion de causeries réalisées target.gsan_affected_men_genre = Nombre d’hommes sensibilisés sur l’approche genre - target.cvss.household_as_member.title = Nombre d'adhésion ménages à la CVSS target.cvss.individual_as_member.title = Nombre d'adhésion individuelle à la CVSS target.village_motivation_mecanism.title = Nombre de caisses ayant un mecanisme de motivation des ASC @@ -431,15 +394,23 @@ target.cvss.nutritional_demonstration.title = Nombre de caisses ayant appuyées target.cvss_average_contribution.title = Contribution moyenne des caisses de solidarité santé pour la période target.cvss_total_expense_transportation.title = Montant dépensé pour le transport( femmes enceintes et les enfants de moins de cinq ans) target.cvss_total_expense_nd.title = Montant dépensé pour les demonstrations nutritionnelles -target.cvss.cvss_donation_diaspora.title = Montant mobilisé par la diaspora -target.cvss.cvss_donation_private_sector.title = Montant mobilisé par le secteur privé -target.cvss.cvss_total_contribution.title = Contribution Totale target.cvss_member_total_expense.title = Montant de dépenses enregistrées par les membre CVSS target.chw_helped_in_nature_by_community.title = Nombre d'ASC ayant reçu un appui en nature target.chw_financially_helpedby_community.title = Nombre d'ASC ayant recu une motivation financiere de la CVSS target.rdts_carried_out_5_plus_with_fever.title = Nombre de TDR réalisé chez les plus de 5 ans présentant une fièvre target.number_of_traitments_followup_carried_out.title = Nombre de suivi traitement réalisé (PEC des cas) par l'ASC - +target.chw_site_visited_in_community_without_chw.title = % Site ASC ayant fait l'objet d'une visite dans la communauté sans ASC +target.chw_having_been_directly_observed_by_the_supervisor.title = % d'ASC ayant été observé directement par le superviseur +target.chw_having_had_an_individual_meeting_with_the_supervisor.title = % d'ASC ayant fait une rencontre individuelle avec le superviseur +target.pourcentage_de_satisfaction.title = % d'ASC ayant dun niveau de compétence acceptable ≥ 80% +target.pourcentage_geolocalise.title = Pourcentage de sites geolocalisé +target.supervision_visit_realization = Pourcentage de vistes de supervision réalisées +target.percentage_chw_received_visit_sd.title = % d'ASC ayant reçu une visite de supervision dédiée avec toutes les étapes +target.chw_observed_during_assessment.title= % d'ASC observé par superviseur dédié pendant la prise en charge d'un malade +target.chw_rdts_correctly_carried_out.title= Nombre de TDR Paludisme correctement réalisé par l’ASC pendant la supervision +target.chw_rdts_carrying_out_malaria.title= Nombre ASCs observés par le SD pour la réalisation du TDR Paludisme +target.number_of_children_zero_doses.title = Nombre d'enfants de 0 à 23 mois avec zéro dose +target.number_of_children_vaccination_not_up_to_date.title = Nombre d'enfants de 0 à 23 mois partiellement vaccinés contact.savings.title = Fiche de contact du groupe CVSS contact.savings.manager.name = Nom manager CVSS contact.savings.cvss_balance = Solde total @@ -457,14 +428,13 @@ contact.savings.beneficiary.total_contribution = Cotisation totale Record contact.savings.beneficiary.total_expense = Total des depense enregistré contact.savings.beneficiary.total_loan = Prêt Total contact.savings.beneficiary.loan_balance = Solde total du prêt - task.savings.loan_reminder = Rappel de prêt task.savings.confirmation_of_expenditure = Confirmation des dépenses task.savings.loan_reimbursement = Remboursement de prêt +sms.token.login.help = Salut prêt à commencer ? Vous aurez besoin de données et d’une bonne connexion. Accédez à https://play.google.com/store/apps/details?id=org.medicmobile.webapp.mobile.moh_mali_chw&hl=en_US pour installer l'application. Après l'installation cliquez sur le lien suivant pour vous connecter. target.gsan_affected_women_genre = Femmes sensibilisées sur l’approche genre target.chw_promo_pregnancy = Visites à domicile réalisées pour les activités promotionnelles + suivi de la femme enceinte target.curative_home_visits = Visite à domicile réalisés pour les activités curatives - vaccine.status.no_dose = Zero Dose vaccine.status.full_dose = Complet vaccine.status.partial_dose = Incomplet @@ -476,7 +446,6 @@ child.schooling = Scolarité child.schooling.not_schooled = Non scolarisé child.schooling.schooled = Scolarisé child.schooling.waiting = En attente - reports.sidebar.filter.title = Filtre reports.sidebar.filter.form_type = Type de Formulaire reports.sidebar.filter.place = Lieu @@ -484,7 +453,6 @@ reports.sidebar.filter.date = Date reports.sidebar.filter.status = Status search_bar.filter.label = Filtre fast_action_button.title = Nouveau - contact.child.mother.indicator.title = Indicateurs de la mère et de l'enfant contact.child.mother.indicator.pregnant_from_15_49 = Nombre des femmes enceintes de 15-49 ans contact.child.mother.indicator.health_facility.delivery = Nombre des femmes enceintes ayant accouché dans une formation sanitaire @@ -493,418 +461,7 @@ contact.child.mother.indicator.no.vaccine = Nombre d'enfants n'ayant reçu aucun contact.child.mother.indicator.fully.immunized = Nombre d'enfants complètement vaccinés contact.child.mother.indicator.early.learning = Nombre d'enfant de 2-5 ans qui participe à un type de programme d'apprentissage précoce contact.child.mother.indicator.improved.latrine = Nombre de ménage disposant de latrine améliorée -contact.child.mother.indicator.potable.water = Nombre de ménage qui a accès à l'eau potable (pompe, réseau public) +contact.child.mother.indicator.potable.water = Nombre de ménage qui a accès à l'eau potable (pompe réseau public) contact.child.mother.indicator.cash.transfert = Nombre de ménage qui recoit un cash transfert contact.child.mother.indicator.sexual.mutilation = Nombre d'enfant fille ayant subi une mutilation sexuelle contact.child.mother.indicator.malnutrition = Nombre d\'enfant de 6-59 mois ayant ete depiste de la malnutrition dans un menage - -cht-stock-monitoring-workflow.stock_count.balance_fill = Utiliser ce formulaire pour enregistrer votre stock actuel -cht-stock-monitoring-workflow.stock_count.commodities_note =

    Stock actuel

    -cht-stock-monitoring-workflow.stock_count.message.summary_header = Résultats -cht-stock-monitoring-workflow.stock_count.contact_summary.title = Fiche de Stock -cht-stock-monitoring-workflow.stock_count.message.submit_note =

    Assurez-vous de soumettre pour complèter cette action.

    -cht-stock-monitoring-workflow.stock_count.message.summary_note = Votre stock actuel -cht-stock-monitoring-workflow.stock_count.tasks.stock-count = Inventaire -cht-stock-monitoring-workflow.stock_count.forms.additional_doc_title = Stock livré -cht-stock-monitoring-workflow.stock_count.forms.item_used_question = Quantité de {{item}} -cht-stock-monitoring-workflow.stock_supply.page_1.header = Sélectionner les éléments à livrer -cht-stock-monitoring-workflow.stock_supply.forms.select_category = Sélectionner les catégories des éléments à retourner -cht-stock-monitoring-workflow.stock_supply.page_1.select_input = Sélectionner -cht-stock-monitoring-workflow.stock_supply.page_1.select_input_hint = Sélectionner tous les éléments à livrer -cht-stock-monitoring-workflow.stock_supply.item.stock_on_hand = Stock actuel -cht-stock-monitoring-workflow.stock_supply.item.quantity_of = Quantité de -cht-stock-monitoring-workflow.stock_supply.summary_header = Page Résultats -cht-stock-monitoring-workflow.stock_supply.submit_note =

    Assurez vous de soumettre pour enregistrer cette action.

    -cht-stock-monitoring-workflow.stock_supply.summary_note = Stock livré. -cht-stock-monitoring-workflow.stock_supply.tasks.reception-confirmation = Stock reçu -cht-stock-monitoring-workflow.stock_supply.confirmation.item_received_question = Avez-vous reçu {{qty}} {{unit}} de {{item}} -cht-stock-monitoring-workflow.stock_supply.choices.yes_no.yes = Oui -cht-stock-monitoring-workflow.stock_supply.choices.yes_no.no = Non -cht-stock-monitoring-workflow.stock_supply.forms.additional_doc_title = Stock utilisé -cht-stock-monitoring-workflow.stock_supply.forms.item_used_question = Quantité de {{item}} -cht-stock-monitoring-workflow.stock_supply.confirmation.qty_received_question = Entrer la quantité reçue -cht-stock-monitoring-workflow.stock_supply.tasks.stock-descreptancy = Résolution Conflit -cht-stock-monitoring-workflow.stock_supply.forms.select_items = Sélectionner les différents éléments que vous voulez livrer -cht-stock-monitoring-workflow.stock_supply.confirmation.summary_note = Stock que vous avez reçu. -cht-stock-monitoring-workflow.stock_supply.discrepancy.summary_header = Page Résultats -cht-stock-monitoring-workflow.stock_supply.discrepancy.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    -cht-stock-monitoring-workflow.stock_supply.discrepancy.summary_note = Résolution de conflits -cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_issued = Quantité envoyée : {{qty}} -cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_confirmed = Quantité confirmée : {{qty}} -cht-stock-monitoring-workflow.stock_supply.discrepancy.quantity_final = Quelle est la quantité finale ? -cht-stock-monitoring-workflow.stock_supply.label.confirm_qty = Confirmer les quantités -cht-stock-monitoring-workflow.stock_return.forms.select_category_label = Sélection Catégorie -cht-stock-monitoring-workflow.stock_return.forms.select_category = Sélectionner la catégorie de l'élément à retourner -cht-stock-monitoring-workflow.stock_return.forms.select_items = Sélectionner les différents éléments à retourner -cht-stock-monitoring-workflow.stock_return.forms.select_items.return_reason = Raison du retour -cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.excess = Excès -cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.damaged = Détruit -cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.expired = Expiré -cht-stock-monitoring-workflow.stock_return.forms.select_items.reason.other = Autre -cht-stock-monitoring-workflow.stock_return.message.items_selection = Sélection d'éléments -cht-stock-monitoring-workflow.stock_return.forms.specify = Specifier Raison -cht-stock-monitoring-workflow.stock_return.forms.qty_before = Quantité avant -cht-stock-monitoring-workflow.stock_return.forms.qty_after = Quantité aprés -cht-stock-monitoring-workflow.stock_return.forms.qty_returned = Quantité à retourner -cht-stock-monitoring-workflow.stock_return.summary_header = Page Résultats/Résumé -cht-stock-monitoring-workflow.stock_return.summary_note = éléments retournés. -cht-stock-monitoring-workflow.stock_return.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    -cht-stock-monitoring-workflow.stock_return.confirmation.item_received_question = Avez-vous reçu {{qty}} ? -cht-stock-monitoring-workflow.stock_return.confirmation.qty_received_question = Entrer la quantité reçue -cht-stock-monitoring-workflow.stock_return.tasks.return-confirmation = Confirmation Retour -cht-stock-monitoring-workflow.stock_out.tasks.stock_out = Stock épuisé -cht-stock-monitoring-workflow.stock_out.message.stock_at_hand = Stock en main: {{qty}} -cht-stock-monitoring-workflow.stock_out.message.stock_required = Stock nécessaire: {{qty}} -cht-stock-monitoring-workflow.stock_out.message.summary_header = Résumé -cht-stock-monitoring-workflow.stock_out.message.submit_note = {{name}} a épuisé son stock des éléments suivants: -cht-stock-monitoring-workflow.stock_out.message.summary_note = Stock épuisé -cht-stock-monitoring-workflow.items.artemether_pl_18.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/18 -cht-stock-monitoring-workflow.items.artemether_pl_24.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 -cht-stock-monitoring-workflow.items.artesunate_50.label = ARTESUNATE SUPPOSITOIRE 50 MG -cht-stock-monitoring-workflow.items.artesunate_200.label = ARTESUNATE SUPPOSITOIRE 200 MG -cht-stock-monitoring-workflow.items.artemether_pl_6.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/6 GRATUITS ENFANT < 5ANS -cht-stock-monitoring-workflow.items.paracetamol_syrup.label = Paracétamol Sirop -cht-stock-monitoring-workflow.items.paracetamol_tablet_500.label = PARACÉTAMOL COMPRIMÉ 500MG -cht-stock-monitoring-workflow.items.paracetamol_tablet_100.label = PARACETAMOL COMP 100 MG GRATUIT ENFANT < 5 ANS -cht-stock-monitoring-workflow.items.sro_zinc.label = SRO+ZINC (ORASEL….) -cht-stock-monitoring-workflow.items.free_sro.label = SRO GRATUIT -cht-stock-monitoring-workflow.items.free_zinc.label = ZINC GRATUIT ENFANT < 5 ANS -cht-stock-monitoring-workflow.items.amoxicillin_syrup_125.label = AMOXICILLINE SIROP 125 MG -cht-stock-monitoring-workflow.items.amoxicillin_syrup_250.label = AMOXICILLIN SYRUP 250 MG -cht-stock-monitoring-workflow.items.balembo_syrup.label = BALEMBO SIROP ENFANT -cht-stock-monitoring-workflow.items.carbetux_syrup.label = CARBETUX SIROP -cht-stock-monitoring-workflow.items.carbo.label = CARBOCYSTEÏNE 2% -cht-stock-monitoring-workflow.items.amoxicillin_tablet_250.label = AMOXICILLINE 250 COMP GRATUIT/MALNUTRIS -cht-stock-monitoring-workflow.items.amoxicillin_syrup_125_free.label = AMOXICILLINE SIROP 125 MG GRATUIT/MALNUTRIS -cht-stock-monitoring-workflow.items.amoxicillin_syrup_250_free.label = AMOXICILLINE SIROP 250 MG GRATUIT/MALNUTRIS -cht-stock-monitoring-workflow.items.albendazole_tablet_200.label = ABENDAZOLE 200 MG COMP GRATUIT -cht-stock-monitoring-workflow.items.albendazole_tablet_400.label = ABENDAZOLE COMP 400 MG GRATUIT -cht-stock-monitoring-workflow.items.vitamin_100_ui.label = CAPSULE DE VITAMINE A 100 000 UI -cht-stock-monitoring-workflow.items.vitamin_200_ui.label = CAPSULE DE VITAMINE A 200 000 UI -cht-stock-monitoring-workflow.items.folic_acid.label = FER/ACIDE FOLIQUE GRATUIT POUR LES MALNUTRIS -cht-stock-monitoring-workflow.items.plumply_nut.label = PLUMPLY NUT GRATUIT POUR LES MAS-C -cht-stock-monitoring-workflow.items.plumply_sup.label = PLUMPY SUP GRATUIT POUR LES MAM -cht-stock-monitoring-workflow.items.supercereal.label = SUPERCEREAL (CSB) GRATUIT POUR LES MALNUTRIS -cht-stock-monitoring-workflow.items.gant.label = GANTS EN VRAC -cht-stock-monitoring-workflow.items.tdr.label = TDR GRATUIT -cht-stock-monitoring-workflow.items.artemether_free_pl_12.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/12 GRATUIT -cht-stock-monitoring-workflow.items.artemether_free_pl_24.label = ARTEMETHER+ LUMÉFANTRINE COMPRIMÉ DISPERSIBLE PL/24 GRATUIT POUR FEMME ENCEINTE -cht-stock-monitoring-workflow.items.male_condom.label = CONDOM MASCULIN -cht-stock-monitoring-workflow.items.female_condom.label = CONDOM FEMININ -cht-stock-monitoring-workflow.items.pilplan_coc.label = PILPLAN (COC) -cht-stock-monitoring-workflow.items.ovrette_coc.label = OVRETTE (COP) -cht-stock-monitoring-workflow.items.depo.label = DEPO-PROVERA (DMPA IM) -cht-stock-monitoring-workflow.items.sayana_press.label = SAYANA PRESS (DMPA S/C) -cht-stock-monitoring-workflow.items.cycle_beads.label = COLLIER DU CYCLE -cht-stock-monitoring-workflow.items.aquatabs.label = Aquatabs -cht-stock-monitoring-workflow.items.chlorhexidine.label = CHLORHEXIDINE SOLUTION 7,1% -cht-stock-monitoring-workflow.stock_order.message.select_category_label = Sélection des catégories -cht-stock-monitoring-workflow.stock_order.message.select_category = Sélectionner les catégories des éléments à commander -cht-stock-monitoring-workflow.stock_order.message.select_items = Sélectionner les différents éléments à commander -cht-stock-monitoring-workflow.stock_order.message.items_selection = Sélection des éléments -cht-stock-monitoring-workflow.stock_order.message.qty_before = Quantité avant -cht-stock-monitoring-workflow.stock_order.message.qty_ordered = Quantité à commander -cht-stock-monitoring-workflow.stock_order.message.qty_after = Quantité aprés -cht-stock-monitoring-workflow.stock_order.message.summary_header = Page Résultats/Résumé -cht-stock-monitoring-workflow.stock_order.message.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    -cht-stock-monitoring-workflow.stock_order.message.summary_note = éléments commandés. -cht-stock-monitoring-workflow.stock_order.supply.message.summary_header = Page Résultats/Résumé -cht-stock-monitoring-workflow.stock_order.supply.message.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    -cht-stock-monitoring-workflow.stock_order.supply.message.summary_note = éléments livrés. -cht-stock-monitoring-workflow.stock_order.tasks.stock_supply = Stock à livrer -cht-stock-monitoring-workflow.stock_order.label.add_item_qty = Ajouter la quantité -cht-stock-monitoring-workflow.stock_order.supply.message.qty_ordered = Quantité commandée : {{qty}} -cht-stock-monitoring-workflow.stock_order.supply.message.qty = Quantité à livrer -cht-stock-monitoring-workflow.stock_return.message.summary_header = Page Résultats/Résumé -cht-stock-monitoring-workflow.stock_return.message.submit_note =

    Assurez-vous de soumettre pour compléter cette action.

    -cht-stock-monitoring-workflow.stock_return.message.summary_note = éléments retournés. -cht-stock-monitoring-workflow.stock_count.message.set_unit_constraint_message = Doit être sous la forme x/y pour x {{set_label}} et y {{unit_label}} -cht-stock-monitoring-workflow.stock_count.message.unit_quantity_hint = Ajouter quantité : {{quantity}} {{unit_label}} -cht-stock-monitoring-workflow.stock_supply.message.set_unit_constraint_message = Doit étre sous la forme x/y pour x {{set_label}} et y {{unit_label}} -cht-stock-monitoring-workflow.stock_supply.message.unit_quantity_hint = Ajouter quantité : {{quantity}} {{unit_label}} -cht-stock-monitoring-workflow.stock_supply.confirmation.item_received_confirmation_question = Avez-vous reçu {{qty_unit}} - -cht-stock-monitoring-workflow.items.test_medecin.label = Medicament - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -cht-stock-monitoring-workflow.items.paracetamol.label = Paracetamole - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/test/stock-count.spec.js b/test/stock-count.spec.js index f0bdc80..839bdf2 100644 --- a/test/stock-count.spec.js +++ b/test/stock-count.spec.js @@ -2,6 +2,7 @@ const { fork } = require('child_process'); const path = require('path'); const fs = require('fs-extra'); const { once } = require('events'); +const ExcelJS = require('exceljs'); const { stockCountScenario } = require('./mocks/mocks'); const { @@ -22,23 +23,71 @@ describe('Stock count', () => { it('Add stock count summaries test', async() => { const processDir = process.cwd(); - const childProcess = fork('../../main.js', stockCountScenario); + const childProcess = fork('../../main.js', stockCountScenario.initScenario); await once(childProcess, 'close'); const formPath = path.join(processDir, 'forms', 'app', `stock_count.xlsx`); const formPropertiesPath = path.join(processDir, 'forms', 'app', `stock_count.properties.json`); const stockMonitoringConfig = path.join(processDir, 'stock-monitoring.config.json'); - // Check that stock monitoring is initialized and stock count form is generated + // Check that stock monitoring is initialized and stock count xform is generated expect(fs.existsSync(stockMonitoringConfig)).toBe(true); expect(fs.existsSync(formPropertiesPath)).toBe(true); expect(fs.existsSync(formPath)).toBe(true); - // Removing the stock monitoring init file and stock count file + // Check that the products are available in stock count xform + const productCategoryList = stockCountScenario.productCategoryScenario; + const productsList = stockCountScenario.productsScenario; + const workbook = new ExcelJS.Workbook(); + await workbook.xlsx.readFile(formPath); + const surveyWorkSheet = workbook.getWorksheet('survey'); + const nameCol = surveyWorkSheet.getColumn('B'); + const cellProductCategoriesList = []; + const cellProductsList = []; + let productCatIndex =0; + let productIndex = 0; + nameCol.eachCell(function(cell){ + + if(cell.value === productCategoryList[productCatIndex] && productCatIndex < productCategoryList.length){ + cellProductCategoriesList.push(cell.value); + productCatIndex ++; + productIndex = 0; + } + + if(cell.value === productsList[productIndex] && productIndex < productsList.length){ + cellProductsList.push(cell.value); + productIndex ++; + } + + }); + + expect(productsList.length).toBe(cellProductsList.length); + expect(productsList.entries).toStrictEqual(cellProductsList.entries); + + expect(productCategoryList.length).toBe(cellProductCategoriesList.length); + expect(productCategoryList.entries).toStrictEqual(cellProductCategoriesList.entries); + + //Removing the stock monitoring init file and stock count file expect(fs.unlinkSync(stockMonitoringConfig)).toBe(undefined); expect(fs.unlinkSync(formPath)).toBe(undefined); expect(fs.unlinkSync(formPropertiesPath)).toBe(undefined); + const translationFiles = fs.readdirSync(path.join(processDir, 'translations')); + for(const translationFile of translationFiles){ + + const messageFileContent = fs.readFileSync(path.join(processDir, 'translations', translationFile), {encoding: 'utf-8'}); + expect(messageFileContent).not.toBe(''); + const newMessageContent = messageFileContent.split('\n').map(message => { + if(!message.toString().includes('cht-stock-monitoring-workflow') && message.toString()!==''){ + return `${message.toString()}\n`; + } + }); + + expect(newMessageContent.includes('cht-stock-monitoring-workflow')).toBe(false); + fs.truncate(path.join(processDir, 'translations', translationFile), 0, function () {}); + fs.writeFile(path.join(processDir, 'translations', translationFile),newMessageContent.toString().replaceAll(',', '')); + + } }); }); From 2f4e312812186ec26074e8e09c1e5af6f7684097 Mon Sep 17 00:00:00 2001 From: Foromo Ernest Teoro Date: Wed, 25 Sep 2024 15:07:10 +0100 Subject: [PATCH 5/7] fix: conflicts and merge master into here --- package-lock.json | 1400 +++++++++++++++++++++++++++++++++++++++------ 1 file changed, 1237 insertions(+), 163 deletions(-) diff --git a/package-lock.json b/package-lock.json index 28bfda4..355713a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -30,9 +30,9 @@ "eslint": "^6.8.0", "eslint-plugin-json": "^2.0.1", "git-cz": "^4.9.0", + "husky": "^9.1.6", "jest": "^29.7.0", "rewire": "^6.0.0", - "husky": "^9.1.6", "semantic-release": "^24.1.1" } }, @@ -49,16 +49,6 @@ "node": ">=6.0.0" } }, - "node_modules/@ampproject/remapping/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, "node_modules/@babel/code-frame": { "version": "7.12.11", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", @@ -68,6 +58,169 @@ "@babel/highlight": "^7.10.4" } }, + "node_modules/@babel/compat-data": { + "version": "7.25.4", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", + "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", + "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.24.7", + "@babel/generator": "^7.25.0", + "@babel/helper-compilation-targets": "^7.25.2", + "@babel/helper-module-transforms": "^7.25.2", + "@babel/helpers": "^7.25.0", + "@babel/parser": "^7.25.0", + "@babel/template": "^7.25.0", + "@babel/traverse": "^7.25.2", + "@babel/types": "^7.25.2", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", + "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.25.6", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", + "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.25.2", + "@babel/helper-validator-option": "^7.24.8", + "browserslist": "^4.23.1", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", + "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.25.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", + "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.24.7", + "@babel/helper-simple-access": "^7.24.7", + "@babel/helper-validator-identifier": "^7.24.7", + "@babel/traverse": "^7.25.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", + "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", + "dev": true, + "dependencies": { + "@babel/traverse": "^7.24.7", + "@babel/types": "^7.24.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", + "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-validator-identifier": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", @@ -77,6 +230,28 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-validator-option": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", + "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz", + "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==", + "dev": true, + "dependencies": { + "@babel/template": "^7.25.0", + "@babel/types": "^7.25.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/highlight": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz", @@ -154,16 +329,6 @@ "node": ">=4" } }, - "node_modules/@colors/colors": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", - "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.1.90" - } - }, "node_modules/@babel/parser": { "version": "7.25.3", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz", @@ -469,9 +634,9 @@ } }, "node_modules/@babel/types": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", - "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==", + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", "dev": true, "dependencies": { "@babel/helper-string-parser": "^7.24.8", @@ -488,6 +653,16 @@ "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", "dev": true }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, "node_modules/@commitlint/cli": { "version": "19.5.0", "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.5.0.tgz", @@ -1072,16 +1247,6 @@ } } }, - "node_modules/@jest/reporters/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, "node_modules/@jest/schemas": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", @@ -1108,16 +1273,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/source-map/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, "node_modules/@jest/test-result": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", @@ -1174,16 +1329,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/transform/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, "node_modules/@jest/types": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", @@ -1215,16 +1360,6 @@ "node": ">=6.0.0" } }, - "node_modules/@jridgewell/gen-mapping/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", @@ -1250,14 +1385,13 @@ "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", "dev": true, - "optional": true, "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" } }, "node_modules/@medic/eslint-config": { @@ -2046,15 +2180,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@types/conventional-commits-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/@types/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", - "integrity": "sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/babel__core": { "version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", @@ -2096,6 +2221,15 @@ "@babel/types": "^7.20.7" } }, + "node_modules/@types/conventional-commits-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", + "integrity": "sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/graceful-fs": { "version": "4.1.9", "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", @@ -2146,6 +2280,12 @@ "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", "dev": true }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "dev": true + }, "node_modules/acorn": { "version": "8.8.2", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", @@ -2260,6 +2400,19 @@ "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", "dev": true }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/archiver": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/archiver/-/archiver-5.3.1.tgz", @@ -2766,6 +2919,27 @@ "underscore": "^1.9.1" } }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz", + "integrity": "sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA==", + "dev": true + }, "node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", @@ -3117,6 +3291,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, "node_modules/core-util-is": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", @@ -3188,6 +3368,27 @@ "node": ">= 10" } }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -3404,14 +3605,11 @@ "node": ">=8" } }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, "engines": { "node": ">=8" } @@ -3425,6 +3623,18 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -4460,6 +4670,15 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, "node_modules/expand-tilde": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", @@ -4573,6 +4792,15 @@ "reusify": "^1.0.4" } }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, "node_modules/figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", @@ -4838,6 +5066,15 @@ "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", @@ -5288,6 +5525,25 @@ "node": ">=16.20" } }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/import-meta-resolve": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", @@ -5518,43 +5774,673 @@ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/issue-parser": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/issue-parser/-/issue-parser-7.0.1.tgz", + "integrity": "sha512-3YZcUUR2Wt1WsapF+S/WiA2WmlW0cWAoPccMqne7AxEBhCdFeTPjfv/Axb8V2gyCgY3nRw+ksZ3xSUX+R47iAg==", + "dev": true, + "dependencies": { + "lodash.capitalize": "^4.2.1", + "lodash.escaperegexp": "^4.1.2", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.uniqby": "^4.7.0" + }, + "engines": { + "node": "^18.17 || >=20.6.1" + } + }, + "node_modules/java-properties": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz", + "integrity": "sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "dev": true, + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/dedent": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", + "dev": true, + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/jest-circus/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-circus/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "dev": true, + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/@babel/code-frame": { + "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz", + "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.24.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/jest-message-util/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "dev": true, + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "dev": true, + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/issue-parser": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/issue-parser/-/issue-parser-7.0.1.tgz", - "integrity": "sha512-3YZcUUR2Wt1WsapF+S/WiA2WmlW0cWAoPccMqne7AxEBhCdFeTPjfv/Axb8V2gyCgY3nRw+ksZ3xSUX+R47iAg==", + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "dev": true, "dependencies": { - "lodash.capitalize": "^4.2.1", - "lodash.escaperegexp": "^4.1.2", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.uniqby": "^4.7.0" + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" }, "engines": { - "node": "^18.17 || >=20.6.1" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/java-properties": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz", - "integrity": "sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==", + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, "engines": { - "node": ">= 0.6.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" } }, "node_modules/jiti": { @@ -5584,6 +6470,18 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -6026,6 +6924,15 @@ "node": ">=12" } }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, "node_modules/marked": { "version": "12.0.2", "resolved": "https://registry.npmjs.org/marked/-/marked-12.0.2.tgz", @@ -6097,15 +7004,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dev": true, - "dependencies": { - "tmpl": "1.0.5" - } - }, "node_modules/merge": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/merge/-/merge-2.1.1.tgz", @@ -8982,6 +9880,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-limit/node_modules/yocto-queue": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/p-locate": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", @@ -9243,6 +10153,88 @@ "node": ">=4" } }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-dir/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -9252,6 +10244,32 @@ "node": ">= 0.8.0" } }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/pretty-ms": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.1.0.tgz", @@ -9281,6 +10299,19 @@ "node": ">=0.4.0" } }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/proto-list": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz", @@ -9296,6 +10327,22 @@ "node": ">=6" } }, + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ] + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -9340,6 +10387,12 @@ "node": ">=0.10.0" } }, + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true + }, "node_modules/read-package-up": { "version": "11.0.0", "resolved": "https://registry.npmjs.org/read-package-up/-/read-package-up-11.0.0.tgz", @@ -9572,6 +10625,15 @@ "node": ">=4" } }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -10336,6 +11398,12 @@ "node": ">=4" } }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, "node_modules/skin-tone": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/skin-tone/-/skin-tone-2.0.0.tgz", @@ -10386,6 +11454,16 @@ "node": ">=0.10.0" } }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, "node_modules/spawn-error-forwarder": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/spawn-error-forwarder/-/spawn-error-forwarder-1.0.0.tgz", @@ -10439,6 +11517,27 @@ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/stream-combiner2": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz", @@ -10869,15 +11968,6 @@ "node": ">= 0.8.0" } }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/type-fest": { "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", @@ -11083,16 +12173,6 @@ "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", "dev": true }, - "node_modules/validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, "node_modules/v8-to-istanbul": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", @@ -11107,14 +12187,14 @@ "node": ">=10.12.0" } }, - "node_modules/v8-to-istanbul/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, "node_modules/vscode-json-languageservice": { @@ -11270,6 +12350,12 @@ "node": ">=10" } }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, "node_modules/yargs": { "version": "17.7.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", @@ -11298,12 +12384,12 @@ } }, "node_modules/yocto-queue": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", - "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, "engines": { - "node": ">=12.20" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -11321,18 +12407,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/zip-stream": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-4.1.0.tgz", From 81007024669f553a5418f4af7fecdedb32398b02 Mon Sep 17 00:00:00 2001 From: Foromo Ernest Teoro Date: Wed, 25 Sep 2024 16:00:05 +0100 Subject: [PATCH 6/7] fix:contacts forms are removed --- .../c50_supervision_area-create.properties.json | 12 ------------ .../contact/c50_supervision_area-create.xlsx | Bin 24721 -> 0 bytes .../c52_supervision_area-create.properties.json | 15 --------------- .../forms/contact/c52_supervisor-create.xlsx | Bin 17088 -> 0 bytes .../contact/c60_chw_site-create.properties.json | 12 ------------ .../forms/contact/c60_chw_site-create.xlsx | Bin 17569 -> 0 bytes .../contact/c62_chw-create.properties.json | 15 --------------- .../forms/contact/c62_chw-create.xlsx | Bin 18319 -> 0 bytes .../forms/contact/place-types.json | 5 ----- 9 files changed, 59 deletions(-) delete mode 100644 test/project-config/forms/contact/c50_supervision_area-create.properties.json delete mode 100644 test/project-config/forms/contact/c50_supervision_area-create.xlsx delete mode 100644 test/project-config/forms/contact/c52_supervision_area-create.properties.json delete mode 100644 test/project-config/forms/contact/c52_supervisor-create.xlsx delete mode 100644 test/project-config/forms/contact/c60_chw_site-create.properties.json delete mode 100644 test/project-config/forms/contact/c60_chw_site-create.xlsx delete mode 100644 test/project-config/forms/contact/c62_chw-create.properties.json delete mode 100644 test/project-config/forms/contact/c62_chw-create.xlsx delete mode 100644 test/project-config/forms/contact/place-types.json diff --git a/test/project-config/forms/contact/c50_supervision_area-create.properties.json b/test/project-config/forms/contact/c50_supervision_area-create.properties.json deleted file mode 100644 index 48ba295..0000000 --- a/test/project-config/forms/contact/c50_supervision_area-create.properties.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "title": [ - { - "locale": "en", - "content": "New supervision area" - }, - { - "locale": "fr", - "content": "Nouvelle zone de supervision" - } - ] -} \ No newline at end of file diff --git a/test/project-config/forms/contact/c50_supervision_area-create.xlsx b/test/project-config/forms/contact/c50_supervision_area-create.xlsx deleted file mode 100644 index 374177c2a3e88a8565d7a74d6905a1fd1796497b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24721 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 SXfQAc0pWGvAx=x8K|BD{vCba= diff --git a/test/project-config/forms/contact/c52_supervision_area-create.properties.json b/test/project-config/forms/contact/c52_supervision_area-create.properties.json deleted file mode 100644 index 298aef4..0000000 --- a/test/project-config/forms/contact/c52_supervision_area-create.properties.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "title": [ - { - "locale": "en", - "content": "Edit supervision area" - }, - { - "locale": "fr", - "content": "Modifier zone de supervision" - } - ], - "context": { - "expression": "user.role !== 'oca_supervisor'" - } -} \ No newline at end of file diff --git a/test/project-config/forms/contact/c52_supervisor-create.xlsx b/test/project-config/forms/contact/c52_supervisor-create.xlsx deleted file mode 100644 index 9ae09099e486d0556d8cefc5ad47d91fc7bbe378..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17088 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 cYx;{VQ;-G&sN-*T4iShEu(>B8{M*(41N^E Date: Wed, 25 Sep 2024 16:24:35 +0100 Subject: [PATCH 7/7] fix: unit test failing --- package-lock.json | 433 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 3 +- 2 files changed, 435 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 355713a..02e0d85 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,7 @@ "fraction.js": "^4.2.0", "fs-extra": "^11.1.0", "inquirer": "^8.2.5", + "jest-junit": "^16.0.0", "luxon": "^3.3.0" }, "bin": { @@ -199,6 +200,15 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz", + "integrity": "sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@babel/helper-simple-access": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", @@ -1037,6 +1047,19 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", @@ -1050,6 +1073,63 @@ "js-yaml": "bin/js-yaml.js" } }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", @@ -1085,6 +1165,15 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/@jest/console/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/core": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", @@ -1132,6 +1221,15 @@ } } }, + "node_modules/@jest/core/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/environment": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", @@ -1247,6 +1345,15 @@ } } }, + "node_modules/@jest/reporters/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/schemas": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", @@ -1303,6 +1410,15 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/@jest/test-sequencer/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/transform": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", @@ -1329,6 +1445,15 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/@jest/transform/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/@jest/types": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", @@ -2156,6 +2281,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true + }, "node_modules/@sindresorhus/is": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz", @@ -2180,6 +2311,24 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, "node_modules/@types/babel__core": { "version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", @@ -2286,6 +2435,21 @@ "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "dev": true }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "dev": true + }, "node_modules/acorn": { "version": "8.8.2", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.2.tgz", @@ -2539,6 +2703,15 @@ "@babel/core": "^7.8.0" } }, + "node_modules/babel-jest/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/babel-plugin-istanbul": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", @@ -5048,6 +5221,15 @@ "rimraf": "bin.js" } }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/function-timeout": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/function-timeout/-/function-timeout-1.0.2.tgz", @@ -5084,6 +5266,15 @@ "node": "6.* || 8.* || >= 10.*" } }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -5357,6 +5548,18 @@ "node": ">=8" } }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/highlight.js": { "version": "10.7.3", "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", @@ -5402,6 +5605,12 @@ "node": "^18.17.0 || >=20.5.0" } }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, "node_modules/http-proxy-agent": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", @@ -5651,6 +5860,21 @@ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", "dev": true }, + "node_modules/is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "dev": true, + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -5804,6 +6028,72 @@ "node": "^18.17 || >=20.6.1" } }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "dev": true, + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/java-properties": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/java-properties/-/java-properties-1.0.2.tgz", @@ -5839,6 +6129,35 @@ } } }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "dev": true, + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-changed-files/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/jest-circus": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", @@ -6089,6 +6408,31 @@ "fsevents": "^2.3.2" } }, + "node_modules/jest-junit": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/jest-junit/-/jest-junit-16.0.0.tgz", + "integrity": "sha512-A94mmw6NfJab4Fg/BlvVOUXzXgF0XIH6EmTgJ5NDPp4xoKq0Kr7sErb+4Xs9nZvu58pJojz5RFGpqnZYJTrRfQ==", + "dependencies": { + "mkdirp": "^1.0.4", + "strip-ansi": "^6.0.1", + "uuid": "^8.3.2", + "xml": "^1.0.1" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/jest-junit/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/jest-leak-detector": { "version": "29.7.0", "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", @@ -6219,6 +6563,19 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "dev": true, + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, "node_modules/jest-resolve/node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -6924,6 +7281,21 @@ "node": ">=12" } }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "dev": true, + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/makeerror": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", @@ -7152,6 +7524,18 @@ "node": ">=18" } }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true + }, "node_modules/normalize-package-data": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz", @@ -10082,6 +10466,15 @@ "node": ">=4" } }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, "node_modules/pkg-conf": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", @@ -11696,6 +12089,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/table": { "version": "6.8.1", "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", @@ -11800,6 +12205,20 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/text-extensions": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", @@ -11968,6 +12387,15 @@ "node": ">= 0.8.0" } }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/type-fest": { "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", @@ -12327,6 +12755,11 @@ "node": "^12.13.0 || ^14.15.0 || >=16.0.0" } }, + "node_modules/xml": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xml/-/xml-1.0.1.tgz", + "integrity": "sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==" + }, "node_modules/xmlchars": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", diff --git a/package.json b/package.json index ea869e3..0ffb483 100644 --- a/package.json +++ b/package.json @@ -32,9 +32,9 @@ "eslint": "^6.8.0", "eslint-plugin-json": "^2.0.1", "git-cz": "^4.9.0", + "husky": "^9.1.6", "jest": "^29.7.0", "rewire": "^6.0.0", - "husky": "^9.1.6", "semantic-release": "^24.1.1" }, "dependencies": { @@ -43,6 +43,7 @@ "fraction.js": "^4.2.0", "fs-extra": "^11.1.0", "inquirer": "^8.2.5", + "jest-junit": "^16.0.0", "luxon": "^3.3.0" }, "config": {