forgeplus-react/node_modules/draft-js/lib/updateEntityDataInContentSt...

28 lines
973 B
Plaintext
Raw Normal View History

2023-07-29 21:19:10 +08:00
/**
* Copyright (c) 2013-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*
* @providesModule updateEntityDataInContentState
* @format
* @flow
*/
'use strict';
import type ContentState from './ContentState';
function updateEntityDataInContentState(contentState: ContentState, key: string, data: { [key: string]: any }, merge: boolean): ContentState {
const instance = contentState.getEntity(key);
const entityData = instance.getData();
const newData = merge ? { ...entityData, ...data } : data;
const newInstance = instance.set('data', newData);
const newEntityMap = contentState.getEntityMap().set(key, newInstance);
return contentState.set('entityMap', newEntityMap);
}
module.exports = updateEntityDataInContentState;