Skip to content

Commit 57882ba

Browse files
authored
Merge changes from release25.11-SNAPSHOT through v6.68.4 (#1898)
### version 6.70.8 *Released*: 19 November 2025 - Merge from release25.11-SNAPSHOT to develop - includes changes from 6.68.4 #1892
1 parent 5eab9c9 commit 57882ba

6 files changed

Lines changed: 33 additions & 13 deletions

File tree

packages/components/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/components/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@labkey/components",
3-
"version": "6.70.7",
3+
"version": "6.70.8",
44
"description": "Components, models, actions, and utility functions for LabKey applications and pages",
55
"sideEffects": false,
66
"files": [

packages/components/releaseNotes/components.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
# @labkey/components
22
Components, models, actions, and utility functions for LabKey applications and pages
33

4+
### version 6.70.8
5+
*Released*: 19 November 2025
6+
- Merge from release25.11-SNAPSHOT to develop
7+
- includes changes from 6.68.4 #1892
8+
49
### version 6.70.7
510
*Released*: 18 November 2025
611
- Exclude plate well column lookup for identifying fields determination
@@ -47,6 +52,11 @@ Components, models, actions, and utility functions for LabKey applications and p
4752
- includes changes from 6.68.2 #1878
4853
- includes changes from 6.68.3 #1884
4954

55+
### version 6.68.4
56+
*Released*: 18 November 2025
57+
- GitHub Issue 111: Query metadata editor indicates all fields as "New Field"
58+
- use the field.lockExistingField property to determine if field is new or existing
59+
5060
### version 6.68.3
5161
*Released*: 4 November 2025
5262
- Issue 53983: Sort fields by caption

packages/components/src/internal/components/domainproperties/DomainForm.tsx

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@ const DomainFormToolbar: FC<DomainFormToolbarProps> = memo(props => {
140140
(event: ChangeEvent<HTMLInputElement>) => onSearch(event.target.value),
141141
[onSearch]
142142
);
143+
143144
return (
144145
<div className="row domain-field-toolbar">
145146
<div className="col-xs-4">
@@ -151,15 +152,16 @@ const DomainFormToolbar: FC<DomainFormToolbarProps> = memo(props => {
151152
onClick={onAddField}
152153
/>
153154
)}
154-
<ActionButton
155-
containerClass="container--toolbar-button"
156-
buttonClass="domain-toolbar-delete-btn"
157-
onClick={onBulkDeleteClick}
158-
disabled={visibleSelection.size === 0}
159-
>
160-
<i className="fa fa-trash domain-toolbar-export-btn-icon" /> Delete
161-
</ActionButton>
162-
155+
{!domainFormDisplayOptions?.hideAddFieldsButton && (
156+
<ActionButton
157+
containerClass="container--toolbar-button"
158+
buttonClass="domain-toolbar-delete-btn"
159+
onClick={onBulkDeleteClick}
160+
disabled={visibleSelection.size === 0}
161+
>
162+
<i className="fa fa-trash domain-toolbar-export-btn-icon" /> Delete
163+
</ActionButton>
164+
)}
163165
{shouldShowImportExport && (
164166
<ActionButton
165167
containerClass="container--toolbar-button"
@@ -1386,6 +1388,7 @@ export class DomainFormImpl extends React.PureComponent<DomainFormProps, State>
13861388
{showToolbar && (
13871389
<DomainFormToolbar
13881390
disableExport={disableExport}
1391+
domainFormDisplayOptions={domainFormDisplayOptions}
13891392
domainIndex={domainIndex}
13901393
fields={fields}
13911394
onAddField={this.onAddField}

packages/components/src/internal/components/domainproperties/models.test.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1136,6 +1136,12 @@ describe('DomainField', () => {
11361136
);
11371137
});
11381138

1139+
test('getDetailsTextArray, queryMetadata editor', () => {
1140+
// Issue 54226
1141+
const field = DomainField.create({ propertyId: -1, name: 'test', lockExistingField: true });
1142+
expect(field.getDetailsArray().join('')).toBe('');
1143+
});
1144+
11391145
test('serialize, name trim', () => {
11401146
expect(DomainField.serialize(DomainField.create({})).name).toBe(undefined);
11411147
expect(DomainField.serialize(DomainField.create({ name: '' })).name).toBe('');

packages/components/src/internal/components/domainproperties/models.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1407,7 +1407,8 @@ export class DomainField
14071407
const details = [];
14081408
let period = '';
14091409

1410-
if (this.isNew()) {
1410+
// Issue 54226: queryMetadata editor uses lockExistingField to mark existing fields
1411+
if (this.isNew() && !this.lockExistingField) {
14111412
details.push('New Field');
14121413
period = '. ';
14131414
} else if (this.updatedField) {

0 commit comments

Comments
 (0)