create-berna-stencil 2.6.3 → 2.6.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +3 -0
- package/package.json +4 -27
- package/.eleventy.js +0 -94
- package/.eleventyignore +0 -4
- package/LICENSE +0 -170
- package/NOTICE +0 -5
- package/README.md +0 -53
- package/_tools/assistant.js +0 -150
- package/_tools/buildJs.js +0 -28
- package/_tools/cleanOutput.js +0 -20
- package/_tools/modules/constants.js +0 -23
- package/_tools/modules/pageComponents.js +0 -77
- package/_tools/modules/updateData.js +0 -84
- package/_tools/modules/updateOutputPath.js +0 -112
- package/_tools/modules/updatePage.js +0 -162
- package/_tools/modules/utils.js +0 -27
- package/_tools/modules/validation.js +0 -20
- package/_tools/res/templates/template.js +0 -5
- package/_tools/res/templates/template.njk +0 -9
- package/_tools/res/templates/template.scss +0 -23
- package/_tools/res/templates/template.ts +0 -5
- package/bin/create.js +0 -429
- package/docs/Assistant CLI.md +0 -61
- package/docs/Backend.md +0 -148
- package/docs/Components.md +0 -96
- package/docs/Creating pages.md +0 -65
- package/docs/Deploy.md +0 -55
- package/docs/Head and SEO.md +0 -94
- package/docs/Javascript.md +0 -53
- package/docs/Styling with SCSS.md +0 -140
- package/nginx.conf +0 -69
- package/src/backend/.htaccess +0 -7
- package/src/backend/_core/composer.json +0 -5
- package/src/backend/_core/composer.lock +0 -492
- package/src/backend/_core/index.php +0 -148
- package/src/backend/_core/init.php +0 -34
- package/src/backend/_core/modules/RateLimiter.php +0 -31
- package/src/backend/_core/modules/Response.php +0 -49
- package/src/backend/api/protected/example-protected.php +0 -17
- package/src/backend/api/public/example-public.php +0 -17
- package/src/backend/database/Database.php +0 -24
- package/src/backend/database/migrations/create_example_db.sql +0 -1
- package/src/backend/web.config +0 -17
- package/src/frontend/.htaccess +0 -16
- package/src/frontend/404.njk +0 -17
- package/src/frontend/assets/brand/favicon.svg +0 -37
- package/src/frontend/assets/brand/logo.svg +0 -37
- package/src/frontend/components/global/footer.njk +0 -27
- package/src/frontend/components/global/header.njk +0 -11
- package/src/frontend/components/welcome.njk +0 -251
- package/src/frontend/data/site.json +0 -44
- package/src/frontend/index.njk +0 -9
- package/src/frontend/js/modules/exampleModule.js +0 -3
- package/src/frontend/js/pages/404.js +0 -7
- package/src/frontend/js/pages/homepage.js +0 -7
- package/src/frontend/layouts/base.njk +0 -137
- package/src/frontend/layouts/pageComponents.njk +0 -14
- package/src/frontend/llms.njk +0 -18
- package/src/frontend/robots.njk +0 -8
- package/src/frontend/scss/modules/_animations.scss +0 -25
- package/src/frontend/scss/modules/_buttons.scss +0 -24
- package/src/frontend/scss/modules/_footer.scss +0 -32
- package/src/frontend/scss/modules/_global.scss +0 -46
- package/src/frontend/scss/modules/_header.scss +0 -33
- package/src/frontend/scss/modules/_mobile.scss +0 -30
- package/src/frontend/scss/modules/_notification.scss +0 -56
- package/src/frontend/scss/modules/_root.scss +0 -35
- package/src/frontend/scss/modules/_typography.scss +0 -15
- package/src/frontend/scss/modules/frameworks/_bootstrap.scss +0 -110
- package/src/frontend/scss/modules/frameworks/_bulma.scss +0 -109
- package/src/frontend/scss/modules/frameworks/_foundation.scss +0 -139
- package/src/frontend/scss/modules/frameworks/_uikit.scss +0 -110
- package/src/frontend/scss/pages/404.scss +0 -28
- package/src/frontend/scss/pages/homepage.scss +0 -23
- package/src/frontend/sitemap.njk +0 -17
- package/src/frontend/ts/modules/exampleModule.ts +0 -3
- package/src/frontend/ts/pages/404.ts +0 -7
- package/src/frontend/ts/pages/homepage.ts +0 -7
- package/src/frontend/web.config +0 -27
- package/tsconfig.json +0 -25
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
<!-- This is the base of every page that you will create -->
|
|
2
|
-
|
|
3
|
-
<!DOCTYPE html>
|
|
4
|
-
<html lang="{{ site.lang or 'en' }}" data-bs-theme="{{ site.data_bs_theme or 'light' }}">
|
|
5
|
-
|
|
6
|
-
<head>
|
|
7
|
-
<meta charset="UTF-8">
|
|
8
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
9
|
-
|
|
10
|
-
{# Preconnect hints — establish early connections to external origins #}
|
|
11
|
-
<link rel="preconnect" href="https://cdn.jsdelivr.net" crossorigin>
|
|
12
|
-
|
|
13
|
-
{#╔══════════════════╗
|
|
14
|
-
║ PAGE DATA ║
|
|
15
|
-
╚══════════════════╝#}
|
|
16
|
-
|
|
17
|
-
{% set pageKey = title %}
|
|
18
|
-
{% set pageData = site.pages[pageKey] %}
|
|
19
|
-
|
|
20
|
-
{#╔══════════════════╗
|
|
21
|
-
║ SEO ║
|
|
22
|
-
╚══════════════════╝#}
|
|
23
|
-
|
|
24
|
-
<link rel="canonical" href="{{ site.url }}{{ page.url }}"/>
|
|
25
|
-
<title>{{ pageData.seo.title or title or site.title }}</title>
|
|
26
|
-
<meta name="description" content="{{ pageData.seo.description or site.description }}">
|
|
27
|
-
<meta name="keywords" content="{{ site.keywords }}">
|
|
28
|
-
<meta name="author" content="{{ site.author }}">
|
|
29
|
-
<meta name="theme-color" content="">
|
|
30
|
-
|
|
31
|
-
{# Open Graph #}
|
|
32
|
-
<meta property="og:title" content="{{ pageData.seo.title }}">
|
|
33
|
-
<meta property="og:description" content="{{ pageData.seo.description }}">
|
|
34
|
-
<meta property="og:type" content="website">
|
|
35
|
-
<meta property="og:url" content="{{ site.url }}{{ page.url }}">
|
|
36
|
-
<meta property="og:image" content="{{ site.url }}{{ site.logo }}">
|
|
37
|
-
<meta property="og:site-name" content="{{ site.site-name }}">
|
|
38
|
-
|
|
39
|
-
{# Twitter Card #}
|
|
40
|
-
<meta name="twitter:card" content="summary_large_image">
|
|
41
|
-
<meta name="twitter:title" content="{{ pageData.seo.title }}">
|
|
42
|
-
<meta name="twitter:description" content="{{ pageData.seo.description }}">
|
|
43
|
-
<meta name="twitter:image" content="{{ site.url }}{{ site.logo }}">
|
|
44
|
-
|
|
45
|
-
{#╔══════════════════════════════════════════╗
|
|
46
|
-
║ JSON-LD — Structured data for SEO/AI ║
|
|
47
|
-
╚══════════════════════════════════════════╝#}
|
|
48
|
-
|
|
49
|
-
<script type="application/ld+json">
|
|
50
|
-
{
|
|
51
|
-
"@context": "https://schema.org",
|
|
52
|
-
"@type": "WebPage",
|
|
53
|
-
"name": "{{ pageData.seo.title or title or site.title }}",
|
|
54
|
-
"description": "{{ pageData.seo.description or site.description }}",
|
|
55
|
-
"url": "{{ site.url }}{{ page.url }}",
|
|
56
|
-
"author": {
|
|
57
|
-
"@type": "Person",
|
|
58
|
-
"name": "{{ site.author }}"
|
|
59
|
-
},
|
|
60
|
-
"publisher": {
|
|
61
|
-
"@type": "Organization",
|
|
62
|
-
"name": "{{ site.site_name }}",
|
|
63
|
-
"logo": {
|
|
64
|
-
"@type": "ImageObject",
|
|
65
|
-
"url": "{{ site.url }}{{ site.logo }}"
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
</script>
|
|
70
|
-
|
|
71
|
-
{#╔══════════════════╗
|
|
72
|
-
║ FAVICON ║
|
|
73
|
-
╚══════════════════╝#}
|
|
74
|
-
|
|
75
|
-
<link rel="icon" type="image/svg+xml" href="{{ site.favicon }}">
|
|
76
|
-
{#
|
|
77
|
-
<link rel="icon" type="image/png" href="/assets/favicon.png">
|
|
78
|
-
<link rel="apple-touch-icon" href="/assets/favicon.png">
|
|
79
|
-
#}
|
|
80
|
-
|
|
81
|
-
{#╔══════════════════╗
|
|
82
|
-
║ CSS ║
|
|
83
|
-
╚══════════════════╝#}
|
|
84
|
-
|
|
85
|
-
{# Markdown — theme-aware #}
|
|
86
|
-
{% if site.data_bs_theme == "dark" %}
|
|
87
|
-
<link rel="stylesheet" href="/css/github-markdown-dark.css">
|
|
88
|
-
{% else %}
|
|
89
|
-
<link rel="stylesheet" href="/css/github-markdown-light.css">
|
|
90
|
-
{% endif %}
|
|
91
|
-
|
|
92
|
-
{# Page CSS #}
|
|
93
|
-
<link rel="stylesheet" href="/css/pages/{{ title }}.css"/>
|
|
94
|
-
|
|
95
|
-
{# Per-page CDN CSS #}
|
|
96
|
-
{% if pageData and pageData.cdn and pageData.cdn.css %}
|
|
97
|
-
{% for link in pageData.cdn.css %}
|
|
98
|
-
<link rel="stylesheet" href="{{ link }}">
|
|
99
|
-
{% endfor %}
|
|
100
|
-
{% endif %}
|
|
101
|
-
|
|
102
|
-
</head>
|
|
103
|
-
|
|
104
|
-
<body>
|
|
105
|
-
|
|
106
|
-
{% include "global/header.njk" %}
|
|
107
|
-
|
|
108
|
-
<main>
|
|
109
|
-
{{ content | safe }}
|
|
110
|
-
</main>
|
|
111
|
-
|
|
112
|
-
{% include "global/footer.njk" %}
|
|
113
|
-
|
|
114
|
-
{#╔══════════════════╗
|
|
115
|
-
║ SCRIPTS ║
|
|
116
|
-
╚══════════════════╝#}
|
|
117
|
-
|
|
118
|
-
{# Framework — uncomment the one you are using #}
|
|
119
|
-
<script src="/js/bootstrap.bundle.min.js" defer></script>
|
|
120
|
-
{# <script src="/js/foundation.min.js" defer></script> #}
|
|
121
|
-
{# <script src="/js/uikit.min.js" defer></script> #}
|
|
122
|
-
{# <script src="/js/uikit-icons.min.js" defer></script> #}
|
|
123
|
-
{# Bulma — no JS needed #}
|
|
124
|
-
|
|
125
|
-
{# Per-page CDN JS #}
|
|
126
|
-
{% if pageData and pageData.cdn and pageData.cdn.js %}
|
|
127
|
-
{% for script in pageData.cdn.js %}
|
|
128
|
-
<script src="{{ script }}" defer></script>
|
|
129
|
-
{% endfor %}
|
|
130
|
-
{% endif %}
|
|
131
|
-
|
|
132
|
-
{# Page JS #}
|
|
133
|
-
<script src="/js/pages/{{ title }}.js"></script>
|
|
134
|
-
|
|
135
|
-
</body>
|
|
136
|
-
|
|
137
|
-
</html>
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
layout: base.njk
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
<!-- NJK (HTML) components per page -->
|
|
6
|
-
|
|
7
|
-
{% if title == "homepage" %}
|
|
8
|
-
{% include "welcome.njk" %}
|
|
9
|
-
|
|
10
|
-
{% else %}
|
|
11
|
-
<!-- You should not touch this else statement -->
|
|
12
|
-
{% include "404/_404.njk" %}
|
|
13
|
-
{{ content | safe }}
|
|
14
|
-
{% endif %}
|
package/src/frontend/llms.njk
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
permalink: /llms.txt
|
|
3
|
-
eleventyExcludeFromCollections: true
|
|
4
|
-
---
|
|
5
|
-
# {{ site.site_name }}
|
|
6
|
-
|
|
7
|
-
> {{ site.description }}
|
|
8
|
-
|
|
9
|
-
Built by {{ site.author }} — {{ site.url }}
|
|
10
|
-
|
|
11
|
-
## Pages
|
|
12
|
-
|
|
13
|
-
- {{ site.url }}: Homepage
|
|
14
|
-
|
|
15
|
-
## Notes
|
|
16
|
-
|
|
17
|
-
- Language: {{ site.lang }}
|
|
18
|
-
- All content may be used for AI indexing unless otherwise stated
|
package/src/frontend/robots.njk
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
//==========================
|
|
2
|
-
// CSS RULES FOR ANIMATIONS
|
|
3
|
-
//==========================
|
|
4
|
-
|
|
5
|
-
// Getting root rules from _root.scss
|
|
6
|
-
@use 'root' as root;
|
|
7
|
-
|
|
8
|
-
.fade-in {
|
|
9
|
-
animation: fadeIn 1s;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
@keyframes fadeIn {
|
|
13
|
-
from {
|
|
14
|
-
opacity: 0;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
to {
|
|
18
|
-
opacity: 1;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
@keyframes spin {
|
|
23
|
-
from { transform: rotate(0deg); }
|
|
24
|
-
to { transform: rotate(360deg); }
|
|
25
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
//==========================
|
|
2
|
-
// CSS RULES FOR BUTTONS
|
|
3
|
-
//==========================
|
|
4
|
-
|
|
5
|
-
// Getting root rules from _root.scss
|
|
6
|
-
@use 'root' as root;
|
|
7
|
-
|
|
8
|
-
.btn {
|
|
9
|
-
color: #bddacc;
|
|
10
|
-
border-radius: 12px;
|
|
11
|
-
padding: 8px 20px;
|
|
12
|
-
transition: background 0.2s, color 0.2s;
|
|
13
|
-
background-color: #2E7253;
|
|
14
|
-
|
|
15
|
-
&:hover {
|
|
16
|
-
background: #42b883;
|
|
17
|
-
color: #353535;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
&:active {
|
|
21
|
-
background: #42b883 !important;
|
|
22
|
-
color: #353535 !important;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
//==========================
|
|
2
|
-
// CSS RULES FOR FOOTER
|
|
3
|
-
//==========================
|
|
4
|
-
|
|
5
|
-
@use 'root' as root;
|
|
6
|
-
|
|
7
|
-
footer {
|
|
8
|
-
display: flex;
|
|
9
|
-
justify-content: space-around;
|
|
10
|
-
width: 100%;
|
|
11
|
-
padding: root.$header-padding-y root.$header-padding-x;
|
|
12
|
-
background-color: #2e7253;
|
|
13
|
-
|
|
14
|
-
h6 {
|
|
15
|
-
margin-bottom: 0.75rem;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
ul {
|
|
19
|
-
list-style: none;
|
|
20
|
-
padding: 0;
|
|
21
|
-
margin: 0;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
hr {
|
|
25
|
-
margin: 1rem 0;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
small {
|
|
29
|
-
display: flex;
|
|
30
|
-
gap: 1rem;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
//==========================
|
|
2
|
-
// CSS RULES FOR THE ENTIRE SITE
|
|
3
|
-
//==========================
|
|
4
|
-
|
|
5
|
-
// Getting root rules from _root.scss
|
|
6
|
-
@use 'root' as root;
|
|
7
|
-
|
|
8
|
-
// Frameworks imports
|
|
9
|
-
@import "../modules/frameworks/bootstrap";
|
|
10
|
-
// @import "../modules/frameworks/bulma";
|
|
11
|
-
// @import "../modules/frameworks/foundation";
|
|
12
|
-
// @import "../modules/frameworks/uikit";
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
// Modules imports
|
|
16
|
-
@import "typography";
|
|
17
|
-
|
|
18
|
-
@import "header";
|
|
19
|
-
@import "footer";
|
|
20
|
-
|
|
21
|
-
@import "animations";
|
|
22
|
-
@import "mobile";
|
|
23
|
-
|
|
24
|
-
@import "buttons";
|
|
25
|
-
|
|
26
|
-
//==========================
|
|
27
|
-
// Global css rules for the entire site
|
|
28
|
-
//==========================
|
|
29
|
-
|
|
30
|
-
*,
|
|
31
|
-
*::before,
|
|
32
|
-
*::after {
|
|
33
|
-
margin: 0;
|
|
34
|
-
padding: 0;
|
|
35
|
-
box-sizing: border-box;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
body {
|
|
39
|
-
display: flex;
|
|
40
|
-
flex-direction: column;
|
|
41
|
-
min-height: 100svh;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
main {
|
|
45
|
-
flex: 1;
|
|
46
|
-
}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
//==========================
|
|
2
|
-
// CSS RULES FOR HEADER
|
|
3
|
-
//==========================
|
|
4
|
-
|
|
5
|
-
// Getting root rules from _root.scss
|
|
6
|
-
@use 'root' as root;
|
|
7
|
-
|
|
8
|
-
header {
|
|
9
|
-
height: root.$header-height;
|
|
10
|
-
width: 100%;
|
|
11
|
-
display: flex;
|
|
12
|
-
justify-content: center;
|
|
13
|
-
align-items: center;
|
|
14
|
-
padding: root.$header-padding-y root.$header-padding-x;
|
|
15
|
-
background-color: root.$primary;
|
|
16
|
-
background-color: #2e7253;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
nav {
|
|
20
|
-
display: flex;
|
|
21
|
-
justify-content: space-between;
|
|
22
|
-
align-items: center;
|
|
23
|
-
width: 100%;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
nav a {
|
|
27
|
-
padding: 10px;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.nav-links{
|
|
31
|
-
display: flex;
|
|
32
|
-
gap: 120px;
|
|
33
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
//==========================
|
|
2
|
-
// CSS RULES FOR RESPONSIVE
|
|
3
|
-
//==========================
|
|
4
|
-
|
|
5
|
-
// Getting root rules from _root.scss
|
|
6
|
-
@use 'root' as root;
|
|
7
|
-
|
|
8
|
-
//==========================
|
|
9
|
-
// MEDIA QUERIES
|
|
10
|
-
//==========================
|
|
11
|
-
|
|
12
|
-
@media (max-width: 1400px) {
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
@media (max-width: 1200px) {
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
@media (max-width: 992px) {
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
@media (max-width: 768px) {
|
|
25
|
-
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
@media (max-width: 576px) {
|
|
29
|
-
|
|
30
|
-
}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
@use 'root' as root;
|
|
2
|
-
|
|
3
|
-
.notificationBox {
|
|
4
|
-
display: flex;
|
|
5
|
-
align-items: center;
|
|
6
|
-
justify-content: center;
|
|
7
|
-
text-align: center;
|
|
8
|
-
position: fixed;
|
|
9
|
-
top: root.$header-height;
|
|
10
|
-
left: 50%;
|
|
11
|
-
transform: translateX(-50%);
|
|
12
|
-
z-index: 9999;
|
|
13
|
-
width: 30vw;
|
|
14
|
-
padding: 18px;
|
|
15
|
-
border-radius: 15px;
|
|
16
|
-
gap: 15px;
|
|
17
|
-
|
|
18
|
-
background-color: rgba(0, 0, 0, 0.9);
|
|
19
|
-
|
|
20
|
-
transition: opacity 0.5s ease, transform 0.5s ease;
|
|
21
|
-
|
|
22
|
-
.spinner {
|
|
23
|
-
width: 20px;
|
|
24
|
-
height: 20px;
|
|
25
|
-
border: 3px solid currentColor;
|
|
26
|
-
border-right-color: transparent;
|
|
27
|
-
border-radius: 50%;
|
|
28
|
-
animation: spin .75s linear infinite;
|
|
29
|
-
filter: drop-shadow(0 0 5px currentColor);
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/* Varianti */
|
|
33
|
-
&.success {
|
|
34
|
-
box-shadow: 0 0 2px #2ecc71, 0 0 15px rgba(46, 204, 113, 0.6), 0 0 40px rgba(46, 204, 113, 0.2);
|
|
35
|
-
color: #2ecc71;
|
|
36
|
-
text-shadow: 0 0 2px #2ecc71, 0 0 15px rgba(46, 204, 113, 0.6), 0 0 40px rgba(46, 204, 113, 0.2);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
&.info {
|
|
40
|
-
box-shadow: 0 0 2px #f1c40f, 0 0 15px rgba(241, 196, 15, 0.6), 0 0 40px rgba(241, 196, 15, 0.2);
|
|
41
|
-
color: #f1c40f;
|
|
42
|
-
text-shadow: 0 0 2px #f1c40f, 0 0 15px rgba(241, 196, 15, 0.6), 0 0 40px rgba(241, 196, 15, 0.2);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
&.error {
|
|
46
|
-
box-shadow: 0 0 2px #e74c3c, 0 0 15px rgba(231, 76, 60, 0.6), 0 0 40px rgba(231, 76, 60, 0.2);
|
|
47
|
-
color: #e74c3c;
|
|
48
|
-
text-shadow: 0 0 2px #e74c3c, 0 0 15px rgba(231, 76, 60, 0.6), 0 0 40px rgba(231, 76, 60, 0.2);
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
/* Stato di uscita */
|
|
52
|
-
&.fade-out {
|
|
53
|
-
opacity: 0;
|
|
54
|
-
transform: translateX(-50%) translateY(-20px);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// NOTE: This file contains only Sass variables (no CSS output).
|
|
2
|
-
// When imported with @import, all variables are global and may be
|
|
3
|
-
// overwritten by other imported files with the same variable names.
|
|
4
|
-
// Use @use 'root' as root; to avoid namespace collisions.
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
//==========================
|
|
8
|
-
// STRUCTURE
|
|
9
|
-
//==========================
|
|
10
|
-
$header-height: 10vh;
|
|
11
|
-
$header-padding-y: 15px;
|
|
12
|
-
$header-padding-x: 15px;
|
|
13
|
-
|
|
14
|
-
//==========================
|
|
15
|
-
// COLORS — BASE
|
|
16
|
-
//==========================
|
|
17
|
-
$primary: rgba(0, 0, 0, 0.5);
|
|
18
|
-
$secondary: #a3dcff;
|
|
19
|
-
$accent: #f9a8c9;
|
|
20
|
-
|
|
21
|
-
//==========================
|
|
22
|
-
// COLORS — NEUTRALS
|
|
23
|
-
//==========================
|
|
24
|
-
$white: #ffffff;
|
|
25
|
-
$light: #f5f5f5;
|
|
26
|
-
$muted: #888888;
|
|
27
|
-
$dark: #2d2d2d;
|
|
28
|
-
|
|
29
|
-
//==========================
|
|
30
|
-
// COLORS — SEMANTIC
|
|
31
|
-
//==========================
|
|
32
|
-
$success: #198754;
|
|
33
|
-
$warning: #ffc107;
|
|
34
|
-
$danger: #dc3545;
|
|
35
|
-
$info: #0dcaf0;
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
// ╔══════════════════════════════════════════════════════╗
|
|
2
|
-
// ║ ../../../../../node_modules/BOOTSTRAP MODULES ║
|
|
3
|
-
// ║ Comment out any module you don't need to improve ║
|
|
4
|
-
// ║ performance. Core section is required by all others ║
|
|
5
|
-
// ╚══════════════════════════════════════════════════════╝
|
|
6
|
-
|
|
7
|
-
// Imports can be filtered by commenting them
|
|
8
|
-
// Example:
|
|
9
|
-
// @import "../../../../../node_modules/bootstrap/scss/example-../../../../../node_modules/bootstrap-module";
|
|
10
|
-
|
|
11
|
-
//==========================
|
|
12
|
-
// 1️⃣ CORE – Functions and variables
|
|
13
|
-
// ⚠️ Do not comment these out — required by all other modules
|
|
14
|
-
//==========================
|
|
15
|
-
@import "../../../../../node_modules/bootstrap/scss/functions"; // ../../../../../node_modules/Bootstrap SCSS functions
|
|
16
|
-
@import "../../../../../node_modules/bootstrap/scss/variables"; // Core variables (colors, spacing, fonts)
|
|
17
|
-
@import "../../../../../node_modules/bootstrap/scss/variables-dark"; // Dark theme variables
|
|
18
|
-
@import "../../../../../node_modules/bootstrap/scss/maps"; // Maps for spacing, colors, breakpoints
|
|
19
|
-
@import "../../../../../node_modules/bootstrap/scss/mixins"; // Reusable SCSS mixins
|
|
20
|
-
@import "../../../../../node_modules/bootstrap/scss/utilities"; // Utility helpers
|
|
21
|
-
@import "../../../../../node_modules/bootstrap/scss/root"; // Root CSS (custom properties)
|
|
22
|
-
@import "../../../../../node_modules/bootstrap/scss/placeholders"; // Placeholder selectors
|
|
23
|
-
|
|
24
|
-
//==========================
|
|
25
|
-
// 2️⃣ VENDOR
|
|
26
|
-
//==========================
|
|
27
|
-
@import "../../../../../node_modules/bootstrap/scss/vendor/rfs"; // Responsive font sizes
|
|
28
|
-
|
|
29
|
-
//==========================
|
|
30
|
-
// 3️⃣ BASE – Base styles
|
|
31
|
-
//==========================
|
|
32
|
-
@import "../../../../../node_modules/bootstrap/scss/reboot"; // CSS reset / normalize
|
|
33
|
-
@import "../../../../../node_modules/bootstrap/scss/type"; // Typography (headings, paragraphs)
|
|
34
|
-
@import "../../../../../node_modules/bootstrap/scss/images"; // Image styles
|
|
35
|
-
@import "../../../../../node_modules/bootstrap/scss/containers"; // Containers
|
|
36
|
-
@import "../../../../../node_modules/bootstrap/scss/transitions"; // CSS transitions
|
|
37
|
-
|
|
38
|
-
//==========================
|
|
39
|
-
// 4️⃣ LAYOUT – Layout helpers
|
|
40
|
-
//==========================
|
|
41
|
-
@import "../../../../../node_modules/bootstrap/scss/grid"; // Grid system
|
|
42
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers"; // Helper classes
|
|
43
|
-
|
|
44
|
-
//==========================
|
|
45
|
-
// 5️⃣ HELPERS – Sub-modules
|
|
46
|
-
//==========================
|
|
47
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/clearfix"; // Clearfix
|
|
48
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/color-bg"; // Color background
|
|
49
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/colored-links"; // Colored links
|
|
50
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/focus-ring"; // Focus ring
|
|
51
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/icon-link"; // Icon links
|
|
52
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/position"; // Position helpers
|
|
53
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/ratio"; // Aspect ratio
|
|
54
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/stacks"; // Stack helpers
|
|
55
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/stretched-link"; // Stretched link
|
|
56
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/text-truncation"; // Text truncation
|
|
57
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/visually-hidden"; // Visually hidden
|
|
58
|
-
@import "../../../../../node_modules/bootstrap/scss/helpers/vr"; // Vertical rule
|
|
59
|
-
|
|
60
|
-
//==========================
|
|
61
|
-
// 6️⃣ UTILITIES – Sub-modules
|
|
62
|
-
//==========================
|
|
63
|
-
@import "../../../../../node_modules/bootstrap/scss/utilities/api"; // Utilities API
|
|
64
|
-
|
|
65
|
-
//==========================
|
|
66
|
-
// 7️⃣ FORMS – Sub-modules
|
|
67
|
-
//==========================
|
|
68
|
-
@import "../../../../../node_modules/bootstrap/scss/forms"; // Forms loader
|
|
69
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/labels"; // Labels
|
|
70
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/form-text"; // Form text
|
|
71
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/form-control"; // Inputs and textareas
|
|
72
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/form-select"; // Select dropdowns
|
|
73
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/form-check"; // Checkboxes and radios
|
|
74
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/form-range"; // Range sliders
|
|
75
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/floating-labels"; // Floating labels
|
|
76
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/input-group"; // Input groups
|
|
77
|
-
@import "../../../../../node_modules/bootstrap/scss/forms/validation"; // Validation states
|
|
78
|
-
|
|
79
|
-
//==========================
|
|
80
|
-
// 8️⃣ COMPONENTS – All ../../../../../node_modules/Bootstrap components
|
|
81
|
-
//==========================
|
|
82
|
-
@import "../../../../../node_modules/bootstrap/scss/alert"; // Alerts
|
|
83
|
-
@import "../../../../../node_modules/bootstrap/scss/badge"; // Badges
|
|
84
|
-
@import "../../../../../node_modules/bootstrap/scss/breadcrumb"; // Breadcrumbs
|
|
85
|
-
@import "../../../../../node_modules/bootstrap/scss/buttons"; // Buttons
|
|
86
|
-
@import "../../../../../node_modules/bootstrap/scss/button-group"; // Button groups
|
|
87
|
-
@import "../../../../../node_modules/bootstrap/scss/card"; // Cards
|
|
88
|
-
@import "../../../../../node_modules/bootstrap/scss/carousel"; // Carousel
|
|
89
|
-
@import "../../../../../node_modules/bootstrap/scss/close"; // Close (×) button
|
|
90
|
-
@import "../../../../../node_modules/bootstrap/scss/dropdown"; // Dropdowns
|
|
91
|
-
@import "../../../../../node_modules/bootstrap/scss/list-group"; // List groups
|
|
92
|
-
@import "../../../../../node_modules/bootstrap/scss/modal"; // Modals
|
|
93
|
-
@import "../../../../../node_modules/bootstrap/scss/nav"; // Nav
|
|
94
|
-
@import "../../../../../node_modules/bootstrap/scss/navbar"; // Navbar
|
|
95
|
-
@import "../../../../../node_modules/bootstrap/scss/offcanvas"; // Offcanvas component
|
|
96
|
-
@import "../../../../../node_modules/bootstrap/scss/pagination"; // Pagination
|
|
97
|
-
@import "../../../../../node_modules/bootstrap/scss/popover"; // Popovers
|
|
98
|
-
@import "../../../../../node_modules/bootstrap/scss/progress"; // Progress bars
|
|
99
|
-
@import "../../../../../node_modules/bootstrap/scss/spinners"; // Spinners
|
|
100
|
-
@import "../../../../../node_modules/bootstrap/scss/toasts"; // Toasts
|
|
101
|
-
@import "../../../../../node_modules/bootstrap/scss/tooltip"; // Tooltips
|
|
102
|
-
@import "../../../../../node_modules/bootstrap/scss/accordion"; // Accordion
|
|
103
|
-
@import "../../../../../node_modules/bootstrap/scss/tables"; // Tables
|
|
104
|
-
|
|
105
|
-
//==========================
|
|
106
|
-
// 9️⃣ ICONS
|
|
107
|
-
//==========================
|
|
108
|
-
$bootstrap-icons-font-src: url("../fonts/bootstrap-icons.woff2") format("woff2"),
|
|
109
|
-
url("../fonts/bootstrap-icons.woff") format("woff");
|
|
110
|
-
@import "../../../../../node_modules/bootstrap-icons/font/bootstrap-icons";
|