web-component-wrapper 0.0.391 → 0.0.393
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/React.d.ts +4 -11
- package/Web.d.ts +1 -1
- package/index.d.ts +37 -4
- package/package.json +1 -1
- package/type.d.ts +14 -6
package/React.d.ts
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
import { Mapping } from 'clientnode/type';
|
2
|
-
import React
|
2
|
+
import React from 'react';
|
3
3
|
import { Root as ReactRoot } from 'react-dom/client';
|
4
4
|
import Web from './Web';
|
5
|
-
import {
|
5
|
+
import { ComponentType, ReactComponentBaseProperties, ReactRenderItemFactory, ReactRenderItemsFactory, ReactRenderItems, WebComponentAPI } from './type';
|
6
6
|
/**
|
7
7
|
* Adapter for exposing a react component as web-component.
|
8
8
|
* @property static:attachWebComponentAdapterIfNotExists - Indicates whether to
|
@@ -19,14 +19,7 @@ import { ComponentAdapter, ComponentType, ReactRenderItemFactory, ReactRenderIte
|
|
19
19
|
* reacts memorizing wrapper to cache component render results.
|
20
20
|
* @property isWrapped - Indicates whether react component is wrapped already.
|
21
21
|
*/
|
22
|
-
export declare class ReactWeb<TElement = HTMLElement, ExternalProperties extends Mapping<unknown> = Mapping<unknown>, InternalProperties extends Mapping<unknown>
|
23
|
-
children?: Array<React.ReactNode> | React.ReactNode;
|
24
|
-
dangerouslySetInnerHTML?: HTMLAttributes<TElement>['dangerouslySetInnerHTML'];
|
25
|
-
key?: string;
|
26
|
-
ref?: null | {
|
27
|
-
current?: ComponentAdapter;
|
28
|
-
};
|
29
|
-
} = Mapping<unknown>> extends Web<TElement, ExternalProperties, InternalProperties> {
|
22
|
+
export declare class ReactWeb<TElement = HTMLElement, ExternalProperties extends Mapping<unknown> = Mapping<unknown>, InternalProperties extends ReactComponentBaseProperties<TElement> = Mapping<unknown>> extends Web<TElement, ExternalProperties, InternalProperties> {
|
30
23
|
static attachWebComponentAdapterIfNotExists: boolean;
|
31
24
|
static content: ComponentType | string;
|
32
25
|
static react: typeof React;
|
@@ -193,5 +186,5 @@ export declare class ReactWeb<TElement = HTMLElement, ExternalProperties extends
|
|
193
186
|
*/
|
194
187
|
static removeKnownUnwantedPropertyKeys(target: typeof ReactWeb, properties: Mapping<unknown>): void;
|
195
188
|
}
|
196
|
-
export declare const api: WebComponentAPI<typeof ReactWeb>;
|
189
|
+
export declare const api: WebComponentAPI<HTMLElement, Mapping<unknown>, ReactComponentBaseProperties, typeof ReactWeb>;
|
197
190
|
export default ReactWeb;
|
package/Web.d.ts
CHANGED
@@ -474,5 +474,5 @@ export declare class Web<TElement = HTMLElement, ExternalProperties extends Mapp
|
|
474
474
|
*/
|
475
475
|
render(reason?: string): void;
|
476
476
|
}
|
477
|
-
export declare const api: WebComponentAPI<typeof Web>;
|
477
|
+
export declare const api: WebComponentAPI<HTMLElement, Mapping<unknown>, Mapping<unknown>, typeof Web>;
|
478
478
|
export default Web;
|
package/index.d.ts
CHANGED
@@ -1,10 +1,11 @@
|
|
1
|
+
/// <reference types="react" />
|
1
2
|
import { Mapping } from 'clientnode/type';
|
2
3
|
import ReactWebImport from './React';
|
3
4
|
import WebImport from './Web';
|
4
|
-
import { ComponentType, WebComponentAPI, WebComponentConfiguration } from './type';
|
5
|
+
import { AttributesReflectionConfiguration, ComponentType, EventToPropertyMapping, PropertiesConfiguration, WebComponentAPI, WebComponentConfiguration } from './type';
|
5
6
|
export declare const ReactWeb: typeof ReactWebImport;
|
6
|
-
export declare const reactWebAPI: WebComponentAPI<typeof ReactWebImport>;
|
7
|
-
export declare const webAPI: WebComponentAPI<typeof WebImport>;
|
7
|
+
export declare const reactWebAPI: WebComponentAPI<HTMLElement, Mapping<unknown>, import("./type").ReactComponentBaseProperties<HTMLElement>, typeof ReactWebImport>;
|
8
|
+
export declare const webAPI: WebComponentAPI<HTMLElement, Mapping<unknown>, Mapping<unknown>, typeof WebImport>;
|
8
9
|
export declare const Web: typeof WebImport;
|
9
10
|
/**
|
10
11
|
* Wraps given react component as web component.
|
@@ -15,5 +16,37 @@ export declare const Web: typeof WebImport;
|
|
15
16
|
*
|
16
17
|
* @returns Generated object to register and retrieve generated web component.
|
17
18
|
*/
|
18
|
-
export declare const wrapAsWebComponent: <Type extends ComponentType<Mapping<unknown>> = ComponentType<Mapping<unknown>>, ExternalProperties extends Mapping<unknown> = Mapping<unknown>, InternalProperties extends Mapping<unknown> = Mapping<unknown>, EventParameters extends unknown[] = unknown[]>(component: Type, nameHint?: string, configuration?: WebComponentConfiguration<ExternalProperties, InternalProperties, EventParameters>) => WebComponentAPI<
|
19
|
+
export declare const wrapAsWebComponent: <Type extends ComponentType<Mapping<unknown>> = ComponentType<Mapping<unknown>>, ExternalProperties extends Mapping<unknown> = Mapping<unknown>, InternalProperties extends Mapping<unknown> = Mapping<unknown>, EventParameters extends unknown[] = unknown[]>(component: Type, nameHint?: string, configuration?: WebComponentConfiguration<ExternalProperties, InternalProperties, EventParameters>) => WebComponentAPI<Type, ExternalProperties, InternalProperties, {
|
20
|
+
new (): ReactWebImport<Type, ExternalProperties, InternalProperties>;
|
21
|
+
attachWebComponentAdapterIfNotExists: boolean;
|
22
|
+
content: string | ComponentType<Mapping<unknown>>;
|
23
|
+
react: typeof import("react");
|
24
|
+
_name: string;
|
25
|
+
isReactComponent(domNode: Node): boolean;
|
26
|
+
removeKnownUnwantedPropertyKeys(target: typeof ReactWebImport, properties: Mapping<unknown>): void;
|
27
|
+
applyRootBinding: boolean;
|
28
|
+
determineRootBinding: boolean;
|
29
|
+
shadowDOM: boolean | {
|
30
|
+
delegateFocus?: boolean | undefined;
|
31
|
+
mode: "closed" | "open";
|
32
|
+
} | null;
|
33
|
+
observedAttributes: string[];
|
34
|
+
controllableProperties: string[];
|
35
|
+
eventToPropertyMapping: EventToPropertyMapping<Mapping<unknown>, Mapping<unknown>, unknown[]> | null;
|
36
|
+
propertyAliases: Mapping<string>;
|
37
|
+
propertyTypes: PropertiesConfiguration;
|
38
|
+
propertiesToReflectAsAttributes: AttributesReflectionConfiguration;
|
39
|
+
renderProperties: string[];
|
40
|
+
cloneSlots: boolean;
|
41
|
+
evaluateSlots: boolean;
|
42
|
+
renderSlots: boolean;
|
43
|
+
trimSlots: boolean;
|
44
|
+
renderUnsafe: boolean;
|
45
|
+
_propertyAliasIndex: Mapping<string> | undefined;
|
46
|
+
_propertiesToReflectAsAttributes: import("./type").NormalizedAttributesReflectionConfiguration;
|
47
|
+
replaceDomNodes(domNode: HTMLElement, children: Node | Node[]): void;
|
48
|
+
unwrapDomNode(domNode: HTMLElement): ChildNode[];
|
49
|
+
hasCode(content: unknown): boolean;
|
50
|
+
normalizePropertyTypeList(value: AttributesReflectionConfiguration): import("./type").NormalizedAttributesReflectionConfiguration;
|
51
|
+
}>;
|
19
52
|
export default wrapAsWebComponent;
|
package/package.json
CHANGED
package/type.d.ts
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import PropertyTypes, { ValidationMap } from 'clientnode/property-types';
|
2
2
|
import { Mapping, TemplateFunction, ValueOf } from 'clientnode/type';
|
3
|
-
import { ComponentType as ReactComponentType, ReactElement } from 'react';
|
3
|
+
import React, { ComponentType as ReactComponentType, HTMLAttributes, ReactElement } from 'react';
|
4
4
|
import Web from './Web';
|
5
5
|
export declare type CompiledDomNodeTemplateItem = {
|
6
6
|
children: Array<CompiledDomNodeTemplate>;
|
@@ -28,6 +28,14 @@ export declare type PreCompiledItem = {
|
|
28
28
|
originalScopeNames: Array<string>;
|
29
29
|
templateFunction: TemplateFunction;
|
30
30
|
};
|
31
|
+
export declare type ReactComponentBaseProperties<TElement = HTMLElement> = Mapping<unknown> & {
|
32
|
+
children?: Array<React.ReactNode> | React.ReactNode;
|
33
|
+
dangerouslySetInnerHTML?: HTMLAttributes<TElement>['dangerouslySetInnerHTML'];
|
34
|
+
key?: string;
|
35
|
+
ref?: null | {
|
36
|
+
current?: ComponentAdapter;
|
37
|
+
};
|
38
|
+
};
|
31
39
|
export declare type ReactRenderBaseItemFactory = (_scope: Mapping<unknown>) => ReactRenderBaseItem;
|
32
40
|
export declare type ReactRenderItemFactory = (_scope: Mapping<unknown>) => ReactRenderItem;
|
33
41
|
export declare type ReactRenderItemsFactory = Array<ReactRenderItemFactory> | ReactRenderItemFactory;
|
@@ -44,9 +52,9 @@ export interface WebComponentConfiguration<ExternalProperties extends Mapping<un
|
|
44
52
|
propTypes?: PropertiesConfiguration;
|
45
53
|
renderProperties?: Array<string>;
|
46
54
|
}
|
47
|
-
export interface StaticWebComponent extends WebComponentConfiguration {
|
55
|
+
export interface StaticWebComponent<ComponentType = unknown, ExternalProperties extends Mapping<unknown> = Mapping<unknown>, InternalProperties extends Mapping<unknown> = Mapping<unknown>, EventParameters extends Array<unknown> = Array<unknown>> extends WebComponentConfiguration<ExternalProperties, InternalProperties, EventParameters> {
|
48
56
|
webComponentAdapterWrapped?: string;
|
49
|
-
wrapped?:
|
57
|
+
wrapped?: ComponentType;
|
50
58
|
_name?: string;
|
51
59
|
___types?: {
|
52
60
|
name?: {
|
@@ -59,7 +67,7 @@ export interface ComponentAdapter<Properties = Mapping<unknown>, State = Mapping
|
|
59
67
|
properties?: Properties;
|
60
68
|
state?: State;
|
61
69
|
}
|
62
|
-
export declare type WebComponentAPI<
|
63
|
-
component:
|
64
|
-
register: (
|
70
|
+
export declare type WebComponentAPI<TElement = HTMLElement, ExternalProperties extends Mapping<unknown> = Mapping<unknown>, InternalProperties extends Mapping<unknown> = Mapping<unknown>, Type extends typeof Web<TElement, ExternalProperties, InternalProperties> = typeof Web<TElement, ExternalProperties, InternalProperties>> = {
|
71
|
+
component: Type;
|
72
|
+
register: (tagName?: string) => void;
|
65
73
|
};
|