diff --git a/CHANGELOG.md b/CHANGELOG.md index a8bdf704ec..ce30ef0f44 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,31 @@ +## [100.50.7](https://github.com/dhis2/capture-app/compare/v100.50.6...v100.50.7) (2024-01-23) + + +### Bug Fixes + +* [DHIS2-15888] multi text element in program rules ([#3482](https://github.com/dhis2/capture-app/issues/3482)) ([fd0776d](https://github.com/dhis2/capture-app/commit/fd0776d2261b761c9985db3f6bfb0fda4a2ad18c)) + +## [100.50.6](https://github.com/dhis2/capture-app/compare/v100.50.5...v100.50.6) (2024-01-21) + + +### Bug Fixes + +* [DHIS2-16352] Add spacing between event overview cards ([#3500](https://github.com/dhis2/capture-app/issues/3500)) ([2041d60](https://github.com/dhis2/capture-app/commit/2041d605454529b3bcd77fa3b53a4655ae1495cf)) + +## [100.50.5](https://github.com/dhis2/capture-app/compare/v100.50.4...v100.50.5) (2024-01-21) + + +### Bug Fixes + +* **translations:** sync translations from transifex (master) ([eca1ba4](https://github.com/dhis2/capture-app/commit/eca1ba418e672a58df08785b74430c60e8eb9bcb)) + +## [100.50.4](https://github.com/dhis2/capture-app/compare/v100.50.3...v100.50.4) (2024-01-14) + + +### Bug Fixes + +* **translations:** sync translations from transifex (master) ([ad60c3a](https://github.com/dhis2/capture-app/commit/ad60c3a4500176c8db08ceb05e074eedfcf5e2b3)) + ## [100.50.3](https://github.com/dhis2/capture-app/compare/v100.50.2...v100.50.3) (2023-12-24) diff --git a/flow-typed/npm/@dhis2/ui_vx.x.x.js b/flow-typed/npm/@dhis2/ui_vx.x.x.js index 118657154a..0ee51f1dfc 100644 --- a/flow-typed/npm/@dhis2/ui_vx.x.x.js +++ b/flow-typed/npm/@dhis2/ui_vx.x.x.js @@ -1,56 +1,67 @@ -// flow-typed signature: c6feccb0af432a25a3ab1270f8309035 -// flow-typed version: <>/@dhis2/ui_v^6.1/flow_v0.132.0 - -/** - * This is an autogenerated libdef stub for: - * - * '@dhis2/ui' - * - * Fill this stub out by replacing all the `any` types. - * - * Once filled out, we encourage you to share your work with the - * community by sending a pull request to: - * https://github.com/flowtype/flow-typed - */ - -declare module '@dhis2/ui' { - declare module.exports: any; -} - /** - * We include stubs for each file inside this npm package in case you need to - * require those files directly. Feel free to delete any files that aren't - * needed. + * Flowtype definitions for index + * Generated by Flowgen from a Typescript Definition + * Flowgen v1.21.0 */ -declare module '@dhis2/ui/build/cjs/lib' { - declare module.exports: any; -} - -declare module '@dhis2/ui/build/es/lib' { - declare module.exports: any; -} - -declare module '@dhis2/ui/d2.config' { - declare module.exports: any; -} - -declare module '@dhis2/ui/src' { - declare module.exports: any; -} -// Filename aliases -declare module '@dhis2/ui/build/cjs/lib.js' { - declare module.exports: $Exports<'@dhis2/ui/build/cjs/lib'>; -} -declare module '@dhis2/ui/build/es/lib.js' { - declare module.exports: $Exports<'@dhis2/ui/build/es/lib'>; -} -declare module '@dhis2/ui/d2.config.js' { - declare module.exports: $Exports<'@dhis2/ui/d2.config'>; -} -declare module '@dhis2/ui/src/index' { - declare module.exports: $Exports<'@dhis2/ui/src'>; -} -declare module '@dhis2/ui/src/index.js' { - declare module.exports: $Exports<'@dhis2/ui/src'>; -} + declare export * from "@dhis2/ui-constants"; + declare export * from "@dhis2/ui-icons"; + declare export * from "@dhis2/ui-forms"; + declare export * from "@dhis2-ui/alert"; + declare export * from "@dhis2-ui/button"; + declare export * from "@dhis2-ui/box"; + declare export * from "@dhis2-ui/calendar"; + declare export * from "@dhis2-ui/card"; + declare export * from "@dhis2-ui/center"; + declare export * from "@dhis2-ui/checkbox"; + declare export * from "@dhis2-ui/chip"; + declare export * from "@dhis2-ui/cover"; + declare export * from "@dhis2-ui/css"; + declare export * from "@dhis2-ui/divider"; + declare export * from "@dhis2-ui/field"; + declare export * from "@dhis2-ui/file-input"; + declare export * from "@dhis2-ui/header-bar"; + declare export * from "@dhis2-ui/help"; + declare export * from "@dhis2-ui/input"; + declare export * from "@dhis2-ui/intersection-detector"; + declare export * from "@dhis2-ui/label"; + declare export * from "@dhis2-ui/layer"; + declare export * from "@dhis2-ui/legend"; + declare export * from "@dhis2-ui/loader"; + declare export * from "@dhis2-ui/logo"; + declare export * from "@dhis2-ui/menu"; + declare export * from "@dhis2-ui/modal"; + declare export * from "@dhis2-ui/node"; + declare export * from "@dhis2-ui/notice-box"; + declare export * from "@dhis2-ui/organisation-unit-tree"; + declare export * from "@dhis2-ui/popover"; + declare export { Popper, PopperProps } from "@dhis2-ui/popper"; + declare export * from "@dhis2-ui/portal"; + declare export * from "@dhis2-ui/radio"; + declare export * from "@dhis2-ui/required"; + declare export { Pagination, PaginationProps } from "@dhis2-ui/pagination"; + declare export * from "@dhis2-ui/sharing-dialog"; + declare export { + SingleSelect, + SingleSelectField, + SingleSelectOption, + MultiSelect, + MultiSelectField, + MultiSelectOption, + SingleSelectProps, + SingleSelectFieldProps, + SingleSelectOptionProps, + MultiSelectProps, + MultiSelectFieldProps, + MultiSelectOptionProps, +} from "@dhis2-ui/select"; + declare export * from "@dhis2-ui/selector-bar"; + declare export * from "@dhis2-ui/switch"; + declare export * from "@dhis2-ui/table"; + declare export * from "@dhis2-ui/tab"; + declare export * from "@dhis2-ui/tag"; + declare export * from "@dhis2-ui/text-area"; + declare export * from "@dhis2-ui/tooltip"; + declare export * from "@dhis2-ui/transfer"; + declare export * from "@dhis2-ui/user-avatar"; + declare export * from "@dhis2-ui/segmented-control"; diff --git a/i18n/en.pot b/i18n/en.pot index 9247f16afc..d6e46e8ffd 100644 --- a/i18n/en.pot +++ b/i18n/en.pot @@ -5,8 +5,8 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1)\n" -"POT-Creation-Date: 2024-01-04T18:26:05.060Z\n" -"PO-Revision-Date: 2024-01-04T18:26:05.060Z\n" +"POT-Creation-Date: 2024-01-05T14:09:35.742Z\n" +"PO-Revision-Date: 2024-01-05T14:09:35.742Z\n" msgid "Choose one or more dates..." msgstr "Choose one or more dates..." diff --git a/i18n/es.po b/i18n/es.po index 67b54c1201..bdbd09c1ac 100644 --- a/i18n/es.po +++ b/i18n/es.po @@ -10,16 +10,16 @@ # Janeth Cruz, 2023 # Prabhjot Singh, 2023 # Christian Atavillos, 2023 -# Enzo Nicolas Rossi , 2023 # Gabriela Rodriguez , 2023 # Viktor Varland , 2023 +# Enzo Nicolas Rossi , 2024 # msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" "POT-Creation-Date: 2023-09-12T06:24:49.265Z\n" "PO-Revision-Date: 2019-06-27 07:31+0000\n" -"Last-Translator: Viktor Varland , 2023\n" +"Last-Translator: Enzo Nicolas Rossi , 2024\n" "Language-Team: Spanish (https://app.transifex.com/hisp-uio/teams/100509/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -176,7 +176,7 @@ msgid "Complete event" msgstr "Completar el evento" msgid "{{ stageName }} - Basic info" -msgstr "" +msgstr "{{ stageName }} - Información básica" msgid "{{ stageName }} - Status" msgstr "" diff --git a/i18n/es_419.po b/i18n/es_419.po index 9e781ff26a..b9754779c5 100644 --- a/i18n/es_419.po +++ b/i18n/es_419.po @@ -1,14 +1,14 @@ # # Translators: -# Enzo Nicolas Rossi , 2023 # Jaime Bosque , 2023 +# Enzo Nicolas Rossi , 2024 # msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" "POT-Creation-Date: 2023-09-12T06:24:49.265Z\n" "PO-Revision-Date: 2019-06-27 07:31+0000\n" -"Last-Translator: Jaime Bosque , 2023\n" +"Last-Translator: Enzo Nicolas Rossi , 2024\n" "Language-Team: Spanish (Latin America) (https://app.transifex.com/hisp-uio/teams/100509/es_419/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -1281,7 +1281,7 @@ msgid "Scheduled date cannot be changed for {{ eventStatus }} events" msgstr "" msgid "Event completed" -msgstr "" +msgstr "Evento completado" msgid "Back to all stages and events" msgstr "Volver a todas las etapas y eventos" @@ -1431,7 +1431,7 @@ msgid "Working list could not be loaded" msgstr "" msgid "Download as JSON" -msgstr "" +msgstr "Descargar como JSON" msgid "Download as CSV" msgstr "" @@ -1512,7 +1512,7 @@ msgid "Show All" msgstr "" msgid "An error has occured. See log for details" -msgstr "" +msgstr " Ha ocurrido un error. Ver el registro para más detalles." msgid "Scheduled{{ escape }} due {{ time }}" msgstr "" diff --git a/i18n/nb.po b/i18n/nb.po index 00e615f61b..16e7fc4490 100644 --- a/i18n/nb.po +++ b/i18n/nb.po @@ -1,14 +1,14 @@ # # Translators: # Caroline Hesthagen Holen , 2023 -# Karoline Tufte Lien , 2023 +# Karoline Tufte Lien , 2024 # msgid "" msgstr "" "Project-Id-Version: i18next-conv\n" "POT-Creation-Date: 2023-09-12T06:24:49.265Z\n" "PO-Revision-Date: 2019-06-27 07:31+0000\n" -"Last-Translator: Karoline Tufte Lien , 2023\n" +"Last-Translator: Karoline Tufte Lien , 2024\n" "Language-Team: Norwegian Bokmål (https://app.transifex.com/hisp-uio/teams/100509/nb/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -756,7 +756,7 @@ msgstr "" "{{tetName}}." msgid "Enroll a new {{selectedTetName}} in this program." -msgstr "Registrer en ny {{teiDisplayName}} i dette programmet" +msgstr "Registrer en ny {{selectedTetName}} i dette programmet" msgid "{{programName}} is an event program and does not have enrollments." msgstr "{{programName}} er et hendelsesprogram og har ikke registreringer." @@ -837,7 +837,7 @@ msgid "Registered events" msgstr "Registrerte hendelser" msgid "Please select {{category}}." -msgstr "Velg {{kategori}}." +msgstr "Velg {{category}}." msgid "Or see all records accessible to you in {{program}} " msgstr "Eller se alle opptegnelser som er tilgjengelige for deg i {{program}}" diff --git a/package.json b/package.json index b407d2b323..46abe8f40f 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "capture-app", "homepage": ".", - "version": "100.50.3", + "version": "100.50.7", "cacheVersion": "7", "serverVersion": "38", "license": "BSD-3-Clause", @@ -10,7 +10,7 @@ "packages/rules-engine" ], "dependencies": { - "@dhis2/rules-engine-javascript": "100.50.3", + "@dhis2/rules-engine-javascript": "100.50.7", "@dhis2/app-runtime": "^3.9.3", "@dhis2/d2-i18n": "^1.1.0", "@dhis2/d2-icons": "^1.0.1", @@ -18,7 +18,7 @@ "@dhis2/d2-ui-org-unit-tree": "^7.3.3", "@dhis2/d2-ui-rich-text": "^7.4.0", "@dhis2/d2-ui-sharing-dialog": "^7.3.3", - "@dhis2/ui": "^8.13.8", + "@dhis2/ui": "^9.1.1", "@joakim_sm/react-infinite-calendar": "^2.4.2", "@material-ui/core": "3.9.4", "@material-ui/icons": "3", @@ -133,6 +133,7 @@ }, "resolutions": { "@babel/preset-react": "7.16.7", + "@dhis2/ui": "^9.1.1", "@js-temporal/polyfill": "0.4.3", "core-js": "2.5.7" }, diff --git a/packages/rules-engine/package.json b/packages/rules-engine/package.json index 56222b22a5..1b4e0c33de 100644 --- a/packages/rules-engine/package.json +++ b/packages/rules-engine/package.json @@ -1,6 +1,6 @@ { "name": "@dhis2/rules-engine-javascript", - "version": "100.50.3", + "version": "100.50.7", "license": "BSD-3-Clause", "main": "./build/cjs/index.js", "scripts": { diff --git a/packages/rules-engine/src/commonUtils/normalizeRuleVariable.js b/packages/rules-engine/src/commonUtils/normalizeRuleVariable.js index 34f76e1bb5..6c10602fc7 100644 --- a/packages/rules-engine/src/commonUtils/normalizeRuleVariable.js +++ b/packages/rules-engine/src/commonUtils/normalizeRuleVariable.js @@ -39,6 +39,7 @@ export const normalizeRuleVariable = (data: any, valueType: string) => { [typeKeys.AGE]: convertString, [typeKeys.TEXT]: convertString, [typeKeys.LONG_TEXT]: convertString, + [typeKeys.MULTI_TEXT]: convertString, }; if (!data && data !== 0 && data !== false) { diff --git a/packages/rules-engine/src/constants/typeKeys.const.js b/packages/rules-engine/src/constants/typeKeys.const.js index 93bec23586..9280d683dc 100644 --- a/packages/rules-engine/src/constants/typeKeys.const.js +++ b/packages/rules-engine/src/constants/typeKeys.const.js @@ -1,6 +1,7 @@ // @flow export const typeKeys = { TEXT: 'TEXT', + MULTI_TEXT: 'MULTI_TEXT', LONG_TEXT: 'LONG_TEXT', LETTER: 'LETTER', PHONE_NUMBER: 'PHONE_NUMBER', diff --git a/packages/rules-engine/src/constants/typeToInterfaceFnName.const.js b/packages/rules-engine/src/constants/typeToInterfaceFnName.const.js index e8513c6858..f1fc9af926 100644 --- a/packages/rules-engine/src/constants/typeToInterfaceFnName.const.js +++ b/packages/rules-engine/src/constants/typeToInterfaceFnName.const.js @@ -3,6 +3,7 @@ import { typeKeys } from './typeKeys.const'; export const mapTypeToInterfaceFnName = { [typeKeys.TEXT]: 'convertText', + [typeKeys.MULTI_TEXT]: 'convertMultiText', [typeKeys.LONG_TEXT]: 'convertLongText', [typeKeys.LETTER]: 'convertLetter', [typeKeys.PHONE_NUMBER]: 'convertPhoneNumber', diff --git a/packages/rules-engine/src/d2Functions/getD2Functions.js b/packages/rules-engine/src/d2Functions/getD2Functions.js index e128bd871a..459238f447 100644 --- a/packages/rules-engine/src/d2Functions/getD2Functions.js +++ b/packages/rules-engine/src/d2Functions/getD2Functions.js @@ -296,4 +296,11 @@ export const getD2Functions = ({ return params[0]; }, }, + multiTextContains: { + parameters: 2, + execute: (params: any) => { + log.warn('multiTextContains not implemented yet'); + return params[0]; + }, + }, }); diff --git a/packages/rules-engine/src/d2Functions/getD2Functions.types.js b/packages/rules-engine/src/d2Functions/getD2Functions.types.js index 237127a052..4d2403997c 100644 --- a/packages/rules-engine/src/d2Functions/getD2Functions.types.js +++ b/packages/rules-engine/src/d2Functions/getD2Functions.types.js @@ -55,4 +55,5 @@ export type D2Functions = $ReadOnly<{| lastEventDate: D2FunctionConfig, addControlDigits: D2FunctionConfig, checkControlDigits: D2FunctionConfig, + multiTextContains: D2FunctionConfig, |}>; diff --git a/packages/rules-engine/src/helpers/OptionSetHelper.js b/packages/rules-engine/src/helpers/OptionSetHelper.js index 36cf148175..b84720da43 100644 --- a/packages/rules-engine/src/helpers/OptionSetHelper.js +++ b/packages/rules-engine/src/helpers/OptionSetHelper.js @@ -1,6 +1,19 @@ +// @flow +import { typeKeys } from '../constants'; +import type { Option } from '../services/VariableService'; + export class OptionSetHelper { - static getName(options, key) { + static getName(options: Array