Skip to content

Commit a26906b

Browse files
committed
Improve visualization of component namespaces
1 parent a846e3a commit a26906b

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

etc/js/common.js

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,34 @@
11
explorer = {
22
shortenEntity: function(entity) {
33
if (entity) {
4+
if (entity[0] === "(") {
5+
let pair = this.parsePair(entity);
6+
return "(" + this.shortenEntity(pair[0]) + ", " + pair[1] + ")";
7+
}
8+
49
let escaped = entity.replaceAll("\\.", "@@");
510
escaped = escaped.split(".").pop();
611
escaped = escaped.replaceAll("@@", ".");
712
return escaped;
813
}
914
},
1015

16+
parsePair: function(expr) {
17+
if (expr[0] !== "(") {
18+
console.error("Invalid pair: " + expr);
19+
return undefined;
20+
}
21+
22+
return expr.slice(1, -1).split(",");
23+
},
24+
1125
shortenComponent: function(component) {
1226
let result;
1327
if (component[0] !== "(") {
1428
// Not a pair
1529
result = this.shortenEntity(component);
1630
} else {
17-
let pair = component.slice(1, -1).split(",");
31+
let pair = this.parsePair(component);
1832
let rel = this.shortenEntity(pair[0]);
1933
result = "(" + this.shortenEntity(pair[0]) + ", " + pair[1] + ")";
2034
}
@@ -23,6 +37,9 @@ explorer = {
2337

2438
entityParent: function(path) {
2539
path = path.replaceAll("\\\.", "@@");
40+
if (path[0] === "(") {
41+
path = this.parsePair(path)[0];
42+
}
2643
const names = path.split(".");
2744
names.pop();
2845
return names.join(".").replaceAll("@@", ".");

etc/js/components/pages/internals/components.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ const filter = ref("");
1919
2020
const headers = computed(() => {
2121
return [
22-
{name: "Name", schema: ["name"], get: (component) => component.name},
22+
{name: "Name", schema: ["entity"], get: (component) => component.name},
2323
{name: "Size", schema: ["int"], get: (component) => component.type ? component.type.size : 0},
2424
{name: "Alignment", schema: ["int"], get: (component) => component.type ? component.type.alignment : 0},
2525
{name: "Hooks", schema: ["hooks"], get: (component) => formatHooks(component)},

0 commit comments

Comments
 (0)