Skip to content

Commit 6459f70

Browse files
committed
using updateObject
1 parent 9c0b37f commit 6459f70

File tree

4 files changed

+30
-34
lines changed

4 files changed

+30
-34
lines changed

packages/base/src/dialogs/layerBrowserDialog.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,6 @@ export const LayerBrowserComponent: React.FC<ILayerBrowserDialogProps> = ({
112112
source: sourceId,
113113
},
114114
visible: true,
115-
opacity: 1.0,
116115
name: tile.name + ' Layer',
117116
};
118117

packages/base/src/formbuilder/editform.tsx

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ export class EditForm extends React.Component<IEditFormProps, any> {
3939
return;
4040
}
4141

42-
this.props.model.sharedModel.updateObjectParameters(id, properties);
42+
this.props.model.sharedModel.updateObject(id, properties);
4343
}
4444

4545
render() {
@@ -122,22 +122,10 @@ export class EditForm extends React.Component<IEditFormProps, any> {
122122

123123
const { opacity, ...params } = properties;
124124

125-
if (opacity !== undefined) {
126-
const layer = this.props.model.getLayer(this.props.layer);
127-
if (layer) {
128-
this.props.model.sharedModel.updateLayer(this.props.layer, {
129-
...layer,
130-
opacity,
131-
});
132-
}
133-
}
134-
135-
if (Object.keys(params).length > 0) {
136-
this.props.model.sharedModel.updateObjectParameters(
137-
this.props.layer,
138-
params,
139-
);
140-
}
125+
this.props.model.sharedModel.updateObject(this.props.layer, {
126+
opacity,
127+
parameters: params,
128+
});
141129
}}
142130
/>
143131
</div>

packages/schema/src/doc.ts

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -227,28 +227,37 @@ export class JupyterGISDoc
227227
}
228228
}
229229

230-
updateObjectParameters(
231-
id: string,
232-
value: IJGISLayer['parameters'] | IJGISSource['parameters'],
233-
) {
230+
updateObject(id: string, value: Partial<IJGISLayer> | Partial<IJGISSource>) {
234231
const layer = this.getLayer(id);
235232
if (layer) {
236-
layer.parameters = {
237-
...layer.parameters,
238-
...value,
233+
const layerValue = value as Partial<IJGISLayer>;
234+
235+
const updatedLayer: IJGISLayer = {
236+
...layer,
237+
...layerValue,
238+
parameters: {
239+
...layer.parameters,
240+
...(layerValue.parameters || {}),
241+
},
239242
};
240-
241-
this.updateLayer(id, layer);
243+
this.updateLayer(id, updatedLayer);
244+
return;
242245
}
243246

244247
const source = this.getLayerSource(id);
245248
if (source) {
246-
source.parameters = {
247-
...source.parameters,
248-
...value,
249+
const sourceValue = value as Partial<IJGISSource>;
250+
251+
const updatedSource: IJGISSource = {
252+
...source,
253+
...sourceValue,
254+
parameters: {
255+
...source.parameters,
256+
...(sourceValue.parameters || {}),
257+
},
249258
};
250-
251-
this.updateSource(id, source);
259+
this.updateSource(id, updatedSource);
260+
return;
252261
}
253262
}
254263

packages/schema/src/interfaces.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,9 +122,9 @@ export interface IJupyterGISDoc extends YDocument<IJupyterGISDocChange> {
122122
addLayerTreeItem(index: number, item: IJGISLayerItem): void;
123123
updateLayerTreeItem(index: number, item: IJGISLayerItem): void;
124124

125-
updateObjectParameters(
125+
updateObject(
126126
id: string,
127-
value: IJGISLayer['parameters'] | IJGISSource['parameters'],
127+
value: Partial<IJGISLayer> | Partial<IJGISSource>,
128128
): void;
129129
getObject(id: string): IJGISLayer | IJGISSource | undefined;
130130

0 commit comments

Comments
 (0)