graphdb-workbench 2.0.0-M2 → 2.0.0-M2-1

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 (57) hide show
  1. package/dist/116.ca9d40889c222f47c45f.bundle.js +1 -1
  2. package/dist/116.ca9d40889c222f47c45f.bundle.js.map +1 -1
  3. package/dist/12.9004ab127289745129a4.bundle.js +1 -1
  4. package/dist/12.9004ab127289745129a4.bundle.js.map +1 -1
  5. package/dist/20.df3652981fc73c6a8b8c.bundle.js +1 -1
  6. package/dist/20.df3652981fc73c6a8b8c.bundle.js.map +1 -1
  7. package/dist/25.e79de2370b1ee4072e19.bundle.js +1 -1
  8. package/dist/25.e79de2370b1ee4072e19.bundle.js.map +1 -1
  9. package/dist/26.c1619706b8cbb1ab23cb.bundle.js +2 -0
  10. package/dist/26.c1619706b8cbb1ab23cb.bundle.js.map +1 -0
  11. package/dist/28.e687c87a5f1dc8a30fd0.bundle.js +1 -1
  12. package/dist/28.e687c87a5f1dc8a30fd0.bundle.js.map +1 -1
  13. package/dist/31.ab8f2e70841221e1d427.bundle.js +2 -0
  14. package/dist/31.ab8f2e70841221e1d427.bundle.js.map +1 -0
  15. package/dist/36.247686b6d65de11ec10d.bundle.js +1 -1
  16. package/dist/36.247686b6d65de11ec10d.bundle.js.map +1 -1
  17. package/dist/37.5f6089a939b59309cc82.bundle.js +1 -1
  18. package/dist/37.5f6089a939b59309cc82.bundle.js.map +1 -1
  19. package/dist/{bundle.1acabb29b296ad1819ce.bundle.js → bundle.5eeff901b77240e58d27.bundle.js} +3 -3
  20. package/dist/bundle.5eeff901b77240e58d27.bundle.js.map +1 -0
  21. package/dist/i18n/locale-en.json +0 -1
  22. package/dist/index.html +3 -3
  23. package/dist/js/angular/core/directives/rdfresourcesearch/templates/rdfResourceSearchTemplate.html +1 -1
  24. package/dist/pages/autocomplete.html +1 -1
  25. package/dist/pages/choose-repository-type.html +1 -1
  26. package/dist/pages/cluster-management/cluster-configuration.html +1 -4
  27. package/dist/pages/cluster-management/clusterInfo.html +1 -1
  28. package/dist/pages/create-index.html +4 -4
  29. package/dist/pages/dependencies.html +1 -1
  30. package/dist/pages/domainRangeInfo.html +2 -2
  31. package/dist/pages/edit.html +1 -1
  32. package/dist/pages/explore.html +1 -1
  33. package/dist/pages/export.html +1 -1
  34. package/dist/pages/find.html +1 -1
  35. package/dist/pages/graph-config/saveGraphConfig.html +11 -11
  36. package/dist/pages/graphs-visualizations.html +7 -7
  37. package/dist/pages/import.html +1 -1
  38. package/dist/pages/jdbc-create.html +5 -5
  39. package/dist/pages/monitor/queries.html +1 -1
  40. package/dist/pages/monitor/resources.html +2 -2
  41. package/dist/pages/namespaces.html +2 -2
  42. package/dist/pages/plugins.html +1 -1
  43. package/dist/pages/rdfClassHierarchyInfo.html +7 -7
  44. package/dist/pages/rdfrank.html +2 -2
  45. package/dist/pages/repositories.html +2 -2
  46. package/dist/pages/repository.html +2 -2
  47. package/dist/pages/similarity-indexes.html +1 -1
  48. package/dist/pages/sparql-template-create.html +5 -5
  49. package/dist/pages/sparql.html +3 -3
  50. package/dist/pages/webapi.html +2 -2
  51. package/dist/res/swagger/index.html +25 -25
  52. package/package.json +1 -1
  53. package/dist/26.91d378afd575c34dddf3.bundle.js +0 -2
  54. package/dist/26.91d378afd575c34dddf3.bundle.js.map +0 -1
  55. package/dist/31.200315980b2c01ad0795.bundle.js +0 -2
  56. package/dist/31.200315980b2c01ad0795.bundle.js.map +0 -1
  57. package/dist/bundle.1acabb29b296ad1819ce.bundle.js.map +0 -1
@@ -56,7 +56,6 @@
56
56
  "advanced_options": "Advanced options",
57
57
  "advanced_options_tooltip": "Advanced options for cluster configuration",
58
58
  "errors": {
59
- "rpc_pattern_warning": "The RPC address is invalid. E.g. server.example.com:7300 | server.example.com:7300/graph | 10.10.10.10:7300 ",
60
59
  "only_positive_integers": "Enter only positive integers",
61
60
  "at_least_two_nodes": "Must have at least two nodes",
62
61
  "node_in_list": "Node is already in the list",
package/dist/index.html CHANGED
@@ -13,8 +13,8 @@
13
13
 
14
14
  <link rel="apple-touch-icon-precomposed" href="icon.png">
15
15
 
16
- <script src="plugin-registry.js?v=2.0.0-M2"></script>
17
- <script src="plugins.js?v=2.0.0-M2"></script>
16
+ <script src="plugin-registry.js?v=2.0.0-M2-1"></script>
17
+ <script src="plugins.js?v=2.0.0-M2-1"></script>
18
18
  <link rel="shortcut icon" href="icon.png"><link href="vendor.4ba46e62f4d43dab5e82.css" rel="stylesheet"><link href="main.e5d47f1d0bcd23074c38.css" rel="stylesheet"></head>
19
19
 
20
20
  <body>
@@ -162,6 +162,6 @@
162
162
  <object data="img/graphdb-splash.2eb3f7f02aa7e25a2545459e096f3738.svg"></object>
163
163
  <div>{{'workbench.loading.warning' | translate}}</div>
164
164
  </div>
165
- <script type="text/javascript" src="vendor.327ffd7c7997ca288654.bundle.js"></script><script type="text/javascript" src="main.f10730ef6eebe969b494.bundle.js"></script><script type="text/javascript" src="bundle.1acabb29b296ad1819ce.bundle.js"></script></body>
165
+ <script type="text/javascript" src="vendor.327ffd7c7997ca288654.bundle.js"></script><script type="text/javascript" src="main.f10730ef6eebe969b494.bundle.js"></script><script type="text/javascript" src="bundle.5eeff901b77240e58d27.bundle.js"></script></body>
166
166
 
167
167
  </html>
@@ -1,4 +1,4 @@
1
- <link href="css/rdf-resource-search.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/rdf-resource-search.css?v=2.0.0-M2-1" rel="stylesheet"/>
2
2
 
3
3
  <div ng-if="getActiveRepository() && hasActiveLocation() && isNotLoading()" ng-cloak>
4
4
  <div id="search-box" class="card search-rdf-input" ng-keydown="onKeyDown($event)" ng-if="!isHomePage()">
@@ -1,4 +1,4 @@
1
- <link href="css/autocomplete.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/autocomplete.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
  <div id="autocomplete" class="page">
3
3
  <h1>
4
4
  {{title}}
@@ -1,4 +1,4 @@
1
- <link href="css/repository.create.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/repository.create.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
3
  <div>
4
4
  <h1 class="mb-3">{{pageTitle}}</h1>
@@ -1,4 +1,4 @@
1
- <link href="css/clustermanagement.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/clustermanagement.css?v=2.0.0-M2-1" rel="stylesheet"/>
2
2
 
3
3
  <div id="wb-cluster-group">
4
4
  <h1>{{pageTitle}}</h1>
@@ -20,9 +20,6 @@
20
20
  </div>
21
21
  </div>
22
22
  </div>
23
- <div ng-show="badRpcAddress" class="col-md-10 col-lg-8 col-xl-7 alert alert-danger">
24
- {{'cluster_management.cluster_page.errors.rpc_pattern_warning' | translate}}
25
- </div>
26
23
  <div class="row">
27
24
  <div class="col-xs-12">
28
25
  <button type="button" class="btn btn-primary add-node-btn"
@@ -1,4 +1,4 @@
1
- <link href="css/clustermanagement.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/clustermanagement.css?v=2.0.0-M2-1" rel="stylesheet"/>
2
2
  <title>{{'view.clusterManagement.title' | translate}}</title>
3
3
 
4
4
  <h1>
@@ -1,10 +1,10 @@
1
- <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
- <link href="css/lib/yasqe.min.css?v=2.0.0-M2" rel="stylesheet"/>
3
+ <link href="css/lib/yasqe.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
4
4
 
5
- <link href="css/new-sparql.css?v=2.0.0-M2" rel="stylesheet"/>
5
+ <link href="css/new-sparql.css?v=2.0.0-M2-1" rel="stylesheet"/>
6
6
 
7
- <link href="css/graphs-config.css?v=2.0.0-M2" rel="stylesheet"/>
7
+ <link href="css/graphs-config.css?v=2.0.0-M2-1" rel="stylesheet"/>
8
8
 
9
9
 
10
10
  <div class="container-fluid">
@@ -1,4 +1,4 @@
1
- <link href="css/dependencies.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/dependencies.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
3
 
4
4
  <title>Explore Class Dependencies</title>
@@ -1,5 +1,5 @@
1
- <link href="css/domain-range-graph.css?v=2.0.0-M2" rel="stylesheet"/>
2
- <link href="css/rdf-details-side-panel.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/domain-range-graph.css?v=2.0.0-M2-1" rel="stylesheet"/>
2
+ <link href="css/rdf-details-side-panel.css?v=2.0.0-M2-1" rel="stylesheet"/>
3
3
 
4
4
  <title>Explore Data Graph</title>
5
5
 
@@ -1,4 +1,4 @@
1
- <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
3
  <div core-errors></div>
4
4
  <div class="page" ng-show="getActiveRepository()">
@@ -1,4 +1,4 @@
1
- <link href="css/explore.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/explore.css?v=2.0.0-M2-1" rel="stylesheet"/>
2
2
  <div core-errors></div>
3
3
  <div class="page" ng-show="getActiveRepository()">
4
4
  <div class="resource-info" ng-if="!isTripleResource()">
@@ -1,4 +1,4 @@
1
- <link href="css/export.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/export.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
3
  <div id="wb-export">
4
4
 
@@ -1,4 +1,4 @@
1
- <link href="css/find.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/find.css?v=2.0.0-M2-1" rel="stylesheet"/>
2
2
 
3
3
  <div class="page">
4
4
  <h1>
@@ -1,10 +1,10 @@
1
- <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
- <link href="css/lib/yasqe.min.css?v=2.0.0-M2" rel="stylesheet"/>
3
+ <link href="css/lib/yasqe.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
4
4
 
5
- <link href="css/new-sparql.css?v=2.0.0-M2" rel="stylesheet"/>
5
+ <link href="css/new-sparql.css?v=2.0.0-M2-1" rel="stylesheet"/>
6
6
 
7
- <link href="css/graphs-config.css?v=2.0.0-M2" rel="stylesheet"/>
7
+ <link href="css/graphs-config.css?v=2.0.0-M2-1" rel="stylesheet"/>
8
8
 
9
9
  <h1>
10
10
  {{title}}
@@ -82,7 +82,7 @@
82
82
  <div class="image-label-container mb-3" ng-show="page == 1">
83
83
  <label class="image-label d-flex" ng-class="{'active': newConfig.startMode == 'search'}">
84
84
  <input type="radio" class="form-check-input" id="checkboxSuccess" ng-model="newConfig.startMode" value="search">
85
- <img class="image-label-image" src="css/images/search.png?v=2.0.0-M2" alt="search image" width="100%">
85
+ <img class="image-label-image" src="css/images/search.png?v=2.0.0-M2-1" alt="search image" width="100%">
86
86
  <div class="image-label-content">
87
87
  <h5>{{'start.with.search.box' | translate}}</h5>
88
88
  <div>{{'choose.starting.point' | translate}}</div>
@@ -91,7 +91,7 @@
91
91
 
92
92
  <label class="image-label d-flex" ng-class="{'active': newConfig.startMode == 'node'}">
93
93
  <input type="radio" class="form-check-input" id="checkboxSuccess" ng-model="newConfig.startMode" value="node">
94
- <img class="image-label-image" src="css/images/node.png?v=2.0.0-M2" alt="node image" width="100%">
94
+ <img class="image-label-image" src="css/images/node.png?v=2.0.0-M2-1" alt="node image" width="100%">
95
95
  <div class="image-label-content">
96
96
  <h5>{{'start.with.fixed.node' | translate}}</h5>
97
97
  <div>{{'visual.graph.start' | translate}}</div>
@@ -100,7 +100,7 @@
100
100
 
101
101
  <label class="image-label d-flex" ng-class="{'active': newConfig.startMode == 'query'}">
102
102
  <input type="radio" class="form-check-input" id="checkboxSuccess" ng-model="newConfig.startMode" value="query">
103
- <img class="image-label-image" src="css/images/query.png?v=2.0.0-M2" alt="query image" width="100%">
103
+ <img class="image-label-image" src="css/images/query.png?v=2.0.0-M2-1" alt="query image" width="100%">
104
104
  <div class="image-label-content">
105
105
  <h5>{{'query.results.start' | translate}}</h5>
106
106
  <div>{{'results.start' | translate}}</div>
@@ -141,7 +141,7 @@
141
141
  <p>{{'optional.query' | translate}} <em>{{getSampleName(samples[0], 'expandQuery')}}</em> {{'sample.query.used' | translate}}</p>
142
142
  </div>
143
143
  <div>
144
- <img src="css/images/expand.png?v=2.0.0-M2" class="info-box-img" height="220" alt="expand image">
144
+ <img src="css/images/expand.png?v=2.0.0-M2-1" class="info-box-img" height="220" alt="expand image">
145
145
  </div>
146
146
  </div>
147
147
 
@@ -167,7 +167,7 @@
167
167
  <p>{'optional.query' | translate}} <em>{{getSampleName(samples[0], 'resourceQuery')}}</em> {{'sample.query.used' | translate}}</p>
168
168
  </div>
169
169
  <div>
170
- <img src="css/images/labels-size.png?v=2.0.0-M2" class="info-box-img" height="220" alt="labels size image">
170
+ <img src="css/images/labels-size.png?v=2.0.0-M2-1" class="info-box-img" height="220" alt="labels size image">
171
171
  </div>
172
172
  </div>
173
173
 
@@ -186,7 +186,7 @@
186
186
  <p>{{'query.is.optional.local.name' | translate}}</p>
187
187
  </div>
188
188
  <div>
189
- <img src="css/images/predicates.png?v=2.0.0-M2" class="info-box-img" height="220" alt="predicates image">
189
+ <img src="css/images/predicates.png?v=2.0.0-M2-1" class="info-box-img" height="220" alt="predicates image">
190
190
  </div>
191
191
  </div>
192
192
 
@@ -211,7 +211,7 @@
211
211
  <p>{{'optional.query' | translate}} <em>{{getSampleName(samples[0], 'resourcePropertiesQuery')}}</em> {{'sample.query.used' | translate}}</p>
212
212
  </div>
213
213
  <div>
214
- <img src="css/images/side-panel.png?v=2.0.0-M2" class="info-box-img" height="220" alt="side panel image">
214
+ <img src="css/images/side-panel.png?v=2.0.0-M2-1" class="info-box-img" height="220" alt="side panel image">
215
215
  </div>
216
216
  </div>
217
217
 
@@ -1,7 +1,7 @@
1
- <link href="css/graphs-vizualizations.css?v=2.0.0-M2" rel="stylesheet"/>
2
- <link href="css/rdf-details-side-panel.css?v=2.0.0-M2" rel="stylesheet"/>
3
- <link href="css/lib/ng-tags-input/ng-tags-input.min.css?v=2.0.0-M2" rel="stylesheet"/>
4
- <link href="js/lib/d3-tip/d3-tip.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/graphs-vizualizations.css?v=2.0.0-M2-1" rel="stylesheet"/>
2
+ <link href="css/rdf-details-side-panel.css?v=2.0.0-M2-1" rel="stylesheet"/>
3
+ <link href="css/lib/ng-tags-input/ng-tags-input.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
4
+ <link href="js/lib/d3-tip/d3-tip.css?v=2.0.0-M2-1" rel="stylesheet"/>
5
5
 
6
6
  <div class="container-fluid">
7
7
 
@@ -137,9 +137,9 @@
137
137
  <tr ng-repeat="config in graphConfigs">
138
138
  <td width="20">
139
139
  <a href ng-click="goToGraphConfig(config)">
140
- <img ng-if="config.startMode == 'search'" src="css/images/search.png?v=2.0.0-M2" alt="" width="64" popover="{{'visual.config.search.box.starting.point' | translate}}" popover-trigger="mouseenter">
141
- <img ng-if="config.startMode == 'node'" src="css/images/node.png?v=2.0.0-M2" alt="" width="64" popover="{{'visual.config.fixed.resource.starting.point' | translate}}" popover-trigger="mouseenter">
142
- <img ng-if="config.startMode == 'query'" src="css/images/query.png?v=2.0.0-M2" alt="" width="64" popover="{{'visual.config.query.results.starting.point' | translate}}" popover-trigger="mouseenter">
140
+ <img ng-if="config.startMode == 'search'" src="css/images/search.png?v=2.0.0-M2-1" alt="" width="64" popover="{{'visual.config.search.box.starting.point' | translate}}" popover-trigger="mouseenter">
141
+ <img ng-if="config.startMode == 'node'" src="css/images/node.png?v=2.0.0-M2-1" alt="" width="64" popover="{{'visual.config.fixed.resource.starting.point' | translate}}" popover-trigger="mouseenter">
142
+ <img ng-if="config.startMode == 'query'" src="css/images/query.png?v=2.0.0-M2-1" alt="" width="64" popover="{{'visual.config.query.results.starting.point' | translate}}" popover-trigger="mouseenter">
143
143
  </a>
144
144
  </td>
145
145
  <td>
@@ -1,4 +1,4 @@
1
- <link rel="stylesheet" type="text/css" href="css/import.css?v=2.0.0-M2">
1
+ <link rel="stylesheet" type="text/css" href="css/import.css?v=2.0.0-M2-1">
2
2
 
3
3
  <div id="wb-import">
4
4
  <h1>
@@ -1,12 +1,12 @@
1
- <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
- <link href="css/lib/yasqe.min.css?v=2.0.0-M2" rel="stylesheet"/>
3
+ <link href="css/lib/yasqe.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
4
4
 
5
- <link href="css/new-sparql.css?v=2.0.0-M2" rel="stylesheet"/>
5
+ <link href="css/new-sparql.css?v=2.0.0-M2-1" rel="stylesheet"/>
6
6
 
7
- <link href="css/graphs-config.css?v=2.0.0-M2" rel="stylesheet"/>
7
+ <link href="css/graphs-config.css?v=2.0.0-M2-1" rel="stylesheet"/>
8
8
 
9
- <link href="css/jdbc.css?v=2.0.0-M2" rel="stylesheet"/>
9
+ <link href="css/jdbc.css?v=2.0.0-M2-1" rel="stylesheet"/>
10
10
 
11
11
  <div class="container-fluid">
12
12
  <h1>
@@ -3,7 +3,7 @@
3
3
 
4
4
  <title>${messages.app.title} : ${messages.jmx.QueryMonitoringPage.title}</title>
5
5
 
6
- <link href="css/jmx.css?v=2.0.0-M2" rel="stylesheet" />
6
+ <link href="css/jmx.css?v=2.0.0-M2-1" rel="stylesheet" />
7
7
 
8
8
  <h1>
9
9
  {{title}}
@@ -1,8 +1,8 @@
1
1
 
2
- <link href="css/jmx.css?v=2.0.0-M2" rel="stylesheet" />
2
+ <link href="css/jmx.css?v=2.0.0-M2-1" rel="stylesheet" />
3
3
 
4
4
  <!-- nvd3 css and js starts-->
5
- <link href="js/lib/nvd3/nv.d3.css?v=2.0.0-M2" rel="stylesheet" />
5
+ <link href="js/lib/nvd3/nv.d3.css?v=2.0.0-M2-1" rel="stylesheet" />
6
6
 
7
7
 
8
8
  <div class="hiddenVariables" style="display: none;">
@@ -1,5 +1,5 @@
1
- <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2" rel="stylesheet">
2
- <link href="css/export.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2-1" rel="stylesheet">
2
+ <link href="css/export.css?v=2.0.0-M2-1" rel="stylesheet">
3
3
 
4
4
  <title>Namespaces</title>
5
5
 
@@ -1,4 +1,4 @@
1
- <link href="css/plugins.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/plugins.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
  <div id="plugins" class="page">
3
3
  <h1>
4
4
  {{title}} {{'for.repository' | translate}} {{getActiveRepository()}}
@@ -1,10 +1,10 @@
1
- <link href="css/rdf-class-hierarchy.css?v=2.0.0-M2" rel="stylesheet"/>
2
- <link href="css/rdf-class-hierarchy-labels.css?v=2.0.0-M2" rel="stylesheet"/>
3
- <link href="css/rdf-details-side-panel.css?v=2.0.0-M2" rel="stylesheet"/>
4
- <link href="js/lib/rzslider/rzslider.min.css?v=2.0.0-M2" rel="stylesheet"/>
5
- <link href="js/lib/angucomplete-alt/angucomplete-alt.css?v=2.0.0-M2" rel="stylesheet"/>
6
- <link href="js/lib/d3-tip/d3-tip.css?v=2.0.0-M2" rel="stylesheet"/>
7
- <link href="css/lib/animate/3.2.0/animate.min.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/rdf-class-hierarchy.css?v=2.0.0-M2-1" rel="stylesheet"/>
2
+ <link href="css/rdf-class-hierarchy-labels.css?v=2.0.0-M2-1" rel="stylesheet"/>
3
+ <link href="css/rdf-details-side-panel.css?v=2.0.0-M2-1" rel="stylesheet"/>
4
+ <link href="js/lib/rzslider/rzslider.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
5
+ <link href="js/lib/angucomplete-alt/angucomplete-alt.css?v=2.0.0-M2-1" rel="stylesheet"/>
6
+ <link href="js/lib/d3-tip/d3-tip.css?v=2.0.0-M2-1" rel="stylesheet"/>
7
+ <link href="css/lib/animate/3.2.0/animate.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
8
8
 
9
9
  <title>Explore Data Graph</title>
10
10
 
@@ -1,5 +1,5 @@
1
- <link href="css/rdfrank.css?v=2.0.0-M2" rel="stylesheet">
2
- <link href="css/lib/ng-tags-input/ng-tags-input.min.css?v=2.0.0-M2" rel="stylesheet"/>
1
+ <link href="css/rdfrank.css?v=2.0.0-M2-1" rel="stylesheet">
2
+ <link href="css/lib/ng-tags-input/ng-tags-input.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
3
3
 
4
4
  <div id="rdfRank" class="page">
5
5
  <h1>
@@ -1,7 +1,7 @@
1
1
 
2
- <link href="css/repositories.css?v=2.0.0-M2" rel="stylesheet">
2
+ <link href="css/repositories.css?v=2.0.0-M2-1" rel="stylesheet">
3
3
 
4
- <link href="css/lib/bootstrap-switch/bootstrap-switch.min.css?v=2.0.0-M2" rel="stylesheet">
4
+ <link href="css/lib/bootstrap-switch/bootstrap-switch.min.css?v=2.0.0-M2-1" rel="stylesheet">
5
5
 
6
6
  <h1>
7
7
  {{title}}
@@ -1,6 +1,6 @@
1
- <link href="css/repositories.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/repositories.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
- <link href="css/lib/bootstrap-switch/bootstrap-switch.min.css?v=2.0.0-M2" rel="stylesheet">
3
+ <link href="css/lib/bootstrap-switch/bootstrap-switch.min.css?v=2.0.0-M2-1" rel="stylesheet">
4
4
 
5
5
  <div id="wb-repository">
6
6
  <h1>{{pageTitle}}</h1>
@@ -1,4 +1,4 @@
1
- <link href="css/similarity.css?v=2.0.0-M2" rel='stylesheet' type='text/css'/>
1
+ <link href="css/similarity.css?v=2.0.0-M2-1" rel='stylesheet' type='text/css'/>
2
2
 
3
3
  <div class="container-fluid">
4
4
 
@@ -1,12 +1,12 @@
1
- <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
- <link href="css/lib/yasqe.min.css?v=2.0.0-M2" rel="stylesheet"/>
3
+ <link href="css/lib/yasqe.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
4
4
 
5
- <link href="css/new-sparql.css?v=2.0.0-M2" rel="stylesheet"/>
5
+ <link href="css/new-sparql.css?v=2.0.0-M2-1" rel="stylesheet"/>
6
6
 
7
- <link href="css/graphs-config.css?v=2.0.0-M2" rel="stylesheet"/>
7
+ <link href="css/graphs-config.css?v=2.0.0-M2-1" rel="stylesheet"/>
8
8
 
9
- <link href="css/jdbc.css?v=2.0.0-M2" rel="stylesheet"/>
9
+ <link href="css/jdbc.css?v=2.0.0-M2-1" rel="stylesheet"/>
10
10
 
11
11
  <div class="container-fluid">
12
12
  <h1>
@@ -1,8 +1,8 @@
1
- <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2" rel="stylesheet">
1
+ <link href="css/lib/angular-xeditable/xeditable.min.css?v=2.0.0-M2-1" rel="stylesheet">
2
2
 
3
- <link href="css/lib/yasqe.min.css?v=2.0.0-M2" rel="stylesheet"/>
3
+ <link href="css/lib/yasqe.min.css?v=2.0.0-M2-1" rel="stylesheet"/>
4
4
 
5
- <link href="css/new-sparql.css?v=2.0.0-M2" rel="stylesheet"/>
5
+ <link href="css/new-sparql.css?v=2.0.0-M2-1" rel="stylesheet"/>
6
6
  <div id="wb-sparql">
7
7
 
8
8
  <div ng-show="getActiveRepositoryNoError()" class="pull-right mt-1">
@@ -1,6 +1,6 @@
1
1
 
2
- <link href='css/lib/swagger-ui.min.css?v=2.0.0-M2' rel='stylesheet' type='text/css'/>
3
- <link href='css/swagger.custom.css?v=2.0.0-M2' rel='stylesheet' type='text/css'/>
2
+ <link href='css/lib/swagger-ui.min.css?v=2.0.0-M2-1' rel='stylesheet' type='text/css'/>
3
+ <link href='css/swagger.custom.css?v=2.0.0-M2-1' rel='stylesheet' type='text/css'/>
4
4
 
5
5
  <h1>
6
6
  {{title}}
@@ -3,35 +3,35 @@
3
3
  <head>
4
4
  <meta charset="UTF-8">
5
5
  <title>Swagger UI</title>
6
- <link rel="icon" type="image/png" href="images/favicon-32x32.png?v=2.0.0-M2" sizes="32x32"/>
7
- <link rel="icon" type="image/png" href="images/favicon-16x16.png?v=2.0.0-M2" sizes="16x16"/>
8
- <link href='css/typography.css?v=2.0.0-M2' media='screen' rel='stylesheet' type='text/css'/>
9
- <link href='css/reset.css?v=2.0.0-M2' media='screen' rel='stylesheet' type='text/css'/>
10
- <link href='css/screen.css?v=2.0.0-M2' media='screen' rel='stylesheet' type='text/css'/>
11
- <link href='css/reset.css?v=2.0.0-M2' media='print' rel='stylesheet' type='text/css'/>
12
- <link href='css/print.css?v=2.0.0-M2' media='print' rel='stylesheet' type='text/css'/>
6
+ <link rel="icon" type="image/png" href="images/favicon-32x32.png?v=2.0.0-M2-1" sizes="32x32"/>
7
+ <link rel="icon" type="image/png" href="images/favicon-16x16.png?v=2.0.0-M2-1" sizes="16x16"/>
8
+ <link href='css/typography.css?v=2.0.0-M2-1' media='screen' rel='stylesheet' type='text/css'/>
9
+ <link href='css/reset.css?v=2.0.0-M2-1' media='screen' rel='stylesheet' type='text/css'/>
10
+ <link href='css/screen.css?v=2.0.0-M2-1' media='screen' rel='stylesheet' type='text/css'/>
11
+ <link href='css/reset.css?v=2.0.0-M2-1' media='print' rel='stylesheet' type='text/css'/>
12
+ <link href='css/print.css?v=2.0.0-M2-1' media='print' rel='stylesheet' type='text/css'/>
13
13
 
14
- <script src='lib/object-assign-pollyfill.js?v=2.0.0-M2' type='text/javascript'></script>
15
- <script src='lib/jquery-3.4.1.min.js?v=2.0.0-M2' type='text/javascript'></script>
16
- <script src='lib/jquery.slideto.min.js?v=2.0.0-M2' type='text/javascript'></script>
17
- <script src='lib/jquery.wiggle.min.js?v=2.0.0-M2' type='text/javascript'></script>
14
+ <script src='lib/object-assign-pollyfill.js?v=2.0.0-M2-1' type='text/javascript'></script>
15
+ <script src='lib/jquery-3.4.1.min.js?v=2.0.0-M2-1' type='text/javascript'></script>
16
+ <script src='lib/jquery.slideto.min.js?v=2.0.0-M2-1' type='text/javascript'></script>
17
+ <script src='lib/jquery.wiggle.min.js?v=2.0.0-M2-1' type='text/javascript'></script>
18
18
 
19
- <script src="lib/jquery-migrate-1.4.1.min.js?v=2.0.0-M2"></script>
20
- <script src='lib/jquery.ba-bbq.min.js?v=2.0.0-M2' type='text/javascript'></script>
21
- <script src='lib/handlebars.min-v4.7.3.js?v=2.0.0-M2' type='text/javascript'></script>
22
- <script src='lib/lodash.min.js?v=2.0.0-M2' type='text/javascript'></script>
23
- <script src='lib/backbone-min.js?v=2.0.0-M2' type='text/javascript'></script>
24
- <script src='swagger-ui.js?v=2.0.0-M2' type='text/javascript'></script>
25
- <script src='lib/highlight.9.1.0.pack.js?v=2.0.0-M2' type='text/javascript'></script>
26
- <script src='lib/highlight.9.1.0.pack_extended.js?v=2.0.0-M2' type='text/javascript'></script>
27
- <script src='lib/jsoneditor.min.js?v=2.0.0-M2' type='text/javascript'></script>
28
- <script src='lib/marked.js?v=2.0.0-M2' type='text/javascript'></script>
29
- <script src='lib/swagger-oauth.js?v=2.0.0-M2' type='text/javascript'></script>
19
+ <script src="lib/jquery-migrate-1.4.1.min.js?v=2.0.0-M2-1"></script>
20
+ <script src='lib/jquery.ba-bbq.min.js?v=2.0.0-M2-1' type='text/javascript'></script>
21
+ <script src='lib/handlebars.min-v4.7.3.js?v=2.0.0-M2-1' type='text/javascript'></script>
22
+ <script src='lib/lodash.min.js?v=2.0.0-M2-1' type='text/javascript'></script>
23
+ <script src='lib/backbone-min.js?v=2.0.0-M2-1' type='text/javascript'></script>
24
+ <script src='swagger-ui.js?v=2.0.0-M2-1' type='text/javascript'></script>
25
+ <script src='lib/highlight.9.1.0.pack.js?v=2.0.0-M2-1' type='text/javascript'></script>
26
+ <script src='lib/highlight.9.1.0.pack_extended.js?v=2.0.0-M2-1' type='text/javascript'></script>
27
+ <script src='lib/jsoneditor.min.js?v=2.0.0-M2-1' type='text/javascript'></script>
28
+ <script src='lib/marked.js?v=2.0.0-M2-1' type='text/javascript'></script>
29
+ <script src='lib/swagger-oauth.js?v=2.0.0-M2-1' type='text/javascript'></script>
30
30
 
31
31
  <!-- Some basic translations -->
32
- <!-- <script src='lang/translator.js?v=2.0.0-M2' type='text/javascript'></script> -->
33
- <!-- <script src='lang/ru.js?v=2.0.0-M2' type='text/javascript'></script> -->
34
- <!-- <script src='lang/en.js?v=2.0.0-M2' type='text/javascript'></script> -->
32
+ <!-- <script src='lang/translator.js?v=2.0.0-M2-1' type='text/javascript'></script> -->
33
+ <!-- <script src='lang/ru.js?v=2.0.0-M2-1' type='text/javascript'></script> -->
34
+ <!-- <script src='lang/en.js?v=2.0.0-M2-1' type='text/javascript'></script> -->
35
35
 
36
36
  <script type="text/javascript">
37
37
  $(function () {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "graphdb-workbench",
3
- "version": "2.0.0-M2",
3
+ "version": "2.0.0-M2-1",
4
4
  "description": "The web application for GraphDB APIs",
5
5
  "scripts": {
6
6
  "build": "webpack --config=webpack.config.prod.js",
@@ -1,2 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[26,31,84],{42:function(e,t){angular.module("graphdb.framework.rest.cluster.service",[]).factory("ClusterRestService",r),r.$inject=["$http"];const n="rest/cluster";function r(e){return{getClusterConfig:function(){return e.get(`${n}/config`)},createCluster:function(t){return e.post(`${n}/config`,t)},updateCluster:function(t){t.nodes&&delete t.nodes;return e.patch(`${n}/config`,t)},deleteCluster:function(t){const r=$.param({force:t});return e.delete(`${n}/config?${r}`)},addNodesToCluster:function(t){return e.post(`${n}/config/node`,t)},removeNodesFromCluster:function(t){return e.delete(`${n}/config/node`,t)},getClusterStatus:function(){return e.get(`${n}/group/status`)},getNodeStatus:function(){return e.get(`${n}/node/status`)}}}},49:function(e,t,n){"use strict";n.r(t),n.d(t,"RPC_ADDRESS_PATTERN",(function(){return s}));n(3),n(42);function r(e,t,n,r,o,s,a,c,u,i,l,d,g,f,m){e.loader=!0,e.setLoader=function(t,n){e.loader=t,l.cancel(e.loaderTimeout),t?e.loaderTimeout=l((function(){e.loader=t,e.loaderMessage=n}),50):e.loader=!1},e.getLoaderMessage=function(){return e.loaderMessage||m.instant("common.loading")},e.createCluster=function(){f.path(`${f.path()}/create`)},e.getClusterConfiguration=()=>{e.setLoader(!0),d.getClusterConfig().success((t,n)=>{e.clusterConfiguration=t}).error((t,n)=>{e.clusterConfiguration=null}).finally(()=>{e.setLoader(!1)})},e.getClusterStatus=function(){d.getClusterStatus().success((function(t,n){e.clusterConfiguration?(e.leader=t.find(e=>"LEADER"===e.nodeState),e.leader?(e.followers=t.filter(t=>t!==e.leader),e.followers.forEach(t=>{t.syncStatus=e.leader.syncStatus[t.address]})):e.followers=t):e.getClusterConfiguration()})).error((function(t,n){404===n&&(e.clusterConfiguration=null)}))},e.showDeleteDialog=()=>{s.open({templateUrl:"js/angular/clustermanagement/templates/modal/cluster-delete-dialog.html",controller:"DeleteClusterCtrl"}).result.then((function(t){const n=m.instant("cluster_management.delete_cluster_dialog.loader_message");e.setLoader(!0,n),d.deleteCluster(t).success(t=>{if(Object.values(t).every(e=>"DELETED"===e)){const e=m.instant("cluster_management.delete_cluster_dialog.notifications.success_delete");r.success(e)}else{const e=m.instant("cluster_management.delete_cluster_dialog.notifications.success_delete_partial"),n=Object.keys(t).reduce((e,n)=>e+=`<div>${n} - ${t[n]}</div>`,"");r.success(n,e,{allowHtml:!0})}e.getClusterConfiguration()}).error(e=>{const t=m.instant("cluster_management.delete_cluster_dialog.notifications.fail_delete"),n=Object.keys(e).reduce((t,n)=>t+=`<div>${n} - ${e[n]}</div>`,"");r.error(n,t,{allowHtml:!0})}).finally(()=>e.setLoader(!1))}))},e.getClusterConfiguration(),e.getClusterStatus();let p=0;const C=u((function(){p%3==0&&e.getClusterConfiguration(),p++,e.clusterConfiguration&&e.getClusterStatus()}),2e3);e.$on("$destroy",(function(){u.cancel(C)}))}angular.module("graphdb.framework.clustermanagement.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.repositories.service","graphdb.framework.rest.cluster.service","toastr"]).controller("ClusterManagementCtrl",r).controller("CreateClusterCtrl",a).controller("DeleteClusterCtrl",c),r.$inject=["$scope","$http","$q","toastr","$repositories","$modal","$sce","$window","$interval","ModalService","$timeout","ClusterRestService","RepositoriesRestService","$location","$translate"];const o=function(){const e=document.getElementById("advancedOptions");if(e){const t=e.getAttribute("aria-expanded");if(t&&"true"===t)return"fa fa-angle-down"}return"fa fa-angle-right"},s=new RegExp("^[\\w\\d][\\w\\d\\.]+:[\\d]+\\/?\\w*");function a(e,t,n,r,a,c,u,i){t.pageTitle=i.instant("cluster_management.cluster_page.create_page_title"),t.autofocusId="autofocus",t.errors=[],t.clusterConfiguration={electionMinTimeout:1500,electionRangeTimeout:2e3,heartbeatInterval:500,messageSizeKB:64,nodes:[],verificationTimeout:1500},c.getNodeStatus().then(e=>{t.currentNode=e}).catch(e=>{t.currentNode=e.data}).finally(()=>{t.clusterConfiguration.nodes.push(t.currentNode.address)}),t.getAdvancedOptionsClass=o,e.$on("$translateChangeSuccess",(function(){t.pageTitle=i.instant("cluster_management.cluster_page.create_page_title")})),t.getLoaderMessage=function(){return t.loaderMessage||i.instant("common.loading")},t.goToClusterManagementPage=function(){r.path("/cluster")},t.createCluster=function(){!function(){const e=!t.clusterConfigurationForm.$invalid,n=t.clusterConfiguration.nodes&&t.clusterConfiguration.nodes.length>=2;return e&&n}()?u.warning(i.instant("cluster_management.cluster_page.notifications.form_invalid")):(t.setLoader(!0,i.instant("cluster_management.cluster_page.creating_cluster_loader")),c.createCluster(t.clusterConfiguration).success((function(e,n){u.success(i.instant("cluster_management.cluster_page.notifications.create_success"));const r=a((function(){t.setLoader(!1),t.goToClusterManagementPage()}),2e3);t.$on("$destroy",(function(){a.cancel(r)}))})).error((function(e,n){!function(e,n){delete t.preconditionErrors,u.error(i.instant("cluster_management.cluster_page.notifications.create_failed")),t.errors.splice(0),412===n?t.preconditionErrors=Object.keys(e).map(t=>`${t} - ${e[t]}`):400===n?t.errors.push(...e):409===n&&t.errors.push(e)}(e,n),t.setLoader(!1)})))},t.setLoader=function(e,n){a.cancel(t.loaderTimeout),e?t.loaderTimeout=a((function(){t.loader=e,t.loaderMessage=n}),300):t.loader=!1},t.onInput=function(){t.badRpcAddress=!1},t.addNodeToList=function(e){e&&!t.clusterConfiguration.nodes.includes(e)&&(s.test(e)?(t.clusterConfiguration.nodes.push(e),t.rpcAddress=""):t.badRpcAddress=!0)},t.removeNodeFromList=function(e,n){t.clusterConfiguration.nodes.splice(e,1)}}function c(e,t){e.forceDelete=!1,e.ok=function(){t.close(e.forceDelete)},e.cancel=function(){t.dismiss("cancel")}}a.$inject=["$rootScope","$scope","$routeParams","$location","$timeout","ClusterRestService","toastr","$translate"],c.$inject=["$scope","$modalInstance"]},93:function(e,t,n){"use strict";n.r(t);n(3),n(9),n(49),n(87),n(8),n(224),n(221);angular.module("graphdb.framework.clustermanagement",["ngAnimate","toastr","graphdb.framework.clustermanagement.controllers","graphdb.framework.clustermanagement.directives"])}}]);
2
- //# sourceMappingURL=26.91d378afd575c34dddf3.bundle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["webpack:///./src/js/angular/rest/cluster.rest.service.js","webpack:///./src/js/angular/clustermanagement/controllers.js","webpack:///./src/js/angular/clustermanagement/app.js"],"names":["angular","module","factory","ClusterRestService","$inject","CLUSTER_GROUP_ENDPOINT","$http","getClusterConfig","get","createCluster","groupConfiguration","post","updateCluster","nodes","patch","deleteCluster","forceDelete","data","$","param","force","delete","addNodesToCluster","nodesArray","removeNodesFromCluster","getClusterStatus","getNodeStatus","ClusterManagementCtrl","$scope","$q","toastr","$repositories","$modal","$sce","$window","$interval","ModalService","$timeout","RepositoriesRestService","$location","$translate","loader","setLoader","message","cancel","loaderTimeout","loaderMessage","getLoaderMessage","instant","path","getClusterConfiguration","success","status","clusterConfiguration","error","finally","leader","find","node","nodeState","followers","filter","forEach","syncStatus","address","showDeleteDialog","open","templateUrl","controller","result","then","Object","values","every","successMessage","failedNodesList","keys","reduce","key","allowHtml","failMessage","timerCounter","timer","$on","CreateClusterCtrl","DeleteClusterCtrl","getAdvancedOptionsClass","optionsModule","document","getElementById","isAriaExpanded","getAttribute","RPC_ADDRESS_PATTERN","RegExp","$rootScope","$routeParams","pageTitle","autofocusId","errors","electionMinTimeout","electionRangeTimeout","heartbeatInterval","messageSizeKB","verificationTimeout","currentNode","catch","push","goToClusterManagementPage","isFormValid","clusterConfigurationForm","$invalid","nodesListValid","length","validateClusterSettings","warning","preconditionErrors","splice","map","handleErrors","onInput","badRpcAddress","addNodeToList","nodeRpcAddress","includes","test","rpcAddress","removeNodeFromList","index","$modalInstance","ok","close","dismiss"],"mappings":"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","file":"26.91d378afd575c34dddf3.bundle.js","sourcesContent":["angular\n .module('graphdb.framework.rest.cluster.service', [])\n .factory('ClusterRestService', ClusterRestService);\n\nClusterRestService.$inject = ['$http'];\n\nconst CLUSTER_GROUP_ENDPOINT = 'rest/cluster';\n\nfunction ClusterRestService($http) {\n return {\n getClusterConfig,\n createCluster,\n updateCluster,\n deleteCluster,\n addNodesToCluster,\n removeNodesFromCluster,\n getClusterStatus,\n getNodeStatus\n };\n\n function getClusterConfig() {\n return $http.get(`${CLUSTER_GROUP_ENDPOINT}/config`);\n }\n\n function createCluster(groupConfiguration) {\n return $http.post(`${CLUSTER_GROUP_ENDPOINT}/config`, groupConfiguration);\n }\n\n function updateCluster(groupConfiguration) {\n if (groupConfiguration.nodes) {\n delete groupConfiguration.nodes;\n }\n return $http.patch(`${CLUSTER_GROUP_ENDPOINT}/config`, groupConfiguration);\n }\n\n function deleteCluster(forceDelete) {\n const data = $.param({\n force: forceDelete\n });\n return $http.delete(`${CLUSTER_GROUP_ENDPOINT}/config?${data}`);\n }\n\n function addNodesToCluster(nodesArray) {\n return $http.post(`${CLUSTER_GROUP_ENDPOINT}/config/node`, nodesArray);\n }\n\n function removeNodesFromCluster(nodesArray) {\n return $http.delete(`${CLUSTER_GROUP_ENDPOINT}/config/node`, nodesArray);\n }\n\n function getClusterStatus() {\n return $http.get(`${CLUSTER_GROUP_ENDPOINT}/group/status`);\n }\n\n function getNodeStatus() {\n return $http.get(`${CLUSTER_GROUP_ENDPOINT}/node/status`);\n }\n}\n","import 'angular/core/services';\nimport 'angular/rest/cluster.rest.service';\n\nconst modules = [\n 'ui.bootstrap',\n 'graphdb.framework.core.services.repositories',\n 'graphdb.framework.rest.repositories.service',\n 'graphdb.framework.rest.cluster.service',\n 'toastr'\n];\n\nangular\n .module('graphdb.framework.clustermanagement.controllers', modules)\n .controller('ClusterManagementCtrl', ClusterManagementCtrl)\n .controller('CreateClusterCtrl', CreateClusterCtrl)\n .controller('DeleteClusterCtrl', DeleteClusterCtrl);\n\nClusterManagementCtrl.$inject = ['$scope', '$http', '$q', 'toastr', '$repositories', '$modal', '$sce',\n '$window', '$interval', 'ModalService', '$timeout', 'ClusterRestService', 'RepositoriesRestService', '$location', '$translate'];\n\nfunction ClusterManagementCtrl($scope, $http, $q, toastr, $repositories, $modal, $sce,\n $window, $interval, ModalService, $timeout, ClusterRestService, RepositoriesRestService, $location, $translate) {\n $scope.loader = true;\n // TODO: Similar function is declared multiple times in different components. Find out how to avoid it!\n $scope.setLoader = function (loader, message) {\n $scope.loader = loader;\n $timeout.cancel($scope.loaderTimeout);\n if (loader) {\n $scope.loaderTimeout = $timeout(function () {\n $scope.loader = loader;\n $scope.loaderMessage = message;\n }, 50);\n } else {\n $scope.loader = false;\n }\n };\n\n $scope.getLoaderMessage = function () {\n return $scope.loaderMessage || $translate.instant('common.loading');\n };\n\n $scope.createCluster = function () {\n $location.path(`${$location.path()}/create`);\n };\n\n $scope.getClusterConfiguration = () => {\n $scope.setLoader(true);\n ClusterRestService.getClusterConfig()\n .success((data, status) => {\n $scope.clusterConfiguration = data;\n })\n .error((data, status) => {\n $scope.clusterConfiguration = null;\n })\n .finally(() => {\n $scope.setLoader(false);\n });\n };\n\n $scope.getClusterStatus = function () {\n ClusterRestService.getClusterStatus()\n .success(function (data, status) {\n if (!$scope.clusterConfiguration) {\n $scope.getClusterConfiguration();\n return;\n }\n $scope.leader = data.find((node) => node.nodeState === 'LEADER');\n\n if ($scope.leader) {\n $scope.followers = data.filter((node) => node !== $scope.leader);\n $scope.followers.forEach((node) => {\n node.syncStatus = $scope.leader.syncStatus[node.address];\n });\n } else {\n $scope.followers = data;\n }\n })\n .error(function (data, status) {\n if (status === 404) {\n $scope.clusterConfiguration = null;\n }\n });\n };\n\n $scope.showDeleteDialog = () => {\n const modalInstance = $modal.open({\n templateUrl: 'js/angular/clustermanagement/templates/modal/cluster-delete-dialog.html',\n controller: 'DeleteClusterCtrl'\n });\n\n modalInstance.result.then(function (forceDelete) {\n const loaderMessage = $translate.instant('cluster_management.delete_cluster_dialog.loader_message');\n $scope.setLoader(true, loaderMessage);\n ClusterRestService.deleteCluster(forceDelete)\n .success((data) => {\n const allNodesDeleted = Object.values(data).every((node) => node === 'DELETED');\n if (allNodesDeleted) {\n const successMessage = $translate.instant('cluster_management.delete_cluster_dialog.notifications.success_delete');\n toastr.success(successMessage);\n } else {\n const successMessage = $translate.instant('cluster_management.delete_cluster_dialog.notifications.success_delete_partial');\n const failedNodesList = Object.keys(data)\n .reduce((message, key) => message += `<div>${key} - ${data[key]}</div>`, '');\n toastr.success(failedNodesList, successMessage, {allowHtml: true});\n }\n $scope.getClusterConfiguration();\n })\n .error((data) => {\n const failMessage = $translate.instant('cluster_management.delete_cluster_dialog.notifications.fail_delete');\n const failedNodesList = Object.keys(data)\n .reduce((message, key) => message += `<div>${key} - ${data[key]}</div>`, '');\n toastr.error(failedNodesList, failMessage, {allowHtml: true});\n })\n .finally(() => $scope.setLoader(false));\n });\n };\n\n $scope.getClusterConfiguration();\n $scope.getClusterStatus();\n\n let timerCounter = 0;\n const timer = $interval(function () {\n if (timerCounter % 3 === 0) {\n $scope.getClusterConfiguration();\n }\n timerCounter++;\n if ($scope.clusterConfiguration) {\n $scope.getClusterStatus();\n }\n }, 2000);\n\n $scope.$on(\"$destroy\", function () {\n $interval.cancel(timer);\n });\n}\n\n\nconst getAdvancedOptionsClass = function () {\n const optionsModule = document.getElementById('advancedOptions');\n\n if (optionsModule) {\n const isAriaExpanded = optionsModule.getAttribute('aria-expanded');\n if (isAriaExpanded && isAriaExpanded === 'true') {\n return 'fa fa-angle-down';\n }\n }\n return 'fa fa-angle-right';\n};\n\nexport const RPC_ADDRESS_PATTERN = new RegExp('^[\\\\w\\\\d][\\\\w\\\\d\\\\.]+:[\\\\d]+\\\\/?\\\\w*');\n\nCreateClusterCtrl.$inject = ['$rootScope', '$scope', '$routeParams', '$location', '$timeout', 'ClusterRestService', 'toastr', '$translate'];\n\nfunction CreateClusterCtrl($rootScope, $scope, $routeParams, $location, $timeout, ClusterRestService, toastr, $translate) {\n $scope.pageTitle = $translate.instant('cluster_management.cluster_page.create_page_title');\n $scope.autofocusId = 'autofocus';\n $scope.errors = [];\n $scope.clusterConfiguration = {\n electionMinTimeout: 1500,\n electionRangeTimeout: 2000,\n heartbeatInterval: 500,\n messageSizeKB: 64,\n nodes: [],\n verificationTimeout: 1500\n };\n\n function getCurrentNodeStatus() {\n return ClusterRestService.getNodeStatus()\n .then((data) => {\n $scope.currentNode = data;\n })\n .catch((error) => {\n $scope.currentNode = error.data;\n })\n .finally(() => {\n $scope.clusterConfiguration.nodes.push($scope.currentNode.address);\n });\n }\n getCurrentNodeStatus();\n\n $scope.getAdvancedOptionsClass = getAdvancedOptionsClass;\n\n $rootScope.$on('$translateChangeSuccess', function () {\n $scope.pageTitle = $translate.instant('cluster_management.cluster_page.create_page_title');\n });\n\n $scope.getLoaderMessage = function () {\n return $scope.loaderMessage || $translate.instant('common.loading');\n };\n\n $scope.goToClusterManagementPage = function () {\n $location.path('/cluster');\n };\n\n $scope.createCluster = function () {\n if (!validateClusterSettings()) {\n toastr.warning($translate.instant('cluster_management.cluster_page.notifications.form_invalid'));\n return;\n }\n $scope.setLoader(true, $translate.instant('cluster_management.cluster_page.creating_cluster_loader'));\n ClusterRestService.createCluster($scope.clusterConfiguration)\n .success(function (data, status) {\n toastr.success($translate.instant('cluster_management.cluster_page.notifications.create_success'));\n const timer = $timeout(function () {\n $scope.setLoader(false);\n $scope.goToClusterManagementPage();\n }, 2000);\n $scope.$on('$destroy', function () {\n $timeout.cancel(timer);\n });\n })\n .error(function (data, status) {\n handleErrors(data, status);\n $scope.setLoader(false);\n });\n };\n\n function handleErrors(data, status) {\n delete $scope.preconditionErrors;\n toastr.error($translate.instant('cluster_management.cluster_page.notifications.create_failed'));\n $scope.errors.splice(0);\n if (status === 412) {\n $scope.preconditionErrors = Object.keys(data).map((key) => `${key} - ${data[key]}`);\n } else if (status === 400) {\n $scope.errors.push(...data);\n } else if (status === 409) {\n $scope.errors.push(data);\n }\n }\n\n function validateClusterSettings() {\n const isFormValid = !$scope.clusterConfigurationForm.$invalid;\n const nodesListValid = $scope.clusterConfiguration.nodes && $scope.clusterConfiguration.nodes.length >= 2;\n return isFormValid && nodesListValid;\n }\n\n $scope.setLoader = function (loader, message) {\n $timeout.cancel($scope.loaderTimeout);\n if (loader) {\n $scope.loaderTimeout = $timeout(function () {\n $scope.loader = loader;\n $scope.loaderMessage = message;\n }, 300);\n } else {\n $scope.loader = false;\n }\n };\n\n $scope.onInput = function () {\n $scope.badRpcAddress = false;\n };\n\n $scope.addNodeToList = function (nodeRpcAddress) {\n if (!nodeRpcAddress || $scope.clusterConfiguration.nodes.includes(nodeRpcAddress)) {\n return;\n } else if (!RPC_ADDRESS_PATTERN.test(nodeRpcAddress)) {\n $scope.badRpcAddress = true;\n return;\n }\n $scope.clusterConfiguration.nodes.push(nodeRpcAddress);\n $scope.rpcAddress = '';\n };\n\n $scope.removeNodeFromList = function (index, node) {\n $scope.clusterConfiguration.nodes.splice(index, 1);\n };\n}\n\nDeleteClusterCtrl.$inject = ['$scope', '$modalInstance'];\n\nfunction DeleteClusterCtrl($scope, $modalInstance) {\n $scope.forceDelete = false;\n\n $scope.ok = function () {\n $modalInstance.close($scope.forceDelete);\n };\n\n $scope.cancel = function () {\n $modalInstance.dismiss('cancel');\n };\n}\n","import 'angular/core/services';\nimport 'angular/core/directives';\nimport 'angular/clustermanagement/controllers';\nimport 'angular/clustermanagement/directives';\nimport 'angular/core/services/repositories.service';\nimport 'd3/build/d3';\nimport 'lib/d3-ONTO-chord-patch';\n\nconst modules = [\n 'ngAnimate',\n 'toastr',\n 'graphdb.framework.clustermanagement.controllers',\n 'graphdb.framework.clustermanagement.directives'\n];\n\nconst clusterManagementApp = angular.module('graphdb.framework.clustermanagement', modules);\n"],"sourceRoot":""}
@@ -1,2 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[31,84],{42:function(e,t){angular.module("graphdb.framework.rest.cluster.service",[]).factory("ClusterRestService",r),r.$inject=["$http"];const n="rest/cluster";function r(e){return{getClusterConfig:function(){return e.get(`${n}/config`)},createCluster:function(t){return e.post(`${n}/config`,t)},updateCluster:function(t){t.nodes&&delete t.nodes;return e.patch(`${n}/config`,t)},deleteCluster:function(t){const r=$.param({force:t});return e.delete(`${n}/config?${r}`)},addNodesToCluster:function(t){return e.post(`${n}/config/node`,t)},removeNodesFromCluster:function(t){return e.delete(`${n}/config/node`,t)},getClusterStatus:function(){return e.get(`${n}/group/status`)},getNodeStatus:function(){return e.get(`${n}/node/status`)}}}},49:function(e,t,n){"use strict";n.r(t),n.d(t,"RPC_ADDRESS_PATTERN",(function(){return s}));n(3),n(42);function r(e,t,n,r,o,s,a,c,i,u,l,d,g,f,m){e.loader=!0,e.setLoader=function(t,n){e.loader=t,l.cancel(e.loaderTimeout),t?e.loaderTimeout=l((function(){e.loader=t,e.loaderMessage=n}),50):e.loader=!1},e.getLoaderMessage=function(){return e.loaderMessage||m.instant("common.loading")},e.createCluster=function(){f.path(`${f.path()}/create`)},e.getClusterConfiguration=()=>{e.setLoader(!0),d.getClusterConfig().success((t,n)=>{e.clusterConfiguration=t}).error((t,n)=>{e.clusterConfiguration=null}).finally(()=>{e.setLoader(!1)})},e.getClusterStatus=function(){d.getClusterStatus().success((function(t,n){e.clusterConfiguration?(e.leader=t.find(e=>"LEADER"===e.nodeState),e.leader?(e.followers=t.filter(t=>t!==e.leader),e.followers.forEach(t=>{t.syncStatus=e.leader.syncStatus[t.address]})):e.followers=t):e.getClusterConfiguration()})).error((function(t,n){404===n&&(e.clusterConfiguration=null)}))},e.showDeleteDialog=()=>{s.open({templateUrl:"js/angular/clustermanagement/templates/modal/cluster-delete-dialog.html",controller:"DeleteClusterCtrl"}).result.then((function(t){const n=m.instant("cluster_management.delete_cluster_dialog.loader_message");e.setLoader(!0,n),d.deleteCluster(t).success(t=>{if(Object.values(t).every(e=>"DELETED"===e)){const e=m.instant("cluster_management.delete_cluster_dialog.notifications.success_delete");r.success(e)}else{const e=m.instant("cluster_management.delete_cluster_dialog.notifications.success_delete_partial"),n=Object.keys(t).reduce((e,n)=>e+=`<div>${n} - ${t[n]}</div>`,"");r.success(n,e,{allowHtml:!0})}e.getClusterConfiguration()}).error(e=>{const t=m.instant("cluster_management.delete_cluster_dialog.notifications.fail_delete"),n=Object.keys(e).reduce((t,n)=>t+=`<div>${n} - ${e[n]}</div>`,"");r.error(n,t,{allowHtml:!0})}).finally(()=>e.setLoader(!1))}))},e.getClusterConfiguration(),e.getClusterStatus();let p=0;const C=i((function(){p%3==0&&e.getClusterConfiguration(),p++,e.clusterConfiguration&&e.getClusterStatus()}),2e3);e.$on("$destroy",(function(){i.cancel(C)}))}angular.module("graphdb.framework.clustermanagement.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.repositories.service","graphdb.framework.rest.cluster.service","toastr"]).controller("ClusterManagementCtrl",r).controller("CreateClusterCtrl",a).controller("DeleteClusterCtrl",c),r.$inject=["$scope","$http","$q","toastr","$repositories","$modal","$sce","$window","$interval","ModalService","$timeout","ClusterRestService","RepositoriesRestService","$location","$translate"];const o=function(){const e=document.getElementById("advancedOptions");if(e){const t=e.getAttribute("aria-expanded");if(t&&"true"===t)return"fa fa-angle-down"}return"fa fa-angle-right"},s=new RegExp("^[\\w\\d][\\w\\d\\.]+:[\\d]+\\/?\\w*");function a(e,t,n,r,a,c,i,u){t.pageTitle=u.instant("cluster_management.cluster_page.create_page_title"),t.autofocusId="autofocus",t.errors=[],t.clusterConfiguration={electionMinTimeout:1500,electionRangeTimeout:2e3,heartbeatInterval:500,messageSizeKB:64,nodes:[],verificationTimeout:1500},c.getNodeStatus().then(e=>{t.currentNode=e}).catch(e=>{t.currentNode=e.data}).finally(()=>{t.clusterConfiguration.nodes.push(t.currentNode.address)}),t.getAdvancedOptionsClass=o,e.$on("$translateChangeSuccess",(function(){t.pageTitle=u.instant("cluster_management.cluster_page.create_page_title")})),t.getLoaderMessage=function(){return t.loaderMessage||u.instant("common.loading")},t.goToClusterManagementPage=function(){r.path("/cluster")},t.createCluster=function(){!function(){const e=!t.clusterConfigurationForm.$invalid,n=t.clusterConfiguration.nodes&&t.clusterConfiguration.nodes.length>=2;return e&&n}()?i.warning(u.instant("cluster_management.cluster_page.notifications.form_invalid")):(t.setLoader(!0,u.instant("cluster_management.cluster_page.creating_cluster_loader")),c.createCluster(t.clusterConfiguration).success((function(e,n){i.success(u.instant("cluster_management.cluster_page.notifications.create_success"));const r=a((function(){t.setLoader(!1),t.goToClusterManagementPage()}),2e3);t.$on("$destroy",(function(){a.cancel(r)}))})).error((function(e,n){!function(e,n){delete t.preconditionErrors,i.error(u.instant("cluster_management.cluster_page.notifications.create_failed")),t.errors.splice(0),412===n?t.preconditionErrors=Object.keys(e).map(t=>`${t} - ${e[t]}`):400===n?t.errors.push(...e):409===n&&t.errors.push(e)}(e,n),t.setLoader(!1)})))},t.setLoader=function(e,n){a.cancel(t.loaderTimeout),e?t.loaderTimeout=a((function(){t.loader=e,t.loaderMessage=n}),300):t.loader=!1},t.onInput=function(){t.badRpcAddress=!1},t.addNodeToList=function(e){e&&!t.clusterConfiguration.nodes.includes(e)&&(s.test(e)?(t.clusterConfiguration.nodes.push(e),t.rpcAddress=""):t.badRpcAddress=!0)},t.removeNodeFromList=function(e,n){t.clusterConfiguration.nodes.splice(e,1)}}function c(e,t){e.forceDelete=!1,e.ok=function(){t.close(e.forceDelete)},e.cancel=function(){t.dismiss("cancel")}}a.$inject=["$rootScope","$scope","$routeParams","$location","$timeout","ClusterRestService","toastr","$translate"],c.$inject=["$scope","$modalInstance"]}}]);
2
- //# sourceMappingURL=31.200315980b2c01ad0795.bundle.js.map