@hypen-space/web 0.2.8 → 0.2.9

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.
@@ -65,6 +65,20 @@ var init_advanced_layout = __esm(() => {
65
65
  gridTemplateRows: (el, value) => {
66
66
  el.style.gridTemplateRows = String(value);
67
67
  },
68
+ gridColumns: (el, value) => {
69
+ if (typeof value === "number") {
70
+ el.style.gridTemplateColumns = `repeat(${value}, 1fr)`;
71
+ } else {
72
+ el.style.gridTemplateColumns = String(value);
73
+ }
74
+ },
75
+ gridRows: (el, value) => {
76
+ if (typeof value === "number") {
77
+ el.style.gridTemplateRows = `repeat(${value}, 1fr)`;
78
+ } else {
79
+ el.style.gridTemplateRows = String(value);
80
+ }
81
+ },
68
82
  gridTemplateAreas: (el, value) => {
69
83
  el.style.gridTemplateAreas = String(value);
70
84
  },
@@ -130,4 +144,4 @@ export {
130
144
  advancedLayoutHandlers
131
145
  };
132
146
 
133
- //# debugId=BCE516F91DB22F3864756E2164756E21
147
+ //# debugId=C1185D52B17FE3EF64756E2164756E21
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/dom/applicators/advanced-layout.ts"],
4
4
  "sourcesContent": [
5
- "/**\n * Advanced Layout Applicators (Flexbox, Grid, Positioning)\n */\n\nimport type { ApplicatorHandler } from \"./index.js\";\n\nexport const advancedLayoutHandlers: Record<string, ApplicatorHandler> = {\n // Flexbox properties\n flexDirection: (el, value) => {\n el.style.flexDirection = String(value);\n },\n\n flexWrap: (el, value) => {\n el.style.flexWrap = String(value);\n },\n\n flexBasis: (el, value) => {\n el.style.flexBasis = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n justifyContent: (el, value) => {\n el.style.justifyContent = String(value);\n },\n\n alignItems: (el, value) => {\n el.style.alignItems = String(value);\n },\n\n alignContent: (el, value) => {\n el.style.alignContent = String(value);\n },\n\n alignSelf: (el, value) => {\n el.style.alignSelf = String(value);\n },\n\n order: (el, value) => {\n el.style.order = String(value);\n },\n\n // Grid properties\n gridTemplateColumns: (el, value) => {\n el.style.gridTemplateColumns = String(value);\n },\n\n gridTemplateRows: (el, value) => {\n el.style.gridTemplateRows = String(value);\n },\n\n gridTemplateAreas: (el, value) => {\n el.style.gridTemplateAreas = String(value);\n },\n\n gridColumn: (el, value) => {\n el.style.gridColumn = String(value);\n },\n\n gridRow: (el, value) => {\n el.style.gridRow = String(value);\n },\n\n gridArea: (el, value) => {\n el.style.gridArea = String(value);\n },\n\n gridAutoFlow: (el, value) => {\n el.style.gridAutoFlow = String(value);\n },\n\n gridAutoColumns: (el, value) => {\n el.style.gridAutoColumns = String(value);\n },\n\n gridAutoRows: (el, value) => {\n el.style.gridAutoRows = String(value);\n },\n\n rowGap: (el, value) => {\n el.style.rowGap = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n columnGap: (el, value) => {\n el.style.columnGap = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n placeItems: (el, value) => {\n el.style.placeItems = String(value);\n },\n\n placeContent: (el, value) => {\n el.style.placeContent = String(value);\n },\n\n placeSelf: (el, value) => {\n el.style.placeSelf = String(value);\n },\n\n // Positioning\n position: (el, value) => {\n el.style.position = String(value);\n },\n\n top: (el, value) => {\n el.style.top = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n right: (el, value) => {\n el.style.right = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n bottom: (el, value) => {\n el.style.bottom = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n left: (el, value) => {\n el.style.left = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n inset: (el, value) => {\n el.style.inset = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n zIndex: (el, value) => {\n el.style.zIndex = String(value);\n },\n};\n\n\n"
5
+ "/**\n * Advanced Layout Applicators (Flexbox, Grid, Positioning)\n */\n\nimport type { ApplicatorHandler } from \"./index.js\";\n\nexport const advancedLayoutHandlers: Record<string, ApplicatorHandler> = {\n // Flexbox properties\n flexDirection: (el, value) => {\n el.style.flexDirection = String(value);\n },\n\n flexWrap: (el, value) => {\n el.style.flexWrap = String(value);\n },\n\n flexBasis: (el, value) => {\n el.style.flexBasis = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n justifyContent: (el, value) => {\n el.style.justifyContent = String(value);\n },\n\n alignItems: (el, value) => {\n el.style.alignItems = String(value);\n },\n\n alignContent: (el, value) => {\n el.style.alignContent = String(value);\n },\n\n alignSelf: (el, value) => {\n el.style.alignSelf = String(value);\n },\n\n order: (el, value) => {\n el.style.order = String(value);\n },\n\n // Grid properties\n gridTemplateColumns: (el, value) => {\n el.style.gridTemplateColumns = String(value);\n },\n\n gridTemplateRows: (el, value) => {\n el.style.gridTemplateRows = String(value);\n },\n\n // Unified API aliases (simpler names)\n gridColumns: (el, value) => {\n // Support number (repeat) or string (CSS value)\n if (typeof value === \"number\") {\n el.style.gridTemplateColumns = `repeat(${value}, 1fr)`;\n } else {\n el.style.gridTemplateColumns = String(value);\n }\n },\n\n gridRows: (el, value) => {\n // Support number (repeat) or string (CSS value)\n if (typeof value === \"number\") {\n el.style.gridTemplateRows = `repeat(${value}, 1fr)`;\n } else {\n el.style.gridTemplateRows = String(value);\n }\n },\n\n gridTemplateAreas: (el, value) => {\n el.style.gridTemplateAreas = String(value);\n },\n\n gridColumn: (el, value) => {\n el.style.gridColumn = String(value);\n },\n\n gridRow: (el, value) => {\n el.style.gridRow = String(value);\n },\n\n gridArea: (el, value) => {\n el.style.gridArea = String(value);\n },\n\n gridAutoFlow: (el, value) => {\n el.style.gridAutoFlow = String(value);\n },\n\n gridAutoColumns: (el, value) => {\n el.style.gridAutoColumns = String(value);\n },\n\n gridAutoRows: (el, value) => {\n el.style.gridAutoRows = String(value);\n },\n\n rowGap: (el, value) => {\n el.style.rowGap = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n columnGap: (el, value) => {\n el.style.columnGap = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n placeItems: (el, value) => {\n el.style.placeItems = String(value);\n },\n\n placeContent: (el, value) => {\n el.style.placeContent = String(value);\n },\n\n placeSelf: (el, value) => {\n el.style.placeSelf = String(value);\n },\n\n // Positioning\n position: (el, value) => {\n el.style.position = String(value);\n },\n\n top: (el, value) => {\n el.style.top = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n right: (el, value) => {\n el.style.right = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n bottom: (el, value) => {\n el.style.bottom = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n left: (el, value) => {\n el.style.left = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n inset: (el, value) => {\n el.style.inset = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n zIndex: (el, value) => {\n el.style.zIndex = String(value);\n },\n};\n\n\n"
6
6
  ],
7
- "mappings": "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",
8
- "debugId": "BCE516F91DB22F3864756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "C1185D52B17FE3EF64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -35,6 +35,30 @@ __export(exports_border, {
35
35
  var borderHandlers;
36
36
  var init_border = __esm(() => {
37
37
  borderHandlers = {
38
+ border: (el, value) => {
39
+ if (typeof value === "number") {
40
+ el.style.borderWidth = `${value}px`;
41
+ el.style.borderStyle = "solid";
42
+ } else if (typeof value === "object" && value !== null) {
43
+ const obj = value;
44
+ if (obj.width !== undefined) {
45
+ el.style.borderWidth = typeof obj.width === "number" ? `${obj.width}px` : String(obj.width);
46
+ }
47
+ if (obj.color !== undefined) {
48
+ el.style.borderColor = String(obj.color);
49
+ }
50
+ if (obj.style !== undefined) {
51
+ el.style.borderStyle = String(obj.style);
52
+ } else {
53
+ el.style.borderStyle = "solid";
54
+ }
55
+ if (obj.radius !== undefined) {
56
+ el.style.borderRadius = typeof obj.radius === "number" ? `${obj.radius}px` : String(obj.radius);
57
+ }
58
+ } else if (typeof value === "string") {
59
+ el.style.border = value;
60
+ }
61
+ },
38
62
  borderWidth: (el, value) => {
39
63
  el.style.borderWidth = typeof value === "number" ? `${value}px` : String(value);
40
64
  },
@@ -42,7 +66,34 @@ var init_border = __esm(() => {
42
66
  el.style.borderStyle = String(value);
43
67
  },
44
68
  borderRadius: (el, value) => {
45
- el.style.borderRadius = typeof value === "number" ? `${value}px` : String(value);
69
+ if (typeof value === "number") {
70
+ el.style.borderRadius = `${value}px`;
71
+ } else if (typeof value === "object" && value !== null) {
72
+ const obj = value;
73
+ const topLeft = obj.topLeft ?? obj.topStart ?? 0;
74
+ const topRight = obj.topRight ?? obj.topEnd ?? 0;
75
+ const bottomRight = obj.bottomRight ?? obj.bottomEnd ?? 0;
76
+ const bottomLeft = obj.bottomLeft ?? obj.bottomStart ?? 0;
77
+ const formatValue = (v) => typeof v === "number" ? `${v}px` : String(v);
78
+ el.style.borderRadius = `${formatValue(topLeft)} ${formatValue(topRight)} ${formatValue(bottomRight)} ${formatValue(bottomLeft)}`;
79
+ } else {
80
+ el.style.borderRadius = String(value);
81
+ }
82
+ },
83
+ cornerRadius: (el, value) => {
84
+ if (typeof value === "number") {
85
+ el.style.borderRadius = `${value}px`;
86
+ } else if (typeof value === "object" && value !== null) {
87
+ const obj = value;
88
+ const topLeft = obj.topLeft ?? obj.topStart ?? 0;
89
+ const topRight = obj.topRight ?? obj.topEnd ?? 0;
90
+ const bottomRight = obj.bottomRight ?? obj.bottomEnd ?? 0;
91
+ const bottomLeft = obj.bottomLeft ?? obj.bottomStart ?? 0;
92
+ const formatValue = (v) => typeof v === "number" ? `${v}px` : String(v);
93
+ el.style.borderRadius = `${formatValue(topLeft)} ${formatValue(topRight)} ${formatValue(bottomRight)} ${formatValue(bottomLeft)}`;
94
+ } else {
95
+ el.style.borderRadius = String(value);
96
+ }
46
97
  }
47
98
  };
48
99
  });
@@ -52,4 +103,4 @@ export {
52
103
  borderHandlers
53
104
  };
54
105
 
55
- //# debugId=46426568870103DD64756E2164756E21
106
+ //# debugId=89023929D14976CF64756E2164756E21
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/dom/applicators/border.ts"],
4
4
  "sourcesContent": [
5
- "/**\n * Border Applicators\n */\n\nimport type { ApplicatorHandler } from \"./index.js\";\n\nexport const borderHandlers: Record<string, ApplicatorHandler> = {\n borderWidth: (el, value) => {\n el.style.borderWidth = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n borderStyle: (el, value) => {\n el.style.borderStyle = String(value);\n },\n\n borderRadius: (el, value) => {\n el.style.borderRadius = typeof value === \"number\" ? `${value}px` : String(value);\n },\n};\n"
5
+ "/**\n * Border Applicators\n */\n\nimport type { ApplicatorHandler } from \"./index.js\";\n\nexport const borderHandlers: Record<string, ApplicatorHandler> = {\n // Compound border applicator - can take width, color, style, radius\n border: (el, value) => {\n if (typeof value === \"number\") {\n // Just width\n el.style.borderWidth = `${value}px`;\n el.style.borderStyle = \"solid\";\n } else if (typeof value === \"object\" && value !== null) {\n const obj = value as Record<string, any>;\n\n // Width\n if (obj.width !== undefined) {\n el.style.borderWidth = typeof obj.width === \"number\" ? `${obj.width}px` : String(obj.width);\n }\n\n // Color\n if (obj.color !== undefined) {\n el.style.borderColor = String(obj.color);\n }\n\n // Style (solid, dashed, dotted, etc.)\n if (obj.style !== undefined) {\n el.style.borderStyle = String(obj.style);\n } else {\n // Default to solid if not specified\n el.style.borderStyle = \"solid\";\n }\n\n // Radius\n if (obj.radius !== undefined) {\n el.style.borderRadius = typeof obj.radius === \"number\" ? `${obj.radius}px` : String(obj.radius);\n }\n } else if (typeof value === \"string\") {\n // CSS shorthand like \"1px solid black\"\n el.style.border = value;\n }\n },\n\n borderWidth: (el, value) => {\n el.style.borderWidth = typeof value === \"number\" ? `${value}px` : String(value);\n },\n\n borderStyle: (el, value) => {\n el.style.borderStyle = String(value);\n },\n\n borderRadius: (el, value) => {\n if (typeof value === \"number\") {\n el.style.borderRadius = `${value}px`;\n } else if (typeof value === \"object\" && value !== null) {\n // Support for individual corners\n const obj = value as Record<string, any>;\n const topLeft = obj.topLeft ?? obj.topStart ?? 0;\n const topRight = obj.topRight ?? obj.topEnd ?? 0;\n const bottomRight = obj.bottomRight ?? obj.bottomEnd ?? 0;\n const bottomLeft = obj.bottomLeft ?? obj.bottomStart ?? 0;\n\n const formatValue = (v: any) => typeof v === \"number\" ? `${v}px` : String(v);\n el.style.borderRadius = `${formatValue(topLeft)} ${formatValue(topRight)} ${formatValue(bottomRight)} ${formatValue(bottomLeft)}`;\n } else {\n el.style.borderRadius = String(value);\n }\n },\n\n // Alias for borderRadius (Compose naming)\n cornerRadius: (el, value) => {\n if (typeof value === \"number\") {\n el.style.borderRadius = `${value}px`;\n } else if (typeof value === \"object\" && value !== null) {\n const obj = value as Record<string, any>;\n const topLeft = obj.topLeft ?? obj.topStart ?? 0;\n const topRight = obj.topRight ?? obj.topEnd ?? 0;\n const bottomRight = obj.bottomRight ?? obj.bottomEnd ?? 0;\n const bottomLeft = obj.bottomLeft ?? obj.bottomStart ?? 0;\n\n const formatValue = (v: any) => typeof v === \"number\" ? `${v}px` : String(v);\n el.style.borderRadius = `${formatValue(topLeft)} ${formatValue(topRight)} ${formatValue(bottomRight)} ${formatValue(bottomLeft)}`;\n } else {\n el.style.borderRadius = String(value);\n }\n },\n};\n"
6
6
  ],
7
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAMa;AAAA;AAAA,mBAAoD;AAAA,IAC/D,aAAa,CAAC,IAAI,UAAU;AAAA,MAC1B,GAAG,MAAM,cAAc,OAAO,UAAU,WAAW,GAAG,YAAY,OAAO,KAAK;AAAA;AAAA,IAGhF,aAAa,CAAC,IAAI,UAAU;AAAA,MAC1B,GAAG,MAAM,cAAc,OAAO,KAAK;AAAA;AAAA,IAGrC,cAAc,CAAC,IAAI,UAAU;AAAA,MAC3B,GAAG,MAAM,eAAe,OAAO,UAAU,WAAW,GAAG,YAAY,OAAO,KAAK;AAAA;AAAA,EAEnF;AAAA;",
8
- "debugId": "46426568870103DD64756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "89023929D14976CF64756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -102,6 +102,30 @@ __export(exports_border, {
102
102
  var borderHandlers;
103
103
  var init_border = __esm(() => {
104
104
  borderHandlers = {
105
+ border: (el, value) => {
106
+ if (typeof value === "number") {
107
+ el.style.borderWidth = `${value}px`;
108
+ el.style.borderStyle = "solid";
109
+ } else if (typeof value === "object" && value !== null) {
110
+ const obj = value;
111
+ if (obj.width !== undefined) {
112
+ el.style.borderWidth = typeof obj.width === "number" ? `${obj.width}px` : String(obj.width);
113
+ }
114
+ if (obj.color !== undefined) {
115
+ el.style.borderColor = String(obj.color);
116
+ }
117
+ if (obj.style !== undefined) {
118
+ el.style.borderStyle = String(obj.style);
119
+ } else {
120
+ el.style.borderStyle = "solid";
121
+ }
122
+ if (obj.radius !== undefined) {
123
+ el.style.borderRadius = typeof obj.radius === "number" ? `${obj.radius}px` : String(obj.radius);
124
+ }
125
+ } else if (typeof value === "string") {
126
+ el.style.border = value;
127
+ }
128
+ },
105
129
  borderWidth: (el, value) => {
106
130
  el.style.borderWidth = typeof value === "number" ? `${value}px` : String(value);
107
131
  },
@@ -109,7 +133,34 @@ var init_border = __esm(() => {
109
133
  el.style.borderStyle = String(value);
110
134
  },
111
135
  borderRadius: (el, value) => {
112
- el.style.borderRadius = typeof value === "number" ? `${value}px` : String(value);
136
+ if (typeof value === "number") {
137
+ el.style.borderRadius = `${value}px`;
138
+ } else if (typeof value === "object" && value !== null) {
139
+ const obj = value;
140
+ const topLeft = obj.topLeft ?? obj.topStart ?? 0;
141
+ const topRight = obj.topRight ?? obj.topEnd ?? 0;
142
+ const bottomRight = obj.bottomRight ?? obj.bottomEnd ?? 0;
143
+ const bottomLeft = obj.bottomLeft ?? obj.bottomStart ?? 0;
144
+ const formatValue = (v) => typeof v === "number" ? `${v}px` : String(v);
145
+ el.style.borderRadius = `${formatValue(topLeft)} ${formatValue(topRight)} ${formatValue(bottomRight)} ${formatValue(bottomLeft)}`;
146
+ } else {
147
+ el.style.borderRadius = String(value);
148
+ }
149
+ },
150
+ cornerRadius: (el, value) => {
151
+ if (typeof value === "number") {
152
+ el.style.borderRadius = `${value}px`;
153
+ } else if (typeof value === "object" && value !== null) {
154
+ const obj = value;
155
+ const topLeft = obj.topLeft ?? obj.topStart ?? 0;
156
+ const topRight = obj.topRight ?? obj.topEnd ?? 0;
157
+ const bottomRight = obj.bottomRight ?? obj.bottomEnd ?? 0;
158
+ const bottomLeft = obj.bottomLeft ?? obj.bottomStart ?? 0;
159
+ const formatValue = (v) => typeof v === "number" ? `${v}px` : String(v);
160
+ el.style.borderRadius = `${formatValue(topLeft)} ${formatValue(topRight)} ${formatValue(bottomRight)} ${formatValue(bottomLeft)}`;
161
+ } else {
162
+ el.style.borderRadius = String(value);
163
+ }
113
164
  }
114
165
  };
115
166
  });
@@ -139,6 +190,43 @@ var init_size = __esm(() => {
139
190
  },
140
191
  maxHeight: (el, value) => {
141
192
  el.style.maxHeight = typeof value === "number" ? `${value}px` : String(value);
193
+ },
194
+ size: (el, value) => {
195
+ if (typeof value === "number") {
196
+ el.style.width = `${value}px`;
197
+ el.style.height = `${value}px`;
198
+ } else if (typeof value === "object" && value !== null) {
199
+ const obj = value;
200
+ if (obj.width !== undefined) {
201
+ el.style.width = typeof obj.width === "number" ? `${obj.width}px` : String(obj.width);
202
+ }
203
+ if (obj.height !== undefined) {
204
+ el.style.height = typeof obj.height === "number" ? `${obj.height}px` : String(obj.height);
205
+ }
206
+ } else {
207
+ const size = String(value);
208
+ el.style.width = size;
209
+ el.style.height = size;
210
+ }
211
+ },
212
+ fillMaxWidth: (el, value) => {
213
+ if (value === false)
214
+ return;
215
+ const fraction = typeof value === "number" ? value : 1;
216
+ el.style.width = `${fraction * 100}%`;
217
+ },
218
+ fillMaxHeight: (el, value) => {
219
+ if (value === false)
220
+ return;
221
+ const fraction = typeof value === "number" ? value : 1;
222
+ el.style.height = `${fraction * 100}%`;
223
+ },
224
+ fillMaxSize: (el, value) => {
225
+ if (value === false)
226
+ return;
227
+ const fraction = typeof value === "number" ? value : 1;
228
+ el.style.width = `${fraction * 100}%`;
229
+ el.style.height = `${fraction * 100}%`;
142
230
  }
143
231
  };
144
232
  });
@@ -1014,6 +1102,20 @@ var init_advanced_layout = __esm(() => {
1014
1102
  gridTemplateRows: (el, value) => {
1015
1103
  el.style.gridTemplateRows = String(value);
1016
1104
  },
1105
+ gridColumns: (el, value) => {
1106
+ if (typeof value === "number") {
1107
+ el.style.gridTemplateColumns = `repeat(${value}, 1fr)`;
1108
+ } else {
1109
+ el.style.gridTemplateColumns = String(value);
1110
+ }
1111
+ },
1112
+ gridRows: (el, value) => {
1113
+ if (typeof value === "number") {
1114
+ el.style.gridTemplateRows = `repeat(${value}, 1fr)`;
1115
+ } else {
1116
+ el.style.gridTemplateRows = String(value);
1117
+ }
1118
+ },
1017
1119
  gridTemplateAreas: (el, value) => {
1018
1120
  el.style.gridTemplateAreas = String(value);
1019
1121
  },
@@ -1443,4 +1545,4 @@ export {
1443
1545
  ApplicatorRegistry
1444
1546
  };
1445
1547
 
1446
- //# debugId=6896ADAF94F7505464756E2164756E21
1548
+ //# debugId=4E66FE319E3D673364756E2164756E21