feat: add MSB icon#444
Conversation
Greptile SummaryAdds MSB (Vietnam Maritime Commercial Joint Stock Bank) to the brand catalog with a standalone icon and a wordmark variant, plus the corresponding
Confidence Score: 5/5Safe to merge — the changes are additive (new SVG assets and one JSON entry) with no modifications to existing data or logic. All three files are purely additive. The JSON entry is well-formed and carries all required fields. The SVG assets render the correct brand colours and shapes; the only structural quirks (oversized clipPath in the icon file, shared IDs across files) are pre-existing SVG authoring artefacts that do not break current rendering. No files require special attention beyond the previously flagged clipPath mismatch in
|
| Filename | Overview |
|---|---|
| public/icons/msb/default.svg | New icon SVG — gradients and paths look correct, but the clipPath rectangle (3953×1163) far exceeds the viewBox (1623×936), making the clip region dead markup; IDs also collide with wordmark.svg. |
| public/icons/msb/wordmark.svg | New wordmark SVG — clipPath correctly matches the viewBox (1519×447); contains tab characters embedded in several path d attributes; shares all gradient/clip IDs with default.svg. |
| src/data/icons.json | MSB entry added with all required fields; opening brace uses a tab instead of the two-space indent used by every other entry (flagged in previous review thread). |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[icons.json entry\nslug: msb] --> B[default variant\n/icons/msb/default.svg]
A --> C[wordmark variant\n/icons/msb/wordmark.svg]
B --> D[4 gradient-filled paths\ng1–g4 radial gradients\nclipPath cp1 ⚠️ oversized]
C --> E[Icon paths\ng1–g4 radial gradients\nclipPath cp1 ✅ matches viewBox]
C --> F[Text paths\nMSB lettering fill #000\nTagline fill #ef4123]
D -. shared IDs .-> E
Reviews (2): Last reviewed commit: "refactor(svg): remove duplicate id attri..." | Re-trigger Greptile
| }, | ||
| { | ||
| "slug": "msb", |
There was a problem hiding this comment.
The opening brace for the MSB entry is indented with a tab character, while every other entry in the file uses two spaces. This inconsistency will fail any JSON-formatting lint check the project runs and makes the diff harder to read.
| }, | |
| { | |
| "slug": "msb", | |
| }, | |
| { | |
| "slug": "msb", |
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
| <clipPath clipPathUnits="userSpaceOnUse" id="cp1"> | ||
| <path d="m3953.29 0v1163.44h-3953.29v-1163.44z"/> | ||
| </clipPath> |
There was a problem hiding this comment.
clipPath dimensions don't match the viewBox
The clip-path rectangle spans 3953.29 × 1163.44 user units, while the viewBox is 0 0 1623 936. This looks like a leftover from the original authoring tool's artboard size. The mismatch means the clip path never actually clips any visible content — it's dead markup. It should either be removed or updated to match the viewBox (0 0 1623 936) to make the intent clear and keep the file clean.
Onboards Vietnam Maritime Commercial Joint Stock Bank (https://www.msb.com.vn/) to the brand catalog.
9E0B0F