diff --git a/packages/components/package.json b/packages/components/package.json index c30bc4a..9bc0fe8 100644 --- a/packages/components/package.json +++ b/packages/components/package.json @@ -7,8 +7,7 @@ }, "exports": { ".": "./src/index.ts", - "./navbar/*": "./src/navbar/*", - "./accordion/*": "./src/accordion/*" + "./navbar/*": "./src/navbar/*" }, "devDependencies": { "@types/bun": "latest", diff --git a/packages/components/src/accordion/accordion.scss b/packages/components/src/accordion/accordion.scss deleted file mode 100644 index 39555c5..0000000 --- a/packages/components/src/accordion/accordion.scss +++ /dev/null @@ -1,41 +0,0 @@ -.msp-accordion { - // background-color: red; - - &-item.msp-accordion-show { - .msp-accordion-header::after { - transform: rotate(180deg); - } - } - &-header { - cursor: pointer; - position: relative; - - &::after { - display: inline-block; - position: absolute; - top: 50%; - right: 0; - - transform: rotate(0deg); - translate: 110% -50%; - - content: ""; - width: 1em; - height: 1em; - // TODO: change SVG of the arrow - background: url('data:image/svg+xml;utf8,') - no-repeat center center; - background-size: contain; - - transition: transform 0.5s ease; - } - } - - &-collapse { - overflow: hidden; - height: 0; - display: none; - - transition: height 0.5s ease; - } -} diff --git a/packages/components/src/accordion/index.ts b/packages/components/src/accordion/index.ts deleted file mode 100644 index 9a2775c..0000000 --- a/packages/components/src/accordion/index.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { qs, qsa } from "../utils"; - -enum AccordionState { - Open = 1, - Closed = 2, -} - -function waitAndHideCollapse(e: TransitionEvent) { - if (!e.target) return; - - const el = e.target as HTMLElement; - el.style.display = "none"; - el.removeEventListener("transitionend", waitAndHideCollapse); -} - -function toggleAccordion(item: HTMLElement, state: AccordionState) { - const collapse = qs(".msp-accordion-collapse", item); - - if (!collapse) throw new Error("Collapse element not found"); - - if (state === AccordionState.Closed) { - collapse.style.height = "0px"; - collapse - .closest(".msp-accordion-item") - ?.classList.remove("msp-accordion-show"); - - collapse.addEventListener("transitionend", waitAndHideCollapse); - } else if (state === AccordionState.Open) { - collapse.style.display = "block"; - - const height = qs(".msp-accordion-content", collapse)?.offsetHeight; - if (height == null) throw new Error("Content element not found"); - - collapse.style.height = `${height}px`; - collapse - .closest(".msp-accordion-item") - ?.classList.add("msp-accordion-show"); - } -} - -window.onload = () => { - qsa(".msp-accordion-item").forEach((item) => { - qs(".msp-accordion-header", item)?.addEventListener("click", (e) => { - e.preventDefault(); - toggleAccordion( - item, - item.classList.contains("msp-accordion-show") - ? AccordionState.Closed - : AccordionState.Open, - ); - }); - }); -}; diff --git a/packages/components/src/utils.ts b/packages/components/src/utils.ts deleted file mode 100644 index 0df8cd7..0000000 --- a/packages/components/src/utils.ts +++ /dev/null @@ -1,13 +0,0 @@ -export const qs = ( - query: string, - el: Element | Document = document, -): HTMLElement | null => { - return el.querySelector(query); -}; - -export const qsa = ( - query: string, - el: Element | Document = document, -): NodeListOf => { - return el.querySelectorAll(query); -}; diff --git a/packages/website/_scripts/build.ts b/packages/website/_scripts/build.ts index a49e87b..2838547 100644 --- a/packages/website/_scripts/build.ts +++ b/packages/website/_scripts/build.ts @@ -1,35 +1,11 @@ import type { BuildConfig, BunPlugin, PluginBuilder } from "bun"; -import { parseArgs } from "node:util"; import { readdir, rm } from "node:fs/promises"; import { join } from "node:path"; import type { FileImporter } from "sass"; import { HTMLComponents } from "@mini-strap/components"; -const { values } = parseArgs({ - args: Bun.argv, - options: { - production: { - type: "boolean", - short: "p", - default: false, - }, - filter: { - type: "string", - short: "f", - default: "all", - }, - output: { - type: "string", - short: "o", - default: "static", - }, - }, - strict: true, - allowPositionals: true, -}); - -const outdir = values.output ?? "./static"; +const outdir = "./static"; const nodeModuleImporter: FileImporter<"async"> = { findFileUrl(url) { @@ -59,36 +35,28 @@ const sassPlugin: BunPlugin = { }, }; -const assets: BuildConfig[] = []; - -const filter = values.filter ?? "all"; - -if (["all", "sass"].includes(filter)) { - assets.push({ +const assets: BuildConfig[] = [ + { entrypoints: ["./sass/style.scss"], outdir: `${outdir}/css`, naming: "[name].css", plugins: [sassPlugin], - minify: values.production, + minify: true, // On by default in Bun v1.2+ html: true, experimentalCss: true, - }); -} + }, -if (["all", "js", "ts"].includes(filter)) { - assets.push({ + { entrypoints: ["./js/index.ts"], outdir: `${outdir}/js`, target: "browser", - splitting: values.production, - minify: values.production, - }); -} + splitting: true, + minify: true, + }, -if (["all", "html"].includes(filter)) { - assets.push({ + { entrypoints: Object.values(HTMLComponents), outdir: "./templates/ext-components", target: "browser", @@ -101,8 +69,8 @@ if (["all", "html"].includes(filter)) { // On by default in Bun v1.2+ html: true, experimentalCss: true, - }); -} + }, +]; const out = await Promise.all( assets.map(async (item) => { diff --git a/packages/website/config.toml b/packages/website/config.toml index 56d5c27..aa8c799 100644 --- a/packages/website/config.toml +++ b/packages/website/config.toml @@ -9,10 +9,6 @@ compile_sass = false # Whether to build a search index to be used later on by a JavaScript library build_search_index = true -taxonomies = [ - { name = "section", feed = true } -] - [markdown] # Whether to do syntax highlighting # Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola diff --git a/packages/website/content/_index.md b/packages/website/content/_index.md index 1e83855..cbbe859 100644 --- a/packages/website/content/_index.md +++ b/packages/website/content/_index.md @@ -1,5 +1,4 @@ +++ - +++ # mini-strap Documentation diff --git a/packages/website/content/components/_index.md b/packages/website/content/components/_index.md deleted file mode 100644 index f55553b..0000000 --- a/packages/website/content/components/_index.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -+++ - -# Components - -Complex elements that require custom javascript to run diff --git a/packages/website/content/components/accordion.md b/packages/website/content/components/accordion.md deleted file mode 100644 index 51987ec..0000000 --- a/packages/website/content/components/accordion.md +++ /dev/null @@ -1,31 +0,0 @@ -+++ -[taxonomies] -section = ["Components"] -+++ - -# accordion.md - -Example: - -```html - -``` diff --git a/packages/website/content/components/dropdown.md b/packages/website/content/components/dropdown.md deleted file mode 100644 index c1fb188..0000000 --- a/packages/website/content/components/dropdown.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Components"] -+++ - -# dropdown.md diff --git a/packages/website/content/components/modal.md b/packages/website/content/components/modal.md deleted file mode 100644 index c4d19c5..0000000 --- a/packages/website/content/components/modal.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Components"] -+++ - -# modal.md diff --git a/packages/website/content/components/offcanvas.md b/packages/website/content/components/offcanvas.md deleted file mode 100644 index 1a3f402..0000000 --- a/packages/website/content/components/offcanvas.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Components"] -+++ - -# offcanvas.md diff --git a/packages/website/content/components/tabs.md b/packages/website/content/components/tabs.md deleted file mode 100644 index d256dfe..0000000 --- a/packages/website/content/components/tabs.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Components"] -+++ - -# tabs.md diff --git a/packages/website/content/components/tooltip.md b/packages/website/content/components/tooltip.md deleted file mode 100644 index f12205f..0000000 --- a/packages/website/content/components/tooltip.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Components"] -+++ - -# tooltip.md diff --git a/packages/website/content/content/_index.md b/packages/website/content/content/_index.md deleted file mode 100644 index cb14ecb..0000000 --- a/packages/website/content/content/_index.md +++ /dev/null @@ -1,4 +0,0 @@ -+++ -+++ - -# Components diff --git a/packages/website/content/content/fonts.md b/packages/website/content/content/fonts.md deleted file mode 100644 index 9577274..0000000 --- a/packages/website/content/content/fonts.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Content"] -+++ - -# Buttons diff --git a/packages/website/content/content/forms.md b/packages/website/content/content/forms.md deleted file mode 100644 index 9577274..0000000 --- a/packages/website/content/content/forms.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Content"] -+++ - -# Buttons diff --git a/packages/website/content/content/image.md b/packages/website/content/content/image.md deleted file mode 100644 index 9577274..0000000 --- a/packages/website/content/content/image.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Content"] -+++ - -# Buttons diff --git a/packages/website/content/content/table.md b/packages/website/content/content/table.md deleted file mode 100644 index 9577274..0000000 --- a/packages/website/content/content/table.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Content"] -+++ - -# Buttons diff --git a/packages/website/content/elements/_index.md b/packages/website/content/elements/_index.md deleted file mode 100644 index f0a0b6d..0000000 --- a/packages/website/content/elements/_index.md +++ /dev/null @@ -1,4 +0,0 @@ -+++ -+++ - -foo diff --git a/packages/website/content/elements/button.md b/packages/website/content/elements/button.md deleted file mode 100644 index 75847dd..0000000 --- a/packages/website/content/elements/button.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Elements"] -+++ - -# Buttons diff --git a/packages/website/content/elements/card.md b/packages/website/content/elements/card.md deleted file mode 100644 index 75847dd..0000000 --- a/packages/website/content/elements/card.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Elements"] -+++ - -# Buttons diff --git a/packages/website/content/elements/links.md b/packages/website/content/elements/links.md deleted file mode 100644 index 75847dd..0000000 --- a/packages/website/content/elements/links.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Elements"] -+++ - -# Buttons diff --git a/packages/website/content/elements/list.md b/packages/website/content/elements/list.md deleted file mode 100644 index 75847dd..0000000 --- a/packages/website/content/elements/list.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Elements"] -+++ - -# Buttons diff --git a/packages/website/content/elements/navbar.md b/packages/website/content/elements/navbar.md deleted file mode 100644 index 75847dd..0000000 --- a/packages/website/content/elements/navbar.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Elements"] -+++ - -# Buttons diff --git a/packages/website/content/elements/pagination.md b/packages/website/content/elements/pagination.md deleted file mode 100644 index 75847dd..0000000 --- a/packages/website/content/elements/pagination.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Elements"] -+++ - -# Buttons diff --git a/packages/website/content/layout/_index.md b/packages/website/content/layout/_index.md deleted file mode 100644 index cb14ecb..0000000 --- a/packages/website/content/layout/_index.md +++ /dev/null @@ -1,4 +0,0 @@ -+++ -+++ - -# Components diff --git a/packages/website/content/layout/container.md b/packages/website/content/layout/container.md deleted file mode 100644 index 72e8acf..0000000 --- a/packages/website/content/layout/container.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Layout"] -+++ - -# Buttons diff --git a/packages/website/content/layout/display.md b/packages/website/content/layout/display.md deleted file mode 100644 index 72e8acf..0000000 --- a/packages/website/content/layout/display.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Layout"] -+++ - -# Buttons diff --git a/packages/website/content/layout/grid.md b/packages/website/content/layout/grid.md deleted file mode 100644 index 72e8acf..0000000 --- a/packages/website/content/layout/grid.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Layout"] -+++ - -# Buttons diff --git a/packages/website/content/layout/position.md b/packages/website/content/layout/position.md deleted file mode 100644 index 72e8acf..0000000 --- a/packages/website/content/layout/position.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Layout"] -+++ - -# Buttons diff --git a/packages/website/content/layout/responsive-helpers.md b/packages/website/content/layout/responsive-helpers.md deleted file mode 100644 index 72e8acf..0000000 --- a/packages/website/content/layout/responsive-helpers.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Layout"] -+++ - -# Buttons diff --git a/packages/website/content/layout/spacing.md b/packages/website/content/layout/spacing.md deleted file mode 100644 index 72e8acf..0000000 --- a/packages/website/content/layout/spacing.md +++ /dev/null @@ -1,6 +0,0 @@ -+++ -[taxonomies] -section = ["Layout"] -+++ - -# Buttons diff --git a/packages/website/js/index.ts b/packages/website/js/index.ts index cfe5636..a50e789 100644 --- a/packages/website/js/index.ts +++ b/packages/website/js/index.ts @@ -1,2 +1 @@ -import "@mini-strap/components/accordion/index.ts"; console.log("hello world!"); diff --git a/packages/website/package.json b/packages/website/package.json index d0f6772..8e34106 100644 --- a/packages/website/package.json +++ b/packages/website/package.json @@ -3,9 +3,7 @@ "type": "module", "scripts": { "link-dependencies": "bun run _scripts/link-dependencies.ts", - "prebuild": "bun run _scripts/build.ts", - "watch-deps": "bun run --watch _scripts/build.ts", - "dev": "zola serve --port 3000 --fast --open" + "dev": "zola serve --port 3000 --fast" }, "dependencies": { "@mini-strap/core": "workspace:*", diff --git a/packages/website/sass/style.scss b/packages/website/sass/style.scss index 94868e5..4643c8a 100644 --- a/packages/website/sass/style.scss +++ b/packages/website/sass/style.scss @@ -1,6 +1,4 @@ @use "@mini-strap/core"; -@use "@mini-strap/components/navbar/navbar.scss"; -@use "@mini-strap/components/accordion/accordion.scss"; html { // background-color: red; diff --git a/packages/website/templates/base.html b/packages/website/templates/base.html index a2e6a6e..782fc79 100644 --- a/packages/website/templates/base.html +++ b/packages/website/templates/base.html @@ -8,14 +8,13 @@ alecodes.page - {% block scripts %}{% endblock %} + - -
- {% include "partials/header.html" %} +
+ {% include "partials/navbar.html" %}
{% block content %}{% endblock %} diff --git a/packages/website/templates/partials/header.html b/packages/website/templates/partials/header.html deleted file mode 100644 index 60ca2b4..0000000 --- a/packages/website/templates/partials/header.html +++ /dev/null @@ -1,20 +0,0 @@ - diff --git a/packages/website/templates/section.html b/packages/website/templates/section.html index c520de6..882f637 100644 --- a/packages/website/templates/section.html +++ b/packages/website/templates/section.html @@ -3,4 +3,10 @@ {% block content %} {{section.content | safe}} + + {% endblock content %} diff --git a/packages/website/templates/taxonomy_list.html b/packages/website/templates/taxonomy_list.html deleted file mode 100644 index e69de29..0000000 diff --git a/packages/website/templates/taxonomy_single.html b/packages/website/templates/taxonomy_single.html deleted file mode 100644 index e69de29..0000000