UNPKG

@obliczeniowo/elementary

Version:
1 lines 16.2 kB
{"version":3,"file":"obliczeniowo-elementary-connectors.mjs","sources":["../../../../projects/components/connectors/components/directional-connector/directional-connector.component.ts","../../../../projects/components/connectors/components/directional-connector/directional-connector.component.html","../../../../projects/components/connectors/components/relation-connector/relation-connector.component.ts","../../../../projects/components/connectors/components/relation-connector/relation-connector.component.html","../../../../projects/components/connectors/connectors.module.ts","../../../../projects/components/connectors/obliczeniowo-elementary-connectors.ts"],"sourcesContent":["import { Component, Input, ChangeDetectorRef, HostBinding, HostListener, SimpleChanges, EventEmitter, Output } from '@angular/core';\nimport { HtmlColor, IPoint2D } from '@obliczeniowo/elementary/classes';\nimport { MenuComponent, MenuItem } from '@obliczeniowo/elementary/menu';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'g[obl-directional-connector]',\n templateUrl: './directional-connector.component.html',\n styleUrls: ['./directional-connector.component.scss'],\n standalone: false\n})\nexport class DirectionalConnectorComponent {\n @Input() start?: IPoint2D;\n\n @Input() end?: IPoint2D;\n\n @Input() startAngle?: number;\n\n @Input() endAngle?: number;\n\n @Input() offset: number = 30;\n\n @Input() k: number = 6;\n\n @Input() color?: HtmlColor;\n\n @Input() startName?: string;\n\n @Input() endName?: string;\n\n @Input() menu?: MenuComponent;\n\n @HostBinding('class.highlight')\n @Input() highlight: boolean = false;\n\n @Output() remove = new EventEmitter<void>();\n\n protected menuItems: MenuItem[] = [\n {\n id: 1,\n text: 'Delete',\n command: 'delete',\n }\n ];\n\n protected subscription?: Subscription;\n\n @HostListener('mouseover') mouseOver() {\n if (this.menu) {\n this.menu.items = this.menuItems;\n }\n }\n\n constructor(public changes: ChangeDetectorRef) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.menu) {\n if (this.subscription && !this.subscription.closed) {\n this.subscription.unsubscribe();\n }\n if (this.menu) {\n this.subscription = this.menu.command.subscribe(command => {\n if (this.menu?.items !== this.menuItems) {\n return;\n }\n switch (command) {\n case 'delete':\n this.remove.emit();\n break;\n }\n this.menu.items = [];\n })\n }\n }\n }\n\n protected shape() {\n const { start, end, startAngle, endAngle, offset, k } = this;\n\n if (!start || !end || startAngle === undefined || endAngle === undefined) {\n return '';\n }\n\n const offsetPoint: IPoint2D = { x: offset * Math.cos(endAngle), y: offset * Math.sin(endAngle) };\n const offsetPointStart: IPoint2D = { x: offset * Math.cos(startAngle), y: offset * Math.sin(startAngle) };\n\n const startOffset: IPoint2D = { x: start.x + offsetPointStart.x, y: start.y + offsetPointStart.y };\n const endOffset: IPoint2D = { x: end.x - offsetPoint.x, y: end.y - offsetPoint.y }\n\n return 'M ' +\n start.x +\n ',' +\n start.y +\n ' ' + startOffset.x + ',' + startOffset.y + 'C ' +\n + (startOffset.x + offsetPointStart.x * k) + ',' + (startOffset.y + offsetPointStart.y * k) + ' ' +\n (endOffset.x - offsetPoint.x * k) +\n ',' +\n (endOffset.y - offsetPoint.y * k) + ' ' +\n endOffset.x +\n ',' +\n endOffset.y +\n ' L ' +\n end.x +\n ',' +\n end.y;\n }\n}\n","<svg:path\n [attr.d]=\"shape()\"\n [ngStyle]=\"{ stroke: color || 'gray' }\"\n></svg:path>\n","import { Component, Input, ChangeDetectorRef, Output, HostListener, ElementRef, SimpleChanges } from '@angular/core';\nimport { HtmlColor, IPoint2D } from '@obliczeniowo/elementary/classes';\nimport { Connector } from '../../models/connector.model';\nimport { MenuComponent } from '@obliczeniowo/elementary/menu';\nimport { Subscription } from 'rxjs';\nimport { ConnectorDataModel } from '../../models/connector-data.model';\nimport { BehaviorSubjectExt, EventEmitterExt } from '@obliczeniowo/elementary/rx-js-ext';\n\n@Component({\n selector: 'g[obl-relation-connector]',\n templateUrl: './relation-connector.component.html',\n styleUrls: ['./relation-connector.component.scss'],\n standalone: false\n})\nexport class RelationConnectorComponent {\n // left connector pos\n @Input() left?: IPoint2D;\n // right connector pos\n @Input() right?: IPoint2D;\n // connector required\n @Input() connector?: Connector;\n //\n @Input() highlighted?: string;\n //\n @Input() offset = 20;\n //\n @Input() defaultColor: HtmlColor = 'gray';\n //\n @Input() menu?: MenuComponent;\n //\n @Input() translations: { [english: string]: string } = {};\n //\n @Input() disabled?: boolean;\n //\n @Input() input = new BehaviorSubjectExt<ConnectorDataModel | undefined>(undefined);\n\n //\n @Output() clicked = new EventEmitterExt<Connector>()\n //\n @Output() remove = new EventEmitterExt<Connector>();\n //\n @Output() editColor = new EventEmitterExt<Connector>();\n\n protected menuItems = [\n {\n id: 1,\n text: 'Delete',\n command: 'delete',\n },\n {\n id: 2,\n text: 'Set color',\n command: 'set-color',\n }\n ]\n\n @HostListener('mouseover') onMouseOver() {\n if (this.menu && !this.disabled) {\n this.menu.items = this.menuItems;\n }\n }\n\n @HostListener('mouseleave') onMouseLeave() {\n if (this.menu && !this.menu?.opened) {\n this.menu.items = [];\n }\n }\n\n protected subscription!: Subscription;\n\n constructor(public change: ChangeDetectorRef, protected elementRef: ElementRef<HTMLElement>) {\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.disabled && !this.disabled && this.menu) {\n this.menu.items = [];\n }\n if (changes.menu && this.menu) {\n if (this.subscription && !this.subscription?.closed) {\n this.subscription.unsubscribe();\n }\n this.subscription = this.menu.command.subscribe((command) => {\n if (this.menu?.items !== this.menuItems) {\n return;\n }\n switch (command) {\n case 'delete': {\n this.remove.emit(\n this.connector\n )\n }\n break;\n case 'set-color': {\n this.editColor.emit(\n this.connector\n )\n }\n break;\n case 'on-close': {\n this.menu.items = [];\n }\n break;\n }\n })\n }\n }\n\n ngOnDestroy(): void {\n if (this.subscription && !this.subscription?.closed) {\n this.subscription.unsubscribe();\n }\n this.input.clearSubscriptions();\n }\n\n protected shape() {\n const { left, right, offset } = this;\n\n if (!left || !right) {\n return;\n }\n\n const size = (right.x - offset - left.x - offset) * 0.5;\n\n return 'm ' +\n left?.x +\n ',' +\n left?.y +\n ' h ' + offset +\n ' c ' + Math.abs(size) + ',0 ' + (size < 0 ? 3 * size : size) + ',' + (right.y - left.y) + ' ' +\n (right.x - offset - left.x - offset) +\n ',' +\n (right.y - left.y) +\n ' h ' + offset;\n }\n}\n","@if (left && right) {\n <svg:path\n [class.highlighted]=\"highlighted === connector?.left || highlighted === connector?.right\"\n [ngStyle]=\"{ stroke: connector?.color || defaultColor }\"\n [attr.d]=\"shape()\"\n (click)=\"clicked.emit(connector)\"\n ></svg:path>\n}\n","import { DirectionalConnectorComponent } from './components/directional-connector/directional-connector.component';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RelationConnectorComponent } from './components/relation-connector/relation-connector.component';\nimport { MenuModule } from '@obliczeniowo/elementary/menu';\n\n@NgModule({\n declarations: [\n DirectionalConnectorComponent,\n RelationConnectorComponent\n ],\n imports: [\n CommonModule,\n MenuModule\n ],\n exports: [\n DirectionalConnectorComponent,\n RelationConnectorComponent\n ]\n})\nexport class ConnectorsModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}