rete-angular-plugin 2.0.0 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/12/bundles/rete-angular-plugin-ng12.umd.js +27 -23
- package/12/bundles/rete-angular-plugin-ng12.umd.js.map +1 -1
- package/12/esm2015/index.js +2 -1
- package/12/esm2015/module.js +3 -2
- package/12/esm2015/presets/classic/components/control/control.component.js +1 -1
- package/12/esm2015/presets/classic/components/node/node.component.js +4 -24
- package/12/esm2015/ref.js +27 -0
- package/12/fesm2015/rete-angular-plugin-ng12.js +24 -20
- package/12/fesm2015/rete-angular-plugin-ng12.js.map +1 -1
- package/12/index.d.ts +1 -0
- package/12/module.d.ts +8 -7
- package/12/presets/classic/components/node/node.component.d.ts +1 -10
- package/12/ref.d.ts +12 -0
- package/13/esm2020/index.mjs +2 -1
- package/13/esm2020/module.mjs +3 -2
- package/13/esm2020/presets/classic/components/control/control.component.mjs +1 -1
- package/13/esm2020/presets/classic/components/node/node.component.mjs +4 -24
- package/13/esm2020/ref.mjs +27 -0
- package/13/fesm2015/rete-angular-plugin-ng13.mjs +26 -22
- package/13/fesm2015/rete-angular-plugin-ng13.mjs.map +1 -1
- package/13/fesm2020/rete-angular-plugin-ng13.mjs +24 -20
- package/13/fesm2020/rete-angular-plugin-ng13.mjs.map +1 -1
- package/13/index.d.ts +1 -0
- package/13/module.d.ts +8 -7
- package/13/presets/classic/components/node/node.component.d.ts +1 -10
- package/13/ref.d.ts +12 -0
- package/14/esm2020/index.mjs +2 -1
- package/14/esm2020/module.mjs +3 -2
- package/14/esm2020/presets/classic/components/control/control.component.mjs +1 -1
- package/14/esm2020/presets/classic/components/node/node.component.mjs +4 -24
- package/14/esm2020/ref.mjs +27 -0
- package/14/fesm2015/rete-angular-plugin-ng14.mjs +26 -22
- package/14/fesm2015/rete-angular-plugin-ng14.mjs.map +1 -1
- package/14/fesm2020/rete-angular-plugin-ng14.mjs +24 -20
- package/14/fesm2020/rete-angular-plugin-ng14.mjs.map +1 -1
- package/14/index.d.ts +1 -0
- package/14/module.d.ts +8 -7
- package/14/presets/classic/components/node/node.component.d.ts +1 -10
- package/14/ref.d.ts +12 -0
- package/15/esm2020/index.mjs +2 -1
- package/15/esm2020/module.mjs +3 -2
- package/15/esm2020/presets/classic/components/control/control.component.mjs +1 -1
- package/15/esm2020/presets/classic/components/node/node.component.mjs +4 -24
- package/15/esm2020/ref.mjs +27 -0
- package/15/fesm2015/rete-angular-plugin-ng15.mjs +26 -22
- package/15/fesm2015/rete-angular-plugin-ng15.mjs.map +1 -1
- package/15/fesm2020/rete-angular-plugin-ng15.mjs +24 -20
- package/15/fesm2020/rete-angular-plugin-ng15.mjs.map +1 -1
- package/15/index.d.ts +1 -0
- package/15/module.d.ts +8 -7
- package/15/presets/classic/components/node/node.component.d.ts +1 -10
- package/15/ref.d.ts +12 -0
- package/16/esm2022/index.mjs +2 -1
- package/16/esm2022/module.mjs +3 -2
- package/16/esm2022/presets/classic/components/control/control.component.mjs +1 -1
- package/16/esm2022/presets/classic/components/node/node.component.mjs +4 -27
- package/16/esm2022/ref.mjs +30 -0
- package/16/fesm2022/rete-angular-plugin-ng16.mjs +27 -23
- package/16/fesm2022/rete-angular-plugin-ng16.mjs.map +1 -1
- package/16/index.d.ts +1 -0
- package/16/module.d.ts +8 -7
- package/16/presets/classic/components/node/node.component.d.ts +1 -10
- package/16/ref.d.ts +12 -0
- package/CHANGELOG.md +43 -0
- package/bundles/rete-angular-plugin.umd.js +38 -35
- package/bundles/rete-angular-plugin.umd.js.map +1 -1
- package/esm2015/index.js +2 -1
- package/esm2015/module.js +3 -2
- package/esm2015/presets/classic/components/control/control.component.js +1 -1
- package/esm2015/presets/classic/components/node/node.component.js +2 -23
- package/esm2015/ref.js +26 -0
- package/esm2015/rete-angular-plugin.js +14 -14
- package/fesm2015/rete-angular-plugin.js +26 -22
- package/fesm2015/rete-angular-plugin.js.map +1 -1
- package/index.d.ts +1 -0
- package/package.json +4 -4
- package/presets/classic/components/node/node.component.d.ts +1 -8
- package/ref.d.ts +9 -0
- package/rete-angular-plugin.d.ts +13 -13
- package/rete-angular-plugin.metadata.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rete-angular-plugin-ng12.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../ng12/src/presets/classic/components/node/node.component.html","../../../ng12/src/presets/classic/components/node/node.component.ts","../../../ng12/src/presets/classic/components/socket/socket.component.ts","../../../ng12/src/presets/classic/components/control/control.component.ts","../../../ng12/src/presets/classic/components/control/control.component.html","../../../ng12/src/presets/classic/components/connection/connection.component.ts","../../../ng12/src/presets/classic/components/connection/connection.component.html","../../../ng12/src/presets/classic/components/connection/connection-wrapper.component.ts","../../../ng12/src/presets/classic/index.ts","../../../ng12/src/presets/context-menu/debounce.ts","../../../ng12/src/presets/context-menu/components/search/search.component.ts","../../../ng12/src/presets/context-menu/components/search/search.component.html","../../../ng12/src/presets/context-menu/components/item/item.component.html","../../../ng12/src/presets/context-menu/components/item/item.component.ts","../../../ng12/src/presets/context-menu/components/menu/menu.component.html","../../../ng12/src/presets/context-menu/components/menu/menu.component.ts","../../../ng12/src/presets/context-menu/index.ts","../../../ng12/src/shared/drag.ts","../../../ng12/src/presets/minimap/components/mini-viewport/mini-viewport.component.ts","../../../ng12/src/presets/minimap/components/mini-node/mini-node.component.ts","../../../ng12/src/presets/minimap/components/minimap/minimap.component.html","../../../ng12/src/presets/minimap/components/minimap/minimap.component.ts","../../../ng12/src/presets/minimap/index.ts","../../../ng12/src/presets/reroute/components/pin/pin.component.ts","../../../ng12/src/presets/reroute/components/pins/pins.component.html","../../../ng12/src/presets/reroute/components/pins/pins.component.ts","../../../ng12/src/presets/reroute/index.ts","../../../ng12/src/module.ts","../../../ng12/src/presets/context-menu/module.ts","../../../ng12/src/presets/minimap/module.ts","../../../ng12/src/presets/reroute/module.ts","../../../ng12/src/core.ts","../../../ng12/src/rete-angular-plugin-ng12.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.push(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.push(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","<div class=\"title\" data-testid=\"title\">{{data.label}}</div>\n<div class=\"output\" *ngFor=\"let output of data.outputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'output-'+output.key\">\n <div class=\"output-title\" data-testid=\"output-title\">{{output.value?.label}}</div>\n <div\n class=\"output-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'output', key: output.key, nodeId: data.id, payload: output.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"output-socket\"\n ></div>\n</div>\n<div\n class=\"control\"\n *ngFor=\"let control of data.controls | keyvalue: sortByIndex\"\n refComponent\n [data]=\"{type: 'control', payload: control.value }\"\n [emit]=\"emit\"\n [attr.data-testid]=\"'control-'+control.key\"\n></div>\n<div class=\"input\" *ngFor=\"let input of data.inputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'input-'+input.key\">\n <div\n class=\"input-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'input', key: input.key, nodeId: data.id, payload: input.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"input-socket\"\n ></div>\n <div class=\"input-title\" data-testid=\"input-title\" *ngIf=\"!input.value?.control || !input.value?.showControl\">{{input.value?.label}}</div>\n <div\n class=\"input-control\"\n [style.display]=\"input.value?.control && input.value?.showControl ? '' : 'none'\"\n refComponent\n [data]=\"{type: 'control', payload: input.value?.control }\"\n [emit]=\"emit\"\n data-testid=\"input-control\"\n ></div>\n</div>\n","import { Component, Input, HostBinding, ElementRef, ChangeDetectorRef, OnChanges } from '@angular/core';\nimport { ClassicPreset as Classic } from 'rete';\nimport { Directive } from '@angular/core';\nimport { KeyValue } from '@angular/common';\n\n@Directive({\n selector: '[refComponent]'\n})\nexport class RefDirective implements OnChanges {\n @Input() data!: any\n @Input() emit!: any\n\n constructor(private el: ElementRef) { }\n\n ngOnChanges() {\n this.emit({ type: 'render', data: { ...this.data, element: this.el.nativeElement } })\n }\n}\n\ntype SortValue<N extends Classic.Node> = (N['controls'] | N['inputs'] | N['outputs'])[string]\n\n@Component({\n templateUrl: './node.component.html',\n styleUrls: ['./node.component.sass'],\n host: {\n 'data-testid': 'node'\n }\n})\nexport class NodeComponent implements OnChanges {\n @Input() data!: Classic.Node;\n @Input() emit!: (data: any) => void\n @Input() rendered!: () => void\n\n seed = 0\n\n @HostBinding('class.selected') get selected() {\n return this.data.selected\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n this.seed++ // force render sockets\n }\n\n sortByIndex<N extends Classic.Node, I extends KeyValue<string, SortValue<N>>>(a: I, b: I) {\n const ai = a.value?.index || 0\n const bi = b.value?.index || 0\n\n return ai - bi\n }\n}\n","import { Component, Input, HostBinding, AfterViewChecked, ChangeDetectorRef, OnChanges } from '@angular/core';\n\n@Component({\n template: ``,\n styleUrls: ['./socket.component.sass']\n})\nexport class SocketComponent implements OnChanges {\n @Input() data!: any;\n @Input() rendered!: any;\n\n\n @HostBinding('title') get title() {\n return this.data.name\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n }\n}\n","import { Component, Input, ChangeDetectionStrategy, AfterViewInit, OnChanges, SimpleChanges, AfterViewChecked, ChangeDetectorRef, HostListener } from '@angular/core';\nimport { ClassicPreset } from 'rete';\n\n@Component({\n templateUrl: `./control.component.html`,\n styleUrls: ['./control.component.sass']\n})\nexport class ControlComponent<T extends 'text' | 'number'> implements OnChanges {\n @Input() data!: ClassicPreset.InputControl<T>;\n @Input() rendered!: any;\n\n\n @HostListener('pointerdown', ['$event'])\n public pointerdown(event: any) {\n event.stopPropagation();\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const seed = changes['seed']\n const data = changes['data']\n\n if ((seed && seed.currentValue !== seed.previousValue)\n || (data && data.currentValue !== data.previousValue)) {\n this.cdr.detectChanges()\n }\n requestAnimationFrame(() => this.rendered())\n }\n\n onChange(e: Event) {\n const target = e.target as HTMLInputElement\n const value = (this.data.type === 'number'\n ? +target.value\n : target.value) as ClassicPreset.InputControl<T>['value']\n\n this.data.setValue(value)\n this.cdr.detectChanges()\n }\n}\n","<input\n [value]=\"data.value\"\n [readonly]=\"data.readonly\"\n [type]=\"data.type\"\n (input)=\"onChange($event)\"\n/>\n","import { Component, Input } from '@angular/core';\nimport { ClassicPreset } from 'rete';\nimport { classicConnectionPath } from 'rete-render-utils'\nimport { Position } from '../../../../types';\n\n\n@Component({\n selector: 'connection',\n templateUrl: './connection.component.html',\n styleUrls: ['./connection.component.sass']\n})\nexport class ConnectionComponent {\n @Input() data!: ClassicPreset.Connection<ClassicPreset.Node, ClassicPreset.Node>;\n @Input() start: Position\n @Input() end: Position\n @Input() path: string\n}\n","<svg data-testid=\"connection\">\n <path [attr.d]=\"path\" />\n</svg>\n","import { Component, Input, OnInit, ChangeDetectorRef, OnChanges, ViewContainerRef, ComponentFactoryResolver, ComponentRef } from '@angular/core';\nimport { ClassicPreset } from 'rete';\nimport { Position } from '../../../../types';\n\ntype PositionWatcher = (cb: (value: Position) => void) => (() => void)\n\n@Component({\n template: ''\n})\nexport class ConnectionWrapperComponent implements OnInit, OnChanges{\n @Input() data!: ClassicPreset.Connection<ClassicPreset.Node, ClassicPreset.Node>;\n @Input() start!: Position | PositionWatcher\n @Input() end!: Position | PositionWatcher\n @Input() path!: (start: Position, end: Position) => Promise<string>\n @Input() rendered!: any\n @Input() connectionComponent!: any\n\n ref!: ComponentRef<any>\n\n startOb: Position | null = null\n get _start(): Position | null {\n return 'x' in this.start ? this.start : this.startOb\n }\n endOb: Position | null = null\n get _end(): Position | null {\n return 'x' in this.end ? this.end : this.endOb\n }\n _path: string\n\n constructor(private cdr: ChangeDetectorRef, public viewContainerRef: ViewContainerRef, private componentFactoryResolver: ComponentFactoryResolver) {\n this.cdr.detach()\n }\n\n async ngOnChanges(): Promise<void> {\n await this.updatePath()\n requestAnimationFrame(() => this.rendered())\n this.cdr.detectChanges()\n this.update()\n }\n\n async updatePath() {\n if (this._start && this._end) {\n this._path = await this.path(this._start, this._end)\n }\n }\n\n ngOnInit() {\n if (typeof this.start === 'function') {\n this.start(async value => {\n this.startOb = value\n await this.updatePath()\n this.cdr.detectChanges()\n this.update()\n })\n }\n if (typeof this.end === 'function') {\n this.end(async value => {\n this.endOb = value\n await this.updatePath()\n this.cdr.detectChanges()\n this.update()\n })\n }\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(this.connectionComponent);\n this.viewContainerRef.clear();\n\n this.ref = this.viewContainerRef.createComponent(componentFactory);\n this.update()\n }\n\n update() {\n this.ref.instance.data = this.data\n this.ref.instance.start = this._start\n this.ref.instance.end = this._end\n this.ref.instance.path = this._path\n }\n}\n","import { Type } from '@angular/core';\nimport { ClassicPreset, getUID, Scope } from 'rete';\nimport { classicConnectionPath, loopConnectionPath, SocketPositionWatcher, getDOMSocketPosition } from 'rete-render-utils';\nimport { AngularArea2D, ClassicScheme, ExtractPayload } from './types';\nimport { NodeComponent } from './components/node/node.component';\nimport { SocketComponent } from './components/socket/socket.component';\nimport { ControlComponent } from './components/control/control.component';\nimport { ConnectionComponent } from './components/connection/connection.component';\nimport { ConnectionWrapperComponent } from './components/connection/connection-wrapper.component';\nimport { Position } from '../../types';\nimport { RenderPreset } from '../types'\n\ntype AngularComponent = Type<any>\ntype CustomizationProps<Schemes extends ClassicScheme> = {\n node?: (data: ExtractPayload<Schemes, 'node'>) => AngularComponent | null\n connection?: (data: ExtractPayload<Schemes, 'connection'>) => AngularComponent | null\n socket?: (data: ExtractPayload<Schemes, 'socket'>) => AngularComponent | null\n control?: (data: ExtractPayload<Schemes, 'control'>) => AngularComponent | null\n}\n\ntype ClassicProps<Schemes extends ClassicScheme, K> = {\n socketPositionWatcher?: SocketPositionWatcher<Scope<never, [K]>>\n customize?: CustomizationProps<Schemes>\n}\n\nexport function setup<Schemes extends ClassicScheme, K extends AngularArea2D<Schemes>>(\n props?: ClassicProps<Schemes, K>\n): RenderPreset<Schemes, K> {\n const positionWatcher = typeof props?.socketPositionWatcher === 'undefined'\n ? getDOMSocketPosition<Schemes, any>() // fix Type instantiation is excessively deep and possibly infinite.\n : props?.socketPositionWatcher\n const { node, connection, socket, control } = props?.customize || {}\n\n\n return {\n attach(plugin) {\n positionWatcher.attach(plugin as unknown as Scope<never, [K]>)\n },\n update(context) {\n const data = context.data.payload\n\n if (context.data.type === 'connection') {\n const { start, end } = context.data\n\n return {\n data,\n ...(start ? { start } : {}),\n ...(end ? { end } : {}),\n }\n }\n return { data }\n },\n mount(context, plugin) {\n const parent = plugin.parentScope()\n const emit = parent.emit.bind(parent)\n const rendered = () => {\n emit({ type: 'rendered', data: context.data })\n }\n\n if (context.data.type === 'node') {\n const component = node ? node(context.data) : NodeComponent\n\n return {\n key: `node-${context.data.payload.id}`,\n component,\n props: {\n data: context.data.payload,\n emit,\n rendered\n }\n }\n }\n if (context.data.type === 'connection') {\n const component = connection ? connection(context.data) : ConnectionComponent\n const id = context.data.payload.id\n const { sourceOutput, targetInput, source, target } = context.data.payload\n const { start, end, payload } = context.data\n\n return {\n key: `connection-${id}`,\n component: ConnectionWrapperComponent,\n props: {\n connectionComponent: component,\n data: payload,\n start: start || ((change: any) => positionWatcher.listen(source, 'output', sourceOutput, change)),\n end: end || ((change: any) => positionWatcher.listen(target, 'input', targetInput, change)),\n path: async (start, end) => {\n const response = await plugin.emit({ type: 'connectionpath', data: { payload, points: [start, end] } })\n\n if (!response) return ''\n\n const { path, points } = response.data\n const curvature = 0.3\n\n if (!path && points.length !== 2) throw new Error('cannot render connection with a custom number of points')\n if (!path) return payload.isLoop\n ? loopConnectionPath(points as [Position, Position], curvature, 120)\n : classicConnectionPath(points as [Position, Position], curvature)\n\n return path\n },\n rendered\n }\n }\n }\n if (context.data.type === 'socket') {\n const component = socket ? socket(context.data) : SocketComponent\n\n return {\n key: `socket-${getUID()}`,\n component,\n props: {\n data: context.data.payload,\n rendered\n }\n }\n }\n if (context.data.type === 'control') {\n const component = control\n ? control(context.data)\n : (\n context.data.payload instanceof ClassicPreset.InputControl\n ? ControlComponent\n : null\n )\n\n if (component) {\n return {\n key: `control-${context.data.payload.id}`,\n component,\n props: {\n data: context.data.payload,\n rendered\n }\n }\n }\n return\n }\n return\n }\n }\n}\n","export function debounce(cb: () => void) {\n return {\n timeout: null as null | number,\n cancel() {\n if (this.timeout) {\n window.clearTimeout(this.timeout)\n this.timeout = null\n }\n },\n call(delay: number) {\n this.timeout = window.setTimeout(() => {\n cb()\n }, delay)\n }\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'context-menu-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.sass']\n})\nexport class ContextMenuSearchComponent {\n @Input() value!: string\n @Output() update = new EventEmitter<string>()\n}\n","<input class=\"search\" [value]=\"value\" (input)=\"update.emit($any($event.target)?.value || '')\"\n data-testid=\"context-menu-search-input\" />\n","<ng-content></ng-content>\n<div class=\"subitems\" *ngIf=\"subitems && visibleSubitems\">\n <context-menu-item *ngFor=\"let item of subitems\" [delay]=\"delay\" (select)=\"item.handler()\" (hide)=\"hide.emit()\">\n {{ item.label }}\n </context-menu-item>\n</div>\n","import { ChangeDetectorRef, Component, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\nimport { Item } from '../../types';\nimport { debounce } from '../../debounce';\n\n@Component({\n selector: 'context-menu-item',\n templateUrl: './item.component.html',\n styleUrls: ['./item.component.sass', '../../block.sass'],\n host: {\n 'data-testid': 'context-menu-item'\n }\n})\nexport class ContextMenuItemComponent {\n @Input() subitems?: Item[]\n @Input() delay!: number\n @Output() select = new EventEmitter<void>();\n @Output() hide = new EventEmitter<void>();\n\n @HostBinding('class.block') get block() { return true }\n @HostBinding('class.hasSubitems') get hasSubitems() { return this.subitems }\n\n @HostListener('click', ['$event']) click(event: MouseEvent) {\n event.stopPropagation()\n this.select.emit()\n this.hide.emit()\n }\n @HostListener('pointerdown', ['$event']) pointerdown(event: PointerEvent) {\n event.stopPropagation()\n }\n @HostListener('wheel', ['$event']) wheel(event: MouseEvent) {\n event.stopPropagation()\n }\n\n hideSubitems = debounce(() => {\n this.visibleSubitems = false\n this.cdr.detectChanges()\n })\n visibleSubitems = false\n\n @HostListener('pointerover') pointerover() {\n this.hideSubitems.cancel()\n this.visibleSubitems = true\n this.cdr.detectChanges()\n }\n @HostListener('pointerleave') pointerleave() {\n this.hideSubitems.call(this.delay)\n this.cdr.detectChanges()\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n}\n","<div class=\"block\" *ngIf=\"searchBar\">\n <context-menu-search [value]=\"filter\" (update)=\"setFilter($event)\"></context-menu-search>\n</div>\n\n<context-menu-item *ngFor=\"let item of getItems()\" [delay]=\"delay\" (select)=\"item.handler()\" [subitems]=\"item.subitems\"\n (hide)=\"onHide()\">\n {{ item.label }}\n</context-menu-item>\n","import { Component, Input, ChangeDetectorRef, OnChanges, OnDestroy, HostListener, HostBinding } from '@angular/core';\nimport { Item } from '../../types';\nimport { debounce } from '../../debounce';\n\n@Component({\n templateUrl: './menu.component.html',\n styleUrls: ['./menu.component.sass', '../../block.sass'],\n host: {\n 'data-testid': 'context-menu'\n }\n})\nexport class ContextMenuComponent implements OnChanges, OnDestroy {\n @Input() items!: Item[]\n @Input() delay!: number\n @Input() searchBar?: boolean\n @Input() onHide!: () => void\n @Input() rendered!: () => void\n\n public filter: string = ''\n\n hide = debounce(() => {\n this.onHide()\n this.cdr.detectChanges()\n })\n\n @HostBinding('attr.rete-context-menu') customAttribute = ''\n\n @HostListener('mouseover') pointerover() {\n this.hide.cancel()\n this.cdr.detectChanges()\n }\n @HostListener('mouseleave') pointerleave() {\n this.hide.call(this.delay)\n this.cdr.detectChanges()\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n }\n\n setFilter(value: string) {\n this.filter = value\n this.cdr.detectChanges()\n }\n\n getItems() {\n const filterRegexp = new RegExp(this.filter, 'i')\n const filteredList = this.items.filter(item => (\n item.label.match(filterRegexp)\n ))\n\n return filteredList\n }\n\n ngOnDestroy(): void {\n if (this.hide) this.hide.cancel()\n }\n}\n","import { BaseSchemes } from 'rete';\n\nimport { ContextMenuRender } from './types';\nimport { ContextMenuComponent } from './components/menu/menu.component';\nimport { RenderPreset } from '../types';\n\nexport function setup<Schemes extends BaseSchemes, K extends ContextMenuRender>(props?: { delay?: number }): RenderPreset<Schemes, K> {\n const delay = typeof props?.delay === 'undefined' ? 1000 : props.delay\n\n return {\n update(context) {\n if (context.data.type === 'contextmenu') {\n return {\n items: context.data.items,\n delay,\n searchBar: context.data.searchBar,\n onHide: context.data.onHide\n }\n }\n },\n mount(context, plugin) {\n const parent = plugin.parentScope()\n const emit = parent.emit.bind(parent)\n const rendered = () => {\n emit({ type: 'rendered', data: context.data } as any)\n }\n\n if (context.data.type === 'contextmenu') {\n return {\n key: 'context-menu',\n component: ContextMenuComponent,\n props: {\n items: context.data.items,\n delay,\n searchBar: context.data.searchBar,\n onHide: context.data.onHide,\n rendered\n }\n }\n }\n return null\n }\n }\n}\n","import { Position } from '../types'\n\ntype Translate = (dx: number, dy: number) => void\ntype StartEvent = { pageX: number, pageY: number }\n\nexport function useDrag(translate: Translate, getPointer: (e: StartEvent) => Position) {\n return {\n start(e: StartEvent) {\n let previous = { ...getPointer(e) }\n\n function move(moveEvent: MouseEvent) {\n const current = { ...getPointer(moveEvent) }\n const dx = current.x - previous.x\n const dy = current.y - previous.y\n\n previous = current\n\n translate(dx, dy)\n }\n function up() {\n window.removeEventListener('pointermove', move)\n window.removeEventListener('pointerup', up)\n window.removeEventListener('pointercancel', up)\n }\n\n window.addEventListener('pointermove', move)\n window.addEventListener('pointerup', up)\n window.addEventListener('pointercancel', up)\n }\n }\n}\n","import { Component, Input, HostBinding, HostListener } from '@angular/core';\nimport { useDrag } from '../../../../shared/drag';\nimport { MinimapData } from '../../types';\n\n@Component({\n selector: 'minimap-mini-viewport',\n templateUrl: './mini-viewport.component.html',\n styleUrls: ['./mini-viewport.component.sass'],\n host: {\n 'data-testid': 'minimap-viewport'\n }\n})\nexport class MiniViewportComponent {\n @Input() left!: number\n @Input() top!: number\n @Input() width!: number\n @Input() height!: number\n @Input() containerWidth!: number\n @Input() translate!: MinimapData['translate']\n\n drag = useDrag((dx, dy) => this.onDrag(dx, dy), e => ({ x: e.pageX, y: e.pageY }))\n\n @HostBinding('style.left') get styleLeft() {\n return this.px(this.scale(this.left))\n }\n @HostBinding('style.top') get styleTop() {\n return this.px(this.scale(this.top))\n }\n @HostBinding('style.width') get styleWidth() {\n return this.px(this.scale(this.width))\n }\n @HostBinding('style.height') get styleHeight() {\n return this.px(this.scale(this.height))\n }\n\n @HostListener('pointerdown', ['$event']) pointerdown(event: PointerEvent) {\n event.stopPropagation()\n this.drag.start(event)\n }\n\n px(value: number) {\n return `${value}px`\n }\n\n scale(v: number) {\n return v * this.containerWidth\n }\n\n invert(v: number) {\n return v / this.containerWidth\n }\n\n onDrag(dx: number, dy: number) {\n this.translate(this.invert(-dx), this.invert(-dy))\n }\n}\n","import { Component, Input, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'minimap-mini-node',\n templateUrl: './mini-node.component.html',\n styleUrls: ['./mini-node.component.sass'],\n host: {\n 'data-testid': 'minimap-node'\n }\n})\nexport class MiniNodeComponent {\n @Input() left!: number\n @Input() top!: number\n @Input() width!: number\n @Input() height!: number\n\n @HostBinding('style.left') get styleLeft() {\n return this.px(this.left)\n }\n @HostBinding('style.top') get styleTop() {\n return this.px(this.top)\n }\n @HostBinding('style.width') get styleWidth() {\n return this.px(this.width)\n }\n @HostBinding('style.height') get styleHeight() {\n return this.px(this.height)\n }\n\n px(value: number) {\n return `${value}px`\n }\n\n}\n","<minimap-mini-node *ngFor=\"let node of nodes; trackBy: identifyMiniNode\" [left]=\"scale(node.left)\"\n [top]=\"scale(node.top)\" [width]=\"scale(node.width)\" [height]=\"scale(node.height)\">\n\n</minimap-mini-node>\n<minimap-mini-viewport [left]=\"viewport.left\" [top]=\"viewport.top\" [width]=\"viewport.width\" [height]=\"viewport.height\"\n [containerWidth]=\"el.nativeElement?.clientWidth\" [translate]=\"translate\"></minimap-mini-viewport>\n","import { Component, Input, ChangeDetectorRef, OnChanges, HostListener, ElementRef, HostBinding } from '@angular/core';\nimport { MinimapData } from '../../types';\n\n@Component({\n templateUrl: './minimap.component.html',\n styleUrls: ['./minimap.component.sass'],\n host: {\n 'data-testid': 'minimap'\n }\n})\nexport class MinimapComponent implements OnChanges {\n @Input() rendered!: () => void\n @Input() size!: number\n @Input() ratio!: MinimapData['ratio']\n @Input() nodes!: MinimapData['nodes']\n @Input() viewport!: MinimapData['viewport']\n @Input() translate!: MinimapData['translate']\n @Input() point!: MinimapData['point']\n\n @HostBinding('style.width') get width() {\n return this.px(this.size * this.ratio)\n }\n @HostBinding('style.height') get height() {\n return this.px(this.size)\n }\n\n @HostListener('pointerdown', ['$event']) pointerdown(event: PointerEvent) {\n event.stopPropagation()\n event.preventDefault()\n }\n\n @HostListener('dblclick', ['$event']) dblclick(event: MouseEvent) {\n event.stopPropagation()\n event.preventDefault()\n\n if (!this.el.nativeElement) return\n const box = this.el.nativeElement.getBoundingClientRect()\n const x = (event.clientX - box.left) / (this.size * this.ratio)\n const y = (event.clientY - box.top) / (this.size * this.ratio)\n\n this.point(x, y)\n }\n\n constructor(public el: ElementRef, private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n }\n\n px(value: number) {\n return `${value}px`\n }\n\n scale(value: number) {\n if (!this.el.nativeElement) return 0\n\n return value * this.el.nativeElement.clientWidth\n }\n\n identifyMiniNode(_: number, item: MinimapData['nodes'][number]) {\n return [item.top, item.left].join('_')\n }\n}\n","import { BaseSchemes } from 'rete';\n\nimport { RenderPreset } from '../types';\nimport { MinimapRender } from './types';\nimport { MinimapComponent } from './components/minimap/minimap.component';\n\nexport function setup<Schemes extends BaseSchemes, K extends MinimapRender>(props?: { size?: number }): RenderPreset<Schemes, K> {\n return {\n update(context) {\n if (context.data.type === 'minimap') {\n return {\n nodes: context.data.nodes,\n size: props?.size || 200,\n ratio: context.data.ratio,\n viewport: context.data.viewport,\n translate: context.data.translate,\n point: context.data.point\n }\n }\n return null\n },\n mount(context, plugin) {\n const parent = plugin.parentScope()\n const emit = parent.emit.bind(parent)\n const rendered = () => {\n emit({ type: 'rendered', data: context.data } as any)\n }\n\n if (context.data.type === 'minimap') {\n return {\n key: 'rete-minimap',\n component: MinimapComponent,\n props: {\n nodes: context.data.nodes,\n size: props?.size || 200,\n ratio: context.data.ratio,\n viewport: context.data.viewport,\n translate: context.data.translate,\n point: context.data.point,\n rendered\n }\n }\n }\n return null\n }\n }\n}\n","import { Component, Input, ChangeDetectorRef, OnChanges, HostListener, HostBinding, Output, EventEmitter } from '@angular/core';\nimport { Position } from '../../types';\nimport { useDrag } from '../../../../shared/drag'\n\nconst pinSize = 20\n\n@Component({\n selector: 'reroute-pin',\n template: '',\n styleUrls: ['./pin.component.sass'],\n host: {\n 'data-testid': 'pin'\n }\n})\nexport class PinComponent implements OnChanges {\n @Input() position!: Position\n @Input() selected?: boolean\n @Input() getPointer!: () => Position\n @Output() menu = new EventEmitter<void>()\n @Output() translate = new EventEmitter<{ dx: number, dy: number }>()\n @Output() down = new EventEmitter<void>()\n\n drag = useDrag((dx, dy) => {\n this.translate.emit({ dx, dy })\n }, () => this.getPointer())\n\n @HostBinding('class.selected') get _selected() {\n return this.selected\n }\n @HostBinding('style.top') get top() {\n return `${this.position.y - pinSize / 2}px`\n }\n @HostBinding('style.left') get left() {\n return `${this.position.x - pinSize / 2}px`\n }\n @HostListener('pointerdown', ['$event']) pointerdown(event: PointerEvent) {\n event.stopPropagation()\n event.preventDefault()\n\n this.drag.start(event)\n this.down.emit()\n }\n @HostListener('contextmenu', ['$event']) contextmenu(event: MouseEvent) {\n event.stopPropagation()\n event.preventDefault()\n\n this.menu.emit()\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n // this.cdr.detach()\n }\n\n ngOnChanges(): void {\n // this.cdr.detectChanges()\n // requestAnimationFrame(() => this.rendered())\n }\n\n}\n","<reroute-pin *ngFor=\"let pin of pins; trackBy: track\" [position]=\"pin.position\" [selected]=\"pin.selected\"\n (menu)=\"menu && menu(pin.id)\" (translate)=\"translate && translate(pin.id, $event.dx, $event.dy)\"\n (down)=\"down && down(pin.id)\" [getPointer]=\"getPointer\"></reroute-pin>\n","import { Component, Input, ChangeDetectorRef, OnChanges } from '@angular/core';\nimport { Pin, PinData, Position } from '../../types';\n\n@Component({\n templateUrl: './pins.component.html'\n})\nexport class PinsComponent implements OnChanges {\n @Input() rendered!: () => void\n @Input() pins!: PinData['pins']\n @Input() down?: (id: string) => void\n @Input() translate?: (id: string, dx: number, dy: number) => void\n @Input() menu?: (id: string) => void\n @Input() getPointer?: () => Position\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n }\n\n track(_: number, item: Pin) {\n return item.id\n }\n}\n","import { BaseSchemes } from 'rete';\nimport { BaseAreaPlugin } from 'rete-area-plugin';\n\nimport { RenderPreset } from '../types'\nimport { PinsRender } from './types';\nimport { PinsComponent } from './components/pins/pins.component';\n\ntype Props = {\n translate?: (id: string, dx: number, dy: number) => void\n contextMenu?: (id: string) => void\n pointerdown?: (id: string) => void\n}\n\nexport function setup<Schemes extends BaseSchemes, K extends PinsRender>(props?: Props): RenderPreset<Schemes, K> {\n const getProps = () => ({\n menu: props?.contextMenu || (() => null),\n translate: props?.translate || (() => null),\n down: props?.pointerdown || (() => null)\n })\n\n return {\n update(context) {\n if (context.data.type === 'reroute-pins') {\n return {\n ...getProps(),\n pins: context.data.data.pins\n }\n }\n return null\n },\n mount(context, plugin) {\n const area = plugin.parentScope<BaseAreaPlugin<Schemes, PinsRender>>(BaseAreaPlugin)\n const rendered = () => {\n area.emit({ type: 'rendered', data: context.data })\n }\n\n if (context.data.type === 'reroute-pins') {\n return {\n key: 'rete-reroute',\n component: PinsComponent,\n props: {\n ...getProps(),\n pins: context.data.data.pins,\n rendered,\n getPointer: () => area.area.pointer\n }\n }\n }\n return null\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { NodeComponent, RefDirective } from './presets/classic/components/node/node.component';\nimport { ConnectionComponent } from './presets/classic/components/connection/connection.component';\nimport { SocketComponent } from './presets/classic/components/socket/socket.component';\nimport { ConnectionWrapperComponent } from './presets/classic/components/connection/connection-wrapper.component';\nimport { ControlComponent } from './presets/classic/components/control/control.component';\n\n@NgModule({\n declarations: [\n RefDirective,\n NodeComponent,\n ConnectionComponent,\n ConnectionWrapperComponent,\n SocketComponent,\n ControlComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n RefDirective,\n NodeComponent,\n ConnectionComponent,\n ConnectionWrapperComponent,\n SocketComponent,\n ControlComponent\n ],\n entryComponents: [\n NodeComponent,\n ConnectionComponent,\n ConnectionWrapperComponent,\n SocketComponent,\n ControlComponent\n ]\n})\nexport class ReteModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ContextMenuComponent } from './components/menu/menu.component'\nimport { ContextMenuSearchComponent } from './components/search/search.component'\nimport { ContextMenuItemComponent } from './components/item/item.component'\n\n@NgModule({\n declarations: [\n ContextMenuComponent,\n ContextMenuSearchComponent,\n ContextMenuItemComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n ContextMenuComponent,\n ContextMenuSearchComponent,\n ContextMenuItemComponent,\n ],\n entryComponents: [\n ContextMenuComponent\n ]\n})\nexport class ReteContextMenuModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MinimapComponent } from './components/minimap/minimap.component';\nimport { MiniViewportComponent } from './components/mini-viewport/mini-viewport.component';\nimport { MiniNodeComponent } from './components/mini-node/mini-node.component';\n\n@NgModule({\n declarations: [\n MinimapComponent,\n MiniViewportComponent,\n MiniNodeComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n MinimapComponent,\n MiniViewportComponent,\n MiniNodeComponent\n ],\n entryComponents: [\n MinimapComponent\n ]\n})\nexport class ReteMinimapModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PinsComponent } from './components/pins/pins.component';\nimport { PinComponent } from './components/pin/pin.component';\n\n@NgModule({\n declarations: [\n PinsComponent,\n PinComponent,\n ],\n imports: [\n CommonModule\n ],\n exports: [\n PinsComponent,\n PinComponent,\n ],\n entryComponents: [\n PinsComponent\n ]\n})\nexport class ReteRerouteModule {}\n","import { Injector } from '@angular/core';\nimport { BaseSchemes, CanAssignSignal, Scope } from 'rete'\nimport { createCustomElement } from '@angular/elements';\n\nimport { NgElement, NodeProps, Position, RenderSignal } from './types'\nimport { RenderPreset } from './presets/types';\n\ntype Item = { key: string, ngElement: NgElement }\n\ntype Renderer = {\n get(element: HTMLElement): Item | undefined\n mount(element: HTMLElement, key: string, component: any, injector: Injector, props: Record<string, unknown>): void\n update(item: Item, props: Record<string, unknown>): void\n unmount(element: HTMLElement): void\n}\nfunction getRenderer(): Renderer {\n const elements = new WeakMap<HTMLElement, Item>()\n\n return {\n get(element) {\n return elements.get(element)\n },\n mount(element, key, component, injector, props) {\n // LIMITATION: If an element is remounted with the same identifier, the component cannot be replaced\n const exists = customElements.get(key)\n\n if (!exists) {\n customElements.define(key, createCustomElement(component, { injector }))\n }\n\n const ngElement = document.createElement(key) as NodeProps & NgElement & typeof props\n\n Object.keys(props).forEach(key => {\n ngElement[key] = props[key]\n })\n\n element.appendChild(ngElement)\n elements.set(element, { key, ngElement })\n },\n update({ ngElement }, props) {\n Object.keys(props).forEach(key => {\n ngElement.ngElementStrategy.setInputValue(key, props[key])\n })\n ngElement.ngElementStrategy.setInputValue('seed', Math.random())\n },\n unmount(element) {\n const existing = elements.get(element)\n\n if (existing) {\n existing.ngElement.remove()\n elements.delete(element)\n }\n }\n }\n}\n\ntype Produces<Schemes extends BaseSchemes> =\n | { type: 'connectionpath', data: { payload: Schemes['Connection'], path?: string, points: Position[] } }\n\ntype Requires<Schemes extends BaseSchemes> =\n | RenderSignal<'node', { payload: Schemes['Node'] }>\n | RenderSignal<'connection', { payload: Schemes['Connection'], start?: Position, end?: Position }>\n | { type: 'unmount', data: { element: HTMLElement } }\n\nexport class AngularPlugin<Schemes extends BaseSchemes, T = Requires<Schemes>> extends Scope<Produces<Schemes>, [Requires<Schemes> | T]> {\n presets: RenderPreset<Schemes, T>[] = []\n renderer: Renderer\n owners = new WeakMap<HTMLElement, RenderPreset<Schemes, T>>()\n\n constructor(private params: { injector: Injector }) {\n super('angular-render')\n this.renderer = getRenderer()\n\n this.addPipe(context => {\n if (!context || typeof context !== 'object' || !('type' in context)) return context\n if (context.type === 'unmount') {\n this.unmount(context.data.element)\n } else if (context.type === 'render') {\n if ('filled' in context.data && context.data.filled) {\n return context\n }\n if (this.mount(context.data.element, context)) {\n return {\n ...context,\n data: {\n ...context.data,\n filled: true\n }\n } as typeof context\n }\n }\n return context\n })\n }\n\n setParent(scope: Scope<Requires<Schemes> | T>): void {\n super.setParent(scope)\n\n this.presets.forEach(preset => {\n if (preset.attach) preset.attach(this)\n })\n }\n\n\n private unmount(element: HTMLElement) {\n this.owners.delete(element)\n this.renderer.unmount(element)\n }\n\n private mount(element: HTMLElement, context: Requires<Schemes>) {\n const existing = this.renderer.get(element)\n\n if (existing) {\n this.presets.forEach(preset => {\n if (this.owners.get(element) !== preset) return\n const result = preset.update(context as unknown as Extract<T, { type: 'render' }>, this)\n\n if (result) {\n this.renderer.update(existing, result)\n }\n })\n return true\n }\n\n for (const preset of this.presets) {\n const result = preset.mount(context as unknown as Extract<T, { type: 'render' }>, this)\n\n if (!result) continue\n\n const { key, component, props } = result\n\n this.renderer.mount(element, key, component, this.params.injector, props)\n\n this.owners.set(element, preset)\n return true\n }\n return\n }\n\n public addPreset<K>(preset: RenderPreset<Schemes, CanAssignSignal<T, K> extends true ? K : 'Cannot apply preset. Provided signals are not compatible'>) {\n const local = preset as unknown as RenderPreset<Schemes, T>\n\n if (local.attach) local.attach(this)\n this.presets.push(local)\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i0","_c0","Directive","Input","i1","Component","HostBinding","HostListener","setup","getDOMSocketPosition","loopConnectionPath","classicConnectionPath","getUID","ClassicPreset","EventEmitter","Output","BaseAreaPlugin","CommonModule","NgModule","elements","createCustomElement","Scope"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rete-angular-plugin-ng12.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../ng12/src/ref.ts","../../../ng12/src/presets/classic/components/node/node.component.html","../../../ng12/src/presets/classic/components/node/node.component.ts","../../../ng12/src/presets/classic/components/socket/socket.component.ts","../../../ng12/src/presets/classic/components/control/control.component.ts","../../../ng12/src/presets/classic/components/control/control.component.html","../../../ng12/src/presets/classic/components/connection/connection.component.ts","../../../ng12/src/presets/classic/components/connection/connection.component.html","../../../ng12/src/presets/classic/components/connection/connection-wrapper.component.ts","../../../ng12/src/presets/classic/index.ts","../../../ng12/src/presets/context-menu/debounce.ts","../../../ng12/src/presets/context-menu/components/search/search.component.ts","../../../ng12/src/presets/context-menu/components/search/search.component.html","../../../ng12/src/presets/context-menu/components/item/item.component.html","../../../ng12/src/presets/context-menu/components/item/item.component.ts","../../../ng12/src/presets/context-menu/components/menu/menu.component.html","../../../ng12/src/presets/context-menu/components/menu/menu.component.ts","../../../ng12/src/presets/context-menu/index.ts","../../../ng12/src/shared/drag.ts","../../../ng12/src/presets/minimap/components/mini-viewport/mini-viewport.component.ts","../../../ng12/src/presets/minimap/components/mini-node/mini-node.component.ts","../../../ng12/src/presets/minimap/components/minimap/minimap.component.html","../../../ng12/src/presets/minimap/components/minimap/minimap.component.ts","../../../ng12/src/presets/minimap/index.ts","../../../ng12/src/presets/reroute/components/pin/pin.component.ts","../../../ng12/src/presets/reroute/components/pins/pins.component.html","../../../ng12/src/presets/reroute/components/pins/pins.component.ts","../../../ng12/src/presets/reroute/index.ts","../../../ng12/src/module.ts","../../../ng12/src/presets/context-menu/module.ts","../../../ng12/src/presets/minimap/module.ts","../../../ng12/src/presets/reroute/module.ts","../../../ng12/src/core.ts","../../../ng12/src/rete-angular-plugin-ng12.ts"],"sourcesContent":["/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.push(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.push(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import { Input, ElementRef, OnChanges, OnDestroy } from '@angular/core';\nimport { Directive } from '@angular/core';\n\n@Directive({\n selector: '[refComponent]'\n})\nexport class RefDirective implements OnChanges, OnDestroy {\n @Input() data!: any\n @Input() emit!: any\n\n constructor(private el: ElementRef) { }\n\n ngOnChanges() {\n this.emit({ type: 'render', data: { ...this.data, element: this.el.nativeElement } })\n }\n\n ngOnDestroy() {\n this.emit({ type: 'unmount', data: { element: this.el.nativeElement } })\n }\n}\n","<div class=\"title\" data-testid=\"title\">{{data.label}}</div>\n<div class=\"output\" *ngFor=\"let output of data.outputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'output-'+output.key\">\n <div class=\"output-title\" data-testid=\"output-title\">{{output.value?.label}}</div>\n <div\n class=\"output-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'output', key: output.key, nodeId: data.id, payload: output.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"output-socket\"\n ></div>\n</div>\n<div\n class=\"control\"\n *ngFor=\"let control of data.controls | keyvalue: sortByIndex\"\n refComponent\n [data]=\"{type: 'control', payload: control.value }\"\n [emit]=\"emit\"\n [attr.data-testid]=\"'control-'+control.key\"\n></div>\n<div class=\"input\" *ngFor=\"let input of data.inputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'input-'+input.key\">\n <div\n class=\"input-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'input', key: input.key, nodeId: data.id, payload: input.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"input-socket\"\n ></div>\n <div class=\"input-title\" data-testid=\"input-title\" *ngIf=\"!input.value?.control || !input.value?.showControl\">{{input.value?.label}}</div>\n <div\n class=\"input-control\"\n [style.display]=\"input.value?.control && input.value?.showControl ? '' : 'none'\"\n refComponent\n [data]=\"{type: 'control', payload: input.value?.control }\"\n [emit]=\"emit\"\n data-testid=\"input-control\"\n ></div>\n</div>\n","import { Component, Input, HostBinding, ChangeDetectorRef, OnChanges } from '@angular/core';\nimport { ClassicPreset as Classic } from 'rete';\nimport { KeyValue } from '@angular/common';\n\ntype SortValue<N extends Classic.Node> = (N['controls'] | N['inputs'] | N['outputs'])[string]\n\n@Component({\n templateUrl: './node.component.html',\n styleUrls: ['./node.component.sass'],\n host: {\n 'data-testid': 'node'\n }\n})\nexport class NodeComponent implements OnChanges {\n @Input() data!: Classic.Node;\n @Input() emit!: (data: any) => void\n @Input() rendered!: () => void\n\n seed = 0\n\n @HostBinding('class.selected') get selected() {\n return this.data.selected\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n this.seed++ // force render sockets\n }\n\n sortByIndex<N extends Classic.Node, I extends KeyValue<string, SortValue<N>>>(a: I, b: I) {\n const ai = a.value?.index || 0\n const bi = b.value?.index || 0\n\n return ai - bi\n }\n}\n","import { Component, Input, HostBinding, AfterViewChecked, ChangeDetectorRef, OnChanges } from '@angular/core';\n\n@Component({\n template: ``,\n styleUrls: ['./socket.component.sass']\n})\nexport class SocketComponent implements OnChanges {\n @Input() data!: any;\n @Input() rendered!: any;\n\n\n @HostBinding('title') get title() {\n return this.data.name\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n }\n}\n","import { Component, Input, OnChanges, SimpleChanges, ChangeDetectorRef, HostListener } from '@angular/core';\nimport { ClassicPreset } from 'rete';\n\n@Component({\n templateUrl: `./control.component.html`,\n styleUrls: ['./control.component.sass']\n})\nexport class ControlComponent<T extends 'text' | 'number'> implements OnChanges {\n @Input() data!: ClassicPreset.InputControl<T>;\n @Input() rendered!: any;\n\n\n @HostListener('pointerdown', ['$event'])\n public pointerdown(event: any) {\n event.stopPropagation();\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n const seed = changes['seed']\n const data = changes['data']\n\n if ((seed && seed.currentValue !== seed.previousValue)\n || (data && data.currentValue !== data.previousValue)) {\n this.cdr.detectChanges()\n }\n requestAnimationFrame(() => this.rendered())\n }\n\n onChange(e: Event) {\n const target = e.target as HTMLInputElement\n const value = (this.data.type === 'number'\n ? +target.value\n : target.value) as ClassicPreset.InputControl<T>['value']\n\n this.data.setValue(value)\n this.cdr.detectChanges()\n }\n}\n","<input\n [value]=\"data.value\"\n [readonly]=\"data.readonly\"\n [type]=\"data.type\"\n (input)=\"onChange($event)\"\n/>\n","import { Component, Input } from '@angular/core';\nimport { ClassicPreset } from 'rete';\nimport { classicConnectionPath } from 'rete-render-utils'\nimport { Position } from '../../../../types';\n\n\n@Component({\n selector: 'connection',\n templateUrl: './connection.component.html',\n styleUrls: ['./connection.component.sass']\n})\nexport class ConnectionComponent {\n @Input() data!: ClassicPreset.Connection<ClassicPreset.Node, ClassicPreset.Node>;\n @Input() start: Position\n @Input() end: Position\n @Input() path: string\n}\n","<svg data-testid=\"connection\">\n <path [attr.d]=\"path\" />\n</svg>\n","import { Component, Input, OnInit, ChangeDetectorRef, OnChanges, ViewContainerRef, ComponentFactoryResolver, ComponentRef } from '@angular/core';\nimport { ClassicPreset } from 'rete';\nimport { Position } from '../../../../types';\n\ntype PositionWatcher = (cb: (value: Position) => void) => (() => void)\n\n@Component({\n template: ''\n})\nexport class ConnectionWrapperComponent implements OnInit, OnChanges{\n @Input() data!: ClassicPreset.Connection<ClassicPreset.Node, ClassicPreset.Node>;\n @Input() start!: Position | PositionWatcher\n @Input() end!: Position | PositionWatcher\n @Input() path!: (start: Position, end: Position) => Promise<string>\n @Input() rendered!: any\n @Input() connectionComponent!: any\n\n ref!: ComponentRef<any>\n\n startOb: Position | null = null\n get _start(): Position | null {\n return 'x' in this.start ? this.start : this.startOb\n }\n endOb: Position | null = null\n get _end(): Position | null {\n return 'x' in this.end ? this.end : this.endOb\n }\n _path: string\n\n constructor(private cdr: ChangeDetectorRef, public viewContainerRef: ViewContainerRef, private componentFactoryResolver: ComponentFactoryResolver) {\n this.cdr.detach()\n }\n\n async ngOnChanges(): Promise<void> {\n await this.updatePath()\n requestAnimationFrame(() => this.rendered())\n this.cdr.detectChanges()\n this.update()\n }\n\n async updatePath() {\n if (this._start && this._end) {\n this._path = await this.path(this._start, this._end)\n }\n }\n\n ngOnInit() {\n if (typeof this.start === 'function') {\n this.start(async value => {\n this.startOb = value\n await this.updatePath()\n this.cdr.detectChanges()\n this.update()\n })\n }\n if (typeof this.end === 'function') {\n this.end(async value => {\n this.endOb = value\n await this.updatePath()\n this.cdr.detectChanges()\n this.update()\n })\n }\n const componentFactory = this.componentFactoryResolver.resolveComponentFactory(this.connectionComponent);\n this.viewContainerRef.clear();\n\n this.ref = this.viewContainerRef.createComponent(componentFactory);\n this.update()\n }\n\n update() {\n this.ref.instance.data = this.data\n this.ref.instance.start = this._start\n this.ref.instance.end = this._end\n this.ref.instance.path = this._path\n }\n}\n","import { Type } from '@angular/core';\nimport { ClassicPreset, getUID, Scope } from 'rete';\nimport { classicConnectionPath, loopConnectionPath, SocketPositionWatcher, getDOMSocketPosition } from 'rete-render-utils';\nimport { AngularArea2D, ClassicScheme, ExtractPayload } from './types';\nimport { NodeComponent } from './components/node/node.component';\nimport { SocketComponent } from './components/socket/socket.component';\nimport { ControlComponent } from './components/control/control.component';\nimport { ConnectionComponent } from './components/connection/connection.component';\nimport { ConnectionWrapperComponent } from './components/connection/connection-wrapper.component';\nimport { Position } from '../../types';\nimport { RenderPreset } from '../types'\n\ntype AngularComponent = Type<any>\ntype CustomizationProps<Schemes extends ClassicScheme> = {\n node?: (data: ExtractPayload<Schemes, 'node'>) => AngularComponent | null\n connection?: (data: ExtractPayload<Schemes, 'connection'>) => AngularComponent | null\n socket?: (data: ExtractPayload<Schemes, 'socket'>) => AngularComponent | null\n control?: (data: ExtractPayload<Schemes, 'control'>) => AngularComponent | null\n}\n\ntype ClassicProps<Schemes extends ClassicScheme, K> = {\n socketPositionWatcher?: SocketPositionWatcher<Scope<never, [K]>>\n customize?: CustomizationProps<Schemes>\n}\n\nexport function setup<Schemes extends ClassicScheme, K extends AngularArea2D<Schemes>>(\n props?: ClassicProps<Schemes, K>\n): RenderPreset<Schemes, K> {\n const positionWatcher = typeof props?.socketPositionWatcher === 'undefined'\n ? getDOMSocketPosition<Schemes, any>() // fix Type instantiation is excessively deep and possibly infinite.\n : props?.socketPositionWatcher\n const { node, connection, socket, control } = props?.customize || {}\n\n\n return {\n attach(plugin) {\n positionWatcher.attach(plugin as unknown as Scope<never, [K]>)\n },\n update(context) {\n const data = context.data.payload\n\n if (context.data.type === 'connection') {\n const { start, end } = context.data\n\n return {\n data,\n ...(start ? { start } : {}),\n ...(end ? { end } : {}),\n }\n }\n return { data }\n },\n mount(context, plugin) {\n const parent = plugin.parentScope()\n const emit = parent.emit.bind(parent)\n const rendered = () => {\n emit({ type: 'rendered', data: context.data })\n }\n\n if (context.data.type === 'node') {\n const component = node ? node(context.data) : NodeComponent\n\n return {\n key: `node-${context.data.payload.id}`,\n component,\n props: {\n data: context.data.payload,\n emit,\n rendered\n }\n }\n }\n if (context.data.type === 'connection') {\n const component = connection ? connection(context.data) : ConnectionComponent\n const id = context.data.payload.id\n const { sourceOutput, targetInput, source, target } = context.data.payload\n const { start, end, payload } = context.data\n\n return {\n key: `connection-${id}`,\n component: ConnectionWrapperComponent,\n props: {\n connectionComponent: component,\n data: payload,\n start: start || ((change: any) => positionWatcher.listen(source, 'output', sourceOutput, change)),\n end: end || ((change: any) => positionWatcher.listen(target, 'input', targetInput, change)),\n path: async (start, end) => {\n const response = await plugin.emit({ type: 'connectionpath', data: { payload, points: [start, end] } })\n\n if (!response) return ''\n\n const { path, points } = response.data\n const curvature = 0.3\n\n if (!path && points.length !== 2) throw new Error('cannot render connection with a custom number of points')\n if (!path) return payload.isLoop\n ? loopConnectionPath(points as [Position, Position], curvature, 120)\n : classicConnectionPath(points as [Position, Position], curvature)\n\n return path\n },\n rendered\n }\n }\n }\n if (context.data.type === 'socket') {\n const component = socket ? socket(context.data) : SocketComponent\n\n return {\n key: `socket-${getUID()}`,\n component,\n props: {\n data: context.data.payload,\n rendered\n }\n }\n }\n if (context.data.type === 'control') {\n const component = control\n ? control(context.data)\n : (\n context.data.payload instanceof ClassicPreset.InputControl\n ? ControlComponent\n : null\n )\n\n if (component) {\n return {\n key: `control-${context.data.payload.id}`,\n component,\n props: {\n data: context.data.payload,\n rendered\n }\n }\n }\n return\n }\n return\n }\n }\n}\n","export function debounce(cb: () => void) {\n return {\n timeout: null as null | number,\n cancel() {\n if (this.timeout) {\n window.clearTimeout(this.timeout)\n this.timeout = null\n }\n },\n call(delay: number) {\n this.timeout = window.setTimeout(() => {\n cb()\n }, delay)\n }\n }\n}\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\n\n@Component({\n selector: 'context-menu-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.sass']\n})\nexport class ContextMenuSearchComponent {\n @Input() value!: string\n @Output() update = new EventEmitter<string>()\n}\n","<input class=\"search\" [value]=\"value\" (input)=\"update.emit($any($event.target)?.value || '')\"\n data-testid=\"context-menu-search-input\" />\n","<ng-content></ng-content>\n<div class=\"subitems\" *ngIf=\"subitems && visibleSubitems\">\n <context-menu-item *ngFor=\"let item of subitems\" [delay]=\"delay\" (select)=\"item.handler()\" (hide)=\"hide.emit()\">\n {{ item.label }}\n </context-menu-item>\n</div>\n","import { ChangeDetectorRef, Component, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';\nimport { Item } from '../../types';\nimport { debounce } from '../../debounce';\n\n@Component({\n selector: 'context-menu-item',\n templateUrl: './item.component.html',\n styleUrls: ['./item.component.sass', '../../block.sass'],\n host: {\n 'data-testid': 'context-menu-item'\n }\n})\nexport class ContextMenuItemComponent {\n @Input() subitems?: Item[]\n @Input() delay!: number\n @Output() select = new EventEmitter<void>();\n @Output() hide = new EventEmitter<void>();\n\n @HostBinding('class.block') get block() { return true }\n @HostBinding('class.hasSubitems') get hasSubitems() { return this.subitems }\n\n @HostListener('click', ['$event']) click(event: MouseEvent) {\n event.stopPropagation()\n this.select.emit()\n this.hide.emit()\n }\n @HostListener('pointerdown', ['$event']) pointerdown(event: PointerEvent) {\n event.stopPropagation()\n }\n @HostListener('wheel', ['$event']) wheel(event: MouseEvent) {\n event.stopPropagation()\n }\n\n hideSubitems = debounce(() => {\n this.visibleSubitems = false\n this.cdr.detectChanges()\n })\n visibleSubitems = false\n\n @HostListener('pointerover') pointerover() {\n this.hideSubitems.cancel()\n this.visibleSubitems = true\n this.cdr.detectChanges()\n }\n @HostListener('pointerleave') pointerleave() {\n this.hideSubitems.call(this.delay)\n this.cdr.detectChanges()\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n}\n","<div class=\"block\" *ngIf=\"searchBar\">\n <context-menu-search [value]=\"filter\" (update)=\"setFilter($event)\"></context-menu-search>\n</div>\n\n<context-menu-item *ngFor=\"let item of getItems()\" [delay]=\"delay\" (select)=\"item.handler()\" [subitems]=\"item.subitems\"\n (hide)=\"onHide()\">\n {{ item.label }}\n</context-menu-item>\n","import { Component, Input, ChangeDetectorRef, OnChanges, OnDestroy, HostListener, HostBinding } from '@angular/core';\nimport { Item } from '../../types';\nimport { debounce } from '../../debounce';\n\n@Component({\n templateUrl: './menu.component.html',\n styleUrls: ['./menu.component.sass', '../../block.sass'],\n host: {\n 'data-testid': 'context-menu'\n }\n})\nexport class ContextMenuComponent implements OnChanges, OnDestroy {\n @Input() items!: Item[]\n @Input() delay!: number\n @Input() searchBar?: boolean\n @Input() onHide!: () => void\n @Input() rendered!: () => void\n\n public filter: string = ''\n\n hide = debounce(() => {\n this.onHide()\n this.cdr.detectChanges()\n })\n\n @HostBinding('attr.rete-context-menu') customAttribute = ''\n\n @HostListener('mouseover') pointerover() {\n this.hide.cancel()\n this.cdr.detectChanges()\n }\n @HostListener('mouseleave') pointerleave() {\n this.hide.call(this.delay)\n this.cdr.detectChanges()\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n }\n\n setFilter(value: string) {\n this.filter = value\n this.cdr.detectChanges()\n }\n\n getItems() {\n const filterRegexp = new RegExp(this.filter, 'i')\n const filteredList = this.items.filter(item => (\n item.label.match(filterRegexp)\n ))\n\n return filteredList\n }\n\n ngOnDestroy(): void {\n if (this.hide) this.hide.cancel()\n }\n}\n","import { BaseSchemes } from 'rete';\n\nimport { ContextMenuRender } from './types';\nimport { ContextMenuComponent } from './components/menu/menu.component';\nimport { RenderPreset } from '../types';\n\nexport function setup<Schemes extends BaseSchemes, K extends ContextMenuRender>(props?: { delay?: number }): RenderPreset<Schemes, K> {\n const delay = typeof props?.delay === 'undefined' ? 1000 : props.delay\n\n return {\n update(context) {\n if (context.data.type === 'contextmenu') {\n return {\n items: context.data.items,\n delay,\n searchBar: context.data.searchBar,\n onHide: context.data.onHide\n }\n }\n },\n mount(context, plugin) {\n const parent = plugin.parentScope()\n const emit = parent.emit.bind(parent)\n const rendered = () => {\n emit({ type: 'rendered', data: context.data } as any)\n }\n\n if (context.data.type === 'contextmenu') {\n return {\n key: 'context-menu',\n component: ContextMenuComponent,\n props: {\n items: context.data.items,\n delay,\n searchBar: context.data.searchBar,\n onHide: context.data.onHide,\n rendered\n }\n }\n }\n return null\n }\n }\n}\n","import { Position } from '../types'\n\ntype Translate = (dx: number, dy: number) => void\ntype StartEvent = { pageX: number, pageY: number }\n\nexport function useDrag(translate: Translate, getPointer: (e: StartEvent) => Position) {\n return {\n start(e: StartEvent) {\n let previous = { ...getPointer(e) }\n\n function move(moveEvent: MouseEvent) {\n const current = { ...getPointer(moveEvent) }\n const dx = current.x - previous.x\n const dy = current.y - previous.y\n\n previous = current\n\n translate(dx, dy)\n }\n function up() {\n window.removeEventListener('pointermove', move)\n window.removeEventListener('pointerup', up)\n window.removeEventListener('pointercancel', up)\n }\n\n window.addEventListener('pointermove', move)\n window.addEventListener('pointerup', up)\n window.addEventListener('pointercancel', up)\n }\n }\n}\n","import { Component, Input, HostBinding, HostListener } from '@angular/core';\nimport { useDrag } from '../../../../shared/drag';\nimport { MinimapData } from '../../types';\n\n@Component({\n selector: 'minimap-mini-viewport',\n templateUrl: './mini-viewport.component.html',\n styleUrls: ['./mini-viewport.component.sass'],\n host: {\n 'data-testid': 'minimap-viewport'\n }\n})\nexport class MiniViewportComponent {\n @Input() left!: number\n @Input() top!: number\n @Input() width!: number\n @Input() height!: number\n @Input() containerWidth!: number\n @Input() translate!: MinimapData['translate']\n\n drag = useDrag((dx, dy) => this.onDrag(dx, dy), e => ({ x: e.pageX, y: e.pageY }))\n\n @HostBinding('style.left') get styleLeft() {\n return this.px(this.scale(this.left))\n }\n @HostBinding('style.top') get styleTop() {\n return this.px(this.scale(this.top))\n }\n @HostBinding('style.width') get styleWidth() {\n return this.px(this.scale(this.width))\n }\n @HostBinding('style.height') get styleHeight() {\n return this.px(this.scale(this.height))\n }\n\n @HostListener('pointerdown', ['$event']) pointerdown(event: PointerEvent) {\n event.stopPropagation()\n this.drag.start(event)\n }\n\n px(value: number) {\n return `${value}px`\n }\n\n scale(v: number) {\n return v * this.containerWidth\n }\n\n invert(v: number) {\n return v / this.containerWidth\n }\n\n onDrag(dx: number, dy: number) {\n this.translate(this.invert(-dx), this.invert(-dy))\n }\n}\n","import { Component, Input, HostBinding } from '@angular/core';\n\n@Component({\n selector: 'minimap-mini-node',\n templateUrl: './mini-node.component.html',\n styleUrls: ['./mini-node.component.sass'],\n host: {\n 'data-testid': 'minimap-node'\n }\n})\nexport class MiniNodeComponent {\n @Input() left!: number\n @Input() top!: number\n @Input() width!: number\n @Input() height!: number\n\n @HostBinding('style.left') get styleLeft() {\n return this.px(this.left)\n }\n @HostBinding('style.top') get styleTop() {\n return this.px(this.top)\n }\n @HostBinding('style.width') get styleWidth() {\n return this.px(this.width)\n }\n @HostBinding('style.height') get styleHeight() {\n return this.px(this.height)\n }\n\n px(value: number) {\n return `${value}px`\n }\n\n}\n","<minimap-mini-node *ngFor=\"let node of nodes; trackBy: identifyMiniNode\" [left]=\"scale(node.left)\"\n [top]=\"scale(node.top)\" [width]=\"scale(node.width)\" [height]=\"scale(node.height)\">\n\n</minimap-mini-node>\n<minimap-mini-viewport [left]=\"viewport.left\" [top]=\"viewport.top\" [width]=\"viewport.width\" [height]=\"viewport.height\"\n [containerWidth]=\"el.nativeElement?.clientWidth\" [translate]=\"translate\"></minimap-mini-viewport>\n","import { Component, Input, ChangeDetectorRef, OnChanges, HostListener, ElementRef, HostBinding } from '@angular/core';\nimport { MinimapData } from '../../types';\n\n@Component({\n templateUrl: './minimap.component.html',\n styleUrls: ['./minimap.component.sass'],\n host: {\n 'data-testid': 'minimap'\n }\n})\nexport class MinimapComponent implements OnChanges {\n @Input() rendered!: () => void\n @Input() size!: number\n @Input() ratio!: MinimapData['ratio']\n @Input() nodes!: MinimapData['nodes']\n @Input() viewport!: MinimapData['viewport']\n @Input() translate!: MinimapData['translate']\n @Input() point!: MinimapData['point']\n\n @HostBinding('style.width') get width() {\n return this.px(this.size * this.ratio)\n }\n @HostBinding('style.height') get height() {\n return this.px(this.size)\n }\n\n @HostListener('pointerdown', ['$event']) pointerdown(event: PointerEvent) {\n event.stopPropagation()\n event.preventDefault()\n }\n\n @HostListener('dblclick', ['$event']) dblclick(event: MouseEvent) {\n event.stopPropagation()\n event.preventDefault()\n\n if (!this.el.nativeElement) return\n const box = this.el.nativeElement.getBoundingClientRect()\n const x = (event.clientX - box.left) / (this.size * this.ratio)\n const y = (event.clientY - box.top) / (this.size * this.ratio)\n\n this.point(x, y)\n }\n\n constructor(public el: ElementRef, private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n }\n\n px(value: number) {\n return `${value}px`\n }\n\n scale(value: number) {\n if (!this.el.nativeElement) return 0\n\n return value * this.el.nativeElement.clientWidth\n }\n\n identifyMiniNode(_: number, item: MinimapData['nodes'][number]) {\n return [item.top, item.left].join('_')\n }\n}\n","import { BaseSchemes } from 'rete';\n\nimport { RenderPreset } from '../types';\nimport { MinimapRender } from './types';\nimport { MinimapComponent } from './components/minimap/minimap.component';\n\nexport function setup<Schemes extends BaseSchemes, K extends MinimapRender>(props?: { size?: number }): RenderPreset<Schemes, K> {\n return {\n update(context) {\n if (context.data.type === 'minimap') {\n return {\n nodes: context.data.nodes,\n size: props?.size || 200,\n ratio: context.data.ratio,\n viewport: context.data.viewport,\n translate: context.data.translate,\n point: context.data.point\n }\n }\n return null\n },\n mount(context, plugin) {\n const parent = plugin.parentScope()\n const emit = parent.emit.bind(parent)\n const rendered = () => {\n emit({ type: 'rendered', data: context.data } as any)\n }\n\n if (context.data.type === 'minimap') {\n return {\n key: 'rete-minimap',\n component: MinimapComponent,\n props: {\n nodes: context.data.nodes,\n size: props?.size || 200,\n ratio: context.data.ratio,\n viewport: context.data.viewport,\n translate: context.data.translate,\n point: context.data.point,\n rendered\n }\n }\n }\n return null\n }\n }\n}\n","import { Component, Input, ChangeDetectorRef, OnChanges, HostListener, HostBinding, Output, EventEmitter } from '@angular/core';\nimport { Position } from '../../types';\nimport { useDrag } from '../../../../shared/drag'\n\nconst pinSize = 20\n\n@Component({\n selector: 'reroute-pin',\n template: '',\n styleUrls: ['./pin.component.sass'],\n host: {\n 'data-testid': 'pin'\n }\n})\nexport class PinComponent implements OnChanges {\n @Input() position!: Position\n @Input() selected?: boolean\n @Input() getPointer!: () => Position\n @Output() menu = new EventEmitter<void>()\n @Output() translate = new EventEmitter<{ dx: number, dy: number }>()\n @Output() down = new EventEmitter<void>()\n\n drag = useDrag((dx, dy) => {\n this.translate.emit({ dx, dy })\n }, () => this.getPointer())\n\n @HostBinding('class.selected') get _selected() {\n return this.selected\n }\n @HostBinding('style.top') get top() {\n return `${this.position.y - pinSize / 2}px`\n }\n @HostBinding('style.left') get left() {\n return `${this.position.x - pinSize / 2}px`\n }\n @HostListener('pointerdown', ['$event']) pointerdown(event: PointerEvent) {\n event.stopPropagation()\n event.preventDefault()\n\n this.drag.start(event)\n this.down.emit()\n }\n @HostListener('contextmenu', ['$event']) contextmenu(event: MouseEvent) {\n event.stopPropagation()\n event.preventDefault()\n\n this.menu.emit()\n }\n\n constructor(private cdr: ChangeDetectorRef) {\n // this.cdr.detach()\n }\n\n ngOnChanges(): void {\n // this.cdr.detectChanges()\n // requestAnimationFrame(() => this.rendered())\n }\n\n}\n","<reroute-pin *ngFor=\"let pin of pins; trackBy: track\" [position]=\"pin.position\" [selected]=\"pin.selected\"\n (menu)=\"menu && menu(pin.id)\" (translate)=\"translate && translate(pin.id, $event.dx, $event.dy)\"\n (down)=\"down && down(pin.id)\" [getPointer]=\"getPointer\"></reroute-pin>\n","import { Component, Input, ChangeDetectorRef, OnChanges } from '@angular/core';\nimport { Pin, PinData, Position } from '../../types';\n\n@Component({\n templateUrl: './pins.component.html'\n})\nexport class PinsComponent implements OnChanges {\n @Input() rendered!: () => void\n @Input() pins!: PinData['pins']\n @Input() down?: (id: string) => void\n @Input() translate?: (id: string, dx: number, dy: number) => void\n @Input() menu?: (id: string) => void\n @Input() getPointer?: () => Position\n\n constructor(private cdr: ChangeDetectorRef) {\n this.cdr.detach()\n }\n\n ngOnChanges(): void {\n this.cdr.detectChanges()\n requestAnimationFrame(() => this.rendered())\n }\n\n track(_: number, item: Pin) {\n return item.id\n }\n}\n","import { BaseSchemes } from 'rete';\nimport { BaseAreaPlugin } from 'rete-area-plugin';\n\nimport { RenderPreset } from '../types'\nimport { PinsRender } from './types';\nimport { PinsComponent } from './components/pins/pins.component';\n\ntype Props = {\n translate?: (id: string, dx: number, dy: number) => void\n contextMenu?: (id: string) => void\n pointerdown?: (id: string) => void\n}\n\nexport function setup<Schemes extends BaseSchemes, K extends PinsRender>(props?: Props): RenderPreset<Schemes, K> {\n const getProps = () => ({\n menu: props?.contextMenu || (() => null),\n translate: props?.translate || (() => null),\n down: props?.pointerdown || (() => null)\n })\n\n return {\n update(context) {\n if (context.data.type === 'reroute-pins') {\n return {\n ...getProps(),\n pins: context.data.data.pins\n }\n }\n return null\n },\n mount(context, plugin) {\n const area = plugin.parentScope<BaseAreaPlugin<Schemes, PinsRender>>(BaseAreaPlugin)\n const rendered = () => {\n area.emit({ type: 'rendered', data: context.data })\n }\n\n if (context.data.type === 'reroute-pins') {\n return {\n key: 'rete-reroute',\n component: PinsComponent,\n props: {\n ...getProps(),\n pins: context.data.data.pins,\n rendered,\n getPointer: () => area.area.pointer\n }\n }\n }\n return null\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { NodeComponent } from './presets/classic/components/node/node.component';\nimport { ConnectionComponent } from './presets/classic/components/connection/connection.component';\nimport { SocketComponent } from './presets/classic/components/socket/socket.component';\nimport { ConnectionWrapperComponent } from './presets/classic/components/connection/connection-wrapper.component';\nimport { ControlComponent } from './presets/classic/components/control/control.component';\nimport { RefDirective } from './ref';\n\n@NgModule({\n declarations: [\n RefDirective,\n NodeComponent,\n ConnectionComponent,\n ConnectionWrapperComponent,\n SocketComponent,\n ControlComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n RefDirective,\n NodeComponent,\n ConnectionComponent,\n ConnectionWrapperComponent,\n SocketComponent,\n ControlComponent\n ],\n entryComponents: [\n NodeComponent,\n ConnectionComponent,\n ConnectionWrapperComponent,\n SocketComponent,\n ControlComponent\n ]\n})\nexport class ReteModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { ContextMenuComponent } from './components/menu/menu.component'\nimport { ContextMenuSearchComponent } from './components/search/search.component'\nimport { ContextMenuItemComponent } from './components/item/item.component'\n\n@NgModule({\n declarations: [\n ContextMenuComponent,\n ContextMenuSearchComponent,\n ContextMenuItemComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n ContextMenuComponent,\n ContextMenuSearchComponent,\n ContextMenuItemComponent,\n ],\n entryComponents: [\n ContextMenuComponent\n ]\n})\nexport class ReteContextMenuModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MinimapComponent } from './components/minimap/minimap.component';\nimport { MiniViewportComponent } from './components/mini-viewport/mini-viewport.component';\nimport { MiniNodeComponent } from './components/mini-node/mini-node.component';\n\n@NgModule({\n declarations: [\n MinimapComponent,\n MiniViewportComponent,\n MiniNodeComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n MinimapComponent,\n MiniViewportComponent,\n MiniNodeComponent\n ],\n entryComponents: [\n MinimapComponent\n ]\n})\nexport class ReteMinimapModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PinsComponent } from './components/pins/pins.component';\nimport { PinComponent } from './components/pin/pin.component';\n\n@NgModule({\n declarations: [\n PinsComponent,\n PinComponent,\n ],\n imports: [\n CommonModule\n ],\n exports: [\n PinsComponent,\n PinComponent,\n ],\n entryComponents: [\n PinsComponent\n ]\n})\nexport class ReteRerouteModule {}\n","import { Injector } from '@angular/core';\nimport { BaseSchemes, CanAssignSignal, Scope } from 'rete'\nimport { createCustomElement } from '@angular/elements';\n\nimport { NgElement, NodeProps, Position, RenderSignal } from './types'\nimport { RenderPreset } from './presets/types';\n\ntype Item = { key: string, ngElement: NgElement }\n\ntype Renderer = {\n get(element: HTMLElement): Item | undefined\n mount(element: HTMLElement, key: string, component: any, injector: Injector, props: Record<string, unknown>): void\n update(item: Item, props: Record<string, unknown>): void\n unmount(element: HTMLElement): void\n}\nfunction getRenderer(): Renderer {\n const elements = new WeakMap<HTMLElement, Item>()\n\n return {\n get(element) {\n return elements.get(element)\n },\n mount(element, key, component, injector, props) {\n // LIMITATION: If an element is remounted with the same identifier, the component cannot be replaced\n const exists = customElements.get(key)\n\n if (!exists) {\n customElements.define(key, createCustomElement(component, { injector }))\n }\n\n const ngElement = document.createElement(key) as NodeProps & NgElement & typeof props\n\n Object.keys(props).forEach(key => {\n ngElement[key] = props[key]\n })\n\n element.appendChild(ngElement)\n elements.set(element, { key, ngElement })\n },\n update({ ngElement }, props) {\n Object.keys(props).forEach(key => {\n ngElement.ngElementStrategy.setInputValue(key, props[key])\n })\n ngElement.ngElementStrategy.setInputValue('seed', Math.random())\n },\n unmount(element) {\n const existing = elements.get(element)\n\n if (existing) {\n existing.ngElement.remove()\n elements.delete(element)\n }\n }\n }\n}\n\ntype Produces<Schemes extends BaseSchemes> =\n | { type: 'connectionpath', data: { payload: Schemes['Connection'], path?: string, points: Position[] } }\n\ntype Requires<Schemes extends BaseSchemes> =\n | RenderSignal<'node', { payload: Schemes['Node'] }>\n | RenderSignal<'connection', { payload: Schemes['Connection'], start?: Position, end?: Position }>\n | { type: 'unmount', data: { element: HTMLElement } }\n\nexport class AngularPlugin<Schemes extends BaseSchemes, T = Requires<Schemes>> extends Scope<Produces<Schemes>, [Requires<Schemes> | T]> {\n presets: RenderPreset<Schemes, T>[] = []\n renderer: Renderer\n owners = new WeakMap<HTMLElement, RenderPreset<Schemes, T>>()\n\n constructor(private params: { injector: Injector }) {\n super('angular-render')\n this.renderer = getRenderer()\n\n this.addPipe(context => {\n if (!context || typeof context !== 'object' || !('type' in context)) return context\n if (context.type === 'unmount') {\n this.unmount(context.data.element)\n } else if (context.type === 'render') {\n if ('filled' in context.data && context.data.filled) {\n return context\n }\n if (this.mount(context.data.element, context)) {\n return {\n ...context,\n data: {\n ...context.data,\n filled: true\n }\n } as typeof context\n }\n }\n return context\n })\n }\n\n setParent(scope: Scope<Requires<Schemes> | T>): void {\n super.setParent(scope)\n\n this.presets.forEach(preset => {\n if (preset.attach) preset.attach(this)\n })\n }\n\n\n private unmount(element: HTMLElement) {\n this.owners.delete(element)\n this.renderer.unmount(element)\n }\n\n private mount(element: HTMLElement, context: Requires<Schemes>) {\n const existing = this.renderer.get(element)\n\n if (existing) {\n this.presets.forEach(preset => {\n if (this.owners.get(element) !== preset) return\n const result = preset.update(context as unknown as Extract<T, { type: 'render' }>, this)\n\n if (result) {\n this.renderer.update(existing, result)\n }\n })\n return true\n }\n\n for (const preset of this.presets) {\n const result = preset.mount(context as unknown as Extract<T, { type: 'render' }>, this)\n\n if (!result) continue\n\n const { key, component, props } = result\n\n this.renderer.mount(element, key, component, this.params.injector, props)\n\n this.owners.set(element, preset)\n return true\n }\n return\n }\n\n public addPreset<K>(preset: RenderPreset<Schemes, CanAssignSignal<T, K> extends true ? K : 'Cannot apply preset. Provided signals are not compatible'>) {\n const local = preset as unknown as RenderPreset<Schemes, T>\n\n if (local.attach) local.attach(this)\n this.presets.push(local)\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i0","Directive","Input","_c0","Component","HostBinding","HostListener","setup","getDOMSocketPosition","loopConnectionPath","classicConnectionPath","getUID","ClassicPreset","EventEmitter","Output","BaseAreaPlugin","CommonModule","NgModule","elements","createCustomElement","Scope"],"mappings":"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"}
|