Compare commits

..

5 Commits

Author SHA1 Message Date
Matthew Wang
22fc061ef4 0.6.2 2023-09-19 17:26:18 -07:00
Matt Wang
200ae6e99d Create FUNDING.yml (#1348) 2023-09-12 00:27:10 -07:00
Peter Mosses
0964e1f8ae Remove the passive toggle (#1335)
* Remove "passive" toggle

PR #1244 introduced the "passive" toggle, but just-the-docs.js subsequently disabled the only styling that used it, so it became redundant.
This removes it.

* Update CHANGELOG.md

* Update CHANGELOG.md

Co-authored-by: Matt Wang <matt@matthewwang.me>

* Update CHANGELOG.md

Co-authored-by: Matt Wang <matt@matthewwang.me>

---------

Co-authored-by: Matt Wang <matt@matthewwang.me>
2023-09-06 22:20:26 +02:00
dependabot[bot]
2b434e5f82 Bump stylelint-config-standard-scss from 10.0.0 to 11.0.0 (#1342)
Bumps [stylelint-config-standard-scss](https://github.com/stylelint-scss/stylelint-config-standard-scss) from 10.0.0 to 11.0.0.
- [Release notes](https://github.com/stylelint-scss/stylelint-config-standard-scss/releases)
- [Changelog](https://github.com/stylelint-scss/stylelint-config-standard-scss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint-scss/stylelint-config-standard-scss/compare/v10.0.0...v11.0.0)

---
updated-dependencies:
- dependency-name: stylelint-config-standard-scss
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-05 12:57:10 -07:00
omahs
281839fa32 Fix docs typos (#1341) 2023-09-03 00:00:25 -07:00
23 changed files with 677 additions and 23303 deletions

View File

@@ -1,15 +0,0 @@
{
"sourceType": "unambiguous",
"presets": [
[
"@babel/preset-env",
{
"targets": {
"chrome": 100
}
}
],
"@babel/preset-typescript"
],
"plugins": []
}

2
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,2 @@
github: just-the-docs
open_collective: just-the-docs

View File

@@ -1,51 +0,0 @@
on:
push:
branches:
- main
pull_request:
branches:
- main
name: 'Chromatic'
jobs:
chromatic:
name: "Chromatic"
strategy:
matrix:
jekyll-version: [4.3]
os: [ ubuntu-latest ]
ruby-version: [3.1]
node-version: [18.x]
runs-on: ${{ matrix.os }}
steps:
# Ruby setup
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup Ruby ${{ matrix.ruby-version }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: false
- name: Bundle Install
run: bundle install
- name: Install Jekyll ${{ matrix.jekyll-version }}
run: gem install jekyll -v ${{ matrix.jekyll-version }}
- name: Init Search
run: bundle exec rake search:init
- name: Build Site
run: bundle exec jekyll build
# Node setup
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm install
- run: npm run build-storybook
- name: Publish to Chromatic
uses: chromaui/action@v1
env:
CHROMATIC_PROJECT_TOKEN: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}

5
.gitignore vendored
View File

@@ -16,13 +16,10 @@ vendor/
# These next files are used by Just the Docs developers. They are not necessary for end users of the theme, only developers. # These next files are used by Just the Docs developers. They are not necessary for end users of the theme, only developers.
# We use Stylelint and Prettier, JavaScript tools, to lint and format our own code, # We use Stylelint and Prettier, JavaScript tools, to lint and format our own code.
# We use Node.js as our runtime, so we ignore node_modules # We use Node.js as our runtime, so we ignore node_modules
node_modules node_modules
# We also use Storybook to test regressions in changes; we ignore the build output.
storybook-static
# .DS_Store is a macOS-only metadata file about directories. Convention is to not commit them. # .DS_Store is a macOS-only metadata file about directories. Convention is to not commit them.
# See: https://en.wikipedia.org/wiki/.DS_Store # See: https://en.wikipedia.org/wiki/.DS_Store
.DS_Store .DS_Store

View File

@@ -1,17 +0,0 @@
/** @type { import('@storybook/html-webpack5').StorybookConfig } */
const config = {
stories: ["../stories/**/*.mdx", "../stories/**/*.stories.@(js|jsx|ts|tsx)"],
addons: [
"@storybook/addon-links",
"@storybook/addon-essentials",
"@storybook/addon-interactions",
],
framework: {
name: "@storybook/html-webpack5",
options: {},
},
docs: {
autodocs: "tag",
},
}
export default config

View File

@@ -1,14 +0,0 @@
/** @type { import('@storybook/html').Preview } */
const preview = {
parameters: {
actions: { argTypesRegex: "^on[A-Z].*" },
controls: {
matchers: {
color: /(background|color)$/i,
date: /Date$/,
},
},
},
}
export default preview

View File

@@ -17,8 +17,18 @@ This website is built from the `HEAD` of the `main` branch of the theme reposito
Code changes to `main` that are *not* in the latest release: Code changes to `main` that are *not* in the latest release:
- Fixed: Windows emoji font fallback by [@flanakin] in [#1337] - N/A
## Release v0.6.2
Hi all, this is a small patch release that includes two changes: adding a missing Windows emoji font fallback, and removing some (now-unused) code introduced in 0.6.
### Bugfixes
- Fixed: Windows emoji font fallback by [@flanakin] in [#1337]
- Removed: unused `.passive` toggle in navigation by [@pdmosses] in [#1335]
[#1335]: https://github.com/just-the-docs/just-the-docs/pull/1335
[#1337]: https://github.com/just-the-docs/just-the-docs/pull/1337 [#1337]: https://github.com/just-the-docs/just-the-docs/pull/1337
### New Contributors ### New Contributors

View File

@@ -48,7 +48,6 @@ exclude:
- Dockerfile - Dockerfile
# theme test code # theme test code
- fixtures/ - fixtures/
- stories/
# Set a path/url to a logo that will be displayed instead of the title # Set a path/url to a logo that will be displayed instead of the title
#logo: "/assets/images/just-the-docs.png" #logo: "/assets/images/just-the-docs.png"

View File

@@ -134,11 +134,10 @@
} }
} }
// Styling for nav-list-expanders at first and second levels, // Styling for nav-list-expanders at first and second levels:
// suppressed when a click has deactivated the expander (making the nav-list-item .passive):
{{ activation_collection_prefix }} { {{ activation_collection_prefix }} {
> .nav-list-item:not(.passive):nth-child({{ activation_first_level_index }}){%- if activation_second_level_index %}, > .nav-list-item:nth-child({{ activation_first_level_index }}){%- if activation_second_level_index %},
> .nav-list-item:not(.passive):nth-child({{ activation_first_level_index }}) > .nav-list > .nav-list-item:not(.passive):nth-child({{ activation_second_level_index }}){% endif %} { > .nav-list-item:nth-child({{ activation_first_level_index }}) > .nav-list > .nav-list-item:nth-child({{ activation_second_level_index }}){% endif %} {
> .nav-list-expander svg { > .nav-list-expander svg {
@if $nav-list-expander-right { @if $nav-list-expander-right {
transform: rotate(-90deg); transform: rotate(-90deg);
@@ -154,7 +153,7 @@
} }
// Styling for nav-list-expander for categories: // Styling for nav-list-expander for categories:
.site-nav > .nav-category-list > .nav-list-item:not(.passive) { .site-nav > .nav-category-list > .nav-list-item {
> .nav-list-expander svg { > .nav-list-expander svg {
@if $nav-list-expander-right { @if $nav-list-expander-right {
transform: rotate(-90deg); transform: rotate(-90deg);

View File

@@ -105,7 +105,7 @@
} }
.btn-purple { .btn-purple {
@include btn-color($white, $purple-300); @include btn-color($white, $purple-100);
} }
.btn-blue { .btn-blue {

View File

@@ -31,10 +31,7 @@ function initNav() {
} }
if (target) { if (target) {
e.preventDefault(); e.preventDefault();
const active = target.parentNode.classList.toggle('active'); target.ariaPressed = target.parentNode.classList.toggle('active');
const passive = target.parentNode.classList.toggle('passive');
if (active && passive) target.parentNode.classList.toggle('passive');
target.ariaPressed = active;
} }
}); });
@@ -498,8 +495,7 @@ function scrollNav() {
} }
// Find the nav-list-link that refers to the current page // Find the nav-list-link that refers to the current page
// then make it and all enclosing nav-list-item elements active, // then make it and all enclosing nav-list-item elements active.
// and make all other folded collections passive
function activateNav() { function activateNav() {
var target = navLink(); var target = navLink();
@@ -515,17 +511,6 @@ function activateNav() {
target = target.parentNode; target = target.parentNode;
} }
} }
const elements = document.getElementsByClassName("nav-category-list");
for (const element of elements) {
const item = element.children[0];
const active = item.classList.toggle('active');
if (active) {
item.classList.toggle('active', false);
item.classList.toggle('passive', true);
} else {
item.classList.toggle('active', true);
}
}
} }
// Document ready // Document ready

View File

@@ -52,7 +52,7 @@ New (v0.4.2)
{: .label .label-green } {: .label .label-green }
In Just the Docs version `0.4.2`, we changed the default syntax highlighting theme for the `light` color scheme to have higher contrast. Users who are want to use the old highlighting need to explicitly opt-in with the deprecated `legacy_light` color scheme. In a future major release of Just the Docs, we will remove this color scheme. In Just the Docs version `0.4.2`, we changed the default syntax highlighting theme for the `light` color scheme to have higher contrast. Users who want to use the old highlighting need to explicitly opt-in with the deprecated `legacy_light` color scheme. In a future major release of Just the Docs, we will remove this color scheme.
## Custom schemes ## Custom schemes

View File

@@ -20,7 +20,7 @@ nav_order: 5
## Main navigation ## Main navigation
The main navigation for your Just the Docs site is on the left side of the page at large screens and on the top (behind a tap) on small screens. The main navigation can be structured to accommodate a multi-level menu system (pages with children and grandchildren). The main navigation for your Just the Docs site is on the left side of the page on large screens and on the top (behind a tap) on small screens. The main navigation can be structured to accommodate a multi-level menu system (pages with children and grandchildren).
By default, all pages will appear as top level pages in the main nav unless a parent page is defined (see [Pages with Children](#pages-with-children)). By default, all pages will appear as top level pages in the main nav unless a parent page is defined (see [Pages with Children](#pages-with-children)).
@@ -300,7 +300,7 @@ This example skips the page name heading (`#`) from the TOC, as well as the head
### Collapsible Table of Contents ### Collapsible Table of Contents
The Table of Contents can be made collapsible using the `<details>` and `<summary>` elements , as in the following example. The attribute `open` (expands the Table of Contents by default) and the styling with `{: .text-delta }` are optional. The Table of Contents can be made collapsible using the `<details>` and `<summary>` elements, as in the following example. The attribute `open` (expands the Table of Contents by default) and the styling with `{: .text-delta }` are optional.
```markdown ```markdown
<details open markdown="block"> <details open markdown="block">

View File

@@ -61,7 +61,7 @@ Use `mx-auto` to horizontally center elements.
In Markdown, use the `{: }` wrapper to apply custom classes: In Markdown, use the `{: }` wrapper to apply custom classes:
```markdown ```markdown
This paragraph will have a margin bottom of 1rem/16px at large screens. This paragraph will have a margin bottom of 1rem/16px on large screens.
{: .mb-lg-4 } {: .mb-lg-4 }
This paragraph will have 2rem/32px of padding on the right and left at all screen sizes. This paragraph will have 2rem/32px of padding on the right and left at all screen sizes.

View File

@@ -9,5 +9,5 @@ permalink: docs/utilities
# Utilities # Utilities
{: .no_toc } {: .no_toc }
CSS utility classes come in handy when you to want to override default styles to create additional whitespace (margins/padding), correct unexpected shifts in font size or weight, add color, or hide (or show) something at a specific screen size. CSS utility classes come in handy when you want to override default styles to create additional whitespace (margins/padding), correct unexpected shifts in font size or weight, add color, or hide (or show) something at a specific screen size.
{: .fs-6 .fw-300 } {: .fs-6 .fw-300 }

View File

@@ -2,7 +2,7 @@
Gem::Specification.new do |spec| Gem::Specification.new do |spec|
spec.name = "just-the-docs" spec.name = "just-the-docs"
spec.version = "0.6.1" spec.version = "0.6.2"
spec.authors = ["Patrick Marsceill", "Matthew Wang"] spec.authors = ["Patrick Marsceill", "Matthew Wang"]
spec.email = ["patrick.marsceill@gmail.com", "matt@matthewwang.me"] spec.email = ["patrick.marsceill@gmail.com", "matt@matthewwang.me"]

23610
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,43 +1,22 @@
{ {
"name": "just-the-docs", "name": "just-the-docs",
"version": "0.5.0", "version": "0.3.3",
"description": "A modern Jekyll theme for documentation", "description": "A modern Jekyll theme for documentation",
"repository": { "repository": "just-the-docs/just-the-docs",
"type": "git",
"url": "git+https://github.com/just-the-docs/just-the-docs.git"
},
"license": "MIT", "license": "MIT",
"bugs": { "bugs": "https://github.com/just-the-docs/just-the-docs/issues",
"url": "https://github.com/just-the-docs/just-the-docs/issues"
},
"devDependencies": { "devDependencies": {
"@babel/preset-env": "^7.21.4",
"@babel/preset-typescript": "^7.21.4",
"@storybook/addon-essentials": "^7.0.7",
"@storybook/addon-interactions": "^7.0.7",
"@storybook/addon-links": "^7.0.7",
"@storybook/blocks": "^7.0.7",
"@storybook/html": "^7.0.7",
"@storybook/html-webpack5": "^7.0.7",
"@storybook/testing-library": "^0.0.14-next.2",
"chromatic": "^6.17.3",
"npm-run-all": "^4.1.5", "npm-run-all": "^4.1.5",
"prettier": "^3.0.3", "prettier": "^3.0.3",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"storybook": "^7.0.7",
"stylelint": "^15.10.3", "stylelint": "^15.10.3",
"stylelint-config-standard-scss": "^10.0.0" "stylelint-config-standard-scss": "^11.0.0"
}, },
"scripts": { "scripts": {
"lint": "npm-run-all --parallel --continue-on-error lint:*", "lint": "npm-run-all --parallel --continue-on-error lint:*",
"lint:css": "stylelint '**/*.scss'", "lint:css": "stylelint '**/*.scss'",
"lint:formatting": "prettier --check '**/*.{scss,js,json}'", "lint:formatting": "prettier --check '**/*.{scss,js,json}'",
"format": "prettier --write '**/*.{scss,js,json}'", "format": "prettier --write '**/*.{scss,js,json}'",
"test": "npm run lint", "test": "npm run lint"
"storybook": "bundle exec jekyll build && storybook dev -p 6006",
"build-storybook": "bundle exec jekyll build && storybook build",
"chromatic": "npx chromatic --project-token=9355f489c51b -d storybook-static"
}, },
"stylelint": { "stylelint": {
"ignoreFiles": [ "ignoreFiles": [
@@ -64,7 +43,5 @@
"singleQuote": false, "singleQuote": false,
"tabWidth": 2, "tabWidth": 2,
"trailingComma": "es5" "trailingComma": "es5"
}, }
"homepage": "https://just-the-docs.com",
"_id": "just-the-docs@0.5.0"
} }

View File

@@ -1,7 +0,0 @@
import { Meta } from '@storybook/blocks';
<Meta title="Example/Introduction" />
# Storybook for Just the Docs
A WIP [Storybook](https://storybook.js.org/) for Just the Docs.

View File

@@ -1,11 +0,0 @@
import "../../_site/assets/css/just-the-docs-default.css"
export const createButton = ({ variant = "default", label, size = "4" }) => {
const btn = document.createElement("button")
btn.type = "button"
btn.innerText = label
btn.className = ["btn", `btn-${variant}`, `fs-${size}`].join(" ")
return btn
}

View File

@@ -1,68 +0,0 @@
import { createButton } from "./Button"
export default {
title: "UI Components/Button",
tags: ["autodocs"],
render: ({ label, ...args }) => {
return createButton({ label, ...args })
},
argTypes: {
label: { control: "text" },
size: {
control: { type: "select" },
options: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
},
variant: {
control: { type: "select" },
options: ["default", "primary", "purple", "blue", "green", "outline"],
},
},
}
export const Default = {
args: {
variant: "default",
label: "Button",
size: 4,
},
}
export const Primary = {
args: {
variant: "primary",
label: "Button",
size: 4,
},
}
export const Purple = {
args: {
variant: "purple",
label: "Button",
size: 4,
},
}
export const Blue = {
args: {
variant: "blue",
label: "Button",
size: 4,
},
}
export const Green = {
args: {
variant: "green",
label: "Button",
size: 4,
},
}
export const Outline = {
args: {
variant: "outline",
label: "Button",
size: 4,
},
}

View File

@@ -1,10 +0,0 @@
import "../../_site/assets/css/just-the-docs-default.css"
export const createLabel = ({ variant = "default", label, size = "4" }) => {
const btn = document.createElement("span")
btn.innerText = label
btn.className = ["label", `label-${variant}`, `fs-${size}`].join(" ")
return btn
}

View File

@@ -1,68 +0,0 @@
import { createLabel } from "./Label"
export default {
title: "UI Components/Label",
tags: ["autodocs"],
render: ({ label, ...args }) => {
return createLabel({ label, ...args })
},
argTypes: {
label: { control: "text" },
size: {
control: { type: "select" },
options: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
},
variant: {
control: { type: "select" },
options: ["default", "purple", "blue", "green", "red", "yellow"],
},
},
}
export const Default = {
args: {
variant: "default",
label: "Label",
size: 4,
},
}
export const Purple = {
args: {
variant: "purple",
label: "Label",
size: 4,
},
}
export const Blue = {
args: {
variant: "blue",
label: "Label",
size: 4,
},
}
export const Green = {
args: {
variant: "green",
label: "Label",
size: 4,
},
}
export const Red = {
args: {
variant: "red",
label: "Label",
size: 4,
},
}
export const Yellow = {
args: {
variant: "yellow",
label: "Label",
size: 4,
},
}