@seyuna/postcss 1.0.0-canary.34 → 1.0.0-canary.35
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/CHANGELOG.md +7 -0
- package/dist/at-rules/import.js +4 -8
- package/dist/styles/seyuna-global.css +94 -0
- package/package.json +2 -2
- package/src/at-rules/import.ts +5 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
# [1.0.0-canary.35](https://github.com/seyuna-corp/seyuna-postcss/compare/v1.0.0-canary.34...v1.0.0-canary.35) (2026-01-22)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* ensure styles are copied to dist and all reset nodes are injected ([fad1482](https://github.com/seyuna-corp/seyuna-postcss/commit/fad14823c9abe6f3c482989e96970fdd5c7aed45))
|
|
7
|
+
|
|
1
8
|
# [1.0.0-canary.34](https://github.com/seyuna-corp/seyuna-postcss/compare/v1.0.0-canary.33...v1.0.0-canary.34) (2026-01-22)
|
|
2
9
|
|
|
3
10
|
|
package/dist/at-rules/import.js
CHANGED
|
@@ -32,14 +32,10 @@ export function handleImport(atRule, context) {
|
|
|
32
32
|
const globalStylesPath = path.resolve(__dirname, "../styles/seyuna-global.css");
|
|
33
33
|
if (fs.existsSync(globalStylesPath)) {
|
|
34
34
|
const globalCss = fs.readFileSync(globalStylesPath, "utf-8");
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
if (node.type === "atrule" &&
|
|
40
|
-
(node.name === "layer" || node.name === "media")) {
|
|
41
|
-
nodes.push(node.clone());
|
|
42
|
-
}
|
|
35
|
+
const parsed = postcss.parse(globalCss);
|
|
36
|
+
// Push all nodes from the global styles (reset, layers, etc.)
|
|
37
|
+
parsed.nodes.forEach((node) => {
|
|
38
|
+
nodes.push(node.clone());
|
|
43
39
|
});
|
|
44
40
|
}
|
|
45
41
|
else {
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
@layer reset, base, components, utilities;
|
|
2
|
+
|
|
3
|
+
@layer reset {
|
|
4
|
+
/*
|
|
5
|
+
Reset all elements to a zeroed baseline to ensure consistency in all browsers.
|
|
6
|
+
*/
|
|
7
|
+
*,
|
|
8
|
+
*::before,
|
|
9
|
+
*::after {
|
|
10
|
+
box-sizing: border-box;
|
|
11
|
+
margin: 0;
|
|
12
|
+
padding: 0;
|
|
13
|
+
line-height: 2;
|
|
14
|
+
font-family: inherit;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/*
|
|
18
|
+
Prevent automatic font size adjustments on mobile devices to keep text rendering consistent across platforms.
|
|
19
|
+
*/
|
|
20
|
+
html {
|
|
21
|
+
-moz-text-size-adjust: none; /* Firefox */
|
|
22
|
+
-webkit-text-size-adjust: none; /* Safari / older WebKit browsers */
|
|
23
|
+
text-size-adjust: none; /* Modern spec-compliant browsers */
|
|
24
|
+
color: var(--text);
|
|
25
|
+
background-color: var(--background);
|
|
26
|
+
font-size: max(1rem, 0.833vw);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/*
|
|
30
|
+
Remove default list styling from unordered and ordered lists that
|
|
31
|
+
explicitly use role="list".
|
|
32
|
+
*/
|
|
33
|
+
ul[role="list"],
|
|
34
|
+
ol[role="list"] {
|
|
35
|
+
list-style: none;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
/*
|
|
39
|
+
Ensure the body element always fills at least the full height of the viewport
|
|
40
|
+
so short pages don't collapse. Improve text rendering across browsers by
|
|
41
|
+
enabling smoother grayscale antialiasing. Set the body as a container
|
|
42
|
+
(queryable by its inline size) for use with CSS container queries, and
|
|
43
|
+
enable smooth scrolling for anchor links and programmatic scroll actions.
|
|
44
|
+
*/
|
|
45
|
+
body {
|
|
46
|
+
min-height: 100vh;
|
|
47
|
+
-webkit-font-smoothing: antialiased;
|
|
48
|
+
-moz-osx-font-smoothing: grayscale;
|
|
49
|
+
container-type: inline-size;
|
|
50
|
+
scroll-behavior: smooth;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
/*
|
|
54
|
+
Improve heading readability by evenly distributing words across lines.
|
|
55
|
+
This prevents awkward line breaks and creates more balanced, aesthetic headings.
|
|
56
|
+
*/
|
|
57
|
+
h1,
|
|
58
|
+
h2,
|
|
59
|
+
h3,
|
|
60
|
+
h4,
|
|
61
|
+
h5,
|
|
62
|
+
h6 {
|
|
63
|
+
text-wrap: balance;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/*
|
|
67
|
+
Reset all link styles to inherit from parent elements.
|
|
68
|
+
This removes default colors, underlines, and visited/hover states.
|
|
69
|
+
*/
|
|
70
|
+
a {
|
|
71
|
+
all: unset;
|
|
72
|
+
color: inherit;
|
|
73
|
+
text-decoration: none;
|
|
74
|
+
cursor: pointer;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/*
|
|
78
|
+
Ensure images and <picture> elements scale within their container,
|
|
79
|
+
preventing overflow and maintaining layout integrity on any screen size.
|
|
80
|
+
*/
|
|
81
|
+
img,
|
|
82
|
+
picture {
|
|
83
|
+
max-width: 100%;
|
|
84
|
+
display: block;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/*
|
|
88
|
+
Add extra scroll margin above and below elements targeted via anchors.
|
|
89
|
+
This prevents the element from hugging the top edge of the viewport when navigated to.
|
|
90
|
+
*/
|
|
91
|
+
:target {
|
|
92
|
+
scroll-margin-block: 1rem;
|
|
93
|
+
}
|
|
94
|
+
}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@seyuna/postcss",
|
|
3
|
-
"version": "1.0.0-canary.
|
|
3
|
+
"version": "1.0.0-canary.35",
|
|
4
4
|
"description": "Seyuna UI's postcss plugin",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
8
8
|
"scripts": {
|
|
9
|
-
"build": "tsc",
|
|
9
|
+
"build": "tsc && mkdir -p dist/styles && cp src/styles/* dist/styles/",
|
|
10
10
|
"dev": "tsc -w",
|
|
11
11
|
"test": "vitest",
|
|
12
12
|
"test:run": "vitest run"
|
package/src/at-rules/import.ts
CHANGED
|
@@ -41,17 +41,11 @@ export function handleImport(atRule: any, context: PluginContext) {
|
|
|
41
41
|
);
|
|
42
42
|
if (fs.existsSync(globalStylesPath)) {
|
|
43
43
|
const globalCss = fs.readFileSync(globalStylesPath, "utf-8");
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (
|
|
50
|
-
node.type === "atrule" &&
|
|
51
|
-
(node.name === "layer" || node.name === "media")
|
|
52
|
-
) {
|
|
53
|
-
nodes.push(node.clone());
|
|
54
|
-
}
|
|
44
|
+
const parsed = postcss.parse(globalCss);
|
|
45
|
+
|
|
46
|
+
// Push all nodes from the global styles (reset, layers, etc.)
|
|
47
|
+
parsed.nodes.forEach((node) => {
|
|
48
|
+
nodes.push(node.clone());
|
|
55
49
|
});
|
|
56
50
|
} else {
|
|
57
51
|
nodes.push(
|