@marko/language-tools 2.5.36 → 2.5.37
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 +2 -2
- package/dist/index.mjs +2 -2
- package/marko.internal.d.ts +13 -9
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2118,9 +2118,9 @@ export { type Component }
|
|
|
2118
2118
|
);
|
|
2119
2119
|
} else {
|
|
2120
2120
|
this.#extractor.write(
|
|
2121
|
-
`/** @typedef {${varShared("
|
|
2121
|
+
`/** @typedef {${varShared("ResolveComponent")}<typeof import("${stripExt(
|
|
2122
2122
|
(0, import_relative_import_path.relativeImportPath)(this.#filename, componentFileName)
|
|
2123
|
-
)}")
|
|
2123
|
+
)}")>} Component */
|
|
2124
2124
|
`
|
|
2125
2125
|
);
|
|
2126
2126
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -2081,9 +2081,9 @@ export { type Component }
|
|
|
2081
2081
|
);
|
|
2082
2082
|
} else {
|
|
2083
2083
|
this.#extractor.write(
|
|
2084
|
-
`/** @typedef {${varShared("
|
|
2084
|
+
`/** @typedef {${varShared("ResolveComponent")}<typeof import("${stripExt(
|
|
2085
2085
|
relativeImportPath(this.#filename, componentFileName)
|
|
2086
|
-
)}")
|
|
2086
|
+
)}")>} Component */
|
|
2087
2087
|
`
|
|
2088
2088
|
);
|
|
2089
2089
|
}
|
package/marko.internal.d.ts
CHANGED
|
@@ -162,15 +162,6 @@ declare global {
|
|
|
162
162
|
export function resolveTemplate<Template>(
|
|
163
163
|
imported: Promise<{ default: Template }>,
|
|
164
164
|
): Template;
|
|
165
|
-
export function resolveComponent<Component>(
|
|
166
|
-
component: Component,
|
|
167
|
-
): CheckNever<
|
|
168
|
-
(Component extends { default: infer Component }
|
|
169
|
-
? Component
|
|
170
|
-
: Component) &
|
|
171
|
-
Marko.Component<unknown, unknown>,
|
|
172
|
-
Marko.Component<unknown, unknown>
|
|
173
|
-
>;
|
|
174
165
|
export function fallbackTemplate<Tag, Template>(
|
|
175
166
|
tag: Tag,
|
|
176
167
|
fallback: Promise<{ default: Template }>,
|
|
@@ -470,6 +461,17 @@ declare global {
|
|
|
470
461
|
(): () => <Input>(input: Input) => ReturnAndScope<Scopes<Input>, void>;
|
|
471
462
|
}
|
|
472
463
|
|
|
464
|
+
export type ResolveComponent<Component> = CheckNever<
|
|
465
|
+
ComponentOf<
|
|
466
|
+
InstanceOf<
|
|
467
|
+
Component extends { default: infer Component }
|
|
468
|
+
? Component
|
|
469
|
+
: Component
|
|
470
|
+
>
|
|
471
|
+
>,
|
|
472
|
+
Marko.Component
|
|
473
|
+
>;
|
|
474
|
+
|
|
473
475
|
export type Relate<A, B> = B extends A ? A : B;
|
|
474
476
|
}
|
|
475
477
|
}
|
|
@@ -631,6 +633,8 @@ type KnownRecordKeys<T> = keyof {
|
|
|
631
633
|
};
|
|
632
634
|
|
|
633
635
|
type CheckNever<T, If, Else = T> = [T] extends [never] ? If : Else;
|
|
636
|
+
type ComponentOf<T> = T extends Marko.Component ? T : T & Marko.Component;
|
|
637
|
+
type InstanceOf<T> = T extends abstract new () => infer R ? R : T;
|
|
634
638
|
|
|
635
639
|
type UnionToIntersection<T> = (T extends any ? (_: T) => any : never) extends (
|
|
636
640
|
_: infer U,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@marko/language-tools",
|
|
3
3
|
"description": "Marko Language Tools",
|
|
4
|
-
"version": "2.5.
|
|
4
|
+
"version": "2.5.37",
|
|
5
5
|
"bugs": "https://github.com/marko-js/language-server/issues/new?template=Bug_report.md",
|
|
6
6
|
"peerDependencies": {
|
|
7
7
|
"@marko/compiler": "^5.28.4"
|