Skip to content

Commit 11a0211

Browse files
committed
Unify canvas resource IDs with template IDs
1 parent de044fb commit 11a0211

5 files changed

Lines changed: 92 additions & 56 deletions

File tree

packages/create-apiops/template/scripts/get-method-canvas-metadata.js

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,23 @@ if (!inputId) {
3333
const resources = readJson(resolveMethodData("method", "resources.json")).resources;
3434
const canvasData = readJson(resolveMethodData("canvas", "canvasData.json"));
3535
const localizedData = readJson(resolveMethodData("canvas", "localizedData.json"));
36+
const legacyAliases = new Map([
37+
["domain-canvas", "domainCanvas"],
38+
["api-business-model-canvas", "apiBusinessModelCanvas"],
39+
["api-value-proposition-canvas", "apiValuePropositionCanvas"],
40+
["business-impact-canvas", "businessImpactCanvas"],
41+
["capacity-canvas", "capacityCanvas"],
42+
["customer-journey-canvas", "customerJourneyCanvas"],
43+
["event-canvas", "eventCanvas"],
44+
["graphql-canvas", "graphqlCanvas"],
45+
["interaction-canvas", "interactionCanvas"],
46+
["location-canvas", "locationsCanvas"],
47+
["rest-canvas", "restCanvas"],
48+
]);
3649

37-
const resource = resources.find((entry) => entry.id === inputId);
38-
const canvasId = resource && resource.canvas ? resource.canvas : inputId;
50+
const normalizedInputId = legacyAliases.get(inputId) || inputId;
51+
const resource = resources.find((entry) => entry.id === normalizedInputId);
52+
const canvasId = resource && resource.canvas ? resource.canvas : normalizedInputId;
3953
const base = canvasData[canvasId];
4054
const localized = (localizedData[locale] && localizedData[locale][canvasId]) || null;
4155

scripts/test-create-apiops-scaffold.mjs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -163,15 +163,15 @@ try {
163163
});
164164

165165
const expectedGeneratedCanvases = [
166-
join(projectDir, "specs", "canvases", "api-product-strategy", "customer-journey-canvas.empty.json"),
167-
join(projectDir, "specs", "canvases", "api-product-strategy", "domain-canvas.empty.json"),
168-
join(projectDir, "specs", "canvases", "api-product-strategy", "api-value-proposition-canvas.empty.json"),
169-
join(projectDir, "specs", "canvases", "api-product-strategy", "api-business-model-canvas.empty.json"),
170-
join(projectDir, "specs", "canvases", "api-platform-architecture", "business-impact-canvas.empty.json"),
171-
join(projectDir, "specs", "canvases", "api-platform-architecture", "location-canvas.empty.json"),
172-
join(projectDir, "specs", "canvases", "api-platform-architecture", "capacity-canvas.empty.json"),
173-
join(projectDir, "specs", "canvases", "api-design", "interaction-canvas.empty.json"),
174-
join(projectDir, "specs", "canvases", "api-design", "rest-canvas.empty.json")
166+
join(projectDir, "specs", "canvases", "api-product-strategy", "customerJourneyCanvas.empty.json"),
167+
join(projectDir, "specs", "canvases", "api-product-strategy", "domainCanvas.empty.json"),
168+
join(projectDir, "specs", "canvases", "api-product-strategy", "apiValuePropositionCanvas.empty.json"),
169+
join(projectDir, "specs", "canvases", "api-product-strategy", "apiBusinessModelCanvas.empty.json"),
170+
join(projectDir, "specs", "canvases", "api-platform-architecture", "businessImpactCanvas.empty.json"),
171+
join(projectDir, "specs", "canvases", "api-platform-architecture", "locationsCanvas.empty.json"),
172+
join(projectDir, "specs", "canvases", "api-platform-architecture", "capacityCanvas.empty.json"),
173+
join(projectDir, "specs", "canvases", "api-design", "interactionCanvas.empty.json"),
174+
join(projectDir, "specs", "canvases", "api-design", "restCanvas.empty.json")
175175
];
176176

177177
for (const canvasPath of expectedGeneratedCanvases) {

src/data/method/resources.json

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,7 @@
431431
"category": "guideline"
432432
},
433433
{
434-
"id": "domain-canvas",
434+
"id": "domainCanvas",
435435
"title": "resource.domain-canvas.title",
436436
"slug": "resources/domain-canvas",
437437
"icon": "dashboard-outline",
@@ -719,7 +719,7 @@
719719
"category": "checklist"
720720
},
721721
{
722-
"id": "api-business-model-canvas",
722+
"id": "apiBusinessModelCanvas",
723723
"title": "resource.api-business-model-canvas.title",
724724
"slug": "resources/api-business-model-canvas",
725725
"icon": "dashboard-outline",
@@ -779,7 +779,7 @@
779779
"category": "guideline"
780780
},
781781
{
782-
"id": "api-value-proposition-canvas",
782+
"id": "apiValuePropositionCanvas",
783783
"title": "resource.api-value-proposition-canvas.title",
784784
"slug": "resources/api-value-proposition-canvas",
785785
"icon": "dashboard-outline",
@@ -807,7 +807,7 @@
807807
"category": "canvas"
808808
},
809809
{
810-
"id": "business-impact-canvas",
810+
"id": "businessImpactCanvas",
811811
"title": "resource.business-impact-canvas.title",
812812
"slug": "resources/business-impact-canvas",
813813
"icon": "dashboard-outline",
@@ -837,7 +837,7 @@
837837
"category": "canvas"
838838
},
839839
{
840-
"id": "capacity-canvas",
840+
"id": "capacityCanvas",
841841
"title": "resource.capacity-canvas.title",
842842
"slug": "resources/capacity-canvas",
843843
"icon": "dashboard-outline",
@@ -866,7 +866,7 @@
866866
"category": "canvas"
867867
},
868868
{
869-
"id": "customer-journey-canvas",
869+
"id": "customerJourneyCanvas",
870870
"title": "resource.customer-journey-canvas.title",
871871
"slug": "resources/customer-journey-canvas",
872872
"icon": "dashboard-outline",
@@ -897,7 +897,7 @@
897897
"category": "canvas"
898898
},
899899
{
900-
"id": "event-canvas",
900+
"id": "eventCanvas",
901901
"title": "resource.event-canvas.title",
902902
"slug": "resources/event-canvas",
903903
"icon": "dashboard-outline",
@@ -925,7 +925,7 @@
925925
"category": "canvas"
926926
},
927927
{
928-
"id": "graphql-canvas",
928+
"id": "graphqlCanvas",
929929
"title": "resource.graphql-canvas.title",
930930
"slug": "resources/graphql-canvas",
931931
"icon": "dashboard-outline",
@@ -958,7 +958,7 @@
958958
"category": "canvas"
959959
},
960960
{
961-
"id": "interaction-canvas",
961+
"id": "interactionCanvas",
962962
"title": "resource.interaction-canvas.title",
963963
"slug": "resources/interaction-canvas",
964964
"icon": "dashboard-outline",
@@ -987,7 +987,7 @@
987987
"category": "canvas"
988988
},
989989
{
990-
"id": "location-canvas",
990+
"id": "locationsCanvas",
991991
"title": "resource.location-canvas.title",
992992
"slug": "resources/location-canvas",
993993
"icon": "dashboard-outline",
@@ -1017,7 +1017,7 @@
10171017
"category": "canvas"
10181018
},
10191019
{
1020-
"id": "rest-canvas",
1020+
"id": "restCanvas",
10211021
"title": "resource.rest-canvas.title",
10221022
"slug": "resources/rest-canvas",
10231023
"icon": "dashboard-outline",

src/data/method/stations.json

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,19 @@
2222
"how_it_works": [
2323
{
2424
"step": "station.api-product-strategy.how_it_works",
25-
"resource": "customer-journey-canvas"
25+
"resource": "customerJourneyCanvas"
2626
},
2727
{
2828
"step": "station.api-product-strategy.how_it_works.1",
29-
"resource": "domain-canvas"
29+
"resource": "domainCanvas"
3030
},
3131
{
3232
"step": "station.api-product-strategy.how_it_works.2",
33-
"resource": "api-value-proposition-canvas"
33+
"resource": "apiValuePropositionCanvas"
3434
},
3535
{
3636
"step": "station.api-product-strategy.how_it_works.3",
37-
"resource": "api-business-model-canvas"
37+
"resource": "apiBusinessModelCanvas"
3838
}
3939
],
4040
"apply_in_work": "station.api-product-strategy.apply_in_work"
@@ -56,11 +56,11 @@
5656
"how-it-works": [
5757
{
5858
"step": "station.api-consumer-experience.how_it_works",
59-
"resource": "api-value-proposition-canvas"
59+
"resource": "apiValuePropositionCanvas"
6060
},
6161
{
6262
"step": "station.api-consumer-experience.how_it_works.1",
63-
"resource": "customer-journey-canvas"
63+
"resource": "customerJourneyCanvas"
6464
},
6565
{
6666
"step": "station.api-consumer-experience.how_it_works.2",
@@ -85,15 +85,15 @@
8585
"how_it_works": [
8686
{
8787
"step": "station.api-platform-architecture.how_it_works",
88-
"resource": "business-impact-canvas"
88+
"resource": "businessImpactCanvas"
8989
},
9090
{
9191
"step": "station.api-platform-architecture.how_it_works.1",
92-
"resource": "location-canvas"
92+
"resource": "locationsCanvas"
9393
},
9494
{
9595
"step": "station.api-platform-architecture.how_it_works.2",
96-
"resource": "capacity-canvas"
96+
"resource": "capacityCanvas"
9797
},
9898
{
9999
"step": "station.api-platform-architecture.how_it_works.3",
@@ -119,23 +119,23 @@
119119
"how_it_works": [
120120
{
121121
"step": "station.api-design.how_it_works",
122-
"resource": "domain-canvas"
122+
"resource": "domainCanvas"
123123
},
124124
{
125125
"step": "station.api-design.how_it_works.1",
126-
"resource": "interaction-canvas"
126+
"resource": "interactionCanvas"
127127
},
128128
{
129129
"step": "station.api-design.how_it_works.2",
130-
"resource": "rest-canvas"
130+
"resource": "restCanvas"
131131
},
132132
{
133133
"step": "station.api-design.how_it_works.3",
134-
"resource": "event-canvas"
134+
"resource": "eventCanvas"
135135
},
136136
{
137137
"step": "station.api-design.how_it_works.4",
138-
"resource": "graphql-canvas"
138+
"resource": "graphqlCanvas"
139139
},
140140
{
141141
"step": "station.api-design.how_it_works.5",
@@ -240,7 +240,7 @@
240240
"how_it_works": [
241241
{
242242
"step": "station.api-publishing.how_it_works",
243-
"resource": "api-publishing-guidelines"
243+
"resource": "apiops-CI-CD-for-apis"
244244
},
245245
{
246246
"step": "station.api-publishing.how_it_works.1",
@@ -278,7 +278,7 @@
278278
},
279279
{
280280
"step": "station.monitoring-and-improving.how_it_works.2",
281-
"resource": "apiops-CI/CD-for-apis"
281+
"resource": "apiops-CI-CD-for-apis"
282282
}
283283
],
284284
"apply_in_work": "station.monitoring-and-improving.apply_in_work"
@@ -309,15 +309,15 @@
309309
"how_it_works": [
310310
{
311311
"step": "station.user-experience.how_it_works",
312-
"resource": "customer-journey-canvas"
312+
"resource": "customerJourneyCanvas"
313313
},
314314
{
315315
"step": "station.user-experience.how_it_works.1",
316-
"resource": "customer-journey-canvas"
316+
"resource": "customerJourneyCanvas"
317317
},
318318
{
319319
"step": "station.user-experience.how_it_works.2",
320-
"resource": "customer-journey-canvas"
320+
"resource": "customerJourneyCanvas"
321321
}
322322
],
323323
"apply_in_work": "station.user-experience.apply_in_work"
@@ -369,7 +369,7 @@
369369
"how_it_works": [
370370
{
371371
"step": "station.business-goals.how_it_works",
372-
"resource": "api-business-model-canvas"
372+
"resource": "apiBusinessModelCanvas"
373373
},
374374
{
375375
"step": "station.business-goals.how_it_works.1",
@@ -463,7 +463,7 @@
463463
},
464464
{
465465
"step": "station.scalable-infrastructure.how_it_works.1",
466-
"resource": "capacity-canvas"
466+
"resource": "capacityCanvas"
467467
},
468468
{
469469
"step": "station.scalable-infrastructure.how_it_works.2",

0 commit comments

Comments
 (0)