From fac6581dc9d11d59edcb66fbb56f55b706b97c6e Mon Sep 17 00:00:00 2001 From: mark Date: Mon, 17 Jul 2023 15:00:36 +0200 Subject: [PATCH] Add core modules --- assets/scss/app.scss | 52 +++----------------------- assets/scss/components/_syntax.scss | 4 +- config/_default/hugo.toml | 18 ++++----- config/_default/params.toml | 4 +- go.mod | 6 ++- go.sum | 14 +++++++ package-lock.json | 58 ----------------------------- package.json | 2 - 8 files changed, 34 insertions(+), 124 deletions(-) diff --git a/assets/scss/app.scss b/assets/scss/app.scss index a144ef33..784f754a 100644 --- a/assets/scss/app.scss +++ b/assets/scss/app.scss @@ -5,53 +5,11 @@ @import "common/variables.scss"; @import "common/icons.scss"; -// Import Bootstrap banner and functions -@import "bootstrap/scss/mixins/banner"; -@include bsBanner(""); -@import "bootstrap/scss/functions"; +{{ if not (in site.Params.modules.core "bootstrap") }} + {{ errorf "Bootstrap is a required module, please add it to 'modules.core' in your site parameters" }} +{{ end }} -// Import Bootstrap configuration -@import "bootstrap/scss/variables"; -@import "bootstrap/scss/variables-dark.scss"; -@import "bootstrap/scss/maps"; -@import "bootstrap/scss/mixins"; -@import "bootstrap/scss/utilities"; - -// Import Bootstrap layout & components -@import "bootstrap/scss/root"; -@import "bootstrap/scss/reboot"; -@import "bootstrap/scss/type"; -@import "bootstrap/scss/images"; -@import "bootstrap/scss/containers"; -@import "bootstrap/scss/grid"; -@import "bootstrap/scss/tables"; -@import "bootstrap/scss/forms"; -@import "bootstrap/scss/buttons"; -@import "bootstrap/scss/transitions"; -@import "bootstrap/scss/dropdown"; -@import "bootstrap/scss/button-group"; -@import "bootstrap/scss/nav"; -@import "bootstrap/scss/navbar"; -@import "bootstrap/scss/card"; -@import "bootstrap/scss/accordion"; -@import "bootstrap/scss/breadcrumb"; -@import "bootstrap/scss/pagination"; -@import "bootstrap/scss/badge"; -@import "bootstrap/scss/alert"; -@import "bootstrap/scss/progress"; -@import "bootstrap/scss/list-group"; -@import "bootstrap/scss/close"; -@import "bootstrap/scss/toasts"; -@import "bootstrap/scss/modal"; -@import "bootstrap/scss/tooltip"; -@import "bootstrap/scss/popover"; -@import "bootstrap/scss/carousel"; -@import "bootstrap/scss/spinners"; -@import "bootstrap/scss/offcanvas"; -@import "bootstrap/scss/placeholders"; - -// Import Bootstrap helpers -@import "bootstrap/scss/helpers"; +@import "bootstrap.scss"; // Import Hinode theme styles @import "components/alert.scss"; @@ -94,4 +52,4 @@ @import "theme/theme.scss"; // Import Bootstrap utilities API -@import "bootstrap/scss/utilities/api"; +@import "modules/bootstrap/utilities/api"; diff --git a/assets/scss/components/_syntax.scss b/assets/scss/components/_syntax.scss index 43afc704..03d7546c 100644 --- a/assets/scss/components/_syntax.scss +++ b/assets/scss/components/_syntax.scss @@ -1,5 +1,5 @@ // stylelint-disable annotation-no-unknown -@import "syntax-light"; +@import "components/syntax-light"; .bg, .chroma, @@ -18,7 +18,7 @@ @if $enable-dark-mode { [data-bs-theme="dark"] { - @import "syntax-dark"; // stylelint-disable-line no-invalid-position-at-import-rule + @import "components/syntax-dark"; // stylelint-disable-line no-invalid-position-at-import-rule .bg, .chroma, diff --git a/config/_default/hugo.toml b/config/_default/hugo.toml index 0911ed1e..bfd55a57 100644 --- a/config/_default/hugo.toml +++ b/config/_default/hugo.toml @@ -96,17 +96,13 @@ home = ["HTML", "RSS", "REDIR"] [[module.mounts]] source = "static/fonts" target = "static/fonts" -# toml-docs-start javascript - [[module.mounts]] - source = "node_modules/bootstrap/dist/js" - target = "assets/js/vendor/bootstrap" - includeFiles = "*.bundle.js" - [[module.mounts]] - source = "node_modules/flexsearch/dist" - target = "assets/js/vendor/flexsearch" - includeFiles = "*.bundle.js" -# toml-docs-end javascript +# toml-docs-start modules [[module.imports]] - path = "github.com/gethinode/mod-leaflet" + path = "github.com/gethinode/mod-bootstrap" + [[module.imports]] + path = "github.com/gethinode/mod-flexsearch" [[module.imports]] path = "github.com/gethinode/mod-fontawesome" + [[module.imports]] + path = "github.com/gethinode/mod-leaflet" +# toml-docs-end modules diff --git a/config/_default/params.toml b/config/_default/params.toml index 92c8daad..f265ee6e 100644 --- a/config/_default/params.toml +++ b/config/_default/params.toml @@ -8,9 +8,9 @@ # toml-docs-start modules [modules] - # core = ["bootstrap", "flexsearch", "fontawesome"] #TODO - core = ["fontawesome"] + core = ["bootstrap", "flexsearch", "fontawesome"] optional = ["leaflet"] + excludeSCSS = ["bootstrap"] # toml-docs-end modules # toml-docs-start docs diff --git a/go.mod b/go.mod index b334d697..5010b58a 100644 --- a/go.mod +++ b/go.mod @@ -3,6 +3,8 @@ module github.com/gethinode/hinode go 1.19 require ( - github.com/gethinode/mod-fontawesome v1.0.2 // indirect - github.com/gethinode/mod-leaflet v0.2.3 // indirect + github.com/gethinode/mod-bootstrap v1.1.0 // indirect + github.com/gethinode/mod-flexsearch v1.1.0 // indirect + github.com/gethinode/mod-fontawesome v1.2.0 // indirect + github.com/gethinode/mod-leaflet v0.3.1 // indirect ) diff --git a/go.sum b/go.sum index e3bba782..53bed31f 100644 --- a/go.sum +++ b/go.sum @@ -1,4 +1,18 @@ +github.com/gethinode/mod-bootstrap v1.0.1 h1:NDZar+UEL42YHCvzzO+jVgqkZU5INA12BpjX3y6U4I4= +github.com/gethinode/mod-bootstrap v1.0.1/go.mod h1:DcpPc2cNaXUPGEvhD7npuEEPA7573NvakTlrwFbyjr8= +github.com/gethinode/mod-bootstrap v1.1.0 h1:BbalsW8kmFhv+J+dcc41TGcjIlM/p69AB0h0oGhAXIU= +github.com/gethinode/mod-bootstrap v1.1.0/go.mod h1:DcpPc2cNaXUPGEvhD7npuEEPA7573NvakTlrwFbyjr8= +github.com/gethinode/mod-flexsearch v1.0.1 h1:FJkRsUzSnQTXl3MWCigT4E6vfff870UWTnkGqaDGIhA= +github.com/gethinode/mod-flexsearch v1.0.1/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4= +github.com/gethinode/mod-flexsearch v1.1.0 h1:7BCMyQDlYlskNXuazt8Jg/jg9WREexu2xVkYqThkAX4= +github.com/gethinode/mod-flexsearch v1.1.0/go.mod h1:TXbGbWsvmhBdsTzRt887mcpFfr4ORpzG3+h/l4W3YM4= github.com/gethinode/mod-fontawesome v1.0.2 h1:ZSK6D20/w4y5GnfYfTBB58uHD0ChIfkpKfRGwioS9rg= github.com/gethinode/mod-fontawesome v1.0.2/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= +github.com/gethinode/mod-fontawesome v1.1.0 h1:rsDzUI+3ZlS/do2ff3ne8/z3KwHeysmuA+WsXlumXXk= +github.com/gethinode/mod-fontawesome v1.1.0/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= +github.com/gethinode/mod-fontawesome v1.2.0 h1:2nWYEjpUKu6IJ6kOh2WDlDUqRQ/dUGw6mJWIdMTA3O0= +github.com/gethinode/mod-fontawesome v1.2.0/go.mod h1:Ki1qkWEOiF0hQpCgWeZRw+HkpL6nd1DxKFptU0O2feI= github.com/gethinode/mod-leaflet v0.2.3 h1:QQI4h+IH0jZ7fx4q0um2YIEiYBoW3OAfW8qHzbRCDPk= github.com/gethinode/mod-leaflet v0.2.3/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk= +github.com/gethinode/mod-leaflet v0.3.1 h1:H5MaOa+BB1KuVw7abTqfIn/SNzzRsAyx/WQoSe+2Ykc= +github.com/gethinode/mod-leaflet v0.3.1/go.mod h1:uGggt87x4Fw7wBoJpSiUvNkYg+s/Ujne7klAX2rxMRk= diff --git a/package-lock.json b/package-lock.json index 6da97af7..031707f9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,7 +12,6 @@ "@fortawesome/fontawesome-free": "^6.4.0", "@fullhuman/postcss-purgecss": "^5.0.0", "autoprefixer": "^10.4.14", - "bootstrap": "^5.3.0", "cssnano": "^6.0.0", "cssnano-preset-advanced": "^6.0.0", "eslint": "^8.39.0", @@ -20,7 +19,6 @@ "eslint-plugin-import": "^2.27.5", "eslint-plugin-n": "^16.0.0", "eslint-plugin-promise": "^6.1.1", - "flexsearch": "^0.7.31", "hugo-bin": "^0.111.0", "markdownlint-cli2": "^0.8.1", "postcss-cli": "^10.1.0", @@ -478,17 +476,6 @@ "node": ">=14" } }, - "node_modules/@popperjs/core": { - "version": "2.11.7", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.7.tgz", - "integrity": "sha512-Cr4OjIkipTtcXKjAsm8agyleBuDHvxzeBoa1v543lbv1YaIwQjESsVcmjiWiPEbC1FIeHOG/Op9kdCmAmiS3Kw==", - "dev": true, - "peer": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, "node_modules/@sindresorhus/is": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.4.1.tgz", @@ -984,25 +971,6 @@ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", "dev": true }, - "node_modules/bootstrap": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0.tgz", - "integrity": "sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/twbs" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/bootstrap" - } - ], - "peerDependencies": { - "@popperjs/core": "^2.11.7" - } - }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -2534,12 +2502,6 @@ "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", "dev": true }, - "node_modules/flexsearch": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.31.tgz", - "integrity": "sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==", - "dev": true - }, "node_modules/foreground-child": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", @@ -7252,13 +7214,6 @@ "dev": true, "optional": true }, - "@popperjs/core": { - "version": "2.11.7", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.7.tgz", - "integrity": "sha512-Cr4OjIkipTtcXKjAsm8agyleBuDHvxzeBoa1v543lbv1YaIwQjESsVcmjiWiPEbC1FIeHOG/Op9kdCmAmiS3Kw==", - "dev": true, - "peer": true - }, "@sindresorhus/is": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.4.1.tgz", @@ -7602,13 +7557,6 @@ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", "dev": true }, - "bootstrap": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.0.tgz", - "integrity": "sha512-UnBV3E3v4STVNQdms6jSGO2CvOkjUMdDAVR2V5N4uCMdaIkaQjbcEAMqRimDHIs4uqBYzDAKCQwCB+97tJgHQw==", - "dev": true, - "requires": {} - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -8703,12 +8651,6 @@ "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", "dev": true }, - "flexsearch": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/flexsearch/-/flexsearch-0.7.31.tgz", - "integrity": "sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==", - "dev": true - }, "foreground-child": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", diff --git a/package.json b/package.json index 0e3d03c5..6dbe7223 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,6 @@ "@fortawesome/fontawesome-free": "^6.4.0", "@fullhuman/postcss-purgecss": "^5.0.0", "autoprefixer": "^10.4.14", - "bootstrap": "^5.3.0", "cssnano": "^6.0.0", "cssnano-preset-advanced": "^6.0.0", "eslint": "^8.39.0", @@ -65,7 +64,6 @@ "eslint-plugin-import": "^2.27.5", "eslint-plugin-n": "^16.0.0", "eslint-plugin-promise": "^6.1.1", - "flexsearch": "^0.7.31", "hugo-bin": "^0.111.0", "markdownlint-cli2": "^0.8.1", "postcss-cli": "^10.1.0",