@privateaim/client-vue 0.8.3 → 0.8.4

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 (114) hide show
  1. package/dist/components/Dropdown.d.ts +2 -2
  2. package/dist/components/FEntityDelete.d.ts +8 -12
  3. package/dist/components/FEntityDelete.d.ts.map +1 -1
  4. package/dist/components/analysis/FAnalyses.d.ts +7 -7
  5. package/dist/components/analysis/FAnalysis.d.ts +5 -5
  6. package/dist/components/analysis/FAnalysisBasicForm.vue.d.ts +192 -7
  7. package/dist/components/analysis/FAnalysisBasicForm.vue.d.ts.map +1 -1
  8. package/dist/components/analysis/FAnalysisBuildStatusText.vue.d.ts +5 -5
  9. package/dist/components/analysis/FAnalysisCommand.d.ts +5 -5
  10. package/dist/components/analysis/FAnalysisCommand.d.ts.map +1 -1
  11. package/dist/components/analysis/FAnalysisConfigurationStatusText.vue.d.ts +5 -5
  12. package/dist/components/analysis/FAnalysisImageCommand.d.ts +6 -6
  13. package/dist/components/analysis/FAnalysisItem.d.ts +325 -6
  14. package/dist/components/analysis/FAnalysisItem.d.ts.map +1 -1
  15. package/dist/components/analysis/FAnalysisItemCard.vue.d.ts +510 -8
  16. package/dist/components/analysis/FAnalysisItemCard.vue.d.ts.map +1 -1
  17. package/dist/components/analysis/FAnalysisName.d.ts +6 -6
  18. package/dist/components/analysis/FAnalysisPipeline.vue.d.ts +91 -6
  19. package/dist/components/analysis/FAnalysisPipeline.vue.d.ts.map +1 -1
  20. package/dist/components/analysis/wizard/FAnalysisWizard.vue.d.ts +1013 -8
  21. package/dist/components/analysis/wizard/FAnalysisWizard.vue.d.ts.map +1 -1
  22. package/dist/components/analysis/wizard/FAnalysisWizardStepBase.vue.d.ts +430 -6
  23. package/dist/components/analysis/wizard/FAnalysisWizardStepBase.vue.d.ts.map +1 -1
  24. package/dist/components/analysis/wizard/FAnalysisWizardStepFiles.vue.d.ts +497 -9
  25. package/dist/components/analysis/wizard/FAnalysisWizardStepFiles.vue.d.ts.map +1 -1
  26. package/dist/components/analysis/wizard/FAnalysisWizardStepFinal.vue.d.ts +1 -1
  27. package/dist/components/analysis/wizard/FAnalysisWizardStepFinal.vue.d.ts.map +1 -1
  28. package/dist/components/analysis-bucket/FAnalysisBucket.d.ts +5 -5
  29. package/dist/components/analysis-bucket/FAnalysisBucketDownload.d.ts +4 -4
  30. package/dist/components/analysis-bucket/FAnalysisBucketDownload.d.ts.map +1 -1
  31. package/dist/components/analysis-bucket-file/FAnalysisBucketFile.vue.d.ts +9 -9
  32. package/dist/components/analysis-bucket-file/FAnalysisBucketFileDownload.d.ts +4 -4
  33. package/dist/components/analysis-bucket-file/FAnalysisBucketFileDownload.d.ts.map +1 -1
  34. package/dist/components/analysis-bucket-file/FAnalysisBucketFileManager.vue.d.ts +255 -17
  35. package/dist/components/analysis-bucket-file/FAnalysisBucketFileManager.vue.d.ts.map +1 -1
  36. package/dist/components/analysis-bucket-file/FAnalysisBucketFiles.d.ts +7 -7
  37. package/dist/components/analysis-bucket-file/FAnalysisBucketFiles.d.ts.map +1 -1
  38. package/dist/components/analysis-bucket-file/FAnalysisFormFile.vue.d.ts +6 -6
  39. package/dist/components/analysis-bucket-file/FAnalysisFormFile.vue.d.ts.map +1 -1
  40. package/dist/components/analysis-log/FAnalysisLog.d.ts +5 -5
  41. package/dist/components/analysis-log/FAnalysisLogs.d.ts +5 -5
  42. package/dist/components/analysis-node/FAnalsisNodeApprovalCommand.d.ts +9 -9
  43. package/dist/components/analysis-node/FAnalsisNodeApprovalCommand.d.ts.map +1 -1
  44. package/dist/components/analysis-node/FAnalysisNode.d.ts +5 -5
  45. package/dist/components/analysis-node/FAnalysisNodeApprovalStatus.d.ts +5 -5
  46. package/dist/components/analysis-node/FAnalysisNodeApprovalStatus.d.ts.map +1 -1
  47. package/dist/components/analysis-node/FAnalysisNodeAssignAction.d.ts +6 -6
  48. package/dist/components/analysis-node/FAnalysisNodeInCard.vue.d.ts +258 -6
  49. package/dist/components/analysis-node/FAnalysisNodeInCard.vue.d.ts.map +1 -1
  50. package/dist/components/analysis-node/FAnalysisNodeRunStatus.d.ts +5 -5
  51. package/dist/components/analysis-node/FAnalysisNodes.d.ts +11 -16
  52. package/dist/components/analysis-node/FAnalysisNodes.d.ts.map +1 -1
  53. package/dist/components/analysis-node/FAnalysisNodesProgress.vue.d.ts +124 -5
  54. package/dist/components/analysis-node/FAnalysisNodesProgress.vue.d.ts.map +1 -1
  55. package/dist/components/constants.d.ts +6 -0
  56. package/dist/components/constants.d.ts.map +1 -0
  57. package/dist/components/index.d.ts +1 -0
  58. package/dist/components/index.d.ts.map +1 -1
  59. package/dist/components/login/FLoginForm.vue.d.ts +179 -6
  60. package/dist/components/login/FLoginForm.vue.d.ts.map +1 -1
  61. package/dist/components/master-image/FMasterImagePicker.d.ts +85 -6
  62. package/dist/components/master-image/FMasterImagePicker.d.ts.map +1 -1
  63. package/dist/components/master-image/FMasterImages.d.ts +7 -7
  64. package/dist/components/master-image/FMasterImagesSync.d.ts +149 -2
  65. package/dist/components/master-image/FMasterImagesSync.d.ts.map +1 -1
  66. package/dist/components/master-image-group/FMasterImageGroups.d.ts +7 -7
  67. package/dist/components/node/FNodeForm.d.ts +7 -7
  68. package/dist/components/node/FNodeRegistryProject.d.ts +5 -5
  69. package/dist/components/node/FNodeRobot.d.ts +5 -5
  70. package/dist/components/node/FNodes.d.ts +7 -7
  71. package/dist/components/project/FProject.d.ts +5 -5
  72. package/dist/components/project/FProject.d.ts.map +1 -1
  73. package/dist/components/project/FProjectForm.d.ts +7 -7
  74. package/dist/components/project/FProjectForm.d.ts.map +1 -1
  75. package/dist/components/project/FProjectInForm.d.ts +4 -4
  76. package/dist/components/project/FProjectInForm.d.ts.map +1 -1
  77. package/dist/components/project/FProjectItem.d.ts +5 -5
  78. package/dist/components/project/FProjectItem.d.ts.map +1 -1
  79. package/dist/components/project/FProjectItemCard.vue.d.ts +191 -7
  80. package/dist/components/project/FProjectItemCard.vue.d.ts.map +1 -1
  81. package/dist/components/project/FProjects.d.ts +7 -7
  82. package/dist/components/project/FProjects.d.ts.map +1 -1
  83. package/dist/components/project-node/FProjectNode.d.ts +5 -5
  84. package/dist/components/project-node/FProjectNodeApprovalCommand.d.ts +9 -9
  85. package/dist/components/project-node/FProjectNodeApprovalCommand.d.ts.map +1 -1
  86. package/dist/components/project-node/FProjectNodeApprovalStatus.d.ts +5 -5
  87. package/dist/components/project-node/FProjectNodeApprovalStatus.d.ts.map +1 -1
  88. package/dist/components/project-node/FProjectNodeAssignAction.d.ts +6 -6
  89. package/dist/components/project-node/FProjectNodeInCard.vue.d.ts +160 -7
  90. package/dist/components/project-node/FProjectNodeInCard.vue.d.ts.map +1 -1
  91. package/dist/components/project-node/FProjectNodes.d.ts +9 -13
  92. package/dist/components/project-node/FProjectNodes.d.ts.map +1 -1
  93. package/dist/components/registry/FRegistries.d.ts +7 -7
  94. package/dist/components/registry/FRegistryCleanup.d.ts +150 -5
  95. package/dist/components/registry/FRegistryCleanup.d.ts.map +1 -1
  96. package/dist/components/registry/FRegistryForm.d.ts +7 -7
  97. package/dist/components/registry/FRegistrySetup.d.ts +150 -5
  98. package/dist/components/registry/FRegistrySetup.d.ts.map +1 -1
  99. package/dist/components/registry-project/FRegistryProject.d.ts +5 -5
  100. package/dist/components/registry-project/FRegistryProjectForm.d.ts +5 -5
  101. package/dist/components/registry-project/FRegistryProjects.d.ts +7 -7
  102. package/dist/components/utility/pagination/FPagination.d.ts +5 -5
  103. package/dist/components/utility/pagination/FPagination.d.ts.map +1 -1
  104. package/dist/components/utility/search/FSearch.d.ts +5 -5
  105. package/dist/components/utility/search/FSearch.d.ts.map +1 -1
  106. package/dist/components/utility/title/FTitle.d.ts +5 -5
  107. package/dist/components/utility/title/FTitle.d.ts.map +1 -1
  108. package/dist/core/http-client/setup.d.ts.map +1 -1
  109. package/dist/core/list/module.d.ts.map +1 -1
  110. package/dist/index.cjs +631 -698
  111. package/dist/index.cjs.map +1 -1
  112. package/dist/index.mjs +628 -698
  113. package/dist/index.mjs.map +1 -1
  114. package/package.json +28 -28
package/dist/index.cjs CHANGED
@@ -23,10 +23,113 @@ var bootstrapVueNext = require('bootstrap-vue-next');
23
23
  var timeago = require('@vuecs/timeago');
24
24
  var vue3FormWizard = require('vue3-form-wizard');
25
25
 
26
- var StoreName;
27
- (function(StoreName) {
26
+ /*
27
+ * Copyright (c) 2024-2024.
28
+ * Author Peter Placzek (tada5hi)
29
+ * For the full copyright and license information,
30
+ * view the LICENSE file that was distributed with this source code.
31
+ */ const BRACKET_NUMBER_REGEX = RegExp("(?<!\\\\)\\[(\\d+)]$");
32
+ /**
33
+ * Convert string to property path array.
34
+ *
35
+ * @see https://github.com/lodash/lodash/blob/main/src/.internal/stringToPath.ts
36
+ * @see https://github.com/chaijs/pathval
37
+ *
38
+ * @param segment
39
+ */ function pathToArray(segment) {
40
+ const str = segment.replace(/([^\\])\[/g, '$1.[');
41
+ const parts = str.match(/(\\\.|[^.]+?)+/g);
42
+ if (!parts) {
43
+ return [];
44
+ }
45
+ const result = [];
46
+ for(let i = 0; i < parts.length; i++){
47
+ if (parts[i] === 'constructor' || parts[i] === '__proto__' || parts[i] === 'prototype') {
48
+ continue;
49
+ }
50
+ const regex = BRACKET_NUMBER_REGEX.exec(parts[i]);
51
+ if (regex) {
52
+ result.push(regex[1]);
53
+ } else {
54
+ result.push(parts[i].replace(/\\([.[\]])/g, '$1'));
55
+ }
56
+ }
57
+ return result;
58
+ }
59
+ /*
60
+ * Copyright (c) 2024.
61
+ * Author Peter Placzek (tada5hi)
62
+ * For the full copyright and license information,
63
+ * view the LICENSE file that was distributed with this source code.
64
+ */ var Character;
65
+ (function(Character) {
66
+ Character["WILDCARD"] = "*";
67
+ Character["GLOBSTAR"] = "**";
68
+ })(Character || (Character = {}));
69
+ /*
70
+ * Copyright (c) 2024.
71
+ * Author Peter Placzek (tada5hi)
72
+ * For the full copyright and license information,
73
+ * view the LICENSE file that was distributed with this source code.
74
+ */ function isObject$3(input) {
75
+ return !!input && typeof input === 'object' && !Array.isArray(input);
76
+ }
77
+ function getPathValue(data, path) {
78
+ const parts = Array.isArray(path) ? path : pathToArray(path);
79
+ let res;
80
+ let temp = data;
81
+ let index = 0;
82
+ while(index < parts.length){
83
+ if (temp === null || typeof temp === 'undefined') {
84
+ break;
85
+ }
86
+ if (parts[index] in Object(temp)) {
87
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
88
+ // @ts-expect-error
89
+ temp = temp[parts[index]];
90
+ } else {
91
+ break;
92
+ }
93
+ if (index === parts.length - 1) {
94
+ res = temp;
95
+ }
96
+ index++;
97
+ }
98
+ return res;
99
+ }
100
+ const NUMBER_REGEX = /^\d+$/;
101
+ function setPathValue(data, path, value) {
102
+ const parts = Array.isArray(path) ? path : pathToArray(path);
103
+ let temp = data;
104
+ let index = 0;
105
+ while(index < parts.length){
106
+ /* istanbul ignore next */ if (!Array.isArray(temp) && !isObject$3(temp)) {
107
+ break;
108
+ }
109
+ const key = parts[index];
110
+ // [foo, '0']
111
+ if (typeof temp[key] === 'undefined') {
112
+ const match = NUMBER_REGEX.test(key);
113
+ if (match) {
114
+ temp[key] = [];
115
+ } else {
116
+ temp[key] = {};
117
+ }
118
+ }
119
+ if (index === parts.length - 1) {
120
+ temp[key] = value;
121
+ break;
122
+ }
123
+ index++;
124
+ temp = temp[key];
125
+ }
126
+ return data;
127
+ }
128
+
129
+ var StoreName = /*#__PURE__*/ function(StoreName) {
28
130
  StoreName["DEFAULT"] = "default";
29
- })(StoreName || (StoreName = {}));
131
+ return StoreName;
132
+ }({});
30
133
  class Store {
31
134
  /**
32
135
  * Set options for all groups.
@@ -99,23 +202,40 @@ function applyStoreManagerOptions(manager, options) {
99
202
  store.setAll(options.defaults);
100
203
  }
101
204
  }
205
+ function inject(key, instance) {
206
+ if (instance && instance._context && instance._context.provides && instance._context.provides[key]) {
207
+ return instance._context.provides[key];
208
+ }
209
+ if (vue.hasInjectionContext()) {
210
+ return vue.inject(key, undefined);
211
+ }
212
+ return undefined;
213
+ }
214
+ function provide(key, value, app) {
215
+ if (typeof app === 'undefined') {
216
+ const val = inject(key);
217
+ if (typeof val !== 'undefined') {
218
+ return;
219
+ }
220
+ vue.provide(key, value);
221
+ return;
222
+ }
223
+ if (app && app._context && app._context.provides && app._context.provides[key]) {
224
+ return;
225
+ }
226
+ app.provide(key, value);
227
+ }
102
228
  function getSymbol(key) {
103
229
  return Symbol.for('VCStoreManager');
104
230
  }
105
231
  function installStoreManager(instance, key) {
106
- let manager;
107
232
  const symbol = getSymbol();
108
- if (instance._context && instance._context.provides && instance._context.provides[symbol]) {
109
- return instance._context.provides[symbol];
110
- }
111
- if (vue.hasInjectionContext()) {
112
- manager = vue.inject(symbol, undefined);
113
- if (manager) {
114
- return manager;
115
- }
233
+ let manager = inject(symbol, instance);
234
+ if (manager) {
235
+ return manager;
116
236
  }
117
237
  manager = new StoreManager();
118
- instance.provide(symbol, manager);
238
+ provide(symbol, manager, instance);
119
239
  return manager;
120
240
  }
121
241
 
@@ -211,9 +331,9 @@ function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
211
331
  "validation-messages": props.data,
212
332
  "validation-severity": props.severity
213
333
  }, {
214
- label: vue.withCtx(()=>[
334
+ label: vue.withCtx(()=>_cache[4] || (_cache[4] = [
215
335
  vue.createTextVNode(" Name ")
216
- ]),
336
+ ])),
217
337
  default: vue.withCtx(()=>[
218
338
  vue.createVNode(_component_VCFormInput, {
219
339
  modelValue: _ctx.vuelidate.name.$model,
@@ -240,9 +360,9 @@ function _sfc_render$g(_ctx, _cache, $props, $setup, $data, $options) {
240
360
  "validation-messages": props.data,
241
361
  "validation-severity": props.severity
242
362
  }, {
243
- label: vue.withCtx(()=>[
363
+ label: vue.withCtx(()=>_cache[5] || (_cache[5] = [
244
364
  vue.createTextVNode(" Password ")
245
- ]),
365
+ ])),
246
366
  default: vue.withCtx(()=>[
247
367
  vue.createVNode(_component_VCFormInput, {
248
368
  modelValue: _ctx.vuelidate.password.$model,
@@ -294,12 +414,12 @@ var FLoginForm = /* @__PURE__ */ _export_sfc(_sfc_main$g, [
294
414
  * Author Peter Placzek (tada5hi)
295
415
  * For the full copyright and license information,
296
416
  * view the LICENSE file that was distributed with this source code.
297
- */ exports.ActionCommandElementType = void 0;
298
- (function(ActionCommandElementType) {
417
+ */ var ActionCommandElementType = /*#__PURE__*/ function(ActionCommandElementType) {
299
418
  ActionCommandElementType["BUTTON"] = "button";
300
419
  ActionCommandElementType["LINK"] = "link";
301
420
  ActionCommandElementType["DROPDOWN_ITEM"] = "dropDownItem";
302
- })(exports.ActionCommandElementType || (exports.ActionCommandElementType = {}));
421
+ return ActionCommandElementType;
422
+ }({});
303
423
 
304
424
  const POOL_SIZE_MULTIPLIER = 128;
305
425
  let pool, poolOffset;
@@ -340,8 +460,7 @@ let customAlphabet = (alphabet, size = 21)=>customRandom(alphabet, size, random)
340
460
  * Author Peter Placzek (tada5hi)
341
461
  * For the full copyright and license information,
342
462
  * view the LICENSE file that was distributed with this source code.
343
- */ var PermissionName;
344
- (function(PermissionName) {
463
+ */ var PermissionName = /*#__PURE__*/ function(PermissionName) {
345
464
  PermissionName["BUCKET_CREATE"] = "bucket_create";
346
465
  PermissionName["BUCKET_UPDATE"] = "bucket_update";
347
466
  PermissionName["BUCKET_DELETE"] = "bucket_delete";
@@ -364,7 +483,8 @@ let customAlphabet = (alphabet, size = 21)=>customRandom(alphabet, size, random)
364
483
  PermissionName["MASTER_IMAGE_MANAGE"] = "master_image_manage";
365
484
  PermissionName["MASTER_IMAGE_GROUP_MANAGE"] = "master_image_group_manage";
366
485
  PermissionName["SERVICE_MANAGE"] = "service_manage";
367
- })(PermissionName || (PermissionName = {}));
486
+ return PermissionName;
487
+ }({});
368
488
  /*
369
489
  * Copyright (c) 2021-2024.
370
490
  * Author Peter Placzek (tada5hi)
@@ -374,7 +494,7 @@ let customAlphabet = (alphabet, size = 21)=>customRandom(alphabet, size, random)
374
494
  function hasOwnProperty(obj, prop) {
375
495
  return Object.prototype.hasOwnProperty.call(obj, prop);
376
496
  }
377
- function isObject$3(item) {
497
+ function isObject$2(item) {
378
498
  return !!item && typeof item === 'object' && !Array.isArray(item);
379
499
  }
380
500
  function createNanoID(alphabetOrLen, len) {
@@ -386,17 +506,6 @@ function createNanoID(alphabetOrLen, len) {
386
506
  * For the full copyright and license information,
387
507
  * view the LICENSE file that was distributed with this source code.
388
508
  */ const alphaNumHyphenUnderscoreRegex = /^[a-z0-9-_]*$/;
389
- /*
390
- * Copyright (c) 2024.
391
- * Author Peter Placzek (tada5hi)
392
- * For the full copyright and license information,
393
- * view the LICENSE file that was distributed with this source code.
394
- */ var EnvironmentName;
395
- (function(EnvironmentName) {
396
- EnvironmentName["TEST"] = "test";
397
- EnvironmentName["DEVELOPMENT"] = "development";
398
- EnvironmentName["PRODUCTION"] = "production";
399
- })(EnvironmentName || (EnvironmentName = {}));
400
509
 
401
510
  /**
402
511
  * Returns true if either scoped or unscoped named slot exists
@@ -875,7 +984,7 @@ const e$1 = globalThis.Blob, o$1 = globalThis.File, a$1 = globalThis.FormData, s
875
984
  throw new Error("[node-fetch-native] Failed to fetch: `globalThis.fetch` is not available!");
876
985
  });
877
986
 
878
- function isObject$2(item) {
987
+ function isObject$1(item) {
879
988
  return !!item && typeof item === 'object' && !Array.isArray(item);
880
989
  }
881
990
  function createExtractOptionsFn(fn) {
@@ -906,7 +1015,7 @@ function createExtractOptionsFn(fn) {
906
1015
  };
907
1016
  }
908
1017
  function isOptions(input) {
909
- if (!isObject$2(input)) {
1018
+ if (!isObject$1(input)) {
910
1019
  return false;
911
1020
  }
912
1021
  if (typeof input.message !== 'undefined' && typeof input.message !== 'string') {
@@ -1044,11 +1153,11 @@ function kindOfTest(type, input) {
1044
1153
  type = type.toLowerCase();
1045
1154
  return kindOf(input) === type;
1046
1155
  }
1047
- function isObject$1(input) {
1156
+ function isObject(input) {
1048
1157
  return typeof input === 'object' && input !== null && !!input && !Array.isArray(input);
1049
1158
  }
1050
1159
  function isStream(input) {
1051
- return isObject$1(input) && typeof input.pipe === 'function';
1160
+ return isObject(input) && typeof input.pipe === 'function';
1052
1161
  }
1053
1162
  function isFormData(input) {
1054
1163
  if (typeof FormData$1 !== 'undefined' && input instanceof FormData$1) {
@@ -1085,7 +1194,7 @@ function isURLSearchParams(input) {
1085
1194
  return kindOfTest('URLSearchParams', input);
1086
1195
  }
1087
1196
  function verifyInstanceBySymbol(input, name) {
1088
- if (!isObject$1(input) && typeof input !== 'function') {
1197
+ if (!isObject(input) && typeof input !== 'function') {
1089
1198
  return false;
1090
1199
  }
1091
1200
  return input['@instanceof'] === Symbol.for(name);
@@ -1104,7 +1213,7 @@ function isJSONSerializable(input) {
1104
1213
  if (Array.isArray(input)) {
1105
1214
  return true;
1106
1215
  }
1107
- return isObject$1(input) || typeof input === 'function' && input.toJSON === 'function';
1216
+ return isObject(input) || typeof input === 'function' && input.toJSON === 'function';
1108
1217
  }
1109
1218
  /*
1110
1219
  * Copyright (c) 2023.
@@ -1202,7 +1311,7 @@ function isClientError(error) {
1202
1311
  if (error instanceof ClientError) {
1203
1312
  return true;
1204
1313
  }
1205
- return isObject$1(error) && verifyInstanceBySymbol(error, 'ClientError');
1314
+ return isObject(error) && verifyInstanceBySymbol(error, 'ClientError');
1206
1315
  }
1207
1316
  function stringifyAuthorizationHeader(header) {
1208
1317
  switch(header.type){
@@ -1269,13 +1378,13 @@ function isRequestPayloadSupported(method = 'GET') {
1269
1378
  return method === MethodName.PATCH || method === MethodName.POST || method === MethodName.PUT;
1270
1379
  }
1271
1380
  function isRequestOptions(input) {
1272
- if (!isObject$1(input)) {
1381
+ if (!isObject(input)) {
1273
1382
  return false;
1274
1383
  }
1275
1384
  return input.url === 'string';
1276
1385
  }
1277
1386
  function isResponse(input) {
1278
- if (!isObject$1(input)) {
1387
+ if (!isObject(input)) {
1279
1388
  return false;
1280
1389
  }
1281
1390
  return typeof input.headers !== 'undefined' && typeof input.ok === 'boolean';
@@ -2932,7 +3041,7 @@ class Client extends Client$1 {
2932
3041
  }
2933
3042
 
2934
3043
  function setupBaseHTTPClient(app, client) {
2935
- const storeCreator = clientWebKit.injectStore(app);
3044
+ const storeCreator = clientWebKit.injectStoreFactory(app);
2936
3045
  const store = storeCreator();
2937
3046
  const { refreshToken } = clientWebKit.storeToRefs(store);
2938
3047
  const authupClient = clientWebKit.injectHTTPClient(app);
@@ -2947,26 +3056,28 @@ function setupBaseHTTPClient(app, client) {
2947
3056
  });
2948
3057
  },
2949
3058
  tokenCreated: (response)=>{
2950
- store.handleTokenGrantResponse(response);
3059
+ store.applyTokenGrantResponse(response);
2951
3060
  },
2952
3061
  tokenFailed: ()=>{
2953
3062
  store.logout();
2954
3063
  },
2955
3064
  timer: false
2956
3065
  });
2957
- store.$subscribe((mutation, state)=>{
2958
- if (mutation.storeId !== clientWebKit.STORE_ID) return;
2959
- if (state.accessToken) {
3066
+ const handleAccessTokenEvent = (token)=>{
3067
+ if (token) {
2960
3068
  client.setAuthorizationHeader({
2961
3069
  type: 'Bearer',
2962
- token: state.accessToken
3070
+ token
2963
3071
  });
2964
3072
  tokenHook.mount();
2965
3073
  } else {
2966
3074
  client.unsetAuthorizationHeader();
2967
3075
  tokenHook.unmount();
2968
3076
  }
2969
- });
3077
+ };
3078
+ const dispatcher = clientWebKit.injectStoreDispatcher(app);
3079
+ dispatcher.on(clientWebKit.StoreDispatcherEventName.ACCESS_TOKEN_UPDATED, (token)=>handleAccessTokenEvent(token));
3080
+ handleAccessTokenEvent(store.accessToken);
2970
3081
  }
2971
3082
 
2972
3083
  const symbol$1 = Symbol.for('FCoreHTTPClient');
@@ -3321,21 +3432,13 @@ function createList(context) {
3321
3432
  total: total.value
3322
3433
  },
3323
3434
  onCreated (value) {
3324
- if (context.setup.emit) {
3325
- context.setup.emit('created', value);
3326
- }
3327
- total.value++;
3435
+ handleCreated(value);
3328
3436
  },
3329
3437
  onDeleted (value) {
3330
- if (context.setup.emit) {
3331
- context.setup.emit('deleted', value);
3332
- }
3333
- total.value--;
3438
+ handleDeleted(value);
3334
3439
  },
3335
3440
  onUpdated: (value)=>{
3336
- if (context.setup.emit) {
3337
- context.setup.emit('updated', value);
3338
- }
3441
+ handleUpdated(value);
3339
3442
  },
3340
3443
  slotItems: context.setup.slots || {}
3341
3444
  });
@@ -3398,8 +3501,7 @@ function createList(context) {
3398
3501
  };
3399
3502
  }
3400
3503
 
3401
- exports.EntityListSlotName = void 0;
3402
- (function(EntityListSlotName) {
3504
+ var EntityListSlotName = /*#__PURE__*/ function(EntityListSlotName) {
3403
3505
  EntityListSlotName[EntityListSlotName["DEFAULT"] = listControls.SlotName.DEFAULT] = "DEFAULT";
3404
3506
  EntityListSlotName[EntityListSlotName["BODY"] = listControls.SlotName.BODY] = "BODY";
3405
3507
  EntityListSlotName[EntityListSlotName["ITEM"] = listControls.SlotName.ITEM] = "ITEM";
@@ -3409,7 +3511,8 @@ exports.EntityListSlotName = void 0;
3409
3511
  EntityListSlotName[EntityListSlotName["FOOTER"] = listControls.SlotName.FOOTER] = "FOOTER";
3410
3512
  EntityListSlotName[EntityListSlotName["NO_MORE"] = listControls.SlotName.NO_MORE] = "NO_MORE";
3411
3513
  EntityListSlotName[EntityListSlotName["LOADING"] = listControls.SlotName.LOADING] = "LOADING";
3412
- })(exports.EntityListSlotName || (exports.EntityListSlotName = {}));
3514
+ return EntityListSlotName;
3515
+ }({});
3413
3516
 
3414
3517
  /*
3415
3518
  * Copyright (c) 2023-2024.
@@ -3816,109 +3919,6 @@ function createEntityManager(ctx) {
3816
3919
  };
3817
3920
  }
3818
3921
 
3819
- /*
3820
- * Copyright (c) 2024-2024.
3821
- * Author Peter Placzek (tada5hi)
3822
- * For the full copyright and license information,
3823
- * view the LICENSE file that was distributed with this source code.
3824
- */ const BRACKET_NUMBER_REGEX = RegExp("(?<!\\\\)\\[(\\d+)]$");
3825
- /**
3826
- * Convert string to property path array.
3827
- *
3828
- * @see https://github.com/lodash/lodash/blob/main/src/.internal/stringToPath.ts
3829
- * @see https://github.com/chaijs/pathval
3830
- *
3831
- * @param segment
3832
- */ function pathToArray(segment) {
3833
- const str = segment.replace(/([^\\])\[/g, '$1.[');
3834
- const parts = str.match(/(\\\.|[^.]+?)+/g);
3835
- if (!parts) {
3836
- return [];
3837
- }
3838
- const result = [];
3839
- for(let i = 0; i < parts.length; i++){
3840
- if (parts[i] === 'constructor' || parts[i] === '__proto__' || parts[i] === 'prototype') {
3841
- continue;
3842
- }
3843
- const regex = BRACKET_NUMBER_REGEX.exec(parts[i]);
3844
- if (regex) {
3845
- result.push(regex[1]);
3846
- } else {
3847
- result.push(parts[i].replace(/\\([.[\]])/g, '$1'));
3848
- }
3849
- }
3850
- return result;
3851
- }
3852
- /*
3853
- * Copyright (c) 2024.
3854
- * Author Peter Placzek (tada5hi)
3855
- * For the full copyright and license information,
3856
- * view the LICENSE file that was distributed with this source code.
3857
- */ var Character;
3858
- (function(Character) {
3859
- Character["WILDCARD"] = "*";
3860
- Character["GLOBSTAR"] = "**";
3861
- })(Character || (Character = {}));
3862
- /*
3863
- * Copyright (c) 2024.
3864
- * Author Peter Placzek (tada5hi)
3865
- * For the full copyright and license information,
3866
- * view the LICENSE file that was distributed with this source code.
3867
- */ function isObject(input) {
3868
- return !!input && typeof input === 'object' && !Array.isArray(input);
3869
- }
3870
- function getPathValue(data, path) {
3871
- const parts = Array.isArray(path) ? path : pathToArray(path);
3872
- let res;
3873
- let temp = data;
3874
- let index = 0;
3875
- while(index < parts.length){
3876
- if (temp === null || typeof temp === 'undefined') {
3877
- break;
3878
- }
3879
- if (parts[index] in Object(temp)) {
3880
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
3881
- // @ts-expect-error
3882
- temp = temp[parts[index]];
3883
- } else {
3884
- break;
3885
- }
3886
- if (index === parts.length - 1) {
3887
- res = temp;
3888
- }
3889
- index++;
3890
- }
3891
- return res;
3892
- }
3893
- const NUMBER_REGEX = /^\d+$/;
3894
- function setPathValue(data, path, value) {
3895
- const parts = Array.isArray(path) ? path : pathToArray(path);
3896
- let temp = data;
3897
- let index = 0;
3898
- while(index < parts.length){
3899
- /* istanbul ignore next */ if (!Array.isArray(temp) && !isObject(temp)) {
3900
- break;
3901
- }
3902
- const key = parts[index];
3903
- // [foo, '0']
3904
- if (typeof temp[key] === 'undefined') {
3905
- const match = NUMBER_REGEX.test(key);
3906
- if (match) {
3907
- temp[key] = [];
3908
- } else {
3909
- temp[key] = {};
3910
- }
3911
- }
3912
- if (index === parts.length - 1) {
3913
- temp[key] = value;
3914
- break;
3915
- }
3916
- index++;
3917
- temp = temp[key];
3918
- }
3919
- return data;
3920
- }
3921
-
3922
3922
  class MemoryStore {
3923
3923
  async get(context) {
3924
3924
  if (!this.data[context.locale] || !this.data[context.locale][context.group]) {
@@ -4146,7 +4146,7 @@ var FMasterImagePicker = vue.defineComponent({
4146
4146
  ref: itemListNode,
4147
4147
  query: imageQuery.value
4148
4148
  }, {
4149
- [exports.EntityListSlotName.BODY]: (props)=>{
4149
+ [EntityListSlotName.BODY]: (props)=>{
4150
4150
  const options = props.data.map((entity)=>({
4151
4151
  id: entity.id,
4152
4152
  value: entity.name
@@ -4189,7 +4189,7 @@ var FMasterImagePicker = vue.defineComponent({
4189
4189
  class: 'col'
4190
4190
  }, [
4191
4191
  vue.h(MasterImageGroupList, {}, {
4192
- [exports.EntityListSlotName.BODY]: (props)=>{
4192
+ [EntityListSlotName.BODY]: (props)=>{
4193
4193
  const options = props.data.map((entity)=>({
4194
4194
  id: entity.virtual_path,
4195
4195
  value: entity.virtual_path
@@ -4225,12 +4225,18 @@ var FMasterImagePicker = vue.defineComponent({
4225
4225
  }
4226
4226
  });
4227
4227
 
4228
- var ElementType;
4229
- (function(ElementType) {
4228
+ /*
4229
+ * Copyright (c) 2024.
4230
+ * Author Peter Placzek (tada5hi)
4231
+ * For the full copyright and license information,
4232
+ * view the LICENSE file that was distributed with this source code.
4233
+ */ var ElementType = /*#__PURE__*/ function(ElementType) {
4230
4234
  ElementType["BUTTON"] = "button";
4231
4235
  ElementType["LINK"] = "link";
4232
4236
  ElementType["DROP_DOWN_ITEM"] = "dropDownItem";
4233
- })(ElementType || (ElementType = {}));
4237
+ return ElementType;
4238
+ }({});
4239
+
4234
4240
  var FEntityDelete = vue.defineComponent({
4235
4241
  name: 'FEntityDelete',
4236
4242
  props: {
@@ -4244,7 +4250,7 @@ var FEntityDelete = vue.defineComponent({
4244
4250
  },
4245
4251
  elementType: {
4246
4252
  type: String,
4247
- default: "button"
4253
+ default: `${ElementType.BUTTON}`
4248
4254
  },
4249
4255
  entityId: {
4250
4256
  type: String,
@@ -4270,7 +4276,7 @@ var FEntityDelete = vue.defineComponent({
4270
4276
  const submit = async ()=>{
4271
4277
  if (busy.value) return;
4272
4278
  const domainAPI = apiClient[props.entityType];
4273
- if (!isObject$3(domainAPI)) {
4279
+ if (!isObject$2(domainAPI)) {
4274
4280
  return;
4275
4281
  }
4276
4282
  if (typeof domainAPI.delete !== 'function') {
@@ -4294,10 +4300,10 @@ var FEntityDelete = vue.defineComponent({
4294
4300
  let tag = 'button';
4295
4301
  const data = {};
4296
4302
  switch(props.elementType){
4297
- case "link":
4303
+ case ElementType.LINK:
4298
4304
  tag = 'a';
4299
4305
  break;
4300
- case "dropDownItem":
4306
+ case ElementType.DROP_DOWN_ITEM:
4301
4307
  if (instance && typeof instance.appContext.app.component('BDropdownItem') !== 'undefined') {
4302
4308
  tag = vue.resolveDynamicComponent('BDropdownItem');
4303
4309
  }
@@ -4390,7 +4396,7 @@ var FMasterImagesSync = vue.defineComponent({
4390
4396
  vue.h(MasterImageList, {
4391
4397
  ref: itemList,
4392
4398
  scopedSlots: {
4393
- [exports.EntityListSlotName.HEADER]: (props)=>[
4399
+ [EntityListSlotName.HEADER]: (props)=>[
4394
4400
  vue.h(clientWebKit.ASearch, {
4395
4401
  load: props.load,
4396
4402
  meta: props.meta,
@@ -4400,7 +4406,7 @@ var FMasterImagesSync = vue.defineComponent({
4400
4406
  'Overview'
4401
4407
  ])
4402
4408
  ],
4403
- [exports.EntityListSlotName.ITEM_ACTIONS]: (props)=>vue.h(FEntityDelete, {
4409
+ [EntityListSlotName.ITEM_ACTIONS]: (props)=>vue.h(FEntityDelete, {
4404
4410
  class: 'btn btn-xs btn-danger',
4405
4411
  elementType: 'button',
4406
4412
  entityId: props.data.id,
@@ -4556,7 +4562,9 @@ const FProjectNodeApprovalCommand = vue.defineComponent({
4556
4562
  emit('failed', e);
4557
4563
  }
4558
4564
  });
4559
- const isAllowed = clientWebKit.useAbilityCheck(PermissionName.PROJECT_APPROVE);
4565
+ const isAllowed = clientWebKit.usePermissionCheck({
4566
+ name: PermissionName.PROJECT_APPROVE
4567
+ });
4560
4568
  return ()=>renderActionCommand({
4561
4569
  execute,
4562
4570
  elementType: props.elementType,
@@ -4676,16 +4684,6 @@ var FProjectNodeAssignAction = vue.defineComponent({
4676
4684
  }
4677
4685
  });
4678
4686
 
4679
- var Direction$3;
4680
- (function(Direction) {
4681
- Direction["IN"] = "in";
4682
- Direction["OUT"] = "out";
4683
- })(Direction$3 || (Direction$3 = {}));
4684
- var Target$1;
4685
- (function(Target) {
4686
- Target["PROJECT"] = "project";
4687
- Target["NODE"] = "node";
4688
- })(Target$1 || (Target$1 = {}));
4689
4687
  var FProjectNode = vue.defineComponent({
4690
4688
  props: {
4691
4689
  entity: {
@@ -4778,11 +4776,6 @@ var FProjectNode = vue.defineComponent({
4778
4776
  }
4779
4777
  });
4780
4778
 
4781
- var Direction$2;
4782
- (function(Direction) {
4783
- Direction["IN"] = "in";
4784
- Direction["OUT"] = "out";
4785
- })(Direction$2 || (Direction$2 = {}));
4786
4779
  var FProjectNodes = vue.defineComponent({
4787
4780
  props: {
4788
4781
  ...defineListProps(),
@@ -4799,7 +4792,7 @@ var FProjectNodes = vue.defineComponent({
4799
4792
  },
4800
4793
  direction: {
4801
4794
  type: String,
4802
- default: "out"
4795
+ default: `${"out"}`
4803
4796
  },
4804
4797
  includeNode: {
4805
4798
  type: Boolean,
@@ -5106,81 +5099,36 @@ var _sfc_main$f = vue.defineComponent({
5106
5099
  const _hoisted_1$d = {
5107
5100
  class: "d-flex flex-column gap-1 w-100"
5108
5101
  };
5109
- const _hoisted_2$d = {
5102
+ const _hoisted_2$b = {
5110
5103
  class: "w-100"
5111
5104
  };
5112
- const _hoisted_3$d = {
5105
+ const _hoisted_3$9 = {
5113
5106
  class: "d-flex flex-row align-items-center"
5114
5107
  };
5115
- const _hoisted_4$c = /* @__PURE__ */ vue.createElementVNode("i", {
5116
- class: "fas fa-project-diagram me-1"
5117
- }, null, -1);
5118
- const _hoisted_5$a = {
5108
+ const _hoisted_4$9 = {
5119
5109
  class: "ms-auto d-flex flex-row gap-1"
5120
5110
  };
5121
- const _hoisted_6$8 = /* @__PURE__ */ vue.createElementVNode("i", {
5122
- class: "fa fa-bars"
5123
- }, null, -1);
5124
- const _hoisted_7$6 = /* @__PURE__ */ vue.createElementVNode("i", {
5125
- class: "fa fa-comment-alt"
5126
- }, null, -1);
5127
- const _hoisted_8$6 = [
5128
- _hoisted_7$6
5129
- ];
5130
- const _hoisted_9$6 = {
5111
+ const _hoisted_5$6 = {
5131
5112
  class: "row"
5132
5113
  };
5133
- const _hoisted_10$5 = {
5114
+ const _hoisted_6$5 = {
5134
5115
  class: "col-12 col-md-4 d-flex align-items-center flex-column"
5135
5116
  };
5136
- const _hoisted_11$4 = /* @__PURE__ */ vue.createElementVNode("div", null, [
5137
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
5138
- /* @__PURE__ */ vue.createElementVNode("i", {
5139
- class: "fa-solid fa-server"
5140
- }),
5141
- /* @__PURE__ */ vue.createTextVNode(" Node")
5142
- ])
5143
- ], -1);
5144
- const _hoisted_12$4 = {
5117
+ const _hoisted_7$4 = {
5145
5118
  class: "col-12 col-md-4 d-flex align-items-center flex-column"
5146
5119
  };
5147
- const _hoisted_13$3 = /* @__PURE__ */ vue.createElementVNode("div", null, [
5148
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
5149
- /* @__PURE__ */ vue.createElementVNode("i", {
5150
- class: "fa-solid fa-heartbeat"
5151
- }),
5152
- /* @__PURE__ */ vue.createTextVNode(" Status")
5153
- ])
5154
- ], -1);
5155
- const _hoisted_14$3 = {
5120
+ const _hoisted_8$4 = {
5156
5121
  class: "col-12 col-md-4 d-flex align-items-center flex-column"
5157
5122
  };
5158
- const _hoisted_15$3 = /* @__PURE__ */ vue.createElementVNode("div", null, [
5159
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
5160
- /* @__PURE__ */ vue.createElementVNode("i", {
5161
- class: "fa-solid fa-user"
5162
- }),
5163
- /* @__PURE__ */ vue.createTextVNode(" Creator")
5164
- ])
5165
- ], -1);
5166
- const _hoisted_16$3 = {
5123
+ const _hoisted_9$3 = {
5167
5124
  class: "d-flex flex-row"
5168
5125
  };
5169
- const _hoisted_17$3 = {
5126
+ const _hoisted_10$3 = {
5170
5127
  class: ""
5171
5128
  };
5172
- const _hoisted_18$3 = /* @__PURE__ */ vue.createElementVNode("span", {
5173
- class: "text-muted"
5174
- }, " created ", -1);
5175
- const _hoisted_19$1 = {
5129
+ const _hoisted_11$3 = {
5176
5130
  class: "ms-auto"
5177
5131
  };
5178
- const _hoisted_20$1 = /* @__PURE__ */ vue.createElementVNode("span", {
5179
- class: "text-muted"
5180
- }, " updated ", -1);
5181
- const _hoisted_21$1 = /* @__PURE__ */ vue.createElementVNode("i", {
5182
- class: "fas fa-file-import"
5183
- }, null, -1);
5184
5132
  function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5185
5133
  const _component_VCLink = vue.resolveComponent("VCLink");
5186
5134
  const _component_FProjectNodeApprovalCommand = vue.resolveComponent("FProjectNodeApprovalCommand");
@@ -5189,13 +5137,15 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5189
5137
  const _component_FProjectInForm = vue.resolveComponent("FProjectInForm");
5190
5138
  const _component_BModal = vue.resolveComponent("BModal");
5191
5139
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$d, [
5192
- vue.createElementVNode("div", _hoisted_2$d, [
5193
- vue.createElementVNode("div", _hoisted_3$d, [
5140
+ vue.createElementVNode("div", _hoisted_2$b, [
5141
+ vue.createElementVNode("div", _hoisted_3$9, [
5194
5142
  vue.createElementVNode("div", null, [
5195
5143
  vue.renderSlot(_ctx.$slots, "title", {
5196
5144
  data: _ctx.entity
5197
5145
  }, ()=>[
5198
- _hoisted_4$c,
5146
+ _cache[2] || (_cache[2] = vue.createElementVNode("i", {
5147
+ class: "fas fa-project-diagram me-1"
5148
+ }, null, -1)),
5199
5149
  vue.createVNode(_component_VCLink, {
5200
5150
  to: "/projects/" + _ctx.entity.project.id,
5201
5151
  class: "mb-0"
@@ -5209,7 +5159,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5209
5159
  ])
5210
5160
  ])
5211
5161
  ]),
5212
- vue.createElementVNode("div", _hoisted_5$a, [
5162
+ vue.createElementVNode("div", _hoisted_4$9, [
5213
5163
  vue.renderSlot(_ctx.$slots, "itemActions", {
5214
5164
  data: _ctx.entity
5215
5165
  }, ()=>[
@@ -5218,9 +5168,11 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5218
5168
  disabled: _ctx.busy,
5219
5169
  class: "btn btn-xs btn-dark"
5220
5170
  }, {
5221
- default: vue.withCtx(()=>[
5222
- _hoisted_6$8
5223
- ]),
5171
+ default: vue.withCtx(()=>_cache[3] || (_cache[3] = [
5172
+ vue.createElementVNode("i", {
5173
+ class: "fa fa-bars"
5174
+ }, null, -1)
5175
+ ])),
5224
5176
  _: 1
5225
5177
  }, 8, [
5226
5178
  "to",
@@ -5232,7 +5184,11 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5232
5184
  onClick: _cache[0] || (_cache[0] = vue.withModifiers((...args)=>_ctx.toggleModal && _ctx.toggleModal(...args), [
5233
5185
  "prevent"
5234
5186
  ]))
5235
- }, _hoisted_8$6),
5187
+ }, _cache[4] || (_cache[4] = [
5188
+ vue.createElementVNode("i", {
5189
+ class: "fa fa-comment-alt"
5190
+ }, null, -1)
5191
+ ])),
5236
5192
  vue.createVNode(_component_FProjectNodeApprovalCommand, {
5237
5193
  "entity-id": _ctx.entity.id,
5238
5194
  "approval-status": _ctx.entity.approval_status,
@@ -5266,13 +5222,27 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5266
5222
  vue.renderSlot(_ctx.$slots, "body", {
5267
5223
  data: _ctx.entity
5268
5224
  }, ()=>[
5269
- vue.createElementVNode("div", _hoisted_9$6, [
5270
- vue.createElementVNode("div", _hoisted_10$5, [
5271
- _hoisted_11$4,
5225
+ vue.createElementVNode("div", _hoisted_5$6, [
5226
+ vue.createElementVNode("div", _hoisted_6$5, [
5227
+ _cache[5] || (_cache[5] = vue.createElementVNode("div", null, [
5228
+ vue.createElementVNode("strong", null, [
5229
+ vue.createElementVNode("i", {
5230
+ class: "fa-solid fa-server"
5231
+ }),
5232
+ vue.createTextVNode(" Node")
5233
+ ])
5234
+ ], -1)),
5272
5235
  vue.createElementVNode("div", null, vue.toDisplayString(_ctx.entity.node.name), 1)
5273
5236
  ]),
5274
- vue.createElementVNode("div", _hoisted_12$4, [
5275
- _hoisted_13$3,
5237
+ vue.createElementVNode("div", _hoisted_7$4, [
5238
+ _cache[6] || (_cache[6] = vue.createElementVNode("div", null, [
5239
+ vue.createElementVNode("strong", null, [
5240
+ vue.createElementVNode("i", {
5241
+ class: "fa-solid fa-heartbeat"
5242
+ }),
5243
+ vue.createTextVNode(" Status")
5244
+ ])
5245
+ ], -1)),
5276
5246
  vue.createElementVNode("div", null, [
5277
5247
  vue.createVNode(_component_FProjectNodeApprovalStatus, {
5278
5248
  status: _ctx.entity.approval_status
@@ -5288,8 +5258,15 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5288
5258
  ])
5289
5259
  ])
5290
5260
  ]),
5291
- vue.createElementVNode("div", _hoisted_14$3, [
5292
- _hoisted_15$3,
5261
+ vue.createElementVNode("div", _hoisted_8$4, [
5262
+ _cache[7] || (_cache[7] = vue.createElementVNode("div", null, [
5263
+ vue.createElementVNode("strong", null, [
5264
+ vue.createElementVNode("i", {
5265
+ class: "fa-solid fa-user"
5266
+ }),
5267
+ vue.createTextVNode(" Creator")
5268
+ ])
5269
+ ], -1)),
5293
5270
  vue.createElementVNode("div", null, [
5294
5271
  _ctx.entity.project.user_id ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
5295
5272
  key: 0
@@ -5298,7 +5275,7 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5298
5275
  ], 64)) : _ctx.entity.project.robot_id ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
5299
5276
  key: 1
5300
5277
  }, [
5301
- vue.createTextVNode(vue.toDisplayString(_ctx.entity.project.project.robot_id), 1)
5278
+ vue.createTextVNode(vue.toDisplayString(_ctx.entity.project.robot_id), 1)
5302
5279
  ], 64)) : vue.createCommentVNode("", true)
5303
5280
  ])
5304
5281
  ])
@@ -5307,10 +5284,12 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5307
5284
  vue.renderSlot(_ctx.$slots, "footer", {
5308
5285
  data: _ctx.entity
5309
5286
  }, ()=>[
5310
- vue.createElementVNode("div", _hoisted_16$3, [
5311
- vue.createElementVNode("div", _hoisted_17$3, [
5287
+ vue.createElementVNode("div", _hoisted_9$3, [
5288
+ vue.createElementVNode("div", _hoisted_10$3, [
5312
5289
  vue.createElementVNode("small", null, [
5313
- _hoisted_18$3,
5290
+ _cache[8] || (_cache[8] = vue.createElementVNode("span", {
5291
+ class: "text-muted"
5292
+ }, " created ", -1)),
5314
5293
  vue.createVNode(_component_VCTimeago, {
5315
5294
  datetime: _ctx.entity.created_at
5316
5295
  }, null, 8, [
@@ -5318,9 +5297,11 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5318
5297
  ])
5319
5298
  ])
5320
5299
  ]),
5321
- vue.createElementVNode("div", _hoisted_19$1, [
5300
+ vue.createElementVNode("div", _hoisted_11$3, [
5322
5301
  vue.createElementVNode("small", null, [
5323
- _hoisted_20$1,
5302
+ _cache[9] || (_cache[9] = vue.createElementVNode("span", {
5303
+ class: "text-muted"
5304
+ }, " updated ", -1)),
5324
5305
  vue.createVNode(_component_VCTimeago, {
5325
5306
  datetime: _ctx.entity.updated_at
5326
5307
  }, null, 8, [
@@ -5340,7 +5321,9 @@ function _sfc_render$f(_ctx, _cache, $props, $setup, $data, $options) {
5340
5321
  "hide-footer": true
5341
5322
  }, {
5342
5323
  title: vue.withCtx(()=>[
5343
- _hoisted_21$1,
5324
+ _cache[10] || (_cache[10] = vue.createElementVNode("i", {
5325
+ class: "fas fa-file-import"
5326
+ }, null, -1)),
5344
5327
  vue.createTextVNode(" Project " + vue.toDisplayString(_ctx.entity.project.name), 1)
5345
5328
  ]),
5346
5329
  default: vue.withCtx(()=>[
@@ -5587,14 +5570,14 @@ const FProjectForm = vue.defineComponent({
5587
5570
  }
5588
5571
  }
5589
5572
  }, {
5590
- [exports.EntityListSlotName.HEADER]: (props)=>[
5573
+ [EntityListSlotName.HEADER]: (props)=>[
5591
5574
  vue.h('label', 'Nodes'),
5592
5575
  vue.h(FSearch, {
5593
5576
  load: props.load,
5594
5577
  meta: props.meta
5595
5578
  })
5596
5579
  ],
5597
- [exports.EntityListSlotName.ITEM_ACTIONS]: (props)=>{
5580
+ [EntityListSlotName.ITEM_ACTIONS]: (props)=>{
5598
5581
  if (manager.data.value) {
5599
5582
  return vue.h(FProjectNodeAssignAction, {
5600
5583
  key: props.data.id,
@@ -5662,7 +5645,9 @@ var _sfc_main$e = vue.defineComponent({
5662
5645
  ],
5663
5646
  slots: Object,
5664
5647
  setup (_props, { emit }) {
5665
- const canDelete = clientWebKit.useAbilityCheck(PermissionName.PROJECT_DELETE);
5648
+ const canDelete = clientWebKit.usePermissionCheck({
5649
+ name: PermissionName.PROJECT_DELETE
5650
+ });
5666
5651
  const handleDeleted = (data)=>{
5667
5652
  emit('deleted', data);
5668
5653
  };
@@ -5676,84 +5661,50 @@ var _sfc_main$e = vue.defineComponent({
5676
5661
  const _hoisted_1$c = {
5677
5662
  class: "d-flex flex-column w-100"
5678
5663
  };
5679
- const _hoisted_2$c = {
5664
+ const _hoisted_2$a = {
5680
5665
  class: "w-100"
5681
5666
  };
5682
- const _hoisted_3$c = {
5667
+ const _hoisted_3$8 = {
5683
5668
  class: "d-flex flex-row align-items-center"
5684
5669
  };
5685
- const _hoisted_4$b = /* @__PURE__ */ vue.createElementVNode("i", {
5686
- class: "fas fa-project-diagram me-1"
5687
- }, null, -1);
5688
- const _hoisted_5$9 = {
5670
+ const _hoisted_4$8 = {
5689
5671
  class: "ms-auto"
5690
5672
  };
5691
- const _hoisted_6$7 = /* @__PURE__ */ vue.createElementVNode("i", {
5692
- class: "fa fa-bars"
5693
- }, null, -1);
5694
- const _hoisted_7$5 = {
5673
+ const _hoisted_5$5 = {
5695
5674
  class: "d-flex justify-content-between flex-row"
5696
5675
  };
5697
- const _hoisted_8$5 = {
5676
+ const _hoisted_6$4 = {
5698
5677
  class: "d-flex flex-grow-1 align-items-center flex-column"
5699
5678
  };
5700
- const _hoisted_9$5 = /* @__PURE__ */ vue.createElementVNode("div", null, [
5701
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
5702
- /* @__PURE__ */ vue.createElementVNode("i", {
5703
- class: "fa fa-microscope"
5704
- }),
5705
- /* @__PURE__ */ vue.createTextVNode(" Analyses")
5706
- ])
5707
- ], -1);
5708
- const _hoisted_10$4 = {
5679
+ const _hoisted_7$3 = {
5709
5680
  class: "d-flex flex-grow-1 align-items-center flex-column"
5710
5681
  };
5711
- const _hoisted_11$3 = /* @__PURE__ */ vue.createElementVNode("div", null, [
5712
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
5713
- /* @__PURE__ */ vue.createElementVNode("i", {
5714
- class: "fa-solid fa-server"
5715
- }),
5716
- /* @__PURE__ */ vue.createTextVNode(" Nodes")
5717
- ])
5718
- ], -1);
5719
- const _hoisted_12$3 = {
5682
+ const _hoisted_8$3 = {
5720
5683
  class: "d-flex flex-grow-1 align-items-center flex-column"
5721
5684
  };
5722
- const _hoisted_13$2 = /* @__PURE__ */ vue.createElementVNode("div", null, [
5723
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
5724
- /* @__PURE__ */ vue.createElementVNode("i", {
5725
- class: "fa-solid fa-user"
5726
- }),
5727
- /* @__PURE__ */ vue.createTextVNode(" Creator")
5728
- ])
5729
- ], -1);
5730
- const _hoisted_14$2 = {
5685
+ const _hoisted_9$2 = {
5731
5686
  class: "d-flex flex-row"
5732
5687
  };
5733
- const _hoisted_15$2 = {
5688
+ const _hoisted_10$2 = {
5734
5689
  class: ""
5735
5690
  };
5736
- const _hoisted_16$2 = /* @__PURE__ */ vue.createElementVNode("span", {
5737
- class: "text-muted"
5738
- }, " created ", -1);
5739
- const _hoisted_17$2 = {
5691
+ const _hoisted_11$2 = {
5740
5692
  class: "ms-auto"
5741
5693
  };
5742
- const _hoisted_18$2 = /* @__PURE__ */ vue.createElementVNode("span", {
5743
- class: "text-muted"
5744
- }, " updated ", -1);
5745
5694
  function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
5746
5695
  const _component_VCLink = vue.resolveComponent("VCLink");
5747
5696
  const _component_FEntityDelete = vue.resolveComponent("FEntityDelete");
5748
5697
  const _component_VCTimeago = vue.resolveComponent("VCTimeago");
5749
5698
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$c, [
5750
- vue.createElementVNode("div", _hoisted_2$c, [
5751
- vue.createElementVNode("div", _hoisted_3$c, [
5699
+ vue.createElementVNode("div", _hoisted_2$a, [
5700
+ vue.createElementVNode("div", _hoisted_3$8, [
5752
5701
  vue.createElementVNode("div", null, [
5753
5702
  vue.renderSlot(_ctx.$slots, "title", {
5754
5703
  data: _ctx.entity
5755
5704
  }, ()=>[
5756
- _hoisted_4$b,
5705
+ _cache[0] || (_cache[0] = vue.createElementVNode("i", {
5706
+ class: "fas fa-project-diagram me-1"
5707
+ }, null, -1)),
5757
5708
  vue.createVNode(_component_VCLink, {
5758
5709
  to: "/projects/" + _ctx.entity.id,
5759
5710
  class: "mb-0"
@@ -5767,7 +5718,7 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
5767
5718
  ])
5768
5719
  ])
5769
5720
  ]),
5770
- vue.createElementVNode("div", _hoisted_5$9, [
5721
+ vue.createElementVNode("div", _hoisted_4$8, [
5771
5722
  vue.renderSlot(_ctx.$slots, "itemActions", {
5772
5723
  data: _ctx.entity
5773
5724
  }, ()=>[
@@ -5776,9 +5727,11 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
5776
5727
  disabled: _ctx.busy,
5777
5728
  class: "btn btn-xs btn-dark"
5778
5729
  }, {
5779
- default: vue.withCtx(()=>[
5780
- _hoisted_6$7
5781
- ]),
5730
+ default: vue.withCtx(()=>_cache[1] || (_cache[1] = [
5731
+ vue.createElementVNode("i", {
5732
+ class: "fa fa-bars"
5733
+ }, null, -1)
5734
+ ])),
5782
5735
  _: 1
5783
5736
  }, 8, [
5784
5737
  "to",
@@ -5804,9 +5757,16 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
5804
5757
  vue.renderSlot(_ctx.$slots, "body", {
5805
5758
  data: _ctx.entity
5806
5759
  }, ()=>[
5807
- vue.createElementVNode("div", _hoisted_7$5, [
5808
- vue.createElementVNode("div", _hoisted_8$5, [
5809
- _hoisted_9$5,
5760
+ vue.createElementVNode("div", _hoisted_5$5, [
5761
+ vue.createElementVNode("div", _hoisted_6$4, [
5762
+ _cache[2] || (_cache[2] = vue.createElementVNode("div", null, [
5763
+ vue.createElementVNode("strong", null, [
5764
+ vue.createElementVNode("i", {
5765
+ class: "fa fa-microscope"
5766
+ }),
5767
+ vue.createTextVNode(" Analyses")
5768
+ ])
5769
+ ], -1)),
5810
5770
  vue.createElementVNode("div", {
5811
5771
  class: vue.normalizeClass({
5812
5772
  "text-success": _ctx.entity.analyses > 0,
@@ -5814,8 +5774,15 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
5814
5774
  })
5815
5775
  }, vue.toDisplayString(_ctx.entity.analyses), 3)
5816
5776
  ]),
5817
- vue.createElementVNode("div", _hoisted_10$4, [
5818
- _hoisted_11$3,
5777
+ vue.createElementVNode("div", _hoisted_7$3, [
5778
+ _cache[3] || (_cache[3] = vue.createElementVNode("div", null, [
5779
+ vue.createElementVNode("strong", null, [
5780
+ vue.createElementVNode("i", {
5781
+ class: "fa-solid fa-server"
5782
+ }),
5783
+ vue.createTextVNode(" Nodes")
5784
+ ])
5785
+ ], -1)),
5819
5786
  vue.createElementVNode("div", {
5820
5787
  class: vue.normalizeClass({
5821
5788
  "text-success": _ctx.entity.nodes > 0,
@@ -5823,8 +5790,15 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
5823
5790
  })
5824
5791
  }, vue.toDisplayString(_ctx.entity.nodes), 3)
5825
5792
  ]),
5826
- vue.createElementVNode("div", _hoisted_12$3, [
5827
- _hoisted_13$2,
5793
+ vue.createElementVNode("div", _hoisted_8$3, [
5794
+ _cache[4] || (_cache[4] = vue.createElementVNode("div", null, [
5795
+ vue.createElementVNode("strong", null, [
5796
+ vue.createElementVNode("i", {
5797
+ class: "fa-solid fa-user"
5798
+ }),
5799
+ vue.createTextVNode(" Creator")
5800
+ ])
5801
+ ], -1)),
5828
5802
  vue.createElementVNode("div", null, [
5829
5803
  _ctx.entity.user_id ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
5830
5804
  key: 0
@@ -5842,10 +5816,12 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
5842
5816
  vue.renderSlot(_ctx.$slots, "footer", {
5843
5817
  data: _ctx.entity
5844
5818
  }, ()=>[
5845
- vue.createElementVNode("div", _hoisted_14$2, [
5846
- vue.createElementVNode("div", _hoisted_15$2, [
5819
+ vue.createElementVNode("div", _hoisted_9$2, [
5820
+ vue.createElementVNode("div", _hoisted_10$2, [
5847
5821
  vue.createElementVNode("small", null, [
5848
- _hoisted_16$2,
5822
+ _cache[5] || (_cache[5] = vue.createElementVNode("span", {
5823
+ class: "text-muted"
5824
+ }, " created ", -1)),
5849
5825
  vue.createVNode(_component_VCTimeago, {
5850
5826
  datetime: _ctx.entity.created_at
5851
5827
  }, null, 8, [
@@ -5853,9 +5829,11 @@ function _sfc_render$e(_ctx, _cache, $props, $setup, $data, $options) {
5853
5829
  ])
5854
5830
  ])
5855
5831
  ]),
5856
- vue.createElementVNode("div", _hoisted_17$2, [
5832
+ vue.createElementVNode("div", _hoisted_11$2, [
5857
5833
  vue.createElementVNode("small", null, [
5858
- _hoisted_18$2,
5834
+ _cache[6] || (_cache[6] = vue.createElementVNode("span", {
5835
+ class: "text-muted"
5836
+ }, " updated ", -1)),
5859
5837
  vue.createVNode(_component_VCTimeago, {
5860
5838
  datetime: _ctx.entity.updated_at
5861
5839
  }, null, 8, [
@@ -6632,7 +6610,7 @@ var FRegistryProjectForm = vue.defineComponent({
6632
6610
  registry = [
6633
6611
  vue.h('hr'),
6634
6612
  vue.h(RegistryList, {
6635
- [exports.EntityListSlotName.ITEM_ACTIONS]: (props)=>vue.h('button', {
6613
+ [EntityListSlotName.ITEM_ACTIONS]: (props)=>vue.h('button', {
6636
6614
  attrs: {
6637
6615
  disabled: props.busy
6638
6616
  },
@@ -6791,7 +6769,7 @@ var FNodeForm = vue.defineComponent({
6791
6769
  if (!isRealmLocked.value) {
6792
6770
  realm = [
6793
6771
  vue.h(clientWebKit.ARealms, {}, {
6794
- [exports.EntityListSlotName.BODY]: (props)=>formControls.buildFormGroup({
6772
+ [EntityListSlotName.BODY]: (props)=>formControls.buildFormGroup({
6795
6773
  validationMessages: translationsValidation.realm_id.value,
6796
6774
  validationSeverity: vuelidate.getSeverity($v.value.realm_id),
6797
6775
  label: true,
@@ -6870,7 +6848,7 @@ var FNodeForm = vue.defineComponent({
6870
6848
  label: true,
6871
6849
  labelContent: 'Registry',
6872
6850
  content: vue.h(RegistryList, {}, {
6873
- [exports.EntityListSlotName.ITEM_ACTIONS]: (props)=>vue.h('button', {
6851
+ [EntityListSlotName.ITEM_ACTIONS]: (props)=>vue.h('button', {
6874
6852
  disabled: props.busy,
6875
6853
  class: [
6876
6854
  'btn btn-xs',
@@ -7124,7 +7102,9 @@ const FAnalysisNodeApprovalCommand = vue.defineComponent({
7124
7102
  }
7125
7103
  busy.value = false;
7126
7104
  };
7127
- const isAllowed = clientWebKit.useAbilityCheck(PermissionName.ANALYSIS_APPROVE);
7105
+ const isAllowed = clientWebKit.usePermissionCheck({
7106
+ name: PermissionName.ANALYSIS_APPROVE
7107
+ });
7128
7108
  return ()=>renderActionCommand({
7129
7109
  execute,
7130
7110
  elementType: props.elementType,
@@ -7243,16 +7223,6 @@ var FAnalysisNodeAssignAction = vue.defineComponent({
7243
7223
  }
7244
7224
  });
7245
7225
 
7246
- var Direction$1;
7247
- (function(Direction) {
7248
- Direction["IN"] = "in";
7249
- Direction["OUT"] = "out";
7250
- })(Direction$1 || (Direction$1 = {}));
7251
- var Target;
7252
- (function(Target) {
7253
- Target["ANALYSIS"] = "analysis";
7254
- Target["NODE"] = "node";
7255
- })(Target || (Target = {}));
7256
7226
  var FAnalysisNode = vue.defineComponent({
7257
7227
  props: {
7258
7228
  entity: {
@@ -7345,11 +7315,6 @@ var FAnalysisNode = vue.defineComponent({
7345
7315
  }
7346
7316
  });
7347
7317
 
7348
- var Direction;
7349
- (function(Direction) {
7350
- Direction["IN"] = "in";
7351
- Direction["OUT"] = "out";
7352
- })(Direction || (Direction = {}));
7353
7318
  var FAnalysisNodes = vue.defineComponent({
7354
7319
  props: {
7355
7320
  ...defineListProps(),
@@ -7362,11 +7327,11 @@ var FAnalysisNodes = vue.defineComponent({
7362
7327
  },
7363
7328
  target: {
7364
7329
  type: String,
7365
- default: coreKit.DomainType.NODE
7330
+ default: `${coreKit.DomainType.NODE}`
7366
7331
  },
7367
7332
  direction: {
7368
7333
  type: String,
7369
- default: "out"
7334
+ default: `${"out"}`
7370
7335
  }
7371
7336
  },
7372
7337
  slots: Object,
@@ -7619,19 +7584,14 @@ const _hoisted_1$b = {
7619
7584
  key: 0,
7620
7585
  class: "train-stations-progress"
7621
7586
  };
7622
- const _hoisted_2$b = {
7587
+ const _hoisted_2$9 = {
7623
7588
  class: "icon"
7624
7589
  };
7625
- const _hoisted_3$b = /* @__PURE__ */ vue.createElementVNode("div", {
7626
- class: "mt-1"
7627
- }, [
7628
- /* @__PURE__ */ vue.createElementVNode("strong", null, "Status")
7629
- ], -1);
7630
- const _hoisted_4$a = {
7590
+ const _hoisted_3$7 = {
7631
7591
  key: 1,
7632
7592
  class: "progress bg-white"
7633
7593
  };
7634
- const _hoisted_5$8 = [
7594
+ const _hoisted_4$7 = [
7635
7595
  "aria-valuenow"
7636
7596
  ];
7637
7597
  function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
@@ -7665,9 +7625,13 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
7665
7625
  }
7666
7626
  ])
7667
7627
  }, [
7668
- vue.createElementVNode("span", _hoisted_2$b, vue.toDisplayString(item.node.name), 1)
7628
+ vue.createElementVNode("span", _hoisted_2$9, vue.toDisplayString(item.node.name), 1)
7669
7629
  ], 2),
7670
- _hoisted_3$b,
7630
+ _cache[0] || (_cache[0] = vue.createElementVNode("div", {
7631
+ class: "mt-1"
7632
+ }, [
7633
+ vue.createElementVNode("strong", null, "Status")
7634
+ ], -1)),
7671
7635
  vue.createElementVNode("div", null, [
7672
7636
  vue.createVNode(_component_FAnalysisNodeRunStatus, {
7673
7637
  status: item.run_status
@@ -7684,7 +7648,7 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
7684
7648
  "realm-id",
7685
7649
  "source-id"
7686
7650
  ])
7687
- ])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$a, [
7651
+ ])) : (vue.openBlock(), vue.createElementBlock("div", _hoisted_3$7, [
7688
7652
  vue.createElementVNode("div", {
7689
7653
  class: vue.normalizeClass([
7690
7654
  "progress-bar",
@@ -7699,7 +7663,7 @@ function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) {
7699
7663
  "aria-valuenow": _ctx.progressPercentage,
7700
7664
  "aria-valuemin": "0",
7701
7665
  "aria-valuemax": "100"
7702
- }, null, 14, _hoisted_5$8)
7666
+ }, null, 14, _hoisted_4$7)
7703
7667
  ]))
7704
7668
  ]);
7705
7669
  }
@@ -7733,7 +7697,7 @@ const FAnalysisBucketDownload = vue.defineComponent({
7733
7697
  },
7734
7698
  elementType: {
7735
7699
  type: String,
7736
- default: exports.ActionCommandElementType.BUTTON
7700
+ default: ActionCommandElementType.BUTTON
7737
7701
  },
7738
7702
  withIcon: {
7739
7703
  type: Boolean,
@@ -7947,72 +7911,36 @@ var _sfc_main$c = vue.defineComponent({
7947
7911
  const _hoisted_1$a = {
7948
7912
  class: "d-flex flex-column gap-1 w-100"
7949
7913
  };
7950
- const _hoisted_2$a = {
7914
+ const _hoisted_2$8 = {
7951
7915
  class: "w-100"
7952
7916
  };
7953
- const _hoisted_3$a = {
7917
+ const _hoisted_3$6 = {
7954
7918
  class: "d-flex flex-row align-items-center"
7955
7919
  };
7956
- const _hoisted_4$9 = /* @__PURE__ */ vue.createElementVNode("i", {
7957
- class: "fas fa-microscope me-1"
7958
- }, null, -1);
7959
- const _hoisted_5$7 = {
7920
+ const _hoisted_4$6 = {
7960
7921
  class: "ms-auto d-flex flex-row gap-1"
7961
7922
  };
7962
- const _hoisted_6$6 = /* @__PURE__ */ vue.createElementVNode("i", {
7963
- class: "fa fa-bars"
7964
- }, null, -1);
7965
- const _hoisted_7$4 = {
7923
+ const _hoisted_5$4 = {
7966
7924
  class: "row"
7967
7925
  };
7968
- const _hoisted_8$4 = {
7926
+ const _hoisted_6$3 = {
7969
7927
  class: "col-12 col-md-4 d-flex align-items-center flex-column"
7970
7928
  };
7971
- const _hoisted_9$4 = /* @__PURE__ */ vue.createElementVNode("div", null, [
7972
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
7973
- /* @__PURE__ */ vue.createElementVNode("i", {
7974
- class: "fa-solid fa-server"
7975
- }),
7976
- /* @__PURE__ */ vue.createTextVNode(" Node")
7977
- ])
7978
- ], -1);
7979
- const _hoisted_10$3 = {
7929
+ const _hoisted_7$2 = {
7980
7930
  class: "col-12 col-md-4 d-flex align-items-center flex-column"
7981
7931
  };
7982
- const _hoisted_11$2 = /* @__PURE__ */ vue.createElementVNode("div", null, [
7983
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
7984
- /* @__PURE__ */ vue.createElementVNode("i", {
7985
- class: "fa-solid fa-heartbeat"
7986
- }),
7987
- /* @__PURE__ */ vue.createTextVNode(" Status")
7988
- ])
7989
- ], -1);
7990
- const _hoisted_12$2 = {
7932
+ const _hoisted_8$2 = {
7991
7933
  class: "col-12 col-md-4 d-flex align-items-center flex-column"
7992
7934
  };
7993
- const _hoisted_13$1 = /* @__PURE__ */ vue.createElementVNode("div", null, [
7994
- /* @__PURE__ */ vue.createElementVNode("strong", null, [
7995
- /* @__PURE__ */ vue.createElementVNode("i", {
7996
- class: "fa-solid fa-user"
7997
- }),
7998
- /* @__PURE__ */ vue.createTextVNode(" Creator")
7999
- ])
8000
- ], -1);
8001
- const _hoisted_14$1 = {
7935
+ const _hoisted_9$1 = {
8002
7936
  class: "d-flex flex-row"
8003
7937
  };
8004
- const _hoisted_15$1 = {
7938
+ const _hoisted_10$1 = {
8005
7939
  class: ""
8006
7940
  };
8007
- const _hoisted_16$1 = /* @__PURE__ */ vue.createElementVNode("span", {
8008
- class: "text-muted"
8009
- }, " created ", -1);
8010
- const _hoisted_17$1 = {
7941
+ const _hoisted_11$1 = {
8011
7942
  class: "ms-auto"
8012
7943
  };
8013
- const _hoisted_18$1 = /* @__PURE__ */ vue.createElementVNode("span", {
8014
- class: "text-muted"
8015
- }, " updated ", -1);
8016
7944
  function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
8017
7945
  const _component_FAnalysisName = vue.resolveComponent("FAnalysisName");
8018
7946
  const _component_VCLink = vue.resolveComponent("VCLink");
@@ -8022,13 +7950,15 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
8022
7950
  const _component_FAnalysisNodeApprovalStatus = vue.resolveComponent("FAnalysisNodeApprovalStatus");
8023
7951
  const _component_VCTimeago = vue.resolveComponent("VCTimeago");
8024
7952
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$a, [
8025
- vue.createElementVNode("div", _hoisted_2$a, [
8026
- vue.createElementVNode("div", _hoisted_3$a, [
7953
+ vue.createElementVNode("div", _hoisted_2$8, [
7954
+ vue.createElementVNode("div", _hoisted_3$6, [
8027
7955
  vue.createElementVNode("div", null, [
8028
7956
  vue.renderSlot(_ctx.$slots, "title", {
8029
7957
  data: _ctx.entity
8030
7958
  }, ()=>[
8031
- _hoisted_4$9,
7959
+ _cache[0] || (_cache[0] = vue.createElementVNode("i", {
7960
+ class: "fas fa-microscope me-1"
7961
+ }, null, -1)),
8032
7962
  vue.createVNode(_component_FAnalysisName, {
8033
7963
  "entity-id": _ctx.entity.analysis.id,
8034
7964
  "entity-name": _ctx.entity.analysis.name
@@ -8038,7 +7968,7 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
8038
7968
  ])
8039
7969
  ])
8040
7970
  ]),
8041
- vue.createElementVNode("div", _hoisted_5$7, [
7971
+ vue.createElementVNode("div", _hoisted_4$6, [
8042
7972
  vue.renderSlot(_ctx.$slots, "itemActions", {
8043
7973
  data: _ctx.entity
8044
7974
  }, ()=>[
@@ -8047,9 +7977,11 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
8047
7977
  disabled: _ctx.busy,
8048
7978
  class: "btn btn-xs btn-dark"
8049
7979
  }, {
8050
- default: vue.withCtx(()=>[
8051
- _hoisted_6$6
8052
- ]),
7980
+ default: vue.withCtx(()=>_cache[1] || (_cache[1] = [
7981
+ vue.createElementVNode("i", {
7982
+ class: "fa fa-bars"
7983
+ }, null, -1)
7984
+ ])),
8053
7985
  _: 1
8054
7986
  }, 8, [
8055
7987
  "to",
@@ -8104,13 +8036,27 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
8104
8036
  vue.renderSlot(_ctx.$slots, "body", {
8105
8037
  data: _ctx.entity
8106
8038
  }, ()=>[
8107
- vue.createElementVNode("div", _hoisted_7$4, [
8108
- vue.createElementVNode("div", _hoisted_8$4, [
8109
- _hoisted_9$4,
8039
+ vue.createElementVNode("div", _hoisted_5$4, [
8040
+ vue.createElementVNode("div", _hoisted_6$3, [
8041
+ _cache[2] || (_cache[2] = vue.createElementVNode("div", null, [
8042
+ vue.createElementVNode("strong", null, [
8043
+ vue.createElementVNode("i", {
8044
+ class: "fa-solid fa-server"
8045
+ }),
8046
+ vue.createTextVNode(" Node")
8047
+ ])
8048
+ ], -1)),
8110
8049
  vue.createElementVNode("div", null, vue.toDisplayString(_ctx.entity.node.name), 1)
8111
8050
  ]),
8112
- vue.createElementVNode("div", _hoisted_10$3, [
8113
- _hoisted_11$2,
8051
+ vue.createElementVNode("div", _hoisted_7$2, [
8052
+ _cache[3] || (_cache[3] = vue.createElementVNode("div", null, [
8053
+ vue.createElementVNode("strong", null, [
8054
+ vue.createElementVNode("i", {
8055
+ class: "fa-solid fa-heartbeat"
8056
+ }),
8057
+ vue.createTextVNode(" Status")
8058
+ ])
8059
+ ], -1)),
8114
8060
  vue.createElementVNode("div", null, [
8115
8061
  vue.createVNode(_component_FAnalysisNodeApprovalStatus, {
8116
8062
  status: _ctx.entity.approval_status
@@ -8126,8 +8072,15 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
8126
8072
  ])
8127
8073
  ])
8128
8074
  ]),
8129
- vue.createElementVNode("div", _hoisted_12$2, [
8130
- _hoisted_13$1,
8075
+ vue.createElementVNode("div", _hoisted_8$2, [
8076
+ _cache[4] || (_cache[4] = vue.createElementVNode("div", null, [
8077
+ vue.createElementVNode("strong", null, [
8078
+ vue.createElementVNode("i", {
8079
+ class: "fa-solid fa-user"
8080
+ }),
8081
+ vue.createTextVNode(" Creator")
8082
+ ])
8083
+ ], -1)),
8131
8084
  vue.createElementVNode("div", null, [
8132
8085
  _ctx.entity.analysis.user_id ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
8133
8086
  key: 0
@@ -8141,10 +8094,12 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
8141
8094
  vue.renderSlot(_ctx.$slots, "footer", {
8142
8095
  data: _ctx.entity
8143
8096
  }, ()=>[
8144
- vue.createElementVNode("div", _hoisted_14$1, [
8145
- vue.createElementVNode("div", _hoisted_15$1, [
8097
+ vue.createElementVNode("div", _hoisted_9$1, [
8098
+ vue.createElementVNode("div", _hoisted_10$1, [
8146
8099
  vue.createElementVNode("small", null, [
8147
- _hoisted_16$1,
8100
+ _cache[5] || (_cache[5] = vue.createElementVNode("span", {
8101
+ class: "text-muted"
8102
+ }, " created ", -1)),
8148
8103
  vue.createVNode(_component_VCTimeago, {
8149
8104
  datetime: _ctx.entity.created_at
8150
8105
  }, null, 8, [
@@ -8152,9 +8107,11 @@ function _sfc_render$c(_ctx, _cache, $props, $setup, $data, $options) {
8152
8107
  ])
8153
8108
  ])
8154
8109
  ]),
8155
- vue.createElementVNode("div", _hoisted_17$1, [
8110
+ vue.createElementVNode("div", _hoisted_11$1, [
8156
8111
  vue.createElementVNode("small", null, [
8157
- _hoisted_18$1,
8112
+ _cache[6] || (_cache[6] = vue.createElementVNode("span", {
8113
+ class: "text-muted"
8114
+ }, " updated ", -1)),
8158
8115
  vue.createVNode(_component_VCTimeago, {
8159
8116
  datetime: _ctx.entity.updated_at
8160
8117
  }, null, 8, [
@@ -8239,43 +8196,18 @@ var _sfc_main$b = vue.defineComponent({
8239
8196
  const _hoisted_1$9 = {
8240
8197
  class: "mb-2"
8241
8198
  };
8242
- const _hoisted_2$9 = /* @__PURE__ */ vue.createElementVNode("h6", null, [
8243
- /* @__PURE__ */ vue.createElementVNode("i", {
8244
- class: "fa fa-compact-disc"
8245
- }),
8246
- /* @__PURE__ */ vue.createTextVNode(" MasterImage")
8247
- ], -1);
8248
- const _hoisted_3$9 = {
8199
+ const _hoisted_2$7 = {
8249
8200
  class: "mb-2"
8250
8201
  };
8251
- const _hoisted_4$8 = /* @__PURE__ */ vue.createElementVNode("hr", null, null, -1);
8252
- const _hoisted_5$6 = /* @__PURE__ */ vue.createElementVNode("h6", null, [
8253
- /* @__PURE__ */ vue.createElementVNode("i", {
8254
- class: "fa fa-city"
8255
- }),
8256
- /* @__PURE__ */ vue.createTextVNode(" Nodes")
8257
- ], -1);
8258
- const _hoisted_6$5 = {
8202
+ const _hoisted_3$5 = {
8259
8203
  class: "row"
8260
8204
  };
8261
- const _hoisted_7$3 = {
8205
+ const _hoisted_4$5 = {
8262
8206
  class: "col-12 col-xl-6"
8263
8207
  };
8264
- const _hoisted_8$3 = /* @__PURE__ */ vue.createElementVNode("span", null, [
8265
- /* @__PURE__ */ vue.createTextVNode("Nodes "),
8266
- /* @__PURE__ */ vue.createElementVNode("span", {
8267
- class: "text-info"
8268
- }, "available")
8269
- ], -1);
8270
- const _hoisted_9$3 = {
8208
+ const _hoisted_5$3 = {
8271
8209
  class: "col-12 col-xl-6"
8272
8210
  };
8273
- const _hoisted_10$2 = /* @__PURE__ */ vue.createElementVNode("span", null, [
8274
- /* @__PURE__ */ vue.createTextVNode("Nodes "),
8275
- /* @__PURE__ */ vue.createElementVNode("span", {
8276
- class: "text-success"
8277
- }, "selected")
8278
- ], -1);
8279
8211
  function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
8280
8212
  const _component_FMasterImagePicker = vue.resolveComponent("FMasterImagePicker");
8281
8213
  const _component_ListSearch = vue.resolveComponent("ListSearch");
@@ -8285,8 +8217,13 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
8285
8217
  const _component_FAnalysisNodes = vue.resolveComponent("FAnalysisNodes");
8286
8218
  return vue.openBlock(), vue.createElementBlock("div", null, [
8287
8219
  vue.createElementVNode("div", _hoisted_1$9, [
8288
- _hoisted_2$9,
8289
- vue.createElementVNode("div", _hoisted_3$9, [
8220
+ _cache[0] || (_cache[0] = vue.createElementVNode("h6", null, [
8221
+ vue.createElementVNode("i", {
8222
+ class: "fa fa-compact-disc"
8223
+ }),
8224
+ vue.createTextVNode(" MasterImage")
8225
+ ], -1)),
8226
+ vue.createElementVNode("div", _hoisted_2$7, [
8290
8227
  vue.createVNode(_component_FMasterImagePicker, {
8291
8228
  "entity-id": _ctx.entity.master_image_id,
8292
8229
  onSelected: _ctx.handleMasterImageSelected
@@ -8296,11 +8233,16 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
8296
8233
  ])
8297
8234
  ])
8298
8235
  ]),
8299
- _hoisted_4$8,
8236
+ _cache[4] || (_cache[4] = vue.createElementVNode("hr", null, null, -1)),
8300
8237
  vue.createElementVNode("div", null, [
8301
- _hoisted_5$6,
8302
- vue.createElementVNode("div", _hoisted_6$5, [
8303
- vue.createElementVNode("div", _hoisted_7$3, [
8238
+ _cache[3] || (_cache[3] = vue.createElementVNode("h6", null, [
8239
+ vue.createElementVNode("i", {
8240
+ class: "fa fa-city"
8241
+ }),
8242
+ vue.createTextVNode(" Nodes")
8243
+ ], -1)),
8244
+ vue.createElementVNode("div", _hoisted_3$5, [
8245
+ vue.createElementVNode("div", _hoisted_4$5, [
8304
8246
  vue.createVNode(_component_FProjectNodes, {
8305
8247
  ref: "FProjectNodes",
8306
8248
  "realm-id": _ctx.entity.realm_id,
@@ -8312,7 +8254,12 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
8312
8254
  }
8313
8255
  }, {
8314
8256
  header: vue.withCtx((props)=>[
8315
- _hoisted_8$3,
8257
+ _cache[1] || (_cache[1] = vue.createElementVNode("span", null, [
8258
+ vue.createTextVNode("Nodes "),
8259
+ vue.createElementVNode("span", {
8260
+ class: "text-info"
8261
+ }, "available")
8262
+ ], -1)),
8316
8263
  vue.createVNode(_component_ListSearch, {
8317
8264
  load: props.load,
8318
8265
  meta: props.meta
@@ -8354,7 +8301,7 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
8354
8301
  "query"
8355
8302
  ])
8356
8303
  ]),
8357
- vue.createElementVNode("div", _hoisted_9$3, [
8304
+ vue.createElementVNode("div", _hoisted_5$3, [
8358
8305
  vue.createVNode(_component_FAnalysisNodes, {
8359
8306
  ref: "FAnalysisNodes",
8360
8307
  "realm-id": _ctx.entity.realm_id,
@@ -8365,9 +8312,14 @@ function _sfc_render$b(_ctx, _cache, $props, $setup, $data, $options) {
8365
8312
  }
8366
8313
  }
8367
8314
  }, {
8368
- header: vue.withCtx(()=>[
8369
- _hoisted_10$2
8370
- ]),
8315
+ header: vue.withCtx(()=>_cache[2] || (_cache[2] = [
8316
+ vue.createElementVNode("span", null, [
8317
+ vue.createTextVNode("Nodes "),
8318
+ vue.createElementVNode("span", {
8319
+ class: "text-success"
8320
+ }, "selected")
8321
+ ], -1)
8322
+ ])),
8371
8323
  _: 1
8372
8324
  }, 8, [
8373
8325
  "realm-id",
@@ -8440,21 +8392,15 @@ var _sfc_main$a = vue.defineComponent({
8440
8392
  const _hoisted_1$8 = {
8441
8393
  class: "title"
8442
8394
  };
8443
- const _hoisted_2$8 = {
8395
+ const _hoisted_2$6 = {
8444
8396
  class: "ms-auto d-flex flex-row me-1"
8445
8397
  };
8446
- const _hoisted_3$8 = {
8398
+ const _hoisted_3$4 = {
8447
8399
  class: "ms-1"
8448
8400
  };
8449
- const _hoisted_4$7 = [
8401
+ const _hoisted_4$4 = [
8450
8402
  "disabled"
8451
8403
  ];
8452
- const _hoisted_5$5 = /* @__PURE__ */ vue.createElementVNode("i", {
8453
- class: "fa fa-trash"
8454
- }, null, -1);
8455
- const _hoisted_6$4 = [
8456
- _hoisted_5$5
8457
- ];
8458
8404
  function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
8459
8405
  return vue.openBlock(), vue.createElementBlock("div", {
8460
8406
  class: vue.normalizeClass([
@@ -8472,7 +8418,7 @@ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
8472
8418
  }, [
8473
8419
  vue.createElementVNode("span", _hoisted_1$8, vue.toDisplayString(_ctx.entity.name), 1)
8474
8420
  ]),
8475
- vue.createElementVNode("div", _hoisted_2$8, [
8421
+ vue.createElementVNode("div", _hoisted_2$6, [
8476
8422
  vue.createElementVNode("div", null, [
8477
8423
  !_ctx.fileSelectedId || _ctx.isMatch ? (vue.openBlock(), vue.createElementBlock("button", {
8478
8424
  key: 0,
@@ -8496,7 +8442,7 @@ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
8496
8442
  }, null, 2)
8497
8443
  ], 2)) : vue.createCommentVNode("", true)
8498
8444
  ]),
8499
- vue.createElementVNode("div", _hoisted_3$8, [
8445
+ vue.createElementVNode("div", _hoisted_3$4, [
8500
8446
  vue.createElementVNode("button", {
8501
8447
  type: "button",
8502
8448
  class: "btn btn-danger btn-xs",
@@ -8504,7 +8450,11 @@ function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
8504
8450
  onClick: _cache[2] || (_cache[2] = vue.withModifiers((...args)=>_ctx.drop && _ctx.drop(...args), [
8505
8451
  "prevent"
8506
8452
  ]))
8507
- }, _hoisted_6$4, 8, _hoisted_4$7)
8453
+ }, _cache[3] || (_cache[3] = [
8454
+ vue.createElementVNode("i", {
8455
+ class: "fa fa-trash"
8456
+ }, null, -1)
8457
+ ]), 8, _hoisted_4$4)
8508
8458
  ])
8509
8459
  ])
8510
8460
  ], 2);
@@ -8577,34 +8527,32 @@ var _sfc_main$9 = vue.defineComponent({
8577
8527
  const _hoisted_1$7 = {
8578
8528
  class: "card card-file d-flex flex-row align-items-center p-1"
8579
8529
  };
8580
- const _hoisted_2$7 = {
8530
+ const _hoisted_2$5 = {
8581
8531
  class: "card-heading"
8582
8532
  };
8583
- const _hoisted_3$7 = {
8533
+ const _hoisted_3$3 = {
8584
8534
  class: "title"
8585
8535
  };
8586
- const _hoisted_4$6 = {
8536
+ const _hoisted_4$3 = {
8587
8537
  class: "ms-auto"
8588
8538
  };
8589
- const _hoisted_5$4 = /* @__PURE__ */ vue.createElementVNode("i", {
8590
- class: "fa fa fa-trash"
8591
- }, null, -1);
8592
- const _hoisted_6$3 = [
8593
- _hoisted_5$4
8594
- ];
8595
8539
  function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
8596
8540
  return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$7, [
8597
- vue.createElementVNode("div", _hoisted_2$7, [
8598
- vue.createElementVNode("span", _hoisted_3$7, vue.toDisplayString(_ctx.path), 1)
8541
+ vue.createElementVNode("div", _hoisted_2$5, [
8542
+ vue.createElementVNode("span", _hoisted_3$3, vue.toDisplayString(_ctx.path), 1)
8599
8543
  ]),
8600
- vue.createElementVNode("div", _hoisted_4$6, [
8544
+ vue.createElementVNode("div", _hoisted_4$3, [
8601
8545
  vue.createElementVNode("button", {
8602
8546
  type: "button",
8603
8547
  class: "btn btn-dark btn-xs",
8604
8548
  onClick: _cache[0] || (_cache[0] = vue.withModifiers((...args)=>_ctx.drop && _ctx.drop(...args), [
8605
8549
  "prevent"
8606
8550
  ]))
8607
- }, _hoisted_6$3)
8551
+ }, _cache[1] || (_cache[1] = [
8552
+ vue.createElementVNode("i", {
8553
+ class: "fa fa fa-trash"
8554
+ }, null, -1)
8555
+ ]))
8608
8556
  ])
8609
8557
  ]);
8610
8558
  }
@@ -8816,105 +8764,74 @@ var _sfc_main$8 = vue.defineComponent({
8816
8764
  const _hoisted_1$6 = {
8817
8765
  class: "row"
8818
8766
  };
8819
- const _hoisted_2$6 = {
8767
+ const _hoisted_2$4 = {
8820
8768
  class: "col"
8821
8769
  };
8822
- const _hoisted_3$6 = /* @__PURE__ */ vue.createElementVNode("h6", null, [
8823
- /* @__PURE__ */ vue.createElementVNode("i", {
8824
- class: "fa fa-upload"
8825
- }),
8826
- /* @__PURE__ */ vue.createTextVNode(" Upload")
8827
- ], -1);
8828
- const _hoisted_4$5 = {
8770
+ const _hoisted_3$2 = {
8829
8771
  class: "form-group"
8830
8772
  };
8831
- const _hoisted_5$3 = {
8773
+ const _hoisted_4$2 = {
8832
8774
  class: "form-label"
8833
8775
  };
8834
- const _hoisted_6$2 = [
8776
+ const _hoisted_5$2 = [
8835
8777
  "webkitdirectory",
8836
8778
  "disbaled"
8837
8779
  ];
8838
- const _hoisted_7$2 = {
8780
+ const _hoisted_6$2 = {
8839
8781
  class: "form-group"
8840
8782
  };
8841
- const _hoisted_8$2 = {
8783
+ const _hoisted_7$1 = {
8842
8784
  class: "form-check form-switch"
8843
8785
  };
8844
- const _hoisted_9$2 = /* @__PURE__ */ vue.createElementVNode("label", {
8845
- class: "form-check-label",
8846
- for: "train-file-manager-switch"
8847
- }, "Directory Mode", -1);
8848
- const _hoisted_10$1 = {
8786
+ const _hoisted_8$1 = {
8849
8787
  class: "row"
8850
8788
  };
8851
- const _hoisted_11$1 = {
8789
+ const _hoisted_9 = {
8852
8790
  class: "col"
8853
8791
  };
8854
- const _hoisted_12$1 = /* @__PURE__ */ vue.createStaticVNode('<div class="d-flex flex-row"><div><h6 class="title text-muted"> Files <span style="font-size:0.65rem;"><span class="text-info"><i class="fa fa-memory"></i> in Memory </span></span></h6></div><div class="ms-auto"><h6 class="title text-muted"> Path: <span class="sub-title"> [root] </span></h6></div></div>', 1);
8855
- const _hoisted_13 = {
8792
+ const _hoisted_10 = {
8856
8793
  key: 0,
8857
8794
  class: "alert alert-info alert-sm m-t-10"
8858
8795
  };
8859
- const _hoisted_14 = {
8796
+ const _hoisted_11 = {
8860
8797
  class: "d-flex flex-column"
8861
8798
  };
8862
- const _hoisted_15 = {
8799
+ const _hoisted_12 = {
8863
8800
  class: "form-group"
8864
8801
  };
8865
- const _hoisted_16 = [
8802
+ const _hoisted_13 = [
8866
8803
  "disabled"
8867
8804
  ];
8868
- const _hoisted_17 = {
8805
+ const _hoisted_14 = {
8869
8806
  class: "col"
8870
8807
  };
8871
- const _hoisted_18 = /* @__PURE__ */ vue.createElementVNode("h6", {
8872
- class: "title text-muted"
8873
- }, [
8874
- /* @__PURE__ */ vue.createTextVNode(" Files "),
8875
- /* @__PURE__ */ vue.createElementVNode("span", {
8876
- style: {
8877
- "font-size": "0.65rem"
8878
- }
8879
- }, [
8880
- /* @__PURE__ */ vue.createElementVNode("span", {
8881
- class: "text-success"
8882
- }, [
8883
- /* @__PURE__ */ vue.createElementVNode("i", {
8884
- class: "fa fa-file"
8885
- }),
8886
- /* @__PURE__ */ vue.createTextVNode(" uploaded ")
8887
- ])
8888
- ])
8889
- ], -1);
8890
- const _hoisted_19 = {
8808
+ const _hoisted_15 = {
8891
8809
  class: "form-check"
8892
8810
  };
8893
- const _hoisted_20 = /* @__PURE__ */ vue.createElementVNode("label", {
8894
- for: "selectAllFiles"
8895
- }, "Select all", -1);
8896
- const _hoisted_21 = {
8811
+ const _hoisted_16 = {
8897
8812
  class: "d-flex flex-column"
8898
8813
  };
8899
- const _hoisted_22 = {
8814
+ const _hoisted_17 = {
8900
8815
  class: "form-group"
8901
8816
  };
8902
- const _hoisted_23 = [
8817
+ const _hoisted_18 = [
8903
8818
  "disabled"
8904
8819
  ];
8905
- const _hoisted_24 = /* @__PURE__ */ vue.createElementVNode("i", {
8906
- class: "fa fa-trash"
8907
- }, null, -1);
8908
8820
  function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
8909
8821
  const _component_FAnalysisFormFile = vue.resolveComponent("FAnalysisFormFile");
8910
8822
  const _component_FAnalysisFile = vue.resolveComponent("FAnalysisFile");
8911
8823
  const _component_FAnalysisBucketFiles = vue.resolveComponent("FAnalysisBucketFiles");
8912
8824
  return vue.openBlock(), vue.createElementBlock("div", null, [
8913
8825
  vue.createElementVNode("div", _hoisted_1$6, [
8914
- vue.createElementVNode("div", _hoisted_2$6, [
8915
- _hoisted_3$6,
8916
- vue.createElementVNode("div", _hoisted_4$5, [
8917
- vue.createElementVNode("label", _hoisted_5$3, vue.toDisplayString(_ctx.directoryMode ? "Directories" : "Files"), 1),
8826
+ vue.createElementVNode("div", _hoisted_2$4, [
8827
+ _cache[7] || (_cache[7] = vue.createElementVNode("h6", null, [
8828
+ vue.createElementVNode("i", {
8829
+ class: "fa fa-upload"
8830
+ }),
8831
+ vue.createTextVNode(" Upload")
8832
+ ], -1)),
8833
+ vue.createElementVNode("div", _hoisted_3$2, [
8834
+ vue.createElementVNode("label", _hoisted_4$2, vue.toDisplayString(_ctx.directoryMode ? "Directories" : "Files"), 1),
8918
8835
  vue.createElementVNode("input", {
8919
8836
  id: "files",
8920
8837
  ref: "filesNode",
@@ -8924,10 +8841,10 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
8924
8841
  multiple: "",
8925
8842
  disbaled: _ctx.busy,
8926
8843
  onChange: _cache[0] || (_cache[0] = (...args)=>_ctx.checkTempFiles && _ctx.checkTempFiles(...args))
8927
- }, null, 40, _hoisted_6$2)
8844
+ }, null, 40, _hoisted_5$2)
8928
8845
  ]),
8929
- vue.createElementVNode("div", _hoisted_7$2, [
8930
- vue.createElementVNode("div", _hoisted_8$2, [
8846
+ vue.createElementVNode("div", _hoisted_6$2, [
8847
+ vue.createElementVNode("div", _hoisted_7$1, [
8931
8848
  vue.withDirectives(vue.createElementVNode("input", {
8932
8849
  id: "train-file-manager-switch",
8933
8850
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event)=>_ctx.directoryMode = $event),
@@ -8939,16 +8856,19 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
8939
8856
  _ctx.directoryMode
8940
8857
  ]
8941
8858
  ]),
8942
- _hoisted_9$2
8859
+ _cache[6] || (_cache[6] = vue.createElementVNode("label", {
8860
+ class: "form-check-label",
8861
+ for: "train-file-manager-switch"
8862
+ }, "Directory Mode", -1))
8943
8863
  ])
8944
8864
  ])
8945
8865
  ])
8946
8866
  ]),
8947
- vue.createElementVNode("div", _hoisted_10$1, [
8948
- vue.createElementVNode("div", _hoisted_11$1, [
8949
- _hoisted_12$1,
8950
- _ctx.tempFiles.length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_13, " You have not selected any files to upload... ")) : vue.createCommentVNode("", true),
8951
- vue.createElementVNode("div", _hoisted_14, [
8867
+ vue.createElementVNode("div", _hoisted_8$1, [
8868
+ vue.createElementVNode("div", _hoisted_9, [
8869
+ _cache[8] || (_cache[8] = vue.createStaticVNode('<div class="d-flex flex-row"><div><h6 class="title text-muted"> Files <span style="font-size:0.65rem;"><span class="text-info"><i class="fa fa-memory"></i> in Memory </span></span></h6></div><div class="ms-auto"><h6 class="title text-muted"> Path: <span class="sub-title"> [root] </span></h6></div></div>', 1)),
8870
+ _ctx.tempFiles.length === 0 ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_10, " You have not selected any files to upload... ")) : vue.createCommentVNode("", true),
8871
+ vue.createElementVNode("div", _hoisted_11, [
8952
8872
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.tempFiles, (file, key)=>{
8953
8873
  return vue.openBlock(), vue.createBlock(_component_FAnalysisFormFile, {
8954
8874
  key,
@@ -8961,7 +8881,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
8961
8881
  ]);
8962
8882
  }), 128))
8963
8883
  ]),
8964
- vue.createElementVNode("div", _hoisted_15, [
8884
+ vue.createElementVNode("div", _hoisted_12, [
8965
8885
  vue.createElementVNode("button", {
8966
8886
  type: "button",
8967
8887
  class: "btn btn-xs btn-dark",
@@ -8969,12 +8889,30 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
8969
8889
  onClick: _cache[2] || (_cache[2] = vue.withModifiers((...args)=>_ctx.upload && _ctx.upload(...args), [
8970
8890
  "prevent"
8971
8891
  ]))
8972
- }, " Upload ", 8, _hoisted_16)
8892
+ }, " Upload ", 8, _hoisted_13)
8973
8893
  ])
8974
8894
  ]),
8975
- vue.createElementVNode("div", _hoisted_17, [
8976
- _hoisted_18,
8977
- vue.createElementVNode("div", _hoisted_19, [
8895
+ vue.createElementVNode("div", _hoisted_14, [
8896
+ _cache[11] || (_cache[11] = vue.createElementVNode("h6", {
8897
+ class: "title text-muted"
8898
+ }, [
8899
+ vue.createTextVNode(" Files "),
8900
+ vue.createElementVNode("span", {
8901
+ style: {
8902
+ "font-size": "0.65rem"
8903
+ }
8904
+ }, [
8905
+ vue.createElementVNode("span", {
8906
+ class: "text-success"
8907
+ }, [
8908
+ vue.createElementVNode("i", {
8909
+ class: "fa fa-file"
8910
+ }),
8911
+ vue.createTextVNode(" uploaded ")
8912
+ ])
8913
+ ])
8914
+ ], -1)),
8915
+ vue.createElementVNode("div", _hoisted_15, [
8978
8916
  vue.withDirectives(vue.createElementVNode("input", {
8979
8917
  id: "selectAllFiles",
8980
8918
  "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event)=>_ctx.selectAll = $event),
@@ -8987,7 +8925,9 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
8987
8925
  _ctx.selectAll
8988
8926
  ]
8989
8927
  ]),
8990
- _hoisted_20
8928
+ _cache[9] || (_cache[9] = vue.createElementVNode("label", {
8929
+ for: "selectAllFiles"
8930
+ }, "Select all", -1))
8991
8931
  ]),
8992
8932
  vue.createVNode(_component_FAnalysisBucketFiles, {
8993
8933
  ref: "fileListNode",
@@ -9000,7 +8940,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
9000
8940
  onDeleted: _ctx.handleDeleted
9001
8941
  }, {
9002
8942
  body: vue.withCtx((props)=>[
9003
- vue.createElementVNode("div", _hoisted_21, [
8943
+ vue.createElementVNode("div", _hoisted_16, [
9004
8944
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(props.data, (file)=>{
9005
8945
  return vue.openBlock(), vue.createBlock(_component_FAnalysisFile, {
9006
8946
  key: file.id,
@@ -9031,7 +8971,7 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
9031
8971
  "onUpdated",
9032
8972
  "onDeleted"
9033
8973
  ]),
9034
- vue.createElementVNode("div", _hoisted_22, [
8974
+ vue.createElementVNode("div", _hoisted_17, [
9035
8975
  vue.createElementVNode("button", {
9036
8976
  type: "button",
9037
8977
  class: "btn btn-warning btn-xs",
@@ -9039,10 +8979,12 @@ function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) {
9039
8979
  onClick: _cache[5] || (_cache[5] = vue.withModifiers((...args)=>_ctx.dropSelected && _ctx.dropSelected(...args), [
9040
8980
  "prevent"
9041
8981
  ]))
9042
- }, [
9043
- _hoisted_24,
8982
+ }, _cache[10] || (_cache[10] = [
8983
+ vue.createElementVNode("i", {
8984
+ class: "fa fa-trash"
8985
+ }, null, -1),
9044
8986
  vue.createTextVNode(" Delete ")
9045
- ], 8, _hoisted_23)
8987
+ ]), 8, _hoisted_18)
9046
8988
  ])
9047
8989
  ])
9048
8990
  ])
@@ -9223,15 +9165,9 @@ var _sfc_main$7 = vue.defineComponent({
9223
9165
  }
9224
9166
  });
9225
9167
 
9226
- const _hoisted_1$5 = /* @__PURE__ */ vue.createElementVNode("span", null, "Entrypoint Command", -1);
9227
- const _hoisted_2$5 = /* @__PURE__ */ vue.createElementVNode("br", null, null, -1);
9228
- const _hoisted_3$5 = {
9168
+ const _hoisted_1$5 = {
9229
9169
  class: "alert alert-sm alert-warning"
9230
9170
  };
9231
- const _hoisted_4$4 = /* @__PURE__ */ vue.createElementVNode("p", null, " The code bucket does not exist. Therefore, no files can be uploaded. ", -1);
9232
- const _hoisted_5$2 = /* @__PURE__ */ vue.createElementVNode("i", {
9233
- class: "fas fa-rotate-right"
9234
- }, null, -1);
9235
9171
  function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
9236
9172
  const _component_FAnalysisImageCommand = vue.resolveComponent("FAnalysisImageCommand");
9237
9173
  const _component_FAnalysisBucketFileManager = vue.resolveComponent("FAnalysisBucketFileManager");
@@ -9242,8 +9178,8 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
9242
9178
  "query-filters": _ctx.queryFilters
9243
9179
  }, {
9244
9180
  default: vue.withCtx(({ data: bucket })=>[
9245
- _hoisted_1$5,
9246
- _hoisted_2$5,
9181
+ _cache[1] || (_cache[1] = vue.createElementVNode("span", null, "Entrypoint Command", -1)),
9182
+ _cache[2] || (_cache[2] = vue.createElementVNode("br", null, null, -1)),
9247
9183
  vue.createVNode(_component_FAnalysisImageCommand, {
9248
9184
  class: "mt-2 mb-2",
9249
9185
  "master-image-id": _ctx.entity.master_image_id,
@@ -9267,18 +9203,20 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
9267
9203
  ])
9268
9204
  ]),
9269
9205
  error: vue.withCtx(()=>[
9270
- vue.createElementVNode("div", _hoisted_3$5, [
9271
- _hoisted_4$4,
9206
+ vue.createElementVNode("div", _hoisted_1$5, [
9207
+ _cache[4] || (_cache[4] = vue.createElementVNode("p", null, " The code bucket does not exist. Therefore, no files can be uploaded. ", -1)),
9272
9208
  vue.createElementVNode("button", {
9273
9209
  type: "button",
9274
9210
  class: "btn btn-xs btn-dark",
9275
9211
  onClick: _cache[0] || (_cache[0] = vue.withModifiers((...args)=>_ctx.retry && _ctx.retry(...args), [
9276
9212
  "prevent"
9277
9213
  ]))
9278
- }, [
9279
- _hoisted_5$2,
9214
+ }, _cache[3] || (_cache[3] = [
9215
+ vue.createElementVNode("i", {
9216
+ class: "fas fa-rotate-right"
9217
+ }, null, -1),
9280
9218
  vue.createTextVNode(" Retry ")
9281
- ])
9219
+ ]))
9282
9220
  ])
9283
9221
  ]),
9284
9222
  _: 1
@@ -9298,17 +9236,15 @@ const _sfc_main$6 = {};
9298
9236
  const _hoisted_1$4 = {
9299
9237
  class: "alert alert-info alert-sm"
9300
9238
  };
9301
- const _hoisted_2$4 = /*#__PURE__*/ vue.createElementVNode("i", {
9302
- class: "fa fa-info"
9303
- }, null, -1);
9304
- const _hoisted_3$4 = /*#__PURE__*/ vue.createElementVNode("br", null, null, -1);
9305
9239
  function _sfc_render$6(_ctx, _cache) {
9306
- return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$4, [
9307
- _hoisted_2$4,
9240
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$4, _cache[0] || (_cache[0] = [
9241
+ vue.createElementVNode("i", {
9242
+ class: "fa fa-info"
9243
+ }, null, -1),
9308
9244
  vue.createTextVNode(" The analysis is now fully configured and can now be built."),
9309
- _hoisted_3$4,
9245
+ vue.createElementVNode("br", null, null, -1),
9310
9246
  vue.createTextVNode(" Be aware that when you start the building process, you are not longer able to modify the configuration. ")
9311
- ]);
9247
+ ]));
9312
9248
  }
9313
9249
  var FAnalysisWizardStepFinal = /*#__PURE__*/ _export_sfc(_sfc_main$6, [
9314
9250
  [
@@ -9499,21 +9435,10 @@ var _sfc_main$5 = vue.defineComponent({
9499
9435
  }
9500
9436
  });
9501
9437
 
9502
- const _hoisted_1$3 = /* @__PURE__ */ vue.createElementVNode("h4", {
9503
- class: "wizard-title"
9504
- }, [
9505
- /* @__PURE__ */ vue.createElementVNode("i", {
9506
- class: "fa fa-hat-wizard"
9507
- }),
9508
- /* @__PURE__ */ vue.createTextVNode(" Wizard ")
9509
- ], -1);
9510
- const _hoisted_2$3 = /* @__PURE__ */ vue.createElementVNode("p", {
9511
- class: "category"
9512
- }, " Configure your analysis step by step ", -1);
9513
- const _hoisted_3$3 = {
9438
+ const _hoisted_1$3 = {
9514
9439
  class: "wizard-footer-left"
9515
9440
  };
9516
- const _hoisted_4$3 = {
9441
+ const _hoisted_2$3 = {
9517
9442
  class: "wizard-footer-right"
9518
9443
  };
9519
9444
  function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
@@ -9533,36 +9458,45 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
9533
9458
  onOnComplete: _ctx.handleWizardFinishedEvent,
9534
9459
  onOnError: _ctx.handleWizardErrorEvent
9535
9460
  }, {
9536
- title: vue.withCtx(()=>[
9537
- _hoisted_1$3,
9538
- _hoisted_2$3
9539
- ]),
9461
+ title: vue.withCtx(()=>_cache[0] || (_cache[0] = [
9462
+ vue.createElementVNode("h4", {
9463
+ class: "wizard-title"
9464
+ }, [
9465
+ vue.createElementVNode("i", {
9466
+ class: "fa fa-hat-wizard"
9467
+ }),
9468
+ vue.createTextVNode(" Wizard ")
9469
+ ], -1),
9470
+ vue.createElementVNode("p", {
9471
+ class: "category"
9472
+ }, " Configure your analysis step by step ", -1)
9473
+ ])),
9540
9474
  footer: vue.withCtx((props)=>[
9541
- vue.createElementVNode("div", _hoisted_3$3, [
9475
+ vue.createElementVNode("div", _hoisted_1$3, [
9542
9476
  props.activeTabIndex > 0 && !props.isLastStep ? (vue.openBlock(), vue.createBlock(_component_WizardButton, {
9543
9477
  key: 0,
9544
9478
  style: vue.normalizeStyle(props.fillButtonStyle),
9545
9479
  onClick: _ctx.prevWizardStep
9546
9480
  }, {
9547
- default: vue.withCtx(()=>[
9481
+ default: vue.withCtx(()=>_cache[1] || (_cache[1] = [
9548
9482
  vue.createTextVNode(" Back ")
9549
- ]),
9483
+ ])),
9550
9484
  _: 2
9551
9485
  }, 1032, [
9552
9486
  "style",
9553
9487
  "onClick"
9554
9488
  ])) : vue.createCommentVNode("", true)
9555
9489
  ]),
9556
- vue.createElementVNode("div", _hoisted_4$3, [
9490
+ vue.createElementVNode("div", _hoisted_2$3, [
9557
9491
  !props.isLastStep ? (vue.openBlock(), vue.createBlock(_component_WizardButton, {
9558
9492
  key: 0,
9559
9493
  class: "wizard-footer-right",
9560
9494
  style: vue.normalizeStyle(props.fillButtonStyle),
9561
9495
  onClick: _ctx.nextWizardStep
9562
9496
  }, {
9563
- default: vue.withCtx(()=>[
9497
+ default: vue.withCtx(()=>_cache[2] || (_cache[2] = [
9564
9498
  vue.createTextVNode(" Next ")
9565
- ]),
9499
+ ])),
9566
9500
  _: 2
9567
9501
  }, 1032, [
9568
9502
  "style",
@@ -9573,9 +9507,9 @@ function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) {
9573
9507
  style: vue.normalizeStyle(props.fillButtonStyle),
9574
9508
  onClick: _ctx.handleWizardFinishedEvent
9575
9509
  }, {
9576
- default: vue.withCtx(()=>[
9510
+ default: vue.withCtx(()=>_cache[3] || (_cache[3] = [
9577
9511
  vue.createTextVNode(" Finish ")
9578
- ]),
9512
+ ])),
9579
9513
  _: 2
9580
9514
  }, 1032, [
9581
9515
  "style",
@@ -9727,23 +9661,18 @@ const _hoisted_1$2 = {
9727
9661
  const _hoisted_2$2 = {
9728
9662
  class: "col"
9729
9663
  };
9730
- const _hoisted_3$2 = /* @__PURE__ */ vue.createElementVNode("hr", null, null, -1);
9731
- const _hoisted_4$2 = [
9664
+ const _hoisted_3$1 = [
9732
9665
  "disabled"
9733
9666
  ];
9734
- const _hoisted_5$1 = /* @__PURE__ */ vue.createElementVNode("i", {
9735
- class: "fa fa-plus"
9736
- }, null, -1);
9737
- const _hoisted_6$1 = {
9667
+ const _hoisted_4$1 = {
9738
9668
  key: 0,
9739
9669
  class: "col"
9740
9670
  };
9741
- const _hoisted_7$1 = /* @__PURE__ */ vue.createElementVNode("label", null, "Projects", -1);
9742
- const _hoisted_8$1 = [
9671
+ const _hoisted_5$1 = [
9743
9672
  "disabled",
9744
9673
  "onClick"
9745
9674
  ];
9746
- const _hoisted_9$1 = {
9675
+ const _hoisted_6$1 = {
9747
9676
  key: 0,
9748
9677
  class: "alert alert-sm alert-warning"
9749
9678
  };
@@ -9769,9 +9698,9 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
9769
9698
  "validation-messages": props.data,
9770
9699
  "validation-severity": props.severity
9771
9700
  }, {
9772
- label: vue.withCtx(()=>[
9701
+ label: vue.withCtx(()=>_cache[4] || (_cache[4] = [
9773
9702
  vue.createTextVNode(" Name ")
9774
- ]),
9703
+ ])),
9775
9704
  default: vue.withCtx(()=>[
9776
9705
  vue.createVNode(_component_VCFormInput, {
9777
9706
  modelValue: _ctx.v$.name.$model,
@@ -9790,7 +9719,7 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
9790
9719
  }, 8, [
9791
9720
  "validation"
9792
9721
  ]),
9793
- _hoisted_3$2,
9722
+ _cache[7] || (_cache[7] = vue.createElementVNode("hr", null, null, -1)),
9794
9723
  vue.createVNode(_component_IVuelidate, {
9795
9724
  validation: _ctx.v$.description
9796
9725
  }, {
@@ -9799,9 +9728,9 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
9799
9728
  "validation-messages": props.data,
9800
9729
  "validation-severity": props.severity
9801
9730
  }, {
9802
- label: vue.withCtx(()=>[
9731
+ label: vue.withCtx(()=>_cache[5] || (_cache[5] = [
9803
9732
  vue.createTextVNode(" Description ")
9804
- ]),
9733
+ ])),
9805
9734
  default: vue.withCtx(()=>[
9806
9735
  vue.createVNode(_component_VCFormTextarea, {
9807
9736
  modelValue: _ctx.v$.description.$model,
@@ -9829,18 +9758,20 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
9829
9758
  onClick: _cache[2] || (_cache[2] = vue.withModifiers((...args)=>_ctx.add && _ctx.add(...args), [
9830
9759
  "prevent"
9831
9760
  ]))
9832
- }, [
9833
- _hoisted_5$1,
9761
+ }, _cache[6] || (_cache[6] = [
9762
+ vue.createElementVNode("i", {
9763
+ class: "fa fa-plus"
9764
+ }, null, -1),
9834
9765
  vue.createTextVNode(" create ")
9835
- ], 8, _hoisted_4$2)
9766
+ ]), 8, _hoisted_3$1)
9836
9767
  ])
9837
9768
  ]),
9838
- !_ctx.projectId ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$1, [
9769
+ !_ctx.projectId ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$1, [
9839
9770
  vue.createVNode(_component_FProjects, {
9840
9771
  query: _ctx.proposalQuery
9841
9772
  }, {
9842
9773
  header: vue.withCtx((props)=>[
9843
- _hoisted_7$1,
9774
+ _cache[8] || (_cache[8] = vue.createElementVNode("label", null, "Projects", -1)),
9844
9775
  vue.createVNode(_component_FSearch, {
9845
9776
  load: props.load,
9846
9777
  meta: props.meta
@@ -9870,13 +9801,13 @@ function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
9870
9801
  "fa fa-minus": _ctx.form.project_id === props.data.id
9871
9802
  })
9872
9803
  }, null, 2)
9873
- ], 10, _hoisted_8$1)
9804
+ ], 10, _hoisted_5$1)
9874
9805
  ]),
9875
9806
  _: 1
9876
9807
  }, 8, [
9877
9808
  "query"
9878
9809
  ]),
9879
- !_ctx.v$.project_id.required && !_ctx.v$.project_id.$model ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_9$1, " Choose a project as base of your analysis ")) : vue.createCommentVNode("", true)
9810
+ !_ctx.v$.project_id.required && !_ctx.v$.project_id.$model ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_6$1, " Choose a project as base of your analysis ")) : vue.createCommentVNode("", true)
9880
9811
  ])) : vue.createCommentVNode("", true)
9881
9812
  ])
9882
9813
  ], 32);
@@ -9915,7 +9846,7 @@ const FAnalysisCommand = vue.defineComponent({
9915
9846
  },
9916
9847
  elementType: {
9917
9848
  type: String,
9918
- default: exports.ActionCommandElementType.BUTTON
9849
+ default: ActionCommandElementType.BUTTON
9919
9850
  },
9920
9851
  withIcon: {
9921
9852
  type: Boolean,
@@ -9946,7 +9877,9 @@ const FAnalysisCommand = vue.defineComponent({
9946
9877
  }
9947
9878
  }
9948
9879
  });
9949
- const isAllowed = clientWebKit.useAbilityCheck(PermissionName.ANALYSIS_UPDATE);
9880
+ const isAllowed = clientWebKit.usePermissionCheck({
9881
+ name: PermissionName.ANALYSIS_UPDATE
9882
+ });
9950
9883
  const isHidden = vue.computed(()=>{
9951
9884
  if (props.command === coreKit.AnalysisAPICommand.CONFIGURATION_LOCK) {
9952
9885
  return entity.value.configuration_locked;
@@ -10207,21 +10140,11 @@ var _sfc_main$1 = vue.defineComponent({
10207
10140
  }
10208
10141
  });
10209
10142
 
10210
- const _hoisted_1$1 = /* @__PURE__ */ vue.createElementVNode("div", {
10211
- class: "me-1"
10212
- }, [
10213
- /* @__PURE__ */ vue.createElementVNode("strong", null, "1. Configuration")
10214
- ], -1);
10215
- const _hoisted_2$1 = {
10143
+ const _hoisted_1$1 = {
10216
10144
  key: 0,
10217
10145
  class: "ms-auto"
10218
10146
  };
10219
- const _hoisted_3$1 = /* @__PURE__ */ vue.createElementVNode("div", {
10220
- class: "me-1"
10221
- }, [
10222
- /* @__PURE__ */ vue.createElementVNode("strong", null, "2. Build")
10223
- ], -1);
10224
- const _hoisted_4$1 = {
10147
+ const _hoisted_2$1 = {
10225
10148
  key: 0,
10226
10149
  class: "ms-auto flex-row d-flex justify-between gap-1"
10227
10150
  };
@@ -10250,7 +10173,11 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
10250
10173
  "flex-basis": "0"
10251
10174
  }
10252
10175
  }, [
10253
- _hoisted_1$1,
10176
+ _cache[5] || (_cache[5] = vue.createElementVNode("div", {
10177
+ class: "me-1"
10178
+ }, [
10179
+ vue.createElementVNode("strong", null, "1. Configuration")
10180
+ ], -1)),
10254
10181
  vue.createElementVNode("div", null, [
10255
10182
  vue.createVNode(_component_FAnalysisConfigurationStatusText, {
10256
10183
  locked: _ctx.entity.configuration_locked
@@ -10258,7 +10185,7 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
10258
10185
  "locked"
10259
10186
  ])
10260
10187
  ]),
10261
- _ctx.withCommand ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$1, [
10188
+ _ctx.withCommand ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_1$1, [
10262
10189
  vue.createVNode(_component_FAnalysisCommand, {
10263
10190
  command: _ctx.trainCommand.CONFIGURATION_LOCK,
10264
10191
  "with-icon": true,
@@ -10299,7 +10226,11 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
10299
10226
  "flex-basis": "0"
10300
10227
  }
10301
10228
  }, [
10302
- _hoisted_3$1,
10229
+ _cache[6] || (_cache[6] = vue.createElementVNode("div", {
10230
+ class: "me-1"
10231
+ }, [
10232
+ vue.createElementVNode("strong", null, "2. Build")
10233
+ ], -1)),
10303
10234
  vue.createElementVNode("div", null, [
10304
10235
  vue.createVNode(_component_FAnalysisBuildStatusText, {
10305
10236
  status: _ctx.entity.build_status
@@ -10307,7 +10238,7 @@ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
10307
10238
  "status"
10308
10239
  ])
10309
10240
  ]),
10310
- _ctx.withCommand ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_4$1, [
10241
+ _ctx.withCommand ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2$1, [
10311
10242
  vue.createElementVNode("div", null, [
10312
10243
  vue.createVNode(_component_FAnalysisCommand, {
10313
10244
  command: _ctx.trainCommand.BUILD_START,
@@ -10395,7 +10326,9 @@ var _sfc_main = vue.defineComponent({
10395
10326
  const toggleView = ()=>{
10396
10327
  extendedView.value = !extendedView.value;
10397
10328
  };
10398
- const canDelete = clientWebKit.useAbilityCheck(PermissionName.ANALYSIS_DELETE);
10329
+ const canDelete = clientWebKit.usePermissionCheck({
10330
+ name: PermissionName.ANALYSIS_DELETE
10331
+ });
10399
10332
  const handleDeleted = (data)=>{
10400
10333
  emit('deleted', data);
10401
10334
  };
@@ -10429,34 +10362,22 @@ const _hoisted_2 = {
10429
10362
  const _hoisted_3 = {
10430
10363
  class: "me-1"
10431
10364
  };
10432
- const _hoisted_4 = /* @__PURE__ */ vue.createElementVNode("i", {
10433
- class: "fas fa-microscope me-1"
10434
- }, null, -1);
10435
- const _hoisted_5 = {
10365
+ const _hoisted_4 = {
10436
10366
  key: 0,
10437
10367
  class: "text-muted ms-1"
10438
10368
  };
10439
- const _hoisted_6 = {
10369
+ const _hoisted_5 = {
10440
10370
  class: "ms-auto"
10441
10371
  };
10442
- const _hoisted_7 = /* @__PURE__ */ vue.createElementVNode("i", {
10443
- class: "fa fa-bars"
10444
- }, null, -1);
10445
- const _hoisted_8 = {
10372
+ const _hoisted_6 = {
10446
10373
  class: "d-flex flex-row"
10447
10374
  };
10448
- const _hoisted_9 = {
10375
+ const _hoisted_7 = {
10449
10376
  class: ""
10450
10377
  };
10451
- const _hoisted_10 = /* @__PURE__ */ vue.createElementVNode("span", {
10452
- class: "text-muted"
10453
- }, " created ", -1);
10454
- const _hoisted_11 = {
10378
+ const _hoisted_8 = {
10455
10379
  class: "ms-auto"
10456
10380
  };
10457
- const _hoisted_12 = /* @__PURE__ */ vue.createElementVNode("span", {
10458
- class: "text-muted"
10459
- }, " updated ", -1);
10460
10381
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
10461
10382
  const _component_VCLink = vue.resolveComponent("VCLink");
10462
10383
  const _component_FAnalysisName = vue.resolveComponent("FAnalysisName");
@@ -10475,7 +10396,9 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
10475
10396
  onUpdated: _ctx.handleUpdated
10476
10397
  }, {
10477
10398
  default: vue.withCtx((props)=>[
10478
- _hoisted_4,
10399
+ _cache[1] || (_cache[1] = vue.createElementVNode("i", {
10400
+ class: "fas fa-microscope me-1"
10401
+ }, null, -1)),
10479
10402
  vue.createVNode(_component_VCLink, {
10480
10403
  to: "/analyses/" + props.entityId
10481
10404
  }, {
@@ -10486,7 +10409,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
10486
10409
  }, 1032, [
10487
10410
  "to"
10488
10411
  ]),
10489
- props.entityName ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_5, vue.toDisplayString(props.entityId), 1)) : vue.createCommentVNode("", true)
10412
+ props.entityName ? (vue.openBlock(), vue.createElementBlock("span", _hoisted_4, vue.toDisplayString(props.entityId), 1)) : vue.createCommentVNode("", true)
10490
10413
  ]),
10491
10414
  _: 1
10492
10415
  }, 8, [
@@ -10495,7 +10418,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
10495
10418
  "onUpdated"
10496
10419
  ])
10497
10420
  ]),
10498
- vue.createElementVNode("div", _hoisted_6, [
10421
+ vue.createElementVNode("div", _hoisted_5, [
10499
10422
  vue.renderSlot(_ctx.$slots, "itemActions", {
10500
10423
  data: _ctx.entity
10501
10424
  }, ()=>[
@@ -10517,9 +10440,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
10517
10440
  disabled: _ctx.busy,
10518
10441
  class: "btn btn-xs btn-dark ms-1"
10519
10442
  }, {
10520
- default: vue.withCtx(()=>[
10521
- _hoisted_7
10522
- ]),
10443
+ default: vue.withCtx(()=>_cache[2] || (_cache[2] = [
10444
+ vue.createElementVNode("i", {
10445
+ class: "fa fa-bars"
10446
+ }, null, -1)
10447
+ ])),
10523
10448
  _: 1
10524
10449
  }, 8, [
10525
10450
  "to",
@@ -10566,10 +10491,12 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
10566
10491
  }, null, 8, [
10567
10492
  "entity"
10568
10493
  ]),
10569
- vue.createElementVNode("div", _hoisted_8, [
10570
- vue.createElementVNode("div", _hoisted_9, [
10494
+ vue.createElementVNode("div", _hoisted_6, [
10495
+ vue.createElementVNode("div", _hoisted_7, [
10571
10496
  vue.createElementVNode("small", null, [
10572
- _hoisted_10,
10497
+ _cache[3] || (_cache[3] = vue.createElementVNode("span", {
10498
+ class: "text-muted"
10499
+ }, " created ", -1)),
10573
10500
  vue.createVNode(_component_VCTimeago, {
10574
10501
  datetime: _ctx.entity.created_at
10575
10502
  }, null, 8, [
@@ -10577,9 +10504,11 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
10577
10504
  ])
10578
10505
  ])
10579
10506
  ]),
10580
- vue.createElementVNode("div", _hoisted_11, [
10507
+ vue.createElementVNode("div", _hoisted_8, [
10581
10508
  vue.createElementVNode("small", null, [
10582
- _hoisted_12,
10509
+ _cache[4] || (_cache[4] = vue.createElementVNode("span", {
10510
+ class: "text-muted"
10511
+ }, " updated ", -1)),
10583
10512
  vue.createVNode(_component_VCTimeago, {
10584
10513
  datetime: _ctx.entity.updated_at
10585
10514
  }, null, 8, [
@@ -10691,7 +10620,7 @@ const FAnalysisBucketFileDownload = vue.defineComponent({
10691
10620
  },
10692
10621
  elementType: {
10693
10622
  type: String,
10694
- default: exports.ActionCommandElementType.BUTTON
10623
+ default: ActionCommandElementType.BUTTON
10695
10624
  },
10696
10625
  withIcon: {
10697
10626
  type: Boolean,
@@ -10907,6 +10836,7 @@ var FAnalysisLogs = vue.defineComponent({
10907
10836
 
10908
10837
  var components = /*#__PURE__*/Object.freeze({
10909
10838
  __proto__: null,
10839
+ ElementType: ElementType,
10910
10840
  FAnalyses: FAnalyses,
10911
10841
  FAnalysis: TrainEntity,
10912
10842
  FAnalysisBasicForm: FAnalysisBasicForm,
@@ -11001,6 +10931,9 @@ var index = {
11001
10931
  install
11002
10932
  };
11003
10933
 
10934
+ exports.ActionCommandElementType = ActionCommandElementType;
10935
+ exports.ElementType = ElementType;
10936
+ exports.EntityListSlotName = EntityListSlotName;
11004
10937
  exports.EntityManagerError = EntityManagerError;
11005
10938
  exports.FAnalyses = FAnalyses;
11006
10939
  exports.FAnalysis = TrainEntity;