spoko-design-system 0.9.6 → 1.0.1

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 (180) hide show
  1. package/.astro/content.d.ts +1 -1
  2. package/.astro/data-store.json +1 -1
  3. package/.astro/settings.json +4 -4
  4. package/.astro/types.d.ts +2 -1
  5. package/.claude/settings.local.json +11 -1
  6. package/.github/dependabot.yml +11 -11
  7. package/.github/todo.yml +3 -3
  8. package/.github/workflows/deploy.yml +39 -39
  9. package/.github/workflows/release.yml +64 -0
  10. package/.releaserc.json +93 -0
  11. package/.stackblitzrc +5 -5
  12. package/.vscode/extensions.json +4 -5
  13. package/.vscode/launch.json +11 -11
  14. package/.vscode/settings.json +1 -5
  15. package/CHANGELOG.md +20 -0
  16. package/CONTRIBUTING.md +183 -0
  17. package/LICENSE +21 -21
  18. package/README.md +132 -116
  19. package/astro.config.mjs +84 -86
  20. package/dev-dist/sw.js +91 -91
  21. package/dev-dist/workbox-c676b6d3.js +3391 -3391
  22. package/icon.config.ts +340 -310
  23. package/index.ts +70 -70
  24. package/package.json +19 -11
  25. package/public/arrow-bottom.svg +7 -7
  26. package/public/fonts/lg.svg +53 -53
  27. package/public/fonts/vwhead-bold-demo.html +549 -549
  28. package/public/fonts/vwhead-regular-demo.html +549 -549
  29. package/public/fonts/vwtext-bold-demo.html +549 -549
  30. package/public/fonts/vwtext-regular-demo.html +549 -549
  31. package/public/github.svg +3 -3
  32. package/public/grid_dot.svg +4 -4
  33. package/public/linkedin.svg +44 -44
  34. package/public/make-scrollable-code-focusable.js +3 -3
  35. package/public/pagefind.yml +3 -3
  36. package/public/polo.blue.svg +29 -29
  37. package/public/spoko.space.svg +71 -71
  38. package/public/twitter.svg +46 -46
  39. package/renovate.json +6 -6
  40. package/sandbox.config.json +11 -11
  41. package/src/MyComponent.astro +8 -8
  42. package/src/components/Badge.vue +19 -19
  43. package/src/components/Badges.vue +21 -21
  44. package/src/components/Breadcrumbs.vue +94 -94
  45. package/src/components/Button.vue +101 -101
  46. package/src/components/ButtonCopy.astro +183 -183
  47. package/src/components/ButtonCopy.vue +36 -36
  48. package/src/components/Card.astro +27 -27
  49. package/src/components/Carousel.astro +26 -26
  50. package/src/components/Category/CategoriesCarousel.astro +100 -101
  51. package/src/components/Category/CategoryDetails.astro +168 -169
  52. package/src/components/Category/CategoryLink.vue +28 -28
  53. package/src/components/Category/CategorySidebarToggler.vue +9 -9
  54. package/src/components/Category/CategoryTile.astro +37 -37
  55. package/src/components/Category/CategoryViewToggler.astro +89 -89
  56. package/src/components/Category/SubCategoryLink.vue +19 -19
  57. package/src/components/Copyright.astro +12 -12
  58. package/src/components/Date.astro +7 -7
  59. package/src/components/Faq.astro +32 -33
  60. package/src/components/FaqItem.astro +80 -80
  61. package/src/components/FeaturesList.vue +37 -37
  62. package/src/components/FuckRussia.vue +62 -62
  63. package/src/components/HandDrive.astro +55 -29
  64. package/src/components/Header/Header.astro +210 -210
  65. package/src/components/Header/SkipToContent.astro +1 -1
  66. package/src/components/Headline.vue +107 -87
  67. package/src/components/Image.astro +30 -30
  68. package/src/components/LeftSidebar.astro +53 -53
  69. package/src/components/MainColors.vue +22 -22
  70. package/src/components/MainInput.vue +15 -15
  71. package/src/components/Modal.astro +27 -27
  72. package/src/components/PageContent.astro +5 -5
  73. package/src/components/PartNumber.vue +27 -27
  74. package/src/components/Post/PostCategories.astro +41 -41
  75. package/src/components/Post/PostCategories.vue +30 -30
  76. package/src/components/PostHeader.astro +103 -103
  77. package/src/components/PrCode.vue +141 -141
  78. package/src/components/Product/ProductButton.vue +18 -18
  79. package/src/components/Product/ProductCarousel.astro +35 -35
  80. package/src/components/Product/ProductEngineType.vue +42 -42
  81. package/src/components/Product/ProductImage.astro +40 -40
  82. package/src/components/Product/ProductLink.astro +96 -101
  83. package/src/components/Product/ProductLink.vue +59 -59
  84. package/src/components/Product/ProductLinkInfo.astro +37 -37
  85. package/src/components/Product/ProductNumber.astro +60 -60
  86. package/src/components/ProductCarousel.astro +38 -38
  87. package/src/components/ProductCodes.vue +39 -39
  88. package/src/components/ProductDetailName.vue +52 -52
  89. package/src/components/ProductDetailsList.vue +216 -216
  90. package/src/components/ProductTile.astro +47 -48
  91. package/src/components/Quote.vue +23 -23
  92. package/src/components/ReloadPrompt.astro +50 -50
  93. package/src/components/SlimBanner.vue +72 -72
  94. package/src/components/Table.vue +32 -32
  95. package/src/components/TableOfContents.astro +15 -15
  96. package/src/components/Translations.vue +23 -23
  97. package/src/components/flags/FlagPL.vue +3 -3
  98. package/src/components/flags/FlagUA.vue +2 -2
  99. package/src/components/{Layout → layout}/CallToAction.astro +52 -52
  100. package/src/components/{Layout → layout}/Container.astro +7 -7
  101. package/src/components/{Layout → layout}/Header.astro +80 -80
  102. package/src/config.ts +56 -56
  103. package/src/design.config.ts +98 -98
  104. package/src/env.d.ts +6 -6
  105. package/src/layouts/Layout.astro +58 -61
  106. package/src/layouts/MainLayout.astro +78 -81
  107. package/src/layouts/partials/FooterCommon.astro +4 -4
  108. package/src/layouts/partials/HeadCommon.astro +44 -44
  109. package/src/layouts/partials/HeadSEO.astro +41 -41
  110. package/src/pages/components/badges.mdx +57 -57
  111. package/src/pages/components/breadcrumbs.mdx +139 -139
  112. package/src/pages/components/buttons.mdx +359 -360
  113. package/src/pages/components/card.mdx +294 -294
  114. package/src/pages/components/carousel.mdx +62 -62
  115. package/src/pages/components/copyright.mdx +42 -42
  116. package/src/pages/components/details-list.mdx +115 -115
  117. package/src/pages/components/features-list.mdx +37 -37
  118. package/src/pages/components/flags.mdx +49 -49
  119. package/src/pages/components/fuck-russia.mdx +39 -39
  120. package/src/pages/components/hand-drive.mdx +78 -38
  121. package/src/pages/components/headline.mdx +137 -137
  122. package/src/pages/components/icons.astro +135 -135
  123. package/src/pages/components/image.mdx +513 -513
  124. package/src/pages/components/input.mdx +367 -367
  125. package/src/pages/components/jumbotron.mdx +359 -359
  126. package/src/pages/components/modal.mdx +64 -64
  127. package/src/pages/components/post-header.mdx +64 -64
  128. package/src/pages/components/pr-code.mdx +65 -65
  129. package/src/pages/components/product-number.mdx +58 -58
  130. package/src/pages/components/product-tile.mdx +51 -51
  131. package/src/pages/components/quote.mdx +33 -33
  132. package/src/pages/components/slimbanner.mdx +35 -35
  133. package/src/pages/components/table.mdx +108 -108
  134. package/src/pages/core/colors.mdx +10 -10
  135. package/src/pages/core/grid.mdx +89 -89
  136. package/src/pages/core/introduction.mdx +77 -77
  137. package/src/pages/core/shadows.astro +20 -20
  138. package/src/pages/core/typography.astro +49 -49
  139. package/src/pages/index.astro +264 -133
  140. package/src/pages/patterns/introduction.mdx +60 -60
  141. package/src/pwa.ts +12 -12
  142. package/src/styles/_variables.scss +70 -70
  143. package/src/styles/base/base.css +184 -184
  144. package/src/styles/base/grid.css +92 -92
  145. package/src/styles/base/typography.css +70 -70
  146. package/src/styles/content.css +73 -73
  147. package/src/styles/main.css +7 -7
  148. package/src/types/Product.ts +31 -31
  149. package/src/types/astro.d.ts +3 -3
  150. package/src/utils/category/getMainCategoryList.ts +8 -17
  151. package/src/utils/product/getPriceFormatted.ts +12 -15
  152. package/src/utils/product/getProductChecklist.ts +16 -17
  153. package/src/utils/product/useFormatProductNumber.ts +41 -41
  154. package/src/utils/seo/getShorterDescription.ts +14 -14
  155. package/src/utils/text/formatDate.ts +5 -5
  156. package/src/utils/text/formatLocaleNumber.ts +5 -6
  157. package/src/utils/text/formatPad.ts +12 -12
  158. package/src/utils/text/getNumberFormatted.ts +33 -33
  159. package/src/utils/text/getTranslatedLink.ts +5 -5
  160. package/src/utils/text.ts +19 -19
  161. package/tailwind.config.cjs +8 -8
  162. package/tsconfig.json +28 -28
  163. package/uno-config/index.ts +262 -268
  164. package/uno-config/theme/breakpoints.ts +9 -9
  165. package/uno-config/theme/colors.ts +64 -64
  166. package/uno-config/theme/dimensions.ts +17 -17
  167. package/uno-config/theme/effects.ts +14 -14
  168. package/uno-config/theme/grid.ts +10 -10
  169. package/uno-config/theme/index.ts +28 -28
  170. package/uno-config/theme/shortcuts/buttons.ts +53 -53
  171. package/uno-config/theme/shortcuts/components.ts +123 -123
  172. package/uno-config/theme/shortcuts/index.ts +20 -20
  173. package/uno-config/theme/shortcuts/layout.ts +74 -74
  174. package/uno-config/theme/typography.ts +29 -29
  175. package/uno.config.ts +2 -2
  176. package/.astro/icon.d.ts +0 -11909
  177. package/astro-i18next.config.mjs +0 -18
  178. package/astro-i18next.config.ts +0 -11
  179. package/public/locales/en/translation.json +0 -13
  180. package/public/locales/pl/translation.json +0 -13
@@ -1,80 +1,80 @@
1
- ---
2
- const { class: className } = Astro.props;
3
- import { Icon } from "astro-icon/components";
4
-
5
- const navItemsLeft = [
6
- {
7
- title: "Components",
8
- description: "The building blocks for our UI.",
9
- url: "/components/buttons",
10
- img: "/Components.jpg",
11
- },
12
- {
13
- title: "Patterns",
14
- description: "Common patterns for building interfaces.",
15
- url: "/patterns/introduction",
16
- img: "/Patterns.jpg",
17
- },
18
- ];
19
- ---
20
-
21
- <nav
22
- itemscope
23
- itemtype="http://schema.org/WPHeader"
24
- class:list={[
25
- className,
26
- "nav print-hidden mx-auto px-4 shadow-md relative flex items-center justify-between h-24 sm:h-14 flex-wrap sm:flex-nowrap pt-1 sm:pt-0",
27
- ]}
28
- >
29
- <div class="flex items-center justify-start sm:items-stretch order-1">
30
- <slot name="logo" />
31
-
32
- <div class="hidden sm:block sm:ml-6">
33
- <div class="flex space-x-4" itemprop="hasPart">
34
- {
35
- navItemsLeft.map(({ title, description, url, img }) => (
36
- <a
37
- href={url}
38
- class="text-gray-400 hover:bg-blue-darker hover:text-white px-3 py-1 rounded-full text-sm font-medium"
39
- title={description}
40
- itemprop="url"
41
- >
42
- {title}
43
- </a>
44
- ))
45
- }
46
- </div>
47
- </div>
48
- </div>
49
-
50
- <div
51
- class="relative md:block sm:ml-4 w-full order-4 h-10 md:(w-64 mr-auto order-2)"
52
- >
53
- <slot name="search" />
54
- </div>
55
-
56
- <div
57
- class="flex items-center pr-0 sm:static sm:inset-auto ml-auto sm:ml-6 -mr-2 print:hidden order-3 sm:order-3 w-20 justify-end"
58
- itemprop="hasPart"
59
- itemscope
60
- itemtype="http://schema.org/SiteNavigationElement"
61
- >
62
- <a
63
- class="icon-btn mx-2"
64
- title=""
65
- aria-label=""
66
- href="#"
67
- itemprop="url"
68
- data-astro-reload
69
- >
70
- <Icon name="carbon:language" />
71
- </a>
72
- </div>
73
- </nav>
74
-
75
- <style is:global>
76
- nav {
77
- /* display: grid; */
78
- place-items: center;
79
- }
80
- </style>
1
+ ---
2
+ const { class: className } = Astro.props;
3
+ import { Icon } from "astro-icon/components";
4
+
5
+ const navItemsLeft = [
6
+ {
7
+ title: "Components",
8
+ description: "The building blocks for our UI.",
9
+ url: "/components/buttons",
10
+ img: "/Components.jpg",
11
+ },
12
+ {
13
+ title: "Patterns",
14
+ description: "Common patterns for building interfaces.",
15
+ url: "/patterns/introduction",
16
+ img: "/Patterns.jpg",
17
+ },
18
+ ];
19
+ ---
20
+
21
+ <nav
22
+ itemscope
23
+ itemtype="http://schema.org/WPHeader"
24
+ class:list={[
25
+ className,
26
+ "nav print-hidden mx-auto px-4 shadow-md relative flex items-center justify-between h-24 sm:h-14 flex-wrap sm:flex-nowrap pt-1 sm:pt-0",
27
+ ]}
28
+ >
29
+ <div class="flex items-center justify-start sm:items-stretch order-1">
30
+ <slot name="logo" />
31
+
32
+ <div class="hidden sm:block sm:ml-6">
33
+ <div class="flex space-x-4" itemprop="hasPart">
34
+ {
35
+ navItemsLeft.map(({ title, description, url, img }) => (
36
+ <a
37
+ href={url}
38
+ class="text-gray-400 hover:bg-blue-darker hover:text-white px-3 py-1 rounded-full text-sm font-medium"
39
+ title={description}
40
+ itemprop="url"
41
+ >
42
+ {title}
43
+ </a>
44
+ ))
45
+ }
46
+ </div>
47
+ </div>
48
+ </div>
49
+
50
+ <div
51
+ class="relative md:block sm:ml-4 w-full order-4 h-10 md:(w-64 mr-auto order-2)"
52
+ >
53
+ <slot name="search" />
54
+ </div>
55
+
56
+ <div
57
+ class="flex items-center pr-0 sm:static sm:inset-auto ml-auto sm:ml-6 -mr-2 print:hidden order-3 sm:order-3 w-20 justify-end"
58
+ itemprop="hasPart"
59
+ itemscope
60
+ itemtype="http://schema.org/SiteNavigationElement"
61
+ >
62
+ <a
63
+ class="icon-btn mx-2"
64
+ title=""
65
+ aria-label=""
66
+ href="#"
67
+ itemprop="url"
68
+ data-astro-reload
69
+ >
70
+ <Icon name="carbon:language" />
71
+ </a>
72
+ </div>
73
+ </nav>
74
+
75
+ <style is:global>
76
+ nav {
77
+ /* display: grid; */
78
+ place-items: center;
79
+ }
80
+ </style>
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,58 @@
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 "../styles/main.css";
7
+ import Copyright from "../components/Copyright.astro";
8
+ const { content = {} } = Astro.props;
9
+ const canonicalURL = new URL(Astro.url.pathname, Astro.site).toString();
10
+ ---
11
+
12
+ <html dir={content.dir ?? "ltr"} lang={content.lang ?? "en-us"} class="initial">
13
+ <head>
14
+ <HeadCommon />
15
+ <HeadSEO {content} canonicalURL={canonicalURL} />
16
+ <title>
17
+ {
18
+ content.title
19
+ ? `${content.title} 🚀 ${CONFIG.SITE.title}`
20
+ : CONFIG.SITE.title
21
+ }
22
+ </title>
23
+ </head>
24
+
25
+ <body class="bg-blue-50">
26
+ <div class="bg-white z-10 mb-11 relative">
27
+ <slot />
28
+ </div>
29
+ <footer>
30
+ <Copyright class="fixed bottom-0 z-0 w-full">
31
+ <a
32
+ slot="middle-item"
33
+ href={`https://spoko.space`}
34
+ target="_blank"
35
+ rel="follow noopener"
36
+ class="flex my-auto items-center mx-auto"
37
+ title={`Proudly made in Poland by ${
38
+ import.meta.env.COPYRIGHT_DOMAIN
39
+ }`}
40
+ >
41
+ <div class="text-xxs md:text-xs mr-1 mt-0.5 whitespace-nowrap">
42
+ createdy by
43
+ </div>
44
+ <img
45
+ class="h-4 w-min md:h-5"
46
+ src="spoko.space.svg"
47
+ alt="Modern Websites"
48
+ width="126"
49
+ height="23"
50
+ loading="lazy"
51
+ />
52
+ </a>
53
+ </Copyright>
54
+ <FooterCommon />
55
+ </footer>
56
+ </body>
57
+ </html>
58
+