Spearhead Blocks refactored Initial Commit (#6435)

* Spearhead Blocks refactored Initial Commit

Refactored commit of Spearhead Blocks, now being a clone of Block Canvas, instead of child of Blockbase

* Review updates

- removal of ref id from header template
- dark mode editor style added
- unused tertiary color removed from the palette
- screenshot added

* Fixes to Theme.json and Footer Template

This commit fixes the issues mentioned in the PR

- Footer template now has the site title in it
- Block spacing and font weight fixes
This commit is contained in:
Onur Oztaskiran 2022-09-13 02:18:21 +03:00 committed by GitHub
parent e9aceb0804
commit 35f742de5c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
101 changed files with 2202 additions and 0 deletions

8
spearhead-blocks/.gitignore vendored Normal file
View file

@ -0,0 +1,8 @@
# macOS Files
.DS_Store
# Codekit
*.codekit3
# Main Sass File
style.scss

View file

@ -0,0 +1,699 @@
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Thin-italic.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Thin-italic.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Thin-italic.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Thin-italic.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-Thin-italic.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-ExtraLight-italic.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ExtraLight-italic.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-ExtraLight-italic.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-ExtraLight-italic.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-ExtraLight-italic.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Light-italic.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Light-italic.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Light-italic.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Light-italic.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-Light-italic.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Regular-italic.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Regular-italic.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Regular-italic.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Regular-italic.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-Regular-italic.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Medium-italic.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Medium-italic.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Medium-italic.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Medium-italic.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-Medium-italic.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-SemiBold-italic.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-SemiBold-italic.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-SemiBold-italic.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-SemiBold-italic.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-SemiBold-italic.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Bold-italic.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Bold-italic.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Bold-italic.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Bold-italic.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: italic;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-Bold-italic.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Thin.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Thin.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Thin.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Thin.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 100;
font-display: swap;
src: url(./ibm-plex-mono-Thin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-ExtraLight.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ExtraLight.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-ExtraLight.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-ExtraLight.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 200;
font-display: swap;
src: url(./ibm-plex-mono-ExtraLight.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Light.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Light.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Light.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Light.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 300;
font-display: swap;
src: url(./ibm-plex-mono-Light.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Regular.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Regular.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Regular.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Regular.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(./ibm-plex-mono-Regular.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Medium.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Medium.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Medium.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Medium.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(./ibm-plex-mono-Medium.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-SemiBold.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-SemiBold.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-SemiBold.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-SemiBold.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(./ibm-plex-mono-SemiBold.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-ext-Bold.woff2) format('woff2');
unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-cyrillic-Bold.woff2) format('woff2');
unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-vietnamese-Bold.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-latin-ext-Bold.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'IBM Plex Mono';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(./ibm-plex-mono-Bold.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

View file

@ -0,0 +1,59 @@
/* vietnamese */
@font-face {
font-family: 'Libre Franklin';
font-style: italic;
font-weight: 100 900;
font-display: swap;
src: url(./libre-franklin-vietnamese-100-900-italic.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'Libre Franklin';
font-style: italic;
font-weight: 100 900;
font-display: swap;
src: url(./libre-franklin-latin-ext-100-900-italic.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Libre Franklin';
font-style: italic;
font-weight: 100 900;
font-display: swap;
src: url(./libre-franklin-100-900-italic.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
font-family: 'Libre Franklin';
font-style: normal;
font-weight: 100 900;
font-display: swap;
src: url(./libre-franklin-vietnamese-100-900.woff2) format('woff2');
unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
font-family: 'Libre Franklin';
font-style: normal;
font-weight: 100 900;
font-display: swap;
src: url(./libre-franklin-latin-ext-100-900.woff2) format('woff2');
unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Libre Franklin';
font-style: normal;
font-weight: 100 900;
font-display: swap;
src: url(./libre-franklin-100-900.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

View file

@ -0,0 +1,86 @@
<?php
/**
* Spearhead Blocks functions and definitions
*
* @link https://developer.wordpress.org/themes/basics/theme-functions/
*
* @package Spearhead Blocks
* @since Spearhead Blocks 1.0
*/
if ( ! function_exists( 'spearhead_blocks_support' ) ) :
/**
* Sets up theme defaults and registers support for various WordPress features.
*
* @since Spearhead Blocks 1.0
*
* @return void
*/
function spearhead_blocks_support() {
// Enqueue editor styles.
add_editor_style( 'style.css' );
}
endif;
add_action( 'after_setup_theme', 'spearhead_blocks_support' );
if ( ! function_exists( 'spearhead_blocks_styles' ) ) :
/**
* Enqueue styles.
*
* @since Spearhead Blocks 1.0
*
* @return void
*/
function spearhead_blocks_styles() {
// Register theme stylesheet.
wp_register_style(
'spearhead_blocks-style',
get_template_directory_uri() . '/style.css',
array(),
wp_get_theme()->get( 'Version' )
);
// Enqueue theme stylesheet.
wp_enqueue_style( 'spearhead_blocks-style' );
}
endif;
add_action( 'wp_enqueue_scripts', 'spearhead_blocks_styles' );
require get_template_directory() . '/inc/fonts/custom-fonts.php';
function spearhead_blocks_the_excerpt( $excerpt ) {
$audio_block = '';
if ( has_block( 'audio' ) ) {
$post = get_post();
$blocks = parse_blocks( $post->post_content );
foreach ( $blocks as $block ) {
if ( 'core/audio' === $block['blockName'] ) {
$audio_block .= '<div class="excerpt-audio-block">' . wp_kses_post( $block['innerHTML'] ) . '</div>';
break;
}
}
}
// For cases where the post excerpt is empty
// (but the post might have content)
if ( 0 === strlen( $excerpt ) ) {
return $excerpt . $audio_block;
}
return $excerpt . $audio_block;
}
// Filter the excerpt
add_filter( 'get_the_excerpt', 'spearhead_blocks_the_excerpt' );

View file

@ -0,0 +1,137 @@
<?php
add_action( 'init', 'migrate_spearhead_blocks_custom_fonts', 99 );
function migrate_spearhead_blocks_custom_fonts() {
$heading_font_slug = null;
$body_font_slug = null;
// Here we must use gutenberg_get_global_* because it introduces clean_cached_data() which we
// need to leverage as we are modifying the values of global styles settings and styles on page load.
if ( function_exists( 'gutenberg_get_global_settings' ) ) {
$font_families = gutenberg_get_global_settings( array( 'typography', 'fontFamilies' ) );
} else {
$font_families = wp_get_global_settings( array( 'typography', 'fontFamilies' ) );
}
if ( isset( $font_families['custom'] ) && is_array( $font_families['custom'] ) ) {
$font_families = $font_families['custom'];
} else {
$font_families = $font_families['theme'];
}
// Look first for fonts customized via Customizer, then for fonts configured in the child theme.json "the old way"
// Also count fonts registerd to the spearhead-blocks font provider
foreach ( $font_families as $font_family ) {
if ( strpos( $font_family['slug'], 'heading' ) !== false && array_key_exists( 'fontSlug', $font_family ) ) {
$heading_font_slug = $font_family['fontSlug'];
}
if ( strpos( $font_family['slug'], 'body' ) !== false && array_key_exists( 'fontSlug', $font_family ) ) {
$body_font_slug = $font_family['fontSlug'];
}
}
if ( ! $body_font_slug && ! $heading_font_slug ) {
//nothing to convert
return;
}
$theme_user_data = WP_Theme_JSON_Resolver::get_user_data()->get_raw_data();
$new_settings = array();
$new_styles = array();
if ( array_key_exists( 'settings', $theme_user_data ) ) {
$new_settings = $theme_user_data['settings'];
}
if ( array_key_exists( 'styles', $theme_user_data ) ) {
$new_styles = $theme_user_data['styles'];
}
if ( $body_font_slug ) {
$new_styles = array_merge(
$new_styles,
array(
'typography' => array(
'fontFamily' => "var:preset|font-family|$body_font_slug",
),
)
);
}
if ( $heading_font_slug ) {
$new_styles = array_merge(
$new_styles,
array(
'blocks' => array(
'core/post-title' => array(
'typography' => array(
'fontFamily' => "var:preset|font-family|$heading_font_slug",
),
),
'core/heading' => array(
'typography' => array(
'fontFamily' => "var:preset|font-family|$heading_font_slug",
),
),
),
)
);
}
if ( $heading_font_slug || $body_font_slug ) {
unset( $new_settings['typography']['fontFamilies'] );
}
update_global_styles( $new_settings, $new_styles );
}
/**
* Updates the global styles CPT.
*
* @param array $new_settings New global styles to update.
* @param array $new_styles New global styles settings to update.
* @param int $user_custom_post_type_id ID of global styles CPT.
* @param object $global_styles_controller Controller that handles REST requests for global styles.
*
* @return void
*/
function update_global_styles( $new_settings, $new_styles ) {
// Get the user's global styles CPT id
$user_custom_post_type_id = WP_Theme_JSON_Resolver::get_user_global_styles_post_id();
$global_styles_controller = new WP_REST_Global_Styles_Controller();
$update_request = new WP_REST_Request( 'PUT', '/wp/v2/global-styles/' );
$update_request->set_param( 'id', $user_custom_post_type_id );
$update_request->set_param( 'settings', $new_settings );
$update_request->set_param( 'styles', $new_styles );
$global_styles_controller->update_item( $update_request );
// Ideally the call to update_item would delete all of the appropriate transients and caches
delete_transient( 'global_styles' );
delete_transient( 'global_styles_' . get_stylesheet() );
delete_transient( 'gutenberg_global_styles' );
delete_transient( 'gutenberg_global_styles_' . get_stylesheet() );
if ( class_exists( 'WP_Theme_JSON_Resolver_Gutenberg' ) ) {
WP_Theme_JSON_Resolver_Gutenberg::clean_cached_data();
}
}
/**
* Retrieves the global styles cpt.
*
* @param int $user_custom_post_type_id ID of global styles CPT.
* @param object $global_styles_controller Controller that handles REST requests for global styles.
*
* @return array
*/
function fetch_global_styles( $user_custom_post_type_id, $global_styles_controller ) {
$get_request = new WP_REST_Request( 'GET', '/wp/v2/global-styles/' );
$get_request->set_param( 'id', $user_custom_post_type_id );
$global_styles = $global_styles_controller->get_item( $get_request );
return $global_styles;
}

View file

@ -0,0 +1,213 @@
<?php
// Font Migration
require get_template_directory() . '/inc/fonts/custom-font-migration.php';
add_action( 'init', 'enqueue_global_styles_fonts', 100 );
add_action( 'admin_init', 'enqueue_fse_font_styles' );
add_filter( 'pre_render_block', 'enqueue_block_fonts', 10, 2 );
add_filter( 'jetpack_google_fonts_list', 'spearhead_blocks_filter_jetpack_google_fonts_list' );
$spearhead_blocks_enqueued_font_slugs = array();
/**
* Get the CSS containing font_face values for a given slug
*
* @return string String of CSS
*/
function get_style_css( $slug ) {
$font_face_file = get_template_directory() . '/assets/fonts/' . $slug . '/font-face.css';
if ( ! file_exists( $font_face_file ) ) {
return '';
}
$contents = file_get_contents( $font_face_file );
return str_replace( 'src: url(./', 'src: url(' . get_template_directory_uri() . '/assets/fonts/' . $slug . '/', $contents );
}
/**
* Collect fonts set in Global Styles settings.
*
* @return array Font faces from Global Styles settings.
*/
function collect_fonts_from_global_styles() {
// NOTE: We have to use gutenberg_get_global_styles() here due to the potential changes to Global Styles on page load happening in font migration.
// Since core users don't have anything to migrate we can use core get_styles
if ( function_exists( 'gutenberg_get_global_styles' ) ) {
$global_styles = gutenberg_get_global_styles();
} else {
$global_styles = wp_get_global_styles();
}
$found_webfonts = array();
// Look for fonts in block presets...
if ( isset( $global_styles['blocks'] ) ) {
foreach ( $global_styles['blocks'] as $setting ) {
$font_slug = extract_font_slug_from_setting( $setting );
if ( $font_slug ) {
$found_webfonts[] = $font_slug;
}
}
}
// Look for fonts in HTML element presets...
if ( isset( $global_styles['elements'] ) ) {
foreach ( $global_styles['elements'] as $setting ) {
// die(json_encode($global_styles));
// NOTE: It seems that the Global Styles assignment of fonts writes the font family string rather than the
// global styles shorthand that is assigned to the body. This should be confirmed and reported if it isn't already.
$font_slug = extract_font_slug_from_setting( $setting );
if ( $font_slug ) {
$found_webfonts[] = $font_slug;
}
}
}
// Check if a global typography setting was defined.
$font_slug = extract_font_slug_from_setting( $global_styles );
if ( $font_slug ) {
$found_webfonts[] = $font_slug;
}
return array_unique( $found_webfonts );
}
/**
* Extract the font family slug from a settings array.
*
* @param array $setting The settings object.
*
* @return string|null
*/
function extract_font_slug_from_setting( $setting ) {
if ( ! isset( $setting['typography']['fontFamily'] ) ) {
return null;
}
$font_family = $setting['typography']['fontFamily'];
// Full string: var(--wp--preset--font-family--slug).
// We do not care about the origin of the font, only its slug.
preg_match( '/font-family--(?P<slug>.+)\)$/', $font_family, $matches );
if ( isset( $matches['slug'] ) ) {
return $matches['slug'];
}
// Full string: var:preset|font-family|slug
// We do not care about the origin of the font, only its slug.
preg_match( '/font-family\|(?P<slug>.+)$/', $font_family, $matches );
if ( isset( $matches['slug'] ) ) {
return $matches['slug'];
}
return $font_family;
}
/**
* Build a list of all font slugs provided by spearhead-blocks from theme.json
*
* @return array Collection of all font slugs defined in the theme.json file
*/
function collect_fonts_from_spearhead_blocks() {
$fonts = array();
$parent_theme_json_data = json_decode( file_get_contents( get_template_directory() . '/theme.json' ), true );
$font_families = $parent_theme_json_data['settings']['typography']['fontFamilies'];
foreach ( $font_families as $font ) {
// Only pick it up if we're claiming it as ours to manage
if ( array_key_exists( 'provider', $font ) && 'spearhead-blocks-fonts' === $font['provider'] ) {
$fonts[] = $font;
}
}
return $fonts;
}
/**
* Enqeue all of the fonts used in global styles settings.
*
* @return void
*/
function enqueue_global_styles_fonts() {
global $spearhead_blocks_enqueued_font_slugs;
$font_slugs = array();
$font_css = '';
if ( is_admin() ) {
$font_families = collect_fonts_from_spearhead_blocks();
foreach ( $font_families as $font_family ) {
$font_slugs[] = $font_family['slug'];
}
} else {
$font_slugs = collect_fonts_from_global_styles();
}
$spearhead_blocks_enqueued_font_slugs = $font_slugs;
foreach ( $font_slugs as $font_slug ) {
$font_css .= get_style_css( $font_slug );
}
// Bail out if there are no styles to enqueue.
if ( '' === $font_css ) {
return;
}
// Enqueue the stylesheet.
wp_register_style( 'spearhead-blocks_font_faces', '' );
wp_enqueue_style( 'spearhead-blocks_font_faces' );
// Add the styles to the stylesheet.
wp_add_inline_style( 'spearhead-blocks_font_faces', $font_css );
}
/**
* Enqueue all of the fonts provided by spearhead-blocks for FSE use
*/
function enqueue_fse_font_styles( $fonts ) {
$fonts = collect_fonts_from_spearhead_blocks();
$font_css = '';
foreach ( $fonts as $font ) {
$font_css .= get_style_css( $font['slug'] );
}
wp_enqueue_style( 'wp-block-library' );
wp_add_inline_style( 'wp-block-library', $font_css );
}
/**
* Add fonts that have been assigned via CSS
*/
function enqueue_block_fonts( $content, $parsed_block ) {
global $spearhead_blocks_enqueued_font_slugs;
if ( ! is_admin() && isset( $parsed_block['attrs']['fontFamily'] ) ) {
$font_slug = $parsed_block['attrs']['fontFamily'];
if ( ! in_array( $font_slug, $spearhead_blocks_enqueued_font_slugs, true ) ) {
$font_css = get_style_css( $font_slug );
if ( $font_css ) {
$spearhead_blocks_enqueued_font_slugs[] = $font_slug;
wp_add_inline_style( 'spearhead-blocks_font_faces', $font_css );
}
}
}
return $content;
}
/**
* Jetpack may attempt to register fonts for the Google Font Provider.
* If that happens on a child theme then ONLY Jetpack fonts are registered.
* This 'filter' filters out all of the fonts Jetpack should register
* so that we depend exclusively on those provided by spearhead-blocks.
*/
function spearhead_blocks_filter_jetpack_google_fonts_list( $list_to_filter ) {
return array();
}

View file

@ -0,0 +1,2 @@
<?php
# This page intentionally left blank

View file

@ -0,0 +1,11 @@
<!-- wp:group {"layout":{"inherit":true,"type":"constrained"}} -->
<div class="wp-block-group"><!-- wp:group {"style":{"spacing":{"padding":{"top":"80px","bottom":"30px"}}}} -->
<div class="wp-block-group" style="padding-top:80px;padding-bottom:30px"><!-- wp:group {"layout":{"type":"flex","flexWrap":"nowrap","justifyContent":"center"}} -->
<div class="wp-block-group"><!-- wp:site-title {"style":{"typography":{"fontSize":"1.2rem","fontStyle":"normal","fontWeight":"700"}}} /-->
<!-- wp:paragraph {"align":"center"} -->
<p class="has-text-align-center">Proudly Powered by <a href="https://wordpress.org" rel="nofollow">WordPress</a></p>
<!-- /wp:paragraph --></div>
<!-- /wp:group --></div>
<!-- /wp:group --></div>
<!-- /wp:group -->

View file

@ -0,0 +1,19 @@
<!-- wp:group {"className":"gapless-group","layout":{"inherit":"true"}} -->
<div class="wp-block-group gapless-group"><!-- wp:group {"align":"full","style":{"spacing":{"padding":{"bottom":"35px","top":"35px","right":"35px","left":"35px"}}},"layout":{"type":"flex","justifyContent":"space-between"}} -->
<div class="wp-block-group alignfull" style="padding-top:35px;padding-right:35px;padding-bottom:35px;padding-left:35px"><!-- wp:group {"layout":{"type":"flex"}} -->
<div class="wp-block-group"><!-- wp:site-logo {"width":64} /-->
<!-- wp:group {"style":{"spacing":{"blockGap":"5px"}}} -->
<div class="wp-block-group"><!-- wp:site-title /-->
<!-- wp:site-tagline /--></div>
<!-- /wp:group --></div>
<!-- /wp:group -->
<!-- wp:navigation {"__unstableLocation":"primary","layout":{"type":"flex","setCascadingProperties":true,"justifyContent":"right","orientation":"horizontal"},"style":{"spacing":{"margin":{"top":"0"}}}} /--></div>
<!-- /wp:group --></div>
<!-- /wp:group -->
<!-- wp:spacer {"height":"50px"} -->
<div style="height:50px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->

View file

@ -0,0 +1,12 @@
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group">
<!-- wp:group {"layout":{"type":"flex"}} -->
<div class="wp-block-group">
<!-- wp:post-author {"showAvatar":false,"showBio":false,"style":{"typography":{"fontSize":"14px"}}} /-->
<!-- wp:post-date {"isLink":true,"style":{"typography":{"fontSize":"14px"}}} /-->
<!-- wp:post-terms {"term":"category","style":{"typography":{"fontSize":"14px"}}} /-->
<!-- wp:post-terms {"term": "post_tag","style":{"typography":{"fontSize":"14px"}}} /-->
</div>
<!-- /wp:group -->
</div>
<!-- /wp:group -->

View file

@ -0,0 +1,16 @@
<?php
/**
* Title: A 404 page
* Slug: spearhead-blocks/404
* Inserter: no
*/
?>
<!-- wp:heading {"textAlign":"center","level":1,"fontSize":"medium"} -->
<h1 class="has-text-align-center has-medium-font-size" id="oops-that-page-can-t-be-found"><?php echo esc_html__( 'Oops! That page can&rsquo;t be found.', 'spearhead-blocks' ); ?></h1>
<!-- /wp:heading -->
<!-- wp:paragraph -->
<p><?php echo esc_html__( 'It looks like nothing was found at this location. Maybe try a search?', 'spearhead-blocks' ); ?></p>
<!-- /wp:paragraph -->

View file

@ -0,0 +1,61 @@
<?php
/**
* Title: Comments
* slug: spearhead-blocks/comments
* inserter: no
*/
?>
<!-- wp:comments-query-loop -->
<div class="wp-block-comments-query-loop">
<!-- wp:comments-title /-->
<!-- wp:comment-template -->
<!-- wp:columns -->
<div class="wp-block-columns">
<!-- wp:column {"width":"40px"} -->
<div class="wp-block-column" style="flex-basis:40px"></div>
<!-- /wp:column -->
<!-- wp:column -->
<div class="wp-block-column">
<!-- wp:group {"style":{"spacing":{"blockGap":"10px"}},"layout":{"type":"flex","flexWrap":"nowrap"}} -->
<div class="wp-block-group">
<!-- wp:avatar {"size":40,"style":{"border":{"radius":"20px"},"spacing":{"margin":{"top":"10px"}}}} /-->
<!-- wp:group -->
<div class="wp-block-group">
<!-- wp:comment-author-name /-->
<!-- wp:group {"style":{"spacing":{"margin":{"top":"0px","bottom":"0px"},"blockGap":"0.5em"}},"layout":{"type":"flex"}} -->
<div class="wp-block-group" style="margin-top:0px;margin-bottom:0px">
<!-- wp:comment-date {"format":"F j, Y \\a\\t g:i a"} /-->
<!-- wp:comment-edit-link /-->
</div>
<!-- /wp:group -->
</div>
<!-- /wp:group -->
</div>
<!-- /wp:group -->
<!-- wp:comment-content /-->
<!-- wp:comment-reply-link /-->
</div>
<!-- /wp:column -->
</div>
<!-- /wp:columns -->
<!-- /wp:comment-template -->
<!-- wp:comments-pagination -->
<!-- wp:comments-pagination-previous /-->
<!-- wp:comments-pagination-numbers /-->
<!-- wp:comments-pagination-next /-->
<!-- /wp:comments-pagination -->
<!-- wp:post-comments-form /-->
</div>
<!-- /wp:comments-query-loop -->

View file

@ -0,0 +1,31 @@
=== Spearhead Blocks ===
Contributors: Automattic
Requires at least: 5.8
Tested up to: 5.9
Requires PHP: 5.7
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
== Description ==
Spearhead Blocks is the block based version of the original Spearhead theme.
== Changelog ==
= 0.0.1 =
* Initial release
== Copyright ==
Spearhead Blocks WordPress Theme, (C) 2022 Automattic
Spearhead Blocks is distributed under the terms of the GNU GPL.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

122
spearhead-blocks/style.css Normal file
View file

@ -0,0 +1,122 @@
/*
Theme Name: Spearhead Blocks
Theme URI: https://github.com/automattic/themes/tree/trunk/spearhead-blocks
Author: Automattic
Author URI: https://automattic.com
Description: Spearhead Blocks is the block based version of the original Spearhead theme.
Requires at least: 5.8
Tested up to: 5.9
Requires PHP: 5.7
Version: 0.0.1
License: GNU General Public License v2 or later
License URI: https://raw.githubusercontent.com/Automattic/themes/trunk/LICENSE
Template:
Text Domain: spearhead-blocks
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, rtl-language-support, theme-options, threaded-comments, translation-ready, wide-blocks
*/
/*
* Dark Mode, front-end and editor
*/
@media (prefers-color-scheme: dark) {
body.editor-styles-wrapper,
body {
--wp--preset--color--primary: var(--wp--preset--color--primary-dark);
--wp--preset--color--secondary: var(--wp--preset--color--secondary-dark);
--wp--preset--color--foreground: var(--wp--preset--color--foreground-dark);
--wp--preset--color--background: var(--wp--preset--color--background-dark);
}
}
/*
* Excerpt audio block spacing and width match w the original Spearhead
*/
.excerpt-audio-block .wp-block-audio {
margin-left: 0;
margin-right: 0;
margin-top: 2rem;
}
.excerpt-audio-block .wp-block-audio audio {
width: 100%;
}
/*
* Font smoothing
*/
body {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
/*
* Button hover styles.
* Necessary until the following issue is resolved in Gutenberg:
* https://github.com/WordPress/gutenberg/issues/27075
*/
.wp-block-search__button:hover,
.wp-block-file .wp-block-file__button:hover,
.wp-block-button__link:hover {
background-color: var(--wp--preset--color--secondary);
}
/*
* Alignment styles, borrowed from Twenty Twenty-Two.
* These rules are temporary, and should not be relied on or
* modified too heavily by themes or plugins that build on
* Twenty Twenty-Two. These are meant to be a precursor to
* a global solution provided by the Block Editor.
*
* Relevant issues:
* https://github.com/WordPress/gutenberg/issues/35607
* https://github.com/WordPress/gutenberg/issues/35884
*/
.wp-site-blocks,
body > .is-root-container,
.edit-post-visual-editor__post-title-wrapper,
.wp-block-group.alignfull,
.wp-block-group.has-background,
.wp-block-columns.alignfull.has-background,
.wp-block-cover.alignfull,
.is-root-container .wp-block[data-align=full] > .wp-block-group,
.is-root-container .wp-block[data-align=full] > .wp-block-columns.has-background,
.is-root-container .wp-block[data-align=full] > .wp-block-cover {
padding-left: var(--wp--custom--gap--horizontal);
padding-right: var(--wp--custom--gap--horizontal);
}
.wp-site-blocks .alignfull,
.wp-site-blocks > .wp-block-group.has-background,
.wp-site-blocks > .wp-block-cover,
.wp-site-blocks > .wp-block-template-part > .wp-block-group.has-background,
.wp-site-blocks > .wp-block-template-part > .wp-block-cover,
body > .is-root-container > .wp-block-cover,
body > .is-root-container > .wp-block-template-part > .wp-block-group.has-background,
body > .is-root-container > .wp-block-template-part > .wp-block-cover,
.is-root-container .wp-block[data-align=full] {
margin-left: calc(-1 * var(--wp--custom--gap--horizontal)) !important;
margin-right: calc(-1 * var(--wp--custom--gap--horizontal)) !important;
max-width: unset;
width: unset;
}
/* Blocks inside columns don't have negative margins. */
.wp-site-blocks .wp-block-columns .wp-block-column .alignfull,
.is-root-container .wp-block-columns .wp-block-column .wp-block[data-align=full],
.wp-site-blocks .alignfull:not(.wp-block-group) .alignfull,
.is-root-container .wp-block[data-align=full] > *:not(.wp-block-group) .wp-block[data-align=full] {
margin-left: auto !important;
margin-right: auto !important;
width: inherit;
}
/*
* Responsive menu container padding.
* This ensures the responsive container inherits the same
* spacing defined above. This behavior may be built into
* the Block Editor in the future.
*/
.wp-block-navigation__responsive-container.is-menu-open {
padding-top: var(--wp--custom--gap--horizontal);
padding-bottom: var(--wp--custom--gap--vertical);
padding-right: var(--wp--custom--gap--horizontal);
padding-left: var(--wp--custom--gap--horizontal);
}

View file

@ -0,0 +1,12 @@
<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
<!-- wp:group {"tagName":"main","layout":{"inherit":true}} -->
<main class="wp-block-group">
<!-- wp:pattern {"slug":"spearhead-blocks/404"} /-->
<!-- wp:search {"label":""} /-->
</main>
<!-- /wp:group -->
<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

View file

@ -0,0 +1,37 @@
<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
<!-- wp:query {"queryId":3,"query":{"perPage":10,"pages":0,"offset":0,"postType":"post","order":"desc","orderBy":"date","author":"","search":"","exclude":[],"sticky":"","inherit":true,"taxQuery":null,"parents":[]},"tagName":"main","layout":{"inherit":true}} -->
<main class="wp-block-query"><!-- wp:query-title {"type":"archive","style":{"spacing":{"margin":{"bottom":"100px"}}}} /-->
<!-- wp:post-template -->
<!-- wp:group -->
<div class="wp-block-group"><!-- wp:post-title {"isLink":true} /-->
<!-- wp:post-featured-image {"isLink":true} /-->
<!-- wp:post-excerpt /-->
<!-- wp:group {"style":{"elements":{"link":{"color":{"text":"var:preset|color|secondary"}}}},"textColor":"secondary","layout":{"type":"flex","flexWrap":"nowrap"},"fontSize":"small"} -->
<div class="wp-block-group has-secondary-color has-text-color has-link-color has-small-font-size"><!-- wp:post-author-name {"isLink":true} /-->
<!-- wp:post-date {"format":null,"style":{"elements":{"link":{"color":{"text":"var:preset|color|secondary"}}}}} /--></div>
<!-- /wp:group -->
<!-- wp:spacer {"height":"40px"} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer --></div>
<!-- /wp:group -->
<!-- /wp:post-template -->
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group"><!-- wp:query-pagination {"paginationArrow":"arrow","layout":{"type":"flex","justifyContent":"space-between"}} -->
<!-- wp:query-pagination-previous /-->
<!-- wp:query-pagination-numbers /-->
<!-- wp:query-pagination-next /-->
<!-- /wp:query-pagination --></div>
<!-- /wp:group --></main>
<!-- /wp:query -->
<!-- wp:template-part {"slug":"footer","tagName":"footer","className":"site-footer-container"} /-->

View file

@ -0,0 +1 @@
<!-- wp:post-content {"layout":{"inherit":true},"lock":{"move":false,"remove":true}} /-->

View file

@ -0,0 +1,3 @@
<!-- wp:post-content {"layout":{"inherit":true},"lock":{"move":false,"remove":true}} /-->
<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

View file

@ -0,0 +1,10 @@
<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
<!-- wp:group {"tagName":"main","lock":{"move":false,"remove":true}} -->
<main class="wp-block-group">
<!-- wp:post-content {"layout":{"inherit":true},"lock":{"move":false,"remove":true}} /-->
</main>
<!-- /wp:group -->
<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

View file

@ -0,0 +1,29 @@
<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
<!-- wp:query {"queryId":0,"query":{"perPage":10,"pages":0,"offset":0,"postType":"post","order":"desc","orderBy":"date","author":"","search":"","exclude":[],"sticky":"","inherit":true,"taxQuery":null,"parents":[]},"tagName":"main","layout":{"inherit":true}} -->
<main class="wp-block-query"><!-- wp:post-template -->
<!-- wp:group -->
<div class="wp-block-group"><!-- wp:post-title {"isLink":true} /-->
<!-- wp:post-featured-image {"isLink":true} /-->
<!-- wp:post-excerpt /-->
<!-- wp:spacer {"height":"40px"} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer --></div>
<!-- /wp:group -->
<!-- /wp:post-template -->
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group"><!-- wp:query-pagination {"paginationArrow":"arrow","layout":{"type":"flex","justifyContent":"space-between"}} -->
<!-- wp:query-pagination-previous /-->
<!-- wp:query-pagination-numbers /-->
<!-- wp:query-pagination-next /-->
<!-- /wp:query-pagination --></div>
<!-- /wp:group --></main>
<!-- /wp:query -->
<!-- wp:template-part {"slug":"footer","tagName":"footer","className":"site-footer-container"} /-->

View file

@ -0,0 +1,61 @@
<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group"><!-- wp:post-title {"style":{"typography":{"fontSize":"3rem","lineHeight":1.3999999999999999}}} /--></div>
<!-- /wp:group -->
<!-- wp:group {"tagName":"main","lock":{"move":false,"remove":true}} -->
<main class="wp-block-group"><!-- wp:post-featured-image {"align":"full"} /-->
<!-- wp:post-content {"lock":{"move":false,"remove":true},"layout":{"inherit":true}} /--></main>
<!-- /wp:group -->
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group"><!-- wp:spacer {"height":"60px"} -->
<div style="height:60px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->
<!-- wp:comments {"className":"wp-block-comments-query-loop "} -->
<div class="wp-block-comments wp-block-comments-query-loop"><!-- wp:comments-title /-->
<!-- wp:comment-template -->
<!-- wp:columns -->
<div class="wp-block-columns"><!-- wp:column {"width":"40px"} -->
<div class="wp-block-column" style="flex-basis:40px"></div>
<!-- /wp:column -->
<!-- wp:column -->
<div class="wp-block-column"><!-- wp:group {"style":{"spacing":{"blockGap":"10px"}},"layout":{"type":"flex","flexWrap":"nowrap"}} -->
<div class="wp-block-group"><!-- wp:avatar {"size":40,"style":{"border":{"radius":"20px"},"spacing":{"margin":{"top":"10px"}}}} /-->
<!-- wp:group -->
<div class="wp-block-group"><!-- wp:comment-author-name /-->
<!-- wp:group {"style":{"spacing":{"margin":{"top":"0px","bottom":"0px"},"blockGap":"0.5em"}},"layout":{"type":"flex"}} -->
<div class="wp-block-group" style="margin-top:0px;margin-bottom:0px"><!-- wp:comment-date {"format":"F j, Y \\a\\t g:i a"} /-->
<!-- wp:comment-edit-link /--></div>
<!-- /wp:group --></div>
<!-- /wp:group --></div>
<!-- /wp:group -->
<!-- wp:comment-content /-->
<!-- wp:comment-reply-link /--></div>
<!-- /wp:column --></div>
<!-- /wp:columns -->
<!-- /wp:comment-template -->
<!-- wp:comments-pagination -->
<!-- wp:comments-pagination-previous /-->
<!-- wp:comments-pagination-numbers /-->
<!-- wp:comments-pagination-next /-->
<!-- /wp:comments-pagination -->
<!-- wp:post-comments-form /--></div>
<!-- /wp:comments --></div>
<!-- /wp:group -->
<!-- wp:template-part {"slug":"footer","tagName":"footer","className":"site-footer-container"} /-->

View file

@ -0,0 +1,47 @@
<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group">
<!-- wp:search /-->
<!-- wp:spacer {"height":40} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->
</div>
<!-- /wp:group -->
<!-- wp:query {"layout":{"inherit":true}} -->
<main class="wp-block-query">
<!-- wp:post-template -->
<!-- wp:group -->
<div class="wp-block-group">
<!-- wp:post-title {"isLink":true} /-->
<!-- wp:post-featured-image {"isLink":true} /-->
<!-- wp:post-excerpt /-->
<!-- wp:template-part {"slug":"post-meta","layout":{"inherit":true}} /-->
<!-- wp:spacer {"height":40} -->
<div style="height:40px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->
</div>
<!-- /wp:group -->
<!-- /wp:post-template -->
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group">
<!-- wp:query-pagination -->
<!-- wp:query-pagination-previous /-->
<!-- wp:query-pagination-numbers /-->
<!-- wp:query-pagination-next /-->
<!-- /wp:query-pagination -->
</div>
<!-- /wp:group -->
</main>
<!-- /wp:query -->
<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

View file

@ -0,0 +1,73 @@
<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group"><!-- wp:post-date {"textColor":"secondary","fontFamily":"ibm-plex-mono"} /-->
<!-- wp:post-title {"style":{"typography":{"fontSize":"3rem","lineHeight":1.3999999999999999}}} /--></div>
<!-- /wp:group -->
<!-- wp:group {"tagName":"main","lock":{"move":false,"remove":true}} -->
<main class="wp-block-group"><!-- wp:post-featured-image {"align":"full"} /-->
<!-- wp:post-content {"lock":{"move":false,"remove":true},"layout":{"inherit":true}} /-->
<!-- wp:group {"style":{"spacing":{"blockGap":"0px","padding":{"top":"30px"}}},"layout":{"inherit":true}} -->
<div class="wp-block-group" style="padding-top:30px"><!-- wp:paragraph {"textColor":"secondary","fontSize":"small"} -->
<p class="has-secondary-color has-text-color has-small-font-size">Published by</p>
<!-- /wp:paragraph -->
<!-- wp:post-author-name {"style":{"typography":{"fontStyle":"normal","fontWeight":"700"}}} /-->
<!-- wp:post-author-biography {"style":{"spacing":{"margin":{"top":"20px"}}}} /--></div>
<!-- /wp:group --></main>
<!-- /wp:group -->
<!-- wp:group {"layout":{"inherit":true}} -->
<div class="wp-block-group"><!-- wp:spacer {"height":"60px"} -->
<div style="height:60px" aria-hidden="true" class="wp-block-spacer"></div>
<!-- /wp:spacer -->
<!-- wp:comments {"className":"wp-block-comments-query-loop "} -->
<div class="wp-block-comments wp-block-comments-query-loop"><!-- wp:comments-title /-->
<!-- wp:comment-template -->
<!-- wp:columns -->
<div class="wp-block-columns"><!-- wp:column {"width":"40px"} -->
<div class="wp-block-column" style="flex-basis:40px"></div>
<!-- /wp:column -->
<!-- wp:column -->
<div class="wp-block-column"><!-- wp:group {"style":{"spacing":{"blockGap":"10px"}},"layout":{"type":"flex","flexWrap":"nowrap"}} -->
<div class="wp-block-group"><!-- wp:avatar {"size":40,"style":{"border":{"radius":"20px"},"spacing":{"margin":{"top":"10px"}}}} /-->
<!-- wp:group -->
<div class="wp-block-group"><!-- wp:comment-author-name /-->
<!-- wp:group {"style":{"spacing":{"margin":{"top":"0px","bottom":"0px"},"blockGap":"0.5em"}},"layout":{"type":"flex"}} -->
<div class="wp-block-group" style="margin-top:0px;margin-bottom:0px"><!-- wp:comment-date {"format":"F j, Y \\a\\t g:i a"} /-->
<!-- wp:comment-edit-link /--></div>
<!-- /wp:group --></div>
<!-- /wp:group --></div>
<!-- /wp:group -->
<!-- wp:comment-content /-->
<!-- wp:comment-reply-link /--></div>
<!-- /wp:column --></div>
<!-- /wp:columns -->
<!-- /wp:comment-template -->
<!-- wp:comments-pagination -->
<!-- wp:comments-pagination-previous /-->
<!-- wp:comments-pagination-numbers /-->
<!-- wp:comments-pagination-next /-->
<!-- /wp:comments-pagination -->
<!-- wp:post-comments-form /--></div>
<!-- /wp:comments --></div>
<!-- /wp:group -->
<!-- wp:template-part {"slug":"footer","tagName":"footer","className":"site-footer-container"} /-->

Some files were not shown because too many files have changed in this diff Show more