@aehrc/smart-forms-renderer 1.0.0-alpha.84 → 1.0.0-alpha.85
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js +3 -6
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.js.map +1 -1
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js +3 -6
- package/lib/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.js.map +1 -1
- package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.js +6 -22
- package/lib/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.js.map +1 -1
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js +4 -4
- package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js.map +1 -1
- package/lib/components/FormComponents/DecimalItem/DecimalField.js +3 -3
- package/lib/components/FormComponents/DecimalItem/DecimalField.js.map +1 -1
- package/lib/components/FormComponents/IntegerItem/IntegerField.js +3 -3
- package/lib/components/FormComponents/IntegerItem/IntegerField.js.map +1 -1
- package/lib/components/FormComponents/QuantityItem/QuantityComparatorField.js +19 -3
- package/lib/components/FormComponents/QuantityItem/QuantityComparatorField.js.map +1 -1
- package/lib/components/FormComponents/QuantityItem/QuantityField.js +19 -3
- package/lib/components/FormComponents/QuantityItem/QuantityField.js.map +1 -1
- package/lib/components/FormComponents/QuantityItem/QuantityUnitField.js +19 -6
- package/lib/components/FormComponents/QuantityItem/QuantityUnitField.js.map +1 -1
- package/lib/components/FormComponents/StringItem/StringField.js +3 -3
- package/lib/components/FormComponents/StringItem/StringField.js.map +1 -1
- package/lib/components/FormComponents/TextItem/TextField.js +4 -4
- package/lib/components/FormComponents/TextItem/TextField.js.map +1 -1
- package/lib/hooks/useCodingCalculatedExpression.js +5 -0
- package/lib/hooks/useCodingCalculatedExpression.js.map +1 -1
- package/lib/hooks/useDateCalculatedExpression.js +5 -0
- package/lib/hooks/useDateCalculatedExpression.js.map +1 -1
- package/lib/hooks/useDateTimeCalculatedExpression.js +5 -0
- package/lib/hooks/useDateTimeCalculatedExpression.js.map +1 -1
- package/lib/hooks/useDecimalCalculatedExpression.js +5 -0
- package/lib/hooks/useDecimalCalculatedExpression.js.map +1 -1
- package/lib/hooks/useIntegerCalculatedExpression.js +5 -0
- package/lib/hooks/useIntegerCalculatedExpression.js.map +1 -1
- package/lib/hooks/useQuantityCalculatedExpression.js +5 -0
- package/lib/hooks/useQuantityCalculatedExpression.js.map +1 -1
- package/package.json +2 -2
- package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx +3 -5
- package/src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.tsx +3 -5
- package/src/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.tsx +3 -3
- package/src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.tsx +3 -4
- package/src/components/FormComponents/DecimalItem/DecimalField.tsx +2 -2
- package/src/components/FormComponents/IntegerItem/IntegerField.tsx +2 -2
- package/src/components/FormComponents/QuantityItem/QuantityComparatorField.tsx +20 -3
- package/src/components/FormComponents/QuantityItem/QuantityField.tsx +19 -2
- package/src/components/FormComponents/QuantityItem/QuantityUnitField.tsx +20 -7
- package/src/components/FormComponents/StringItem/StringField.tsx +2 -2
- package/src/components/FormComponents/TextItem/TextField.tsx +2 -2
- package/src/hooks/useCodingCalculatedExpression.ts +6 -0
- package/src/hooks/useDateCalculatedExpression.ts +6 -0
- package/src/hooks/useDateTimeCalculatedExpression.ts +6 -0
- package/src/hooks/useDecimalCalculatedExpression.ts +6 -0
- package/src/hooks/useIntegerCalculatedExpression.ts +6 -0
- package/src/hooks/useQuantityCalculatedExpression.ts +6 -0
|
@@ -6,17 +6,14 @@ import { compareAnswerOptionValue, isOptionDisabled } from '../../../utils/choic
|
|
|
6
6
|
import { useRendererStylingStore } from '../../../stores';
|
|
7
7
|
import { StyledRequiredTypography } from '../Item.styles';
|
|
8
8
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
9
|
-
import
|
|
9
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
10
10
|
function ChoiceSelectAnswerOptionFields(props) {
|
|
11
11
|
const { qItem, options, valueSelect, feedback, readOnly, expressionUpdated, isTabled, renderingExtensions, answerOptionsToggleExpressionsMap, onSelectChange } = props;
|
|
12
12
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
13
13
|
const textFieldWidth = useRendererStylingStore.use.textFieldWidth();
|
|
14
14
|
const { displayUnit, displayPrompt, entryFormat } = renderingExtensions;
|
|
15
|
-
return (_jsxs(_Fragment, { children: [_jsx(Autocomplete, { id: qItem.type + '-' + qItem.linkId, value: valueSelect !== null && valueSelect !== void 0 ? valueSelect : null, options: options, getOptionDisabled: (option) => isOptionDisabled(option, answerOptionsToggleExpressionsMap), getOptionLabel: (option) => getAnswerOptionLabel(option), isOptionEqualToValue: (option, value) => compareAnswerOptionValue(option, value), onChange: (_, newValue) => onSelectChange(newValue), openOnFocus: true, autoHighlight: true, sx:
|
|
16
|
-
|
|
17
|
-
{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }
|
|
18
|
-
], size: "small", disabled: readOnly && readOnlyVisualStyle === 'disabled', readOnly: readOnly && readOnlyVisualStyle === 'readonly', renderInput: (params) => (_jsx(StandardTextField, Object.assign({ textFieldWidth: textFieldWidth, isTabled: isTabled, placeholder: entryFormat || displayPrompt }, params, { slotProps: {
|
|
19
|
-
input: Object.assign(Object.assign({}, params.InputProps), { readOnly: readOnly && readOnlyVisualStyle === 'readonly', endAdornment: (_jsxs(_Fragment, { children: [params.InputProps.endAdornment, _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] })) })
|
|
15
|
+
return (_jsxs(_Fragment, { children: [_jsx(Autocomplete, { id: qItem.type + '-' + qItem.linkId, value: valueSelect !== null && valueSelect !== void 0 ? valueSelect : null, options: options, getOptionDisabled: (option) => isOptionDisabled(option, answerOptionsToggleExpressionsMap), getOptionLabel: (option) => getAnswerOptionLabel(option), isOptionEqualToValue: (option, value) => compareAnswerOptionValue(option, value), onChange: (_, newValue) => onSelectChange(newValue), openOnFocus: true, autoHighlight: true, sx: { maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }, size: "small", disabled: readOnly && readOnlyVisualStyle === 'disabled', readOnly: readOnly && readOnlyVisualStyle === 'readonly', renderInput: (params) => (_jsx(StandardTextField, Object.assign({ textFieldWidth: textFieldWidth, isTabled: isTabled, placeholder: entryFormat || displayPrompt }, params, { slotProps: {
|
|
16
|
+
input: Object.assign(Object.assign({}, params.InputProps), { readOnly: readOnly && readOnlyVisualStyle === 'readonly', endAdornment: (_jsxs(_Fragment, { children: [params.InputProps.endAdornment, _jsx(ExpressionUpdateFadingIcon, { fadeIn: expressionUpdated, disabled: readOnly }), _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] })) })
|
|
20
17
|
} }))) }), feedback ? _jsx(StyledRequiredTypography, { children: feedback }) : null] }));
|
|
21
18
|
}
|
|
22
19
|
export default ChoiceSelectAnswerOptionFields;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChoiceSelectAnswerOptionFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx"],"names":[],"mappings":";AAsBA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,
|
|
1
|
+
{"version":3,"file":"ChoiceSelectAnswerOptionFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerOptionFields.tsx"],"names":[],"mappings":";AAsBA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,0BAA0B,MAAM,yCAAyC,CAAC;AAejF,SAAS,8BAA8B,CAAC,KAA0C;IAChF,MAAM,EACJ,KAAK,EACL,OAAO,EACP,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,iBAAiB,EACjB,QAAQ,EACR,mBAAmB,EACnB,iCAAiC,EACjC,cAAc,EACf,GAAG,KAAK,CAAC;IAEV,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC9E,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAEpE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,mBAAmB,CAAC;IAExE,OAAO,CACL,8BACE,KAAC,YAAY,IACX,EAAE,EAAE,KAAK,CAAC,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,EACnC,KAAK,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI,EAC1B,OAAO,EAAE,OAAO,EAChB,iBAAiB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,iCAAiC,CAAC,EAC1F,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,EACxD,oBAAoB,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,EAChF,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,EACnD,WAAW,QACX,aAAa,QACb,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,EAC/E,IAAI,EAAC,OAAO,EACZ,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,KAAC,iBAAiB,kBAChB,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,IAAI,aAAa,IACrC,MAAM,IACV,SAAS,EAAE;wBACT,KAAK,kCACA,MAAM,CAAC,UAAU,KACpB,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,YAAY,EAAE,CACZ,8BACG,MAAM,CAAC,UAAU,CAAC,YAAY,EAC/B,KAAC,0BAA0B,IAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC7E,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,YAAG,WAAW,GAAmB,IACnE,CACJ,GACF;qBACF,IACD,CACH,GACD,EAED,QAAQ,CAAC,CAAC,CAAC,KAAC,wBAAwB,cAAE,QAAQ,GAA4B,CAAC,CAAC,CAAC,IAAI,IACjF,CACJ,CAAC;AACJ,CAAC;AAED,eAAe,8BAA8B,CAAC"}
|
|
@@ -24,20 +24,17 @@ import { useRendererStylingStore } from '../../../stores';
|
|
|
24
24
|
import { StyledRequiredTypography } from '../Item.styles';
|
|
25
25
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
26
26
|
import { isCodingDisabled } from '../../../utils/choice';
|
|
27
|
-
import
|
|
27
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
28
28
|
function ChoiceSelectAnswerValueSetFields(props) {
|
|
29
29
|
const { qItem, codings, valueCoding, terminologyError, feedback, readOnly, expressionUpdated, isTabled, renderingExtensions, answerOptionsToggleExpressionsMap, onSelectChange } = props;
|
|
30
30
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
31
31
|
const textFieldWidth = useRendererStylingStore.use.textFieldWidth();
|
|
32
32
|
const { displayUnit, displayPrompt, entryFormat } = renderingExtensions;
|
|
33
33
|
if (codings.length > 0) {
|
|
34
|
-
return (_jsxs(_Fragment, { children: [_jsx(Autocomplete, Object.assign({}, (!isTabled && { id: `${qItem.type}-${qItem.linkId}` }), { options: codings, getOptionDisabled: (coding) => isCodingDisabled(coding, answerOptionsToggleExpressionsMap), getOptionLabel: (option) => { var _a; return (_a = option.display) !== null && _a !== void 0 ? _a : `${option.code}`; }, value: valueCoding !== null && valueCoding !== void 0 ? valueCoding : null, onChange: (_, newValue) => onSelectChange(newValue), openOnFocus: true, autoHighlight: true, sx:
|
|
35
|
-
expressionUpdateFadingGlow(expressionUpdated),
|
|
36
|
-
{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }
|
|
37
|
-
], size: "small", disabled: readOnly && readOnlyVisualStyle === 'disabled', readOnly: readOnly && readOnlyVisualStyle === 'readonly', renderInput: (params) => {
|
|
34
|
+
return (_jsxs(_Fragment, { children: [_jsx(Autocomplete, Object.assign({}, (!isTabled && { id: `${qItem.type}-${qItem.linkId}` }), { options: codings, getOptionDisabled: (coding) => isCodingDisabled(coding, answerOptionsToggleExpressionsMap), getOptionLabel: (option) => { var _a; return (_a = option.display) !== null && _a !== void 0 ? _a : `${option.code}`; }, value: valueCoding !== null && valueCoding !== void 0 ? valueCoding : null, onChange: (_, newValue) => onSelectChange(newValue), openOnFocus: true, autoHighlight: true, sx: { maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }, size: "small", disabled: readOnly && readOnlyVisualStyle === 'disabled', readOnly: readOnly && readOnlyVisualStyle === 'readonly', renderInput: (params) => {
|
|
38
35
|
var _a;
|
|
39
36
|
return (_jsx(StandardTextField, Object.assign({ textFieldWidth: textFieldWidth, isTabled: isTabled, placeholder: entryFormat || displayPrompt }, params, { slotProps: {
|
|
40
|
-
input: Object.assign(Object.assign({}, params.InputProps), { readOnly: readOnly && readOnlyVisualStyle === 'readonly', endAdornment: (_jsxs(_Fragment, { children: [params.InputProps.endAdornment, _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] })), inputProps: Object.assign(Object.assign({}, params.inputProps), { 'aria-label': (_a = qItem.text) !== null && _a !== void 0 ? _a : 'Unnamed choice dropdown' }) })
|
|
37
|
+
input: Object.assign(Object.assign({}, params.InputProps), { readOnly: readOnly && readOnlyVisualStyle === 'readonly', endAdornment: (_jsxs(_Fragment, { children: [params.InputProps.endAdornment, _jsx(ExpressionUpdateFadingIcon, { fadeIn: expressionUpdated, disabled: readOnly }), _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] })), inputProps: Object.assign(Object.assign({}, params.inputProps), { 'aria-label': (_a = qItem.text) !== null && _a !== void 0 ? _a : 'Unnamed choice dropdown' }) })
|
|
41
38
|
}, "data-test": "q-item-choice-select-answer-value-set-field" })));
|
|
42
39
|
} })), feedback ? _jsx(StyledRequiredTypography, { children: feedback }) : null] }));
|
|
43
40
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChoiceSelectAnswerValueSetFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAChE,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAOlD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,
|
|
1
|
+
{"version":3,"file":"ChoiceSelectAnswerValueSetFields.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/ChoiceItems/ChoiceSelectAnswerValueSetFields.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +1,10 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
/*
|
|
3
|
-
* Copyright 2025 Commonwealth Scientific and Industrial Research
|
|
4
|
-
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
5
|
-
*
|
|
6
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
-
* you may not use this file except in compliance with the License.
|
|
8
|
-
* You may obtain a copy of the License at
|
|
9
|
-
*
|
|
10
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
-
*
|
|
12
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
-
* See the License for the specific language governing permissions and
|
|
16
|
-
* limitations under the License.
|
|
17
|
-
*/
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
2
|
import { useRef } from 'react';
|
|
19
3
|
import InputAdornment from '@mui/material/InputAdornment';
|
|
20
4
|
import { StandardTextField } from '../../Textfield.styles';
|
|
21
5
|
import DatePicker from './DatePicker';
|
|
22
6
|
import { useRendererStylingStore } from '../../../../stores';
|
|
23
|
-
import
|
|
7
|
+
import ExpressionUpdateFadingIcon from '../../ItemParts/ExpressionUpdateFadingIcon';
|
|
24
8
|
function CustomDateField(props) {
|
|
25
9
|
const { linkId, itemType, itemText, valueDate, input, feedback, isFocused, displayPrompt, entryFormat, readOnly, calcExpUpdated, isPartOfDateTime, isTabled, setFocused, onInputChange, onDateBlur, onSelectDate } = props;
|
|
26
10
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
@@ -38,12 +22,12 @@ function CustomDateField(props) {
|
|
|
38
22
|
return (_jsx(StandardTextField, Object.assign({}, (!isTabled && { id: id }), { ref: anchorRef, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, value: input, error: !!feedback, onChange: (e) => onInputChange(e.target.value), placeholder: placeholderText, disabled: readOnly && readOnlyVisualStyle === 'disabled', size: "small", focused: isFocused, onFocus: () => setFocused(true), onBlur: () => {
|
|
39
23
|
onDateBlur();
|
|
40
24
|
setFocused(false);
|
|
41
|
-
},
|
|
25
|
+
}, slotProps: {
|
|
42
26
|
input: {
|
|
43
27
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
44
|
-
endAdornment: (
|
|
45
|
-
|
|
46
|
-
|
|
28
|
+
endAdornment: (_jsxs(InputAdornment, { position: "end", children: [_jsx(ExpressionUpdateFadingIcon, { fadeIn: calcExpUpdated, disabled: readOnly }), _jsx(DatePicker, { valueString: valueDate, readOnly: readOnly, anchorEl: anchorRef.current, onSelectDate: (valueDayjs) => {
|
|
29
|
+
onSelectDate(valueDayjs.format('DD/MM/YYYY'));
|
|
30
|
+
}, onFocus: (focus) => setFocused(focus) })] })),
|
|
47
31
|
inputProps: Object.assign({}, (isTabled ? {} : { 'aria-label': itemText !== null && itemText !== void 0 ? itemText : `Unnamed ${itemType} item` }))
|
|
48
32
|
}
|
|
49
33
|
}, helperText: feedback })));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomDateField.js","sourceRoot":"","sources":["../../../../../src/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"CustomDateField.js","sourceRoot":"","sources":["../../../../../src/components/FormComponents/DateTimeItems/CustomDateItem/CustomDateField.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,10 +6,10 @@ import MuiTextField from '../../TextItem/MuiTextField';
|
|
|
6
6
|
import { grey } from '@mui/material/colors';
|
|
7
7
|
import Typography from '@mui/material/Typography';
|
|
8
8
|
import { useRendererStylingStore } from '../../../../stores';
|
|
9
|
-
import { expressionUpdateFadingGlow } from '../../../ExpressionUpdateFadingGlow.styles';
|
|
10
9
|
import FormControl from '@mui/material/FormControl';
|
|
11
10
|
function CustomTimeField(props) {
|
|
12
|
-
const { linkId, itemType, timeInput, periodInput, is24HourNotation, feedback, displayPrompt, readOnly,
|
|
11
|
+
const { linkId, itemType, timeInput, periodInput, is24HourNotation, feedback, displayPrompt, readOnly, isPartOfDateTime, isTabled, onTimeInputChange, onPeriodChange, onTimeBlur } = props;
|
|
12
|
+
// TODO this component doesn't have a calcExpUpdated update animation
|
|
13
13
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
14
14
|
const textFieldWidth = useRendererStylingStore.use.textFieldWidth();
|
|
15
15
|
// If this reusable time field is part of a DateTime component, do not assign an id to the wrapping <Box/>
|
|
@@ -17,11 +17,11 @@ function CustomTimeField(props) {
|
|
|
17
17
|
const itemId = isPartOfDateTime ? undefined : itemType + '-' + linkId;
|
|
18
18
|
const timeId = itemType + '-' + linkId + '-time';
|
|
19
19
|
const periodId = itemType + '-' + linkId + '-period';
|
|
20
|
-
return (_jsxs(_Fragment, { children: [_jsxs(Box, { id: itemId, display: "flex", alignItems: "center", columnGap: 1, sx: { maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160 }, children: [_jsx(MuiTextField, { id: timeId, value: timeInput, error: !!feedback, fullWidth: true, sx:
|
|
20
|
+
return (_jsxs(_Fragment, { children: [_jsxs(Box, { id: itemId, display: "flex", alignItems: "center", columnGap: 1, sx: { maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160 }, children: [_jsx(MuiTextField, { id: timeId, value: timeInput, error: !!feedback, fullWidth: true, sx: { flex: 1 }, onChange: (e) => onTimeInputChange(e.target.value), onBlur: onTimeBlur, label: displayPrompt, placeholder: "--:--", disabled: readOnly && readOnlyVisualStyle === 'disabled', size: "small", slotProps: {
|
|
21
21
|
input: {
|
|
22
22
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly'
|
|
23
23
|
}
|
|
24
|
-
} }), _jsx(FormControl, { sx:
|
|
24
|
+
} }), _jsx(FormControl, { sx: { flex: 1 }, children: _jsxs(Select, { id: periodId, value: is24HourNotation ? '' : periodInput, error: !!feedback, disabled: (readOnly && readOnlyVisualStyle === 'disabled') || is24HourNotation, readOnly: (readOnly && readOnlyVisualStyle === 'readonly') || is24HourNotation, displayEmpty: true, size: "small", onChange: (e) => onPeriodChange(e.target.value), onBlur: onTimeBlur, children: [_jsx(MenuItem, { value: "", children: _jsx("span", { style: { color: grey['500'] }, children: is24HourNotation ? '-' : 'AM/PM' }) }), _jsx(MenuItem, { value: "AM", children: "AM" }), _jsx(MenuItem, { value: "PM", children: "PM" })] }) })] }), _jsx(Typography, { component: "span", variant: "caption", color: "error", sx: { ml: 1.75, mt: -0.5 }, children: feedback })] }));
|
|
25
25
|
}
|
|
26
26
|
export default CustomTimeField;
|
|
27
27
|
//# sourceMappingURL=CustomTimeField.js.map
|
package/lib/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomTimeField.js","sourceRoot":"","sources":["../../../../../src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.tsx"],"names":[],"mappings":";AAmBA,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,QAAQ,MAAM,wBAAwB,CAAC;AAC9C,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,
|
|
1
|
+
{"version":3,"file":"CustomTimeField.js","sourceRoot":"","sources":["../../../../../src/components/FormComponents/DateTimeItems/CustomDateTimeItem/CustomTimeField.tsx"],"names":[],"mappings":"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"}
|
|
@@ -20,7 +20,7 @@ import { StandardTextField } from '../Textfield.styles';
|
|
|
20
20
|
import { useRendererStylingStore } from '../../../stores';
|
|
21
21
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
22
22
|
import { ClearButtonAdornment } from '../ItemParts/ClearButtonAdornment';
|
|
23
|
-
import
|
|
23
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
24
24
|
function DecimalField(props) {
|
|
25
25
|
const { linkId, itemType, input, feedback, displayPrompt, displayUnit, entryFormat, readOnly, calcExpUpdated, isTabled, onInputChange, onBlur } = props;
|
|
26
26
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
@@ -32,14 +32,14 @@ function DecimalField(props) {
|
|
|
32
32
|
if (entryFormat) {
|
|
33
33
|
placeholderText = entryFormat;
|
|
34
34
|
}
|
|
35
|
-
return (_jsx(StandardTextField, { id: itemType + '-' + linkId, value: input, error: !!feedback, helperText: feedback, onChange: (event) => onInputChange(event.target.value), onBlur: onBlur, disabled: readOnly && readOnlyVisualStyle === 'disabled', placeholder: placeholderText, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, size: "small",
|
|
35
|
+
return (_jsx(StandardTextField, { id: itemType + '-' + linkId, value: input, error: !!feedback, helperText: feedback, onChange: (event) => onInputChange(event.target.value), onBlur: onBlur, disabled: readOnly && readOnlyVisualStyle === 'disabled', placeholder: placeholderText, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, size: "small", slotProps: {
|
|
36
36
|
htmlInput: {
|
|
37
37
|
inputMode: 'numeric',
|
|
38
38
|
pattern: '[0-9]*'
|
|
39
39
|
},
|
|
40
40
|
input: {
|
|
41
41
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
42
|
-
endAdornment: (_jsxs(InputAdornment, { position: "end", children: [_jsx(ClearButtonAdornment, { readOnly: readOnly, onClear: () => {
|
|
42
|
+
endAdornment: (_jsxs(InputAdornment, { position: "end", children: [_jsx(ExpressionUpdateFadingIcon, { fadeIn: calcExpUpdated, disabled: readOnly }), _jsx(ClearButtonAdornment, { readOnly: readOnly, onClear: () => {
|
|
43
43
|
onInputChange('');
|
|
44
44
|
} }), _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] }))
|
|
45
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DecimalField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/DecimalItem/DecimalField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"DecimalField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/DecimalItem/DecimalField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,0BAA0B,MAAM,yCAAyC,CAAC;AAgBjF,SAAS,YAAY,CAAC,KAAwB;IAC5C,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,aAAa,EACb,WAAW,EACX,WAAW,EACX,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,aAAa,EACb,MAAM,EACP,GAAG,KAAK,CAAC;IAEV,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC9E,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAEpE,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,aAAa,EAAE,CAAC;QAClB,eAAe,GAAG,aAAa,CAAC;IAClC,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,eAAe,GAAG,WAAW,CAAC;IAChC,CAAC;IAED,OAAO,CACL,KAAC,iBAAiB,IAChB,EAAE,EAAE,QAAQ,GAAG,GAAG,GAAG,MAAM,EAC3B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,CAAC,CAAC,QAAQ,EACjB,UAAU,EAAE,QAAQ,EACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,WAAW,EAAE,eAAe,EAC5B,SAAS,QACT,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,OAAO,EACZ,SAAS,EAAE;YACT,SAAS,EAAE;gBACT,SAAS,EAAE,SAAS;gBACpB,OAAO,EAAE,QAAQ;aAClB;YACD,KAAK,EAAE;gBACL,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU;gBACxD,YAAY,EAAE,CACZ,MAAC,cAAc,IAAC,QAAQ,EAAC,KAAK,aAC5B,KAAC,0BAA0B,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC1E,KAAC,oBAAoB,IACnB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,GAAG,EAAE;gCACZ,aAAa,CAAC,EAAE,CAAC,CAAC;4BACpB,CAAC,GACD,EACF,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,YAAG,WAAW,GAAmB,IACrD,CAClB;aACF;SACF,eACS,sBAAsB,GAChC,CACH,CAAC;AACJ,CAAC;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -20,7 +20,7 @@ import { StandardTextField } from '../Textfield.styles';
|
|
|
20
20
|
import { useRendererStylingStore } from '../../../stores';
|
|
21
21
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
22
22
|
import { ClearButtonAdornment } from '../ItemParts/ClearButtonAdornment';
|
|
23
|
-
import
|
|
23
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
24
24
|
function IntegerField(props) {
|
|
25
25
|
const { linkId, itemType, input, feedback, displayPrompt, displayUnit, entryFormat, readOnly, calcExpUpdated, isTabled, onInputChange, onBlur } = props;
|
|
26
26
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
@@ -32,14 +32,14 @@ function IntegerField(props) {
|
|
|
32
32
|
if (entryFormat) {
|
|
33
33
|
placeholderText = entryFormat;
|
|
34
34
|
}
|
|
35
|
-
return (_jsx(StandardTextField, { id: itemType + '-' + linkId, value: input, error: !!feedback, helperText: feedback, onChange: (event) => onInputChange(event.target.value), onBlur: onBlur, disabled: readOnly && readOnlyVisualStyle === 'disabled', label: displayPrompt, placeholder: placeholderText, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, size: "small",
|
|
35
|
+
return (_jsx(StandardTextField, { id: itemType + '-' + linkId, value: input, error: !!feedback, helperText: feedback, onChange: (event) => onInputChange(event.target.value), onBlur: onBlur, disabled: readOnly && readOnlyVisualStyle === 'disabled', label: displayPrompt, placeholder: placeholderText, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, size: "small", slotProps: {
|
|
36
36
|
htmlInput: {
|
|
37
37
|
inputMode: 'numeric',
|
|
38
38
|
pattern: '[0-9]*'
|
|
39
39
|
},
|
|
40
40
|
input: {
|
|
41
41
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
42
|
-
endAdornment: (_jsxs(InputAdornment, { position: 'end', children: [_jsx(ClearButtonAdornment, { readOnly: readOnly, onClear: () => {
|
|
42
|
+
endAdornment: (_jsxs(InputAdornment, { position: 'end', children: [_jsx(ExpressionUpdateFadingIcon, { fadeIn: calcExpUpdated, disabled: readOnly }), _jsx(ClearButtonAdornment, { readOnly: readOnly, onClear: () => {
|
|
43
43
|
onInputChange('');
|
|
44
44
|
} }), _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] }))
|
|
45
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IntegerField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/IntegerItem/IntegerField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"IntegerField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/IntegerItem/IntegerField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,0BAA0B,MAAM,yCAAyC,CAAC;AAgBjF,SAAS,YAAY,CAAC,KAAwB;IAC5C,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,aAAa,EACb,WAAW,EACX,WAAW,EACX,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,aAAa,EACb,MAAM,EACP,GAAG,KAAK,CAAC;IAEV,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC9E,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAEpE,IAAI,eAAe,GAAG,GAAG,CAAC;IAC1B,IAAI,aAAa,EAAE,CAAC;QAClB,eAAe,GAAG,aAAa,CAAC;IAClC,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,eAAe,GAAG,WAAW,CAAC;IAChC,CAAC;IAED,OAAO,CACL,KAAC,iBAAiB,IAChB,EAAE,EAAE,QAAQ,GAAG,GAAG,GAAG,MAAM,EAC3B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,CAAC,CAAC,QAAQ,EACjB,UAAU,EAAE,QAAQ,EACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,eAAe,EAC5B,SAAS,QACT,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,OAAO,EACZ,SAAS,EAAE;YACT,SAAS,EAAE;gBACT,SAAS,EAAE,SAAS;gBACpB,OAAO,EAAE,QAAQ;aAClB;YACD,KAAK,EAAE;gBACL,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU;gBACxD,YAAY,EAAE,CACZ,MAAC,cAAc,IAAC,QAAQ,EAAE,KAAK,aAC7B,KAAC,0BAA0B,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC1E,KAAC,oBAAoB,IACnB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,GAAG,EAAE;gCACZ,aAAa,CAAC,EAAE,CAAC,CAAC;4BACpB,CAAC,GACD,EACF,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,YAAG,WAAW,GAAmB,IACrD,CAClB;aACF;SACF,eACS,sBAAsB,GAChC,CACH,CAAC;AACJ,CAAC;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -1,18 +1,34 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2025 Commonwealth Scientific and Industrial Research
|
|
4
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
2
18
|
import Autocomplete from '@mui/material/Autocomplete';
|
|
3
19
|
import MuiTextField from '../TextItem/MuiTextField';
|
|
4
20
|
import Box from '@mui/material/Box';
|
|
5
21
|
import Typography from '@mui/material/Typography';
|
|
6
22
|
import { useRendererStylingStore } from '../../../stores';
|
|
7
|
-
import { expressionUpdateFadingGlow } from '../../ExpressionUpdateFadingGlow.styles';
|
|
8
23
|
function QuantityComparatorField(props) {
|
|
9
|
-
const { linkId, itemType, options, valueSelect, readOnly,
|
|
24
|
+
const { linkId, itemType, options, valueSelect, readOnly, onChange } = props;
|
|
25
|
+
// TODO this component doesn't have a calcExpUpdated update animation
|
|
10
26
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
11
27
|
const hideQuantityComparatorField = useRendererStylingStore.use.hideQuantityComparatorField();
|
|
12
28
|
if (hideQuantityComparatorField) {
|
|
13
29
|
return null;
|
|
14
30
|
}
|
|
15
|
-
return (_jsxs(Box, { children: [_jsx(Autocomplete, { id: itemType + '-' + linkId + '-comparator', value: valueSelect !== null && valueSelect !== void 0 ? valueSelect : null, options: options, onChange: (_, newValue) => onChange(newValue), autoHighlight: true, sx:
|
|
31
|
+
return (_jsxs(Box, { children: [_jsx(Autocomplete, { id: itemType + '-' + linkId + '-comparator', value: valueSelect !== null && valueSelect !== void 0 ? valueSelect : null, options: options, onChange: (_, newValue) => onChange(newValue), autoHighlight: true, sx: { width: 88 }, disabled: readOnly && readOnlyVisualStyle === 'disabled', readOnly: readOnly && readOnlyVisualStyle === 'readonly', size: "small", renderInput: (params) => _jsx(MuiTextField, Object.assign({ sx: { width: 88 } }, params)) }), _jsx(Typography, { variant: "caption", color: "text.secondary", children: "(optional)" })] }));
|
|
16
32
|
}
|
|
17
33
|
export default QuantityComparatorField;
|
|
18
34
|
//# sourceMappingURL=QuantityComparatorField.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuantityComparatorField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/QuantityItem/QuantityComparatorField.tsx"],"names":[],"mappings":";AAAA,OAAO,YAAY,MAAM,4BAA4B,CAAC;AAEtD,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"QuantityComparatorField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/QuantityItem/QuantityComparatorField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,YAAY,MAAM,4BAA4B,CAAC;AAEtD,OAAO,YAAY,MAAM,0BAA0B,CAAC;AACpD,OAAO,GAAG,MAAM,mBAAmB,CAAC;AACpC,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAY1D,SAAS,uBAAuB,CAAC,KAAmC;IAClE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC7E,qEAAqE;IAErE,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC9E,MAAM,2BAA2B,GAAG,uBAAuB,CAAC,GAAG,CAAC,2BAA2B,EAAE,CAAC;IAC9F,IAAI,2BAA2B,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,MAAC,GAAG,eACF,KAAC,YAAY,IACX,EAAE,EAAE,QAAQ,GAAG,GAAG,GAAG,MAAM,GAAG,aAAa,EAC3C,KAAK,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI,EAC1B,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAkC,CAAC,EACvE,aAAa,QACb,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EACjB,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,IAAI,EAAC,OAAO,EACZ,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,KAAC,YAAY,kBAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,IAAM,MAAM,EAAI,GACxE,EACF,KAAC,UAAU,IAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,gBAAgB,2BAEvC,IACT,CACP,CAAC;AACJ,CAAC;AAED,eAAe,uBAAuB,CAAC"}
|
|
@@ -1,10 +1,26 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2025 Commonwealth Scientific and Industrial Research
|
|
4
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
2
18
|
import InputAdornment from '@mui/material/InputAdornment';
|
|
3
19
|
import { StandardTextField } from '../Textfield.styles';
|
|
4
20
|
import { useRendererStylingStore } from '../../../stores';
|
|
5
21
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
6
22
|
import { ClearButtonAdornment } from '../ItemParts/ClearButtonAdornment';
|
|
7
|
-
import
|
|
23
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
8
24
|
function QuantityField(props) {
|
|
9
25
|
const { linkId, itemType, input, feedback, displayPrompt, displayUnit, entryFormat, readOnly, calcExpUpdated, isTabled, onInputChange, onBlur } = props;
|
|
10
26
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
@@ -16,11 +32,11 @@ function QuantityField(props) {
|
|
|
16
32
|
if (entryFormat) {
|
|
17
33
|
placeholderText = entryFormat;
|
|
18
34
|
}
|
|
19
|
-
return (_jsx(StandardTextField, { id: itemType + '-' + linkId + '-input', value: input, error: !!feedback, onChange: (event) => onInputChange(event.target.value), onBlur: onBlur, disabled: readOnly && readOnlyVisualStyle === 'disabled', placeholder: placeholderText, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, size: "small",
|
|
35
|
+
return (_jsx(StandardTextField, { id: itemType + '-' + linkId + '-input', value: input, error: !!feedback, onChange: (event) => onInputChange(event.target.value), onBlur: onBlur, disabled: readOnly && readOnlyVisualStyle === 'disabled', placeholder: placeholderText, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, size: "small", slotProps: {
|
|
20
36
|
htmlInput: { inputMode: 'numeric', pattern: '[0-9]*' },
|
|
21
37
|
input: {
|
|
22
38
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
23
|
-
endAdornment: (_jsxs(InputAdornment, { position: 'end', children: [_jsx(ClearButtonAdornment, { readOnly: readOnly, onClear: () => {
|
|
39
|
+
endAdornment: (_jsxs(InputAdornment, { position: 'end', children: [_jsx(ExpressionUpdateFadingIcon, { fadeIn: calcExpUpdated, disabled: readOnly }), _jsx(ClearButtonAdornment, { readOnly: readOnly, onClear: () => {
|
|
24
40
|
onInputChange('');
|
|
25
41
|
} }), _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] }))
|
|
26
42
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuantityField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/QuantityItem/QuantityField.tsx"],"names":[],"mappings":";AAAA,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"QuantityField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/QuantityItem/QuantityField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,0BAA0B,MAAM,yCAAyC,CAAC;AAgBjF,SAAS,aAAa,CAAC,KAAyB;IAC9C,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,aAAa,EACb,WAAW,EACX,WAAW,EACX,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,aAAa,EACb,MAAM,EACP,GAAG,KAAK,CAAC;IAEV,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC9E,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAEpE,IAAI,eAAe,GAAG,KAAK,CAAC;IAC5B,IAAI,aAAa,EAAE,CAAC;QAClB,eAAe,GAAG,aAAa,CAAC;IAClC,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,eAAe,GAAG,WAAW,CAAC;IAChC,CAAC;IAED,OAAO,CACL,KAAC,iBAAiB,IAChB,EAAE,EAAE,QAAQ,GAAG,GAAG,GAAG,MAAM,GAAG,QAAQ,EACtC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,CAAC,CAAC,QAAQ,EACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,WAAW,EAAE,eAAe,EAC5B,SAAS,QACT,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,OAAO,EACZ,SAAS,EAAE;YACT,SAAS,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE;YACtD,KAAK,EAAE;gBACL,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU;gBACxD,YAAY,EAAE,CACZ,MAAC,cAAc,IAAC,QAAQ,EAAE,KAAK,aAC7B,KAAC,0BAA0B,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC1E,KAAC,oBAAoB,IACnB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,GAAG,EAAE;gCACZ,aAAa,CAAC,EAAE,CAAC,CAAC;4BACpB,CAAC,GACD,EACF,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,YAAG,WAAW,GAAmB,IACrD,CAClB;aACF;SACF,EACD,UAAU,EAAE,QAAQ,eACV,uBAAuB,GACjC,CACH,CAAC;AACJ,CAAC;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -1,17 +1,30 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright 2025 Commonwealth Scientific and Industrial Research
|
|
4
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
2
18
|
import { getAnswerOptionLabel } from '../../../utils/openChoice';
|
|
3
19
|
import { StandardTextField } from '../Textfield.styles';
|
|
4
20
|
import Autocomplete from '@mui/material/Autocomplete';
|
|
5
21
|
import { useRendererStylingStore } from '../../../stores';
|
|
6
|
-
import { expressionUpdateFadingGlow } from '../../ExpressionUpdateFadingGlow.styles';
|
|
7
22
|
function QuantityUnitField(props) {
|
|
8
|
-
const { linkId, itemType, options, valueSelect, readOnly,
|
|
23
|
+
const { linkId, itemType, options, valueSelect, readOnly, isTabled, onChange } = props;
|
|
24
|
+
// TODO this component doesn't have a calcExpUpdated update animation
|
|
9
25
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
10
26
|
const textFieldWidth = useRendererStylingStore.use.textFieldWidth();
|
|
11
|
-
return (_jsx(Autocomplete, { id: itemType + '-' + linkId + '-unit', value: valueSelect !== null && valueSelect !== void 0 ? valueSelect : null, isOptionEqualToValue: (option, value) => { var _a, _b; return ((_a = option.valueCoding) === null || _a === void 0 ? void 0 : _a.code) === ((_b = value === null || value === void 0 ? void 0 : value.valueCoding) === null || _b === void 0 ? void 0 : _b.code); }, options: options, getOptionLabel: (option) => getAnswerOptionLabel(option), onChange: (_, newValue) => onChange(newValue), autoHighlight: true, sx:
|
|
12
|
-
expressionUpdateFadingGlow(calcExpUpdated),
|
|
13
|
-
{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }
|
|
14
|
-
], disabled: readOnly && readOnlyVisualStyle === 'disabled', readOnly: readOnly && readOnlyVisualStyle === 'readonly', size: "small", renderInput: (params) => (_jsx(StandardTextField, Object.assign({ textFieldWidth: textFieldWidth, isTabled: isTabled }, params))) }));
|
|
27
|
+
return (_jsx(Autocomplete, { id: itemType + '-' + linkId + '-unit', value: valueSelect !== null && valueSelect !== void 0 ? valueSelect : null, isOptionEqualToValue: (option, value) => { var _a, _b; return ((_a = option.valueCoding) === null || _a === void 0 ? void 0 : _a.code) === ((_b = value === null || value === void 0 ? void 0 : value.valueCoding) === null || _b === void 0 ? void 0 : _b.code); }, options: options, getOptionLabel: (option) => getAnswerOptionLabel(option), onChange: (_, newValue) => onChange(newValue), autoHighlight: true, sx: { maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }, disabled: readOnly && readOnlyVisualStyle === 'disabled', readOnly: readOnly && readOnlyVisualStyle === 'readonly', size: "small", renderInput: (params) => (_jsx(StandardTextField, Object.assign({ textFieldWidth: textFieldWidth, isTabled: isTabled }, params))) }));
|
|
15
28
|
}
|
|
16
29
|
export default QuantityUnitField;
|
|
17
30
|
//# sourceMappingURL=QuantityUnitField.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuantityUnitField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/QuantityItem/QuantityUnitField.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,YAAY,MAAM,4BAA4B,CAAC;AAGtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"QuantityUnitField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/QuantityItem/QuantityUnitField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,YAAY,MAAM,4BAA4B,CAAC;AAGtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAY1D,SAAS,iBAAiB,CAAC,KAA6B;IACtD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACvF,qEAAqE;IAErE,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC9E,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAEpE,OAAO,CACL,KAAC,YAAY,IACX,EAAE,EAAE,QAAQ,GAAG,GAAG,GAAG,MAAM,GAAG,OAAO,EACrC,KAAK,EAAE,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,IAAI,EAC1B,oBAAoB,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,eACtC,OAAA,CAAA,MAAA,MAAM,CAAC,WAAW,0CAAE,IAAI,OAAK,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,WAAW,0CAAE,IAAI,CAAA,CAAA,EAAA,EAEvD,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,oBAAoB,CAAC,MAAM,CAAC,EACxD,QAAQ,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAgD,CAAC,EACrF,aAAa,QACb,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,EAC/E,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,IAAI,EAAC,OAAO,EACZ,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CACvB,KAAC,iBAAiB,kBAAC,cAAc,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,IAAM,MAAM,EAAI,CACtF,GACD,CACH,CAAC;AACJ,CAAC;AAED,eAAe,iBAAiB,CAAC"}
|
|
@@ -4,15 +4,15 @@ import { StandardTextField } from '../Textfield.styles';
|
|
|
4
4
|
import { useRendererStylingStore } from '../../../stores';
|
|
5
5
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
6
6
|
import { ClearButtonAdornment } from '../ItemParts/ClearButtonAdornment';
|
|
7
|
-
import
|
|
7
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
8
8
|
function StringField(props) {
|
|
9
9
|
const { linkId, itemType, input, feedback, displayPrompt, displayUnit, entryFormat, readOnly, isTabled, calcExpUpdated, onInputChange, onBlur } = props;
|
|
10
10
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
11
11
|
const textFieldWidth = useRendererStylingStore.use.textFieldWidth();
|
|
12
|
-
return (_jsx(StandardTextField, { id: itemType + '-' + linkId, multiline: true, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, value: input, error: !!feedback, onBlur: onBlur, onChange: (event) => onInputChange(event.target.value), placeholder: entryFormat || displayPrompt, disabled: readOnly && readOnlyVisualStyle === 'disabled', size: "small",
|
|
12
|
+
return (_jsx(StandardTextField, { id: itemType + '-' + linkId, multiline: true, fullWidth: true, textFieldWidth: textFieldWidth, isTabled: isTabled, value: input, error: !!feedback, onBlur: onBlur, onChange: (event) => onInputChange(event.target.value), placeholder: entryFormat || displayPrompt, disabled: readOnly && readOnlyVisualStyle === 'disabled', size: "small", slotProps: {
|
|
13
13
|
input: {
|
|
14
14
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
15
|
-
endAdornment: (_jsxs(InputAdornment, { position: "end", children: [_jsx(ClearButtonAdornment, { readOnly: readOnly, onClear: () => {
|
|
15
|
+
endAdornment: (_jsxs(InputAdornment, { position: "end", children: [_jsx(ExpressionUpdateFadingIcon, { fadeIn: calcExpUpdated, disabled: readOnly }), _jsx(ClearButtonAdornment, { readOnly: readOnly, onClear: () => {
|
|
16
16
|
onInputChange('');
|
|
17
17
|
} }), _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] }))
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/StringItem/StringField.tsx"],"names":[],"mappings":";AAkBA,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"StringField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/StringItem/StringField.tsx"],"names":[],"mappings":";AAkBA,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,0BAA0B,MAAM,yCAAyC,CAAC;AAgBjF,SAAS,WAAW,CAAC,KAAuB;IAC1C,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,aAAa,EACb,WAAW,EACX,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,cAAc,EACd,aAAa,EACb,MAAM,EACP,GAAG,KAAK,CAAC;IAEV,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC9E,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;IAEpE,OAAO,CACL,KAAC,iBAAiB,IAChB,EAAE,EAAE,QAAQ,GAAG,GAAG,GAAG,MAAM,EAC3B,SAAS,QACT,SAAS,QACT,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,CAAC,CAAC,QAAQ,EACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,WAAW,EAAE,WAAW,IAAI,aAAa,EACzC,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,IAAI,EAAC,OAAO,EACZ,SAAS,EAAE;YACT,KAAK,EAAE;gBACL,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU;gBACxD,YAAY,EAAE,CACZ,MAAC,cAAc,IAAC,QAAQ,EAAC,KAAK,aAC5B,KAAC,0BAA0B,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC1E,KAAC,oBAAoB,IACnB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,GAAG,EAAE;gCACZ,aAAa,CAAC,EAAE,CAAC,CAAC;4BACpB,CAAC,GACD,EACF,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,YAAG,WAAW,GAAmB,IACrD,CAClB;aACF;SACF,EACD,UAAU,EAAE,QAAQ,eACV,qBAAqB,GAC/B,CACH,CAAC;AACJ,CAAC;AAED,eAAe,WAAW,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
/*
|
|
3
3
|
* Copyright 2025 Commonwealth Scientific and Industrial Research
|
|
4
4
|
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
@@ -19,14 +19,14 @@ import InputAdornment from '@mui/material/InputAdornment';
|
|
|
19
19
|
import MuiTextField from './MuiTextField';
|
|
20
20
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
21
21
|
import { useRendererStylingStore } from '../../../stores';
|
|
22
|
-
import
|
|
22
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
23
23
|
function TextField(props) {
|
|
24
24
|
const { linkId, itemType, input, feedback, displayPrompt, displayUnit, entryFormat, readOnly, calcExpUpdated, onInputChange, onBlur } = props;
|
|
25
25
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
26
|
-
return (_jsx(MuiTextField, { id: itemType + '-' + linkId, value: input, error: !!feedback, onChange: (event) => onInputChange(event.target.value), onBlur: onBlur, disabled: readOnly && readOnlyVisualStyle === 'disabled', placeholder: entryFormat || displayPrompt, fullWidth: true, multiline: true, size: "small", minRows: 3,
|
|
26
|
+
return (_jsx(MuiTextField, { id: itemType + '-' + linkId, value: input, error: !!feedback, onChange: (event) => onInputChange(event.target.value), onBlur: onBlur, disabled: readOnly && readOnlyVisualStyle === 'disabled', placeholder: entryFormat || displayPrompt, fullWidth: true, multiline: true, size: "small", minRows: 3, slotProps: {
|
|
27
27
|
input: {
|
|
28
28
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
29
|
-
endAdornment: (
|
|
29
|
+
endAdornment: (_jsxs(InputAdornment, { position: "end", children: [_jsx(ExpressionUpdateFadingIcon, { fadeIn: calcExpUpdated, disabled: readOnly }), _jsx(DisplayUnitText, { readOnly: readOnly, children: displayUnit })] }))
|
|
30
30
|
}
|
|
31
31
|
}, helperText: feedback, "data-test": "q-item-text-field" }));
|
|
32
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/TextItem/TextField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,
|
|
1
|
+
{"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../../../src/components/FormComponents/TextItem/TextField.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,eAAe,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,0BAA0B,MAAM,yCAAyC,CAAC;AAgBjF,SAAS,SAAS,CAAC,KAAqB;IACtC,MAAM,EACJ,MAAM,EACN,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,aAAa,EACb,WAAW,EACX,WAAW,EACX,QAAQ,EACR,cAAc,EACd,aAAa,EACb,MAAM,EACP,GAAG,KAAK,CAAC;IAEV,MAAM,mBAAmB,GAAG,uBAAuB,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAE9E,OAAO,CACL,KAAC,YAAY,IACX,EAAE,EAAE,QAAQ,GAAG,GAAG,GAAG,MAAM,EAC3B,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,CAAC,CAAC,QAAQ,EACjB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU,EACxD,WAAW,EAAE,WAAW,IAAI,aAAa,EACzC,SAAS,QACT,SAAS,QACT,IAAI,EAAC,OAAO,EACZ,OAAO,EAAE,CAAC,EACV,SAAS,EAAE;YACT,KAAK,EAAE;gBACL,QAAQ,EAAE,QAAQ,IAAI,mBAAmB,KAAK,UAAU;gBACxD,YAAY,EAAE,CACZ,MAAC,cAAc,IAAC,QAAQ,EAAC,KAAK,aAC5B,KAAC,0BAA0B,IAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAI,EAC1E,KAAC,eAAe,IAAC,QAAQ,EAAE,QAAQ,YAAG,WAAW,GAAmB,IACrD,CAClB;aACF;SACF,EACD,UAAU,EAAE,QAAQ,eACV,mBAAmB,GAC7B,CACH,CAAC;AACJ,CAAC;AAED,eAAe,SAAS,CAAC"}
|
|
@@ -27,6 +27,11 @@ function useCodingCalculatedExpression(props) {
|
|
|
27
27
|
if (!calcExpression) {
|
|
28
28
|
return;
|
|
29
29
|
}
|
|
30
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
31
|
+
const inputAndCalcValueAreBothFalsy = valueInString === '' && !calcExpression.value;
|
|
32
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
30
35
|
// only update if calculated value is different from current value
|
|
31
36
|
if (calcExpression.value !== valueInString &&
|
|
32
37
|
(typeof calcExpression.value === 'string' ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCodingCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useCodingCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAalD,gEAAgE;AAChE,SAAS,6BAA6B,CACpC,KAAyC;IAEzC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,GAC1F,KAAK,CAAC;IAER,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,aAAa;YACtC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;gBACvC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;gBACxC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;gBACxC,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAChC,CAAC;YACD,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,qCAAqC;YACrC,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAClC,4BAA4B,EAAE,CAAC;gBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;YAED,uEAAuE;YACvE,IAAI,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrF,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC9B,8BAA8B,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC1D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAED,mDAAmD;YACnD,MAAM,cAAc,GAClB,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;gBACtC,CAAC,CAAC,cAAc,CAAC,KAAK;gBACtB,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAEtC,8BAA8B,CAAC,cAAc,CAAC,CAAC;YAC/C,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAQ;IACrC,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;AACzD,CAAC;AAED,eAAe,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"useCodingCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useCodingCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAalD,gEAAgE;AAChE,SAAS,6BAA6B,CACpC,KAAyC;IAEzC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,GAC1F,KAAK,CAAC;IAER,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,MAAM,6BAA6B,GAAG,aAAa,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QACpF,IAAI,6BAA6B,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,aAAa;YACtC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;gBACvC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;gBACxC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;gBACxC,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAChC,CAAC;YACD,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,qCAAqC;YACrC,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAClC,4BAA4B,EAAE,CAAC;gBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;YAED,uEAAuE;YACvE,IAAI,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrF,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC9B,8BAA8B,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC1D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAED,mDAAmD;YACnD,MAAM,cAAc,GAClB,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ;gBACtC,CAAC,CAAC,cAAc,CAAC,KAAK;gBACtB,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAEtC,8BAA8B,CAAC,cAAc,CAAC,CAAC;YAC/C,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,GAAQ;IACrC,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC;AACzD,CAAC;AAED,eAAe,6BAA6B,CAAC"}
|
|
@@ -26,6 +26,11 @@ function useDateCalculatedExpression(props) {
|
|
|
26
26
|
if (!calcExpression) {
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
30
|
+
const inputAndCalcValueAreBothFalsy = valueDateFhir === '' && !calcExpression.value;
|
|
31
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
29
34
|
// only update if calculated value is different from current value
|
|
30
35
|
if (calcExpression.value !== valueDateFhir &&
|
|
31
36
|
(typeof calcExpression.value === 'string' || calcExpression.value === null)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDateCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useDateCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAalD,SAAS,2BAA2B,CAClC,KAAuC;IAEvC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,GAC1F,KAAK,CAAC;IAER,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,aAAa;YACtC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAC3E,CAAC;YACD,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,qCAAqC;YACrC,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAClC,4BAA4B,EAAE,CAAC;gBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;YAED,uCAAuC;YACvC,8BAA8B,CAAC,cAAc,CAAC,KAAe,CAAC,CAAC;YAC/D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,CAAC;AAC5B,CAAC;AAED,eAAe,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"useDateCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useDateCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAalD,SAAS,2BAA2B,CAClC,KAAuC;IAEvC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,GAC1F,KAAK,CAAC;IAER,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,MAAM,6BAA6B,GAAG,aAAa,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QACpF,IAAI,6BAA6B,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,aAAa;YACtC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAC3E,CAAC;YACD,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,qCAAqC;YACrC,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAClC,4BAA4B,EAAE,CAAC;gBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;YAED,uCAAuC;YACvC,8BAA8B,CAAC,cAAc,CAAC,KAAe,CAAC,CAAC;YAC/D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,CAAC;AAC5B,CAAC;AAED,eAAe,2BAA2B,CAAC"}
|
|
@@ -26,6 +26,11 @@ function useDateTimeCalculatedExpression(props) {
|
|
|
26
26
|
if (!calcExpression) {
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
30
|
+
const inputAndCalcValueAreBothFalsy = valueDateTimeFhir === '' && !calcExpression.value;
|
|
31
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
29
34
|
// only update if calculated value is different from current value
|
|
30
35
|
if (calcExpression.value !== valueDateTimeFhir &&
|
|
31
36
|
(typeof calcExpression.value === 'string' || calcExpression.value === null)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDateTimeCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useDateTimeCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAalD,SAAS,+BAA+B,CACtC,KAA2C;IAE3C,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,GAC9F,KAAK,CAAC;IAER,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,iBAAiB;YAC1C,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAC3E,CAAC;YACD,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,qCAAqC;YACrC,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAClC,4BAA4B,EAAE,CAAC;gBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;YAED,uCAAuC;YACvC,8BAA8B,CAAC,cAAc,CAAC,KAAe,CAAC,CAAC;YAC/D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,CAAC;AAC5B,CAAC;AAED,eAAe,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"useDateTimeCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useDateTimeCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAalD,SAAS,+BAA+B,CACtC,KAA2C;IAE3C,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,GAC9F,KAAK,CAAC;IAER,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,MAAM,6BAA6B,GAAG,iBAAiB,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QACxF,IAAI,6BAA6B,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,iBAAiB;YAC1C,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAC3E,CAAC;YACD,6CAA6C;YAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;gBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;YAER,qCAAqC;YACrC,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;gBAClC,4BAA4B,EAAE,CAAC;gBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;YAED,uCAAuC;YACvC,8BAA8B,CAAC,cAAc,CAAC,KAAe,CAAC,CAAC;YAC/D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,CAAC;AAC5B,CAAC;AAED,eAAe,+BAA+B,CAAC"}
|
|
@@ -26,6 +26,11 @@ function useDecimalCalculatedExpression(props) {
|
|
|
26
26
|
if (!calcExpression) {
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
30
|
+
const inputAndCalcValueAreBothFalsy = inputValue === '' && !calcExpression.value;
|
|
31
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
29
34
|
// only update if calculated value is different from current value
|
|
30
35
|
if (calcExpression.value !== inputValue &&
|
|
31
36
|
(typeof calcExpression.value === 'number' || calcExpression.value === null)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useDecimalCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useDecimalCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAclD,SAAS,8BAA8B,CACrC,KAA0C;IAE1C,MAAM,EACJ,KAAK,EACL,UAAU,EACV,SAAS,EACT,+BAA+B,EAC/B,4BAA4B,EAC7B,GAAG,KAAK,CAAC;IAEV,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,UAAU;YACnC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAC3E,CAAC;YACD,MAAM,mBAAmB,GACvB,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,SAAS,KAAK,QAAQ;gBACvE,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrD,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC;YAE3B,kEAAkE;YAClE,IAAI,mBAAmB,KAAK,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBACnD,6CAA6C;gBAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;oBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;gBAER,qCAAqC;gBACrC,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;oBACjC,4BAA4B,EAAE,CAAC;oBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;gBAED,yCAAyC;gBACzC,+BAA+B,CAAC,mBAAmB,CAAC,CAAC;gBACrD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"useDecimalCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useDecimalCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAclD,SAAS,8BAA8B,CACrC,KAA0C;IAE1C,MAAM,EACJ,KAAK,EACL,UAAU,EACV,SAAS,EACT,+BAA+B,EAC/B,4BAA4B,EAC7B,GAAG,KAAK,CAAC;IAEV,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,MAAM,6BAA6B,GAAG,UAAU,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QACjF,IAAI,6BAA6B,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,UAAU;YACnC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAC3E,CAAC;YACD,MAAM,mBAAmB,GACvB,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,SAAS,KAAK,QAAQ;gBACvE,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrD,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC;YAE3B,kEAAkE;YAClE,IAAI,mBAAmB,KAAK,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBACnD,6CAA6C;gBAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;oBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;gBAER,qCAAqC;gBACrC,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;oBACjC,4BAA4B,EAAE,CAAC;oBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;gBAED,yCAAyC;gBACzC,+BAA+B,CAAC,mBAAmB,CAAC,CAAC;gBACrD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,8BAA8B,CAAC"}
|
|
@@ -26,6 +26,11 @@ function useIntegerCalculatedExpression(props) {
|
|
|
26
26
|
if (!calcExpression) {
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
30
|
+
const inputAndCalcValueAreBothFalsy = inputValue === '' && !calcExpression.value;
|
|
31
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
29
34
|
// only update if calculated value is different from current value
|
|
30
35
|
if (calcExpression.value !== inputValue &&
|
|
31
36
|
(typeof calcExpression.value === 'number' || calcExpression.value === null)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIntegerCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useIntegerCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAalD,SAAS,8BAA8B,CACrC,KAA0C;IAE1C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,GACxF,KAAK,CAAC;IAER,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,UAAU;YACnC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAC3E,CAAC;YACD,MAAM,mBAAmB,GAAG,cAAc,CAAC,KAAK,CAAC;YAEjD,IAAI,mBAAmB,KAAK,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACjD,6CAA6C;gBAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;oBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;gBAER,qCAAqC;gBACrC,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;oBACjC,4BAA4B,EAAE,CAAC;oBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;gBAED,yCAAyC;gBACzC,+BAA+B,CAAC,mBAAmB,CAAC,CAAC;gBACrD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"useIntegerCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useIntegerCalculatedExpression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAalD,SAAS,8BAA8B,CACrC,KAA0C;IAE1C,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,GACxF,KAAK,CAAC;IAER,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;IAEhF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE5D,SAAS,CACP,GAAG,EAAE;;QACH,MAAM,cAAc,GAAG,MAAA,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,0CAAE,IAAI,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAC7B,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,MAAM,6BAA6B,GAAG,UAAU,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QACjF,IAAI,6BAA6B,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,kEAAkE;QAClE,IACE,cAAc,CAAC,KAAK,KAAK,UAAU;YACnC,CAAC,OAAO,cAAc,CAAC,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,KAAK,KAAK,IAAI,CAAC,EAC3E,CAAC;YACD,MAAM,mBAAmB,GAAG,cAAc,CAAC,KAAK,CAAC;YAEjD,IAAI,mBAAmB,KAAK,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACjD,6CAA6C;gBAC7C,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;oBAChC,iBAAiB,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC,EAAE,GAAG,CAAC,CAAC;gBAER,qCAAqC;gBACrC,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;oBACjC,4BAA4B,EAAE,CAAC;oBAC/B,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;gBAED,yCAAyC;gBACzC,+BAA+B,CAAC,mBAAmB,CAAC,CAAC;gBACrD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IACD,mEAAmE;IACnE,uDAAuD;IACvD,CAAC,qBAAqB,CAAC,CACxB,CAAC;IAEF,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC;AAC5C,CAAC;AAED,eAAe,8BAA8B,CAAC"}
|
|
@@ -30,6 +30,11 @@ function useQuantityCalculatedExpression(props) {
|
|
|
30
30
|
if (!calcExpression) {
|
|
31
31
|
return;
|
|
32
32
|
}
|
|
33
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
34
|
+
const inputAndCalcValueAreBothFalsy = inputValue === '' && !calcExpression.value;
|
|
35
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
33
38
|
// only update if calculated value is different from current value
|
|
34
39
|
if (calcExpression.value !== inputValue &&
|
|
35
40
|
(typeof calcExpression.value === 'number' ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useQuantityCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useQuantityCalculatedExpression.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useQuantityCalculatedExpression.js","sourceRoot":"","sources":["../../src/hooks/useQuantityCalculatedExpression.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aehrc/smart-forms-renderer",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.85",
|
|
4
4
|
"description": "FHIR Structured Data Captured (SDC) rendering engine for Smart Forms",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
"@types/react-dom": "^19.1.1",
|
|
87
87
|
"chokidar": "^4.0.3",
|
|
88
88
|
"concurrently": "^9.1.2",
|
|
89
|
-
"eslint-plugin-storybook": "9.0.
|
|
89
|
+
"eslint-plugin-storybook": "9.0.18",
|
|
90
90
|
"jest": "^29.7.0",
|
|
91
91
|
"jest-environment-jsdom": "^30.0.0",
|
|
92
92
|
"storybook": "^9.0.16",
|
|
@@ -27,7 +27,7 @@ import { compareAnswerOptionValue, isOptionDisabled } from '../../../utils/choic
|
|
|
27
27
|
import { useRendererStylingStore } from '../../../stores';
|
|
28
28
|
import { StyledRequiredTypography } from '../Item.styles';
|
|
29
29
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
30
|
-
import
|
|
30
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
31
31
|
|
|
32
32
|
interface ChoiceSelectAnswerOptionFieldsProps
|
|
33
33
|
extends PropsWithIsTabledRequiredAttribute,
|
|
@@ -73,10 +73,7 @@ function ChoiceSelectAnswerOptionFields(props: ChoiceSelectAnswerOptionFieldsPro
|
|
|
73
73
|
onChange={(_, newValue) => onSelectChange(newValue)}
|
|
74
74
|
openOnFocus
|
|
75
75
|
autoHighlight
|
|
76
|
-
sx={
|
|
77
|
-
expressionUpdateFadingGlow(expressionUpdated),
|
|
78
|
-
{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }
|
|
79
|
-
]}
|
|
76
|
+
sx={{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }}
|
|
80
77
|
size="small"
|
|
81
78
|
disabled={readOnly && readOnlyVisualStyle === 'disabled'}
|
|
82
79
|
readOnly={readOnly && readOnlyVisualStyle === 'readonly'}
|
|
@@ -93,6 +90,7 @@ function ChoiceSelectAnswerOptionFields(props: ChoiceSelectAnswerOptionFieldsPro
|
|
|
93
90
|
endAdornment: (
|
|
94
91
|
<>
|
|
95
92
|
{params.InputProps.endAdornment}
|
|
93
|
+
<ExpressionUpdateFadingIcon fadeIn={expressionUpdated} disabled={readOnly} />
|
|
96
94
|
<DisplayUnitText readOnly={readOnly}>{displayUnit}</DisplayUnitText>
|
|
97
95
|
</>
|
|
98
96
|
)
|
|
@@ -30,7 +30,7 @@ import { useRendererStylingStore } from '../../../stores';
|
|
|
30
30
|
import { StyledRequiredTypography } from '../Item.styles';
|
|
31
31
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
32
32
|
import { isCodingDisabled } from '../../../utils/choice';
|
|
33
|
-
import
|
|
33
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
34
34
|
|
|
35
35
|
interface ChoiceSelectAnswerValueSetFieldsProps
|
|
36
36
|
extends PropsWithIsTabledRequiredAttribute,
|
|
@@ -80,10 +80,7 @@ function ChoiceSelectAnswerValueSetFields(props: ChoiceSelectAnswerValueSetField
|
|
|
80
80
|
onChange={(_, newValue) => onSelectChange(newValue)}
|
|
81
81
|
openOnFocus
|
|
82
82
|
autoHighlight
|
|
83
|
-
sx={
|
|
84
|
-
expressionUpdateFadingGlow(expressionUpdated),
|
|
85
|
-
{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }
|
|
86
|
-
]}
|
|
83
|
+
sx={{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }}
|
|
87
84
|
size="small"
|
|
88
85
|
disabled={readOnly && readOnlyVisualStyle === 'disabled'}
|
|
89
86
|
readOnly={readOnly && readOnlyVisualStyle === 'readonly'}
|
|
@@ -100,6 +97,7 @@ function ChoiceSelectAnswerValueSetFields(props: ChoiceSelectAnswerValueSetField
|
|
|
100
97
|
endAdornment: (
|
|
101
98
|
<>
|
|
102
99
|
{params.InputProps.endAdornment}
|
|
100
|
+
<ExpressionUpdateFadingIcon fadeIn={expressionUpdated} disabled={readOnly} />
|
|
103
101
|
<DisplayUnitText readOnly={readOnly}>{displayUnit}</DisplayUnitText>
|
|
104
102
|
</>
|
|
105
103
|
),
|
|
@@ -15,15 +15,15 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
+
import type { ChangeEvent, Dispatch, SetStateAction } from 'react';
|
|
18
19
|
import { useRef } from 'react';
|
|
19
20
|
import type { Dayjs } from 'dayjs';
|
|
20
21
|
import InputAdornment from '@mui/material/InputAdornment';
|
|
21
|
-
import type { ChangeEvent, Dispatch, SetStateAction } from 'react';
|
|
22
22
|
import type { PropsWithIsTabledRequiredAttribute } from '../../../../interfaces/renderProps.interface';
|
|
23
23
|
import { StandardTextField } from '../../Textfield.styles';
|
|
24
24
|
import DatePicker from './DatePicker';
|
|
25
25
|
import { useRendererStylingStore } from '../../../../stores';
|
|
26
|
-
import
|
|
26
|
+
import ExpressionUpdateFadingIcon from '../../ItemParts/ExpressionUpdateFadingIcon';
|
|
27
27
|
|
|
28
28
|
interface CustomDateFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
29
29
|
linkId: string;
|
|
@@ -101,12 +101,12 @@ function CustomDateField(props: CustomDateFieldProps) {
|
|
|
101
101
|
onDateBlur();
|
|
102
102
|
setFocused(false);
|
|
103
103
|
}}
|
|
104
|
-
sx={[expressionUpdateFadingGlow(calcExpUpdated)]}
|
|
105
104
|
slotProps={{
|
|
106
105
|
input: {
|
|
107
106
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
108
107
|
endAdornment: (
|
|
109
108
|
<InputAdornment position="end">
|
|
109
|
+
<ExpressionUpdateFadingIcon fadeIn={calcExpUpdated} disabled={readOnly} />
|
|
110
110
|
<DatePicker
|
|
111
111
|
valueString={valueDate}
|
|
112
112
|
readOnly={readOnly}
|
|
@@ -24,7 +24,6 @@ import MuiTextField from '../../TextItem/MuiTextField';
|
|
|
24
24
|
import { grey } from '@mui/material/colors';
|
|
25
25
|
import Typography from '@mui/material/Typography';
|
|
26
26
|
import { useRendererStylingStore } from '../../../../stores';
|
|
27
|
-
import { expressionUpdateFadingGlow } from '../../../ExpressionUpdateFadingGlow.styles';
|
|
28
27
|
import FormControl from '@mui/material/FormControl';
|
|
29
28
|
|
|
30
29
|
interface CustomTimeFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
@@ -53,13 +52,13 @@ function CustomTimeField(props: CustomTimeFieldProps) {
|
|
|
53
52
|
feedback,
|
|
54
53
|
displayPrompt,
|
|
55
54
|
readOnly,
|
|
56
|
-
calcExpUpdated,
|
|
57
55
|
isPartOfDateTime,
|
|
58
56
|
isTabled,
|
|
59
57
|
onTimeInputChange,
|
|
60
58
|
onPeriodChange,
|
|
61
59
|
onTimeBlur
|
|
62
60
|
} = props;
|
|
61
|
+
// TODO this component doesn't have a calcExpUpdated update animation
|
|
63
62
|
|
|
64
63
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
65
64
|
const textFieldWidth = useRendererStylingStore.use.textFieldWidth();
|
|
@@ -84,7 +83,7 @@ function CustomTimeField(props: CustomTimeFieldProps) {
|
|
|
84
83
|
value={timeInput}
|
|
85
84
|
error={!!feedback}
|
|
86
85
|
fullWidth
|
|
87
|
-
sx={
|
|
86
|
+
sx={{ flex: 1 }}
|
|
88
87
|
onChange={(e: ChangeEvent<HTMLInputElement>) => onTimeInputChange(e.target.value)}
|
|
89
88
|
onBlur={onTimeBlur}
|
|
90
89
|
label={displayPrompt}
|
|
@@ -97,7 +96,7 @@ function CustomTimeField(props: CustomTimeFieldProps) {
|
|
|
97
96
|
}
|
|
98
97
|
}}
|
|
99
98
|
/>
|
|
100
|
-
<FormControl sx={
|
|
99
|
+
<FormControl sx={{ flex: 1 }}>
|
|
101
100
|
<Select
|
|
102
101
|
id={periodId}
|
|
103
102
|
value={is24HourNotation ? '' : periodInput}
|
|
@@ -21,7 +21,7 @@ import type { PropsWithIsTabledRequiredAttribute } from '../../../interfaces/ren
|
|
|
21
21
|
import { useRendererStylingStore } from '../../../stores';
|
|
22
22
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
23
23
|
import { ClearButtonAdornment } from '../ItemParts/ClearButtonAdornment';
|
|
24
|
-
import
|
|
24
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
25
25
|
|
|
26
26
|
interface DecimalFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
27
27
|
linkId: string;
|
|
@@ -79,7 +79,6 @@ function DecimalField(props: DecimalFieldProps) {
|
|
|
79
79
|
textFieldWidth={textFieldWidth}
|
|
80
80
|
isTabled={isTabled}
|
|
81
81
|
size="small"
|
|
82
|
-
sx={[expressionUpdateFadingGlow(calcExpUpdated)]}
|
|
83
82
|
slotProps={{
|
|
84
83
|
htmlInput: {
|
|
85
84
|
inputMode: 'numeric',
|
|
@@ -89,6 +88,7 @@ function DecimalField(props: DecimalFieldProps) {
|
|
|
89
88
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
90
89
|
endAdornment: (
|
|
91
90
|
<InputAdornment position="end">
|
|
91
|
+
<ExpressionUpdateFadingIcon fadeIn={calcExpUpdated} disabled={readOnly} />
|
|
92
92
|
<ClearButtonAdornment
|
|
93
93
|
readOnly={readOnly}
|
|
94
94
|
onClear={() => {
|
|
@@ -21,7 +21,7 @@ import type { PropsWithIsTabledRequiredAttribute } from '../../../interfaces/ren
|
|
|
21
21
|
import { useRendererStylingStore } from '../../../stores';
|
|
22
22
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
23
23
|
import { ClearButtonAdornment } from '../ItemParts/ClearButtonAdornment';
|
|
24
|
-
import
|
|
24
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
25
25
|
|
|
26
26
|
interface IntegerFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
27
27
|
linkId: string;
|
|
@@ -80,7 +80,6 @@ function IntegerField(props: IntegerFieldProps) {
|
|
|
80
80
|
textFieldWidth={textFieldWidth}
|
|
81
81
|
isTabled={isTabled}
|
|
82
82
|
size="small"
|
|
83
|
-
sx={[expressionUpdateFadingGlow(calcExpUpdated)]}
|
|
84
83
|
slotProps={{
|
|
85
84
|
htmlInput: {
|
|
86
85
|
inputMode: 'numeric',
|
|
@@ -90,6 +89,7 @@ function IntegerField(props: IntegerFieldProps) {
|
|
|
90
89
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
91
90
|
endAdornment: (
|
|
92
91
|
<InputAdornment position={'end'}>
|
|
92
|
+
<ExpressionUpdateFadingIcon fadeIn={calcExpUpdated} disabled={readOnly} />
|
|
93
93
|
<ClearButtonAdornment
|
|
94
94
|
readOnly={readOnly}
|
|
95
95
|
onClear={() => {
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Commonwealth Scientific and Industrial Research
|
|
3
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
1
18
|
import Autocomplete from '@mui/material/Autocomplete';
|
|
2
19
|
import type { PropsWithIsTabledRequiredAttribute } from '../../../interfaces/renderProps.interface';
|
|
3
20
|
import MuiTextField from '../TextItem/MuiTextField';
|
|
@@ -5,7 +22,6 @@ import Box from '@mui/material/Box';
|
|
|
5
22
|
import Typography from '@mui/material/Typography';
|
|
6
23
|
import type { Quantity } from 'fhir/r4';
|
|
7
24
|
import { useRendererStylingStore } from '../../../stores';
|
|
8
|
-
import { expressionUpdateFadingGlow } from '../../ExpressionUpdateFadingGlow.styles';
|
|
9
25
|
|
|
10
26
|
interface QuantityComparatorFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
11
27
|
linkId: string;
|
|
@@ -18,7 +34,8 @@ interface QuantityComparatorFieldProps extends PropsWithIsTabledRequiredAttribut
|
|
|
18
34
|
}
|
|
19
35
|
|
|
20
36
|
function QuantityComparatorField(props: QuantityComparatorFieldProps) {
|
|
21
|
-
const { linkId, itemType, options, valueSelect, readOnly,
|
|
37
|
+
const { linkId, itemType, options, valueSelect, readOnly, onChange } = props;
|
|
38
|
+
// TODO this component doesn't have a calcExpUpdated update animation
|
|
22
39
|
|
|
23
40
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
24
41
|
const hideQuantityComparatorField = useRendererStylingStore.use.hideQuantityComparatorField();
|
|
@@ -34,7 +51,7 @@ function QuantityComparatorField(props: QuantityComparatorFieldProps) {
|
|
|
34
51
|
options={options}
|
|
35
52
|
onChange={(_, newValue) => onChange(newValue as Quantity['comparator'])}
|
|
36
53
|
autoHighlight
|
|
37
|
-
sx={
|
|
54
|
+
sx={{ width: 88 }}
|
|
38
55
|
disabled={readOnly && readOnlyVisualStyle === 'disabled'}
|
|
39
56
|
readOnly={readOnly && readOnlyVisualStyle === 'readonly'}
|
|
40
57
|
size="small"
|
|
@@ -1,10 +1,27 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Commonwealth Scientific and Industrial Research
|
|
3
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
1
18
|
import InputAdornment from '@mui/material/InputAdornment';
|
|
2
19
|
import { StandardTextField } from '../Textfield.styles';
|
|
3
20
|
import type { PropsWithIsTabledRequiredAttribute } from '../../../interfaces/renderProps.interface';
|
|
4
21
|
import { useRendererStylingStore } from '../../../stores';
|
|
5
22
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
6
23
|
import { ClearButtonAdornment } from '../ItemParts/ClearButtonAdornment';
|
|
7
|
-
import
|
|
24
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
8
25
|
|
|
9
26
|
interface QuantityFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
10
27
|
linkId: string;
|
|
@@ -61,13 +78,13 @@ function QuantityField(props: QuantityFieldProps) {
|
|
|
61
78
|
textFieldWidth={textFieldWidth}
|
|
62
79
|
isTabled={isTabled}
|
|
63
80
|
size="small"
|
|
64
|
-
sx={[expressionUpdateFadingGlow(calcExpUpdated)]}
|
|
65
81
|
slotProps={{
|
|
66
82
|
htmlInput: { inputMode: 'numeric', pattern: '[0-9]*' },
|
|
67
83
|
input: {
|
|
68
84
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
69
85
|
endAdornment: (
|
|
70
86
|
<InputAdornment position={'end'}>
|
|
87
|
+
<ExpressionUpdateFadingIcon fadeIn={calcExpUpdated} disabled={readOnly} />
|
|
71
88
|
<ClearButtonAdornment
|
|
72
89
|
readOnly={readOnly}
|
|
73
90
|
onClear={() => {
|
|
@@ -1,10 +1,26 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2025 Commonwealth Scientific and Industrial Research
|
|
3
|
+
* Organisation (CSIRO) ABN 41 687 119 230.
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
|
|
1
18
|
import { getAnswerOptionLabel } from '../../../utils/openChoice';
|
|
2
19
|
import { StandardTextField } from '../Textfield.styles';
|
|
3
20
|
import Autocomplete from '@mui/material/Autocomplete';
|
|
4
21
|
import type { QuestionnaireItemAnswerOption } from 'fhir/r4';
|
|
5
22
|
import type { PropsWithIsTabledRequiredAttribute } from '../../../interfaces/renderProps.interface';
|
|
6
23
|
import { useRendererStylingStore } from '../../../stores';
|
|
7
|
-
import { expressionUpdateFadingGlow } from '../../ExpressionUpdateFadingGlow.styles';
|
|
8
24
|
|
|
9
25
|
interface QuantityUnitFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
10
26
|
linkId: string;
|
|
@@ -17,8 +33,8 @@ interface QuantityUnitFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
|
17
33
|
}
|
|
18
34
|
|
|
19
35
|
function QuantityUnitField(props: QuantityUnitFieldProps) {
|
|
20
|
-
const { linkId, itemType, options, valueSelect, readOnly,
|
|
21
|
-
|
|
36
|
+
const { linkId, itemType, options, valueSelect, readOnly, isTabled, onChange } = props;
|
|
37
|
+
// TODO this component doesn't have a calcExpUpdated update animation
|
|
22
38
|
|
|
23
39
|
const readOnlyVisualStyle = useRendererStylingStore.use.readOnlyVisualStyle();
|
|
24
40
|
const textFieldWidth = useRendererStylingStore.use.textFieldWidth();
|
|
@@ -34,10 +50,7 @@ function QuantityUnitField(props: QuantityUnitFieldProps) {
|
|
|
34
50
|
getOptionLabel={(option) => getAnswerOptionLabel(option)}
|
|
35
51
|
onChange={(_, newValue) => onChange(newValue as QuestionnaireItemAnswerOption | null)}
|
|
36
52
|
autoHighlight
|
|
37
|
-
sx={
|
|
38
|
-
expressionUpdateFadingGlow(calcExpUpdated),
|
|
39
|
-
{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }
|
|
40
|
-
]}
|
|
53
|
+
sx={{ maxWidth: !isTabled ? textFieldWidth : 3000, minWidth: 160, flexGrow: 1 }}
|
|
41
54
|
disabled={readOnly && readOnlyVisualStyle === 'disabled'}
|
|
42
55
|
readOnly={readOnly && readOnlyVisualStyle === 'readonly'}
|
|
43
56
|
size="small"
|
|
@@ -21,7 +21,7 @@ import { StandardTextField } from '../Textfield.styles';
|
|
|
21
21
|
import { useRendererStylingStore } from '../../../stores';
|
|
22
22
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
23
23
|
import { ClearButtonAdornment } from '../ItemParts/ClearButtonAdornment';
|
|
24
|
-
import
|
|
24
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
25
25
|
|
|
26
26
|
interface StringFieldProps extends PropsWithIsTabledRequiredAttribute {
|
|
27
27
|
linkId: string;
|
|
@@ -70,12 +70,12 @@ function StringField(props: StringFieldProps) {
|
|
|
70
70
|
placeholder={entryFormat || displayPrompt}
|
|
71
71
|
disabled={readOnly && readOnlyVisualStyle === 'disabled'}
|
|
72
72
|
size="small"
|
|
73
|
-
sx={[expressionUpdateFadingGlow(calcExpUpdated)]}
|
|
74
73
|
slotProps={{
|
|
75
74
|
input: {
|
|
76
75
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
77
76
|
endAdornment: (
|
|
78
77
|
<InputAdornment position="end">
|
|
78
|
+
<ExpressionUpdateFadingIcon fadeIn={calcExpUpdated} disabled={readOnly} />
|
|
79
79
|
<ClearButtonAdornment
|
|
80
80
|
readOnly={readOnly}
|
|
81
81
|
onClear={() => {
|
|
@@ -19,7 +19,7 @@ import InputAdornment from '@mui/material/InputAdornment';
|
|
|
19
19
|
import MuiTextField from './MuiTextField';
|
|
20
20
|
import DisplayUnitText from '../ItemParts/DisplayUnitText';
|
|
21
21
|
import { useRendererStylingStore } from '../../../stores';
|
|
22
|
-
import
|
|
22
|
+
import ExpressionUpdateFadingIcon from '../ItemParts/ExpressionUpdateFadingIcon';
|
|
23
23
|
|
|
24
24
|
interface TextFieldProps {
|
|
25
25
|
linkId: string;
|
|
@@ -65,12 +65,12 @@ function TextField(props: TextFieldProps) {
|
|
|
65
65
|
multiline
|
|
66
66
|
size="small"
|
|
67
67
|
minRows={3}
|
|
68
|
-
sx={[expressionUpdateFadingGlow(calcExpUpdated)]}
|
|
69
68
|
slotProps={{
|
|
70
69
|
input: {
|
|
71
70
|
readOnly: readOnly && readOnlyVisualStyle === 'readonly',
|
|
72
71
|
endAdornment: (
|
|
73
72
|
<InputAdornment position="end">
|
|
73
|
+
<ExpressionUpdateFadingIcon fadeIn={calcExpUpdated} disabled={readOnly} />
|
|
74
74
|
<DisplayUnitText readOnly={readOnly}>{displayUnit}</DisplayUnitText>
|
|
75
75
|
</InputAdornment>
|
|
76
76
|
)
|
|
@@ -51,6 +51,12 @@ function useCodingCalculatedExpression(
|
|
|
51
51
|
return;
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
55
|
+
const inputAndCalcValueAreBothFalsy = valueInString === '' && !calcExpression.value;
|
|
56
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
|
|
54
60
|
// only update if calculated value is different from current value
|
|
55
61
|
if (
|
|
56
62
|
calcExpression.value !== valueInString &&
|
|
@@ -50,6 +50,12 @@ function useDateCalculatedExpression(
|
|
|
50
50
|
return;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
54
|
+
const inputAndCalcValueAreBothFalsy = valueDateFhir === '' && !calcExpression.value;
|
|
55
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
|
|
53
59
|
// only update if calculated value is different from current value
|
|
54
60
|
if (
|
|
55
61
|
calcExpression.value !== valueDateFhir &&
|
|
@@ -50,6 +50,12 @@ function useDateTimeCalculatedExpression(
|
|
|
50
50
|
return;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
54
|
+
const inputAndCalcValueAreBothFalsy = valueDateTimeFhir === '' && !calcExpression.value;
|
|
55
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
|
|
53
59
|
// only update if calculated value is different from current value
|
|
54
60
|
if (
|
|
55
61
|
calcExpression.value !== valueDateTimeFhir &&
|
|
@@ -56,6 +56,12 @@ function useDecimalCalculatedExpression(
|
|
|
56
56
|
return;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
60
|
+
const inputAndCalcValueAreBothFalsy = inputValue === '' && !calcExpression.value;
|
|
61
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
|
|
59
65
|
// only update if calculated value is different from current value
|
|
60
66
|
if (
|
|
61
67
|
calcExpression.value !== inputValue &&
|
|
@@ -50,6 +50,12 @@ function useIntegerCalculatedExpression(
|
|
|
50
50
|
return;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
54
|
+
const inputAndCalcValueAreBothFalsy = inputValue === '' && !calcExpression.value;
|
|
55
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
|
|
53
59
|
// only update if calculated value is different from current value
|
|
54
60
|
if (
|
|
55
61
|
calcExpression.value !== inputValue &&
|
|
@@ -74,6 +74,12 @@ function useQuantityCalculatedExpression(
|
|
|
74
74
|
return;
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
+
// If both input and calculated value are falsy, there is nothing to update
|
|
78
|
+
const inputAndCalcValueAreBothFalsy = inputValue === '' && !calcExpression.value;
|
|
79
|
+
if (inputAndCalcValueAreBothFalsy) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
|
|
77
83
|
// only update if calculated value is different from current value
|
|
78
84
|
if (
|
|
79
85
|
calcExpression.value !== inputValue &&
|