spoko-design-system 0.7.6 → 0.7.8

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.
Files changed (170) hide show
  1. package/.astro/data-store.json +1 -1
  2. package/.astro/settings.json +1 -1
  3. package/.github/dependabot.yml +11 -11
  4. package/.github/todo.yml +3 -3
  5. package/.github/workflows/deploy.yml +39 -39
  6. package/.stackblitzrc +5 -5
  7. package/.vscode/extensions.json +5 -5
  8. package/.vscode/launch.json +11 -11
  9. package/.vscode/settings.json +5 -5
  10. package/LICENSE +21 -21
  11. package/README.md +114 -114
  12. package/astro-i18next.config.mjs +17 -17
  13. package/astro-i18next.config.ts +10 -10
  14. package/astro.config.mjs +86 -86
  15. package/dev-dist/sw.js +91 -91
  16. package/dev-dist/workbox-c676b6d3.js +3391 -3391
  17. package/icon.config.ts +309 -309
  18. package/index.ts +66 -66
  19. package/package.json +38 -38
  20. package/public/fonts/lg.svg +53 -53
  21. package/public/fonts/vwhead-bold-demo.html +549 -549
  22. package/public/fonts/vwhead-regular-demo.html +549 -549
  23. package/public/fonts/vwtext-bold-demo.html +549 -549
  24. package/public/fonts/vwtext-regular-demo.html +549 -549
  25. package/public/github.svg +3 -3
  26. package/public/grid_dot.svg +4 -4
  27. package/public/linkedin.svg +44 -44
  28. package/public/locales/en/translation.json +8 -8
  29. package/public/locales/pl/translation.json +8 -8
  30. package/public/make-scrollable-code-focusable.js +3 -3
  31. package/public/pagefind.yml +3 -3
  32. package/public/polo.blue.svg +29 -29
  33. package/public/spoko.space.svg +71 -71
  34. package/public/twitter.svg +46 -46
  35. package/renovate.json +6 -6
  36. package/sandbox.config.json +11 -11
  37. package/src/MyComponent.astro +8 -8
  38. package/src/components/Badge.vue +19 -19
  39. package/src/components/Badges.vue +21 -21
  40. package/src/components/Breadcrumbs.vue +91 -107
  41. package/src/components/Button.vue +101 -101
  42. package/src/components/ButtonCopy.astro +183 -183
  43. package/src/components/ButtonCopy.vue +36 -36
  44. package/src/components/Card.astro +27 -27
  45. package/src/components/Carousel.astro +26 -26
  46. package/src/components/Category/CategoriesCarousel.astro +101 -101
  47. package/src/components/Category/CategoryDetails.astro +169 -169
  48. package/src/components/Category/CategoryLink.vue +28 -28
  49. package/src/components/Category/CategorySidebarToggler.vue +9 -9
  50. package/src/components/Category/CategoryTile.astro +37 -37
  51. package/src/components/Category/CategoryViewToggler.astro +89 -89
  52. package/src/components/Category/SubCategoryLink.vue +19 -19
  53. package/src/components/Copyright.astro +12 -12
  54. package/src/components/Date.astro +7 -7
  55. package/src/components/Faq.astro +33 -33
  56. package/src/components/FaqItem.astro +80 -80
  57. package/src/components/FeaturesList.vue +37 -41
  58. package/src/components/FuckRussia.vue +62 -62
  59. package/src/components/HandDrive.astro +29 -29
  60. package/src/components/Header/Header.astro +210 -210
  61. package/src/components/Header/SkipToContent.astro +1 -1
  62. package/src/components/Headline.vue +48 -48
  63. package/src/components/Image.astro +30 -30
  64. package/src/components/LeftSidebar.astro +53 -53
  65. package/src/components/MainColors.vue +22 -22
  66. package/src/components/MainInput.vue +15 -15
  67. package/src/components/Modal.astro +27 -27
  68. package/src/components/PageContent.astro +5 -5
  69. package/src/components/PartNumber.vue +27 -27
  70. package/src/components/Post/PostCategories.astro +41 -41
  71. package/src/components/Post/PostCategories.vue +31 -39
  72. package/src/components/PostHeader.astro +103 -103
  73. package/src/components/PrCode.vue +141 -141
  74. package/src/components/Product/ProductButton.vue +18 -18
  75. package/src/components/Product/ProductCarousel.astro +35 -35
  76. package/src/components/Product/ProductEngineType.vue +42 -42
  77. package/src/components/Product/ProductImage.astro +40 -40
  78. package/src/components/Product/ProductLink.astro +101 -101
  79. package/src/components/Product/ProductLink.vue +59 -59
  80. package/src/components/Product/ProductLinkInfo.astro +37 -37
  81. package/src/components/Product/ProductNumber.astro +60 -60
  82. package/src/components/ProductCarousel.astro +38 -38
  83. package/src/components/ProductCodes.vue +39 -39
  84. package/src/components/ProductDetailName.vue +52 -52
  85. package/src/components/ProductDetailsList.vue +130 -158
  86. package/src/components/ProductTile.astro +48 -48
  87. package/src/components/Quote.vue +23 -23
  88. package/src/components/ReloadPrompt.astro +50 -50
  89. package/src/components/SlimBanner.vue +72 -72
  90. package/src/components/Table.vue +32 -32
  91. package/src/components/TableOfContents.astro +15 -15
  92. package/src/components/Translations.vue +23 -23
  93. package/src/components/flags/FlagPL.vue +3 -3
  94. package/src/components/flags/FlagUA.vue +2 -2
  95. package/src/components/layout/Container.astro +7 -7
  96. package/src/components/layout/Header.astro +80 -80
  97. package/src/config.ts +56 -56
  98. package/src/design.config.ts +98 -98
  99. package/src/env.d.ts +6 -6
  100. package/src/layouts/Layout.astro +61 -61
  101. package/src/layouts/MainLayout.astro +81 -81
  102. package/src/layouts/partials/FooterCommon.astro +4 -4
  103. package/src/layouts/partials/HeadCommon.astro +44 -44
  104. package/src/layouts/partials/HeadSEO.astro +41 -41
  105. package/src/pages/components/badges.mdx +57 -57
  106. package/src/pages/components/breadcrumbs.mdx +139 -139
  107. package/src/pages/components/buttons.mdx +360 -360
  108. package/src/pages/components/card.mdx +294 -294
  109. package/src/pages/components/carousel.mdx +62 -62
  110. package/src/pages/components/copyright.mdx +42 -42
  111. package/src/pages/components/details-list.mdx +115 -115
  112. package/src/pages/components/features-list.mdx +37 -37
  113. package/src/pages/components/flags.mdx +49 -49
  114. package/src/pages/components/fuck-russia.mdx +39 -39
  115. package/src/pages/components/hand-drive.mdx +38 -38
  116. package/src/pages/components/headline.mdx +152 -152
  117. package/src/pages/components/icons.astro +135 -135
  118. package/src/pages/components/image.mdx +513 -513
  119. package/src/pages/components/input.mdx +367 -367
  120. package/src/pages/components/jumbotron.mdx +359 -359
  121. package/src/pages/components/modal.mdx +64 -64
  122. package/src/pages/components/post-header.mdx +64 -64
  123. package/src/pages/components/pr-code.mdx +65 -65
  124. package/src/pages/components/product-number.mdx +58 -58
  125. package/src/pages/components/product-tile.mdx +51 -51
  126. package/src/pages/components/quote.mdx +33 -33
  127. package/src/pages/components/slimbanner.mdx +35 -35
  128. package/src/pages/components/table.mdx +108 -108
  129. package/src/pages/core/colors.mdx +10 -10
  130. package/src/pages/core/grid.mdx +89 -89
  131. package/src/pages/core/introduction.mdx +77 -77
  132. package/src/pages/core/shadows.astro +20 -20
  133. package/src/pages/core/typography.astro +49 -49
  134. package/src/pages/index.astro +133 -133
  135. package/src/pages/patterns/introduction.mdx +60 -60
  136. package/src/pwa.ts +12 -12
  137. package/src/styles/_variables.scss +70 -70
  138. package/src/styles/base/base.css +184 -184
  139. package/src/styles/base/grid.css +92 -92
  140. package/src/styles/base/typography.css +70 -70
  141. package/src/styles/content.css +73 -73
  142. package/src/styles/main.css +7 -7
  143. package/src/types/Product.ts +31 -31
  144. package/src/types/astro.d.ts +3 -3
  145. package/src/utils/product/getPriceFormatted.ts +15 -15
  146. package/src/utils/product/getProductChecklist.ts +17 -17
  147. package/src/utils/product/useFormatProductNumber.ts +41 -41
  148. package/src/utils/seo/getShorterDescription.ts +14 -14
  149. package/src/utils/text/formatDate.ts +5 -5
  150. package/src/utils/text/formatLocaleNumber.ts +6 -6
  151. package/src/utils/text/formatPad.ts +12 -12
  152. package/src/utils/text/getNumberFormatted.ts +33 -33
  153. package/src/utils/text/getTranslatedLink.ts +5 -5
  154. package/src/utils/text.ts +19 -19
  155. package/tailwind.config.cjs +8 -8
  156. package/tsconfig.json +28 -28
  157. package/uno-config/index.ts +259 -232
  158. package/uno-config/theme/breakpoints.ts +9 -9
  159. package/uno-config/theme/colors.ts +64 -64
  160. package/uno-config/theme/dimensions.ts +17 -17
  161. package/uno-config/theme/effects.ts +14 -14
  162. package/uno-config/theme/grid.ts +10 -10
  163. package/uno-config/theme/index.ts +28 -28
  164. package/uno-config/theme/shortcuts/buttons.ts +53 -53
  165. package/uno-config/theme/shortcuts/components.ts +123 -92
  166. package/uno-config/theme/shortcuts/index.ts +20 -20
  167. package/uno-config/theme/shortcuts/layout.ts +64 -64
  168. package/uno-config/theme/typography.ts +29 -29
  169. package/uno.config.ts +2 -2
  170. package/src/components/Product/ProductCodes.vue +0 -174
package/src/config.ts CHANGED
@@ -1,56 +1,56 @@
1
- export const SITE = {
2
- title: "Spoko Design System",
3
- description: "The Astro design system which facilitates the development of websites.",
4
- defaultLanguage: "en_US",
5
- twitter: "@spokospace",
6
- github: "spokospace",
7
- linkedin: "szymonberski",
8
- };
9
-
10
- export const OPEN_GRAPH = {
11
- image: {
12
- src: "",
13
- alt: "",
14
- },
15
- twitter: "",
16
- };
17
-
18
- export const SIDEBAR = [
19
- { text: "Core", header: true },
20
- { text: "Introduction", link: "/core/introduction/" },
21
- { text: "Colors", link: "/core/colors/" },
22
- { text: "Typography", link: "/core/typography/" },
23
- { text: "Shadows", link: "/core/shadows/" },
24
- { text: "Grid", link: "/core/grid/" },
25
-
26
- { text: "Components", header: true },
27
- { text: "Badges", link: "/components/badges/" },
28
- { text: "Breadcrumbs", link: "/components/breadcrumbs/" },
29
- { text: "Buttons", link: "/components/buttons/" },
30
- { text: "Card", link: "/components/card/" },
31
- { text: "Carousel", link: "/components/carousel/" },
32
- { text: "Copyright", link: "/components/copyright/" },
33
- { text: "Details List", link: "/components/details-list/" },
34
- { text: "Features List", link: "/components/features-list/"},
35
- { text: "HandDrive", link: "/components/hand-drive/" },
36
- { text: "Headline", link: "/components/headline/" },
37
- { text: "Icons", link: "/components/icons/" },
38
- { text: "Image", link: "/components/image/" },
39
- { text: "Input", link: "/components/input/" },
40
- { text: "Jumbotron", link: "/components/jumbotron/" },
41
- { text: "Modal", link: "/components/modal/" },
42
- { text: "PostHeader", link: "/components/post-header/" },
43
- { text: "PR-Code", link: "/components/pr-code/" },
44
- { text: "Product Number", link: "/components/product-number/" },
45
- { text: "Product Tile", link: "/components/product-tile/" },
46
- { text: "Quote", link: "/components/quote/" },
47
- { text: "Table", link: "/components/table/" },
48
-
49
- { text: "Extras", header: true },
50
- { text: "Flags", link: "/components/flags/" },
51
- { text: "SlimBanner", link: "/components/slimbanner/" },
52
- { text: "FuckRussia", link: "/components/fuck-russia/" },
53
-
54
- { text: "Patterns", header: true },
55
- { text: "Introduction", link: "/patterns/introduction/" },
56
- ];
1
+ export const SITE = {
2
+ title: "Spoko Design System",
3
+ description: "The Astro design system which facilitates the development of websites.",
4
+ defaultLanguage: "en_US",
5
+ twitter: "@spokospace",
6
+ github: "spokospace",
7
+ linkedin: "szymonberski",
8
+ };
9
+
10
+ export const OPEN_GRAPH = {
11
+ image: {
12
+ src: "",
13
+ alt: "",
14
+ },
15
+ twitter: "",
16
+ };
17
+
18
+ export const SIDEBAR = [
19
+ { text: "Core", header: true },
20
+ { text: "Introduction", link: "/core/introduction/" },
21
+ { text: "Colors", link: "/core/colors/" },
22
+ { text: "Typography", link: "/core/typography/" },
23
+ { text: "Shadows", link: "/core/shadows/" },
24
+ { text: "Grid", link: "/core/grid/" },
25
+
26
+ { text: "Components", header: true },
27
+ { text: "Badges", link: "/components/badges/" },
28
+ { text: "Breadcrumbs", link: "/components/breadcrumbs/" },
29
+ { text: "Buttons", link: "/components/buttons/" },
30
+ { text: "Card", link: "/components/card/" },
31
+ { text: "Carousel", link: "/components/carousel/" },
32
+ { text: "Copyright", link: "/components/copyright/" },
33
+ { text: "Details List", link: "/components/details-list/" },
34
+ { text: "Features List", link: "/components/features-list/"},
35
+ { text: "HandDrive", link: "/components/hand-drive/" },
36
+ { text: "Headline", link: "/components/headline/" },
37
+ { text: "Icons", link: "/components/icons/" },
38
+ { text: "Image", link: "/components/image/" },
39
+ { text: "Input", link: "/components/input/" },
40
+ { text: "Jumbotron", link: "/components/jumbotron/" },
41
+ { text: "Modal", link: "/components/modal/" },
42
+ { text: "PostHeader", link: "/components/post-header/" },
43
+ { text: "PR-Code", link: "/components/pr-code/" },
44
+ { text: "Product Number", link: "/components/product-number/" },
45
+ { text: "Product Tile", link: "/components/product-tile/" },
46
+ { text: "Quote", link: "/components/quote/" },
47
+ { text: "Table", link: "/components/table/" },
48
+
49
+ { text: "Extras", header: true },
50
+ { text: "Flags", link: "/components/flags/" },
51
+ { text: "SlimBanner", link: "/components/slimbanner/" },
52
+ { text: "FuckRussia", link: "/components/fuck-russia/" },
53
+
54
+ { text: "Patterns", header: true },
55
+ { text: "Introduction", link: "/patterns/introduction/" },
56
+ ];
@@ -1,99 +1,99 @@
1
- export const COLORS = {
2
- // Brand Colors
3
- brand: [
4
- { name: "primary", value: "#0040c5" },
5
- { name: "secondary", value: "#00b0f0" }
6
- ],
7
-
8
- // Primary Blues
9
- blue: [
10
- { name: "ultralight", value: "#dbeafe" },
11
- { name: "lightest", value: "#3b82f6" },
12
- { name: "light", value: "#0069ff" },
13
- { name: "default", value: "#005ad7" },
14
- { name: "medium", value: "#02307d" },
15
- { name: "darker", value: "#001e50" },
16
- { name: "darkest", value: "#000f28" },
17
- { name: "wrc", value: "#0000c8" }
18
- ],
19
-
20
- // Accent Colors
21
- accent: [
22
- { name: "lightest", value: "#00b0f0" },
23
- { name: "light", value: "#0099da" },
24
- { name: "default", value: "#0087c1" },
25
- { name: "dark", value: "#006ea6" },
26
- { name: "darker", value: "#00437a" },
27
- { name: "deepBlue", value: "#0c1a32" }
28
- ],
29
-
30
- // Neutral Colors
31
- neutral: [
32
- { name: "lightest", value: "#f3f4f6" },
33
- { name: "lighter", value: "#e5e7eb" },
34
- { name: "light", value: "#b5bbc5" },
35
- { name: "default", value: "#9ca3af" },
36
- { name: "dark", value: "#6a767d" },
37
- { name: "darker", value: "#4b5563"},
38
- { name: "black", value: "#000000" }
39
- ],
40
-
41
- // Slate Colors
42
- slate: [
43
- { name: "light", value: "#64748B" },
44
- { name: "default", value: "#475569" },
45
- { name: "dark", value: "#334155" },
46
- { name: "darker", value: "#1e293b" }, // Previously 'darkest'
47
- { name: "darkest", value: "#0f172a" } // New shade added
48
- ],
49
-
50
- // System Colors
51
- system: [
52
- { name: "success", value: "#10B981" },
53
- { name: "warning", value: "#FBBF24" },
54
- { name: "error", value: "#EF4444" },
55
- { name: "info", value: "#3B82F6" }
56
- ],
57
-
58
- // State Colors
59
- state: [
60
- { name: "overlay", value: "rgb(0 0 0 / 0.06)" },
61
- { name: "disabled", value: "rgb(0 0 0 / 0.12)" },
62
- ]
63
- };
64
-
65
- export const TYPOGRAPHY = {
66
- scale: [
67
- { name: "h1", size: "22pt", weight: "400" },
68
- { name: "h2", size: "17pt", weight: "500" },
69
- { name: "h3", size: "13pt", weight: "600" },
70
- { name: "h4", size: "13pt", weight: "500" },
71
- { name: "body", size: "13pt", weight: "400" },
72
- { name: "button", size: "13pt", weight: "400" },
73
- { name: "caption", size: "10pt", weight: "400" }
74
- ]
75
- };
76
-
77
- export const FONTS = {
78
- types: [
79
- { name: "sans", value: "font-textregular" },
80
- { name: "text-regular", value: "font-textregular" },
81
- { name: "text-bold", value: "font-textbold" },
82
- { name: "head-bold", value: "font-headbold" },
83
- { name: "head-regular", value: "font-headregular" },
84
- { name: "head-light", value: "font-headlight" },
85
- { name: "text-light", value: "font-textlight" },
86
- { name: "mono", value: "font-novamono" }
87
- ]
88
- };
89
-
90
- export const SHADOWS = {
91
- types: [
92
- { name: "xs", value: "0px 2px 4px rgba(0, 0, 0, 0.08)" },
93
- { name: "sm", value: "0px 4px 8px rgba(0, 0, 0, 0.125)" },
94
- { name: "md", value: "0px 8px 16px rgba(0, 0, 0, 0.125)" },
95
- { name: "lg", value: "0px 16px 32px rgba(0, 0, 0, 0.125)" },
96
- { name: "xl", value: "0px 32px 64px rgba(0, 0, 0, 0.125)" },
97
- { name: "2xl", value: "0px 64px 128px rgba(0, 0, 0, 0.125)" }
98
- ]
1
+ export const COLORS = {
2
+ // Brand Colors
3
+ brand: [
4
+ { name: "primary", value: "#0040c5" },
5
+ { name: "secondary", value: "#00b0f0" }
6
+ ],
7
+
8
+ // Primary Blues
9
+ blue: [
10
+ { name: "ultralight", value: "#dbeafe" },
11
+ { name: "lightest", value: "#3b82f6" },
12
+ { name: "light", value: "#0069ff" },
13
+ { name: "default", value: "#005ad7" },
14
+ { name: "medium", value: "#02307d" },
15
+ { name: "darker", value: "#001e50" },
16
+ { name: "darkest", value: "#000f28" },
17
+ { name: "wrc", value: "#0000c8" }
18
+ ],
19
+
20
+ // Accent Colors
21
+ accent: [
22
+ { name: "lightest", value: "#00b0f0" },
23
+ { name: "light", value: "#0099da" },
24
+ { name: "default", value: "#0087c1" },
25
+ { name: "dark", value: "#006ea6" },
26
+ { name: "darker", value: "#00437a" },
27
+ { name: "deepBlue", value: "#0c1a32" }
28
+ ],
29
+
30
+ // Neutral Colors
31
+ neutral: [
32
+ { name: "lightest", value: "#f3f4f6" },
33
+ { name: "lighter", value: "#e5e7eb" },
34
+ { name: "light", value: "#b5bbc5" },
35
+ { name: "default", value: "#9ca3af" },
36
+ { name: "dark", value: "#6a767d" },
37
+ { name: "darker", value: "#4b5563"},
38
+ { name: "black", value: "#000000" }
39
+ ],
40
+
41
+ // Slate Colors
42
+ slate: [
43
+ { name: "light", value: "#64748B" },
44
+ { name: "default", value: "#475569" },
45
+ { name: "dark", value: "#334155" },
46
+ { name: "darker", value: "#1e293b" }, // Previously 'darkest'
47
+ { name: "darkest", value: "#0f172a" } // New shade added
48
+ ],
49
+
50
+ // System Colors
51
+ system: [
52
+ { name: "success", value: "#10B981" },
53
+ { name: "warning", value: "#FBBF24" },
54
+ { name: "error", value: "#EF4444" },
55
+ { name: "info", value: "#3B82F6" }
56
+ ],
57
+
58
+ // State Colors
59
+ state: [
60
+ { name: "overlay", value: "rgb(0 0 0 / 0.06)" },
61
+ { name: "disabled", value: "rgb(0 0 0 / 0.12)" },
62
+ ]
63
+ };
64
+
65
+ export const TYPOGRAPHY = {
66
+ scale: [
67
+ { name: "h1", size: "22pt", weight: "400" },
68
+ { name: "h2", size: "17pt", weight: "500" },
69
+ { name: "h3", size: "13pt", weight: "600" },
70
+ { name: "h4", size: "13pt", weight: "500" },
71
+ { name: "body", size: "13pt", weight: "400" },
72
+ { name: "button", size: "13pt", weight: "400" },
73
+ { name: "caption", size: "10pt", weight: "400" }
74
+ ]
75
+ };
76
+
77
+ export const FONTS = {
78
+ types: [
79
+ { name: "sans", value: "font-textregular" },
80
+ { name: "text-regular", value: "font-textregular" },
81
+ { name: "text-bold", value: "font-textbold" },
82
+ { name: "head-bold", value: "font-headbold" },
83
+ { name: "head-regular", value: "font-headregular" },
84
+ { name: "head-light", value: "font-headlight" },
85
+ { name: "text-light", value: "font-textlight" },
86
+ { name: "mono", value: "font-novamono" }
87
+ ]
88
+ };
89
+
90
+ export const SHADOWS = {
91
+ types: [
92
+ { name: "xs", value: "0px 2px 4px rgba(0, 0, 0, 0.08)" },
93
+ { name: "sm", value: "0px 4px 8px rgba(0, 0, 0, 0.125)" },
94
+ { name: "md", value: "0px 8px 16px rgba(0, 0, 0, 0.125)" },
95
+ { name: "lg", value: "0px 16px 32px rgba(0, 0, 0, 0.125)" },
96
+ { name: "xl", value: "0px 32px 64px rgba(0, 0, 0, 0.125)" },
97
+ { name: "2xl", value: "0px 64px 128px rgba(0, 0, 0, 0.125)" }
98
+ ]
99
99
  };
package/src/env.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- /// <reference path="../.astro/types.d.ts" />
2
- /// <reference types="astro/client" />
3
- declare module '*.vue' {
4
- import type { DefineComponent } from 'vue'
5
- const component: DefineComponent<{}, {}, any>
6
- export default component
1
+ /// <reference path="../.astro/types.d.ts" />
2
+ /// <reference types="astro/client" />
3
+ declare module '*.vue' {
4
+ import type { DefineComponent } from 'vue'
5
+ const component: DefineComponent<{}, {}, any>
6
+ export default component
7
7
  }
@@ -1,61 +1,61 @@
1
- ---
2
- import HeadCommon from "./partials/HeadCommon.astro";
3
- import FooterCommon from "./partials/FooterCommon.astro";
4
- import HeadSEO from "../layouts/partials/HeadSEO.astro";
5
- import * as CONFIG from "../config";
6
- import { t, changeLanguage } from "i18next";
7
- import "../styles/main.css";
8
- import Copyright from "../components/Copyright.astro";
9
- const locale = "en";
10
- changeLanguage(locale);
11
- const { content = {} } = Astro.props;
12
- const canonicalURL = new URL(Astro.url.pathname, Astro.site).toString();
13
- ---
14
-
15
- <html dir={content.dir ?? "ltr"} lang={content.lang ?? "en-us"} class="initial">
16
- <head>
17
- <HeadCommon />
18
- <HeadSEO {content} canonicalURL={canonicalURL} />
19
- <title>
20
- {
21
- content.title
22
- ? `${content.title} 🚀 ${CONFIG.SITE.title}`
23
- : CONFIG.SITE.title
24
- }
25
- </title>
26
- </head>
27
-
28
- <body class="bg-blue-50">
29
- <div class="bg-white z-10 mb-11 relative">
30
- <slot />
31
- </div>
32
- <footer>
33
- <Copyright class="fixed bottom-0 z-0 w-full">
34
- <a
35
- slot="middle-item"
36
- href={`https://spoko.space`}
37
- target="_blank"
38
- rel="follow noopener"
39
- class="flex my-auto items-center mx-auto"
40
- title={`Proudly made in Poland by ${
41
- import.meta.env.COPYRIGHT_DOMAIN
42
- }`}
43
- >
44
- <div class="text-xxs md:text-xs mr-1 mt-0.5 whitespace-nowrap">
45
- createdy by
46
- </div>
47
- <img
48
- class="h-4 w-min md:h-5"
49
- src="spoko.space.svg"
50
- alt="Modern Websites"
51
- width="126"
52
- height="23"
53
- loading="lazy"
54
- />
55
- </a>
56
- </Copyright>
57
- <FooterCommon />
58
- </footer>
59
- </body>
60
- </html>
61
-
1
+ ---
2
+ import HeadCommon from "./partials/HeadCommon.astro";
3
+ import FooterCommon from "./partials/FooterCommon.astro";
4
+ import HeadSEO from "../layouts/partials/HeadSEO.astro";
5
+ import * as CONFIG from "../config";
6
+ import { t, changeLanguage } from "i18next";
7
+ import "../styles/main.css";
8
+ import Copyright from "../components/Copyright.astro";
9
+ const locale = "en";
10
+ changeLanguage(locale);
11
+ const { content = {} } = Astro.props;
12
+ const canonicalURL = new URL(Astro.url.pathname, Astro.site).toString();
13
+ ---
14
+
15
+ <html dir={content.dir ?? "ltr"} lang={content.lang ?? "en-us"} class="initial">
16
+ <head>
17
+ <HeadCommon />
18
+ <HeadSEO {content} canonicalURL={canonicalURL} />
19
+ <title>
20
+ {
21
+ content.title
22
+ ? `${content.title} 🚀 ${CONFIG.SITE.title}`
23
+ : CONFIG.SITE.title
24
+ }
25
+ </title>
26
+ </head>
27
+
28
+ <body class="bg-blue-50">
29
+ <div class="bg-white z-10 mb-11 relative">
30
+ <slot />
31
+ </div>
32
+ <footer>
33
+ <Copyright class="fixed bottom-0 z-0 w-full">
34
+ <a
35
+ slot="middle-item"
36
+ href={`https://spoko.space`}
37
+ target="_blank"
38
+ rel="follow noopener"
39
+ class="flex my-auto items-center mx-auto"
40
+ title={`Proudly made in Poland by ${
41
+ import.meta.env.COPYRIGHT_DOMAIN
42
+ }`}
43
+ >
44
+ <div class="text-xxs md:text-xs mr-1 mt-0.5 whitespace-nowrap">
45
+ createdy by
46
+ </div>
47
+ <img
48
+ class="h-4 w-min md:h-5"
49
+ src="spoko.space.svg"
50
+ alt="Modern Websites"
51
+ width="126"
52
+ height="23"
53
+ loading="lazy"
54
+ />
55
+ </a>
56
+ </Copyright>
57
+ <FooterCommon />
58
+ </footer>
59
+ </body>
60
+ </html>
61
+
@@ -1,81 +1,81 @@
1
- ---
2
- import HeadCommon from "./partials/HeadCommon.astro";
3
- import HeadSEO from "../layouts/partials/HeadSEO.astro";
4
- import Header from "../components/Header/Header.astro";
5
- import PageContent from "../components/PageContent.astro";
6
- import LeftSidebar from "../components/LeftSidebar.astro";
7
- import * as CONFIG from "../config";
8
- import { t, changeLanguage } from "i18next";
9
- import "../styles/main.css";
10
- import Copyright from "../components/Copyright.astro";
11
- const locale = "en";
12
- changeLanguage(locale);
13
- const { content = {} } = Astro.props;
14
- const currentPage = Astro.url.pathname;
15
- const canonicalURL = new URL(Astro.url.pathname, Astro.site).toString();
16
- ---
17
-
18
- <script>
19
- // Swiper Element
20
- import { register } from "swiper/element/bundle";
21
- document.addEventListener("astro:page-load", () => {
22
- register();
23
- });
24
- </script>
25
-
26
- <html dir={content.dir ?? "ltr"} lang={content.lang ?? "en-us"} class="initial">
27
- <head>
28
- <HeadCommon />
29
- <HeadSEO content={content} canonicalURL={canonicalURL} />
30
- <title>
31
- {
32
- content.title
33
- ? `${content.title} 🚀 ${CONFIG.SITE.title}`
34
- : CONFIG.SITE.title
35
- }
36
- </title>
37
- </head>
38
-
39
- <body class="bg-blue-50">
40
- <div class="sticky top-0 z-20 w-full bg-white/70">
41
- <Header currentPage={currentPage} />
42
- </div>
43
-
44
- <div class="flex bg-white z-10 mb-11 relative">
45
- <div class="sticky top-0 flex lg:(h-screen w-64) z-50">
46
- <div class="mr-auto" transition:name="sidebar">
47
- <LeftSidebar currentPage={currentPage} />
48
- </div>
49
- </div>
50
- <main class="pb-4 px-4 sm:px-8 col-auto sm:(pb-32) overflow-auto w-full">
51
- <PageContent content={content} transition:name="content">
52
- <slot />
53
- </PageContent>
54
- </main>
55
- </div>
56
- <footer>
57
- <Copyright class="fixed bottom-0 z-0 w-full">
58
- <a
59
- slot="middle-item"
60
- href="https://spoko.space"
61
- target="_blank"
62
- rel="follow noopener"
63
- class="flex my-auto items-center mx-auto"
64
- title={`Proudly made in Poland by spoko.space`}
65
- >
66
- <div class="text-xxs md:text-xs mr-1 mt-0.5 whitespace-nowrap">
67
- createdy by
68
- </div>
69
- <img
70
- class="h-4 md:h-5 w-min"
71
- src="/spoko.space.svg"
72
- alt="Modern Websites"
73
- width="126"
74
- height="23"
75
- loading="lazy"
76
- />
77
- </a>
78
- </Copyright>
79
- </footer>
80
- </body>
81
- </html>
1
+ ---
2
+ import HeadCommon from "./partials/HeadCommon.astro";
3
+ import HeadSEO from "../layouts/partials/HeadSEO.astro";
4
+ import Header from "../components/Header/Header.astro";
5
+ import PageContent from "../components/PageContent.astro";
6
+ import LeftSidebar from "../components/LeftSidebar.astro";
7
+ import * as CONFIG from "../config";
8
+ import { t, changeLanguage } from "i18next";
9
+ import "../styles/main.css";
10
+ import Copyright from "../components/Copyright.astro";
11
+ const locale = "en";
12
+ changeLanguage(locale);
13
+ const { content = {} } = Astro.props;
14
+ const currentPage = Astro.url.pathname;
15
+ const canonicalURL = new URL(Astro.url.pathname, Astro.site).toString();
16
+ ---
17
+
18
+ <script>
19
+ // Swiper Element
20
+ import { register } from "swiper/element/bundle";
21
+ document.addEventListener("astro:page-load", () => {
22
+ register();
23
+ });
24
+ </script>
25
+
26
+ <html dir={content.dir ?? "ltr"} lang={content.lang ?? "en-us"} class="initial">
27
+ <head>
28
+ <HeadCommon />
29
+ <HeadSEO content={content} canonicalURL={canonicalURL} />
30
+ <title>
31
+ {
32
+ content.title
33
+ ? `${content.title} 🚀 ${CONFIG.SITE.title}`
34
+ : CONFIG.SITE.title
35
+ }
36
+ </title>
37
+ </head>
38
+
39
+ <body class="bg-blue-50">
40
+ <div class="sticky top-0 z-20 w-full bg-white/70">
41
+ <Header currentPage={currentPage} />
42
+ </div>
43
+
44
+ <div class="flex bg-white z-10 mb-11 relative">
45
+ <div class="sticky top-0 flex lg:(h-screen w-64) z-50">
46
+ <div class="mr-auto" transition:name="sidebar">
47
+ <LeftSidebar currentPage={currentPage} />
48
+ </div>
49
+ </div>
50
+ <main class="pb-4 px-4 sm:px-8 col-auto sm:(pb-32) overflow-auto w-full">
51
+ <PageContent content={content} transition:name="content">
52
+ <slot />
53
+ </PageContent>
54
+ </main>
55
+ </div>
56
+ <footer>
57
+ <Copyright class="fixed bottom-0 z-0 w-full">
58
+ <a
59
+ slot="middle-item"
60
+ href="https://spoko.space"
61
+ target="_blank"
62
+ rel="follow noopener"
63
+ class="flex my-auto items-center mx-auto"
64
+ title={`Proudly made in Poland by spoko.space`}
65
+ >
66
+ <div class="text-xxs md:text-xs mr-1 mt-0.5 whitespace-nowrap">
67
+ createdy by
68
+ </div>
69
+ <img
70
+ class="h-4 md:h-5 w-min"
71
+ src="/spoko.space.svg"
72
+ alt="Modern Websites"
73
+ width="126"
74
+ height="23"
75
+ loading="lazy"
76
+ />
77
+ </a>
78
+ </Copyright>
79
+ </footer>
80
+ </body>
81
+ </html>
@@ -1,5 +1,5 @@
1
- ---
2
- import ReloadPrompt from "../../components/ReloadPrompt.astro";
3
- ---
4
-
1
+ ---
2
+ import ReloadPrompt from "../../components/ReloadPrompt.astro";
3
+ ---
4
+
5
5
  <ReloadPrompt />