@visuallyjs/browser-ui-angular 1.2.6 → 1.2.7
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/esm2022/index.mjs +2 -0
- package/esm2022/lib/browser-ui-angular.module.mjs +14 -4
- package/esm2022/lib/charts/area.chart.component.mjs +12 -9
- package/esm2022/lib/charts/bar.chart.component.mjs +12 -9
- package/esm2022/lib/charts/bubble.chart.component.mjs +12 -9
- package/esm2022/lib/charts/column.chart.component.mjs +12 -9
- package/esm2022/lib/charts/line.chart.component.mjs +12 -9
- package/esm2022/lib/charts/pie.chart.component.mjs +12 -9
- package/esm2022/lib/charts/sankey.chart.component.mjs +36 -10
- package/esm2022/lib/charts/scatter.chart.component.mjs +12 -9
- package/esm2022/lib/charts/series.based.chart.component.mjs +43 -10
- package/esm2022/lib/charts/xy.chart.component.mjs +12 -9
- package/esm2022/lib/controls-component.mjs +2 -2
- package/esm2022/lib/edge.property.mappings.inspector.component.mjs +69 -0
- package/esm2022/lib/edge.type.picker.component.mjs +1 -0
- package/esm2022/lib/shape-properties-inspector.component.mjs +214 -0
- package/fesm2022/visuallyjs-browser-ui-angular.mjs +459 -91
- package/fesm2022/visuallyjs-browser-ui-angular.mjs.map +1 -1
- package/index.d.ts +2 -0
- package/lib/browser-ui-angular.module.d.ts +4 -2
- package/lib/charts/area.chart.component.d.ts +7 -7
- package/lib/charts/bar.chart.component.d.ts +7 -7
- package/lib/charts/bubble.chart.component.d.ts +7 -7
- package/lib/charts/column.chart.component.d.ts +8 -7
- package/lib/charts/line.chart.component.d.ts +7 -7
- package/lib/charts/pie.chart.component.d.ts +7 -7
- package/lib/charts/sankey.chart.component.d.ts +12 -9
- package/lib/charts/scatter.chart.component.d.ts +7 -7
- package/lib/charts/series.based.chart.component.d.ts +9 -6
- package/lib/charts/xy.chart.component.d.ts +7 -7
- package/lib/controls-component.d.ts +1 -5
- package/lib/diagram-palette-component.d.ts +1 -1
- package/lib/edge.property.mappings.inspector.component.d.ts +38 -0
- package/lib/palette.component.d.ts +9 -9
- package/lib/shape-properties-inspector.component.d.ts +31 -0
- package/lib/shape.palette.component.d.ts +3 -3
- package/package.json +2 -2
- package/visuallyjs-browser-ui-angular.tgz +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { signal, Injectable, inject, ElementRef, effect, Input, Component, ChangeDetectorRef, computed, Directive, input, EventEmitter, ViewContainerRef, NgZone, reflectComponentType, Output, TemplateRef, ViewChild, ContentChild, NgModule } from '@angular/core';
|
|
2
|
+
import { signal, Injectable, inject, ElementRef, effect, Input, Component, ChangeDetectorRef, computed, Directive, input, EventEmitter, ViewContainerRef, NgZone, reflectComponentType, Output, untracked, TemplateRef, ViewChild, ContentChild, NgModule } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
|
-
import { log, Surface, Paper, MiniviewPlugin, EVENT_EDGE_UPDATED, EVENT_NODE_UPDATED, EVENT_GROUP_UPDATED, EVENT_PORT_UPDATED, EVENT_ZOOM, BrowserUIModel, OVERLAY_TYPE_CUSTOM, ELEMENT_DIV, isGroup, extend, renderSurface, EVENT_PORT_ADDED, EVENT_DATA_LOAD_END, EVENT_EDGE_ADDED, EVENT_EDGE_REMOVED, EVENT_INTERNAL_CONNECTION, ShapeLibraryDefaults, ShapePalette, convertToMultilineText, DEFAULT_LABEL_FILL_RATIO, LassoPlugin, EVENT_SURFACE_MODE_CHANGED, EVENT_UNDOREDO_UPDATE, TRUE, FALSE, EVENT_SELECT, EVENT_DESELECT, EVENT_SELECTION_CLEARED, SURFACE_MODE_PAN, SURFACE_MODE_SELECT, supportsPathEditing, PAN_VIEW_BOX, PAN_PATH, LASSO_VIEW_BOX, LASSO_PATH, ZOOM_TO_FIT_VIEW_BOX, ZOOM_TO_FIT_PATH, ZOOM_IN_OUT_VIEW_BOX, ZOOM_IN_PATH, ZOOM_OUT_PATH, UNDO_VIEW_BOX, UNDO_PATH, REDO_VIEW_BOX, REDO_PATH, CLASS_CONTROLS_RESET_SELECTION, RESET_SELECTION_VIEW_BOX, RESET_SELECTION_PATH, CLEAR_VIEW_BOX, CLEAR_PATH, INSPECTOR_CONTEXT_EDGE_PROPERTY_MAPPINGS, EdgeTypePicker, Palette, SvgExportUI, ImageExportUI, CLASS_CONTROLS, CLASS_EXPORT_CONTROLS, INSPECTOR_CONTEXT_RECENT_COLORS, EVENT_CONTEXT_UPDATE, CLASS_COLOR_PICKER, CLASS_COLOR_PICKER_SWATCHES, CLASS_COLOR_PICKER_SWATCH, createDiagram, ColumnChart, BarChart, DiagramPalette, CategoryValueChart, LineChart, AreaChart, PieChart, ScatterChart, BubbleChart, SankeyChart, PopupHandler, CLASS_SURFACE_POPUP, renderPaper, BackgroundPlugin, SimpleBackground, TiledBackground, GeneratedGridBackground, Edge, Node, Group, Port, Inspector, EVENT_DATA_UPDATED, EVENT_GRAPH_CLEARED } from '@visuallyjs/browser-ui';
|
|
5
|
+
import { log, Surface, Paper, MiniviewPlugin, EVENT_EDGE_UPDATED, EVENT_NODE_UPDATED, EVENT_GROUP_UPDATED, EVENT_PORT_UPDATED, EVENT_ZOOM, BrowserUIModel, OVERLAY_TYPE_CUSTOM, ELEMENT_DIV, isGroup, extend, renderSurface, EVENT_PORT_ADDED, EVENT_DATA_LOAD_END, EVENT_EDGE_ADDED, EVENT_EDGE_REMOVED, EVENT_INTERNAL_CONNECTION, ShapeLibraryDefaults, ShapePalette, convertToMultilineText, DEFAULT_LABEL_FILL_RATIO, LassoPlugin, EVENT_SURFACE_MODE_CHANGED, EVENT_UNDOREDO_UPDATE, TRUE, FALSE, EVENT_SELECT, EVENT_DESELECT, EVENT_SELECTION_CLEARED, SURFACE_MODE_PAN, SURFACE_MODE_SELECT, supportsPathEditing, PAN_VIEW_BOX, PAN_PATH, LASSO_VIEW_BOX, LASSO_PATH, ZOOM_TO_FIT_VIEW_BOX, ZOOM_TO_FIT_PATH, ZOOM_IN_OUT_VIEW_BOX, ZOOM_IN_PATH, ZOOM_OUT_PATH, UNDO_VIEW_BOX, UNDO_PATH, REDO_VIEW_BOX, REDO_PATH, CLASS_CONTROLS_RESET_SELECTION, RESET_SELECTION_VIEW_BOX, RESET_SELECTION_PATH, CLEAR_VIEW_BOX, CLEAR_PATH, INSPECTOR_CONTEXT_EDGE_PROPERTY_MAPPINGS, EdgeTypePicker, Palette, SvgExportUI, ImageExportUI, CLASS_CONTROLS, CLASS_EXPORT_CONTROLS, INSPECTOR_CONTEXT_RECENT_COLORS, EVENT_CONTEXT_UPDATE, CLASS_COLOR_PICKER, CLASS_COLOR_PICKER_SWATCHES, CLASS_COLOR_PICKER_SWATCH, createDiagram, ColumnChart, BarChart, DiagramPalette, CategoryValueChart, LineChart, AreaChart, PieChart, ScatterChart, BubbleChart, SankeyChart, PopupHandler, CLASS_SURFACE_POPUP, renderPaper, BackgroundPlugin, SimpleBackground, TiledBackground, GeneratedGridBackground, isNode, isString, Edge, Node, Group, Port, Inspector, EVENT_DATA_UPDATED, EVENT_GRAPH_CLEARED } from '@visuallyjs/browser-ui';
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
class VisuallyJsService {
|
|
@@ -1297,13 +1297,13 @@ class ControlsComponent {
|
|
|
1297
1297
|
}
|
|
1298
1298
|
}
|
|
1299
1299
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ControlsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1300
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ControlsComponent, selector: "vjs-controls", inputs: { undoRedo: "undoRedo", zoomToExtents: "zoomToExtents", zoomButtons: "zoomButtons", clear: "clear", clearMessage: "clearMessage", buttons: "buttons", orientation: "orientation" }, ngImport: i0, template: "<div class=\"vjs-controls\" [attr.data-vjs-orientation]=\"orientation\">\n <i *ngIf=\"showPanButton\" class=\"vjs-pan-mode vjs-selected-mode\" data-mode=\"pan\" title=\"Pan Mode\" (click)=\"panMode()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"none\">\n <path d=\"M8 13v-7.5a1.5 1.5 0 0 1 3 0v6.5 M11 5.5v-2a1.5 1.5 0 1 1 3 0v8.5 M14 5.5a1.5 1.5 0 0 1 3 0v6.5 M17 7.5a1.5 1.5 0 0 1 3 0v8.5a6 6 0 0 1 -6 6h-2h.208a6 6 0 0 1 -5.012 -2.7a69.74 69.74 0 0 1 -.196 -.3c-.312 -.479 -1.407 -2.388 -3.286 -5.728a1.5 1.5 0 0 1 .536 -2.022a1.867 1.867 0 0 1 2.28 .28l1.47 1.47\"></path>\n </svg>\n </i>\n <i *ngIf=\"showLassoButton\" class=\"vjs-select-mode\" data-mode=\"select\" title=\"Select Mode\" (click)=\"selectMode()\">\n <svg fill=\"currentColor\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path d=\"M18.2848192,17.5777124 L20.8535534,20.1464466 C21.0488155,20.3417088 21.0488155,20.6582912 20.8535534,20.8535534 C20.6582912,21.0488155 20.3417088,21.0488155 20.1464466,20.8535534 L17.5777124,18.2848192 L15.9160251,20.7773501 C15.6899572,21.116452 15.1749357,21.0571624 15.0318354,20.6755617 L12.0318354,12.6755617 C11.8811067,12.2736185 12.2736185,11.8811067 12.6755617,12.0318354 L20.6755617,15.0318354 C21.0571624,15.1749357 21.116452,15.6899572 20.7773501,15.9160251 L18.2848192,17.5777124 L18.2848192,17.5777124 Z M17.2312404,17.0782479 L19.4104716,15.6254271 L13.3544004,13.3544004 L15.6254271,19.4104716 L17.0782479,17.2312404 C17.0974475,17.2011742 17.1201804,17.1727128 17.1464466,17.1464466 C17.1727128,17.1201804 17.2011742,17.0974475 17.2312404,17.0782479 L17.2312404,17.0782479 Z M5.5,3 C5.77614237,3 6,3.22385763 6,3.5 C6,3.77614237 5.77614237,4 5.5,4 C4.67157288,4 4,4.67157288 4,5.5 C4,5.77614237 3.77614237,6 3.5,6 C3.22385763,6 3,5.77614237 3,5.5 C3,4.11928813 4.11928813,3 5.5,3 Z M8.5,4 C8.22385763,4 8,3.77614237 8,3.5 C8,3.22385763 8.22385763,3 8.5,3 L10.5,3 C10.7761424,3 11,3.22385763 11,3.5 C11,3.77614237 10.7761424,4 10.5,4 L8.5,4 Z M13.5,4 C13.2238576,4 13,3.77614237 13,3.5 C13,3.22385763 13.2238576,3 13.5,3 L15.5,3 C15.7761424,3 16,3.22385763 16,3.5 C16,3.77614237 15.7761424,4 15.5,4 L13.5,4 Z M8.5,21 C8.22385763,21 8,20.7761424 8,20.5 C8,20.2238576 8.22385763,20 8.5,20 L10.5,20 C10.7761424,20 11,20.2238576 11,20.5 C11,20.7761424 10.7761424,21 10.5,21 L8.5,21 Z M3,8.5 C3,8.22385763 3.22385763,8 3.5,8 C3.77614237,8 4,8.22385763 4,8.5 L4,10.5 C4,10.7761424 3.77614237,11 3.5,11 C3.22385763,11 3,10.7761424 3,10.5 L3,8.5 Z M3,13.5 C3,13.2238576 3.22385763,13 3.5,13 C3.77614237,13 4,13.2238576 4,13.5 L4,15.5 C4,15.7761424 3.77614237,16 3.5,16 C3.22385763,16 3,15.7761424 3,15.5 L3,13.5 Z M3,18.5 C3,18.2238576 3.22385763,18 3.5,18 C3.77614237,18 4,18.2238576 4,18.5 C4,19.3284271 4.67157288,20 5.5,20 C5.77614237,20 6,20.2238576 6,20.5 C6,20.7761424 5.77614237,21 5.5,21 C4.11928813,21 3,19.8807119 3,18.5 Z M21,10.5 C21,10.7761424 20.7761424,11 20.5,11 C20.2238576,11 20,10.7761424 20,10.5 L20,8.5 C20,8.22385763 20.2238576,8 20.5,8 C20.7761424,8 21,8.22385763 21,8.5 L21,10.5 Z M21,5.5 C21,5.77614237 20.7761424,6 20.5,6 C20.2238576,6 20,5.77614237 20,5.5 C20,4.67157288 19.3284271,4 18.5,4 C18.2238576,4 18,3.77614237 18,3.5 C18,3.22385763 18.2238576,3 18.5,3 C19.8807119,3 21,4.11928813 21,5.5 Z\"></path>\n </svg>\n </i>\n\n <i *ngFor=\"let button of modeButtons\" data-mode=\"{{ button.mode }}\" class=\"{{ button.class }}\" title=\"{{ button.title }}\"></i>\n\n <i *ngIf=\"zoomToExtents\" class=\"vjs-zoom-to-fit\" data-reset=\"true\"title=\"Zoom To Fit\" (click)=\"zoomToFit()\">\n <svg viewBox=\"0 0 32 30\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z\"></path></svg>\n </i>\n\n <i *ngIf=\"zoomButtons\" class=\"vjs-zoom-in\" data-zoom-in=\"true\" title=\"Zoom In\" (click)=\"zoomIn()\">\n <svg viewBox=\"0 0 32 32\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M 13 6 L 13 20 M 6 13 L 20 13 M 22,22 L 30,30 M1, 13 a 12,12 0 1,0 24,0 a 12,12 0 1,0 -24,0\"></path></svg>\n </i>\n\n <i *ngIf=\"zoomButtons\" class=\"vjs-zoom-out\" data-zoom-out=\"true\" title=\"Zoom Out\" (click)=\"zoomOut()\">\n <svg viewBox=\"0 0 32 32\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M 6 13 L 20 13 M 22,22 L 30,30 M1, 13 a 12,12 0 1,0 24,0 a 12,12 0 1,0 -24,0\"></path></svg>\n </i>\n\n <i *ngIf=\"undoRedo\" class=\"vjs-undo\" data-undo=\"true\" title=\"Undo last action\" (click)=\"undo()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"none\"><path d=\"M3 7v6h6 M21 17a9 9 0 0 0-9-9 9 9 0 0 0-6 2.3L3 13\" stroke-width=\"2\"></path></svg>\n </i>\n <i *ngIf=\"undoRedo\" class=\"vjs-redo\" data-redo=\"true\" title=\"Redo last action\" (click)=\"redo()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"none\"><path d=\"M21 7v6h-6 M3 17a9 9 0 0 1 9-9 9 9 0 0 1 6 2.3L21 13\" stroke-width=\"2\"></path></svg>\n </i>\n <i class=\"vjs-controls-reset-selection\" title=\"Clear selection\" (click)=\"resetSelection()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M2,5 V2 H5 M9,2 H11 M13,2 H15 M19,2 H22 V5 M22,9 V11 M22,13 V15 M22,19 V22 H19 M15,22 H13 M11,22 H9 M5,22 H2 V19 M2,15 V13 M2,11 V9 M9,9 L15,15 M15,9 L9,15\"></path></svg>\n </i>\n <i *ngIf=\"clear\" class=\"vjs-clear-dataset\" [title]=\"clearMessage\" (click)=\"doClear()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"></path></svg>\n </i>\n <i *ngFor=\"let button of otherButtons\" class=\"{{ button.class }}\" title=\"{{ button.title }}\"></i>\n </div>", isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
1300
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: ControlsComponent, selector: "vjs-controls", inputs: { undoRedo: "undoRedo", zoomToExtents: "zoomToExtents", zoomButtons: "zoomButtons", clear: "clear", clearMessage: "clearMessage", buttons: "buttons", orientation: "orientation" }, ngImport: i0, template: "<div class=\"vjs-controls\" [attr.data-vjs-orientation]=\"orientation\" can-undo=\"false\" can-redo=\"false\">\n <i *ngIf=\"showPanButton\" class=\"vjs-pan-mode vjs-selected-mode\" data-mode=\"pan\" title=\"Pan Mode\" (click)=\"panMode()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"none\">\n <path d=\"M8 13v-7.5a1.5 1.5 0 0 1 3 0v6.5 M11 5.5v-2a1.5 1.5 0 1 1 3 0v8.5 M14 5.5a1.5 1.5 0 0 1 3 0v6.5 M17 7.5a1.5 1.5 0 0 1 3 0v8.5a6 6 0 0 1 -6 6h-2h.208a6 6 0 0 1 -5.012 -2.7a69.74 69.74 0 0 1 -.196 -.3c-.312 -.479 -1.407 -2.388 -3.286 -5.728a1.5 1.5 0 0 1 .536 -2.022a1.867 1.867 0 0 1 2.28 .28l1.47 1.47\"></path>\n </svg>\n </i>\n <i *ngIf=\"showLassoButton\" class=\"vjs-select-mode\" data-mode=\"select\" title=\"Select Mode\" (click)=\"selectMode()\">\n <svg fill=\"currentColor\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path d=\"M18.2848192,17.5777124 L20.8535534,20.1464466 C21.0488155,20.3417088 21.0488155,20.6582912 20.8535534,20.8535534 C20.6582912,21.0488155 20.3417088,21.0488155 20.1464466,20.8535534 L17.5777124,18.2848192 L15.9160251,20.7773501 C15.6899572,21.116452 15.1749357,21.0571624 15.0318354,20.6755617 L12.0318354,12.6755617 C11.8811067,12.2736185 12.2736185,11.8811067 12.6755617,12.0318354 L20.6755617,15.0318354 C21.0571624,15.1749357 21.116452,15.6899572 20.7773501,15.9160251 L18.2848192,17.5777124 L18.2848192,17.5777124 Z M17.2312404,17.0782479 L19.4104716,15.6254271 L13.3544004,13.3544004 L15.6254271,19.4104716 L17.0782479,17.2312404 C17.0974475,17.2011742 17.1201804,17.1727128 17.1464466,17.1464466 C17.1727128,17.1201804 17.2011742,17.0974475 17.2312404,17.0782479 L17.2312404,17.0782479 Z M5.5,3 C5.77614237,3 6,3.22385763 6,3.5 C6,3.77614237 5.77614237,4 5.5,4 C4.67157288,4 4,4.67157288 4,5.5 C4,5.77614237 3.77614237,6 3.5,6 C3.22385763,6 3,5.77614237 3,5.5 C3,4.11928813 4.11928813,3 5.5,3 Z M8.5,4 C8.22385763,4 8,3.77614237 8,3.5 C8,3.22385763 8.22385763,3 8.5,3 L10.5,3 C10.7761424,3 11,3.22385763 11,3.5 C11,3.77614237 10.7761424,4 10.5,4 L8.5,4 Z M13.5,4 C13.2238576,4 13,3.77614237 13,3.5 C13,3.22385763 13.2238576,3 13.5,3 L15.5,3 C15.7761424,3 16,3.22385763 16,3.5 C16,3.77614237 15.7761424,4 15.5,4 L13.5,4 Z M8.5,21 C8.22385763,21 8,20.7761424 8,20.5 C8,20.2238576 8.22385763,20 8.5,20 L10.5,20 C10.7761424,20 11,20.2238576 11,20.5 C11,20.7761424 10.7761424,21 10.5,21 L8.5,21 Z M3,8.5 C3,8.22385763 3.22385763,8 3.5,8 C3.77614237,8 4,8.22385763 4,8.5 L4,10.5 C4,10.7761424 3.77614237,11 3.5,11 C3.22385763,11 3,10.7761424 3,10.5 L3,8.5 Z M3,13.5 C3,13.2238576 3.22385763,13 3.5,13 C3.77614237,13 4,13.2238576 4,13.5 L4,15.5 C4,15.7761424 3.77614237,16 3.5,16 C3.22385763,16 3,15.7761424 3,15.5 L3,13.5 Z M3,18.5 C3,18.2238576 3.22385763,18 3.5,18 C3.77614237,18 4,18.2238576 4,18.5 C4,19.3284271 4.67157288,20 5.5,20 C5.77614237,20 6,20.2238576 6,20.5 C6,20.7761424 5.77614237,21 5.5,21 C4.11928813,21 3,19.8807119 3,18.5 Z M21,10.5 C21,10.7761424 20.7761424,11 20.5,11 C20.2238576,11 20,10.7761424 20,10.5 L20,8.5 C20,8.22385763 20.2238576,8 20.5,8 C20.7761424,8 21,8.22385763 21,8.5 L21,10.5 Z M21,5.5 C21,5.77614237 20.7761424,6 20.5,6 C20.2238576,6 20,5.77614237 20,5.5 C20,4.67157288 19.3284271,4 18.5,4 C18.2238576,4 18,3.77614237 18,3.5 C18,3.22385763 18.2238576,3 18.5,3 C19.8807119,3 21,4.11928813 21,5.5 Z\"></path>\n </svg>\n </i>\n\n <i *ngFor=\"let button of modeButtons\" data-mode=\"{{ button.mode }}\" class=\"{{ button.class }}\" title=\"{{ button.title }}\"></i>\n\n <i *ngIf=\"zoomToExtents\" class=\"vjs-zoom-to-fit\" data-reset=\"true\"title=\"Zoom To Fit\" (click)=\"zoomToFit()\">\n <svg viewBox=\"0 0 32 30\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z\"></path></svg>\n </i>\n\n <i *ngIf=\"zoomButtons\" class=\"vjs-zoom-in\" data-zoom-in=\"true\" title=\"Zoom In\" (click)=\"zoomIn()\">\n <svg viewBox=\"0 0 32 32\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M 13 6 L 13 20 M 6 13 L 20 13 M 22,22 L 30,30 M1, 13 a 12,12 0 1,0 24,0 a 12,12 0 1,0 -24,0\"></path></svg>\n </i>\n\n <i *ngIf=\"zoomButtons\" class=\"vjs-zoom-out\" data-zoom-out=\"true\" title=\"Zoom Out\" (click)=\"zoomOut()\">\n <svg viewBox=\"0 0 32 32\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M 6 13 L 20 13 M 22,22 L 30,30 M1, 13 a 12,12 0 1,0 24,0 a 12,12 0 1,0 -24,0\"></path></svg>\n </i>\n\n <i *ngIf=\"undoRedo\" class=\"vjs-undo\" data-undo=\"true\" title=\"Undo last action\" (click)=\"undo()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"none\"><path d=\"M3 7v6h6 M21 17a9 9 0 0 0-9-9 9 9 0 0 0-6 2.3L3 13\" stroke-width=\"2\"></path></svg>\n </i>\n <i *ngIf=\"undoRedo\" class=\"vjs-redo\" data-redo=\"true\" title=\"Redo last action\" (click)=\"redo()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"none\"><path d=\"M21 7v6h-6 M3 17a9 9 0 0 1 9-9 9 9 0 0 1 6 2.3L21 13\" stroke-width=\"2\"></path></svg>\n </i>\n <i class=\"vjs-controls-reset-selection\" title=\"Clear selection\" (click)=\"resetSelection()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M2,5 V2 H5 M9,2 H11 M13,2 H15 M19,2 H22 V5 M22,9 V11 M22,13 V15 M22,19 V22 H19 M15,22 H13 M11,22 H9 M5,22 H2 V19 M2,15 V13 M2,11 V9 M9,9 L15,15 M15,9 L9,15\"></path></svg>\n </i>\n <i *ngIf=\"clear\" class=\"vjs-clear-dataset\" [title]=\"clearMessage\" (click)=\"doClear()\">\n <svg viewBox=\"0 0 24 24\" stroke=\"currentColor\" fill=\"currentColor\"><path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z\"></path></svg>\n </i>\n <i *ngFor=\"let button of otherButtons\" class=\"{{ button.class }}\" title=\"{{ button.title }}\"></i>\n </div>", isInline: true, dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
1301
1301
|
}
|
|
1302
1302
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ControlsComponent, decorators: [{
|
|
1303
1303
|
type: Component,
|
|
1304
1304
|
args: [{
|
|
1305
1305
|
selector: "vjs-controls",
|
|
1306
|
-
template: `<div class="vjs-controls" [attr.data-vjs-orientation]="orientation">
|
|
1306
|
+
template: `<div class="vjs-controls" [attr.data-vjs-orientation]="orientation" ${ATTRIBUTE_CAN_UNDO}="false" ${ATTRIBUTE_CAN_REDO}="false">
|
|
1307
1307
|
<i *ngIf="showPanButton" class="vjs-pan-mode ${CLASS_SELECTED_MODE}" data-mode="${SURFACE_MODE_PAN}" title="Pan Mode" (click)="panMode()">
|
|
1308
1308
|
<svg viewBox="${PAN_VIEW_BOX}" stroke="currentColor" fill="none">
|
|
1309
1309
|
<path d="${PAN_PATH}"></path>
|
|
@@ -1379,6 +1379,7 @@ class EdgeTypePickerComponent {
|
|
|
1379
1379
|
if (inspector != null) {
|
|
1380
1380
|
this.initialised = true;
|
|
1381
1381
|
inspector.onChange(() => {
|
|
1382
|
+
this.edgeTypePicker.reset();
|
|
1382
1383
|
this.edgeTypePicker.select(this.propertyName, inspector.getValue(this.propertyName));
|
|
1383
1384
|
});
|
|
1384
1385
|
const current = inspector.getValue(this.propertyName) || '';
|
|
@@ -1739,7 +1740,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1739
1740
|
class SeriesBasedChartComponent {
|
|
1740
1741
|
_init(dataSource, data, url) {
|
|
1741
1742
|
this.$ngZone.runOutsideAngular(() => {
|
|
1742
|
-
const o = Object.assign({}, this.options);
|
|
1743
|
+
const o = Object.assign({}, this.options());
|
|
1743
1744
|
Object.assign(o, { dataSource });
|
|
1744
1745
|
this.chart = this.createChart(this.$el.nativeElement, o);
|
|
1745
1746
|
if (data) {
|
|
@@ -1751,6 +1752,45 @@ class SeriesBasedChartComponent {
|
|
|
1751
1752
|
});
|
|
1752
1753
|
}
|
|
1753
1754
|
constructor() {
|
|
1755
|
+
|
|
1756
|
+
this.data = input();
|
|
1757
|
+
|
|
1758
|
+
this.url = input();
|
|
1759
|
+
|
|
1760
|
+
this.options = input();
|
|
1761
|
+
this._dataEffect = effect(() => {
|
|
1762
|
+
const currentData = this.data();
|
|
1763
|
+
if (currentData) {
|
|
1764
|
+
if (this.chart) {
|
|
1765
|
+
this.chart.load({ data: currentData });
|
|
1766
|
+
}
|
|
1767
|
+
}
|
|
1768
|
+
});
|
|
1769
|
+
this._urlEffect = effect(() => {
|
|
1770
|
+
const currentUrl = this.url();
|
|
1771
|
+
if (currentUrl) {
|
|
1772
|
+
// Respond to changes in the url here.
|
|
1773
|
+
// For example, if you need to reload the model with new data:
|
|
1774
|
+
if (this.chart) {
|
|
1775
|
+
this.chart.load({ url: currentUrl });
|
|
1776
|
+
}
|
|
1777
|
+
}
|
|
1778
|
+
});
|
|
1779
|
+
this._optionsEffect = effect(() => {
|
|
1780
|
+
this.options(); // track options
|
|
1781
|
+
if (this.chart) {
|
|
1782
|
+
// options have changed, recreate the chart
|
|
1783
|
+
untracked(() => {
|
|
1784
|
+
this.chart.destroy();
|
|
1785
|
+
if (this.useModel) {
|
|
1786
|
+
this._init(this.$vjs.model(), null, null);
|
|
1787
|
+
}
|
|
1788
|
+
else {
|
|
1789
|
+
this._init(null, this.data(), this.url());
|
|
1790
|
+
}
|
|
1791
|
+
});
|
|
1792
|
+
}
|
|
1793
|
+
});
|
|
1754
1794
|
this.$el = inject(ElementRef);
|
|
1755
1795
|
this.$ngZone = inject(NgZone);
|
|
1756
1796
|
this.$vjs = inject(VisuallyJsService);
|
|
@@ -1766,7 +1806,7 @@ class SeriesBasedChartComponent {
|
|
|
1766
1806
|
|
|
1767
1807
|
ngAfterViewInit() {
|
|
1768
1808
|
if (!this.useModel) {
|
|
1769
|
-
this._init(null, this.data, this.url);
|
|
1809
|
+
this._init(null, this.data(), this.url());
|
|
1770
1810
|
}
|
|
1771
1811
|
}
|
|
1772
1812
|
ngOnDestroy() {
|
|
@@ -1777,23 +1817,26 @@ class SeriesBasedChartComponent {
|
|
|
1777
1817
|
}
|
|
1778
1818
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SeriesBasedChartComponent, decorators: [{
|
|
1779
1819
|
type: Injectable
|
|
1780
|
-
}], ctorParameters: () => [], propDecorators: {
|
|
1781
|
-
type: Input
|
|
1782
|
-
}], url: [{
|
|
1783
|
-
type: Input
|
|
1784
|
-
}], options: [{
|
|
1785
|
-
type: Input
|
|
1786
|
-
}], useModel: [{
|
|
1820
|
+
}], ctorParameters: () => [], propDecorators: { useModel: [{
|
|
1787
1821
|
type: Input
|
|
1788
1822
|
}] } });
|
|
1789
1823
|
|
|
1790
1824
|
|
|
1791
1825
|
class ColumnChartComponent extends SeriesBasedChartComponent {
|
|
1826
|
+
constructor() {
|
|
1827
|
+
super(...arguments);
|
|
1828
|
+
|
|
1829
|
+
this.data = input();
|
|
1830
|
+
|
|
1831
|
+
this.url = input();
|
|
1832
|
+
|
|
1833
|
+
this.options = input();
|
|
1834
|
+
}
|
|
1792
1835
|
createChart(el, options) {
|
|
1793
1836
|
return new ColumnChart(el, options);
|
|
1794
1837
|
}
|
|
1795
1838
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ColumnChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
1796
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
1839
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: ColumnChartComponent, selector: "vjs-column-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
1797
1840
|
}
|
|
1798
1841
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ColumnChartComponent, decorators: [{
|
|
1799
1842
|
type: Component,
|
|
@@ -1801,23 +1844,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1801
1844
|
selector: "vjs-column-chart",
|
|
1802
1845
|
template: `<div></div>`
|
|
1803
1846
|
}]
|
|
1804
|
-
}], propDecorators: {
|
|
1805
|
-
type: Input
|
|
1806
|
-
}], url: [{
|
|
1807
|
-
type: Input
|
|
1808
|
-
}], options: [{
|
|
1809
|
-
type: Input
|
|
1810
|
-
}], useModel: [{
|
|
1847
|
+
}], propDecorators: { useModel: [{
|
|
1811
1848
|
type: Input
|
|
1812
1849
|
}] } });
|
|
1813
1850
|
|
|
1814
1851
|
|
|
1815
1852
|
class BarChartComponent extends SeriesBasedChartComponent {
|
|
1853
|
+
constructor() {
|
|
1854
|
+
super(...arguments);
|
|
1855
|
+
|
|
1856
|
+
this.data = input();
|
|
1857
|
+
|
|
1858
|
+
this.url = input();
|
|
1859
|
+
|
|
1860
|
+
this.options = input();
|
|
1861
|
+
}
|
|
1816
1862
|
createChart(el, options) {
|
|
1817
1863
|
return new BarChart(el, options);
|
|
1818
1864
|
}
|
|
1819
1865
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BarChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
1820
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
1866
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: BarChartComponent, selector: "vjs-bar-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
1821
1867
|
}
|
|
1822
1868
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BarChartComponent, decorators: [{
|
|
1823
1869
|
type: Component,
|
|
@@ -1825,13 +1871,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1825
1871
|
selector: "vjs-bar-chart",
|
|
1826
1872
|
template: `<div></div>`
|
|
1827
1873
|
}]
|
|
1828
|
-
}], propDecorators: {
|
|
1829
|
-
type: Input
|
|
1830
|
-
}], url: [{
|
|
1831
|
-
type: Input
|
|
1832
|
-
}], options: [{
|
|
1833
|
-
type: Input
|
|
1834
|
-
}], useModel: [{
|
|
1874
|
+
}], propDecorators: { useModel: [{
|
|
1835
1875
|
type: Input
|
|
1836
1876
|
}] } });
|
|
1837
1877
|
|
|
@@ -1947,11 +1987,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1947
1987
|
|
|
1948
1988
|
|
|
1949
1989
|
class XYChartComponent extends SeriesBasedChartComponent {
|
|
1990
|
+
constructor() {
|
|
1991
|
+
super(...arguments);
|
|
1992
|
+
|
|
1993
|
+
this.data = input();
|
|
1994
|
+
|
|
1995
|
+
this.url = input();
|
|
1996
|
+
|
|
1997
|
+
this.options = input();
|
|
1998
|
+
}
|
|
1950
1999
|
createChart(el, options) {
|
|
1951
2000
|
return new CategoryValueChart(el, options);
|
|
1952
2001
|
}
|
|
1953
2002
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: XYChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
1954
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2003
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: XYChartComponent, selector: "vjs-xy-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
1955
2004
|
}
|
|
1956
2005
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: XYChartComponent, decorators: [{
|
|
1957
2006
|
type: Component,
|
|
@@ -1959,23 +2008,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1959
2008
|
selector: "vjs-xy-chart",
|
|
1960
2009
|
template: `<div></div>`
|
|
1961
2010
|
}]
|
|
1962
|
-
}], propDecorators: {
|
|
1963
|
-
type: Input
|
|
1964
|
-
}], url: [{
|
|
1965
|
-
type: Input
|
|
1966
|
-
}], options: [{
|
|
1967
|
-
type: Input
|
|
1968
|
-
}], useModel: [{
|
|
2011
|
+
}], propDecorators: { useModel: [{
|
|
1969
2012
|
type: Input
|
|
1970
2013
|
}] } });
|
|
1971
2014
|
|
|
1972
2015
|
|
|
1973
2016
|
class LineChartComponent extends SeriesBasedChartComponent {
|
|
2017
|
+
constructor() {
|
|
2018
|
+
super(...arguments);
|
|
2019
|
+
|
|
2020
|
+
this.data = input();
|
|
2021
|
+
|
|
2022
|
+
this.url = input();
|
|
2023
|
+
|
|
2024
|
+
this.options = input();
|
|
2025
|
+
}
|
|
1974
2026
|
createChart(el, options) {
|
|
1975
2027
|
return new LineChart(el, options);
|
|
1976
2028
|
}
|
|
1977
2029
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LineChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
1978
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2030
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: LineChartComponent, selector: "vjs-line-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
1979
2031
|
}
|
|
1980
2032
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LineChartComponent, decorators: [{
|
|
1981
2033
|
type: Component,
|
|
@@ -1983,23 +2035,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
1983
2035
|
selector: "vjs-line-chart",
|
|
1984
2036
|
template: `<div></div>`
|
|
1985
2037
|
}]
|
|
1986
|
-
}], propDecorators: {
|
|
1987
|
-
type: Input
|
|
1988
|
-
}], url: [{
|
|
1989
|
-
type: Input
|
|
1990
|
-
}], options: [{
|
|
1991
|
-
type: Input
|
|
1992
|
-
}], useModel: [{
|
|
2038
|
+
}], propDecorators: { useModel: [{
|
|
1993
2039
|
type: Input
|
|
1994
2040
|
}] } });
|
|
1995
2041
|
|
|
1996
2042
|
|
|
1997
2043
|
class AreaChartComponent extends SeriesBasedChartComponent {
|
|
2044
|
+
constructor() {
|
|
2045
|
+
super(...arguments);
|
|
2046
|
+
|
|
2047
|
+
this.data = input();
|
|
2048
|
+
|
|
2049
|
+
this.url = input();
|
|
2050
|
+
|
|
2051
|
+
this.options = input();
|
|
2052
|
+
}
|
|
1998
2053
|
createChart(el, options) {
|
|
1999
2054
|
return new AreaChart(el, options);
|
|
2000
2055
|
}
|
|
2001
2056
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AreaChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2002
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2057
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: AreaChartComponent, selector: "vjs-area-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
2003
2058
|
}
|
|
2004
2059
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AreaChartComponent, decorators: [{
|
|
2005
2060
|
type: Component,
|
|
@@ -2007,23 +2062,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2007
2062
|
selector: "vjs-area-chart",
|
|
2008
2063
|
template: `<div></div>`
|
|
2009
2064
|
}]
|
|
2010
|
-
}], propDecorators: {
|
|
2011
|
-
type: Input
|
|
2012
|
-
}], url: [{
|
|
2013
|
-
type: Input
|
|
2014
|
-
}], options: [{
|
|
2015
|
-
type: Input
|
|
2016
|
-
}], useModel: [{
|
|
2065
|
+
}], propDecorators: { useModel: [{
|
|
2017
2066
|
type: Input
|
|
2018
2067
|
}] } });
|
|
2019
2068
|
|
|
2020
2069
|
|
|
2021
2070
|
class PieChartComponent extends SeriesBasedChartComponent {
|
|
2071
|
+
constructor() {
|
|
2072
|
+
super(...arguments);
|
|
2073
|
+
|
|
2074
|
+
this.data = input();
|
|
2075
|
+
|
|
2076
|
+
this.url = input();
|
|
2077
|
+
|
|
2078
|
+
this.options = input();
|
|
2079
|
+
}
|
|
2022
2080
|
createChart(el, options) {
|
|
2023
2081
|
return new PieChart(el, options);
|
|
2024
2082
|
}
|
|
2025
2083
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PieChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2026
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2084
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: PieChartComponent, selector: "vjs-pie-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
2027
2085
|
}
|
|
2028
2086
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PieChartComponent, decorators: [{
|
|
2029
2087
|
type: Component,
|
|
@@ -2031,23 +2089,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2031
2089
|
selector: "vjs-pie-chart",
|
|
2032
2090
|
template: `<div></div>`
|
|
2033
2091
|
}]
|
|
2034
|
-
}], propDecorators: {
|
|
2035
|
-
type: Input
|
|
2036
|
-
}], url: [{
|
|
2037
|
-
type: Input
|
|
2038
|
-
}], options: [{
|
|
2039
|
-
type: Input
|
|
2040
|
-
}], useModel: [{
|
|
2092
|
+
}], propDecorators: { useModel: [{
|
|
2041
2093
|
type: Input
|
|
2042
2094
|
}] } });
|
|
2043
2095
|
|
|
2044
2096
|
|
|
2045
2097
|
class ScatterChartComponent extends SeriesBasedChartComponent {
|
|
2098
|
+
constructor() {
|
|
2099
|
+
super(...arguments);
|
|
2100
|
+
|
|
2101
|
+
this.data = input();
|
|
2102
|
+
|
|
2103
|
+
this.url = input();
|
|
2104
|
+
|
|
2105
|
+
this.options = input();
|
|
2106
|
+
}
|
|
2046
2107
|
createChart(el, options) {
|
|
2047
2108
|
return new ScatterChart(el, options);
|
|
2048
2109
|
}
|
|
2049
2110
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ScatterChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2050
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2111
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: ScatterChartComponent, selector: "vjs-scatter-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
2051
2112
|
}
|
|
2052
2113
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ScatterChartComponent, decorators: [{
|
|
2053
2114
|
type: Component,
|
|
@@ -2055,23 +2116,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2055
2116
|
selector: "vjs-scatter-chart",
|
|
2056
2117
|
template: `<div></div>`
|
|
2057
2118
|
}]
|
|
2058
|
-
}], propDecorators: {
|
|
2059
|
-
type: Input
|
|
2060
|
-
}], url: [{
|
|
2061
|
-
type: Input
|
|
2062
|
-
}], options: [{
|
|
2063
|
-
type: Input
|
|
2064
|
-
}], useModel: [{
|
|
2119
|
+
}], propDecorators: { useModel: [{
|
|
2065
2120
|
type: Input
|
|
2066
2121
|
}] } });
|
|
2067
2122
|
|
|
2068
2123
|
|
|
2069
2124
|
class BubbleChartComponent extends SeriesBasedChartComponent {
|
|
2125
|
+
constructor() {
|
|
2126
|
+
super(...arguments);
|
|
2127
|
+
|
|
2128
|
+
this.data = input();
|
|
2129
|
+
|
|
2130
|
+
this.url = input();
|
|
2131
|
+
|
|
2132
|
+
this.options = input();
|
|
2133
|
+
}
|
|
2070
2134
|
createChart(el, options) {
|
|
2071
2135
|
return new BubbleChart(el, options);
|
|
2072
2136
|
}
|
|
2073
2137
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BubbleChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
2074
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2138
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: BubbleChartComponent, selector: "vjs-bubble-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
2075
2139
|
}
|
|
2076
2140
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BubbleChartComponent, decorators: [{
|
|
2077
2141
|
type: Component,
|
|
@@ -2079,19 +2143,45 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2079
2143
|
selector: "vjs-bubble-chart",
|
|
2080
2144
|
template: `<div></div>`
|
|
2081
2145
|
}]
|
|
2082
|
-
}], propDecorators: {
|
|
2083
|
-
type: Input
|
|
2084
|
-
}], url: [{
|
|
2085
|
-
type: Input
|
|
2086
|
-
}], options: [{
|
|
2087
|
-
type: Input
|
|
2088
|
-
}], useModel: [{
|
|
2146
|
+
}], propDecorators: { useModel: [{
|
|
2089
2147
|
type: Input
|
|
2090
2148
|
}] } });
|
|
2091
2149
|
|
|
2092
2150
|
|
|
2093
2151
|
class SankeyChartComponent {
|
|
2094
2152
|
constructor() {
|
|
2153
|
+
|
|
2154
|
+
this.csvData = input();
|
|
2155
|
+
|
|
2156
|
+
this.jsonData = input();
|
|
2157
|
+
|
|
2158
|
+
this.url = input();
|
|
2159
|
+
this._dataEffect = effect(() => {
|
|
2160
|
+
const currentData = this.jsonData();
|
|
2161
|
+
if (currentData) {
|
|
2162
|
+
if (this.chart) {
|
|
2163
|
+
this.chart.load({ jsonData: currentData });
|
|
2164
|
+
}
|
|
2165
|
+
}
|
|
2166
|
+
});
|
|
2167
|
+
this._urlEffect = effect(() => {
|
|
2168
|
+
const currentUrl = this.url();
|
|
2169
|
+
if (currentUrl) {
|
|
2170
|
+
// Respond to changes in the url here.
|
|
2171
|
+
// For example, if you need to reload the model with new data:
|
|
2172
|
+
if (this.chart) {
|
|
2173
|
+
this.chart.load({ url: currentUrl });
|
|
2174
|
+
}
|
|
2175
|
+
}
|
|
2176
|
+
});
|
|
2177
|
+
this._csvDataEffect = effect(() => {
|
|
2178
|
+
const currentData = this.csvData();
|
|
2179
|
+
if (currentData) {
|
|
2180
|
+
if (this.chart) {
|
|
2181
|
+
this.chart.load({ csvData: currentData });
|
|
2182
|
+
}
|
|
2183
|
+
}
|
|
2184
|
+
});
|
|
2095
2185
|
this.$el = inject(ElementRef);
|
|
2096
2186
|
this.$ngZone = inject(NgZone);
|
|
2097
2187
|
this.$vjs = inject(VisuallyJsService);
|
|
@@ -2126,7 +2216,7 @@ class SankeyChartComponent {
|
|
|
2126
2216
|
|
|
2127
2217
|
ngAfterViewInit() {
|
|
2128
2218
|
if (!this.useModel) {
|
|
2129
|
-
this._init(null, this.csvData, this.jsonData, this.url);
|
|
2219
|
+
this._init(null, this.csvData(), this.jsonData(), this.url());
|
|
2130
2220
|
}
|
|
2131
2221
|
}
|
|
2132
2222
|
ngOnChanges(changes) {
|
|
@@ -2140,7 +2230,7 @@ class SankeyChartComponent {
|
|
|
2140
2230
|
this.chart?.destroy();
|
|
2141
2231
|
}
|
|
2142
2232
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SankeyChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2143
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2233
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.12", type: SankeyChartComponent, selector: "vjs-sankey-chart", inputs: { csvData: { classPropertyName: "csvData", publicName: "csvData", isSignal: true, isRequired: false, transformFunction: null }, jsonData: { classPropertyName: "jsonData", publicName: "jsonData", isSignal: true, isRequired: false, transformFunction: null }, url: { classPropertyName: "url", publicName: "url", isSignal: true, isRequired: false, transformFunction: null }, interactive: { classPropertyName: "interactive", publicName: "interactive", isSignal: false, isRequired: false, transformFunction: null }, pivot: { classPropertyName: "pivot", publicName: "pivot", isSignal: false, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: false, isRequired: false, transformFunction: null }, useModel: { classPropertyName: "useModel", publicName: "useModel", isSignal: false, isRequired: false, transformFunction: null } }, usesOnChanges: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
|
|
2144
2234
|
}
|
|
2145
2235
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SankeyChartComponent, decorators: [{
|
|
2146
2236
|
type: Component,
|
|
@@ -2148,13 +2238,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2148
2238
|
selector: "vjs-sankey-chart",
|
|
2149
2239
|
template: `<div></div>`
|
|
2150
2240
|
}]
|
|
2151
|
-
}], ctorParameters: () => [], propDecorators: {
|
|
2152
|
-
type: Input
|
|
2153
|
-
}], jsonData: [{
|
|
2154
|
-
type: Input
|
|
2155
|
-
}], url: [{
|
|
2156
|
-
type: Input
|
|
2157
|
-
}], interactive: [{
|
|
2241
|
+
}], ctorParameters: () => [], propDecorators: { interactive: [{
|
|
2158
2242
|
type: Input
|
|
2159
2243
|
}], pivot: [{
|
|
2160
2244
|
type: Input
|
|
@@ -2824,6 +2908,282 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2824
2908
|
}] } });
|
|
2825
2909
|
|
|
2826
2910
|
|
|
2911
|
+
class EdgePropertyMappingsInspectorComponent {
|
|
2912
|
+
constructor() {
|
|
2913
|
+
this.$vjs = inject(VisuallyJsService);
|
|
2914
|
+
this._inspector = this.$vjs.inspector;
|
|
2915
|
+
}
|
|
2916
|
+
get cls() {
|
|
2917
|
+
return this.cssClass || "vjs-inspector-section";
|
|
2918
|
+
}
|
|
2919
|
+
resolveMappings() {
|
|
2920
|
+
if (this.mappings) {
|
|
2921
|
+
return this.mappings;
|
|
2922
|
+
}
|
|
2923
|
+
else {
|
|
2924
|
+
const mappings = this._inspector().getFromContext(INSPECTOR_CONTEXT_EDGE_PROPERTY_MAPPINGS);
|
|
2925
|
+
return mappings || this._inspector().$ui.$getEdgePropertyMappings();
|
|
2926
|
+
}
|
|
2927
|
+
}
|
|
2928
|
+
toList(pm) {
|
|
2929
|
+
const p = pm.property;
|
|
2930
|
+
return Array.isArray(p) ? p : [p];
|
|
2931
|
+
}
|
|
2932
|
+
getPropertyKey(pm) {
|
|
2933
|
+
return this.toList(pm).join(" ");
|
|
2934
|
+
}
|
|
2935
|
+
getName(pm) {
|
|
2936
|
+
return this.getPropertyName ? this.getPropertyName(pm) : pm.name || this.getPropertyKey(pm);
|
|
2937
|
+
}
|
|
2938
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EdgePropertyMappingsInspectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2939
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: EdgePropertyMappingsInspectorComponent, selector: "vjs-edge-properties-inspector", inputs: { getPropertyName: "getPropertyName", showName: "showName", cssClass: "cssClass", mappings: "mappings" }, ngImport: i0, template: `
|
|
2940
|
+
@for (pm of resolveMappings(); track getPropertyKey(pm)) {
|
|
2941
|
+
<div [class]="cls">
|
|
2942
|
+
@if (showName !== false) {
|
|
2943
|
+
<div>{{ getName(pm) }}</div>
|
|
2944
|
+
}
|
|
2945
|
+
<vjs-edge-type [propertyName]="getPropertyKey(pm)"></vjs-edge-type>
|
|
2946
|
+
</div>
|
|
2947
|
+
}
|
|
2948
|
+
`, isInline: true, dependencies: [{ kind: "component", type: EdgeTypePickerComponent, selector: "vjs-edge-type", inputs: ["propertyName", "edgeMappings"], outputs: ["changeEvent"] }] }); }
|
|
2949
|
+
}
|
|
2950
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: EdgePropertyMappingsInspectorComponent, decorators: [{
|
|
2951
|
+
type: Component,
|
|
2952
|
+
args: [{
|
|
2953
|
+
selector: "vjs-edge-properties-inspector",
|
|
2954
|
+
template: `
|
|
2955
|
+
@for (pm of resolveMappings(); track getPropertyKey(pm)) {
|
|
2956
|
+
<div [class]="cls">
|
|
2957
|
+
@if (showName !== false) {
|
|
2958
|
+
<div>{{ getName(pm) }}</div>
|
|
2959
|
+
}
|
|
2960
|
+
<vjs-edge-type [propertyName]="getPropertyKey(pm)"></vjs-edge-type>
|
|
2961
|
+
</div>
|
|
2962
|
+
}
|
|
2963
|
+
`
|
|
2964
|
+
}]
|
|
2965
|
+
}], propDecorators: { getPropertyName: [{
|
|
2966
|
+
type: Input
|
|
2967
|
+
}], showName: [{
|
|
2968
|
+
type: Input
|
|
2969
|
+
}], cssClass: [{
|
|
2970
|
+
type: Input
|
|
2971
|
+
}], mappings: [{
|
|
2972
|
+
type: Input
|
|
2973
|
+
}] } });
|
|
2974
|
+
|
|
2975
|
+
const MAX_RADIOS = 7;
|
|
2976
|
+
const TRUE_FALSE = ["True", "False"];
|
|
2977
|
+
|
|
2978
|
+
class ShapePropertiesInspectorComponent {
|
|
2979
|
+
constructor() {
|
|
2980
|
+
|
|
2981
|
+
this.vertex = null;
|
|
2982
|
+
this.$vjs = inject(VisuallyJsService);
|
|
2983
|
+
this._inspector = this.$vjs.inspector;
|
|
2984
|
+
}
|
|
2985
|
+
get currentMaxRadios() {
|
|
2986
|
+
return this.maxRadios == null ? MAX_RADIOS : this.maxRadios;
|
|
2987
|
+
}
|
|
2988
|
+
get shapeDef() {
|
|
2989
|
+
if (this._inspector() == null || this.vertex == null || !isNode(this.vertex)) {
|
|
2990
|
+
return null;
|
|
2991
|
+
}
|
|
2992
|
+
const { type, category } = this.vertex.data;
|
|
2993
|
+
if (!type || !category) {
|
|
2994
|
+
return null;
|
|
2995
|
+
}
|
|
2996
|
+
const shapeLibrary = this._inspector().$ui.getShapeLibrary();
|
|
2997
|
+
const shapeSet = shapeLibrary.getShapeSet(category);
|
|
2998
|
+
if (!shapeSet) {
|
|
2999
|
+
return null;
|
|
3000
|
+
}
|
|
3001
|
+
return shapeSet.shapes.find(s => s.type === type);
|
|
3002
|
+
}
|
|
3003
|
+
getBooleanLabel(prop, value) {
|
|
3004
|
+
const labels = prop.booleanLabels || TRUE_FALSE;
|
|
3005
|
+
return labels[value ? 0 : 1];
|
|
3006
|
+
}
|
|
3007
|
+
getShapePropertyValueLabel(v) {
|
|
3008
|
+
return isString(v) ? v : v.label;
|
|
3009
|
+
}
|
|
3010
|
+
getShapePropertyValueValue(v) {
|
|
3011
|
+
return isString(v) ? v : v.value;
|
|
3012
|
+
}
|
|
3013
|
+
isBoolean(prop) {
|
|
3014
|
+
return prop.type === 'boolean';
|
|
3015
|
+
}
|
|
3016
|
+
hasValues(prop) {
|
|
3017
|
+
return prop.values && prop.values.length > 0;
|
|
3018
|
+
}
|
|
3019
|
+
useRadio(prop) {
|
|
3020
|
+
return this.hasValues(prop) && prop.editor !== 'select' && prop.values.length <= this.currentMaxRadios;
|
|
3021
|
+
}
|
|
3022
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShapePropertiesInspectorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3023
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.12", type: ShapePropertiesInspectorComponent, selector: "vjs-shape-properties-inspector", inputs: { vertex: "vertex", maxRadios: "maxRadios" }, ngImport: i0, template: `
|
|
3024
|
+
@if (shapeDef && shapeDef.properties) {
|
|
3025
|
+
@for (prop of shapeDef.properties; track prop.id) {
|
|
3026
|
+
|
|
3027
|
+
<div class="vjs-inspector-field">
|
|
3028
|
+
@if (!isBoolean(prop) || prop.editor === 'select' || prop.editor === 'radio') {
|
|
3029
|
+
<label class="vjs-inspector-property-label">{{ prop.label || prop.id }}</label>
|
|
3030
|
+
}
|
|
3031
|
+
|
|
3032
|
+
@if (prop.type === 'string') {
|
|
3033
|
+
@if (hasValues(prop)) {
|
|
3034
|
+
@if (useRadio(prop)) {
|
|
3035
|
+
<div class="vjs-radio-group">
|
|
3036
|
+
@for (v of prop.values; track getShapePropertyValueLabel(v)) {
|
|
3037
|
+
<label>
|
|
3038
|
+
<input type="radio" [name]="prop.id" [attr.vjs-att]="prop.id" [value]="getShapePropertyValueValue(v)" /> {{ getShapePropertyValueLabel(v) }}
|
|
3039
|
+
</label>
|
|
3040
|
+
}
|
|
3041
|
+
</div>
|
|
3042
|
+
} @else {
|
|
3043
|
+
<select [attr.vjs-att]="prop.id">
|
|
3044
|
+
@for (v of prop.values; track getShapePropertyValueLabel(v)) {
|
|
3045
|
+
<option [value]="getShapePropertyValueValue(v)">{{ getShapePropertyValueLabel(v) }}</option>
|
|
3046
|
+
}
|
|
3047
|
+
</select>
|
|
3048
|
+
}
|
|
3049
|
+
} @else {
|
|
3050
|
+
<input type="text" [attr.vjs-att]="prop.id" [placeholder]="prop.description" />
|
|
3051
|
+
}
|
|
3052
|
+
} @else if (prop.type === 'number') {
|
|
3053
|
+
@if (hasValues(prop)) {
|
|
3054
|
+
@if (useRadio(prop)) {
|
|
3055
|
+
<div class="vjs-radio-group">
|
|
3056
|
+
@for (v of prop.values; track getShapePropertyValueLabel(v)) {
|
|
3057
|
+
<label>
|
|
3058
|
+
<input type="radio" [attr.vjs-att]="prop.id" [value]="getShapePropertyValueValue(v)" /> {{ getShapePropertyValueLabel(v) }}
|
|
3059
|
+
</label>
|
|
3060
|
+
}
|
|
3061
|
+
</div>
|
|
3062
|
+
} @else {
|
|
3063
|
+
<select [attr.vjs-att]="prop.id">
|
|
3064
|
+
@for (v of prop.values; track getShapePropertyValueLabel(v)) {
|
|
3065
|
+
<option [value]="getShapePropertyValueValue(v)">{{ getShapePropertyValueLabel(v) }}</option>
|
|
3066
|
+
}
|
|
3067
|
+
</select>
|
|
3068
|
+
}
|
|
3069
|
+
} @else {
|
|
3070
|
+
<input type="number" [attr.vjs-att]="prop.id" [placeholder]="prop.description" [attr.min]="prop.min" [attr.max]="prop.max" />
|
|
3071
|
+
}
|
|
3072
|
+
} @else if (isBoolean(prop)) {
|
|
3073
|
+
@if (prop.editor === 'select') {
|
|
3074
|
+
<select [attr.vjs-att]="prop.id" vjs-datatype="boolean">
|
|
3075
|
+
<option value=""></option>
|
|
3076
|
+
<option value="true">{{ getBooleanLabel(prop, true) }}</option>
|
|
3077
|
+
<option value="false">{{ getBooleanLabel(prop, false) }}</option>
|
|
3078
|
+
</select>
|
|
3079
|
+
} @else if (prop.editor === 'radio') {
|
|
3080
|
+
<div class="vjs-radio-group">
|
|
3081
|
+
<label><input type="radio" [name]="prop.id" [attr.vjs-att]="prop.id" vjs-datatype="boolean" value="true" /><span>{{ getBooleanLabel(prop, true) }}</span></label>
|
|
3082
|
+
<label><input type="radio" [name]="prop.id" [attr.vjs-att]="prop.id" vjs-datatype="boolean" value="false" /><span>{{ getBooleanLabel(prop, false) }}</span></label>
|
|
3083
|
+
</div>
|
|
3084
|
+
} @else {
|
|
3085
|
+
<label>
|
|
3086
|
+
<input type="checkbox" vjs-datatype="boolean" [attr.vjs-att]="prop.id" /> {{ prop.label || prop.id }}
|
|
3087
|
+
</label>
|
|
3088
|
+
}
|
|
3089
|
+
} @else {
|
|
3090
|
+
<input type="text" [attr.vjs-att]="prop.id" [placeholder]="prop.description" />
|
|
3091
|
+
}
|
|
3092
|
+
|
|
3093
|
+
@if (prop.description) {
|
|
3094
|
+
<div class="vjs-field-desc">{{ prop.description }}</div>
|
|
3095
|
+
}
|
|
3096
|
+
</div>
|
|
3097
|
+
}
|
|
3098
|
+
}
|
|
3099
|
+
`, isInline: true, styles: [":host{display:contents}\n"] }); }
|
|
3100
|
+
}
|
|
3101
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ShapePropertiesInspectorComponent, decorators: [{
|
|
3102
|
+
type: Component,
|
|
3103
|
+
args: [{ selector: 'vjs-shape-properties-inspector', template: `
|
|
3104
|
+
@if (shapeDef && shapeDef.properties) {
|
|
3105
|
+
@for (prop of shapeDef.properties; track prop.id) {
|
|
3106
|
+
|
|
3107
|
+
<div class="vjs-inspector-field">
|
|
3108
|
+
@if (!isBoolean(prop) || prop.editor === 'select' || prop.editor === 'radio') {
|
|
3109
|
+
<label class="vjs-inspector-property-label">{{ prop.label || prop.id }}</label>
|
|
3110
|
+
}
|
|
3111
|
+
|
|
3112
|
+
@if (prop.type === 'string') {
|
|
3113
|
+
@if (hasValues(prop)) {
|
|
3114
|
+
@if (useRadio(prop)) {
|
|
3115
|
+
<div class="vjs-radio-group">
|
|
3116
|
+
@for (v of prop.values; track getShapePropertyValueLabel(v)) {
|
|
3117
|
+
<label>
|
|
3118
|
+
<input type="radio" [name]="prop.id" [attr.vjs-att]="prop.id" [value]="getShapePropertyValueValue(v)" /> {{ getShapePropertyValueLabel(v) }}
|
|
3119
|
+
</label>
|
|
3120
|
+
}
|
|
3121
|
+
</div>
|
|
3122
|
+
} @else {
|
|
3123
|
+
<select [attr.vjs-att]="prop.id">
|
|
3124
|
+
@for (v of prop.values; track getShapePropertyValueLabel(v)) {
|
|
3125
|
+
<option [value]="getShapePropertyValueValue(v)">{{ getShapePropertyValueLabel(v) }}</option>
|
|
3126
|
+
}
|
|
3127
|
+
</select>
|
|
3128
|
+
}
|
|
3129
|
+
} @else {
|
|
3130
|
+
<input type="text" [attr.vjs-att]="prop.id" [placeholder]="prop.description" />
|
|
3131
|
+
}
|
|
3132
|
+
} @else if (prop.type === 'number') {
|
|
3133
|
+
@if (hasValues(prop)) {
|
|
3134
|
+
@if (useRadio(prop)) {
|
|
3135
|
+
<div class="vjs-radio-group">
|
|
3136
|
+
@for (v of prop.values; track getShapePropertyValueLabel(v)) {
|
|
3137
|
+
<label>
|
|
3138
|
+
<input type="radio" [attr.vjs-att]="prop.id" [value]="getShapePropertyValueValue(v)" /> {{ getShapePropertyValueLabel(v) }}
|
|
3139
|
+
</label>
|
|
3140
|
+
}
|
|
3141
|
+
</div>
|
|
3142
|
+
} @else {
|
|
3143
|
+
<select [attr.vjs-att]="prop.id">
|
|
3144
|
+
@for (v of prop.values; track getShapePropertyValueLabel(v)) {
|
|
3145
|
+
<option [value]="getShapePropertyValueValue(v)">{{ getShapePropertyValueLabel(v) }}</option>
|
|
3146
|
+
}
|
|
3147
|
+
</select>
|
|
3148
|
+
}
|
|
3149
|
+
} @else {
|
|
3150
|
+
<input type="number" [attr.vjs-att]="prop.id" [placeholder]="prop.description" [attr.min]="prop.min" [attr.max]="prop.max" />
|
|
3151
|
+
}
|
|
3152
|
+
} @else if (isBoolean(prop)) {
|
|
3153
|
+
@if (prop.editor === 'select') {
|
|
3154
|
+
<select [attr.vjs-att]="prop.id" vjs-datatype="boolean">
|
|
3155
|
+
<option value=""></option>
|
|
3156
|
+
<option value="true">{{ getBooleanLabel(prop, true) }}</option>
|
|
3157
|
+
<option value="false">{{ getBooleanLabel(prop, false) }}</option>
|
|
3158
|
+
</select>
|
|
3159
|
+
} @else if (prop.editor === 'radio') {
|
|
3160
|
+
<div class="vjs-radio-group">
|
|
3161
|
+
<label><input type="radio" [name]="prop.id" [attr.vjs-att]="prop.id" vjs-datatype="boolean" value="true" /><span>{{ getBooleanLabel(prop, true) }}</span></label>
|
|
3162
|
+
<label><input type="radio" [name]="prop.id" [attr.vjs-att]="prop.id" vjs-datatype="boolean" value="false" /><span>{{ getBooleanLabel(prop, false) }}</span></label>
|
|
3163
|
+
</div>
|
|
3164
|
+
} @else {
|
|
3165
|
+
<label>
|
|
3166
|
+
<input type="checkbox" vjs-datatype="boolean" [attr.vjs-att]="prop.id" /> {{ prop.label || prop.id }}
|
|
3167
|
+
</label>
|
|
3168
|
+
}
|
|
3169
|
+
} @else {
|
|
3170
|
+
<input type="text" [attr.vjs-att]="prop.id" [placeholder]="prop.description" />
|
|
3171
|
+
}
|
|
3172
|
+
|
|
3173
|
+
@if (prop.description) {
|
|
3174
|
+
<div class="vjs-field-desc">{{ prop.description }}</div>
|
|
3175
|
+
}
|
|
3176
|
+
</div>
|
|
3177
|
+
}
|
|
3178
|
+
}
|
|
3179
|
+
`, styles: [":host{display:contents}\n"] }]
|
|
3180
|
+
}], propDecorators: { vertex: [{
|
|
3181
|
+
type: Input
|
|
3182
|
+
}], maxRadios: [{
|
|
3183
|
+
type: Input
|
|
3184
|
+
}] } });
|
|
3185
|
+
|
|
3186
|
+
|
|
2827
3187
|
class VisuallyJsModule {
|
|
2828
3188
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VisuallyJsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
2829
3189
|
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: VisuallyJsModule, declarations: [DefaultNodeComponent,
|
|
@@ -2856,7 +3216,9 @@ class VisuallyJsModule {
|
|
|
2856
3216
|
BackgroundComponent,
|
|
2857
3217
|
ImageBackgroundComponent,
|
|
2858
3218
|
GridBackgroundComponent,
|
|
2859
|
-
TiledImageBackgroundComponent
|
|
3219
|
+
TiledImageBackgroundComponent,
|
|
3220
|
+
EdgePropertyMappingsInspectorComponent,
|
|
3221
|
+
ShapePropertiesInspectorComponent], imports: [CommonModule], exports: [MiniviewComponent,
|
|
2860
3222
|
SurfaceComponent,
|
|
2861
3223
|
PaperComponent,
|
|
2862
3224
|
PaletteComponent,
|
|
@@ -2882,7 +3244,9 @@ class VisuallyJsModule {
|
|
|
2882
3244
|
BackgroundComponent,
|
|
2883
3245
|
ImageBackgroundComponent,
|
|
2884
3246
|
GridBackgroundComponent,
|
|
2885
|
-
TiledImageBackgroundComponent
|
|
3247
|
+
TiledImageBackgroundComponent,
|
|
3248
|
+
EdgePropertyMappingsInspectorComponent,
|
|
3249
|
+
ShapePropertiesInspectorComponent] }); }
|
|
2886
3250
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VisuallyJsModule, imports: [CommonModule] }); }
|
|
2887
3251
|
}
|
|
2888
3252
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: VisuallyJsModule, decorators: [{
|
|
@@ -2920,7 +3284,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2920
3284
|
BackgroundComponent,
|
|
2921
3285
|
ImageBackgroundComponent,
|
|
2922
3286
|
GridBackgroundComponent,
|
|
2923
|
-
TiledImageBackgroundComponent
|
|
3287
|
+
TiledImageBackgroundComponent,
|
|
3288
|
+
EdgePropertyMappingsInspectorComponent,
|
|
3289
|
+
ShapePropertiesInspectorComponent
|
|
2924
3290
|
],
|
|
2925
3291
|
exports: [
|
|
2926
3292
|
MiniviewComponent,
|
|
@@ -2949,7 +3315,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
2949
3315
|
BackgroundComponent,
|
|
2950
3316
|
ImageBackgroundComponent,
|
|
2951
3317
|
GridBackgroundComponent,
|
|
2952
|
-
TiledImageBackgroundComponent
|
|
3318
|
+
TiledImageBackgroundComponent,
|
|
3319
|
+
EdgePropertyMappingsInspectorComponent,
|
|
3320
|
+
ShapePropertiesInspectorComponent
|
|
2953
3321
|
]
|
|
2954
3322
|
}]
|
|
2955
3323
|
}] });
|
|
@@ -3077,5 +3445,5 @@ function useVisuallyJsUpdate(callback) {
|
|
|
3077
3445
|
|
|
3078
3446
|
|
|
3079
3447
|
|
|
3080
|
-
export { AngularComponentOverlayType, AreaChartComponent, BackgroundComponent, BarChartComponent, BaseAngularOverlayComponent, BaseGroupComponent, BaseNodeComponent, BasePortComponent, BaseVertexComponent, BrowserUIAngularModel, BubbleChartComponent, ColorPickerComponent, ColumnChartComponent, ControlsComponent, DecoratorComponent, DefaultGroupComponent, DefaultNodeComponent, DiagramComponent, DiagramPaletteComponent, EdgeTypePickerComponent, ExportControlsComponent, GridBackgroundComponent, ImageBackgroundComponent, InspectorComponent, LineChartComponent, MiniviewComponent, PaletteComponent, PaperComponent, PieChartComponent, SankeyChartComponent, ScatterChartComponent, SeriesBasedChartComponent, ShapeComponent, ShapePaletteComponent, SurfaceComponent, SurfacePopupComponent, TiledImageBackgroundComponent, VisuallyJsModule, VisuallyJsService, XYChartComponent, useVisuallyJsUpdate, useZoom };
|
|
3448
|
+
export { AngularComponentOverlayType, AreaChartComponent, BackgroundComponent, BarChartComponent, BaseAngularOverlayComponent, BaseGroupComponent, BaseNodeComponent, BasePortComponent, BaseVertexComponent, BrowserUIAngularModel, BubbleChartComponent, ColorPickerComponent, ColumnChartComponent, ControlsComponent, DecoratorComponent, DefaultGroupComponent, DefaultNodeComponent, DiagramComponent, DiagramPaletteComponent, EdgePropertyMappingsInspectorComponent, EdgeTypePickerComponent, ExportControlsComponent, GridBackgroundComponent, ImageBackgroundComponent, InspectorComponent, LineChartComponent, MiniviewComponent, PaletteComponent, PaperComponent, PieChartComponent, SankeyChartComponent, ScatterChartComponent, SeriesBasedChartComponent, ShapeComponent, ShapePaletteComponent, ShapePropertiesInspectorComponent, SurfaceComponent, SurfacePopupComponent, TiledImageBackgroundComponent, VisuallyJsModule, VisuallyJsService, XYChartComponent, useVisuallyJsUpdate, useZoom };
|
|
3081
3449
|
//# sourceMappingURL=visuallyjs-browser-ui-angular.mjs.map
|