@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.
Files changed (38) hide show
  1. package/esm2022/index.mjs +2 -0
  2. package/esm2022/lib/browser-ui-angular.module.mjs +14 -4
  3. package/esm2022/lib/charts/area.chart.component.mjs +12 -9
  4. package/esm2022/lib/charts/bar.chart.component.mjs +12 -9
  5. package/esm2022/lib/charts/bubble.chart.component.mjs +12 -9
  6. package/esm2022/lib/charts/column.chart.component.mjs +12 -9
  7. package/esm2022/lib/charts/line.chart.component.mjs +12 -9
  8. package/esm2022/lib/charts/pie.chart.component.mjs +12 -9
  9. package/esm2022/lib/charts/sankey.chart.component.mjs +36 -10
  10. package/esm2022/lib/charts/scatter.chart.component.mjs +12 -9
  11. package/esm2022/lib/charts/series.based.chart.component.mjs +43 -10
  12. package/esm2022/lib/charts/xy.chart.component.mjs +12 -9
  13. package/esm2022/lib/controls-component.mjs +2 -2
  14. package/esm2022/lib/edge.property.mappings.inspector.component.mjs +69 -0
  15. package/esm2022/lib/edge.type.picker.component.mjs +1 -0
  16. package/esm2022/lib/shape-properties-inspector.component.mjs +214 -0
  17. package/fesm2022/visuallyjs-browser-ui-angular.mjs +459 -91
  18. package/fesm2022/visuallyjs-browser-ui-angular.mjs.map +1 -1
  19. package/index.d.ts +2 -0
  20. package/lib/browser-ui-angular.module.d.ts +4 -2
  21. package/lib/charts/area.chart.component.d.ts +7 -7
  22. package/lib/charts/bar.chart.component.d.ts +7 -7
  23. package/lib/charts/bubble.chart.component.d.ts +7 -7
  24. package/lib/charts/column.chart.component.d.ts +8 -7
  25. package/lib/charts/line.chart.component.d.ts +7 -7
  26. package/lib/charts/pie.chart.component.d.ts +7 -7
  27. package/lib/charts/sankey.chart.component.d.ts +12 -9
  28. package/lib/charts/scatter.chart.component.d.ts +7 -7
  29. package/lib/charts/series.based.chart.component.d.ts +9 -6
  30. package/lib/charts/xy.chart.component.d.ts +7 -7
  31. package/lib/controls-component.d.ts +1 -5
  32. package/lib/diagram-palette-component.d.ts +1 -1
  33. package/lib/edge.property.mappings.inspector.component.d.ts +38 -0
  34. package/lib/palette.component.d.ts +9 -9
  35. package/lib/shape-properties-inspector.component.d.ts +31 -0
  36. package/lib/shape.palette.component.d.ts +3 -3
  37. package/package.json +2 -2
  38. 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: { data: [{
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: "14.0.0", version: "17.3.12", type: ColumnChartComponent, selector: "vjs-column-chart", inputs: { data: "data", url: "url", options: "options", useModel: "useModel" }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { data: [{
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: "14.0.0", version: "17.3.12", type: BarChartComponent, selector: "vjs-bar-chart", inputs: { data: "data", url: "url", options: "options", useModel: "useModel" }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { data: [{
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: "14.0.0", version: "17.3.12", type: XYChartComponent, selector: "vjs-xy-chart", inputs: { data: "data", url: "url", options: "options", useModel: "useModel" }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { data: [{
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: "14.0.0", version: "17.3.12", type: LineChartComponent, selector: "vjs-line-chart", inputs: { data: "data", url: "url", options: "options", useModel: "useModel" }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { data: [{
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: "14.0.0", version: "17.3.12", type: AreaChartComponent, selector: "vjs-area-chart", inputs: { data: "data", url: "url", options: "options", useModel: "useModel" }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { data: [{
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: "14.0.0", version: "17.3.12", type: PieChartComponent, selector: "vjs-pie-chart", inputs: { data: "data", url: "url", options: "options", useModel: "useModel" }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { data: [{
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: "14.0.0", version: "17.3.12", type: ScatterChartComponent, selector: "vjs-scatter-chart", inputs: { data: "data", url: "url", options: "options", useModel: "useModel" }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { data: [{
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: "14.0.0", version: "17.3.12", type: BubbleChartComponent, selector: "vjs-bubble-chart", inputs: { data: "data", url: "url", options: "options", useModel: "useModel" }, usesInheritance: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { data: [{
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: "14.0.0", version: "17.3.12", type: SankeyChartComponent, selector: "vjs-sankey-chart", inputs: { csvData: "csvData", jsonData: "jsonData", url: "url", interactive: "interactive", pivot: "pivot", options: "options", useModel: "useModel" }, usesOnChanges: true, ngImport: i0, template: `<div></div>`, isInline: true }); }
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: { csvData: [{
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], imports: [CommonModule], exports: [MiniviewComponent,
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