svelte2tsx 0.6.18 → 0.6.20
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/index.js +16 -3
- package/index.mjs +16 -3
- package/package.json +1 -1
- package/svelte-jsx-v4.d.ts +1 -0
- package/svelte-jsx.d.ts +1 -0
- package/svelte-shims-v4.d.ts +6 -8
package/index.js
CHANGED
|
@@ -5279,7 +5279,7 @@ function getLineOffsets(text) {
|
|
|
5279
5279
|
|
|
5280
5280
|
class Generics {
|
|
5281
5281
|
constructor(str, astOffset, script) {
|
|
5282
|
-
var _a, _b;
|
|
5282
|
+
var _a, _b, _c, _d;
|
|
5283
5283
|
this.str = str;
|
|
5284
5284
|
this.astOffset = astOffset;
|
|
5285
5285
|
this.definitions = [];
|
|
@@ -5288,13 +5288,26 @@ class Generics {
|
|
|
5288
5288
|
this.genericsAttr = script.attributes.find((attr) => attr.name === 'generics');
|
|
5289
5289
|
const generics = (_b = (_a = this.genericsAttr) === null || _a === void 0 ? void 0 : _a.value[0]) === null || _b === void 0 ? void 0 : _b.raw;
|
|
5290
5290
|
if (generics) {
|
|
5291
|
-
|
|
5292
|
-
this.
|
|
5291
|
+
const typeParameters = this.getGenericTypeParameters(generics);
|
|
5292
|
+
this.definitions = (_c = typeParameters === null || typeParameters === void 0 ? void 0 : typeParameters.map((param) => param.getText())) !== null && _c !== void 0 ? _c : [];
|
|
5293
|
+
this.references = (_d = typeParameters === null || typeParameters === void 0 ? void 0 : typeParameters.map((param) => param.name.getText())) !== null && _d !== void 0 ? _d : [];
|
|
5293
5294
|
}
|
|
5294
5295
|
else {
|
|
5295
5296
|
this.genericsAttr = undefined;
|
|
5296
5297
|
}
|
|
5297
5298
|
}
|
|
5299
|
+
getGenericTypeParameters(rawGenericsAttr) {
|
|
5300
|
+
const sourceFile = ts.createSourceFile('index.ts', `<${rawGenericsAttr}>() => {}`, ts.ScriptTarget.Latest, true);
|
|
5301
|
+
const firstStatement = sourceFile.statements[0];
|
|
5302
|
+
if (!firstStatement || !ts.isExpressionStatement(firstStatement)) {
|
|
5303
|
+
return;
|
|
5304
|
+
}
|
|
5305
|
+
const arrowFunction = firstStatement.expression;
|
|
5306
|
+
if (!ts.isArrowFunction(arrowFunction)) {
|
|
5307
|
+
return;
|
|
5308
|
+
}
|
|
5309
|
+
return arrowFunction.typeParameters;
|
|
5310
|
+
}
|
|
5298
5311
|
addIfIsGeneric(node) {
|
|
5299
5312
|
var _a, _b;
|
|
5300
5313
|
if (ts.isTypeAliasDeclaration(node) && this.is$$GenericType(node.type)) {
|
package/index.mjs
CHANGED
|
@@ -5259,7 +5259,7 @@ function getLineOffsets(text) {
|
|
|
5259
5259
|
|
|
5260
5260
|
class Generics {
|
|
5261
5261
|
constructor(str, astOffset, script) {
|
|
5262
|
-
var _a, _b;
|
|
5262
|
+
var _a, _b, _c, _d;
|
|
5263
5263
|
this.str = str;
|
|
5264
5264
|
this.astOffset = astOffset;
|
|
5265
5265
|
this.definitions = [];
|
|
@@ -5268,13 +5268,26 @@ class Generics {
|
|
|
5268
5268
|
this.genericsAttr = script.attributes.find((attr) => attr.name === 'generics');
|
|
5269
5269
|
const generics = (_b = (_a = this.genericsAttr) === null || _a === void 0 ? void 0 : _a.value[0]) === null || _b === void 0 ? void 0 : _b.raw;
|
|
5270
5270
|
if (generics) {
|
|
5271
|
-
|
|
5272
|
-
this.
|
|
5271
|
+
const typeParameters = this.getGenericTypeParameters(generics);
|
|
5272
|
+
this.definitions = (_c = typeParameters === null || typeParameters === void 0 ? void 0 : typeParameters.map((param) => param.getText())) !== null && _c !== void 0 ? _c : [];
|
|
5273
|
+
this.references = (_d = typeParameters === null || typeParameters === void 0 ? void 0 : typeParameters.map((param) => param.name.getText())) !== null && _d !== void 0 ? _d : [];
|
|
5273
5274
|
}
|
|
5274
5275
|
else {
|
|
5275
5276
|
this.genericsAttr = undefined;
|
|
5276
5277
|
}
|
|
5277
5278
|
}
|
|
5279
|
+
getGenericTypeParameters(rawGenericsAttr) {
|
|
5280
|
+
const sourceFile = ts.createSourceFile('index.ts', `<${rawGenericsAttr}>() => {}`, ts.ScriptTarget.Latest, true);
|
|
5281
|
+
const firstStatement = sourceFile.statements[0];
|
|
5282
|
+
if (!firstStatement || !ts.isExpressionStatement(firstStatement)) {
|
|
5283
|
+
return;
|
|
5284
|
+
}
|
|
5285
|
+
const arrowFunction = firstStatement.expression;
|
|
5286
|
+
if (!ts.isArrowFunction(arrowFunction)) {
|
|
5287
|
+
return;
|
|
5288
|
+
}
|
|
5289
|
+
return arrowFunction.typeParameters;
|
|
5290
|
+
}
|
|
5278
5291
|
addIfIsGeneric(node) {
|
|
5279
5292
|
var _a, _b;
|
|
5280
5293
|
if (ts.isTypeAliasDeclaration(node) && this.is$$GenericType(node.type)) {
|
package/package.json
CHANGED
package/svelte-jsx-v4.d.ts
CHANGED
|
@@ -219,6 +219,7 @@ declare namespace svelteHTML {
|
|
|
219
219
|
// Svelte specific
|
|
220
220
|
'svelte:window': HTMLProps<'svelte:window', HTMLAttributes>;
|
|
221
221
|
'svelte:body': HTMLProps<'svelte:body', HTMLAttributes>;
|
|
222
|
+
'svelte:document': HTMLProps<'svelte:document', HTMLAttributes>;
|
|
222
223
|
'svelte:fragment': { slot?: string };
|
|
223
224
|
'svelte:options': { [name: string]: any };
|
|
224
225
|
'svelte:head': { [name: string]: any };
|
package/svelte-jsx.d.ts
CHANGED
|
@@ -238,6 +238,7 @@ declare namespace svelteHTML {
|
|
|
238
238
|
// Svelte specific
|
|
239
239
|
'svelte:window': HTMLProps<'svelte:window', HTMLAttributes>;
|
|
240
240
|
'svelte:body': HTMLProps<'svelte:body', HTMLAttributes>;
|
|
241
|
+
'svelte:document': HTMLProps<'svelte:document', HTMLAttributes>;
|
|
241
242
|
'svelte:fragment': { slot?: string };
|
|
242
243
|
'svelte:options': { [name: string]: any };
|
|
243
244
|
'svelte:head': { [name: string]: any };
|
package/svelte-shims-v4.d.ts
CHANGED
|
@@ -100,8 +100,6 @@ declare function __sveltets_2_with_any_event<Props = {}, Events = {}, Slots = {}
|
|
|
100
100
|
declare function __sveltets_2_store_get<T = any>(store: SvelteStore<T>): T
|
|
101
101
|
declare function __sveltets_2_store_get<Store extends SvelteStore<any> | undefined | null>(store: Store): Store extends SvelteStore<infer T> ? T : Store;
|
|
102
102
|
declare function __sveltets_2_any(dummy: any): any;
|
|
103
|
-
// declare function __sveltets_1_empty(...dummy: any[]): {};
|
|
104
|
-
// declare function __sveltets_1_componentType(): AConstructorTypeOf<import("svelte").SvelteComponentTyped<any, any, any>>
|
|
105
103
|
declare function __sveltets_2_invalidate<T>(getValue: () => T): T
|
|
106
104
|
|
|
107
105
|
declare function __sveltets_2_mapWindowEvent<K extends keyof HTMLBodyElementEventMap>(
|
|
@@ -129,16 +127,16 @@ declare function __sveltets_2_unionType<T1, T2, T3>(t1: T1, t2: T2, t3: T3): T1
|
|
|
129
127
|
declare function __sveltets_2_unionType<T1, T2, T3, T4>(t1: T1, t2: T2, t3: T3, t4: T4): T1 | T2 | T3 | T4;
|
|
130
128
|
declare function __sveltets_2_unionType(...types: any[]): any;
|
|
131
129
|
|
|
132
|
-
declare function __sveltets_2_createSvelte2TsxComponent<Props, Events, Slots>(
|
|
130
|
+
declare function __sveltets_2_createSvelte2TsxComponent<Props extends {}, Events extends {}, Slots extends {}>(
|
|
133
131
|
render: {props: Props, events: Events, slots: Slots }
|
|
134
|
-
): SvelteComponentConstructor<import("svelte").
|
|
132
|
+
): SvelteComponentConstructor<import("svelte").SvelteComponent<Props, Events, Slots>,import('svelte').ComponentConstructorOptions<Props>>;
|
|
135
133
|
|
|
136
134
|
declare function __sveltets_2_unwrapArr<T>(arr: ArrayLike<T>): T
|
|
137
135
|
declare function __sveltets_2_unwrapPromiseLike<T>(promise: PromiseLike<T> | T): T
|
|
138
136
|
|
|
139
137
|
// v2
|
|
140
138
|
declare function __sveltets_2_createCreateSlot<Slots = Record<string, Record<string, any>>>(): <SlotName extends keyof Slots>(slotName: SlotName, attrs: Slots[SlotName]) => Record<string, any>;
|
|
141
|
-
declare function __sveltets_2_createComponentAny(props: Record<string, any>): import("svelte").
|
|
139
|
+
declare function __sveltets_2_createComponentAny(props: Record<string, any>): import("svelte").SvelteComponent<any, any, any>;
|
|
142
140
|
|
|
143
141
|
declare function __sveltets_2_any(...dummy: any[]): any;
|
|
144
142
|
declare function __sveltets_2_empty(...dummy: any[]): {};
|
|
@@ -214,11 +212,11 @@ declare type ATypedSvelteComponent = {
|
|
|
214
212
|
/**
|
|
215
213
|
* Ambient type only used for intellisense, DO NOT USE IN YOUR PROJECT.
|
|
216
214
|
*
|
|
217
|
-
* If you're looking for the type of a Svelte Component, use `
|
|
215
|
+
* If you're looking for the type of a Svelte Component, use `SvelteComponent` and `ComponentType` instead:
|
|
218
216
|
*
|
|
219
217
|
* ```ts
|
|
220
|
-
* import type { ComponentType,
|
|
221
|
-
* let myComponentConstructor: ComponentType<
|
|
218
|
+
* import type { ComponentType, SvelteComponent } from "svelte";
|
|
219
|
+
* let myComponentConstructor: ComponentType<SvelteComponent> = ..;
|
|
222
220
|
* ```
|
|
223
221
|
*/
|
|
224
222
|
declare type ConstructorOfATypedSvelteComponent = new (args: {target: any, props?: any}) => ATypedSvelteComponent
|