@triniwiz/nativescript-masonkit 1.0.0-beta.108 → 1.0.0-beta.109
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/box-shadow.d.ts +10 -0
- package/box-shadow.js +49 -0
- package/box-shadow.js.map +1 -0
- package/button/index.windows.js +0 -2
- package/button/index.windows.js.map +1 -1
- package/common.d.ts +31 -7
- package/common.js +625 -184
- package/common.js.map +1 -1
- package/css-filter.d.ts +17 -0
- package/css-filter.js +141 -0
- package/css-filter.js.map +1 -0
- package/css-transform.d.ts +6 -0
- package/css-transform.js +101 -0
- package/css-transform.js.map +1 -0
- package/html-windows.d.ts +1 -0
- package/html-windows.js +163 -0
- package/html-windows.js.map +1 -0
- package/html.d.ts +8 -0
- package/html.js +134 -0
- package/html.js.map +1 -0
- package/index.d.ts +6 -4
- package/index.windows.d.ts +2 -0
- package/index.windows.js +2 -0
- package/index.windows.js.map +1 -1
- package/input/common.d.ts +16 -0
- package/input/common.js +45 -3
- package/input/common.js.map +1 -1
- package/input/index.android.d.ts +8 -3
- package/input/index.android.js +24 -7
- package/input/index.android.js.map +1 -1
- package/input/index.ios.d.ts +7 -3
- package/input/index.ios.js +18 -7
- package/input/index.ios.js.map +1 -1
- package/input/index.windows.d.ts +14 -2
- package/input/index.windows.js +143 -4
- package/input/index.windows.js.map +1 -1
- package/li/index.windows.js +4 -2
- package/li/index.windows.js.map +1 -1
- package/list/index.windows.d.ts +5 -2
- package/list/index.windows.js +26 -4
- package/list/index.windows.js.map +1 -1
- package/package.json +1 -1
- package/platforms/android/masonkit-release.aar +0 -0
- package/platforms/ios/Mason.xcframework/Info.plist +11 -11
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Headers/Mason-Swift.h +14 -1
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Mason +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.abi.json +5091 -13148
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.private.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8874 -8713
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Headers/Mason-Swift.h +28 -2
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Mason +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-ios-simulator.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/x86_64-apple-ios-simulator.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.abi.json +5091 -13148
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-ios-simulator.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.abi.json +5091 -13148
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/Modules/Mason.swiftmodule/x86_64-apple-ios-simulator.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/Mason.framework/_CodeSignature/CodeResources +26 -26
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8868 -8708
- package/platforms/ios/Mason.xcframework/ios-arm64_x86_64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/x86_64/Mason.yml +8467 -8310
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Headers/Mason-Swift.h +14 -1
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Mason +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-xros.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.abi.json +5091 -13148
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.private.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8366 -8204
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Headers/Mason-Swift.h +14 -1
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Mason +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/Project/arm64-apple-xros-simulator.swiftsourceinfo +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.abi.json +5091 -13148
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.private.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.swiftdoc +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/Modules/Mason.swiftmodule/arm64-apple-xros-simulator.swiftinterface +28 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/Mason.framework/_CodeSignature/CodeResources +14 -14
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/DWARF/Mason +0 -0
- package/platforms/ios/Mason.xcframework/xros-arm64-simulator/dSYMs/Mason.framework.dSYM/Contents/Resources/Relocations/aarch64/Mason.yml +8365 -8204
- package/platforms/windows/arm64/NativeScript.Mason.dll +0 -0
- package/platforms/windows/arm64/NativeScript.Mason.winmd +0 -0
- package/platforms/windows/x64/NativeScript.Mason.dll +0 -0
- package/platforms/windows/x64/NativeScript.Mason.winmd +0 -0
- package/properties.js +1 -1
- package/properties.js.map +1 -1
- package/scroll/index.windows.js +4 -2
- package/scroll/index.windows.js.map +1 -1
- package/style.d.ts +28 -2
- package/style.js +291 -69
- package/style.js.map +1 -1
- package/symbols.d.ts +4 -0
- package/symbols.js +6 -2
- package/symbols.js.map +1 -1
- package/text/index.windows.d.ts +3 -0
- package/text/index.windows.js +39 -10
- package/text/index.windows.js.map +1 -1
- package/textarea/index.windows.d.ts +2 -0
- package/textarea/index.windows.js +5 -1
- package/textarea/index.windows.js.map +1 -1
- package/typings/android.d.ts +3 -0
- package/typings/objc!Mason.d.ts +4 -0
- package/typings/windows.d.ts +29 -1
- package/view/index.windows.js +4 -2
- package/view/index.windows.js.map +1 -1
- package/vue/src/element-registry.d.ts.map +1 -1
- package/vue/src/element-registry.js +4 -1
- package/vue/src/element-registry.js.map +1 -1
- package/vue/src/v-model.d.ts +27 -0
- package/vue/src/v-model.d.ts.map +1 -0
- package/vue/src/v-model.js +70 -0
- package/vue/src/v-model.js.map +1 -0
package/css-filter.js
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
import { parseBoxShadows } from './box-shadow';
|
|
2
|
+
import { parseAngle } from './css-transform';
|
|
3
|
+
const IDENTITY = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
|
|
4
|
+
function amount(arg, fallback) {
|
|
5
|
+
const t = arg.trim();
|
|
6
|
+
if (!t)
|
|
7
|
+
return fallback;
|
|
8
|
+
const n = parseFloat(t);
|
|
9
|
+
if (!Number.isFinite(n))
|
|
10
|
+
return fallback;
|
|
11
|
+
return t.endsWith('%') ? n / 100 : n;
|
|
12
|
+
}
|
|
13
|
+
const clamp01 = (n) => Math.min(1, Math.max(0, n));
|
|
14
|
+
function rgb(rows) {
|
|
15
|
+
return [...rows[0], 0, 0, ...rows[1], 0, 0, ...rows[2], 0, 0, 0, 0, 0, 1, 0];
|
|
16
|
+
}
|
|
17
|
+
function grayscale(a) {
|
|
18
|
+
const k = 1 - clamp01(a);
|
|
19
|
+
return rgb([
|
|
20
|
+
[0.2126 + 0.7874 * k, 0.7152 - 0.7152 * k, 0.0722 - 0.0722 * k],
|
|
21
|
+
[0.2126 - 0.2126 * k, 0.7152 + 0.2848 * k, 0.0722 - 0.0722 * k],
|
|
22
|
+
[0.2126 - 0.2126 * k, 0.7152 - 0.7152 * k, 0.0722 + 0.9278 * k],
|
|
23
|
+
]);
|
|
24
|
+
}
|
|
25
|
+
function sepia(a) {
|
|
26
|
+
const k = 1 - clamp01(a);
|
|
27
|
+
return rgb([
|
|
28
|
+
[0.393 + 0.607 * k, 0.769 - 0.769 * k, 0.189 - 0.189 * k],
|
|
29
|
+
[0.349 - 0.349 * k, 0.686 + 0.314 * k, 0.168 - 0.168 * k],
|
|
30
|
+
[0.272 - 0.272 * k, 0.534 - 0.534 * k, 0.131 + 0.869 * k],
|
|
31
|
+
]);
|
|
32
|
+
}
|
|
33
|
+
function saturate(s) {
|
|
34
|
+
return rgb([
|
|
35
|
+
[0.213 + 0.787 * s, 0.715 - 0.715 * s, 0.072 - 0.072 * s],
|
|
36
|
+
[0.213 - 0.213 * s, 0.715 + 0.285 * s, 0.072 - 0.072 * s],
|
|
37
|
+
[0.213 - 0.213 * s, 0.715 - 0.715 * s, 0.072 + 0.928 * s],
|
|
38
|
+
]);
|
|
39
|
+
}
|
|
40
|
+
function hueRotate(radians) {
|
|
41
|
+
const c = Math.cos(radians);
|
|
42
|
+
const s = Math.sin(radians);
|
|
43
|
+
return rgb([
|
|
44
|
+
[0.213 + c * 0.787 - s * 0.213, 0.715 - c * 0.715 - s * 0.715, 0.072 - c * 0.072 + s * 0.928],
|
|
45
|
+
[0.213 - c * 0.213 + s * 0.143, 0.715 + c * 0.285 + s * 0.14, 0.072 - c * 0.072 - s * 0.283],
|
|
46
|
+
[0.213 - c * 0.213 - s * 0.787, 0.715 - c * 0.715 + s * 0.715, 0.072 + c * 0.928 + s * 0.072],
|
|
47
|
+
]);
|
|
48
|
+
}
|
|
49
|
+
function linear(slope, intercept) {
|
|
50
|
+
return [slope, 0, 0, 0, intercept, 0, slope, 0, 0, intercept, 0, 0, slope, 0, intercept, 0, 0, 0, 1, 0];
|
|
51
|
+
}
|
|
52
|
+
function alpha(a) {
|
|
53
|
+
return [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, clamp01(a), 0];
|
|
54
|
+
}
|
|
55
|
+
export function composeMatrices(first, second) {
|
|
56
|
+
const out = new Array(20).fill(0);
|
|
57
|
+
for (let row = 0; row < 4; row++) {
|
|
58
|
+
for (let col = 0; col < 5; col++) {
|
|
59
|
+
let v = col === 4 ? second[row * 5 + 4] : 0;
|
|
60
|
+
for (let k = 0; k < 4; k++)
|
|
61
|
+
v += second[row * 5 + k] * first[k * 5 + col];
|
|
62
|
+
out[row * 5 + col] = v;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return out;
|
|
66
|
+
}
|
|
67
|
+
const FUNCTION = /([a-z-]+)\s*\(((?:[^()]|\([^()]*\))*)\)/gi;
|
|
68
|
+
export function parseCssFilter(value, toDip) {
|
|
69
|
+
const steps = [];
|
|
70
|
+
const v = (value ?? '').trim();
|
|
71
|
+
if (!v || v === 'none')
|
|
72
|
+
return steps;
|
|
73
|
+
const push = (matrix) => {
|
|
74
|
+
const last = steps[steps.length - 1];
|
|
75
|
+
if (last && last.kind === 'matrix')
|
|
76
|
+
last.matrix = composeMatrices(last.matrix, matrix);
|
|
77
|
+
else
|
|
78
|
+
steps.push({ kind: 'matrix', matrix });
|
|
79
|
+
};
|
|
80
|
+
for (const match of v.matchAll(FUNCTION)) {
|
|
81
|
+
const name = match[1].toLowerCase();
|
|
82
|
+
const arg = match[2];
|
|
83
|
+
switch (name) {
|
|
84
|
+
case 'blur': {
|
|
85
|
+
const t = arg.trim();
|
|
86
|
+
const sigma = t ? (toDip(t) ?? parseFloat(t)) : 0;
|
|
87
|
+
if (Number.isFinite(sigma) && sigma > 0)
|
|
88
|
+
steps.push({ kind: 'blur', sigma });
|
|
89
|
+
break;
|
|
90
|
+
}
|
|
91
|
+
case 'grayscale':
|
|
92
|
+
push(grayscale(amount(arg, 1)));
|
|
93
|
+
break;
|
|
94
|
+
case 'sepia':
|
|
95
|
+
push(sepia(amount(arg, 1)));
|
|
96
|
+
break;
|
|
97
|
+
case 'saturate':
|
|
98
|
+
push(saturate(Math.max(0, amount(arg, 1))));
|
|
99
|
+
break;
|
|
100
|
+
case 'hue-rotate':
|
|
101
|
+
push(hueRotate(arg.trim() ? parseAngle(arg) : 0));
|
|
102
|
+
break;
|
|
103
|
+
case 'invert': {
|
|
104
|
+
const a = clamp01(amount(arg, 1));
|
|
105
|
+
push(linear(1 - 2 * a, a));
|
|
106
|
+
break;
|
|
107
|
+
}
|
|
108
|
+
case 'opacity':
|
|
109
|
+
push(alpha(amount(arg, 1)));
|
|
110
|
+
break;
|
|
111
|
+
case 'brightness':
|
|
112
|
+
push(linear(Math.max(0, amount(arg, 1)), 0));
|
|
113
|
+
break;
|
|
114
|
+
case 'contrast': {
|
|
115
|
+
const c = Math.max(0, amount(arg, 1));
|
|
116
|
+
push(linear(c, 0.5 - 0.5 * c));
|
|
117
|
+
break;
|
|
118
|
+
}
|
|
119
|
+
case 'drop-shadow': {
|
|
120
|
+
const shadow = parseBoxShadows(arg, toDip)[0];
|
|
121
|
+
if (shadow)
|
|
122
|
+
steps.push({ kind: 'shadow', x: shadow.offsetX, y: shadow.offsetY, sigma: shadow.blur / 2, color: shadow.color });
|
|
123
|
+
break;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return steps.filter((s) => s.kind !== 'matrix' || s.matrix.some((n, i) => Math.abs(n - IDENTITY[i]) > 1e-6));
|
|
128
|
+
}
|
|
129
|
+
export function encodeCssFilter(steps, argbOf) {
|
|
130
|
+
const round = (n) => Math.round(n * 1e6) / 1e6;
|
|
131
|
+
return steps
|
|
132
|
+
.map((s) => {
|
|
133
|
+
if (s.kind === 'matrix')
|
|
134
|
+
return 'm,' + s.matrix.map(round).join(',');
|
|
135
|
+
if (s.kind === 'blur')
|
|
136
|
+
return `b,${round(s.sigma)}`;
|
|
137
|
+
return `d,${round(s.x)},${round(s.y)},${round(s.sigma)},${argbOf(s.color) >>> 0}`;
|
|
138
|
+
})
|
|
139
|
+
.join(';');
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=css-filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-filter.js","sourceRoot":"","sources":["../../../packages/nativescript-masonkit/css-filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAM7C,MAAM,QAAQ,GAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAE3F,SAAS,MAAM,CAAC,GAAW,EAAE,QAAgB;IAC3C,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC;IACxB,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC;IACzC,OAAO,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,OAAO,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAE3D,SAAS,GAAG,CAAC,IAAgB;IAC3B,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,OAAO,GAAG,CAAC;QACT,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC;QAC/D,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC;QAC/D,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC;KAChE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,KAAK,CAAC,CAAS;IACtB,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACzB,OAAO,GAAG,CAAC;QACT,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;QACzD,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;QACzD,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;KAC1D,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS;IACzB,OAAO,GAAG,CAAC;QACT,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;QACzD,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;QACzD,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;KAC1D,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,OAAe;IAChC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,OAAO,GAAG,CAAC;QACT,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC;QAC7F,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,EAAE,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC;QAC5F,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC;KAC9F,CAAC,CAAC;AACL,CAAC;AAED,SAAS,MAAM,CAAC,KAAa,EAAE,SAAiB;IAC9C,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1G,CAAC;AAED,SAAS,KAAK,CAAC,CAAS;IACtB,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAkB,EAAE,MAAmB;IACrE,MAAM,GAAG,GAAa,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5C,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;QACjC,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;YACjC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAAE,CAAC,IAAI,MAAM,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;YAC1E,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,QAAQ,GAAG,2CAA2C,CAAC;AAE7D,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,KAA4C;IACxF,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IACrC,MAAM,IAAI,GAAG,CAAC,MAAmB,EAAE,EAAE;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACrC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;YAAE,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;YAClF,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;gBACrB,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAC7E,MAAM;YACR,CAAC;YACD,KAAK,WAAW;gBACd,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5B,MAAM;YACR,KAAK,UAAU;gBACb,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5C,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClD,MAAM;YACR,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC3B,MAAM;YACR,CAAC;YACD,KAAK,SAAS;gBACZ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5B,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC7C,MAAM;YACR,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gBACtC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC/B,MAAM;YACR,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAI,MAAM;oBAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC9H,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AAC/G,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAmB,EAAE,MAAwC;IAC3F,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACvD,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrE,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QACpD,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;IACpF,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type Matrix2D = [number, number, number, number, number, number];
|
|
2
|
+
export declare function parseAngle(token: string): number;
|
|
3
|
+
export declare function parseCssTransform(value: string, toDip: (token: string) => number | undefined, size: {
|
|
4
|
+
width: number;
|
|
5
|
+
height: number;
|
|
6
|
+
}): Matrix2D | null;
|
package/css-transform.js
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
const IDENTITY = [1, 0, 0, 1, 0, 0];
|
|
2
|
+
function multiply(m, n) {
|
|
3
|
+
return [m[0] * n[0] + m[2] * n[1], m[1] * n[0] + m[3] * n[1], m[0] * n[2] + m[2] * n[3], m[1] * n[2] + m[3] * n[3], m[0] * n[4] + m[2] * n[5] + m[4], m[1] * n[4] + m[3] * n[5] + m[5]];
|
|
4
|
+
}
|
|
5
|
+
export function parseAngle(token) {
|
|
6
|
+
const t = token.trim().toLowerCase();
|
|
7
|
+
const n = parseFloat(t);
|
|
8
|
+
if (!Number.isFinite(n))
|
|
9
|
+
return 0;
|
|
10
|
+
if (t.endsWith('grad'))
|
|
11
|
+
return (n * Math.PI) / 200;
|
|
12
|
+
if (t.endsWith('rad'))
|
|
13
|
+
return n;
|
|
14
|
+
if (t.endsWith('turn'))
|
|
15
|
+
return n * 2 * Math.PI;
|
|
16
|
+
return (n * Math.PI) / 180;
|
|
17
|
+
}
|
|
18
|
+
export function parseCssTransform(value, toDip, size) {
|
|
19
|
+
const s = (value ?? '').trim();
|
|
20
|
+
if (!s || s === 'none')
|
|
21
|
+
return null;
|
|
22
|
+
const length = (token, axis) => {
|
|
23
|
+
if (token == null)
|
|
24
|
+
return 0;
|
|
25
|
+
const t = token.trim();
|
|
26
|
+
if (t.endsWith('%'))
|
|
27
|
+
return (parseFloat(t) / 100) * axis;
|
|
28
|
+
return toDip(t) ?? parseFloat(t) ?? 0;
|
|
29
|
+
};
|
|
30
|
+
const num = (token, fallback) => {
|
|
31
|
+
if (token == null || token.trim() === '')
|
|
32
|
+
return fallback;
|
|
33
|
+
const t = token.trim();
|
|
34
|
+
const n = t.endsWith('%') ? parseFloat(t) / 100 : parseFloat(t);
|
|
35
|
+
return Number.isFinite(n) ? n : fallback;
|
|
36
|
+
};
|
|
37
|
+
let m = IDENTITY;
|
|
38
|
+
let found = false;
|
|
39
|
+
const re = /([a-zA-Z0-9]+)\(([^)]*)\)/g;
|
|
40
|
+
let match;
|
|
41
|
+
while ((match = re.exec(s))) {
|
|
42
|
+
const name = match[1].toLowerCase();
|
|
43
|
+
const args = match[2].split(/\s*,\s*|\s+/).filter((a) => a !== '');
|
|
44
|
+
let f = null;
|
|
45
|
+
switch (name) {
|
|
46
|
+
case 'translate':
|
|
47
|
+
case 'translate3d':
|
|
48
|
+
f = [1, 0, 0, 1, length(args[0], size.width), length(args[1], size.height)];
|
|
49
|
+
break;
|
|
50
|
+
case 'translatex':
|
|
51
|
+
f = [1, 0, 0, 1, length(args[0], size.width), 0];
|
|
52
|
+
break;
|
|
53
|
+
case 'translatey':
|
|
54
|
+
f = [1, 0, 0, 1, 0, length(args[0], size.height)];
|
|
55
|
+
break;
|
|
56
|
+
case 'scale':
|
|
57
|
+
case 'scale3d': {
|
|
58
|
+
const sx = num(args[0], 1);
|
|
59
|
+
f = [sx, 0, 0, num(args[1], sx), 0, 0];
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
case 'scalex':
|
|
63
|
+
f = [num(args[0], 1), 0, 0, 1, 0, 0];
|
|
64
|
+
break;
|
|
65
|
+
case 'scaley':
|
|
66
|
+
f = [1, 0, 0, num(args[0], 1), 0, 0];
|
|
67
|
+
break;
|
|
68
|
+
case 'rotate':
|
|
69
|
+
case 'rotatez': {
|
|
70
|
+
const a = parseAngle(args[0] ?? '0');
|
|
71
|
+
f = [Math.cos(a), Math.sin(a), -Math.sin(a), Math.cos(a), 0, 0];
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
case 'skew':
|
|
75
|
+
f = [1, Math.tan(parseAngle(args[1] ?? '0')), Math.tan(parseAngle(args[0] ?? '0')), 1, 0, 0];
|
|
76
|
+
break;
|
|
77
|
+
case 'skewx':
|
|
78
|
+
f = [1, 0, Math.tan(parseAngle(args[0] ?? '0')), 1, 0, 0];
|
|
79
|
+
break;
|
|
80
|
+
case 'skewy':
|
|
81
|
+
f = [1, Math.tan(parseAngle(args[0] ?? '0')), 0, 1, 0, 0];
|
|
82
|
+
break;
|
|
83
|
+
case 'matrix':
|
|
84
|
+
if (args.length >= 6)
|
|
85
|
+
f = args.slice(0, 6).map((a) => parseFloat(a) || 0);
|
|
86
|
+
break;
|
|
87
|
+
case 'matrix3d':
|
|
88
|
+
if (args.length >= 16) {
|
|
89
|
+
const v = args.map((a) => parseFloat(a) || 0);
|
|
90
|
+
f = [v[0], v[1], v[4], v[5], v[12], v[13]];
|
|
91
|
+
}
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
if (!f)
|
|
95
|
+
continue;
|
|
96
|
+
found = true;
|
|
97
|
+
m = multiply(m, f);
|
|
98
|
+
}
|
|
99
|
+
return found ? m : null;
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=css-transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"css-transform.js","sourceRoot":"","sources":["../../../packages/nativescript-masonkit/css-transform.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/html-windows.js
ADDED
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { setWindowsInnerHTML } from './common';
|
|
2
|
+
import { parseHtml } from './html';
|
|
3
|
+
import { textNode_ } from './symbols';
|
|
4
|
+
import * as web from './web';
|
|
5
|
+
import { Br } from './br';
|
|
6
|
+
import { Button } from './button';
|
|
7
|
+
import { Img } from './img';
|
|
8
|
+
import { Input } from './input';
|
|
9
|
+
import { Scroll } from './scroll';
|
|
10
|
+
import { Text } from './text';
|
|
11
|
+
import { TextArea } from './textarea';
|
|
12
|
+
const CLASSES = {
|
|
13
|
+
div: web.Div,
|
|
14
|
+
section: web.Section,
|
|
15
|
+
header: web.Header,
|
|
16
|
+
footer: web.Footer,
|
|
17
|
+
article: web.Article,
|
|
18
|
+
main: web.Main,
|
|
19
|
+
nav: web.Nav,
|
|
20
|
+
aside: web.Aside,
|
|
21
|
+
figure: web.Figure,
|
|
22
|
+
figcaption: web.Figcaption,
|
|
23
|
+
address: web.Address,
|
|
24
|
+
details: web.Details,
|
|
25
|
+
summary: web.Summary,
|
|
26
|
+
hgroup: web.Hgroup,
|
|
27
|
+
dl: web.Dl,
|
|
28
|
+
dt: web.Dt,
|
|
29
|
+
dd: web.Dd,
|
|
30
|
+
form: web.Form,
|
|
31
|
+
fieldset: web.Fieldset,
|
|
32
|
+
legend: web.Legend,
|
|
33
|
+
picture: web.Picture,
|
|
34
|
+
hr: web.Hr,
|
|
35
|
+
ul: web.Ul,
|
|
36
|
+
ol: web.Ol,
|
|
37
|
+
li: web.Li,
|
|
38
|
+
p: web.P,
|
|
39
|
+
span: web.Span,
|
|
40
|
+
code: web.Code,
|
|
41
|
+
pre: web.Pre,
|
|
42
|
+
blockquote: web.Blockquote,
|
|
43
|
+
a: web.A,
|
|
44
|
+
h1: web.H1,
|
|
45
|
+
h2: web.H2,
|
|
46
|
+
h3: web.H3,
|
|
47
|
+
h4: web.H4,
|
|
48
|
+
h5: web.H5,
|
|
49
|
+
h6: web.H6,
|
|
50
|
+
b: web.B,
|
|
51
|
+
strong: web.Strong,
|
|
52
|
+
em: web.Em,
|
|
53
|
+
i: web.I,
|
|
54
|
+
small: web.Small,
|
|
55
|
+
mark: web.Mark,
|
|
56
|
+
sub: web.Sub,
|
|
57
|
+
sup: web.Sup,
|
|
58
|
+
u: web.U,
|
|
59
|
+
ins: web.Ins,
|
|
60
|
+
s: web.S,
|
|
61
|
+
strike: web.S,
|
|
62
|
+
del: web.Del,
|
|
63
|
+
abbr: web.Abbr,
|
|
64
|
+
cite: web.Cite,
|
|
65
|
+
dfn: web.Dfn,
|
|
66
|
+
q: web.Q,
|
|
67
|
+
kbd: web.Kbd,
|
|
68
|
+
samp: web.Samp,
|
|
69
|
+
var: web.Var,
|
|
70
|
+
time: web.Time,
|
|
71
|
+
label: web.Label,
|
|
72
|
+
output: web.Output,
|
|
73
|
+
bdi: web.Bdi,
|
|
74
|
+
scroll: Scroll,
|
|
75
|
+
button: Button,
|
|
76
|
+
};
|
|
77
|
+
const PHRASING = new Set(['data', 'bdo', 'big', 'tt', 'ruby', 'rt', 'rp', 'wbr', 'font']);
|
|
78
|
+
function textOf(nodes) {
|
|
79
|
+
return nodes.map((n) => (typeof n === 'string' ? n : textOf(n.children))).join('');
|
|
80
|
+
}
|
|
81
|
+
function create(el) {
|
|
82
|
+
const a = el.attrs;
|
|
83
|
+
switch (el.tag) {
|
|
84
|
+
case 'img': {
|
|
85
|
+
const img = new Img();
|
|
86
|
+
if (a.src)
|
|
87
|
+
img.src = a.src;
|
|
88
|
+
return img;
|
|
89
|
+
}
|
|
90
|
+
case 'input': {
|
|
91
|
+
const input = new Input();
|
|
92
|
+
if (a.type)
|
|
93
|
+
input.type = a.type;
|
|
94
|
+
if ('value' in a)
|
|
95
|
+
input.value = a.value;
|
|
96
|
+
if (a.placeholder)
|
|
97
|
+
input.placeholder = a.placeholder;
|
|
98
|
+
return input;
|
|
99
|
+
}
|
|
100
|
+
case 'textarea': {
|
|
101
|
+
const area = new TextArea();
|
|
102
|
+
area.value = textOf(el.children).replace(/^\n/, '');
|
|
103
|
+
if (a.placeholder)
|
|
104
|
+
area.placeholder = a.placeholder;
|
|
105
|
+
return area;
|
|
106
|
+
}
|
|
107
|
+
case 'br':
|
|
108
|
+
return new Br();
|
|
109
|
+
}
|
|
110
|
+
const Cls = CLASSES[el.tag] ?? (PHRASING.has(el.tag) ? web.Span : web.Div);
|
|
111
|
+
return new Cls();
|
|
112
|
+
}
|
|
113
|
+
function applyAttributes(view, el) {
|
|
114
|
+
const a = el.attrs;
|
|
115
|
+
if (a.id)
|
|
116
|
+
view.id = a.id;
|
|
117
|
+
if (a.class)
|
|
118
|
+
view.className = a.class;
|
|
119
|
+
if (a.href && 'href' in view)
|
|
120
|
+
view.href = a.href;
|
|
121
|
+
if (a.width && /^\d+(\.\d+)?$/.test(a.width))
|
|
122
|
+
view.style.width = Number(a.width);
|
|
123
|
+
if (a.height && /^\d+(\.\d+)?$/.test(a.height))
|
|
124
|
+
view.style.height = Number(a.height);
|
|
125
|
+
if (a.style)
|
|
126
|
+
view.setInlineStyle(a.style);
|
|
127
|
+
}
|
|
128
|
+
function append(parent, nodes) {
|
|
129
|
+
const inline = parent instanceof Text;
|
|
130
|
+
for (const node of nodes) {
|
|
131
|
+
if (typeof node === 'string') {
|
|
132
|
+
if (!inline && !node.trim())
|
|
133
|
+
continue;
|
|
134
|
+
parent.insertBefore({ nodeType: 3, nodeName: '#text', data: node }, null);
|
|
135
|
+
continue;
|
|
136
|
+
}
|
|
137
|
+
if (node.tag === 'br' && inline) {
|
|
138
|
+
parent.insertBefore({ nodeType: 3, nodeName: 'br', data: '' }, null);
|
|
139
|
+
continue;
|
|
140
|
+
}
|
|
141
|
+
const child = create(node);
|
|
142
|
+
applyAttributes(child, node);
|
|
143
|
+
parent.addChild(child);
|
|
144
|
+
if (node.tag !== 'img' && node.tag !== 'input' && node.tag !== 'textarea' && node.tag !== 'br')
|
|
145
|
+
append(child, node.children);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
function clear(view) {
|
|
149
|
+
const children = [...(view._children ?? [])].reverse();
|
|
150
|
+
for (const c of children) {
|
|
151
|
+
if (!c)
|
|
152
|
+
continue;
|
|
153
|
+
if (c[textNode_])
|
|
154
|
+
view.removeChild({ [textNode_]: c[textNode_] });
|
|
155
|
+
else
|
|
156
|
+
view.removeChild(c);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
setWindowsInnerHTML((view, html) => {
|
|
160
|
+
clear(view);
|
|
161
|
+
append(view, parseHtml(html));
|
|
162
|
+
});
|
|
163
|
+
//# sourceMappingURL=html-windows.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html-windows.js","sourceRoot":"","sources":["../../../packages/nativescript-masonkit/html-windows.ts"],"names":[],"mappings":"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"}
|
package/html.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface HtmlElement {
|
|
2
|
+
tag: string;
|
|
3
|
+
attrs: Record<string, string>;
|
|
4
|
+
children: HtmlNode[];
|
|
5
|
+
}
|
|
6
|
+
export type HtmlNode = HtmlElement | string;
|
|
7
|
+
export declare function decodeEntities(text: string): string;
|
|
8
|
+
export declare function parseHtml(html: string): HtmlNode[];
|
package/html.js
ADDED
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
const VOID = new Set(['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'link', 'meta', 'param', 'source', 'track', 'wbr']);
|
|
2
|
+
const RAW_TEXT = new Set(['style', 'script', 'textarea', 'title']);
|
|
3
|
+
const DROPPED = new Set(['style', 'script', 'title', 'head', 'meta', 'link', 'base']);
|
|
4
|
+
const CLOSES_P = new Set(['address', 'article', 'aside', 'blockquote', 'details', 'div', 'dl', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header', 'hgroup', 'hr', 'main', 'nav', 'ol', 'p', 'pre', 'section', 'ul']);
|
|
5
|
+
const NAMED = { amp: '&', lt: '<', gt: '>', quot: '"', apos: "'", nbsp: ' ', copy: '©', reg: '®', hellip: '…', mdash: '—', ndash: '–', bull: '•', middot: '·', laquo: '«', raquo: '»', times: '×', trade: '™' };
|
|
6
|
+
export function decodeEntities(text) {
|
|
7
|
+
return text.replace(/&(#x[0-9a-f]+|#\d+|[a-z]+);/gi, (match, body) => {
|
|
8
|
+
if (body[0] === '#') {
|
|
9
|
+
const code = body[1] === 'x' || body[1] === 'X' ? parseInt(body.slice(2), 16) : parseInt(body.slice(1), 10);
|
|
10
|
+
return Number.isFinite(code) && code > 0 && code <= 0x10ffff ? String.fromCodePoint(code) : match;
|
|
11
|
+
}
|
|
12
|
+
return NAMED[body.toLowerCase()] ?? match;
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
function parseAttributes(source) {
|
|
16
|
+
const attrs = {};
|
|
17
|
+
const re = /([^\s=/>"']+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s>]+)))?/g;
|
|
18
|
+
let m;
|
|
19
|
+
while ((m = re.exec(source))) {
|
|
20
|
+
attrs[m[1].toLowerCase()] = decodeEntities(m[2] ?? m[3] ?? m[4] ?? '');
|
|
21
|
+
}
|
|
22
|
+
return attrs;
|
|
23
|
+
}
|
|
24
|
+
function collapse(text) {
|
|
25
|
+
return text.replace(/[ \t\n\r\f]+/g, ' ');
|
|
26
|
+
}
|
|
27
|
+
export function parseHtml(html) {
|
|
28
|
+
const root = { tag: '#root', attrs: {}, children: [] };
|
|
29
|
+
const stack = [root];
|
|
30
|
+
const top = () => stack[stack.length - 1];
|
|
31
|
+
const inPre = () => stack.some((e) => e.tag === 'pre' || e.tag === 'textarea');
|
|
32
|
+
const close = (tag) => {
|
|
33
|
+
for (let i = stack.length - 1; i > 0; i--) {
|
|
34
|
+
if (stack[i].tag === tag) {
|
|
35
|
+
stack.length = i;
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
const addText = (raw) => {
|
|
41
|
+
if (!raw)
|
|
42
|
+
return;
|
|
43
|
+
const text = inPre() ? decodeEntities(raw) : collapse(decodeEntities(raw));
|
|
44
|
+
if (!text)
|
|
45
|
+
return;
|
|
46
|
+
const children = top().children;
|
|
47
|
+
const last = children[children.length - 1];
|
|
48
|
+
if (typeof last === 'string')
|
|
49
|
+
children[children.length - 1] = last + text;
|
|
50
|
+
else
|
|
51
|
+
children.push(text);
|
|
52
|
+
};
|
|
53
|
+
const src = html ?? '';
|
|
54
|
+
let i = 0;
|
|
55
|
+
while (i < src.length) {
|
|
56
|
+
const lt = src.indexOf('<', i);
|
|
57
|
+
if (lt === -1) {
|
|
58
|
+
addText(src.slice(i));
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
if (lt > i)
|
|
62
|
+
addText(src.slice(i, lt));
|
|
63
|
+
if (src.startsWith('<!--', lt)) {
|
|
64
|
+
const end = src.indexOf('-->', lt + 4);
|
|
65
|
+
i = end === -1 ? src.length : end + 3;
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
if (src[lt + 1] === '!' || src[lt + 1] === '?') {
|
|
69
|
+
const end = src.indexOf('>', lt);
|
|
70
|
+
i = end === -1 ? src.length : end + 1;
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
const closing = src[lt + 1] === '/';
|
|
74
|
+
const nameMatch = /^[a-zA-Z][a-zA-Z0-9-]*/.exec(src.slice(lt + (closing ? 2 : 1)));
|
|
75
|
+
if (!nameMatch) {
|
|
76
|
+
addText('<');
|
|
77
|
+
i = lt + 1;
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
const tag = nameMatch[0].toLowerCase();
|
|
81
|
+
let end = lt + (closing ? 2 : 1) + nameMatch[0].length;
|
|
82
|
+
let quote = '';
|
|
83
|
+
for (; end < src.length; end++) {
|
|
84
|
+
const ch = src[end];
|
|
85
|
+
if (quote) {
|
|
86
|
+
if (ch === quote)
|
|
87
|
+
quote = '';
|
|
88
|
+
}
|
|
89
|
+
else if (ch === '"' || ch === "'")
|
|
90
|
+
quote = ch;
|
|
91
|
+
else if (ch === '>')
|
|
92
|
+
break;
|
|
93
|
+
}
|
|
94
|
+
const inner = src.slice(lt + (closing ? 2 : 1) + nameMatch[0].length, end);
|
|
95
|
+
i = end + 1;
|
|
96
|
+
if (closing) {
|
|
97
|
+
if (tag === 'br') {
|
|
98
|
+
top().children.push({ tag: 'br', attrs: {}, children: [] });
|
|
99
|
+
continue;
|
|
100
|
+
}
|
|
101
|
+
close(tag);
|
|
102
|
+
continue;
|
|
103
|
+
}
|
|
104
|
+
if (CLOSES_P.has(tag) && stack.some((e) => e.tag === 'p'))
|
|
105
|
+
close('p');
|
|
106
|
+
if (tag === 'li') {
|
|
107
|
+
const list = stack.findLastIndex((e) => e.tag === 'ul' || e.tag === 'ol');
|
|
108
|
+
const li = stack.findLastIndex((e) => e.tag === 'li');
|
|
109
|
+
if (li > list)
|
|
110
|
+
stack.length = li;
|
|
111
|
+
}
|
|
112
|
+
if ((tag === 'dt' || tag === 'dd') && (top().tag === 'dt' || top().tag === 'dd'))
|
|
113
|
+
stack.pop();
|
|
114
|
+
const element = { tag, attrs: parseAttributes(inner), children: [] };
|
|
115
|
+
if (RAW_TEXT.has(tag)) {
|
|
116
|
+
const closeAt = src.toLowerCase().indexOf(`</${tag}`, i);
|
|
117
|
+
const body = src.slice(i, closeAt === -1 ? src.length : closeAt);
|
|
118
|
+
i = closeAt === -1 ? src.length : src.indexOf('>', closeAt) + 1 || src.length;
|
|
119
|
+
if (DROPPED.has(tag))
|
|
120
|
+
continue;
|
|
121
|
+
if (body)
|
|
122
|
+
element.children.push(decodeEntities(body));
|
|
123
|
+
top().children.push(element);
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
if (DROPPED.has(tag))
|
|
127
|
+
continue;
|
|
128
|
+
top().children.push(element);
|
|
129
|
+
if (!VOID.has(tag) && !/\/\s*$/.test(inner))
|
|
130
|
+
stack.push(element);
|
|
131
|
+
}
|
|
132
|
+
return root.children;
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=html.js.map
|
package/html.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../../packages/nativescript-masonkit/html.ts"],"names":[],"mappings":"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"}
|
package/index.d.ts
CHANGED
|
@@ -127,7 +127,7 @@ declare module '@nativescript/core/ui/styling/style' {
|
|
|
127
127
|
fontFeatureSettings: string;
|
|
128
128
|
wordSpacing: string;
|
|
129
129
|
hyphens: 'none' | 'manual' | 'auto';
|
|
130
|
-
writingMode: 'horizontal-tb' | '
|
|
130
|
+
writingMode: 'horizontal-tb' | 'vertical-rl' | 'vertical-lr';
|
|
131
131
|
unicodeBidi: 'normal' | 'embed' | 'bidi-override';
|
|
132
132
|
backdropFilter: string;
|
|
133
133
|
caretColor: string | Color;
|
|
@@ -214,7 +214,7 @@ interface Style {
|
|
|
214
214
|
fontFeatureSettings: string;
|
|
215
215
|
wordSpacing: string;
|
|
216
216
|
hyphens: 'none' | 'manual' | 'auto';
|
|
217
|
-
writingMode: 'horizontal-tb' | '
|
|
217
|
+
writingMode: 'horizontal-tb' | 'vertical-rl' | 'vertical-lr';
|
|
218
218
|
unicodeBidi: 'normal' | 'embed' | 'bidi-override';
|
|
219
219
|
backdropFilter: string;
|
|
220
220
|
caretColor: string | Color;
|
|
@@ -288,7 +288,7 @@ interface IViewBase {
|
|
|
288
288
|
fontFeatureSettings: string;
|
|
289
289
|
wordSpacing: string;
|
|
290
290
|
hyphens: 'none' | 'manual' | 'auto';
|
|
291
|
-
writingMode: 'horizontal-tb' | '
|
|
291
|
+
writingMode: 'horizontal-tb' | 'vertical-rl' | 'vertical-lr';
|
|
292
292
|
unicodeBidi: 'normal' | 'embed' | 'bidi-override';
|
|
293
293
|
backdropFilter: string;
|
|
294
294
|
caretColor: string | Color;
|
|
@@ -347,7 +347,9 @@ export class Br extends TextBase {}
|
|
|
347
347
|
|
|
348
348
|
export class InputBase extends VBase {}
|
|
349
349
|
|
|
350
|
-
export class Input extends InputBase {
|
|
350
|
+
export class Input extends InputBase {
|
|
351
|
+
checked: boolean;
|
|
352
|
+
}
|
|
351
353
|
|
|
352
354
|
export class TextNode {
|
|
353
355
|
data: string;
|