pyegeria 5.3.4.10__py3-none-any.whl → 5.3.4.12__py3-none-any.whl
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.
- pyegeria/commands/cli/egeria.py +1 -1
- pyegeria/commands/cli/egeria_cat.py +1 -1
- pyegeria/mermaid_utilities.py +298 -128
- pyegeria/test_m.html +229 -0
- {pyegeria-5.3.4.10.dist-info → pyegeria-5.3.4.12.dist-info}/METADATA +1 -1
- {pyegeria-5.3.4.10.dist-info → pyegeria-5.3.4.12.dist-info}/RECORD +11 -10
- {pyegeria-5.3.4.10.dist-info → pyegeria-5.3.4.12.dist-info}/entry_points.txt +1 -1
- /pyegeria/commands/cat/{list_servers_deployed_imp.py → list_deployed_servers.py} +0 -0
- /pyegeria/{test_m.py → m_test.py} +0 -0
- {pyegeria-5.3.4.10.dist-info → pyegeria-5.3.4.12.dist-info}/LICENSE +0 -0
- {pyegeria-5.3.4.10.dist-info → pyegeria-5.3.4.12.dist-info}/WHEEL +0 -0
pyegeria/commands/cli/egeria.py
CHANGED
@@ -38,7 +38,7 @@ from pyegeria.commands.cat.list_deployed_database_schemas import (
|
|
38
38
|
from pyegeria.commands.cat.list_deployed_databases import list_deployed_databases
|
39
39
|
from pyegeria.commands.cat.list_glossaries import display_glossaries
|
40
40
|
from pyegeria.commands.cat.list_projects import display_project_list
|
41
|
-
from pyegeria.commands.cat.
|
41
|
+
from pyegeria.commands.cat.list_deployed_servers import display_servers_by_dep_imp
|
42
42
|
from pyegeria.commands.cat.list_tech_type_elements import list_tech_elements
|
43
43
|
from pyegeria.commands.cat.list_tech_types import display_tech_types
|
44
44
|
from pyegeria.commands.cat.list_terms import display_glossary_terms
|
@@ -37,7 +37,7 @@ from pyegeria.commands.cat.list_deployed_database_schemas import (
|
|
37
37
|
from pyegeria.commands.cat.list_deployed_databases import list_deployed_databases
|
38
38
|
from pyegeria.commands.cat.list_glossaries import display_glossaries
|
39
39
|
from pyegeria.commands.cat.list_projects import display_project_list
|
40
|
-
from pyegeria.commands.cat.
|
40
|
+
from pyegeria.commands.cat.list_deployed_servers import display_servers_by_dep_imp
|
41
41
|
from pyegeria.commands.cat.list_tech_type_elements import list_tech_elements
|
42
42
|
from pyegeria.commands.cat.list_tech_types import display_tech_types
|
43
43
|
from pyegeria.commands.cat.list_terms import display_glossary_terms
|
pyegeria/mermaid_utilities.py
CHANGED
@@ -68,16 +68,20 @@ def render_mermaid(mermaid_code):
|
|
68
68
|
|
69
69
|
def parse_mermaid_code(mermaid_code):
|
70
70
|
parts = mermaid_code.split("---", maxsplit=3)
|
71
|
+
guid = None
|
71
72
|
if len(parts) == 3:
|
72
73
|
full_title = parts[1].strip()
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
74
|
+
if "[" in full_title:
|
75
|
+
title_l = full_title.split("[")[0]
|
76
|
+
title = title_l.replace("title: ", "")
|
77
|
+
guid = full_title.split("[")[1].split("]")[0]
|
78
|
+
else:
|
79
|
+
title = full_title.replace("title: ", "")
|
77
80
|
mermaid_code = parts[2].strip()
|
78
81
|
else:
|
79
|
-
title =
|
80
|
-
|
82
|
+
title = None
|
83
|
+
if guid is None:
|
84
|
+
guid = str(uuid.uuid4())[:8]
|
81
85
|
return title, guid, mermaid_code
|
82
86
|
|
83
87
|
|
@@ -223,136 +227,302 @@ def construct_mermaid_html(mermaid_str: str) -> str:
|
|
223
227
|
escaped_header = html.escape(title_label) if title_label else "" # Sanitize the header safely
|
224
228
|
escaped_mermaid_code = html.escape(mermaid_code)
|
225
229
|
|
226
|
-
header_html = f"""
|
227
|
-
<h3 id="{graph_id}-heading" style="margin: 20px 0; font-size: 1.5em; text-align: center;">
|
228
|
-
{escaped_header}
|
229
|
-
</h3>
|
230
|
-
<p id="{graph_id}-subheading" style="margin: 0; padding: 5px; font-size: 1em; text-align: center; color: gray; flex: 0 0 auto;">
|
231
|
-
GUID: {guid}
|
232
|
-
</p>
|
233
|
-
""" if title_label else ""
|
234
|
-
|
235
230
|
html_content = f"""
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
231
|
+
<style>
|
232
|
+
/* Style for the diagram container */
|
233
|
+
.diagram-container {{
|
234
|
+
position: relative;
|
235
|
+
width: 90%; /* Adjust the diagram container width */
|
236
|
+
height: 500px; /* Set a fixed height for the container */
|
237
|
+
margin: 0 auto;
|
238
|
+
border: 1px solid #ccc; /* Optional border for visualization */
|
239
|
+
overflow: hidden; /* Prevent content overflow outside the container */
|
240
|
+
}}
|
241
|
+
|
242
|
+
/* Style for zoom controls */
|
243
|
+
.svg-pan-zoom_controls {{
|
244
|
+
position: absolute;
|
245
|
+
top: 10px;
|
246
|
+
right: 10px;
|
247
|
+
display: flex;
|
248
|
+
flex-direction: column;
|
249
|
+
gap: 5px;
|
250
|
+
}}
|
251
|
+
.svg-pan-zoom_controls button {{
|
252
|
+
background-color: #007bff;
|
253
|
+
color: white;
|
254
|
+
border: none;
|
255
|
+
padding: 5px 10px;
|
256
|
+
border-radius: 3px;
|
257
|
+
cursor: pointer;
|
258
|
+
font-size: 14px;
|
259
|
+
}}
|
260
|
+
.svg-pan-zoom_controls button:hover {{
|
261
|
+
background-color: #0056b3;
|
262
|
+
}}
|
263
|
+
</style>
|
264
|
+
|
265
|
+
<script src="https://cdn.jsdelivr.net/npm/svg-pan-zoom@3.6.1/dist/svg-pan-zoom.min.js"></script>
|
266
|
+
<script>
|
267
|
+
document.addEventListener("DOMContentLoaded", () => {{
|
268
|
+
// Define graph ID dynamically passed via Python
|
269
|
+
const graph_id = "{graph_id}";
|
270
|
+
|
271
|
+
// Function to load external scripts dynamically
|
272
|
+
function loadScript(url, callback) {{
|
273
|
+
const script = document.createElement('script');
|
274
|
+
script.src = url;
|
275
|
+
script.async = true;
|
276
|
+
script.onload = callback;
|
277
|
+
script.onerror = () => console.error("Error loading script:", url);
|
278
|
+
document.head.appendChild(script);
|
275
279
|
}}
|
276
|
-
.mermaid {{
|
277
|
-
margin: 0;
|
278
|
-
padding: 0;
|
279
|
-
}}
|
280
|
-
</style>
|
281
|
-
|
282
|
-
<script>
|
283
|
-
(function() {{
|
284
|
-
const graphId = "{graph_id}"; // Pass the graph ID
|
285
|
-
|
286
|
-
function loadScript(url, callback) {{
|
287
|
-
const script = document.createElement('script');
|
288
|
-
script.src = url;
|
289
|
-
script.onload = callback;
|
290
|
-
document.head.appendChild(script);
|
291
|
-
}}
|
292
|
-
|
293
|
-
// Initialize Mermaid and render the diagram
|
294
|
-
function initializeMermaid() {{
|
295
|
-
mermaid.initialize({{startOnLoad: false}});
|
296
|
-
mermaid.init(undefined, "#" + graphId);
|
297
|
-
|
298
|
-
setTimeout(() => {{
|
299
|
-
const container = document.getElementById(graphId);
|
300
|
-
if (!container) {{
|
301
|
-
console.error("Container not found for graph:", graphId);
|
302
|
-
return;
|
303
|
-
}}
|
304
|
-
|
305
|
-
const svg = container.querySelector("svg");
|
306
|
-
if (!svg) {{
|
307
|
-
console.error("SVG not rendered by Mermaid.");
|
308
|
-
return;
|
309
|
-
}}
|
310
|
-
|
311
|
-
console.log("SVG rendered. Applying pan & zoom.");
|
312
|
-
|
313
|
-
// Adjust to container size
|
314
|
-
const containerElement = document.getElementById("{graph_id}-container");
|
315
|
-
svg.setAttribute("width", containerElement.offsetWidth);
|
316
|
-
svg.setAttribute("height", containerElement.offsetHeight);
|
317
|
-
|
318
|
-
// Add pan/zoom functionality
|
319
|
-
loadScript("https://cdn.jsdelivr.net/npm/svg-pan-zoom/dist/svg-pan-zoom.min.js", () => {{
|
320
|
-
const panZoom = svgPanZoom(svg, {{
|
321
|
-
zoomEnabled: true,
|
322
|
-
controlIconsEnabled: true,
|
323
|
-
fit: true,
|
324
|
-
center: true,
|
325
|
-
minZoom: 0.5,
|
326
|
-
maxZoom: 10
|
327
|
-
}});
|
328
|
-
|
329
|
-
// Reinitialize pan-zoom on window resize
|
330
|
-
function onResize() {{
|
331
|
-
panZoom.resize();
|
332
|
-
panZoom.fit();
|
333
|
-
panZoom.center();
|
334
|
-
}}
|
335
|
-
window.addEventListener('resize', onResize);
|
336
|
-
|
337
|
-
console.log("Pan & zoom initialized successfully.");
|
338
|
-
}});
|
339
|
-
}}, 500);
|
340
|
-
}}
|
341
280
|
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
281
|
+
// Initialize Mermaid
|
282
|
+
function initializeMermaid(graph_id) {{
|
283
|
+
// Look for the container
|
284
|
+
const containerElement = document.getElementById(`${{graph_id}}-container`);
|
285
|
+
if (!containerElement) {{
|
286
|
+
console.error(`Container with ID "${{graph_id}}-container" not found.`);
|
287
|
+
return;
|
347
288
|
}}
|
348
|
-
}})();
|
349
|
-
</script>
|
350
289
|
|
351
|
-
|
290
|
+
// Configure Mermaid
|
291
|
+
mermaid.initialize({{ startOnLoad: false, logLevel: "debug" }});
|
292
|
+
mermaid.init(undefined, `#${{graph_id}}`);
|
293
|
+
|
294
|
+
setTimeout(() => {{
|
295
|
+
const svg = containerElement.querySelector("svg");
|
296
|
+
|
297
|
+
// Ensure SVG exists
|
298
|
+
if (!svg) {{
|
299
|
+
console.error(`SVG not rendered for ID "${{graph_id}}".`);
|
300
|
+
return;
|
301
|
+
}}
|
302
|
+
|
303
|
+
// Set initial size for SVG
|
304
|
+
svg.setAttribute("width", "100%");
|
305
|
+
svg.setAttribute("height", "100%");
|
306
|
+
|
307
|
+
// Ensure the container fits the diagram properly
|
308
|
+
containerElement.style.overflow = "hidden";
|
309
|
+
|
310
|
+
// Initialize Pan-Zoom
|
311
|
+
const panZoom = svgPanZoom(svg, {{
|
312
|
+
zoomEnabled: true,
|
313
|
+
controlIconsEnabled: false, // Disable default controls
|
314
|
+
fit: true,
|
315
|
+
center: true,
|
316
|
+
minZoom: 0.5,
|
317
|
+
maxZoom: 10,
|
318
|
+
contain: true // Ensure diagram stays within view
|
319
|
+
}});
|
320
|
+
|
321
|
+
// Add custom controls
|
322
|
+
const controlsContainer = document.createElement("div");
|
323
|
+
controlsContainer.className = "svg-pan-zoom_controls";
|
324
|
+
controlsContainer.innerHTML = `
|
325
|
+
<button id="${{graph_id}}-zoom-in">+</button>
|
326
|
+
<button id="${{graph_id}}-zoom-out">-</button>
|
327
|
+
<button id="${{graph_id}}-reset">Reset</button>
|
328
|
+
`;
|
329
|
+
containerElement.appendChild(controlsContainer);
|
330
|
+
|
331
|
+
// Handle controls
|
332
|
+
document.getElementById(`${{graph_id}}-zoom-in`).addEventListener("click", () => panZoom.zoomIn());
|
333
|
+
document.getElementById(`${{graph_id}}-zoom-out`).addEventListener("click", () => panZoom.zoomOut());
|
334
|
+
document.getElementById(`${{graph_id}}-reset`).addEventListener("click", () => {{
|
335
|
+
panZoom.resetZoom();
|
336
|
+
panZoom.center();
|
337
|
+
}});
|
338
|
+
}}, 500); // Delay to ensure Mermaid finishes rendering
|
339
|
+
}}
|
352
340
|
|
341
|
+
// Load Mermaid.js externally or initialize
|
342
|
+
if (typeof mermaid === "undefined") {{
|
343
|
+
loadScript("https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js", () => {{
|
344
|
+
console.log("Mermaid.js loaded successfully");
|
345
|
+
initializeMermaid(graph_id);
|
346
|
+
}});
|
347
|
+
}} else {{
|
348
|
+
initializeMermaid(graph_id);
|
349
|
+
}}
|
350
|
+
}});
|
351
|
+
</script>
|
352
|
+
|
353
|
+
<div id="{graph_id}-container" class="diagram-container">
|
354
|
+
<!-- Mermaid diagram will be dynamically rendered here -->
|
355
|
+
<div id="{graph_id}" class="mermaid">
|
356
|
+
{mermaid_code}
|
357
|
+
</div>
|
358
|
+
</div>
|
359
|
+
"""
|
353
360
|
|
354
361
|
return html_content
|
355
|
-
|
362
|
+
# This one almost works - no controls and diagram too small
|
363
|
+
# html_content = f"""
|
364
|
+
# <!DOCTYPE html>
|
365
|
+
# <html>
|
366
|
+
# <head>
|
367
|
+
# <style>
|
368
|
+
# /* Set consistent sizing and prevent shrinking for the container and parents */
|
369
|
+
# html, body, #{graph_id}-wrapper {{
|
370
|
+
# margin: 0;
|
371
|
+
# padding: 0;
|
372
|
+
# height: 100%; /* Ensure the entire root hierarchy respects 100% height */
|
373
|
+
# width: 100%;
|
374
|
+
# }}
|
375
|
+
#
|
376
|
+
# /* Ensure diagram container maintains full height and prevents overflow */
|
377
|
+
# #{graph_id}-container {{
|
378
|
+
# position: relative;
|
379
|
+
# width: 100%;
|
380
|
+
# height: 100%;
|
381
|
+
# overflow: hidden; /* Prevent content from breaking layout */
|
382
|
+
# display: flex;
|
383
|
+
# align-items: center; /* Centers the diagram vertically */
|
384
|
+
# justify-content: center; /* Centers the diagram horizontally */
|
385
|
+
# }}
|
386
|
+
#
|
387
|
+
# /* Ensure SVG always stretches to match container */
|
388
|
+
# #{graph_id} svg {{
|
389
|
+
# width: 100%;
|
390
|
+
# height: 100%;
|
391
|
+
# display: block; /* Avoid unwanted inline space issues */
|
392
|
+
# }}
|
393
|
+
#
|
394
|
+
# /* Optional custom pan/zoom controls (if dynamically added) */
|
395
|
+
# .svg-pan-zoom_controls {{
|
396
|
+
# position: absolute;
|
397
|
+
# bottom: 10px; /* Adjust based on desired placement */
|
398
|
+
# right: 10px;
|
399
|
+
# z-index: 10;
|
400
|
+
# display: flex;
|
401
|
+
# gap: 5px;
|
402
|
+
# }}
|
403
|
+
#
|
404
|
+
# .svg-pan-zoom_controls button {{
|
405
|
+
# border: 1px solid #ccc;
|
406
|
+
# background-color: #fff;
|
407
|
+
# color: #000;
|
408
|
+
# padding: 5px 10px;
|
409
|
+
# cursor: pointer;
|
410
|
+
# font-size: 16px;
|
411
|
+
# }}
|
412
|
+
#
|
413
|
+
# .svg-pan-zoom_controls button:hover {{
|
414
|
+
# background-color: #f0f0f0;
|
415
|
+
# }}
|
416
|
+
# </style>
|
417
|
+
# </head>
|
418
|
+
# <body>
|
419
|
+
# <div id="{graph_id}-wrapper">
|
420
|
+
# <!-- Title/Heading (optional; include as needed) -->
|
421
|
+
# {escaped_header if escaped_header else ""}
|
422
|
+
#
|
423
|
+
# <!-- Mermaid Diagram Container -->
|
424
|
+
# <div id="{graph_id}-container">
|
425
|
+
# <div id="{graph_id}" class="mermaid">
|
426
|
+
# {escaped_mermaid_code}
|
427
|
+
# </div>
|
428
|
+
# </div>
|
429
|
+
# </div>
|
430
|
+
#
|
431
|
+
# <script src="https://cdn.jsdelivr.net/npm/svg-pan-zoom@3.6.1/dist/svg-pan-zoom.min.js"></script>
|
432
|
+
# <script>
|
433
|
+
# document.addEventListener("DOMContentLoaded", () => {{
|
434
|
+
# // Define the graph ID dynamically passed via Python
|
435
|
+
# const graph_id = "{graph_id}";
|
436
|
+
#
|
437
|
+
# // Function to load external scripts dynamically
|
438
|
+
# function loadScript(url, callback) {{
|
439
|
+
# const script = document.createElement('script');
|
440
|
+
# script.src = url;
|
441
|
+
# script.async = true;
|
442
|
+
# script.onload = callback;
|
443
|
+
# script.onerror = () => console.error("Error loading script:", url);
|
444
|
+
# document.head.appendChild(script);
|
445
|
+
# }}
|
446
|
+
#
|
447
|
+
# // Function to initialize Mermaid
|
448
|
+
# function initializeMermaid(graph_id) {{
|
449
|
+
# // Look for the container ID generated dynamically by the template
|
450
|
+
# const containerElement = document.getElementById(`${{graph_id}}-container`);
|
451
|
+
# if (!containerElement) {{
|
452
|
+
# console.error(`Container element with id "${{graph_id}}-container" not found.`);
|
453
|
+
# return;
|
454
|
+
# }}
|
455
|
+
#
|
456
|
+
# // Initialize Mermaid.js with default configuration
|
457
|
+
# mermaid.initialize({{ startOnLoad: false, logLevel: "debug" }});
|
458
|
+
# mermaid.init(undefined, `#${{graph_id}}`); // Initialize element with id matching `graph_id`
|
459
|
+
#
|
460
|
+
# // Add a timeout to ensure the SVG is rendered
|
461
|
+
# setTimeout(() => {{
|
462
|
+
# const svg = containerElement.querySelector("svg");
|
463
|
+
#
|
464
|
+
# // Handle errors if SVG rendering fails
|
465
|
+
# if (!svg) {{
|
466
|
+
# console.error(`SVG not rendered for ID "${{graph_id}}". Check Mermaid syntax or rendering issues.`);
|
467
|
+
# console.log("Container content:", containerElement.innerHTML); // Log the container's content
|
468
|
+
# return;
|
469
|
+
# }}
|
470
|
+
#
|
471
|
+
# // Set SVG attributes for full container fit
|
472
|
+
# svg.setAttribute("width", "100%");
|
473
|
+
# svg.setAttribute("height", "100%");
|
474
|
+
#
|
475
|
+
# // Initialize SVG Pan-Zoom functionality
|
476
|
+
# const panZoom = svgPanZoom(svg, {{
|
477
|
+
# zoomEnabled: true,
|
478
|
+
# controlIconsEnabled: true, // Display default controls if enabled
|
479
|
+
# fit: true, // Fit diagram within the container
|
480
|
+
# center: true, // Center the diagram
|
481
|
+
# minZoom: 0.5, // Prevent too much zooming out
|
482
|
+
# maxZoom: 10, // Prevent extreme zooming in
|
483
|
+
# contain: true // Keep the diagram fully within bounds
|
484
|
+
# }});
|
485
|
+
#
|
486
|
+
# // Optional: Add custom pan/zoom controls dynamically
|
487
|
+
# const controlsContainer = document.createElement("div");
|
488
|
+
# controlsContainer.classList.add("svg-pan-zoom_controls");
|
489
|
+
# controlsContainer.innerHTML = `
|
490
|
+
# <button id="${{graph_id}}-zoom-in">+</button>
|
491
|
+
# <button id="${{graph_id}}-zoom-out">-</button>
|
492
|
+
# <button id="${{graph_id}}-reset">Reset</button>
|
493
|
+
# `;
|
494
|
+
# containerElement.appendChild(controlsContainer);
|
495
|
+
#
|
496
|
+
# // Add event listeners for the custom controls
|
497
|
+
# document.getElementById(`${{graph_id}}-zoom-in`).addEventListener("click", () => panZoom.zoomIn());
|
498
|
+
# document.getElementById(`${{graph_id}}-zoom-out`).addEventListener("click", () => panZoom.zoomOut());
|
499
|
+
# document.getElementById(`${{graph_id}}-reset`).addEventListener("click", () => {{
|
500
|
+
# panZoom.resetZoom();
|
501
|
+
# panZoom.center();
|
502
|
+
# }});
|
503
|
+
# }}, 500); // Short delay to ensure SVG rendering is complete
|
504
|
+
# }}
|
505
|
+
#
|
506
|
+
# // Load Mermaid.js if not already loaded
|
507
|
+
# if (typeof mermaid === "undefined") {{
|
508
|
+
# loadScript("https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js", () => {{
|
509
|
+
# console.log("Mermaid.js loaded successfully");
|
510
|
+
# initializeMermaid(graph_id); // Call initialization after Mermaid.js is loaded
|
511
|
+
# }});
|
512
|
+
# }} else {{
|
513
|
+
# initializeMermaid(graph_id); // If Mermaid.js is already loaded, proceed immediately
|
514
|
+
# }}
|
515
|
+
# }});
|
516
|
+
# </script>
|
517
|
+
#
|
518
|
+
#
|
519
|
+
# </body>
|
520
|
+
# </html>
|
521
|
+
# """
|
522
|
+
|
523
|
+
|
524
|
+
|
525
|
+
# mermaid_html = f"""
|
356
526
|
# <h2 style="text-align: center; color: #007acc; margin-bottom: 16px;">
|
357
527
|
# {escaped_header}
|
358
528
|
# </h2>
|
pyegeria/test_m.html
ADDED
@@ -0,0 +1,229 @@
|
|
1
|
+
|
2
|
+
<style>
|
3
|
+
/* Style for the diagram container */
|
4
|
+
.diagram-container {
|
5
|
+
position: relative;
|
6
|
+
width: 90%; /* Adjust the diagram container width */
|
7
|
+
height: 500px; /* Set a fixed height for the container */
|
8
|
+
margin: 0 auto;
|
9
|
+
border: 1px solid #ccc; /* Optional border for visualization */
|
10
|
+
overflow: hidden; /* Prevent content overflow outside the container */
|
11
|
+
}
|
12
|
+
|
13
|
+
/* Style for zoom controls */
|
14
|
+
.svg-pan-zoom_controls {
|
15
|
+
position: absolute;
|
16
|
+
top: 10px;
|
17
|
+
right: 10px;
|
18
|
+
display: flex;
|
19
|
+
flex-direction: column;
|
20
|
+
gap: 5px;
|
21
|
+
}
|
22
|
+
.svg-pan-zoom_controls button {
|
23
|
+
background-color: #007bff;
|
24
|
+
color: white;
|
25
|
+
border: none;
|
26
|
+
padding: 5px 10px;
|
27
|
+
border-radius: 3px;
|
28
|
+
cursor: pointer;
|
29
|
+
font-size: 14px;
|
30
|
+
}
|
31
|
+
.svg-pan-zoom_controls button:hover {
|
32
|
+
background-color: #0056b3;
|
33
|
+
}
|
34
|
+
</style>
|
35
|
+
|
36
|
+
<script src="https://cdn.jsdelivr.net/npm/svg-pan-zoom@3.6.1/dist/svg-pan-zoom.min.js"></script>
|
37
|
+
<script>
|
38
|
+
document.addEventListener("DOMContentLoaded", () => {
|
39
|
+
// Define graph ID dynamically passed via Python
|
40
|
+
const graph_id = "mermaid-graph-c4f8d707-7c85-4125-b5fd-c3257a2ef2ef";
|
41
|
+
|
42
|
+
// Function to load external scripts dynamically
|
43
|
+
function loadScript(url, callback) {
|
44
|
+
const script = document.createElement('script');
|
45
|
+
script.src = url;
|
46
|
+
script.async = true;
|
47
|
+
script.onload = callback;
|
48
|
+
script.onerror = () => console.error("Error loading script:", url);
|
49
|
+
document.head.appendChild(script);
|
50
|
+
}
|
51
|
+
|
52
|
+
// Initialize Mermaid
|
53
|
+
function initializeMermaid(graph_id) {
|
54
|
+
// Look for the container
|
55
|
+
const containerElement = document.getElementById(`${graph_id}-container`);
|
56
|
+
if (!containerElement) {
|
57
|
+
console.error(`Container with ID "${graph_id}-container" not found.`);
|
58
|
+
return;
|
59
|
+
}
|
60
|
+
|
61
|
+
// Configure Mermaid
|
62
|
+
mermaid.initialize({ startOnLoad: false, logLevel: "debug" });
|
63
|
+
mermaid.init(undefined, `#${graph_id}`);
|
64
|
+
|
65
|
+
setTimeout(() => {
|
66
|
+
const svg = containerElement.querySelector("svg");
|
67
|
+
|
68
|
+
// Ensure SVG exists
|
69
|
+
if (!svg) {
|
70
|
+
console.error(`SVG not rendered for ID "${graph_id}".`);
|
71
|
+
return;
|
72
|
+
}
|
73
|
+
|
74
|
+
// Set initial size for SVG
|
75
|
+
svg.setAttribute("width", "100%");
|
76
|
+
svg.setAttribute("height", "100%");
|
77
|
+
|
78
|
+
// Ensure the container fits the diagram properly
|
79
|
+
containerElement.style.overflow = "hidden";
|
80
|
+
|
81
|
+
// Initialize Pan-Zoom
|
82
|
+
const panZoom = svgPanZoom(svg, {
|
83
|
+
zoomEnabled: true,
|
84
|
+
controlIconsEnabled: false, // Disable default controls
|
85
|
+
fit: true,
|
86
|
+
center: true,
|
87
|
+
minZoom: 0.5,
|
88
|
+
maxZoom: 10,
|
89
|
+
contain: true // Ensure diagram stays within view
|
90
|
+
});
|
91
|
+
|
92
|
+
// Add custom controls
|
93
|
+
const controlsContainer = document.createElement("div");
|
94
|
+
controlsContainer.className = "svg-pan-zoom_controls";
|
95
|
+
controlsContainer.innerHTML = `
|
96
|
+
<button id="${graph_id}-zoom-in">+</button>
|
97
|
+
<button id="${graph_id}-zoom-out">-</button>
|
98
|
+
<button id="${graph_id}-reset">Reset</button>
|
99
|
+
`;
|
100
|
+
containerElement.appendChild(controlsContainer);
|
101
|
+
|
102
|
+
// Handle controls
|
103
|
+
document.getElementById(`${graph_id}-zoom-in`).addEventListener("click", () => panZoom.zoomIn());
|
104
|
+
document.getElementById(`${graph_id}-zoom-out`).addEventListener("click", () => panZoom.zoomOut());
|
105
|
+
document.getElementById(`${graph_id}-reset`).addEventListener("click", () => {
|
106
|
+
panZoom.resetZoom();
|
107
|
+
panZoom.center();
|
108
|
+
});
|
109
|
+
}, 500); // Delay to ensure Mermaid finishes rendering
|
110
|
+
}
|
111
|
+
|
112
|
+
// Load Mermaid.js externally or initialize
|
113
|
+
if (typeof mermaid === "undefined") {
|
114
|
+
loadScript("https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js", () => {
|
115
|
+
console.log("Mermaid.js loaded successfully");
|
116
|
+
initializeMermaid(graph_id);
|
117
|
+
});
|
118
|
+
} else {
|
119
|
+
initializeMermaid(graph_id);
|
120
|
+
}
|
121
|
+
});
|
122
|
+
</script>
|
123
|
+
|
124
|
+
<div id="mermaid-graph-c4f8d707-7c85-4125-b5fd-c3257a2ef2ef-container" class="diagram-container">
|
125
|
+
<!-- Mermaid diagram will be dynamically rendered here -->
|
126
|
+
<div id="mermaid-graph-c4f8d707-7c85-4125-b5fd-c3257a2ef2ef" class="mermaid">
|
127
|
+
flowchart TD
|
128
|
+
%%{init: {"flowchart": {"htmlLabels": false}} }%%
|
129
|
+
|
130
|
+
subgraph c4f8d707-7c85-4125-b5fd-c3257a2ef2ef [Components and Actors]
|
131
|
+
fc2de77f-7320-48ea-8750-d434c6e870db@{ shape: text, label: "*Description*
|
132
|
+
**A description of how a clinical trial is managed in Coco Pharmaceuticals.**"}
|
133
|
+
37b8560d-84d4-434b-9b0d-105420fcc924@{ shape: subproc, label: "*Solution Component*
|
134
|
+
**Certify Hospital**"}
|
135
|
+
f37f3735-28a1-4e03-9ff5-3fe2f137f661@{ shape: trap-t, label: "*Solution Actor Role*
|
136
|
+
**Clinical Trial Manager**"}
|
137
|
+
f37f3735-28a1-4e03-9ff5-3fe2f137f661-->|"Certifier"|37b8560d-84d4-434b-9b0d-105420fcc924
|
138
|
+
72a86eec-9734-4bc0-babb-4fec0aa7c9ff@{ shape: docs, label: "*Solution Component*
|
139
|
+
**Assemble Treatment Assessment Report**"}
|
140
|
+
48bc201e-3d4e-4beb-bdb2-0fd9d134f6d5@{ shape: rect, label: "*Solution Component*
|
141
|
+
**Treatment Efficacy Evidence**"}
|
142
|
+
48bc201e-3d4e-4beb-bdb2-0fd9d134f6d5-->|"Solution Linking Wire"|72a86eec-9734-4bc0-babb-4fec0aa7c9ff
|
143
|
+
f37f3735-28a1-4e03-9ff5-3fe2f137f661-->|"Author"|72a86eec-9734-4bc0-babb-4fec0aa7c9ff
|
144
|
+
b5c8da4c-f925-4cf1-8294-e43cd2c1a584@{ shape: rect, label: "*Solution Component*
|
145
|
+
**Analyse Patient Data**"}
|
146
|
+
b5c8da4c-f925-4cf1-8294-e43cd2c1a584-->|"Solution Linking Wire"|48bc201e-3d4e-4beb-bdb2-0fd9d134f6d5
|
147
|
+
7f5dca65-50b4-4103-9ac7-3a406a09047a@{ shape: subproc, label: "*Solution Component*
|
148
|
+
**Weekly Measurements Onboarding Pipeline**"}
|
149
|
+
07705e15-efff-4f80-8992-f04ac85e0ef1@{ shape: rect, label: "*Solution Component*
|
150
|
+
**Landing Folder Cataloguer**"}
|
151
|
+
07705e15-efff-4f80-8992-f04ac85e0ef1-->|"Solution Linking Wire"|7f5dca65-50b4-4103-9ac7-3a406a09047a
|
152
|
+
f37f3735-28a1-4e03-9ff5-3fe2f137f661-->|"Steward"|7f5dca65-50b4-4103-9ac7-3a406a09047a
|
153
|
+
b0290339-c96c-4b05-904f-12fc98e54e14@{ shape: trap-t, label: "*Solution Actor Role*
|
154
|
+
**Certified Data Engineer**"}
|
155
|
+
b0290339-c96c-4b05-904f-12fc98e54e14-->|"Steward"|7f5dca65-50b4-4103-9ac7-3a406a09047a
|
156
|
+
d48f579f-76d3-4c49-b1b4-575f5645a9d0@{ shape: lin-cyl, label: "*Solution Component*
|
157
|
+
**Treatment Validation Sandbox**"}
|
158
|
+
26c07ca4-3b8e-484b-812b-36c1ace4b275@{ shape: rect, label: "*Solution Component*
|
159
|
+
**Populate Sandbox**"}
|
160
|
+
26c07ca4-3b8e-484b-812b-36c1ace4b275-->|"Solution Linking Wire"|d48f579f-76d3-4c49-b1b4-575f5645a9d0
|
161
|
+
ee2bb773-e630-4cf9-bdf1-7c2dd64fe4ec@{ shape: processes, label: "*Solution Component*
|
162
|
+
**Hospital Processes**"}
|
163
|
+
a8bd84ca-0aae-4534-b0e8-87e8659467a6@{ shape: trap-t, label: "*Solution Actor Role*
|
164
|
+
**Clinical Trial Participating Hospital Coordinator**"}
|
165
|
+
a8bd84ca-0aae-4534-b0e8-87e8659467a6-->|"Coordinator on behalf of hospital"|ee2bb773-e630-4cf9-bdf1-7c2dd64fe4ec
|
166
|
+
30adaab5-8870-47a8-8ae9-facbf84cb05a@{ shape: trap-t, label: "*Solution Actor Role*
|
167
|
+
**Clinical Trial Participating Hospital**"}
|
168
|
+
30adaab5-8870-47a8-8ae9-facbf84cb05a-->|"Owner"|ee2bb773-e630-4cf9-bdf1-7c2dd64fe4ec
|
169
|
+
d48f579f-76d3-4c49-b1b4-575f5645a9d0-->|"Solution Linking Wire"|b5c8da4c-f925-4cf1-8294-e43cd2c1a584
|
170
|
+
ece17806-836c-4756-b3a2-2d12dde215f6@{ shape: trap-t, label: "*Solution Actor Role*
|
171
|
+
**New Treatment Data Scientist**"}
|
172
|
+
ece17806-836c-4756-b3a2-2d12dde215f6-->|"Data Analyser"|b5c8da4c-f925-4cf1-8294-e43cd2c1a584
|
173
|
+
0c757e35-8a42-4d5f-b01b-c72a6cea65cc@{ shape: trap-t, label: "*Solution Actor Role*
|
174
|
+
**New Treatment Researcher.**"}
|
175
|
+
0c757e35-8a42-4d5f-b01b-c72a6cea65cc-->|"Results Interpreter"|b5c8da4c-f925-4cf1-8294-e43cd2c1a584
|
176
|
+
e9c2f911-ffcb-40c6-aeee-8c4d43811576@{ shape: subproc, label: "*Solution Component*
|
177
|
+
**Onboard Hospital**"}
|
178
|
+
b0290339-c96c-4b05-904f-12fc98e54e14-->|"Initiator"|e9c2f911-ffcb-40c6-aeee-8c4d43811576
|
179
|
+
849b0b42-f465-452b-813c-477d6398e082@{ shape: subproc, label: "*Solution Component*
|
180
|
+
**Set up clinical trial**"}
|
181
|
+
f37f3735-28a1-4e03-9ff5-3fe2f137f661-->|"Initiator"|849b0b42-f465-452b-813c-477d6398e082
|
182
|
+
a5d4d638-6836-47e5-99d0-fdcde637e13f@{ shape: lin-cyl, label: "*Solution Component*
|
183
|
+
**Weekly Measurements Data Lake Folder**"}
|
184
|
+
7f5dca65-50b4-4103-9ac7-3a406a09047a-->|"Solution Linking Wire"|a5d4d638-6836-47e5-99d0-fdcde637e13f
|
185
|
+
0bf2547c-937c-41b6-814f-6284849271a1@{ shape: odd, label: "*Solution Component*
|
186
|
+
**Treatment Assessment Report Validation and Delivery**"}
|
187
|
+
72a86eec-9734-4bc0-babb-4fec0aa7c9ff-->|"Solution Linking Wire"|0bf2547c-937c-41b6-814f-6284849271a1
|
188
|
+
f6bc847b-868d-43cc-b767-41f5fe3e47d1@{ shape: trap-t, label: "*Solution Actor Role*
|
189
|
+
**Clinical Trial Sponsor**"}
|
190
|
+
f6bc847b-868d-43cc-b767-41f5fe3e47d1-->|"Reviewer"|0bf2547c-937c-41b6-814f-6284849271a1
|
191
|
+
a5d4d638-6836-47e5-99d0-fdcde637e13f-->|"Solution Linking Wire"|26c07ca4-3b8e-484b-812b-36c1ace4b275
|
192
|
+
fb32bef2-e79f-4893-b500-2e547f24d482@{ shape: subproc, label: "*Solution Component*
|
193
|
+
**Set up Data Lake Folder**"}
|
194
|
+
b0290339-c96c-4b05-904f-12fc98e54e14-->|"Initiator"|fb32bef2-e79f-4893-b500-2e547f24d482
|
195
|
+
1c150d6e-30cf-481c-9afb-3b06c9c9e78f@{ shape: lin-cyl, label: "*Solution Component*
|
196
|
+
**Hospital Landing Area Folder**"}
|
197
|
+
ee2bb773-e630-4cf9-bdf1-7c2dd64fe4ec-->|"Solution Linking Wire"|1c150d6e-30cf-481c-9afb-3b06c9c9e78f
|
198
|
+
1c150d6e-30cf-481c-9afb-3b06c9c9e78f-->|"Solution Linking Wire"|07705e15-efff-4f80-8992-f04ac85e0ef1
|
199
|
+
11c7c850-c67c-41cc-9423-d74db47cbf3a@{ shape: subproc, label: "*Solution Component*
|
200
|
+
**Nominate Hospital**"}
|
201
|
+
f37f3735-28a1-4e03-9ff5-3fe2f137f661-->|"Initiator"|11c7c850-c67c-41cc-9423-d74db47cbf3a
|
202
|
+
end
|
203
|
+
style 48bc201e-3d4e-4beb-bdb2-0fd9d134f6d5 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
204
|
+
style ece17806-836c-4756-b3a2-2d12dde215f6 color:#FFFFFF, fill:#AA00FF, stroke:#E1D5E7
|
205
|
+
style e9c2f911-ffcb-40c6-aeee-8c4d43811576 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
206
|
+
style a5d4d638-6836-47e5-99d0-fdcde637e13f color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
207
|
+
style 0bf2547c-937c-41b6-814f-6284849271a1 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
208
|
+
style 30adaab5-8870-47a8-8ae9-facbf84cb05a color:#FFFFFF, fill:#AA00FF, stroke:#E1D5E7
|
209
|
+
style b0290339-c96c-4b05-904f-12fc98e54e14 color:#FFFFFF, fill:#AA00FF, stroke:#E1D5E7
|
210
|
+
style 26c07ca4-3b8e-484b-812b-36c1ace4b275 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
211
|
+
style 1c150d6e-30cf-481c-9afb-3b06c9c9e78f color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
212
|
+
style 07705e15-efff-4f80-8992-f04ac85e0ef1 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
213
|
+
style a8bd84ca-0aae-4534-b0e8-87e8659467a6 color:#FFFFFF, fill:#AA00FF, stroke:#E1D5E7
|
214
|
+
style 0c757e35-8a42-4d5f-b01b-c72a6cea65cc color:#FFFFFF, fill:#AA00FF, stroke:#E1D5E7
|
215
|
+
style c4f8d707-7c85-4125-b5fd-c3257a2ef2ef color:#3079ab, fill:#b7c0c7, stroke:#3079ab
|
216
|
+
style 37b8560d-84d4-434b-9b0d-105420fcc924 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
217
|
+
style 11c7c850-c67c-41cc-9423-d74db47cbf3a color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
218
|
+
style fc2de77f-7320-48ea-8750-d434c6e870db color:#000000, fill:#F9F7ED, stroke:#b7c0c7
|
219
|
+
style 849b0b42-f465-452b-813c-477d6398e082 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
220
|
+
style 7f5dca65-50b4-4103-9ac7-3a406a09047a color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
221
|
+
style ee2bb773-e630-4cf9-bdf1-7c2dd64fe4ec color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
222
|
+
style 72a86eec-9734-4bc0-babb-4fec0aa7c9ff color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
223
|
+
style b5c8da4c-f925-4cf1-8294-e43cd2c1a584 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
224
|
+
style f6bc847b-868d-43cc-b767-41f5fe3e47d1 color:#FFFFFF, fill:#AA00FF, stroke:#E1D5E7
|
225
|
+
style d48f579f-76d3-4c49-b1b4-575f5645a9d0 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
226
|
+
style f37f3735-28a1-4e03-9ff5-3fe2f137f661 color:#FFFFFF, fill:#AA00FF, stroke:#E1D5E7
|
227
|
+
style fb32bef2-e79f-4893-b500-2e547f24d482 color:#FFFFFF, fill:#838cc7, stroke:#3079ab
|
228
|
+
</div>
|
229
|
+
</div>
|
@@ -26,17 +26,17 @@ pyegeria/commands/cat/list_collections.py,sha256=FqmeSL88ibP-wHdXK0OKWgPWKrvMpeu
|
|
26
26
|
pyegeria/commands/cat/list_deployed_catalogs.py,sha256=XU-FYB5GM56km5AEGXdmje7Hd9_BRX8WnvYv85W4wic,8251
|
27
27
|
pyegeria/commands/cat/list_deployed_database_schemas.py,sha256=An169YhyPl5cazVEhQ6BB-kpWKASEN6X10XFfIo24O0,9441
|
28
28
|
pyegeria/commands/cat/list_deployed_databases.py,sha256=kPRsTMKwOMtXoOPhEJ7tHHd71X-pSOzMXcVPSsiilSg,7580
|
29
|
+
pyegeria/commands/cat/list_deployed_servers.py,sha256=NOvawgi7qVjcMPp-zEK4N_YSUCpl37_O3-t1DFeZRNU,5712
|
29
30
|
pyegeria/commands/cat/list_glossaries.py,sha256=QfasuBQ8xAnERTijjI7leThsOwGU-l9zhTgOT0WvhD0,5599
|
30
31
|
pyegeria/commands/cat/list_projects.py,sha256=8KbhDHC0Yl-fyiagRHVWk4vTO9zqSEgGRY9m6ohySHQ,7990
|
31
|
-
pyegeria/commands/cat/list_servers_deployed_imp.py,sha256=NOvawgi7qVjcMPp-zEK4N_YSUCpl37_O3-t1DFeZRNU,5712
|
32
32
|
pyegeria/commands/cat/list_tech_type_elements.py,sha256=ZcgfBycPuZEKMs7HANSmnnVhe-U9KuyoEBiMErEpsUc,6866
|
33
33
|
pyegeria/commands/cat/list_tech_types.py,sha256=YkfKnQxJq5V4lnfTcp6VQ3rk-qks0Dw1i1CjjgdEGmA,4646
|
34
34
|
pyegeria/commands/cat/list_terms.py,sha256=QpHGSQDybNUznGNZ2sO494-zxagJpeOJALgzvlUXpNc,9714
|
35
35
|
pyegeria/commands/cat/list_todos.py,sha256=_X0t5-tZScNb2Pl6ZCRQAKhOEQgeNdxV0D5xIN3IXNI,6549
|
36
36
|
pyegeria/commands/cat/list_user_ids.py,sha256=oQqEFV3MbqC7Tsfh1PhTOiJUS684LIkO1rbNOqITzRI,5101
|
37
37
|
pyegeria/commands/cli/__init__.py,sha256=hpTVSMP2gnPRhcAZPdeUEsQ-eaDySlXlk239dNWYmng,292
|
38
|
-
pyegeria/commands/cli/egeria.py,sha256=
|
39
|
-
pyegeria/commands/cli/egeria_cat.py,sha256=
|
38
|
+
pyegeria/commands/cli/egeria.py,sha256=IXZPZEM-NOLtup2OcQJ8I0wx1FYAjD7iAhfmPpEgz9s,51629
|
39
|
+
pyegeria/commands/cli/egeria_cat.py,sha256=Vt7DpbIE20mO80MmXm8BoPHd-VXbp0YoYQ07sas_WMI,16003
|
40
40
|
pyegeria/commands/cli/egeria_login_tui.py,sha256=uhSk5GZbx_nz-EVwSU87JiZ2GTGHxuyxye053dQq9UY,9485
|
41
41
|
pyegeria/commands/cli/egeria_my.py,sha256=0KTH7OIeKyp16ZeN7zK5uhadbPfAQsq38GMzJNWYG8g,6386
|
42
42
|
pyegeria/commands/cli/egeria_ops.py,sha256=8W4t2jFGn22OOOtyUAapQH8yyOl1wo09CVNTojRQKvo,12817
|
@@ -244,7 +244,8 @@ pyegeria/feedback_manager_omvs.py,sha256=0xBs0p54vmdfVYYgQ8pOanLC4fxfgTk1Z61Y6D1
|
|
244
244
|
pyegeria/full_omag_server_config.py,sha256=CQqLCy_3DZFvJZEOcGf50HWdFaWpiAIs6z-kKyjvpDA,47464
|
245
245
|
pyegeria/glossary_browser_omvs.py,sha256=ci57LXFjIAXWw6XXFu8pIbeR_3y4hl_x4F2-HHdy7VM,93585
|
246
246
|
pyegeria/glossary_manager_omvs.py,sha256=GJQo5E3bxv8JL84wTGqJKMrMo7QqNAPtyJJgvGpI_lU,132558
|
247
|
-
pyegeria/
|
247
|
+
pyegeria/m_test.py,sha256=BDKRLsHsAWnwCbzHkkvfsc8ZIJ0k-jmwPPNuTSgW6Qo,7659
|
248
|
+
pyegeria/mermaid_utilities.py,sha256=zuGag6ffjkO22kiJtarhy_x18Yx5x_t4DSgbsC0SxKU,34433
|
248
249
|
pyegeria/metadata_explorer_omvs.py,sha256=xHnZTQKbd6XwOhYia-RiIisrvZcqHi0SL1l6OCf04Gk,86911
|
249
250
|
pyegeria/my_profile_omvs.py,sha256=d0oJYCJG7pS9BINPuGciVa00ac0jwPHNANXDCLginEc,34720
|
250
251
|
pyegeria/platform_services.py,sha256=xlF5p5HPKDGTFFDsuxm2RLhr8vjZPv4T7e2qCkDgKXE,41654
|
@@ -254,14 +255,14 @@ pyegeria/runtime_manager_omvs.py,sha256=Z5wY9ignNjil8O6yjihZftxkGoh9A4PQDcXhoIsO
|
|
254
255
|
pyegeria/server_operations.py,sha256=vmiUDU_Xa0U8pa0Fdb-QKkoeSqs7WfMwIpG_XU3xgeI,16784
|
255
256
|
pyegeria/solution_architect_omvs.py,sha256=x6CfPTyn1l2DFYVEFP0t_rT9uVjoFr596hBBeuVaMRg,22093
|
256
257
|
pyegeria/template_manager_omvs.py,sha256=PfJ9dOfmBvf59DgRdZ9Dl1Kl_UYqjF-JncXVnbCqLZU,42408
|
257
|
-
pyegeria/test_m.
|
258
|
+
pyegeria/test_m.html,sha256=YAGz3VoCvEydXuRJMwoajOWkuB7sJO6WTZKNkCfXzgw,12239
|
258
259
|
pyegeria/test_m1.html,sha256=XS_1IAtfG4ZlZk45QTkrFWWpjQMVlO21ScDMX2Frl3g,14086
|
259
260
|
pyegeria/test_mer.ipynb,sha256=G7hpHn07IXnt_VKvnTDvljwwHB7RfC0etOMyZKt1icQ,30809
|
260
261
|
pyegeria/utils.py,sha256=GCt1C0bp0Xng1ahzbZhzV9qQwH7Dj93IaCt2dvWb-sg,5417
|
261
262
|
pyegeria/valid_metadata_omvs.py,sha256=kL3bEkoBtNCaQKjziFwRAqQyleu-i2ua_REIogfulFw,65031
|
262
263
|
pyegeria/x_action_author_omvs.py,sha256=6b725SPsC52AI7ols7Qq8MsBlZuAXr_BgJ_-ychVRCw,6386
|
263
|
-
pyegeria-5.3.4.
|
264
|
-
pyegeria-5.3.4.
|
265
|
-
pyegeria-5.3.4.
|
266
|
-
pyegeria-5.3.4.
|
267
|
-
pyegeria-5.3.4.
|
264
|
+
pyegeria-5.3.4.12.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
265
|
+
pyegeria-5.3.4.12.dist-info/METADATA,sha256=PDGeRm1VV0p86nMWqtX-0MXYdRZ4UKI7eYYgPY_ZWN0,2736
|
266
|
+
pyegeria-5.3.4.12.dist-info/WHEEL,sha256=IYZQI976HJqqOpQU6PHkJ8fb3tMNBFjg-Cn-pwAbaFM,88
|
267
|
+
pyegeria-5.3.4.12.dist-info/entry_points.txt,sha256=LS9g5JPSBL0whnyAcGhLZCAyUp6PkPU6fjHP9Aso1V4,6176
|
268
|
+
pyegeria-5.3.4.12.dist-info/RECORD,,
|
@@ -33,7 +33,7 @@ list_collections=pyegeria.commands.cat.list_collections:main
|
|
33
33
|
list_deployed_catalogs=pyegeria.commands.cat.list_deployed_catalogs:main
|
34
34
|
list_deployed_databases=pyegeria.commands.cat.list_deployed_databases:main
|
35
35
|
list_deployed_schemas=pyegeria.commands.cat.list_deployed_database_schemas:main
|
36
|
-
list_deployed_servers=pyegeria.commands.cat.
|
36
|
+
list_deployed_servers=pyegeria.commands.cat.list_deployed_servers.py:main
|
37
37
|
list_elements=pyegeria.commands.tech.list_all_om_type_elements:main
|
38
38
|
list_elements_by_classification_by_prop_value=pyegeria.commands.tech.list_elements_by_classification_by_property_value:main
|
39
39
|
list_elements_by_prop_value=pyegeria.commands.tech.list_elements_by_property_value:main
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|