beathers 5.2.1 → 5.3.0

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 (64) hide show
  1. package/CHANGELOG +113 -0
  2. package/dist/css/beathers-icons.min.css +1 -1
  3. package/dist/css/beathers-icons.min.css.map +1 -1
  4. package/dist/css/beathers.min.css +2 -2
  5. package/dist/css/beathers.min.css.map +1 -1
  6. package/dist/data/colors.d.ts +9 -0
  7. package/dist/data/colors.js +54 -0
  8. package/dist/data/font.d.ts +3 -0
  9. package/dist/data/font.js +32 -0
  10. package/dist/data/index.d.ts +2 -0
  11. package/dist/data/index.js +2 -0
  12. package/dist/index.d.ts +4 -2
  13. package/dist/index.js +4 -1
  14. package/dist/scripts/cli.js +7 -220
  15. package/dist/scripts/commands/build.d.ts +1 -0
  16. package/dist/scripts/commands/build.js +128 -0
  17. package/dist/scripts/commands/colors.d.ts +4 -0
  18. package/dist/scripts/commands/colors.js +140 -0
  19. package/dist/scripts/commands/fonts.d.ts +3 -0
  20. package/dist/scripts/commands/fonts.js +124 -0
  21. package/dist/scripts/commands/help.d.ts +1 -0
  22. package/dist/scripts/commands/help.js +42 -0
  23. package/dist/scripts/commands/index.d.ts +13 -0
  24. package/dist/scripts/commands/index.js +95 -0
  25. package/dist/scripts/commands/init.d.ts +1 -0
  26. package/dist/scripts/commands/init.js +129 -0
  27. package/dist/scripts/commands/list.d.ts +2 -0
  28. package/dist/scripts/commands/list.js +29 -0
  29. package/dist/scripts/commands/version.d.ts +1 -0
  30. package/dist/scripts/commands/version.js +13 -0
  31. package/dist/scripts/{BuildScssVariables.d.ts → helpers/BuildScssVariables.d.ts} +1 -1
  32. package/dist/scripts/{BuildScssVariables.js → helpers/BuildScssVariables.js} +4 -4
  33. package/dist/scripts/{LoadUserConfigs.d.ts → helpers/LoadUserConfigs.d.ts} +1 -1
  34. package/dist/scripts/{Merge.d.ts → helpers/Merge.d.ts} +1 -1
  35. package/dist/scripts/{ReadDefaultValues.d.ts → helpers/ReadDefaultValues.d.ts} +1 -1
  36. package/dist/scripts/{ReadDefaultValues.js → helpers/ReadDefaultValues.js} +6 -2
  37. package/dist/scripts/helpers/index.d.ts +5 -0
  38. package/dist/scripts/helpers/index.js +5 -0
  39. package/dist/scripts/types.d.ts +41 -4
  40. package/dist/scripts/types.js +1 -0
  41. package/package.json +17 -14
  42. package/readme.md +29 -1
  43. package/src/scss/_variables.scss +1 -305
  44. package/src/scss/beathers-icons.min.scss +245 -245
  45. package/src/scss/beathers.min.scss +2 -4
  46. package/src/scss/functions/_colors.scss +79 -68
  47. package/src/scss/functions/_mediaQueries.scss +22 -12
  48. package/src/scss/functions/_others.scss +31 -22
  49. package/src/scss/functions/_typographic.scss +11 -2
  50. package/src/scss/functions/_validations.scss +38 -43
  51. package/src/scss/settings/_configs.scss +1 -72
  52. package/src/scss/settings/_defaults.scss +139 -212
  53. package/src/scss/style/_colors.scss +39 -23
  54. package/src/scss/style/_grid.scss +23 -25
  55. package/src/scss/style/_resets.scss +119 -0
  56. package/src/scss/style/_shaping.scss +142 -89
  57. package/src/scss/style/_typographic.scss +79 -36
  58. package/dist/scripts/BuildTheme.d.ts +0 -1
  59. package/dist/scripts/BuildTheme.js +0 -75
  60. package/src/scss/settings/_resets.scss +0 -103
  61. /package/dist/scripts/{CallNewVariables.d.ts → helpers/CallNewVariables.d.ts} +0 -0
  62. /package/dist/scripts/{CallNewVariables.js → helpers/CallNewVariables.js} +0 -0
  63. /package/dist/scripts/{LoadUserConfigs.js → helpers/LoadUserConfigs.js} +0 -0
  64. /package/dist/scripts/{Merge.js → helpers/Merge.js} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "beathers",
3
- "version": "5.2.1",
3
+ "version": "5.3.0",
4
4
  "type": "module",
5
5
  "description": "Beather is a lightweight SCSS library that serves as a comprehensive design system for your projects. It offers a structured and consistent approach to manage colors, fonts, and other design related variables, making it easier to maintain a cohesive visual identity across your application.",
6
6
  "main": "dist/index.js",
@@ -8,6 +8,16 @@
8
8
  "bin": {
9
9
  "beathers": "dist/scripts/cli.js"
10
10
  },
11
+ "scripts": {
12
+ "watch": "nodemon --watch src/scss/ --ext scss --exec \"npm-run-all build\"",
13
+ "build": "sass --style compressed --source-map --embed-sources --no-error-css src/scss/:dist/css/",
14
+ "build:test": "tsx src/scripts/cli.ts",
15
+ "build:publish": "rimraf dist && tsc && npm run build",
16
+ "lint": "eslint . && stylelint \"**/*.scss\"",
17
+ "lint:fix": "eslint . --fix && stylelint \"**/*.scss\" --fix",
18
+ "format:check": "prettier --check --ignore-path .gitignore .",
19
+ "format:fix": "prettier --write --ignore-path .gitignore . && npm run lint"
20
+ },
11
21
  "keywords": [
12
22
  "design-system",
13
23
  "scss-library",
@@ -55,7 +65,9 @@
55
65
  "rimraf": "^6.0.1",
56
66
  "sass": "^1.88.0",
57
67
  "stylelint": "^16.19.1",
58
- "stylelint-config-standard-scss": "^15.0.0",
68
+ "stylelint-config-prettier": "^9.0.5",
69
+ "stylelint-config-standard-scss": "^15.0.1",
70
+ "stylelint-scss": "^6.12.0",
59
71
  "tsx": "^4.19.4",
60
72
  "typescript": "^5.8.3",
61
73
  "typescript-eslint": "^8.32.1"
@@ -65,16 +77,7 @@
65
77
  "dist/**/*.{js,d.ts}",
66
78
  "src/scss/**/*.scss",
67
79
  "public/images/logo.png",
80
+ "CHANGELOG",
68
81
  "readme.md"
69
- ],
70
- "scripts": {
71
- "watch": "nodemon --watch src/scss/ --ext scss --exec \"npm-run-all build:expanded\"",
72
- "build:compressed": "sass --style compressed --source-map --embed-sources --no-error-css src/scss/:dist/css/",
73
- "build:expanded": "sass --style expanded --source-map --embed-sources --no-error-css src/scss/:dist/css/",
74
- "build:user-configs": "tsx src/scripts/BuildTheme.ts",
75
- "prepublish": "rimraf dist && tsc && pnpm build:compressed",
76
- "lint": "eslint . && stylelint \"**/*.scss\"",
77
- "format:check": "prettier --check --ignore-path .gitignore .",
78
- "format:fix": "prettier --write --ignore-path .gitignore . && pnpm lint"
79
- }
80
- }
82
+ ]
83
+ }
package/readme.md CHANGED
@@ -1,5 +1,5 @@
1
1
  <div align="center">
2
- <img src="https://raw.githubusercontent.com/BhoenixStudio/Beathers/main/public/images/logo.png" alt="Beathers logo" width="700" height="312">
2
+ <img src="https://unpkg.com/beathers@latest/public/images/logo.png" alt="Beathers logo" width="700" height="312">
3
3
  <p align="center">The Perfect Fusion of Strength and Featherlight Agility</p>
4
4
  </div>
5
5
 
@@ -42,6 +42,34 @@ Generate your custom CSS from the configuration:
42
42
  npx beathers build
43
43
  ```
44
44
 
45
+ ### CLI Commands
46
+
47
+ Beathers provides a comprehensive set of CLI commands to manage your design system:
48
+
49
+ #### Configuration
50
+
51
+ - `npx beathers init` - Initialize a new configuration file
52
+ - `npx beathers build` - Build theme from configuration
53
+ - `npx beathers build --local` - Build with custom output path
54
+
55
+ #### Font Management
56
+
57
+ - `npx beathers add-font` - Add a new font to your configuration
58
+ - `npx beathers remove-font` - Remove a font from your configuration
59
+ - `npx beathers import-font-sample` - Import a sample font configuration
60
+
61
+ #### Color Management
62
+
63
+ - `npx beathers add-colors` - Add new colors to your configuration
64
+ - `npx beathers remove-color` - Remove a color from your configuration
65
+ - `npx beathers import-color-pack` - Import a complete color pack from available packs
66
+ - `npx beathers import-color` - Import a specific color from available packs
67
+
68
+ #### Help & Information
69
+
70
+ - `npx beathers --help` - Show all available commands
71
+ - `npx beathers --version` - Show current version
72
+
45
73
  ### Import in Your Project
46
74
 
47
75
  **CSS Import (Recommended):**
@@ -1,305 +1 @@
1
- // Generated by BuildTheme.ts
2
- // Do not edit this file directly
3
-
4
-
5
-
6
- // --- Colors ---
7
- $colors: (
8
- "main": (
9
- "light": #ffffff,
10
- "dark": #1a1d21,
11
- ),
12
- "second": (
13
- "light": #f8f8ff,
14
- "dark": #2e2e3f,
15
- ),
16
- "third": (
17
- "light": #ebecf7,
18
- "dark": #39394a,
19
- ),
20
- "t1": (
21
- "light": #303030,
22
- "dark": #fafafa,
23
- ),
24
- "t2": (
25
- "light": #404040,
26
- "dark": #f5f5f5,
27
- ),
28
- "t3": (
29
- "light": #404040,
30
- "dark": #f5f5f5,
31
- ),
32
- "d1": (
33
- "light": #505050,
34
- "dark": #dfdfdf,
35
- ),
36
- "d2": (
37
- "light": #808080,
38
- "dark": #bdbdbd,
39
- ),
40
- "d3": (
41
- "light": #909090,
42
- "dark": #9e9e9e,
43
- ),
44
- "success": (
45
- "light": #099750,
46
- "dark": #5ff2a9,
47
- ),
48
- "primary": (
49
- "light": #2a6e9f,
50
- "dark": #89c5f0,
51
- ),
52
- "secondary": (
53
- "light": #545454,
54
- "dark": #c6c3c3,
55
- ),
56
- "danger": (
57
- "light": #b5333b,
58
- "dark": #ee6b74,
59
- ),
60
- "warning": (
61
- "light": #ca9420,
62
- "dark": #fcd06f,
63
- ),
64
- "info": (
65
- "light": #0c8181,
66
- "dark": #49d1d1,
67
- ),
68
- "facebook": (
69
- "light": #3b5998,
70
- "dark": #3b5998,
71
- ),
72
- "messenger": (
73
- "light": #006aff,
74
- "dark": #006aff,
75
- ),
76
- "whatsapp": (
77
- "light": #25d366,
78
- "dark": #25d366,
79
- ),
80
- "instagram": (
81
- "light": #3f729b,
82
- "dark": #3f729b,
83
- ),
84
- "google": (
85
- "light": #4285f4,
86
- "dark": #4285f4,
87
- ),
88
- "signal": (
89
- "light": #2190e8,
90
- "dark": #2190e8,
91
- ),
92
- "twitter": (
93
- "light": #00acee,
94
- "dark": #00acee,
95
- ),
96
- "telegram": (
97
- "light": #0088cc,
98
- "dark": #0088cc,
99
- ),
100
- "youtube": (
101
- "light": #ff0000,
102
- "dark": #ff0000,
103
- ),
104
- "linkedin": (
105
- "light": #0077b5,
106
- "dark": #0077b5,
107
- ),
108
- "behance": (
109
- "light": #053eff,
110
- "dark": #053eff,
111
- ),
112
- "github": (
113
- "light": #171515,
114
- "dark": #171515,
115
- ),
116
- "gitlab": (
117
- "light": #fca326,
118
- "dark": #fca326,
119
- ),
120
- "wechat": (
121
- "light": #09b83e,
122
- "dark": #09b83e,
123
- ),
124
- "tiktok": (
125
- "light": #ff0050,
126
- "dark": #ff0050,
127
- ),
128
- "snapchat": (
129
- "light": #fffc00,
130
- "dark": #fffc00,
131
- ),
132
- "pinterest": (
133
- "light": #e60023,
134
- "dark": #e60023,
135
- ),
136
- "reddit": (
137
- "light": #ff4500,
138
- "dark": #ff4500,
139
- ),
140
- "teams": (
141
- "light": #464eb8,
142
- "dark": #464eb8,
143
- ),
144
- "twitch": (
145
- "light": #6441a5,
146
- "dark": #6441a5,
147
- ),
148
- "dribbble": (
149
- "light": #ea4c89,
150
- "dark": #ea4c89,
151
- ),
152
- "custom-1": (
153
- "light": #4289c7,
154
- "dark": #75b0e4,
155
- ),
156
- "custom-2": (
157
- "light": #39c2cb,
158
- "dark": #79e2e9,
159
- ),
160
- "custom-3": (
161
- "light": #36c07e,
162
- "dark": #86f3be,
163
- ),
164
- "custom-4": (
165
- "light": #a84fd1,
166
- "dark": #cd87ee,
167
- ),
168
- "custom-5": (
169
- "light": #df4f60,
170
- "dark": #df7884,
171
- ),
172
- "custom-6": (
173
- "light": #dec338,
174
- "dark": #e6d689,
175
- ),
176
- "custom-7": (
177
- "light": #ea6e2c,
178
- "dark": #e29f7b,
179
- ),
180
- "custom-8": (
181
- "light": #a66d38,
182
- "dark": #e3b387,
183
- ),
184
- "custom-9": (
185
- "light": #eb30a0,
186
- "dark": #e779bb,
187
- ),
188
- "custom-10": (
189
- "light": #1e24a5,
190
- "dark": #5d64ea,
191
- ),
192
- "black": (
193
- "light": #000000,
194
- "dark": #000000,
195
- ),
196
- "white": (
197
- "light": #ffffff,
198
- "dark": #ffffff,
199
- ),
200
- );
201
-
202
-
203
- // --- Typography ---
204
- $defaultFontFamilies: system-ui, -apple-system, Roboto, Arial, sans-serif;
205
- $fontMainPath: "/fonts/";
206
- $fontFormat: "woff2";
207
- $fontWeights: ("light", "regular", "medium", "bold");
208
- $fontStyles: ("normal");
209
- $fontSizes: (
210
- "h1": 96px,
211
- "h2": 60px,
212
- "h3": 40px,
213
- "h4": 34px,
214
- "h5": 24px,
215
- "h6": 20px,
216
- "subtitle1": 16px,
217
- "subtitle2": 14px,
218
- "body1": 16px,
219
- "body2": 14px,
220
- "button": 14px,
221
- "caption": 12px,
222
- "overline": 10px,
223
- );
224
- $textTruncate: 10;
225
- $fonts: (
226
- "font1": (
227
- "variants": (
228
- "en": (
229
- "title": roboto,
230
- "unicode": "U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD",
231
- ),
232
- "ar": (
233
- "title": cairo,
234
- "unicode": "U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD",
235
- ),
236
- ),
237
- ),
238
- );
239
-
240
-
241
- // --- Settings ---
242
- $axisDivisions: 12;
243
- $opacities: (10, 20, 30, 40, 50, 60, 70, 80, 90, 100);
244
- $blurValues: (5, 10, 15, 25);
245
- $insetValues: (0, 5, 15, 25);
246
- $bordersValue: 10;
247
- $radiuses: (5, 10, 15, 25);
248
- $breakpoints: (
249
- null: 0,
250
- sm: 576px,
251
- md: 768px,
252
- lg: 992px,
253
- xl: 1200px,
254
- xxl: 1400px,
255
- );
256
- $wrappers: (
257
- null: undefined 1.5rem,
258
- sm: undefined 2rem,
259
- md: undefined 3rem,
260
- lg: undefined 3rem,
261
- xl: undefined 2rem,
262
- xxl: undefined 2rem,
263
- );
264
- $guttersValues: (
265
- 1: 0.25rem,
266
- 2: 0.5rem,
267
- 3: 0.75rem,
268
- 4: 1rem,
269
- 5: 1.5rem,
270
- 6: 2rem,
271
- auto: auto,
272
- );
273
-
274
-
275
- // --- Roles ---
276
- $useMediaQueries: false;
277
- $useIcons: true;
278
- $useFontFamilies: true;
279
- $useFontSizes: true;
280
- $useFontShapes: true;
281
- $useTextAligns: true;
282
- $useTextTruncate: true;
283
- $useColors: true;
284
- $useColorsOpacities: true;
285
- $useColorsLightMode: true;
286
- $useColorsDarkMode: true;
287
- $useCurrentColors: true;
288
- $useRootColors: true;
289
- $useGrid: true;
290
- $useFlex: true;
291
- $useTransitions: true;
292
- $useWrappers: true;
293
- $useShadows: true;
294
- $useDisplays: true;
295
- $useOverflows: true;
296
- $useOpacities: true;
297
- $useBlur: true;
298
- $useObjectFits: true;
299
- $usePositions: true;
300
- $useInsets: true;
301
- $useSizes: true;
302
- $useGutters: true;
303
- $useBorders: true;
304
- $useTextBorders: true;
305
- $useRadius: true;
1
+ /* stylelint-disable no-empty-source */