@lightningtv/solid 3.0.13-0 → 3.1.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.
@@ -1 +1 @@
1
- {"version":3,"file":"flex.js","sourceRoot":"","sources":["../../../src/core/flex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flex.js","sourceRoot":"","sources":["../../../src/core/flex.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { type ElementNode } from './elementNode.js';
2
+ export default function (node: ElementNode): boolean;
@@ -0,0 +1,349 @@
1
+ import { isTextNode, isElementText } from './utils.js';
2
+ function getArrayValue(val, index, defaultValue = 0) {
3
+ if (val === undefined)
4
+ return defaultValue;
5
+ if (typeof val === 'number')
6
+ return val;
7
+ return val[index] || defaultValue;
8
+ }
9
+ export default function (node) {
10
+ const direction = node.flexDirection || 'row';
11
+ const isRow = direction === 'row' || direction === 'row-reverse';
12
+ const isReverse = direction === 'row-reverse' || direction === 'column-reverse';
13
+ const dimension = isRow ? 'width' : 'height';
14
+ const crossDimension = isRow ? 'height' : 'width';
15
+ // padding order: Top, Right, Bottom, Left
16
+ const nodePadding = node.padding;
17
+ const paddingTop = (node.paddingTop ??
18
+ getArrayValue(nodePadding, 0));
19
+ const paddingRight = (node.paddingRight ??
20
+ getArrayValue(nodePadding, 1));
21
+ const paddingBottom = (node.paddingBottom ??
22
+ getArrayValue(nodePadding, 2));
23
+ const paddingLeft = (node.paddingLeft ??
24
+ getArrayValue(nodePadding, 3));
25
+ const paddingStart = isRow ? paddingLeft : paddingTop;
26
+ const paddingEnd = isRow ? paddingRight : paddingBottom;
27
+ const paddingCrossStart = isRow ? paddingTop : paddingLeft;
28
+ const paddingCrossEnd = isRow ? paddingBottom : paddingRight;
29
+ const nodePaddingTotal = paddingStart + paddingEnd;
30
+ const minDimension = isRow ? 'minWidth' : 'minHeight';
31
+ const crossMinDimension = isRow ? 'minHeight' : 'minWidth';
32
+ const children = node.children;
33
+ const numChildren = children.length;
34
+ if (numChildren === 0) {
35
+ return false;
36
+ }
37
+ // Optimize arrays caching
38
+ let processableChildrenIndices = [];
39
+ let hasOrder = false;
40
+ let totalFlexGrow = 0;
41
+ let totalFlexShrink = 0;
42
+ for (let i = 0; i < numChildren; i++) {
43
+ const c = children[i];
44
+ if (isElementText(c) && c.text && !(c.width || c.height)) {
45
+ return false; // specific text layout constraint
46
+ }
47
+ if (isTextNode(c) || c.flexItem === false) {
48
+ continue;
49
+ }
50
+ if (c.flexOrder !== undefined) {
51
+ hasOrder = true;
52
+ }
53
+ const flexGrow = c.flexGrow;
54
+ if (flexGrow !== undefined && flexGrow > 0) {
55
+ totalFlexGrow += flexGrow;
56
+ }
57
+ const flexShrink = c.flexShrink;
58
+ if (flexShrink !== undefined && flexShrink > 0) {
59
+ totalFlexShrink += flexShrink;
60
+ }
61
+ if (c[minDimension] && (c[dimension] || 0) < c[minDimension]) {
62
+ c[dimension] = c[minDimension];
63
+ }
64
+ if (c[crossMinDimension] &&
65
+ (c[crossDimension] || 0) < c[crossMinDimension]) {
66
+ c[crossDimension] = c[crossMinDimension];
67
+ }
68
+ processableChildrenIndices.push(i);
69
+ }
70
+ if (hasOrder) {
71
+ processableChildrenIndices.sort((aIdx, bIdx) => {
72
+ const a = children[aIdx];
73
+ const b = children[bIdx];
74
+ return (a.flexOrder || 0) - (b.flexOrder || 0);
75
+ });
76
+ }
77
+ // Apply reverse layout ordering
78
+ if (isReverse || node.direction === 'rtl') {
79
+ processableChildrenIndices.reverse();
80
+ }
81
+ const numProcessedChildren = processableChildrenIndices.length;
82
+ if (numProcessedChildren === 0) {
83
+ return false;
84
+ }
85
+ const prop = isRow ? 'x' : 'y';
86
+ const crossProp = isRow ? 'y' : 'x';
87
+ const containerSize = Math.max(node[dimension] || 0, node[minDimension] || 0, 0);
88
+ let containerCrossSize = Math.max(node[crossDimension] || 0, node[crossMinDimension] || 0, 0);
89
+ const isWrapReverse = node.flexWrap === 'wrap-reverse';
90
+ const gap = node.gap || 0;
91
+ const justify = node.justifyContent || 'flexStart';
92
+ const align = node.alignItems || (node.flexWrap ? 'flexStart' : undefined);
93
+ let containerUpdated = false;
94
+ // Resolve sizes matching old processed calculation
95
+ const childMainSizes = new Float32Array(numProcessedChildren);
96
+ const childMarginStarts = new Float32Array(numProcessedChildren);
97
+ const childMarginEnds = new Float32Array(numProcessedChildren);
98
+ const childTotalMainSizes = new Float32Array(numProcessedChildren);
99
+ const childCrossSizes = new Float32Array(numProcessedChildren);
100
+ const childMarginCrossStarts = new Float32Array(numProcessedChildren);
101
+ const childMarginCrossEnds = new Float32Array(numProcessedChildren);
102
+ let sumOfFlexBaseSizesWithMargins = 0;
103
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
104
+ const c = children[processableChildrenIndices[idx]];
105
+ const marginArray = c.margin;
106
+ // index mappings for margins: Top: 0, Right: 1, Bottom: 2, Left: 3
107
+ // if row: main = left/right (3/1),
108
+ const flexBasis = c.flexBasis;
109
+ const isBasisAuto = flexBasis === undefined || flexBasis === 'auto';
110
+ const computedBasis = isBasisAuto
111
+ ? c[dimension] || 0
112
+ : flexBasis;
113
+ const baseMainSize = isBasisAuto
114
+ ? computedBasis
115
+ : Math.max(computedBasis, c[minDimension] || 0);
116
+ const marginStart = isRow
117
+ ? c.marginLeft || getArrayValue(marginArray, 3)
118
+ : c.marginTop || getArrayValue(marginArray, 0);
119
+ const marginEnd = isRow
120
+ ? c.marginRight || getArrayValue(marginArray, 1)
121
+ : c.marginBottom || getArrayValue(marginArray, 2);
122
+ const marginCrossStart = isRow
123
+ ? c.marginTop || getArrayValue(marginArray, 0)
124
+ : c.marginLeft || getArrayValue(marginArray, 3);
125
+ const marginCrossEnd = isRow
126
+ ? c.marginBottom || getArrayValue(marginArray, 2)
127
+ : c.marginRight || getArrayValue(marginArray, 1);
128
+ childMainSizes[idx] = baseMainSize;
129
+ childMarginStarts[idx] = marginStart;
130
+ childMarginEnds[idx] = marginEnd;
131
+ childTotalMainSizes[idx] = baseMainSize + marginStart + marginEnd;
132
+ childCrossSizes[idx] = c[crossDimension] || 0;
133
+ childMarginCrossStarts[idx] = marginCrossStart;
134
+ childMarginCrossEnds[idx] = marginCrossEnd;
135
+ sumOfFlexBaseSizesWithMargins += childTotalMainSizes[idx];
136
+ }
137
+ if ((totalFlexGrow > 0 || totalFlexShrink > 0) && numProcessedChildren > 1) {
138
+ node.flexBoundary = node.flexBoundary || 'fixed';
139
+ const totalGapSpace = numProcessedChildren > 0 ? gap * (numProcessedChildren - 1) : 0;
140
+ const availableSpace = containerSize - sumOfFlexBaseSizesWithMargins - totalGapSpace;
141
+ if (availableSpace > 0 && totalFlexGrow > 0) {
142
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
143
+ const c = children[processableChildrenIndices[idx]];
144
+ const flexGrowValue = c.flexGrow || 0;
145
+ if (flexGrowValue > 0) {
146
+ const shareOfSpace = (flexGrowValue / totalFlexGrow) * availableSpace;
147
+ const newMainSize = childMainSizes[idx] + shareOfSpace;
148
+ c[dimension] = newMainSize;
149
+ childMainSizes[idx] = newMainSize;
150
+ childTotalMainSizes[idx] =
151
+ newMainSize + childMarginStarts[idx] + childMarginEnds[idx];
152
+ }
153
+ }
154
+ node._containsFlexGrow = node._containsFlexGrow ? null : true;
155
+ }
156
+ else if (availableSpace < 0 && totalFlexShrink > 0) {
157
+ // Flex Shrink Phase
158
+ let totalScaledShrinkFactor = 0;
159
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
160
+ const c = children[processableChildrenIndices[idx]];
161
+ const flexShrinkValue = c.flexShrink || 0;
162
+ totalScaledShrinkFactor += flexShrinkValue * childMainSizes[idx];
163
+ }
164
+ if (totalScaledShrinkFactor > 0) {
165
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
166
+ const c = children[processableChildrenIndices[idx]];
167
+ const flexShrinkValue = c.flexShrink || 0;
168
+ if (flexShrinkValue > 0) {
169
+ const shrinkRatio = (flexShrinkValue * childMainSizes[idx]) /
170
+ totalScaledShrinkFactor;
171
+ const sizeReduction = shrinkRatio * Math.abs(availableSpace);
172
+ let newMainSize = childMainSizes[idx] - sizeReduction;
173
+ // Constrain by min width/height
174
+ const minBound = c[minDimension] || 0;
175
+ if (newMainSize < minBound) {
176
+ newMainSize = minBound;
177
+ }
178
+ c[dimension] = newMainSize;
179
+ childMainSizes[idx] = newMainSize;
180
+ childTotalMainSizes[idx] =
181
+ newMainSize + childMarginStarts[idx] + childMarginEnds[idx];
182
+ }
183
+ }
184
+ }
185
+ node._containsFlexGrow = node._containsFlexGrow ? null : true;
186
+ }
187
+ else if (node._containsFlexGrow) {
188
+ node._containsFlexGrow = null;
189
+ }
190
+ }
191
+ let totalItemSize = 0;
192
+ if (justify === 'center' ||
193
+ justify === 'spaceBetween' ||
194
+ justify === 'spaceEvenly' ||
195
+ justify === 'spaceAround') {
196
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
197
+ totalItemSize += childTotalMainSizes[idx];
198
+ }
199
+ }
200
+ const doCrossAlign = containerCrossSize
201
+ ? (c, idx, crossCurrentPos = 0) => {
202
+ const alignSelf = c.alignSelf || align;
203
+ if (!alignSelf) {
204
+ return;
205
+ }
206
+ if (alignSelf === 'flexStart') {
207
+ c[crossProp] = crossCurrentPos + childMarginCrossStarts[idx];
208
+ }
209
+ else if (alignSelf === 'center') {
210
+ c[crossProp] =
211
+ crossCurrentPos +
212
+ (containerCrossSize - childCrossSizes[idx]) / 2 +
213
+ childMarginCrossStarts[idx];
214
+ }
215
+ else if (alignSelf === 'flexEnd') {
216
+ c[crossProp] =
217
+ crossCurrentPos +
218
+ containerCrossSize -
219
+ childCrossSizes[idx] -
220
+ childMarginCrossEnds[idx];
221
+ }
222
+ }
223
+ : (_c, _idx, _crossCurrentPos = 0) => {
224
+ /* no-op */
225
+ };
226
+ if (isRow && node._calcHeight && !node.flexCrossBoundary) {
227
+ let maxHeight = 0;
228
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
229
+ if (childCrossSizes[idx] > maxHeight)
230
+ maxHeight = childCrossSizes[idx];
231
+ }
232
+ const newHeight = maxHeight || node.height;
233
+ if (newHeight !== node.height) {
234
+ containerUpdated = true;
235
+ node.height = containerCrossSize = newHeight;
236
+ }
237
+ }
238
+ let currentPos = paddingStart;
239
+ if (justify === 'flexStart') {
240
+ if (node.flexWrap === 'wrap') {
241
+ const childCrossSizeVar = numProcessedChildren > 0 ? childCrossSizes[0] : containerCrossSize;
242
+ let crossCurrentPos = isWrapReverse
243
+ ? containerCrossSize - paddingCrossEnd - childCrossSizeVar
244
+ : paddingCrossStart;
245
+ const crossGap = isRow ? (node.columnGap ?? gap) : (node.rowGap ?? gap);
246
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
247
+ const c = children[processableChildrenIndices[idx]];
248
+ if (currentPos + childTotalMainSizes[idx] > containerSize &&
249
+ currentPos > paddingStart) {
250
+ currentPos = paddingStart;
251
+ crossCurrentPos += isWrapReverse
252
+ ? -(childCrossSizeVar + crossGap)
253
+ : childCrossSizeVar + crossGap;
254
+ }
255
+ c[prop] = currentPos + childMarginStarts[idx];
256
+ currentPos += childTotalMainSizes[idx] + gap;
257
+ doCrossAlign(c, idx, crossCurrentPos);
258
+ }
259
+ const finalCrossSize = isWrapReverse
260
+ ? containerCrossSize - crossCurrentPos + paddingCrossStart
261
+ : crossCurrentPos + childCrossSizeVar + paddingCrossEnd;
262
+ if (node[crossDimension] !== finalCrossSize) {
263
+ node[`preFlex${crossDimension}`] = node[crossDimension];
264
+ node[crossDimension] = finalCrossSize;
265
+ containerUpdated = true;
266
+ }
267
+ }
268
+ else {
269
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
270
+ const c = children[processableChildrenIndices[idx]];
271
+ c[prop] = currentPos + childMarginStarts[idx];
272
+ currentPos += childTotalMainSizes[idx] + gap;
273
+ doCrossAlign(c, idx, paddingCrossStart);
274
+ }
275
+ }
276
+ // Update container size
277
+ if (node.flexBoundary !== 'fixed' && node.flexWrap !== 'wrap') {
278
+ let calculatedSize = currentPos - gap + paddingEnd;
279
+ const minSize = node[minDimension] || 0;
280
+ if (calculatedSize < minSize) {
281
+ calculatedSize = minSize;
282
+ }
283
+ if (calculatedSize !== (node[dimension] || 0)) {
284
+ node[`preFlex${dimension}`] = containerSize;
285
+ node[dimension] = calculatedSize;
286
+ return true;
287
+ }
288
+ }
289
+ }
290
+ else if (justify === 'flexEnd') {
291
+ currentPos = containerSize - paddingEnd;
292
+ for (let idx = numProcessedChildren - 1; idx >= 0; idx--) {
293
+ const c = children[processableChildrenIndices[idx]];
294
+ c[prop] = currentPos - childMainSizes[idx] - childMarginEnds[idx];
295
+ currentPos -= childTotalMainSizes[idx] + gap;
296
+ doCrossAlign(c, idx, paddingCrossStart);
297
+ }
298
+ }
299
+ else if (justify === 'center') {
300
+ currentPos =
301
+ (containerSize - (totalItemSize + gap * (numProcessedChildren - 1))) / 2 +
302
+ paddingStart;
303
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
304
+ const c = children[processableChildrenIndices[idx]];
305
+ c[prop] = currentPos + childMarginStarts[idx];
306
+ currentPos += childTotalMainSizes[idx] + gap;
307
+ doCrossAlign(c, idx, paddingCrossStart);
308
+ }
309
+ }
310
+ else if (justify === 'spaceBetween') {
311
+ const spaceBetween = numProcessedChildren > 1
312
+ ? (containerSize - totalItemSize - nodePaddingTotal) /
313
+ (numProcessedChildren - 1)
314
+ : 0;
315
+ currentPos = paddingStart;
316
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
317
+ const c = children[processableChildrenIndices[idx]];
318
+ c[prop] = currentPos + childMarginStarts[idx];
319
+ currentPos += childTotalMainSizes[idx] + spaceBetween;
320
+ doCrossAlign(c, idx, paddingCrossStart);
321
+ }
322
+ }
323
+ else if (justify === 'spaceAround') {
324
+ const spaceAround = numProcessedChildren > 0
325
+ ? (containerSize - totalItemSize - nodePaddingTotal) /
326
+ numProcessedChildren
327
+ : 0;
328
+ currentPos = paddingStart + spaceAround / 2;
329
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
330
+ const c = children[processableChildrenIndices[idx]];
331
+ c[prop] = currentPos + childMarginStarts[idx];
332
+ currentPos += childTotalMainSizes[idx] + spaceAround;
333
+ doCrossAlign(c, idx, paddingCrossStart);
334
+ }
335
+ }
336
+ else if (justify === 'spaceEvenly') {
337
+ const spaceEvenly = (containerSize - totalItemSize - nodePaddingTotal) /
338
+ (numProcessedChildren + 1);
339
+ currentPos = spaceEvenly + paddingStart;
340
+ for (let idx = 0; idx < numProcessedChildren; idx++) {
341
+ const c = children[processableChildrenIndices[idx]];
342
+ c[prop] = currentPos + childMarginStarts[idx];
343
+ currentPos += childTotalMainSizes[idx] + spaceEvenly;
344
+ doCrossAlign(c, idx, paddingCrossStart);
345
+ }
346
+ }
347
+ return containerUpdated;
348
+ }
349
+ //# sourceMappingURL=flexLayout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flexLayout.js","sourceRoot":"","sources":["../../../src/core/flexLayout.ts"],"names":[],"mappings":"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"}