Skip to content

Commit 84f055a

Browse files
authored
Fix sorting bugs that have always bothered me (#1710)
* fix sorting issue that's always bugged me * more sorting fixes. muahahaha.
1 parent 4616a7c commit 84f055a

File tree

5 files changed

+2760
-2751
lines changed

5 files changed

+2760
-2751
lines changed

scripts/catalog.js

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -240,8 +240,8 @@ const updateSources = async () => {
240240
}
241241

242242
sources.sort((a, b) => {
243-
if(a.display_name < b.display_name) { return -1; }
244-
if(a.display_name > b.display_name) { return 1; }
243+
if(a.display_name.toLowerCase() < b.display_name.toLowerCase()) { return -1; }
244+
if(a.display_name.toLowerCase() > b.display_name.toLowerCase()) { return 1; }
245245
return 0;
246246
})
247247

@@ -291,6 +291,11 @@ const updateSources = async () => {
291291
display_name: category,
292292
slug: slugify(category)
293293
})
294+
sourceCategories.sort((a, b) => {
295+
if(a.display_name.toLowerCase() < b.display_name.toLowerCase()) { return -1; }
296+
if(a.display_name.toLowerCase() > b.display_name.toLowerCase()) { return 1; }
297+
return 0;
298+
})
294299
})
295300

296301
// Create source catalog yaml file
@@ -322,8 +327,8 @@ const updateDestinations = async () => {
322327
nextPageToken = res.next_page_token
323328
}
324329
destinations.sort((a, b) => {
325-
if(a.display_name < b.display_name) { return -1; }
326-
if(a.display_name > b.display_name) { return 1; }
330+
if(a.display_name.toLowerCase() < b.display_name.toLowerCase()) { return -1; }
331+
if(a.display_name.toLowerCase() > b.display_name.toLowerCase()) { return 1; }
327332
return 0;
328333
})
329334
destinations.forEach(destination => {
@@ -344,15 +349,15 @@ const updateDestinations = async () => {
344349

345350
let settings = destination.settings
346351
settings.sort((a, b) => {
347-
if(a.display_name < b.display_name) { return -1; }
348-
if(a.display_name > b.display_name) { return 1; }
352+
if(a.display_name.toLowerCase() < b.display_name.toLowerCase()) { return -1; }
353+
if(a.display_name.toLowerCase() > b.display_name.toLowerCase()) { return 1; }
349354
return 0;
350355
})
351356
settings.forEach(setting => {
352357
if (setting.settings.length > 0) {
353358
setting.settings.sort((a, b) => {
354-
if(a.display_name < b.display_name) { return -1; }
355-
if(a.display_name > b.display_name) { return 1; }
359+
if(a.display_name.toLowerCase() < b.display_name.toLowerCase()) { return -1; }
360+
if(a.display_name.toLowerCase() > b.display_name.toLowerCase()) { return 1; }
356361
return 0;
357362
})
358363
}
@@ -388,7 +393,6 @@ const updateDestinations = async () => {
388393

389394
// add unique destination categories to set
390395
tempCategories.reduce((s, e) => s.add(e), categories);
391-
392396
})
393397

394398
const destinationArray = Array.from(categories)
@@ -397,6 +401,11 @@ const updateDestinations = async () => {
397401
display_name: category,
398402
slug: slugify(category)
399403
})
404+
destinationCategories.sort((a, b) => {
405+
if(a.display_name.toLowerCase() < b.display_name.toLowerCase()) { return -1; }
406+
if(a.display_name.toLowerCase() > b.display_name.toLowerCase()) { return 1; }
407+
return 0;
408+
})
400409
})
401410

402411
// Create destination catalog yaml file
Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,49 @@
11
# AUTOGENERATED FROM PLATFORM API. DO NOT EDIT
2-
# destination categories last updated 2021-06-29
2+
# destination categories last updated 2021-06-30
33
items:
4-
- display_name: Email Marketing
5-
slug: email-marketing
4+
- display_name: A/B Testing
5+
slug: a-b-testing
66
- display_name: Advertising
77
slug: advertising
88
- display_name: Analytics
99
slug: analytics
10-
- display_name: Enrichment
11-
slug: enrichment
12-
- display_name: A/B Testing
13-
slug: a-b-testing
14-
- display_name: Customer Success
15-
slug: customer-success
16-
- display_name: Performance Monitoring
17-
slug: performance-monitoring
1810
- display_name: Attribution
1911
slug: attribution
12+
- display_name: CRM
13+
slug: crm
14+
- display_name: Customer Success
15+
slug: customer-success
2016
- display_name: Deep Linking
2117
slug: deep-linking
22-
- display_name: Video
23-
slug: video
24-
- display_name: SMS & Push Notifications
25-
slug: sms-push-notifications
18+
- display_name: Email
19+
slug: email
20+
- display_name: Email Marketing
21+
slug: email-marketing
22+
- display_name: Enrichment
23+
slug: enrichment
24+
- display_name: Feature Flagging
25+
slug: feature-flagging
26+
- display_name: Heatmaps & Recordings
27+
slug: heatmaps-recordings
28+
- display_name: Livechat
29+
slug: livechat
2630
- display_name: Marketing Automation
2731
slug: marketing-automation
32+
- display_name: Performance Monitoring
33+
slug: performance-monitoring
2834
- display_name: Personalization
2935
slug: personalization
3036
- display_name: Raw Data
3137
slug: raw-data
3238
- display_name: Referrals
3339
slug: referrals
34-
- display_name: Feature Flagging
35-
slug: feature-flagging
36-
- display_name: Heatmaps & Recordings
37-
slug: heatmaps-recordings
38-
- display_name: Surveys
39-
slug: surveys
40-
- display_name: CRM
41-
slug: crm
4240
- display_name: Security & Fraud
4341
slug: security-fraud
44-
- display_name: Livechat
45-
slug: livechat
42+
- display_name: SMS & Push Notifications
43+
slug: sms-push-notifications
44+
- display_name: Surveys
45+
slug: surveys
4646
- display_name: Tag Managers
4747
slug: tag-managers
48-
- display_name: Email
49-
slug: email
48+
- display_name: Video
49+
slug: video

0 commit comments

Comments
 (0)