123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- "use strict";
- var __rest = (this && this.__rest) || function (s, e) {
- var t = {};
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
- t[p] = s[p];
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
- t[p[i]] = s[p[i]];
- }
- return t;
- };
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.Options = void 0;
- const x6_common_1 = require("@antv/x6-common");
- const config_1 = require("../config");
- const shape_1 = require("../shape");
- var Options;
- (function (Options) {
- function get(options) {
- const { grid, panning, mousewheel, embedding } = options, others = __rest(options
- // size
- // ----
- , ["grid", "panning", "mousewheel", "embedding"]);
- // size
- // ----
- const container = options.container;
- if (container != null) {
- if (others.width == null) {
- others.width = container.clientWidth;
- }
- if (others.height == null) {
- others.height = container.clientHeight;
- }
- }
- else {
- throw new Error(`Ensure the container of the graph is specified and valid`);
- }
- const result = x6_common_1.ObjectExt.merge({}, Options.defaults, others);
- // grid
- // ----
- const defaultGrid = { size: 10, visible: false };
- if (typeof grid === 'number') {
- result.grid = { size: grid, visible: false };
- }
- else if (typeof grid === 'boolean') {
- result.grid = Object.assign(Object.assign({}, defaultGrid), { visible: grid });
- }
- else {
- result.grid = Object.assign(Object.assign({}, defaultGrid), grid);
- }
- // booleas
- // -------
- const booleas = [
- 'panning',
- 'mousewheel',
- 'embedding',
- ];
- booleas.forEach((key) => {
- const val = options[key];
- if (typeof val === 'boolean') {
- result[key].enabled = val;
- }
- else {
- result[key] = Object.assign(Object.assign({}, result[key]), val);
- }
- });
- return result;
- }
- Options.get = get;
- })(Options = exports.Options || (exports.Options = {}));
- (function (Options) {
- Options.defaults = {
- x: 0,
- y: 0,
- scaling: {
- min: 0.01,
- max: 16,
- },
- grid: {
- size: 10,
- visible: false,
- },
- background: false,
- panning: {
- enabled: false,
- eventTypes: ['leftMouseDown'],
- },
- mousewheel: {
- enabled: false,
- factor: 1.2,
- zoomAtMousePosition: true,
- },
- highlighting: {
- default: {
- name: 'stroke',
- args: {
- padding: 3,
- },
- },
- nodeAvailable: {
- name: 'className',
- args: {
- className: config_1.Config.prefix('available-node'),
- },
- },
- magnetAvailable: {
- name: 'className',
- args: {
- className: config_1.Config.prefix('available-magnet'),
- },
- },
- },
- connecting: {
- snap: false,
- allowLoop: true,
- allowNode: true,
- allowEdge: false,
- allowPort: true,
- allowBlank: true,
- allowMulti: true,
- highlight: false,
- anchor: 'center',
- edgeAnchor: 'ratio',
- connectionPoint: 'boundary',
- router: 'normal',
- connector: 'normal',
- validateConnection({ type, sourceView, targetView }) {
- const view = type === 'target' ? targetView : sourceView;
- return view != null;
- },
- createEdge() {
- return new shape_1.Edge();
- },
- },
- translating: {
- restrict: false,
- },
- embedding: {
- enabled: false,
- findParent: 'bbox',
- frontOnly: true,
- validate: () => true,
- },
- moveThreshold: 0,
- clickThreshold: 0,
- magnetThreshold: 0,
- preventDefaultDblClick: true,
- preventDefaultMouseDown: false,
- preventDefaultContextMenu: true,
- preventDefaultBlankAction: true,
- interacting: {
- edgeLabelMovable: false,
- },
- async: true,
- virtual: false,
- guard: () => false,
- };
- })(Options = exports.Options || (exports.Options = {}));
- //# sourceMappingURL=options.js.map
|