diff --git a/CHANGELOG.md b/CHANGELOG.md
index ea37043..c1fa305 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,6 +10,20 @@ All notable changes to this project will be documented in this file.
* Review DSK and FDN SVG files to make sure they're single layer, and update docs if needed
+## [3.19.0] 2026-05-02 Secrets of Strixhaven
+
+### Added
+
+* Secrets of Strixhaven (SOS), SOS Commander (SOC), and Mystical Archive bonus sheet (SOA) set symbols ([#289](https://github.com/andrewgioia/keyrune/issues/289))
+* The Hobbit (HOB), Hobbit Commander (HOC), and Reality Fracture (FRA) set symbols ([#296](https://github.com/andrewgioia/keyrune/issues/296))
+* Marvel Super Heroes (MSH) and MSH Commander (MSC) set symbols ([#288](https://github.com/andrewgioia/keyrune/issues/288))
+* Alchemy 2026 (y26) set symbol ([#291](https://github.com/andrewgioia/keyrune/issues/291))
+
+### Fixed
+
+* Aliases for PSAL and PHUK added for PSALVAT05 ([#292](https://github.com/andrewgioia/keyrune/issues/292))
+
+
## [3.18.0] 2025-12-10 Lorwyn Eclipsed
### NOTE: Sass and Bower deprecations
diff --git a/css/keyrune.css b/css/keyrune.css
index 8f76cc9..5a2731e 100644
--- a/css/keyrune.css
+++ b/css/keyrune.css
@@ -2,8 +2,8 @@
* Global */
@font-face {
font-family: 'Keyrune';
- src: url('../fonts/keyrune.eot?v=3.18.0');
- src: url('../fonts/keyrune.eot?#iefix&v=3.18.0') format('embedded-opentype'), url('../fonts/keyrune.woff2?v=3.18.0') format('woff2'), url('../fonts/keyrune.woff?v=3.18.0') format('woff'), url('../fonts/keyrune.ttf?v=3.18.0') format('truetype'), url('../fonts/keyrune.svg?v=3.18.0#keyrune') format('svg');
+ src: url('../fonts/keyrune.eot?v=3.19.0');
+ src: url('../fonts/keyrune.eot?#iefix&v=3.19.0') format('embedded-opentype'), url('../fonts/keyrune.woff2?v=3.19.0') format('woff2'), url('../fonts/keyrune.woff?v=3.19.0') format('woff'), url('../fonts/keyrune.ttf?v=3.19.0') format('truetype'), url('../fonts/keyrune.svg?v=3.19.0#keyrune') format('svg');
font-weight: normal;
font-style: normal;
}
@@ -152,12 +152,16 @@
content: "\e990";
}
.ss-duo.ss-otc::after {
- content: "\e9d3";
+ content: "\ea1d";
color: #fff !important;
}
.ss-duo.ss-scd::after {
content: "\e9ac";
}
+.ss-duo.ss-soc::after {
+ content: "\ea1d";
+ color: #fff !important;
+}
.ss-duo.ss-spm::after {
content: "\e9f2";
color: #fff !important;
@@ -730,6 +734,18 @@
.ss-tmt:before {
content: "\ea06";
}
+.ss-sos:before {
+ content: "\ea18";
+}
+.ss-msh:before {
+ content: "\ea1a";
+}
+.ss-hob:before {
+ content: "\ea19";
+}
+.ss-fra:before {
+ content: "\ea22";
+}
/**
* Command Zone */
.ss-van:before {
@@ -902,6 +918,15 @@
.ss-tmc:before {
content: "\ea15";
}
+.ss-soc:before {
+ content: "\ea1c";
+}
+.ss-hoc:before {
+ content: "\ea1e";
+}
+.ss-msc:before {
+ content: "\ea1f";
+}
/**
* Reprint */
.ss-chr:before {
@@ -1014,6 +1039,9 @@
.ss-mar:before {
content: "\e9f9";
}
+.ss-soa:before {
+ content: "\ea20";
+}
/**
* Beginner */
.ss-por:before {
@@ -1360,6 +1388,9 @@
.ss-sta-jpn:before {
content: "\e9fc";
}
+.ss-soa-jpn:before {
+ content: "\ea21";
+}
/**
* Secret Lairs */
.ss-slu:before {
@@ -1475,6 +1506,9 @@
.ss-omb:before {
content: "\ea10";
}
+.ss-y26:before {
+ content: "\ea1b";
+}
/**
* Un-serious */
.ss-ugl:before {
diff --git a/css/keyrune.min.css b/css/keyrune.min.css
index 8f76cc9..5a2731e 100644
--- a/css/keyrune.min.css
+++ b/css/keyrune.min.css
@@ -2,8 +2,8 @@
* Global */
@font-face {
font-family: 'Keyrune';
- src: url('../fonts/keyrune.eot?v=3.18.0');
- src: url('../fonts/keyrune.eot?#iefix&v=3.18.0') format('embedded-opentype'), url('../fonts/keyrune.woff2?v=3.18.0') format('woff2'), url('../fonts/keyrune.woff?v=3.18.0') format('woff'), url('../fonts/keyrune.ttf?v=3.18.0') format('truetype'), url('../fonts/keyrune.svg?v=3.18.0#keyrune') format('svg');
+ src: url('../fonts/keyrune.eot?v=3.19.0');
+ src: url('../fonts/keyrune.eot?#iefix&v=3.19.0') format('embedded-opentype'), url('../fonts/keyrune.woff2?v=3.19.0') format('woff2'), url('../fonts/keyrune.woff?v=3.19.0') format('woff'), url('../fonts/keyrune.ttf?v=3.19.0') format('truetype'), url('../fonts/keyrune.svg?v=3.19.0#keyrune') format('svg');
font-weight: normal;
font-style: normal;
}
@@ -152,12 +152,16 @@
content: "\e990";
}
.ss-duo.ss-otc::after {
- content: "\e9d3";
+ content: "\ea1d";
color: #fff !important;
}
.ss-duo.ss-scd::after {
content: "\e9ac";
}
+.ss-duo.ss-soc::after {
+ content: "\ea1d";
+ color: #fff !important;
+}
.ss-duo.ss-spm::after {
content: "\e9f2";
color: #fff !important;
@@ -730,6 +734,18 @@
.ss-tmt:before {
content: "\ea06";
}
+.ss-sos:before {
+ content: "\ea18";
+}
+.ss-msh:before {
+ content: "\ea1a";
+}
+.ss-hob:before {
+ content: "\ea19";
+}
+.ss-fra:before {
+ content: "\ea22";
+}
/**
* Command Zone */
.ss-van:before {
@@ -902,6 +918,15 @@
.ss-tmc:before {
content: "\ea15";
}
+.ss-soc:before {
+ content: "\ea1c";
+}
+.ss-hoc:before {
+ content: "\ea1e";
+}
+.ss-msc:before {
+ content: "\ea1f";
+}
/**
* Reprint */
.ss-chr:before {
@@ -1014,6 +1039,9 @@
.ss-mar:before {
content: "\e9f9";
}
+.ss-soa:before {
+ content: "\ea20";
+}
/**
* Beginner */
.ss-por:before {
@@ -1360,6 +1388,9 @@
.ss-sta-jpn:before {
content: "\e9fc";
}
+.ss-soa-jpn:before {
+ content: "\ea21";
+}
/**
* Secret Lairs */
.ss-slu:before {
@@ -1475,6 +1506,9 @@
.ss-omb:before {
content: "\ea10";
}
+.ss-y26:before {
+ content: "\ea1b";
+}
/**
* Un-serious */
.ss-ugl:before {
diff --git a/docs/assets/keyrune.min.css b/docs/assets/keyrune.min.css
index 8f76cc9..5a2731e 100644
--- a/docs/assets/keyrune.min.css
+++ b/docs/assets/keyrune.min.css
@@ -2,8 +2,8 @@
* Global */
@font-face {
font-family: 'Keyrune';
- src: url('../fonts/keyrune.eot?v=3.18.0');
- src: url('../fonts/keyrune.eot?#iefix&v=3.18.0') format('embedded-opentype'), url('../fonts/keyrune.woff2?v=3.18.0') format('woff2'), url('../fonts/keyrune.woff?v=3.18.0') format('woff'), url('../fonts/keyrune.ttf?v=3.18.0') format('truetype'), url('../fonts/keyrune.svg?v=3.18.0#keyrune') format('svg');
+ src: url('../fonts/keyrune.eot?v=3.19.0');
+ src: url('../fonts/keyrune.eot?#iefix&v=3.19.0') format('embedded-opentype'), url('../fonts/keyrune.woff2?v=3.19.0') format('woff2'), url('../fonts/keyrune.woff?v=3.19.0') format('woff'), url('../fonts/keyrune.ttf?v=3.19.0') format('truetype'), url('../fonts/keyrune.svg?v=3.19.0#keyrune') format('svg');
font-weight: normal;
font-style: normal;
}
@@ -152,12 +152,16 @@
content: "\e990";
}
.ss-duo.ss-otc::after {
- content: "\e9d3";
+ content: "\ea1d";
color: #fff !important;
}
.ss-duo.ss-scd::after {
content: "\e9ac";
}
+.ss-duo.ss-soc::after {
+ content: "\ea1d";
+ color: #fff !important;
+}
.ss-duo.ss-spm::after {
content: "\e9f2";
color: #fff !important;
@@ -730,6 +734,18 @@
.ss-tmt:before {
content: "\ea06";
}
+.ss-sos:before {
+ content: "\ea18";
+}
+.ss-msh:before {
+ content: "\ea1a";
+}
+.ss-hob:before {
+ content: "\ea19";
+}
+.ss-fra:before {
+ content: "\ea22";
+}
/**
* Command Zone */
.ss-van:before {
@@ -902,6 +918,15 @@
.ss-tmc:before {
content: "\ea15";
}
+.ss-soc:before {
+ content: "\ea1c";
+}
+.ss-hoc:before {
+ content: "\ea1e";
+}
+.ss-msc:before {
+ content: "\ea1f";
+}
/**
* Reprint */
.ss-chr:before {
@@ -1014,6 +1039,9 @@
.ss-mar:before {
content: "\e9f9";
}
+.ss-soa:before {
+ content: "\ea20";
+}
/**
* Beginner */
.ss-por:before {
@@ -1360,6 +1388,9 @@
.ss-sta-jpn:before {
content: "\e9fc";
}
+.ss-soa-jpn:before {
+ content: "\ea21";
+}
/**
* Secret Lairs */
.ss-slu:before {
@@ -1475,6 +1506,9 @@
.ss-omb:before {
content: "\ea10";
}
+.ss-y26:before {
+ content: "\ea1b";
+}
/**
* Un-serious */
.ss-ugl:before {
diff --git a/docs/cheatsheet.html b/docs/cheatsheet.html
index c28f18b..232d0da 100644
--- a/docs/cheatsheet.html
+++ b/docs/cheatsheet.html
@@ -187,6 +187,7 @@
ss-fdn 
ss-fic 
ss-fin 
+ ss-fra 
ss-frf 
ss-fut 
ss-gk1 
@@ -203,6 +204,8 @@
ss-ha1 
ss-hbg 
ss-hml 
+ ss-hob 
+ ss-hoc 
ss-hop 
ss-hou 
ss-ice 
@@ -272,6 +275,8 @@
ss-mp2 
ss-mps 
ss-mrd 
+ ss-msc 
+ ss-msh 
ss-mul 
ss-nem 
ss-nec 
@@ -326,9 +331,12 @@
ss-sld2 
ss-slu 
ss-snc 
+ ss-soa 
+ ss-soc 
ss-soi 
ss-sok 
ss-som 
+ ss-sos 
ss-spe 
ss-spg 
ss-spm 
@@ -391,6 +399,7 @@
ss-y23 
ss-y24 
ss-y25 
+ ss-y26 
ss-ydmu 
ss-zen 
ss-znc 
@@ -490,6 +499,8 @@
om1 rarity 
omb rarity 
otc inner 
+ soa jpn 
+ soc inner 
scd rarity 
scd inner 
spm inner 
diff --git a/docs/fonts/keyrune.eot b/docs/fonts/keyrune.eot
index b978cd8..494c6d0 100644
Binary files a/docs/fonts/keyrune.eot and b/docs/fonts/keyrune.eot differ
diff --git a/docs/fonts/keyrune.svg b/docs/fonts/keyrune.svg
index 132c60e..1c0ceeb 100644
--- a/docs/fonts/keyrune.svg
+++ b/docs/fonts/keyrune.svg
@@ -11,8 +11,8 @@
"fontFamily": "Keyrune",
"fontURL": "http://andrewgioia.github.io/Keyrune",
"majorVersion": 3,
- "minorVersion": 18,
- "version": "Version 3.18",
+ "minorVersion": 19,
+ "version": "Version 3.19",
"fontId": "Keyrune",
"psName": "Keyrune",
"subFamily": "Regular",
@@ -461,4 +461,15 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/fonts/keyrune.ttf b/docs/fonts/keyrune.ttf
index 9dca8f3..5c6d6c7 100644
Binary files a/docs/fonts/keyrune.ttf and b/docs/fonts/keyrune.ttf differ
diff --git a/docs/fonts/keyrune.woff b/docs/fonts/keyrune.woff
index 0f7180c..f54d527 100644
Binary files a/docs/fonts/keyrune.woff and b/docs/fonts/keyrune.woff differ
diff --git a/docs/fonts/keyrune.woff2 b/docs/fonts/keyrune.woff2
index c72bb13..809d8a2 100644
Binary files a/docs/fonts/keyrune.woff2 and b/docs/fonts/keyrune.woff2 differ
diff --git a/docs/icons.html b/docs/icons.html
index 5cd1c6f..ee3033d 100644
--- a/docs/icons.html
+++ b/docs/icons.html
@@ -45,7 +45,7 @@
- View the full list of set and expansion symbols below, for all sets and special edition products up to Lorwyn Eclipsed and TMNT . To use the symbols on your desktop or just get the vectors, check out the Cheatsheet .
+ View the full list of set and expansion symbols below, for all sets and special edition products up to Reality Fracture and The Hobbit . To use the symbols on your desktop or just get the vectors, check out the Cheatsheet .
Note: you can now link directly to a preview of each symbol's by adding the symbol code at the end of the url like this: https://keyrune.andrewgioia.com/icons.html?icon=ody .
@@ -482,6 +482,18 @@
Teenage Mutant Ninja Turtles (tmt)
+
+ Secrets of Strixhaven (sos)
+
+
+ Marvel Super Heroes (msh)
+
+
+ The Hobbit (hob)
+
+
+ Reality Fracture (fra)
+
@@ -664,6 +676,15 @@
TMT Eternal-Legal (tmc)
+
+ Secrets of Strixhaven Commander (soc)
+
+
+ The Hobbit Eternal (hoc)
+
+
+ Marvel Super Heroes Commander (msc)
+
@@ -1149,6 +1170,12 @@
STA Japan Promos (sta-jpn)
+
+ SOS Mystical Archives (soa)
+
+
+ SOS Mystical Archives (Japan) (soa-jpn)
+
@@ -1232,9 +1259,12 @@
Through the Omenpaths (om1)
-
+
OM1 Bonus (omb)
+
+ Alchemy 2026 (y26)
+
diff --git a/docs/index.html b/docs/index.html
index be10d60..7d9efc8 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -43,7 +43,7 @@
- Current version 3.18.0 includes all sets to Lorwyn Eclipsed.
+ Current version 3.19.0 includes all sets to Reality Fracture.
diff --git a/fonts/keyrune.eot b/fonts/keyrune.eot
index b978cd8..494c6d0 100644
Binary files a/fonts/keyrune.eot and b/fonts/keyrune.eot differ
diff --git a/fonts/keyrune.svg b/fonts/keyrune.svg
index 132c60e..1c0ceeb 100644
--- a/fonts/keyrune.svg
+++ b/fonts/keyrune.svg
@@ -11,8 +11,8 @@
"fontFamily": "Keyrune",
"fontURL": "http://andrewgioia.github.io/Keyrune",
"majorVersion": 3,
- "minorVersion": 18,
- "version": "Version 3.18",
+ "minorVersion": 19,
+ "version": "Version 3.19",
"fontId": "Keyrune",
"psName": "Keyrune",
"subFamily": "Regular",
@@ -461,4 +461,15 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/fonts/keyrune.ttf b/fonts/keyrune.ttf
index 9dca8f3..5c6d6c7 100644
Binary files a/fonts/keyrune.ttf and b/fonts/keyrune.ttf differ
diff --git a/fonts/keyrune.woff b/fonts/keyrune.woff
index 0f7180c..f54d527 100644
Binary files a/fonts/keyrune.woff and b/fonts/keyrune.woff differ
diff --git a/fonts/keyrune.woff2 b/fonts/keyrune.woff2
index c72bb13..809d8a2 100644
Binary files a/fonts/keyrune.woff2 and b/fonts/keyrune.woff2 differ
diff --git a/less/duo.less b/less/duo.less
index 093e120..20dbc2b 100644
--- a/less/duo.less
+++ b/less/duo.less
@@ -169,7 +169,7 @@
// Outlaws of Thunder Junction Commander
&.@{ss-prefix}-otc::after {
- content: "\e9d3";
+ content: "\ea1d";
color: #fff !important;
}
@@ -178,6 +178,12 @@
content: "\e9ac";
}
+ // Secrets of Strixhaven (SOC) inner
+ &.@{ss-prefix}-soc::after {
+ content: "\ea1d";
+ color: #fff !important;
+ }
+
// Marvel Spider-Man
&.@{ss-prefix}-spm::after {
content: "\e9f2";
diff --git a/less/icons.less b/less/icons.less
index e7dd56e..b9c9e89 100644
--- a/less/icons.less
+++ b/less/icons.less
@@ -189,6 +189,11 @@
/* 2026 Sets */
.@{ss-prefix}-ecl:before { content: "\ea04"; } // Lorwyn Eclipsed
.@{ss-prefix}-tmt:before { content: "\ea06"; } // Teenage Mutant Ninja Turtles
+.@{ss-prefix}-sos:before { content: "\ea18"; } // Secrets of Strixhaven
+.@{ss-prefix}-msh:before { content: "\ea1a"; } // Marvel Super Heroes
+.@{ss-prefix}-hob:before { content: "\ea19"; } // The Hobbit
+.@{ss-prefix}-fra:before { content: "\ea22"; } // Reality Fracture
+
/**
* Command Zone */
@@ -251,6 +256,9 @@
.@{ss-prefix}-eoc:before { content: "\e9f6"; } // Edge of Eternities Commander
.@{ss-prefix}-ecc:before { content: "\ea11"; } // Lorwyn Eclipsed Commander
.@{ss-prefix}-tmc:before { content: "\ea15"; } // Teenage Mutant Ninja Turtles Eternal-Legal
+.@{ss-prefix}-soc:before { content: "\ea1c"; } // SOS Commander
+.@{ss-prefix}-hoc:before { content: "\ea1e"; } // HOB Commander
+.@{ss-prefix}-msc:before { content: "\ea1f"; } // MSH Commander
/**
@@ -294,6 +302,8 @@
.@{ss-prefix}-pio:before { content: "\e9e7"; } // Pioneer Masters
.@{ss-prefix}-fca:before { content: "\e9f8"; } // Final Fantasy Through the Ages
.@{ss-prefix}-mar:before { content: "\e9f9"; } // Marvel TBD
+.@{ss-prefix}-soa:before { content: "\ea20"; } // SOS Mystical Archives
+
/**
* Beginner */
@@ -418,6 +428,8 @@
.@{ss-prefix}-past:before { content: "\e68b"; } // Astral
.@{ss-prefix}-parl2:before { content: "\e68c"; } // Arena logo
.@{ss-prefix}-exp:before { content: "\e69a"; } // Zendikar Expeditions
+.@{ss-prefix}-psal:before,
+.@{ss-prefix}-phuk:before,
.@{ss-prefix}-psalvat05:before { content: "\e909"; } // Salvat 2005
.@{ss-prefix}-psalvat11:before { content: "\e90a"; } // Salvat 2011
.@{ss-prefix}-mps:before,
@@ -442,6 +454,7 @@
.@{ss-prefix}-rex:before { content: "\e9c4"; } // Jurassic World
.@{ss-prefix}-eos:before { content: "\ea00"; } // Edge of Eternities: Stellar Sights
.@{ss-prefix}-sta-jpn:before { content: "\e9fc"; } // Strixhaven Mystical Archives Japanese Promos
+.@{ss-prefix}-soa-jpn:before { content: "\ea21"; } // SOS Mystical Archives Japanese
/**
* Secret Lairs */
@@ -498,7 +511,8 @@
.@{ss-prefix}-pm2:before { content: "\ea02"; } // Puzzle Masters 2
.@{ss-prefix}-dvk:before { content: "\ea03"; } // Daxos vs. Kalemne (Puzzle Masters)
.@{ss-prefix}-om1:before { content: "\ea0e"; } // Through the Omenpaths (using border as symbol here b/c it looks better)
-.@{ss-prefix}-omb:before { content: "\ea10"; } // Through the Omenpaths (using border as symbol here b/c it looks better)
+.@{ss-prefix}-omb:before { content: "\ea10"; } // OM1 Bonus Sheet (using border as symbol here b/c it looks better)
+.@{ss-prefix}-y26:before { content: "\ea1b"; } // Alchemy 2026
/**
* Un-serious */
diff --git a/less/variables.less b/less/variables.less
index 0218d2b..6c2ff8a 100644
--- a/less/variables.less
+++ b/less/variables.less
@@ -2,6 +2,6 @@
* Global */
@ss-font-path: '../fonts';
-@ss-version: '3.18.0';
+@ss-version: '3.19.0';
@ss-font-size-base: 14px;
@ss-prefix: ss;
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 1a6d874..d1767bb 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,84 +1,22 @@
{
"name": "keyrune",
- "version": "3.18.0",
+ "version": "3.19.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "keyrune",
- "version": "3.18.0",
+ "version": "3.19.0",
"license": "(OFL-1.1 AND GPL-3.0-only)",
"devDependencies": {
"clean-css": "^5.3.3",
"lessc": "^1.0.2",
- "sass": "^1.77.8",
"zepto": "^1.2.0"
},
"engines": {
"node": "*"
}
},
- "node_modules/anymatch": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
- "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
- "dev": true,
- "dependencies": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/binary-extensions": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
- "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
- "dev": true,
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/braces": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
- "dev": true,
- "dependencies": {
- "fill-range": "^7.1.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "dev": true,
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "funding": {
- "url": "https://paulmillr.com/funding/"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
"node_modules/clean-css": {
"version": "5.3.3",
"resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz",
@@ -116,44 +54,6 @@
"errno": "cli.js"
}
},
- "node_modules/fill-range": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
- "dev": true,
- "dependencies": {
- "to-regex-range": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/fsevents": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
- "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
- "dev": true,
- "hasInstallScript": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
- }
- },
- "node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/graceful-fs": {
"version": "4.2.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
@@ -174,54 +74,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/immutable": {
- "version": "4.3.8",
- "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.8.tgz",
- "integrity": "sha512-d/Ld9aLbKpNwyl0KiM2CT1WYvkitQ1TSvmRtkcV8FKStiDoA7Slzgjmb/1G2yhKM1p0XeNOieaTbFZmU1d3Xuw==",
- "dev": true
- },
- "node_modules/is-binary-path": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
- "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
- "dev": true,
- "dependencies": {
- "binary-extensions": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-glob": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "dev": true,
- "dependencies": {
- "is-extglob": "^2.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true,
- "engines": {
- "node": ">=0.12.0"
- }
- },
"node_modules/is-what": {
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz",
@@ -296,27 +148,6 @@
"dev": true,
"optional": true
},
- "node_modules/normalize-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true,
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
- }
- },
"node_modules/pify": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
@@ -334,35 +165,6 @@
"dev": true,
"optional": true
},
- "node_modules/readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "dev": true,
- "dependencies": {
- "picomatch": "^2.2.1"
- },
- "engines": {
- "node": ">=8.10.0"
- }
- },
- "node_modules/sass": {
- "version": "1.77.8",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.8.tgz",
- "integrity": "sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==",
- "dev": true,
- "dependencies": {
- "chokidar": ">=3.0.0 <4.0.0",
- "immutable": "^4.0.0",
- "source-map-js": ">=0.6.2 <2.0.0"
- },
- "bin": {
- "sass": "sass.js"
- },
- "engines": {
- "node": ">=14.0.0"
- }
- },
"node_modules/semver": {
"version": "5.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
@@ -382,27 +184,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/source-map-js": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
- "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "dependencies": {
- "is-number": "^7.0.0"
- },
- "engines": {
- "node": ">=8.0"
- }
- },
"node_modules/tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
@@ -417,47 +198,6 @@
}
},
"dependencies": {
- "anymatch": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
- "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
- "dev": true,
- "requires": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- }
- },
- "binary-extensions": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
- "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
- "dev": true
- },
- "braces": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
- "dev": true,
- "requires": {
- "fill-range": "^7.1.1"
- }
- },
- "chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
- "dev": true,
- "requires": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "fsevents": "~2.3.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- }
- },
"clean-css": {
"version": "5.3.3",
"resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz",
@@ -486,31 +226,6 @@
"prr": "~1.0.1"
}
},
- "fill-range": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
- "dev": true,
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "fsevents": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
- "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
- "dev": true,
- "optional": true
- },
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
"graceful-fs": {
"version": "4.2.11",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
@@ -525,42 +240,6 @@
"dev": true,
"optional": true
},
- "immutable": {
- "version": "4.3.8",
- "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.8.tgz",
- "integrity": "sha512-d/Ld9aLbKpNwyl0KiM2CT1WYvkitQ1TSvmRtkcV8FKStiDoA7Slzgjmb/1G2yhKM1p0XeNOieaTbFZmU1d3Xuw==",
- "dev": true
- },
- "is-binary-path": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
- "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
- "dev": true,
- "requires": {
- "binary-extensions": "^2.0.0"
- }
- },
- "is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
- "dev": true
- },
- "is-glob": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "dev": true,
- "requires": {
- "is-extglob": "^2.1.1"
- }
- },
- "is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true
- },
"is-what": {
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz",
@@ -618,18 +297,6 @@
"dev": true,
"optional": true
},
- "normalize-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true
- },
- "picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true
- },
"pify": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
@@ -644,26 +311,6 @@
"dev": true,
"optional": true
},
- "readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "dev": true,
- "requires": {
- "picomatch": "^2.2.1"
- }
- },
- "sass": {
- "version": "1.77.8",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.8.tgz",
- "integrity": "sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==",
- "dev": true,
- "requires": {
- "chokidar": ">=3.0.0 <4.0.0",
- "immutable": "^4.0.0",
- "source-map-js": ">=0.6.2 <2.0.0"
- }
- },
"semver": {
"version": "5.7.2",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
@@ -677,21 +324,6 @@
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
},
- "source-map-js": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
- "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
- "dev": true
- },
- "to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "requires": {
- "is-number": "^7.0.0"
- }
- },
"tslib": {
"version": "1.14.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
diff --git a/package.json b/package.json
index 6887614..7ba00b3 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "keyrune",
"description": "Keyrune",
- "version": "3.18.0",
+ "version": "3.19.0",
"author": {
"name": "Andrew Gioia",
"email": "andrew@gioia.email",
@@ -25,7 +25,6 @@
"devDependencies": {
"clean-css": "^5.3.3",
"lessc": "^1.0.2",
- "sass": "^1.77.8",
"zepto": "^1.2.0"
},
"license": "(OFL-1.1 AND GPL-3.0-only)",
@@ -33,9 +32,6 @@
"scripts": {
"less": "lessc less/keyrune.less css/keyrune.css",
"lessmin": "lessc --clean-css less/keyrune.less css/keyrune.min.css",
- "sass": "sass sass/keyrune.scss css/keyrune.css --style=expanded",
- "sassmin": "sass sass/keyrune.scss css/keyrune.css --style=compressed",
- "watch": "sass --no-source-map --watch sass/keyrune.scss css/keyrune.css --style=expanded",
"build": "rsync -avzh ./fonts/* ./docs/fonts/ && rsync -avzh css/keyrune.min.css docs/assets/keyrune.min.css",
"rename": "for f in fonts/*; do lower=$(echo \"$f\" | tr '[:upper:]' '[:lower:]'); if [ \"$f\" != \"$lower\" ]; then mv -v \"$f\" \"$lower\"; fi; done",
"publish": "npm run less && npm run lessmin && npm run rename && npm run build"
diff --git a/sass/_helpers.scss b/sass/_helpers.scss
deleted file mode 100644
index f088714..0000000
--- a/sass/_helpers.scss
+++ /dev/null
@@ -1,163 +0,0 @@
-@use 'sass:math';
-
-/**
- * Sizes */
-@each $class, $size in $keyrune_sizes {
- .#{$keyrune_prefix}.#{$keyrune_prefix}-#{$class} {
- font-size: #{$size};
- }
-}
-
-/**
- * Fixed width */
-.#{$keyrune_prefix}.#{$keyrune_prefix}-fw {
- width: calc(18em / #{math.div($keyrune_font_size, $keyrune_font_size * 0 + 1)});
- text-align: center;
-}
-
-/**
- * Force no border */
-.#{$keyrune_prefix}.#{$keyrune_prefix}-no-border {
- -webkit-text-stroke: 0;
- text-stroke: 0;
-}
-
-/**
- * Icon borders */
-.#{$keyrune_prefix}.#{$keyrune_prefix}-border {
- &:after {
- content: "";
- position: absolute;
- left: -0.05em;
- top: 0.0em;
- z-index: -1;
- color: $white;
- font-size: 1.15em;
- background: $white;
- -webkit-text-stroke: 0.05em $white;
- -webkit-background-clip: $keyrune_background_clip;
- -webkit-text-fill-color: $keyrune_text_fill;
- }
-
- // adding a white version of the symbol for these problem sets,
- // instead of using the generic text-stroke above
- @each $set, $code, $glyph in $border-corrections {
- &.#{$keyrune_prefix}-#{$code}:after { /* #{$set} */
- content: ss-content($glyph);
- }
- }
-
- // corrections for various duo icons
- // SIS: the regular symbol becomes the border now
- &.#{$keyrune_prefix}-sis {
- &::before {
- content: "\e9b3";
- }
- &::after {
- content: "\e9b2";
- }
- }
- // c16: regular symbol becomes the border
- &.#{$keyrune_prefix}-c16 {
- &::before {
- content: "\e910"; // rarity
- }
- &::after {
- content: "\e9e5"; // new border
- }
- }
- // dft: regular symbol becomes the border
- &.#{$keyrune_prefix}-dft {
- &::before {
- content: "\e9e1"; // rarity
- }
- &::after {
- content: "\e9e0"; // new border
- }
- }
- // eos: new rarity symbol
- &.#{$keyrune_prefix}-eos {
- &::before {
- content: "\e9ff"; // rarity
- }
- &::after {
- content: "\ea00"; // new border
- }
- }
- // tla needs to swap the rarity and add the border as marker
- &.#{$keyrune_prefix}-tla {
- display: list-item;
- list-style-position: inside;
-
- &::before { // new rarity symbol
- content: "\e9fc";
- position: absolute;
- left: 0;
- top: 0;
- }
- &::marker { // border
- content: "\e9fd";
- color: #000;
- }
- }
-}
-
-/**
- * Dual-layered symbols */
-.#{$keyrune_prefix}.#{$keyrune_prefix}-duo {
-
- // base border styles
- &::after {
- color: #000;
- content: '';
- display: block;
- font-size: 1em;
- height: 100%;
- left: 0;
- position: absolute;
- top: 0;
- width: 100%;
- }
-
- & {
- // set default inner to white unless a rarity is declared
- color: #fff;
- }
- // sets
- @each $code, $glyph in $dual-layered {
- &.#{$keyrune_prefix}-#{$code}::after {
- content: ss-content($glyph);
- }
- }
-
- // manual corrections
- &.#{$keyrune_prefix}-ncc::before {
- content: "\e98f";
- }
- &.#{$keyrune_prefix}-40k::before {
- content: "\e999";
- }
- &.#{$keyrune_prefix}-dmc::before {
- content: "\e995";
- }
- &.#{$keyrune_prefix}-khc::before {
- content: "\e9c5";
- }
- &.#{$keyrune_prefix}-ltc::before {
- content: "\e9b7";
- }
- &.#{$keyrune_prefix}-tla::before {
- content: "\e9fc";
- }
-
- // rarity border colors
- &.#{$keyrune_prefix}-common {
- color: #fff;
- }
- &.#{$keyrune_prefix}-uncommon::after,
- &.#{$keyrune_prefix}-rare::after,
- &.#{$keyrune_prefix}-mythic::after {
- color: #000;
- }
-
-}
diff --git a/sass/_icons.scss b/sass/_icons.scss
deleted file mode 100644
index e1759df..0000000
--- a/sass/_icons.scss
+++ /dev/null
@@ -1,28 +0,0 @@
-/**
- * Sets */
-.#{$keyrune_prefix} {
- display: inline-block;
- font: $keyrune_font;
- font-size: inherit;
- line-height: 1em;
- text-rendering: auto;
- transform: translate(0, 0);
- speak: none;
- text-transform: none;
- vertical-align: middle;
- // Better font rendering
- -webkit-font-smoothing: antialiased;
- -moz-font-smoothing: grayscale;
-
- // default symbol if the set does not exist yet, or setcode does not match
- &:before {
- content: "#{$keyrune_default_content}";
- }
-
- @each $set, $code, $glyph in $keyrune_sets {
- // comments are evaluated at top when here for some reason
- &-#{$code}:before { /* #{$set} */
- content: ss-content($glyph);
- }
- }
-}
diff --git a/sass/_rarities.scss b/sass/_rarities.scss
deleted file mode 100644
index 89954ff..0000000
--- a/sass/_rarities.scss
+++ /dev/null
@@ -1,52 +0,0 @@
-/**
- * Rarities */
-
-// hard-prefixing some of these to ensure they get included
-
-@each $rarity, $text, $left, $right, $stroke in $keyrune_palette {
- /* #{$rarity} */
- .#{$keyrune_prefix}.#{$keyrune_prefix}-#{$rarity} {
- color: $text;
- &.#{$keyrune_prefix}-grad {
- // webkit outline/gradient
- /* Chrome, Safari4+ */
- background: -webkit-gradient(linear, left top, right top, color-stop(0%, #{$left}), color-stop(50%, #{$right}), color-stop(100%, #{$left}));
- /* Chrome10+, Safari5.1+ */
- background: -webkit-linear-gradient(left, #{$left} 0%, #{$right} 50%, #{$left} 100%);
- -webkit-text-stroke: 0.03em #{$stroke};
- -webkit-text-fill-color: $keyrune_text_fill;
- -webkit-background-clip: $keyrune_background_clip;
- background-clip: $keyrune_background_clip;
-
- &.#{$keyrune-prefix}-no-border,
- &.#{$keyrune-prefix}-duo {
- -webkit-text-stroke: 0;
- }
- &.#{$keyrune-prefix}-duo::after {
- -webkit-text-fill-color: inherit;
- }
- }
- }
-}
-
-// hard coding foil rarity for now because it's so much more complex
-.#{$keyrune_prefix}-foil {
- color: #a6dced;
- &.#{$keyrune_prefix}-grad {
- // webkit outline/gradient
- background: -webkit-linear-gradient(-45deg, #ea8d66 0%,#ea8d66 10%,#fdef8a 17%,#8bcc93 33%,#a6dced 50%,#6f75aa 67%,#e599c2 83%,#eeeeee 100%); /* Chrome10-25,Safari5.1-6 */
- background: linear-gradient(135deg, #ea8d66 0%,#ea8d66 15%,#fdef8a 28%,#8bcc93 42%,#a6dced 55%,#6f75aa 68%,#e599c2 84%,#e599c2 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
- -webkit-text-stroke: 0.03em #333;
- -webkit-background-clip: text;
- -webkit-text-fill-color: transparent;
- background-clip: $keyrune_background_clip;
-
- &.#{$keyrune-prefix}-no-border,
- &.#{$keyrune-prefix}-duo {
- -webkit-text-stroke: 0;
- }
- &.#{$keyrune-prefix}-duo::after {
- -webkit-text-fill-color: inherit;
- }
- }
-}
\ No newline at end of file
diff --git a/sass/_typography.scss b/sass/_typography.scss
deleted file mode 100644
index 758030b..0000000
--- a/sass/_typography.scss
+++ /dev/null
@@ -1,11 +0,0 @@
-@font-face {
- font-family: "#{$keyrune_font_face}";
- src:url('#{$keyrune_font_path}' + '/keyrune.eot?v=' + '#{$keyrune_version}');
- src:url('#{$keyrune_font_path}' + '/keyrune.eot?#iefix&v=' + '#{$keyrune_version}') format('embedded-opentype'),
- url('#{$keyrune_font_path}' + '/keyrune.woff2?v=' + '#{$keyrune_version}') format('woff2'),
- url('#{$keyrune_font_path}' + '/keyrune.woff?v=' + '#{$keyrune_version}') format('woff'),
- url('#{$keyrune_font_path}' + '/keyrune.ttf?v=' + '#{$keyrune_version}') format('truetype'),
- url('#{$keyrune_font_path}' + '/keyrune.svg?v=' + '#{$keyrune_version}' + '#keyrune') format('svg');
- font-weight: $keyrune_font_weight;
- font-style: $keyrune_font_style;
-}
diff --git a/sass/_variables.scss b/sass/_variables.scss
deleted file mode 100644
index a1ab8c7..0000000
--- a/sass/_variables.scss
+++ /dev/null
@@ -1,555 +0,0 @@
-/**
- * Globals */
-
-$keyrune_version: '3.17.1' !default;
-$keyrune_font_path: '../fonts' !default;
-
-// font specific
-$keyrune_font_style: normal !default;
-$keyrune_font_variant: normal !default;
-$keyrune_font_weight: normal !default;
-$keyrune_font_size: 14px !default;
-$keyrune_font_face: 'Keyrune' !default;
-$keyrune_font: $keyrune_font_style $keyrune_font_variant $keyrune_font_weight calc($keyrune_font_size/1) $keyrune_font_face !default;
-$keyrune_prefix: 'ss' !default;
-$keyrune_default_content: "\e684" !default;
-$keyrune_background_clip: text !default;
-$keyrune_text_fill: transparent !default;
-
-// colors
-$black: #000 !default;
-$white: #fff !default;
-$keyrune_palette: (
- ('common', #1a1718, #302b2c, #474040, #000),
- ('uncommon', #707883, #5a6572, #9e9e9e, #111),
- ('rare', #a58e4a, #876a3b, #dfbd6b, #333),
- ('mythic', #bf4427, #b21f0f, #f38300, #333),
- ('timeshifted', #652978, #652978, #c09ac5, #333)
-) !default;
-
-// sizes
-$keyrune_sizes: (
- '2x': 2em,
- '3x': 3em,
- '4x': 4em,
- '5x': 5em,
- '6x': 6em
-) !default;
-
-// special corrections for certain symbols when adding the border style
-$border-corrections: (
- ("Vanguard", "van", "\e655"),
- ("Archenemy", "arc", "\e657"),
- ("Commander 2013", "c13", "\e65b"),
- ("Commander 2014", "c14", "\e65d"),
- ("Commander 2015", "c15", "\e900"),
- ("Commander 2016", "c16", "\e9e5"),
- ("Commander's Arsenal", "cm1", "\e65a"),
- ("Commander", "cmd", "\e658"),
- ("Conspiracy", "cns", "\e65c"),
- ("Aetherdrift", "dft", "\e9e0"),
- ("Dominaria United Commander", "dmc", "\e996"),
- ("Aetherdrift Commander", "drc", "\e9ea"),
- ("Duskmourn Commander", "dsc", "\e9dd"),
- ("Final Fantasy", "fin", "\e9ef"),
- ("Planechase 2009", "hop", "\e656"),
- ("Innistrad Remastered", "inr", "\e9e3"),
- ("Planechase 2012", "pc2", "\e659"),
- ("Shadows of the Past", "sis", "\e9b2"),
- ("Tarkir Dragonstorm", "tdm", "\e9ec"),
- ("Vanguard", "van", "\e655")
-) !default;
-
-// dual-layered symbols (work in progress)
-$dual-layered: (
- '40k': '\e99b',
- 'afc': '\e982',
- 'afr': '\e973',
- 'c21': '\e97f',
- 'clb': '\e992',
- 'cc2': '\e988',
- 'dmc': '\e997',
- 'drc': '\e9eb',
- 'dsc': '\e9de',
- 'j21': '\e984',
- 'khc': '\e9c6',
- 'ltc': '\e9b8',
- 'm3c': '\e9d1',
- 'mar': '\e9fa',
- 'mid': '\e979',
- 'otc': '\e9d3',
- 'ncc': '\e990',
- 'scd': '\e9ac',
- 'spm': '\e9f2',
- 'tla': '\e9fe',
- 'una': '\e9bf'
-) !default;
-
-// sets
-$keyrune_sets: (
- // core sets
- ("Alpha", "lea", "\e600"),
- ("Beta", "leb", "\e601"),
- ("Unlimited", "2ed", "\e602"),
- ("Revised", "3ed", "\e603"),
- ("4th Edition", "4ed", "\e604"),
- ("Summer Magic", "psum", "\e605"),
- ("5th Edition", "5ed", "\e606"),
- ("6th Edition", "6ed", "\e607"),
- ("7th Edition", "7ed", "\e608"),
- ("8th Edition", "8ed", "\e609"),
- ("9th Edition", "9ed", "\e60a"),
- ("10th Edition", "10e", "\e60b"),
- ("Magic 2010", "m10", "\e60c"),
- ("Magic 2011", "m11", "\e60d"),
- ("Magic 2012", "m12", "\e60e"),
- ("Magic 2013", "m13", "\e60f"),
- ("Magic 2014", "m14", "\e610"),
- ("Magic 2015", "m15", "\e611"),
- ("Core background", "bcore", "\e612"),
- ("Magic Origins", "ori", "\e697"),
- ("Magic 2019", "m19", "\e941"),
- ("Magic 2020", "m20", "\e95d"),
- ("Alpha (MODO)", "1e", "\e947"),
- ("Beta (MODO)", "2e", "\e948"),
- ("Unlimited (MODO)", "2u", "\e949"),
- ("Revised (MODO)", "3e", "\e94a"),
- ("Core 2021", "m21", "\e960"),
- ("Adventures in the Forgotten Realms", "xdnd", "\e972"),
- ("Adventures in the Forgotten Realms", "afr", "\e972"),
- ("Foundations", "fdn", "\e9d8"),
- //
- // Artifact block
- ("Arabian Nights", "arn", "\e613"),
- ("Antiquities", "atq", "\e614"),
- ("Legends", "leg", "\e615"),
- // Wizards block
- ("The Dark", "drk", "\e616"),
- ("Fallen Empires", "fem", "\e617"),
- ("Homelands", "hml", "\e618"),
- // Ice Age block
- ("Ice Age", "ice", "\e619"),
- ("Ice Age (Original)", "ice2", "\e925"),
- ("Alliances", "all", "\e61a"),
- ("Coldsnap", "csp", "\e61b"),
- // Mirage block
- ("Mirage", "mir", "\e61c"),
- ("Visions", "vis", "\e61d"),
- ("Weatherlight", "wth", "\e61e"),
- // Tempest block
- ("Tempest", "tmp", "\e61f"),
- ("Stronghold", "sth", "\e620"),
- ("Exodus", "exo", "\e621"),
- // Urza's block
- ("Urza's Saga", "usg", "\e622"),
- ("Urza's Legacy", "ulg", "\e623"),
- ("Urza's Destiny", "uds", "\e624"),
- // Mercadian block
- ("Mercadian Masque", "mmq", "\e625"),
- ("Nemesis", "nem", "\e626"),
- ("Nemesis", "nms", "\e626"),
- ("Prophecy", "pcy", "\e627"),
- // Invasion block
- ("Invasion", "inv", "\e628"),
- ("Planeshift", "pls", "\e629"),
- ("Apocalypse", "apc", "\e62a"),
- // Odyssey block
- ("Odyssey", "ody", "\e62b"),
- ("Torment", "tor", "\e62c"),
- ("Judgement", "jud", "\e62d"),
- // Onslaught block
- ("Onslaught", "ons", "\e62e"),
- ("Legions", "lgn", "\e62f"),
- ("Scourge", "scg", "\e630"),
- // Mirrodin block
- ("Mirrodin", "mrd", "\e631"),
- ("Darksteel", "dst", "\e632"),
- ("5th Dawn", "5dn", "\e633"),
- // Kamigawa block
- ("Champions of Kamigawa", "chk", "\e634"),
- ("Betrayers of Kamigawa", "bok", "\e635"),
- ("Saviors of Kamigawa", "sok", "\e636"),
- // Ravnica block
- ("Ravnica", "rav", "\e637"),
- ("Guildpact", "gpt", "\e638"),
- ("Dissension", "dis", "\e639"),
- // Time Spiral block
- ("Time Spiral", "tsp", "\e63a"),
- ("Planeshift", "plc", "\e63b"),
- ("Future Sight", "fut", "\e63c"),
- // Lorwyn block
- ("Lorwyn", "lrw", "\e63d"),
- ("Morningtide", "mor", "\e63e"),
- // Shadowmoor block
- ("Shadowmoor", "shm", "\e63f"),
- ("Eventide", "eve", "\e640"),
- // Alara block
- ("Shards of Alara", "ala", "\e641"),
- ("Conflux", "con", "\e642"),
- ("Alara Reborn", "arb", "\e643"),
- // Zendikar block
- ("Zendikar", "zen", "\e644"),
- ("Worldwake", "wwk", "\e645"),
- ("Rise of Eldrazi", "roe", "\e646"),
- // Scars block
- ("Scars of Mirrodin", "som", "\e647"),
- ("Mirrodin Besieged", "mbs", "\e648"),
- ("New Phyrexia", "nph", "\e649"),
- // Innistrad block
- ("Innistrad", "isd", "\e64a"),
- ("Dark Ascension", "dka", "\e64b"),
- ("Avacyn Restored", "avr", "\e64c"),
- // Return to Ravnica block
- ("Return to Ravnica", "rtr", "\e64d"),
- ("Gatecrash", "gtc", "\e64e"),
- ("Dragon's Maze", "dgm", "\e64f"),
- // Theros block
- ("Theros", "ths", "\e650"),
- ("Born of the Gods", "bng", "\e651"),
- ("Journey into Nyx", "jou", "\e652"),
- // Khans block
- ("Khans of Tarkir", "ktk", "\e653"),
- ("Fate Reforged", "frf", "\e654"),
- ("Dragons of Tarkir", "dtk", "\e693"),
- // Return to Zendikar block
- ("Battle for Zendikar", "bfz", "\e699"),
- ("Oath of the Gatewatch", "ogw", "\e901"),
- // Return to Innistrad block
- ("Shadows Over Innistrad", "soi", "\e902"),
- ("Eldritch Moon", "emn", "\e90b"),
- // Kaladesh block
- ("Kaladesh", "kld", "\e90e"),
- ("Aether Revolt", "aer", "\e90f"),
- // Amonkhet block
- ("Amonkhet", "akh", "\e914"),
- ("Hour of Devastation", "hou", "\e924"),
- // Ixalan block
- ("Ixalan", "xln", "\e92e"),
- ("Rivals of Ixalan", "rix", "\e92f"),
- // Dominaria block
- ("Dominaria", "dom", "\e93f"),
- // Guilds of Ravnica block
- ("Guilds of Ravnica", "grn", "\e94b"),
- ("GRN Guild Kits", "gk1", "\e94b"),
- ("Ravnica Allegiance", "rna", "\e959"),
- ("RNA Guild Kits", "gk2", "\e959"),
- ("War of the Spark", "war", "\e95a"),
- // Eldraine block
- ("Throne of Eldraine", "eld", "\e95e"),
- // 2020 sets
- ("Theros: Beyond Death", "thb", "\e961"),
- ("Ikoria: Lair of Behemoths", "iko", "\e962"),
- ("Zendikar Rising", "znr", "\e963"),
- // 2021 sets
- ("Kaldheim", "khm", "\e974"),
- ("Strixhaven: School of Mages", "stx", "\e975"),
- ("Innistrad: Midnight Hunt", "mid", "\e978"),
- ("Innistrad: Crimson Vow", "vow", "\e977"),
- // 2022 sets
- ("Kamigawa: Neon Dynasty", "neo", "\e98c"),
- ("Streets of New Capenna", "snc", "\e98b"),
- ("Dominaria United", "dmu", "\e993"),
- ("The Brothers' War", "bro", "\e99d"),
- // 2023 sets
- ("Phyrexia: All Will Be One", "one", "\e9a1"),
- ("March of the Machine", "mom", "\e9a2"),
- ("March of the Machine: The Aftermath", "mat", "\e9a3"),
- ("Wilds of Eldraine", "woe", "\e9ae"),
- ("Lost Caverns of Ixalan", "lci", "\e9c2"),
- // 2024 Sets
- ("Murders at Karlov Manor", "mkm", "\e9c9"),
- ("Outlaws of Thunder Junction", "otj", "\e9cc"),
- ("Bloomburrow", "blb", "\e9cd"),
- ("Duskmourn: House of Horror", "dsk", "\e9d7"),
- // 2025 sets
- ("Aetherdrift", "dft", "\e9e0"),
- ("Tarkir: Dragonstorm", "tdm", "\e9e6"),
- ("Final Fantasy", "fin", "\e9ed"),
- ("Edge of Eternities", "eoe", "\e9f0"),
- ("Marvel Spider-Man", "spm", "\e9f1"),
- ("Avatar: the Last Airbender", "tla", "\e9fb"),
- // Command zone
- ("Vanguard", "van", "\e655"),
- ("Planechase 2009", "hop", "\e656"),
- ("Archenemy", "arc", "\e657"),
- ("Commander", "cmd", "\e658"),
- ("Planechase 2012", "pc2", "\e659"),
- ("Commander's Arsenal", "cm1", "\e65a"),
- ("Commander 2013", "c13", "\e65b"),
- ("Conspiracy", "cns", "\e65c"),
- ("Commander 2014", "c14", "\e65d"),
- ("Commander 2015", "c15", "\e900"),
- ("Conspiracy 2, Take", "cn2", "\e904"),
- ("Commander 2016", "c16", "\e9e5"),
- ("Planechase Anthology", "pca", "\e911"),
- ("Commander Anthology", "cma", "\e916"),
- ("Archenemy: Nicol Bolas", "e01", "\e92d"),
- ("Archenemy: Nicol Bolas", "ann", "\e92d"),
- ("Explorers of Ixalan", "e02", "\e931"),
- ("Commander 2017", "c17", "\e934"),
- ("Commander Anthology 2", "cm2", "\e940"),
- ("Battlebond", "bbd", "\e942"),
- ("Commander 2018", "c18", "\e946"),
- ("Commander 2019", "c19", "\e95f"),
- ("Ikoria: Commander 2020", "c20", "\e966"),
- ("Zendikar Rising: Commander Decks", "znc", "\e967"),
- ("Commander Collection: Green", "cc1", "\e968"),
- ("Commander Legends", "cmr", "\e969"),
- ("Commander Legends Decks", "cmc", "\e969"),
- ("Kaldheim Commander", "khc", "\e97d"),
- ("Commander 2021", "c21", "\e97e"),
- ("Forgotten Realms Commander", "afc", "\e981"),
- ("Innistrad: Midnight Hunt Commander", "mic", "\e985"),
- ("Innistrad: Crimson Vow Commander", "voc", "\e986"),
- ("Commander Collection: Black", "cc2", "\e987"),
- ("Kamigawa: Neon Dynasty Commander", "nec", "\e98d"),
- ("Streets of New Capenna Commander", "ncc", "\e98e"),
- ("Commander Legends: Battle for Baldur's Gate", "clb", "\e991"),
- ("Dominaria United Commander", "dmc", "\e994"),
- ("Warhammer 40K", "40k", "\e998"),
- ("The Brothers' War Commander", "brc", "\e99f"),
- ("Phyrexia: All Will Be One Commander", "onc", "\e9a8"),
- ("March of the Machines Commander", "moc", "\e9a9"),
- ("Starter Commander Decks", "scd", "\e9ab"),
- ("Commander Masters", "cmm", "\e9b5"),
- ("The Lord of the Rings: Tales of Middle-Earth Commander", "ltc", "\e9b6"),
- ("Wilds of Eldraine Commander", "woc", "\e9b9"),
- ("Lost Caverns of Ixalan Commander", "lcc", "\e9c7"),
- ("Murders at Karlov Manor Commander", "mkc", "\e9ca"),
- ("Outlaws of Thunder Junction Commander", "otc", "\e9d2"),
- ("Bloomburrow Commander", "blc", "\e9d4"),
- ("Modern Horizons 3 Commander", "m3c", "\e9d0"),
- ("Duskmourn Commander", "dsc", "\e9dc"),
- ("Foundations Commander", "fdc", "\e9e4"),
- ("Aetherdrift Commander", "drc", "\e9e8"),
- ("Tarkir Dragonstorm Commander", "tdc", "\e9f4"),
- ("Final Fantasy Commander", "fic", "\e9f5"),
- ("Edge of Eternities Commander", "eoc", "\e9f6"),
- //
- // Reprint sets
- ("Chronicles", "chr", "\e65e"),
- ("Anthologies", "ath", "\e65f"),
- ("Battle Royale", "brb", "\e660"),
- ("Beatdown", "btd", "\e661"),
- ("Deckmasters", "dkm", "\e662"),
- ("Modern Masters", "mma", "\e663"),
- ("Modern Masters 2015", "mm2", "\e695"),
- ("Eternal Masters", "ema", "\e903"),
- ("Modern Masters 2017", "mm3", "\e912"),
- ("Renaissance", "xren", "\e917"),
- ("Rinascimento", "xrin", "\e918"),
- ("Iconic Masters", "ima", "\e935"),
- ("Masters 25", "a25", "\e93d"),
- ("Ultimate Masters", "uma", "\e958"),
- ("Modern Horizons", "mh1", "\e95b"),
- ("Double Masters", "2xm", "\e96e"),
- ("Jumpstart", "jmp", "\e96f"),
- ("Mystery Booster", "mb1", "\e971"),
- ("Modern Horizons 2", "mh2", "\e97b"),
- ("Strixhaven: Mystical Archives", "sta", "\e980"),
- ("Jumpstart: Historic Horizons", "j21", "\e983"),
- ("Double Masters 2022", "2x2", "\e99c"),
- ("The Brothers' War Retro Artifacts", "brr", "\e9a0"),
- ("Jumpstart 2022", "j22", "\e9ad"),
- ("Multiverse Legends", "mul", "\e9ba"),
- ("Wilds of Eldraine Enchanting Tales", "wot", "\e9c0"),
- ("Battle Royale (alternate)", "br", "\e9c1"),
- ("Special Guests", "spg", "\e9c8"),
- ("Breaking News", "otp", "\e9d5"),
- ("The Big Score", "big", "\e9d6"),
- ("Modern Horizons 2 Timeshifts", "h2r", "\e97b"),
- ("Mystery Booster 2", "mb2", "\e9d9"),
- ("Jumpstart 2025 (Alternate)", "j25a", "\e9db"),
- ("Jumpstart 2025", "j25", "\e9df"),
- ("Pioneer Masters", "pio", "\e9e7"),
- ("Final Fantasy: Through the Ages", "fca", "\e9f8"),
- ("Marvel (TBD)", "mar", "\e9f6"),
- //
- // Beginner
- ("Portal", "por", "\e664"),
- ("Portal 2", "p02", "\e665"),
- ("Portal 2", "po2", "\e665"),
- ("Portal 3 Kingdoms", "ptk", "\e666"),
- ("Starter 1999", "s99", "\e667"),
- ("Starter 2000", "s00", "\e668"),
- ("Welcome Deck 2016", "w16", "\e907"),
- ("Welcome Deck 2017", "w17", "\e923"),
- //
- // Duel Decks
- ("Elves vs. Goblins", "evg", "\e669"),
- ("Jace vs. Chandra", "dd2", "\e66a"),
- ("Divine vs. Demonic", "ddc", "\e66b"),
- ("Garruk vs. Liliana", "ddd", "\e66c"),
- ("Phyrexia vs.", "dde", "\e66d"),
- ("Elspeth vs.", "ddf", "\e66e"),
- ("Knights vs. Dragons", "ddg", "\e66f"),
- ("Ajani vs. Nicol", "ddh", "\e670"),
- ("Venser vs. Koth", "ddi", "\e671"),
- ("Izzet vs. Golgari", "ddj", "\e672"),
- ("Sorin vs. Tibalt", "ddk", "\e673"),
- ("Heroes vs. Monsters", "ddl", "\e674"),
- ("Jace vs. Vraska", "ddm", "\e675"),
- ("Speed vs. Cunning", "ddn", "\e676"),
- ("Kiora vs. Elspeth", "ddo", "\e677"),
- ("Zendikar vs.", "ddp", "\e698"),
- ("Blessed vs. Cursed", "ddq", "\e908"),
- ("Nissa vs. Ob Nixilis", "ddr", "\e90d"),
- ("New Phyrexia vs. Mirrodin Pure", "td2", "\e91c"),
- ("Mind vs. Might", "dds", "\e921"),
- ("Merfolk vs. Goblins", "ddt", "\e933"),
- ("Elves vs. Inventors", "ddu", "\e93e"),
- //
- // From the Vaults
- ("Dragons", "drb", "\e678"),
- ("Exiled", "v09", "\e679"),
- ("Relics", "v10", "\e67a"),
- ("Legends", "v11", "\e67b"),
- ("Realms", "v12", "\e67c"),
- ("Twenty", "v13", "\e67d"),
- ("Annihilation", "v14", "\e67e"),
- ("Angels", "v15", "\e905"),
- ("Lore", "v16", "\e906"),
- ("Vaults", "v0x", "\e920"),
- ("Transform", "v17", "\e939"),
- //
- // Premium Deck Series
- ("Slivers", "h09", "\e67f"),
- ("Fire & Lightning", "pd2", "\e680"),
- ("Graveborn", "pd3", "\e681"),
- ("Modern Event Deck", "md1", "\e682"),
- //
- // Signature Spellbook
- ("Jace", "ss1", "\e944"),
- ("Gideon", "ss2", "\e95c"),
- ("Chandra", "ss3", "\e96d"),
- //
- // Global Series
- ("Jiang Yanggu & Mu Yanling", "gs1", "\e945"),
- //
- // Guild Kits
- ("Azorius", "azorius", "\e94e"),
- ("Boros", "boros", "\e94f"),
- ("Dimir", "dimir", "\e950"),
- ("Golgari", "golgari", "\e951"),
- ("Gruul", "gruul", "\e952"),
- ("Izzet", "izzet", "\e953"),
- ("Orzhov", "orzhov", "\e954"),
- ("Rakdos", "rakdos", "\e955"),
- ("Selesnya", "selesnya", "\e956"),
- ("Simic", "simic", "\e957"),
- //
- // Other supplemental products
- ("Game Night", "gnt", "\e94d"),
- ("Game Night 2019", "gn2", "\e964"),
- ("Time Spiral Remastered", "tsr", "\e976"),
- ("Dominaria Remastered", "dmr", "\e9a4"),
- ("Game Night: Free for All", "gn3", "\e9a5"),
- ("The Lord of the Rings: Tales of Middle-Earth", "ltr", "\e9af"),
- ("Universes Beyond: Doctor Who", "who", "\e9b0"),
- ("Ravnica Remastered", "rvr", "\e9bb"),
- ("Universes Beyond: Fallout", "pip", "\e9c3"),
- ("Ravnica: Clue Edition", "clu", "\e9cb"),
- ("Universes Beyond: Assassin's Creed", "acr", "\e9ce"),
- ("Modern Horizons 3", "mh3", "\e9cf"),
- ("Innistrad Remastered", "inr", "\e9e2"),
- ("Marvel Spider-Man Scene", "spe", "\e9f3"),
- //
- // Promos
- ("Guru", "pgru", "\e683"),
- ("Magic symbol", "pmtg1", "\e684"),
- ("Magic symbol", "pmtg2", "\e685"),
- ("Leaf", "pleaf", "\e686"),
- ("Media Insert", "pmei", "\e687"),
- ("DCI (Arena)", "parl", "\e688"),
- ("Dragons", "dpa", "\e689"),
- ("Book Insert", "pbook", "\e68a"),
- ("Astral", "past", "\e68b"),
- ("Arena logo", "parl2", "\e68c"),
- ("Zendikar", "exp", "\e69a"),
- ("Salvat 2005", "psalvat05", "\e909"),
- ("Salvat 2011", "psalvat11", "\e90a"),
- ("Kaladesh Inventions", "mp1", "\e913"),
- ("Kaladesh Inventions", "mps", "\e913"),
- ("Xbox Media Promo", "pxbox", "\e915"),
- ("Magic Premiere Shop", "pmps", "\e919"),
- ("Mirrodin Pure", "pmpu", "\e91a"),
- ("Amonkhet Invocations", "mp2", "\e922"),
- ("IDW Promo", "pidw", "\e92c"),
- ("Dragon*Con Promo", "pdrc", "\e932"),
- ("Phoenix Heart Celebration", "pheart", "\e936"),
- ("HasCon 2017", "h17", "\e938"),
- ("Duelist Extra Pulled", "pdep", "\e93a"),
- ("Sega Dreamcast", "psega", "\e93b"),
- ("The Sorcerer's Apprentice", "ptsa", "\e93c"),
- ("Arena (MTGO)", "parl3", "\e943"),
- ("Heroes of the Realm 2016", "htr", "\e687"),
- ("Mythic Edition", "med", "\e94c"),
- ("Ponies: the Galloping", "ptg", "\e965"),
- ("Heroes of the Realm 2017", "htr17", "\e687"),
- ("Judge Academy 2020", "j20", "\e96a"),
- ("Zendikar Rising Expeditions", "zne", "\e97a"),
- ("The Brothers' War Transformers", "bot", "\e99e"),
- ("Jurassic World", "rex", "\e9c4"),
- ("Edge of Eternities: Stellar Sights", "eos", "\ea00"),
- //
- // Secret Lairs
- ("Secret Lair: Ultimate Edition", "slu", "\e687"),
- ("Secret Lair Drop", "sld", "\e687"),
- ("Secret Lair Drop Promos", "psld", "\e687"),
- ("Secret Lair Logo", "sld2", "\e9bc"),
- //
- // Digital
- ("Masters Edition", "me1", "\e68d"),
- ("Masters Edition II", "me2", "\e68e"),
- ("Masters Edition III", "me3", "\e68f"),
- ("Masters Edition IV", "me4", "\e690"),
- ("Tempest Remastered", "tpr", "\e694"),
- ("Vintage Masters", "vma", "\e696"),
- ("Legendary Cube", "xlcu", "\e90c"),
- ("Legendary Cube", "pz1", "\e90c"),
- ("Magic Online", "modo", "\e91b"),
- ("Magic Online", "pmodo", "\e91b"),
- ("Magic Duels", "duels", "\e91d"),
- ("Magic Duels", "xduels", "\e91d"),
- ("Magic Online Deck Series", "xmods", "\e91e"),
- ("Treasure Chests", "pz2", "\e91f"),
- ("Historic Anthology 1", "ha1", "\e96b"),
- ("Amonkhet Remastered", "akr", "\e970"),
- ("Kaladesh Remastered", "klr", "\e97c"),
- ("Alchemy 2022", "y22", "\e989"),
- ("Alchemy Horizons: Baldur's Gate", "hbg", "\e9a6"),
- ("Alchemy 2023", "y23", "\e9a7"),
- ("Alchemy: Dominaria", "ydmu", "\e9a7"),
- ("Shadows Over Innistrad", "sir", "\e9b1"),
- ("Shadows of the Past", "sis", "\e9b2"),
- ("Explorer Anthology 1", "ea1", "\e9b4"),
- ("Alchemy 2024", "y24", "\e9bd"),
- ("Alchemy 2025", "y25", "\e9da"),
- ("Alchemy Bloomburrow", "yblb", "\e9da"),
- ("Puzzle Masters", "pma", "\ea01"),
- ("Puzzle Masters 2", "pm2", "\ea02"),
- ("Daxos vs. Kalemne (Puzzle Masters)", "dvk", "\ea03"),
- //
- // Unsets
- ("Unglued", "ugl", "\e691"),
- ("Unhinged", "unh", "\e692"),
- ("Unstable", "ust", "\e930"),
- ("Unsanctioned", "und", "\e96c"),
- ("Unfinity", "unf", "\e98a"),
- ("Unfinity Acorns", "una", "\e9be"),
- //
- // Unoffocial
- ("Collector's Edition", "xcle", "\e926"),
- ("International Collector's Edition", "xice", "\e927"),
- ("Two Player Introductory Set", "x2ps", "\e928"),
- ("Alternate 4th Edition", "x4ea", "\e929"),
- ("APAC Lands", "papac", "\e92a"),
- ("Euro Lands", "peuro", "\e92b"),
- ("Friday Night Magic", "pfnm", "\e937"),
- ("30th Anniversary Edition", "30a", "\e9aa")
-) !default;
-
-// display glyph correctly
-@function ss-content($glyph) {
- @return unquote("\"#{$glyph}\"");
-}
\ No newline at end of file
diff --git a/sass/keyrune.scss b/sass/keyrune.scss
deleted file mode 100644
index 115ff1d..0000000
--- a/sass/keyrune.scss
+++ /dev/null
@@ -1,5 +0,0 @@
-@import 'variables';
-@import 'typography';
-@import 'icons';
-@import 'rarities';
-@import 'helpers';
diff --git a/svg/fra.svg b/svg/fra.svg
new file mode 100644
index 0000000..ffc97c5
--- /dev/null
+++ b/svg/fra.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/hob.svg b/svg/hob.svg
new file mode 100644
index 0000000..b15bb82
--- /dev/null
+++ b/svg/hob.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/hoc.svg b/svg/hoc.svg
new file mode 100644
index 0000000..fce47f2
--- /dev/null
+++ b/svg/hoc.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/msc.svg b/svg/msc.svg
new file mode 100644
index 0000000..e0227d4
--- /dev/null
+++ b/svg/msc.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/msh.svg b/svg/msh.svg
new file mode 100644
index 0000000..e10a76e
--- /dev/null
+++ b/svg/msh.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/soa-border.svg b/svg/soa-border.svg
new file mode 100644
index 0000000..d1d2033
--- /dev/null
+++ b/svg/soa-border.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/soa.svg b/svg/soa.svg
new file mode 100644
index 0000000..4a65f7e
--- /dev/null
+++ b/svg/soa.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/soc-inner.svg b/svg/soc-inner.svg
new file mode 100644
index 0000000..26effc7
--- /dev/null
+++ b/svg/soc-inner.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/soc.svg b/svg/soc.svg
new file mode 100644
index 0000000..031e349
--- /dev/null
+++ b/svg/soc.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/sos.svg b/svg/sos.svg
new file mode 100644
index 0000000..48c6d12
--- /dev/null
+++ b/svg/sos.svg
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/svg/y26.svg b/svg/y26.svg
new file mode 100644
index 0000000..4a77b61
--- /dev/null
+++ b/svg/y26.svg
@@ -0,0 +1,4 @@
+
+
+
+