@iapps/ng-dhis2-ui 1.2.64 → 1.2.66
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/fesm2022/iapps-ng-dhis2-ui.mjs +26 -23
- package/fesm2022/iapps-ng-dhis2-ui.mjs.map +1 -1
- package/lib/modules/form/utils/field-type.util.d.ts +1 -1
- package/lib/modules/form/utils/field.util.d.ts +1 -1
- package/lib/modules/line-list/components/table/filterToolbar.d.ts +1 -1
- package/package.json +1 -1
|
@@ -3302,7 +3302,7 @@ const OrgUnitSelector = ({ hide, setHide, selectedOrgUnit, setSelectedOrgUnit, s
|
|
|
3302
3302
|
React__default.createElement(ButtonStrip$1, { end: true },
|
|
3303
3303
|
React__default.createElement(Button$1, { onClick: () => setHide(true), secondary: true }, "Close")))));
|
|
3304
3304
|
|
|
3305
|
-
const FilterToolbar = ({ orgUnitLabel, selectedOrgUnit, setSelectedOrgUnit, setOrgUnitState, defaultOrgUnit, setHide, startDateState, setStartDateState, endDateState, setEndDateState, visibleFilters, dateStates, inputValues, setInputValues, handleInputChange, handleInputChangeForSelectField, handleDateSelect, prevValue, setPrevValue, showAllFilters, setShowAllFilters, handleSearch, setTempStartDateState, setTempEndDateState, setTempOrgUnitState, tempStartDateState, tempEndDateState, tempOrgUnitState, dataQueryFiltersState, setDataQueryFiltersState, }) => (React__default.createElement(DataTableToolbar, { className: "table-top-toolbar" },
|
|
3305
|
+
const FilterToolbar = ({ orgUnitLabel, selectedOrgUnit, setSelectedOrgUnit, setOrgUnitState, defaultOrgUnit, setHide, startDateState, setStartDateState, endDateState, setEndDateState, visibleFilters, dateStates, inputValues, setInputValues, handleInputChange, handleInputChangeForSelectField, handleDateSelect, prevValue, setPrevValue, showAllFilters, setShowAllFilters, handleSearch, setTempStartDateState, setTempEndDateState, setTempOrgUnitState, tempStartDateState, tempEndDateState, tempOrgUnitState, dataQueryFiltersState, setDataQueryFiltersState, SetOrgUnitModalVisible, }) => (React__default.createElement(DataTableToolbar, { className: "table-top-toolbar" },
|
|
3306
3306
|
React__default.createElement("div", { style: {
|
|
3307
3307
|
display: 'flex',
|
|
3308
3308
|
flexDirection: 'column', // Ensures rows
|
|
@@ -3315,7 +3315,10 @@ const FilterToolbar = ({ orgUnitLabel, selectedOrgUnit, setSelectedOrgUnit, setO
|
|
|
3315
3315
|
gap: '10px',
|
|
3316
3316
|
flexWrap: 'wrap',
|
|
3317
3317
|
} },
|
|
3318
|
-
React__default.createElement(InputField$1, { key: "location", label: orgUnitLabel ? orgUnitLabel : 'registering unit:', value: selectedOrgUnit, onFocus: () =>
|
|
3318
|
+
React__default.createElement(InputField$1, { key: "location", label: orgUnitLabel ? orgUnitLabel : 'registering unit:', value: selectedOrgUnit, onFocus: () => {
|
|
3319
|
+
SetOrgUnitModalVisible(true);
|
|
3320
|
+
setHide(false);
|
|
3321
|
+
}, className: "custom-input", clearable: true, onChange: (event) => {
|
|
3319
3322
|
setSelectedOrgUnit(event.value);
|
|
3320
3323
|
setOrgUnitState(defaultOrgUnit);
|
|
3321
3324
|
} }),
|
|
@@ -3323,14 +3326,14 @@ const FilterToolbar = ({ orgUnitLabel, selectedOrgUnit, setSelectedOrgUnit, setO
|
|
|
3323
3326
|
//clearable={!!tempStartDateState}
|
|
3324
3327
|
//date={tempStartDateState || undefined}
|
|
3325
3328
|
//date={tempStartDateState || "yyyy-mm-dd"}
|
|
3326
|
-
clearable: !!tempStartDateState && tempStartDateState !==
|
|
3329
|
+
clearable: !!tempStartDateState && tempStartDateState !== 'yyyy-mm-dd', date: tempStartDateState || 'yyyy-mm-dd', onDateSelect: (selectedDate) => {
|
|
3327
3330
|
setTempStartDateState(selectedDate.calendarDateString);
|
|
3328
3331
|
console.log('selectedDate', selectedDate);
|
|
3329
3332
|
if (selectedDate.calendarDateString === null) {
|
|
3330
3333
|
setStartDateState(selectedDate.calendarDateString);
|
|
3331
3334
|
}
|
|
3332
3335
|
} }),
|
|
3333
|
-
React__default.createElement(CalendarInput, { label: "End date:", calendar: "gregory", locale: "en-GB", timeZone: "Africa/Dar_es_Salaam", className: "custom-input", clearable: !!tempEndDateState && tempEndDateState !==
|
|
3336
|
+
React__default.createElement(CalendarInput, { label: "End date:", calendar: "gregory", locale: "en-GB", timeZone: "Africa/Dar_es_Salaam", className: "custom-input", clearable: !!tempEndDateState && tempEndDateState !== 'yyyy-mm-dd', date: tempEndDateState || 'yyyy-mm-dd', onDateSelect: (selectedDate) => {
|
|
3334
3337
|
setTempEndDateState(selectedDate.calendarDateString);
|
|
3335
3338
|
if (selectedDate.calendarDateString === null) {
|
|
3336
3339
|
setEndDateState(selectedDate.calendarDateString);
|
|
@@ -4226,8 +4229,9 @@ class LineListTableComponent extends ReactWrapperModule {
|
|
|
4226
4229
|
const [selectable, setSelectable] = useState(this.allowRowsSelection);
|
|
4227
4230
|
const [triggerRefetch, setTriggerRefetch] = useState(this.triggerRefetch);
|
|
4228
4231
|
const [showActionButtons, setShowActionButtons] = useState(this.showActionButtons);
|
|
4232
|
+
const [orgUnitModalVisible, setOrgUnitModalVisible] = useState(false);
|
|
4229
4233
|
const d2 = window.d2Web;
|
|
4230
|
-
//
|
|
4234
|
+
// Stores updaters in refs for Angular to access
|
|
4231
4235
|
const updateRefs = useRef({
|
|
4232
4236
|
setProgramIdState,
|
|
4233
4237
|
setOrgUnitState,
|
|
@@ -4317,11 +4321,13 @@ class LineListTableComponent extends ReactWrapperModule {
|
|
|
4317
4321
|
? response.data
|
|
4318
4322
|
: [response.data];
|
|
4319
4323
|
const orgUnitIdsFromEnrollments = new Set(trackedEntityInstances.map((tei) => tei.latestEnrollment.orgUnit));
|
|
4320
|
-
const orgUnitsFromAttributes = new Set(trackedEntityInstances
|
|
4321
|
-
.flatMap((tei) => tei.attributes
|
|
4324
|
+
const orgUnitsFromAttributes = new Set(trackedEntityInstances.flatMap((tei) => tei.attributes
|
|
4322
4325
|
?.filter((attr) => attr.valueType === 'ORGANISATION_UNIT')
|
|
4323
4326
|
.map((attr) => attr.value) || []));
|
|
4324
|
-
const uniqueOrgUnitIds = [
|
|
4327
|
+
const uniqueOrgUnitIds = [
|
|
4328
|
+
...orgUnitIdsFromEnrollments,
|
|
4329
|
+
...orgUnitsFromAttributes,
|
|
4330
|
+
];
|
|
4325
4331
|
this.lineListService.fetchOrgUnits(uniqueOrgUnitIds).subscribe({
|
|
4326
4332
|
next: (fetchedOrgUnits) => {
|
|
4327
4333
|
const trackedEntityResponse = {
|
|
@@ -4368,9 +4374,9 @@ class LineListTableComponent extends ReactWrapperModule {
|
|
|
4368
4374
|
[key]: value ?? '',
|
|
4369
4375
|
}));
|
|
4370
4376
|
setTempDataQueryFiltersState((prevFilters) => {
|
|
4371
|
-
//
|
|
4377
|
+
// Removes old filter for this key
|
|
4372
4378
|
const filteredFilters = prevFilters.filter((f) => f.attribute !== key);
|
|
4373
|
-
//
|
|
4379
|
+
// adds new filter only if value is not empty
|
|
4374
4380
|
const updatedFilters = value.trim()
|
|
4375
4381
|
? [
|
|
4376
4382
|
...filteredFilters,
|
|
@@ -4390,9 +4396,9 @@ class LineListTableComponent extends ReactWrapperModule {
|
|
|
4390
4396
|
[key]: value ?? '',
|
|
4391
4397
|
}));
|
|
4392
4398
|
setTempDataQueryFiltersState((prevFilters = []) => {
|
|
4393
|
-
//
|
|
4399
|
+
// Removes existing filter for the same key (attribute)
|
|
4394
4400
|
const filteredFilters = prevFilters.filter((f) => f.attribute !== key);
|
|
4395
|
-
//
|
|
4401
|
+
// adds new filter only if value is not empty
|
|
4396
4402
|
const updatedFilters = value.trim()
|
|
4397
4403
|
? [
|
|
4398
4404
|
...filteredFilters,
|
|
@@ -4407,12 +4413,12 @@ class LineListTableComponent extends ReactWrapperModule {
|
|
|
4407
4413
|
};
|
|
4408
4414
|
const handleDateSelect = (key, selectedDate) => {
|
|
4409
4415
|
const selectedDateString = selectedDate?.calendarDateString ?? '';
|
|
4410
|
-
//
|
|
4416
|
+
// Updates dateStates
|
|
4411
4417
|
setDateStates((prevDateStates) => ({
|
|
4412
4418
|
...prevDateStates,
|
|
4413
4419
|
[key]: selectedDateString,
|
|
4414
4420
|
}));
|
|
4415
|
-
//
|
|
4421
|
+
// Updates dataQueryFilters
|
|
4416
4422
|
setTempDataQueryFiltersState((prevFilters) => {
|
|
4417
4423
|
const filteredFilters = (prevFilters || []).filter((f) => f.attribute !== key);
|
|
4418
4424
|
const updatedFilters = selectedDateString.trim()
|
|
@@ -4430,20 +4436,17 @@ class LineListTableComponent extends ReactWrapperModule {
|
|
|
4430
4436
|
const handleSearch = () => (setDataQueryFiltersState(tempDataQueryFiltersState),
|
|
4431
4437
|
setStartDateState(tempStartDateState),
|
|
4432
4438
|
setEndDateState(tempEndDateState),
|
|
4433
|
-
setOrgUnitState(tempOrgUnitState)
|
|
4434
|
-
// console.log(
|
|
4435
|
-
// 'Search button clicked',)
|
|
4436
|
-
);
|
|
4439
|
+
setOrgUnitState(tempOrgUnitState));
|
|
4437
4440
|
function getTextColorFromBackGround(hex) {
|
|
4438
|
-
//
|
|
4441
|
+
// Removes the hash if present
|
|
4439
4442
|
hex = hex.replace('#', '');
|
|
4440
|
-
//
|
|
4443
|
+
// Converts to RGB
|
|
4441
4444
|
const r = parseInt(hex.substr(0, 2), 16);
|
|
4442
4445
|
const g = parseInt(hex.substr(2, 2), 16);
|
|
4443
4446
|
const b = parseInt(hex.substr(4, 2), 16);
|
|
4444
4447
|
// YIQ formula to calculate brightness
|
|
4445
4448
|
const yiq = (r * 299 + g * 587 + b * 114) / 1000;
|
|
4446
|
-
//
|
|
4449
|
+
// Returns black for light backgrounds, white for dark backgrounds
|
|
4447
4450
|
return yiq >= 128 ? colors$1.grey700 : '#FFFFFF';
|
|
4448
4451
|
}
|
|
4449
4452
|
return (React__default.createElement("div", null, loading ? (React__default.createElement("div", { style: {
|
|
@@ -4456,8 +4459,8 @@ class LineListTableComponent extends ReactWrapperModule {
|
|
|
4456
4459
|
React__default.createElement("div", { style: {
|
|
4457
4460
|
fontSize: 14,
|
|
4458
4461
|
} }, "Loading"))) : (React__default.createElement("div", null,
|
|
4459
|
-
React__default.createElement(OrgUnitSelector, { hide: hide, setHide: setHide, selectedOrgUnit: selectedOrgUnit, setSelectedOrgUnit: setSelectedOrgUnit, setOrgUnitState: setOrgUnitState, setTempOrgUnitState: setTempOrgUnitState, tempOrgUnitState: tempOrgUnitState }),
|
|
4460
|
-
this.showFilters && (React__default.createElement(FilterToolbar, { orgUnitLabel: orgUnitLabel, selectedOrgUnit: selectedOrgUnit, setSelectedOrgUnit: setSelectedOrgUnit, setOrgUnitState: setOrgUnitState, defaultOrgUnit: defaultOrgUnit, setHide: setHide, startDateState: startDateState, setStartDateState: setStartDateState, endDateState: endDateState, setEndDateState: setEndDateState, visibleFilters: visibleFilters, dateStates: dateStates, inputValues: inputValues, setInputValues: setInputValues, handleInputChange: handleInputChange, handleInputChangeForSelectField: handleInputChangeForSelectField, handleDateSelect: handleDateSelect, prevValue: prevValue, setPrevValue: setPrevValue, showAllFilters: showAllFilters, setShowAllFilters: setShowAllFilters, handleSearch: handleSearch, setTempStartDateState: setTempStartDateState, setTempEndDateState: setTempEndDateState, setTempOrgUnitState: setTempOrgUnitState, tempStartDateState: tempStartDateState, tempEndDateState: tempEndDateState, tempOrgUnitState: tempOrgUnitState, dataQueryFiltersState: dataQueryFiltersState, setDataQueryFiltersState: setDataQueryFiltersState })),
|
|
4462
|
+
orgUnitModalVisible && (React__default.createElement(OrgUnitSelector, { hide: hide, setHide: setHide, selectedOrgUnit: selectedOrgUnit, setSelectedOrgUnit: setSelectedOrgUnit, setOrgUnitState: setOrgUnitState, setTempOrgUnitState: setTempOrgUnitState, tempOrgUnitState: tempOrgUnitState })),
|
|
4463
|
+
this.showFilters && (React__default.createElement(FilterToolbar, { orgUnitLabel: orgUnitLabel, selectedOrgUnit: selectedOrgUnit, setSelectedOrgUnit: setSelectedOrgUnit, setOrgUnitState: setOrgUnitState, defaultOrgUnit: defaultOrgUnit, setHide: setHide, startDateState: startDateState, setStartDateState: setStartDateState, endDateState: endDateState, setEndDateState: setEndDateState, visibleFilters: visibleFilters, dateStates: dateStates, inputValues: inputValues, setInputValues: setInputValues, handleInputChange: handleInputChange, handleInputChangeForSelectField: handleInputChangeForSelectField, handleDateSelect: handleDateSelect, prevValue: prevValue, setPrevValue: setPrevValue, showAllFilters: showAllFilters, setShowAllFilters: setShowAllFilters, handleSearch: handleSearch, setTempStartDateState: setTempStartDateState, setTempEndDateState: setTempEndDateState, setTempOrgUnitState: setTempOrgUnitState, tempStartDateState: tempStartDateState, tempEndDateState: tempEndDateState, tempOrgUnitState: tempOrgUnitState, dataQueryFiltersState: dataQueryFiltersState, setDataQueryFiltersState: setDataQueryFiltersState, SetOrgUnitModalVisible: setOrgUnitModalVisible })),
|
|
4461
4464
|
React__default.createElement(LineListTable, { columns: columns, data: data, pager: pager, setPager: setPager, getTextColorFromBackGround: getTextColorFromBackGround, actionOptions: this.actionOptions, actionOptionOrientation: this.actionOptionOrientation, actionSelected: this.actionSelected, selectable: selectable, rowsSelected: this.rowsSelected, showActionButtons: showActionButtons })))));
|
|
4462
4465
|
};
|
|
4463
4466
|
}
|