Skip to content

Commit a909524

Browse files
Rename Collision_shape scraped category
1 parent d2d5233 commit a909524

25 files changed

+30
-16
lines changed

migrate/oldwiki/scrape.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
CATEGORY_CORRECTIONS = {
1818
'SQL': 'Database',
19+
'Collision_shape': 'Colshape',
1920
}
2021

2122
def clean_category(category_name: str) -> str:
@@ -26,9 +27,10 @@ def clean_category(category_name: str) -> str:
2627
return category_name
2728

2829
def fix_category(category_name: str) -> str:
30+
category_name = category_name.replace(" ", "_")
2931
if category_name in CATEGORY_CORRECTIONS:
3032
return CATEGORY_CORRECTIONS[category_name]
31-
return category_name.replace(" ", "_")
33+
return category_name
3234

3335
def parse_links(source_label: str, url: str) -> dict:
3436
print(f"Parsing {source_label} from {url}...")

web/src/utils/functions.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,9 @@ let functionsByTypeByCategory: FunctionsByTypeByCategory = {
215215
};
216216

217217
for (let func of functionsCollection) {
218-
const folder = path.basename(path.dirname(func.filePath || ''));
218+
let folder = path.basename(path.dirname(func.filePath || ''));
219+
folder = folder.replace(/_/g, ' ');
220+
219221
if (!functionsByCategory[folder]) {
220222
functionsByCategory[folder] = [];
221223
}

web/src/utils/general.ts

Lines changed: 24 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -36,30 +36,40 @@ const makeTitle = (subType: string, category: string, type: string): string => {
3636
};
3737

3838
const getItemsInCategory = (type: string, subType: string, category: string): any[] => {
39+
const findCategoryInsensitive = (obj: Record<string, any[]>, cat: string): any[] => {
40+
const match = Object.keys(obj).find(key => key.toLowerCase() === cat.toLowerCase());
41+
return match ? obj[match] : [];
42+
};
43+
3944
switch (type) {
4045
case 'functions': {
4146
const fnByType = getFunctionsByTypeByCategory();
42-
return subType === 'any'
43-
? [
44-
...(fnByType.shared?.[category] || []),
45-
...(fnByType.client?.[category] || []),
46-
...(fnByType.server?.[category] || []),
47-
]
48-
: fnByType?.[subType as keyof typeof fnByType]?.[category] || [];
47+
if (subType === 'any') {
48+
return [
49+
...findCategoryInsensitive(fnByType.shared || {}, category),
50+
...findCategoryInsensitive(fnByType.client || {}, category),
51+
...findCategoryInsensitive(fnByType.server || {}, category),
52+
];
53+
}
54+
return findCategoryInsensitive(fnByType?.[subType as keyof typeof fnByType] || {}, category);
4955
}
56+
5057
case 'events': {
5158
const evByType = getEventsByTypeByCategory();
52-
return subType === 'any'
53-
? [
54-
...(evByType.client?.[category] || []),
55-
...(evByType.server?.[category] || []),
56-
]
57-
: evByType?.[subType as keyof typeof evByType]?.[category] || [];
59+
if (subType === 'any') {
60+
return [
61+
...findCategoryInsensitive(evByType.client || {}, category),
62+
...findCategoryInsensitive(evByType.server || {}, category),
63+
];
64+
}
65+
return findCategoryInsensitive(evByType?.[subType as keyof typeof evByType] || {}, category);
5866
}
67+
5968
case 'elements': {
6069
const elementsByCategory = getElementsByCategory();
61-
return elementsByCategory?.[category] || [];
70+
return findCategoryInsensitive(elementsByCategory || {}, category);
6271
}
72+
6373
default:
6474
return [];
6575
}

0 commit comments

Comments
 (0)