@wix/zero-config-implementation 1.86.0 → 1.88.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.
- package/dist/index.js +82659 -30
- package/package.json +28 -4
- package/src/extensions/wix-services/service-stub.test.ts +149 -0
- package/src/extensions/wix-services/service-stub.ts +126 -0
- package/src/extensions/wix-services/wrapper.test.ts +63 -0
- package/src/extensions/wix-services/wrapper.ts +204 -0
- package/src/index.ts +2 -6
- package/src/information-extractors/ts/__snapshots__/components.test.ts.snap +601 -0
- package/src/information-extractors/ts/components.test.ts +31 -0
- package/src/information-extractors/ts/components.ts +13 -0
- package/src/information-extractors/ts/utils/semantic-type-resolver.ts +40 -11
- package/dist/index-B27P3e9W.js +0 -96
- package/dist/index-EfIM-d53.js +0 -100363
|
@@ -212,8 +212,8 @@ function resolveTypeBody({
|
|
|
212
212
|
() => resolvePrimitiveType(type),
|
|
213
213
|
() => resolveLiteralType(type, checker),
|
|
214
214
|
() => resolveUnionType(type, checker, depth, seenTypes),
|
|
215
|
-
() => resolveIntersectionType(type, checker, depth, seenTypes),
|
|
216
215
|
() => resolveArrayType(type, checker, depth, seenTypes),
|
|
216
|
+
() => resolveIntersectionType(type, checker, depth, seenTypes),
|
|
217
217
|
() => resolveFunctionType(type, checker),
|
|
218
218
|
() => resolveObjectType(type, checker, depth, seenTypes),
|
|
219
219
|
]
|
|
@@ -324,18 +324,47 @@ function resolveArrayType(
|
|
|
324
324
|
depth: number,
|
|
325
325
|
seenTypes: Set<ts.Type>,
|
|
326
326
|
): ResolvedType | undefined {
|
|
327
|
-
if (
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
elementType: resolveType({ type: typeArgs[0], checker, depth: depth + 1, seenTypes }),
|
|
334
|
-
}
|
|
335
|
-
}
|
|
327
|
+
if (!isArrayLikeType(type, checker)) {
|
|
328
|
+
return undefined
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
const elementType = getArrayElementType(type, checker)
|
|
332
|
+
if (!elementType) {
|
|
336
333
|
return { kind: 'array', elementType: { kind: 'primitive', value: 'any' } }
|
|
337
334
|
}
|
|
338
|
-
|
|
335
|
+
|
|
336
|
+
return {
|
|
337
|
+
kind: 'array',
|
|
338
|
+
elementType: resolveType({ type: elementType, checker, depth: depth + 1, seenTypes }),
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
function isArrayLikeType(type: ts.Type, checker: ts.TypeChecker): boolean {
|
|
343
|
+
if (type.flags & ts.TypeFlags.Intersection) {
|
|
344
|
+
return (type as ts.IntersectionType).types.some((memberType) => isArrayLikeType(memberType, checker))
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
return checker.isArrayType(type) || checker.isTupleType(type)
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
function getArrayElementType(type: ts.Type, checker: ts.TypeChecker): ts.Type | undefined {
|
|
351
|
+
if (type.flags & ts.TypeFlags.Intersection) {
|
|
352
|
+
const intersectionType = type as ts.IntersectionType
|
|
353
|
+
|
|
354
|
+
// Prefer a declared array type over a const tuple. Intersections produced by
|
|
355
|
+
// default-prop helpers commonly look like `Item[] & readonly [{ ... }]`;
|
|
356
|
+
// the declared array carries the reusable item schema while the tuple only
|
|
357
|
+
// narrows it to the particular default values.
|
|
358
|
+
const declaredArrayMember = intersectionType.types.find((memberType) => checker.isArrayType(memberType))
|
|
359
|
+
if (declaredArrayMember) {
|
|
360
|
+
return checker.getIndexTypeOfType(declaredArrayMember, ts.IndexKind.Number)
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
const tupleMember = intersectionType.types.find((memberType) => checker.isTupleType(memberType))
|
|
364
|
+
return tupleMember ? checker.getIndexTypeOfType(tupleMember, ts.IndexKind.Number) : undefined
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
return checker.getIndexTypeOfType(type, ts.IndexKind.Number)
|
|
339
368
|
}
|
|
340
369
|
|
|
341
370
|
function resolveFunctionType(type: ts.Type, checker: ts.TypeChecker): ResolvedType | undefined {
|
package/dist/index-B27P3e9W.js
DELETED
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
import { g as x } from "./index-EfIM-d53.js";
|
|
2
|
-
function h(r, a) {
|
|
3
|
-
for (var i = 0; i < a.length; i++) {
|
|
4
|
-
const o = a[i];
|
|
5
|
-
if (typeof o != "string" && !Array.isArray(o)) {
|
|
6
|
-
for (const c in o)
|
|
7
|
-
if (c !== "default" && !(c in r)) {
|
|
8
|
-
const n = Object.getOwnPropertyDescriptor(o, c);
|
|
9
|
-
n && Object.defineProperty(r, c, n.get ? n : {
|
|
10
|
-
enumerable: !0,
|
|
11
|
-
get: () => o[c]
|
|
12
|
-
});
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
return Object.freeze(Object.defineProperty(r, Symbol.toStringTag, { value: "Module" }));
|
|
17
|
-
}
|
|
18
|
-
var g, v;
|
|
19
|
-
function E() {
|
|
20
|
-
return v || (v = 1, g = function() {
|
|
21
|
-
var r = document.getSelection();
|
|
22
|
-
if (!r.rangeCount)
|
|
23
|
-
return function() {
|
|
24
|
-
};
|
|
25
|
-
for (var a = document.activeElement, i = [], o = 0; o < r.rangeCount; o++)
|
|
26
|
-
i.push(r.getRangeAt(o));
|
|
27
|
-
switch (a.tagName.toUpperCase()) {
|
|
28
|
-
// .toUpperCase handles XHTML
|
|
29
|
-
case "INPUT":
|
|
30
|
-
case "TEXTAREA":
|
|
31
|
-
a.blur();
|
|
32
|
-
break;
|
|
33
|
-
default:
|
|
34
|
-
a = null;
|
|
35
|
-
break;
|
|
36
|
-
}
|
|
37
|
-
return r.removeAllRanges(), function() {
|
|
38
|
-
r.type === "Caret" && r.removeAllRanges(), r.rangeCount || i.forEach(function(c) {
|
|
39
|
-
r.addRange(c);
|
|
40
|
-
}), a && a.focus();
|
|
41
|
-
};
|
|
42
|
-
}), g;
|
|
43
|
-
}
|
|
44
|
-
var y, C;
|
|
45
|
-
function T() {
|
|
46
|
-
if (C) return y;
|
|
47
|
-
C = 1;
|
|
48
|
-
var r = E(), a = {
|
|
49
|
-
"text/plain": "Text",
|
|
50
|
-
"text/html": "Url",
|
|
51
|
-
default: "Text"
|
|
52
|
-
}, i = "Copy to clipboard: #{key}, Enter";
|
|
53
|
-
function o(n) {
|
|
54
|
-
var t = (/mac os x/i.test(navigator.userAgent) ? "⌘" : "Ctrl") + "+C";
|
|
55
|
-
return n.replace(/#{\s*key\s*}/g, t);
|
|
56
|
-
}
|
|
57
|
-
function c(n, t) {
|
|
58
|
-
var s, m, b, d, u, e, f = !1;
|
|
59
|
-
t || (t = {}), s = t.debug || !1;
|
|
60
|
-
try {
|
|
61
|
-
b = r(), d = document.createRange(), u = document.getSelection(), e = document.createElement("span"), e.textContent = n, e.ariaHidden = "true", e.style.all = "unset", e.style.position = "fixed", e.style.top = 0, e.style.clip = "rect(0, 0, 0, 0)", e.style.whiteSpace = "pre", e.style.webkitUserSelect = "text", e.style.MozUserSelect = "text", e.style.msUserSelect = "text", e.style.userSelect = "text", e.addEventListener("copy", function(l) {
|
|
62
|
-
if (l.stopPropagation(), t.format)
|
|
63
|
-
if (l.preventDefault(), typeof l.clipboardData > "u") {
|
|
64
|
-
s && console.warn("unable to use e.clipboardData"), s && console.warn("trying IE specific stuff"), window.clipboardData.clearData();
|
|
65
|
-
var p = a[t.format] || a.default;
|
|
66
|
-
window.clipboardData.setData(p, n);
|
|
67
|
-
} else
|
|
68
|
-
l.clipboardData.clearData(), l.clipboardData.setData(t.format, n);
|
|
69
|
-
t.onCopy && (l.preventDefault(), t.onCopy(l.clipboardData));
|
|
70
|
-
}), document.body.appendChild(e), d.selectNodeContents(e), u.addRange(d);
|
|
71
|
-
var D = document.execCommand("copy");
|
|
72
|
-
if (!D)
|
|
73
|
-
throw new Error("copy command was unsuccessful");
|
|
74
|
-
f = !0;
|
|
75
|
-
} catch (l) {
|
|
76
|
-
s && console.error("unable to copy using execCommand: ", l), s && console.warn("trying IE specific stuff");
|
|
77
|
-
try {
|
|
78
|
-
window.clipboardData.setData(t.format || "text", n), t.onCopy && t.onCopy(window.clipboardData), f = !0;
|
|
79
|
-
} catch (p) {
|
|
80
|
-
s && console.error("unable to copy using clipboardData: ", p), s && console.error("falling back to prompt"), m = o("message" in t ? t.message : i), window.prompt(m, n);
|
|
81
|
-
}
|
|
82
|
-
} finally {
|
|
83
|
-
u && (typeof u.removeRange == "function" ? u.removeRange(d) : u.removeAllRanges()), e && document.body.removeChild(e), b();
|
|
84
|
-
}
|
|
85
|
-
return f;
|
|
86
|
-
}
|
|
87
|
-
return y = c, y;
|
|
88
|
-
}
|
|
89
|
-
var w = T();
|
|
90
|
-
const R = /* @__PURE__ */ x(w), A = /* @__PURE__ */ h({
|
|
91
|
-
__proto__: null,
|
|
92
|
-
default: R
|
|
93
|
-
}, [w]);
|
|
94
|
-
export {
|
|
95
|
-
A as i
|
|
96
|
-
};
|