@finos/legend-application-studio
Version:
Legend Studio application core
77 lines • 3.74 kB
JavaScript
/**
* Copyright (c) 2020-present, Goldman Sachs
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
export var CORE_DND_TYPE;
(function (CORE_DND_TYPE) {
CORE_DND_TYPE["NONE"] = "NONE";
// type tree
CORE_DND_TYPE["TYPE_TREE_CLASS"] = "TYPE_TREE_CLASS";
CORE_DND_TYPE["TYPE_TREE_ENUMERATION"] = "TYPE_TREE_ENUMERATION";
CORE_DND_TYPE["TYPE_TREE_ENUM"] = "TYPE_TREE_ENUM";
CORE_DND_TYPE["TYPE_TREE_PRIMITIVE"] = "TYPE_TREE_PRIMITIVE";
// project explorer tree
CORE_DND_TYPE["PROJECT_EXPLORER_PACKAGE"] = "PROJECT_EXPLORER_PACKAGE";
CORE_DND_TYPE["PROJECT_EXPLORER_CLASS"] = "PROJECT_EXPLORER_CLASS";
CORE_DND_TYPE["PROJECT_EXPLORER_ASSOCIATION"] = "PROJECT_EXPLORER_ASSOCIATION";
CORE_DND_TYPE["PROJECT_EXPLORER_MEASURE"] = "PROJECT_EXPLORER_MEASURE";
CORE_DND_TYPE["PROJECT_EXPLORER_ENUMERATION"] = "PROJECT_EXPLORER_ENUMERATION";
CORE_DND_TYPE["PROJECT_EXPLORER_PROFILE"] = "PROJECT_EXPLORER_PROFILE";
CORE_DND_TYPE["PROJECT_EXPLORER_FUNCTION"] = "PROJECT_EXPLORER_FUNCTION";
CORE_DND_TYPE["PROJECT_EXPLORER_FLAT_DATA"] = "PROJECT_EXPLORER_FLAT_DATA";
CORE_DND_TYPE["PROJECT_EXPLORER_DATABASE"] = "PROJECT_EXPLORER_DATABASE";
CORE_DND_TYPE["PROJECT_EXPLORER_MAPPING"] = "PROJECT_EXPLORER_MAPPING";
CORE_DND_TYPE["PROJECT_EXPLORER_SERVICE"] = "PROJECT_EXPLORER_SERVICE";
CORE_DND_TYPE["PROJECT_EXPLORER_CONNECTION"] = "PROJECT_EXPLORER_CONNECTION";
CORE_DND_TYPE["PROJECT_EXPLORER_RUNTIME"] = "PROJECT_EXPLORER_RUNTIME";
CORE_DND_TYPE["PROJECT_EXPLORER_FILE_GENERATION"] = "PROJECT_EXPLORER_FILE_GENERATION";
CORE_DND_TYPE["PROJECT_EXPLORER_DATA"] = "PROJECT_EXPLORER_DATA";
CORE_DND_TYPE["PROJECT_EXPLORER_GENERATION_TREE"] = "PROJECT_EXPLORER_GENERATION_TREE";
CORE_DND_TYPE["PROJECT_EXPLORER_EXECUTION_ENVIRONMENT"] = "PROJECT_EXPLORER_EXECUTION_ENVIRONMENT";
// mapping explorer
CORE_DND_TYPE["MAPPING_EXPLORER_CLASS_MAPPING"] = "MAPPING_EXPLORER_CLASS_MAPPING";
CORE_DND_TYPE["MAPPING_EXPLORER_ENUMERATION_MAPPING"] = "MAPPING_EXPLORER_ENUMERATION_MAPPING";
CORE_DND_TYPE["MAPPING_EXPLORER_ASSOCIATION_MAPPING"] = "MAPPING_EXPLORER_ASSOCIATION_MAPPING";
})(CORE_DND_TYPE || (CORE_DND_TYPE = {}));
// react-dnd uses Redux under the hood and also it champions the use of plain object over class instance
// There is some practical reason for that (due to the potential need to serialize the item object), but as for now
// this way of creating the drag itm is still very convenient for us since we can do direct type comparison rather than having
// to use element full path, we might need follow the following threads if there are any breaking changes
// See https://github.com/react-dnd/react-dnd/issues/1094
// See https://github.com/react-dnd/react-dnd/pull/1079
export class TypeDragSource {
data;
constructor(data) {
this.data = data;
}
}
export class FlatDataColumnDragSource {
data;
constructor(data) {
this.data = data;
}
}
export class ElementDragSource {
data;
constructor(data) {
this.data = data;
}
}
export class MappingElementDragSource {
data;
constructor(data) {
this.data = data;
}
}
//# sourceMappingURL=DnDUtils.js.map