From a62d8a8bb07b03ae28676d66468550c54edabcfa Mon Sep 17 00:00:00 2001 From: labkey-susanh Date: Tue, 23 Dec 2025 13:08:33 -0800 Subject: [PATCH 1/4] GitHub Issue #734: Reduce reason text input width on smaller screens --- packages/components/src/theme/form.scss | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/components/src/theme/form.scss b/packages/components/src/theme/form.scss index 2d14c19308..b0cef0890f 100644 --- a/packages/components/src/theme/form.scss +++ b/packages/components/src/theme/form.scss @@ -427,7 +427,12 @@ textarea.form-control { margin-bottom: 0; textarea { min-height: 20px; - min-width: 450px; + @media (max-width: 924px) { + min-width: 300px; + } + @media (min-width: 925px) { + min-width: 450px; + } resize: none; overflow-y: hidden; } From 9a08adb963a4e5edbccb11a50ee2006b816df7ce Mon Sep 17 00:00:00 2001 From: labkey-susanh Date: Tue, 23 Dec 2025 13:08:47 -0800 Subject: [PATCH 2/4] GitHub Issue #457: Update messaging for deleting samples linked to studies --- .../components/releaseNotes/components.md | 5 +++ .../src/internal/util/messaging.tsx | 42 ++++++++++++------- 2 files changed, 33 insertions(+), 14 deletions(-) diff --git a/packages/components/releaseNotes/components.md b/packages/components/releaseNotes/components.md index 111de213b5..9c98e5fe17 100644 --- a/packages/components/releaseNotes/components.md +++ b/packages/components/releaseNotes/components.md @@ -1,6 +1,11 @@ # @labkey/components Components, models, actions, and utility functions for LabKey applications and pages +### version TBD +*Released*: TBD +- [GitHub Issue 734](https://github.com/LabKey/internal-issues/issues/734) Update sizing of comment input box for better display in narrow screens +- [GitHub Issue 457](https://github.com/LabKey/internal-issues/issues/457) Update messaging for deleting samples linked to studies + ### version 7.5.0 *Released*: 22 December 2025 - Chart builder updates for per-series line type option diff --git a/packages/components/src/internal/util/messaging.tsx b/packages/components/src/internal/util/messaging.tsx index 9eba022156..0326b25234 100644 --- a/packages/components/src/internal/util/messaging.tsx +++ b/packages/components/src/internal/util/messaging.tsx @@ -24,7 +24,11 @@ export function deleteSuccessMessage(noun: string, count?: number, additionalInf return 'Successfully deleted ' + countStr.toLocaleString() + ' ' + noun + '. ' + (additionalInfo || ''); } -export function deleteErrorMessage(noun: string): ReactNode { +export function deleteErrorMessage(noun: string, error?: any): ReactNode { + const errorMsg = extractMessageFromError(error); + if (errorMsg && errorMsg.indexOf('Cannot delete rows from dataset') >= 0) { + return `There was a problem deleting the ${noun.toLowerCase()} because of references from a study dataset. Recall or remove the ${noun.toLowerCase()} from the study and try again.`; + } return getActionErrorMessage('There was a problem deleting the ' + noun + '. ', noun); } @@ -87,6 +91,25 @@ export function makePresentParticiple(verb: string): string { } } +function extractMessageFromError(error: any) { + let errorMsg; + if (!error) { + return undefined; + } + if (typeof error === 'string') { + errorMsg = error; + } else if (error.message) { + errorMsg = error.message; + } else if (error.msg) { + errorMsg = error.msg; + } else if (error.exception) { + errorMsg = error.exception; + } else if (error.error) { + errorMsg = error.error.exception; + } + return errorMsg; +} + export function resolveErrorMessage( error: any, noun = 'data', @@ -101,19 +124,8 @@ export function resolveErrorMessage( returnInitialMsg = false ): string { const verbPresParticiple = makePresentParticiple(verbPresent); - let errorMsg; - if (!error) { - return undefined; - } - if (typeof error === 'string') { - errorMsg = error; - } else if (error.message) { - errorMsg = error.message; - } else if (error.msg) { - errorMsg = error.msg; - } else if (error.exception) { - errorMsg = error.exception; - } + const errorMsg = extractMessageFromError(error); + if (returnInitialMsg) { return errorMsg; } else if (errorMsg) { @@ -199,6 +211,8 @@ export function resolveErrorMessage( return noun + ' cannot be blank.'; } else if (noun === 'job' && errorMsg.indexOf('when it contains rows with blank values') > -1) { return errorMsg.replace('it contains rows with blank values', 'there are already jobs using this template'); + } else if (lcMessage.indexOf('cannot delete rows from dataset') >= 0) { + return `There was a problem deleting your ${noun.toLowerCase() || 'data'} because it is linked to a study dataset. Recall or remove those samples from the study and try again.`; } } return errorMsg; From cf650fec93f673dbcd3bb807a99ffd3fbb270477 Mon Sep 17 00:00:00 2001 From: labkey-susanh Date: Tue, 23 Dec 2025 13:09:03 -0800 Subject: [PATCH 3/4] @labkey/components v7.5.1-smallFixes261seh.0 --- packages/components/package-lock.json | 4 ++-- packages/components/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/components/package-lock.json b/packages/components/package-lock.json index e26368360d..f74680bb00 100644 --- a/packages/components/package-lock.json +++ b/packages/components/package-lock.json @@ -1,12 +1,12 @@ { "name": "@labkey/components", - "version": "7.5.0", + "version": "7.5.1-smallFixes261seh.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@labkey/components", - "version": "7.5.0", + "version": "7.5.1-smallFixes261seh.0", "license": "SEE LICENSE IN LICENSE.txt", "dependencies": { "@hello-pangea/dnd": "18.0.1", diff --git a/packages/components/package.json b/packages/components/package.json index 2b42d0392b..c5710566e8 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -1,6 +1,6 @@ { "name": "@labkey/components", - "version": "7.5.0", + "version": "7.5.1-smallFixes261seh.0", "description": "Components, models, actions, and utility functions for LabKey applications and pages", "sideEffects": false, "files": [ From d5a63b10e9620887b333f256ca49d10d5c768c29 Mon Sep 17 00:00:00 2001 From: labkey-susanh Date: Tue, 23 Dec 2025 17:42:52 -0800 Subject: [PATCH 4/4] Remove logic put in the wrong method --- packages/components/src/internal/util/messaging.tsx | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/components/src/internal/util/messaging.tsx b/packages/components/src/internal/util/messaging.tsx index 0326b25234..4c4710c325 100644 --- a/packages/components/src/internal/util/messaging.tsx +++ b/packages/components/src/internal/util/messaging.tsx @@ -211,8 +211,6 @@ export function resolveErrorMessage( return noun + ' cannot be blank.'; } else if (noun === 'job' && errorMsg.indexOf('when it contains rows with blank values') > -1) { return errorMsg.replace('it contains rows with blank values', 'there are already jobs using this template'); - } else if (lcMessage.indexOf('cannot delete rows from dataset') >= 0) { - return `There was a problem deleting your ${noun.toLowerCase() || 'data'} because it is linked to a study dataset. Recall or remove those samples from the study and try again.`; } } return errorMsg;