@lingxia/elements 0.5.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.
Files changed (46) hide show
  1. package/dist/component.d.ts +50 -0
  2. package/dist/component.js +139 -0
  3. package/dist/dom.d.ts +10 -0
  4. package/dist/dom.js +70 -0
  5. package/dist/index.d.ts +9 -0
  6. package/dist/index.js +9 -0
  7. package/dist/input.d.ts +117 -0
  8. package/dist/input.js +699 -0
  9. package/dist/native_component_wrapper_shared.d.ts +74 -0
  10. package/dist/native_component_wrapper_shared.js +193 -0
  11. package/dist/nativecomponent.d.ts +6 -0
  12. package/dist/nativecomponent.js +82 -0
  13. package/dist/navigator.d.ts +83 -0
  14. package/dist/navigator.js +388 -0
  15. package/dist/picker-web.d.ts +2 -0
  16. package/dist/picker-web.js +727 -0
  17. package/dist/picker.d.ts +77 -0
  18. package/dist/picker.js +342 -0
  19. package/dist/platform.d.ts +6 -0
  20. package/dist/platform.js +24 -0
  21. package/dist/text_component_native_attrs.d.ts +53 -0
  22. package/dist/text_component_native_attrs.js +111 -0
  23. package/dist/text_component_shared.d.ts +7 -0
  24. package/dist/text_component_shared.js +148 -0
  25. package/dist/textarea.d.ts +129 -0
  26. package/dist/textarea.js +841 -0
  27. package/dist/types.d.ts +21 -0
  28. package/dist/types.js +1 -0
  29. package/dist/video.d.ts +134 -0
  30. package/dist/video.js +741 -0
  31. package/package.json +39 -0
  32. package/src/component.ts +164 -0
  33. package/src/dom.ts +83 -0
  34. package/src/index.ts +69 -0
  35. package/src/input.ts +799 -0
  36. package/src/native_component_wrapper_shared.ts +243 -0
  37. package/src/nativecomponent.ts +97 -0
  38. package/src/navigator.ts +533 -0
  39. package/src/picker-web.ts +719 -0
  40. package/src/picker.ts +418 -0
  41. package/src/platform.ts +25 -0
  42. package/src/text_component_native_attrs.ts +137 -0
  43. package/src/text_component_shared.ts +147 -0
  44. package/src/textarea.ts +959 -0
  45. package/src/types.ts +20 -0
  46. package/src/video.ts +855 -0
@@ -0,0 +1,21 @@
1
+ import type { NativeComponentMessage as BridgeNativeComponentMessage } from '@lingxia/bridge';
2
+ /**
3
+ * Elements-level NativeComponentMessage — extends bridge's open type with known fields.
4
+ * This richer type is used internally and exported for component implementors.
5
+ */
6
+ export interface NativeComponentMessage extends BridgeNativeComponentMessage {
7
+ action: string;
8
+ type?: string;
9
+ event?: string;
10
+ detail?: unknown;
11
+ payload?: unknown;
12
+ rect?: {
13
+ x: number;
14
+ y: number;
15
+ width: number;
16
+ height: number;
17
+ };
18
+ props?: Record<string, unknown>;
19
+ zIndex?: number;
20
+ cornerRadius?: number;
21
+ }
package/dist/types.js ADDED
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,134 @@
1
+ export type LxVideoQuality = {
2
+ label: string;
3
+ url?: string;
4
+ };
5
+ type LxVideoViewEventHandler = (e: Event) => void;
6
+ export type LxVideoAttributes = {
7
+ id?: string;
8
+ src?: string;
9
+ poster?: string;
10
+ objectFit?: "cover" | "contain" | "fill" | "fit";
11
+ rotate?: 0 | 90 | 180 | 270;
12
+ autoplay?: boolean;
13
+ loop?: boolean;
14
+ muted?: boolean;
15
+ controls?: boolean;
16
+ progressBar?: boolean;
17
+ live?: boolean;
18
+ volume?: string | number;
19
+ qualities?: LxVideoQuality[];
20
+ playbackRates?: number[];
21
+ className?: string;
22
+ style?: any;
23
+ ref?: any;
24
+ onPlayRequest?: LxVideoViewEventHandler;
25
+ onPlay?: LxVideoViewEventHandler;
26
+ onPlaying?: LxVideoViewEventHandler;
27
+ onPause?: LxVideoViewEventHandler;
28
+ onStop?: LxVideoViewEventHandler;
29
+ onEnded?: LxVideoViewEventHandler;
30
+ onTimeUpdate?: LxVideoViewEventHandler;
31
+ onError?: LxVideoViewEventHandler;
32
+ onLoadedMetadata?: LxVideoViewEventHandler;
33
+ onFullscreenChange?: LxVideoViewEventHandler;
34
+ onWaiting?: LxVideoViewEventHandler;
35
+ onQualityChange?: LxVideoViewEventHandler;
36
+ onRateChange?: LxVideoViewEventHandler;
37
+ pageBindings?: Record<string, string>;
38
+ };
39
+ declare global {
40
+ namespace JSX {
41
+ interface IntrinsicElements {
42
+ "lx-video": LxVideoAttributes;
43
+ }
44
+ }
45
+ }
46
+ export declare class LxVideoElement extends HTMLElement {
47
+ static get observedAttributes(): string[];
48
+ private componentId;
49
+ private mounted;
50
+ private updateState;
51
+ private unregister?;
52
+ private resizeObserver?;
53
+ private pendingLayoutFrame;
54
+ private boundUpdatePosition;
55
+ private _handlers;
56
+ private harmonyEmbed?;
57
+ private lastHarmonyProps?;
58
+ private pendingHarmonyProps?;
59
+ private pendingHarmonyRetryTimer;
60
+ private pendingHarmonyRetryCount;
61
+ private iOSBootstrapFrame;
62
+ private iOSBootstrapRemaining;
63
+ private iOSHelper?;
64
+ private removeLayoutInvalidationListener?;
65
+ private forceHarmonyEmbedRecreate;
66
+ private attrObserver?;
67
+ private resizeEventListener;
68
+ private iOSScrollEventListener;
69
+ private rawHandlers;
70
+ private _pageBindings;
71
+ private parseRotateValue;
72
+ private parseObjectFitValue;
73
+ set pageBindings(bindings: Record<string, string>);
74
+ get pageBindings(): Record<string, string>;
75
+ private dataAttrToDatasetKey;
76
+ private collectDataset;
77
+ private upgradeProperty;
78
+ set rotate(value: unknown);
79
+ get rotate(): 0 | 90 | 180 | 270 | undefined;
80
+ connectedCallback(): void;
81
+ disconnectedCallback(): void;
82
+ attributeChangedCallback(name: string): void;
83
+ private isEventListener;
84
+ private setEventHandler;
85
+ private getEventHandler;
86
+ set onplayrequest(cb: EventListener);
87
+ get onplayrequest(): EventListener;
88
+ set onplay(cb: EventListener);
89
+ get onplay(): EventListener;
90
+ set onplaying(cb: EventListener);
91
+ get onplaying(): EventListener;
92
+ set onpause(cb: EventListener);
93
+ get onpause(): EventListener;
94
+ set onstop(cb: EventListener);
95
+ get onstop(): EventListener;
96
+ set onended(cb: EventListener);
97
+ get onended(): EventListener;
98
+ set ontimeupdate(cb: EventListener);
99
+ get ontimeupdate(): EventListener;
100
+ set onloadedmetadata(cb: EventListener);
101
+ get onloadedmetadata(): EventListener;
102
+ set onfullscreenchange(cb: EventListener);
103
+ get onfullscreenchange(): EventListener;
104
+ set onwaiting(cb: EventListener);
105
+ get onwaiting(): EventListener;
106
+ set onqualitychange(cb: EventListener);
107
+ get onqualitychange(): EventListener;
108
+ set onratechange(cb: EventListener);
109
+ get onratechange(): EventListener;
110
+ private ensurePlaceholderStyle;
111
+ private collectProps;
112
+ private shouldRefreshForAttribute;
113
+ private startAttrObserver;
114
+ private stopAttrObserver;
115
+ private measureForNative;
116
+ private mountOrUpdate;
117
+ private updatePosition;
118
+ /**
119
+ * Start tracking component size changes.
120
+ */
121
+ private startTracking;
122
+ private stopTracking;
123
+ private startSizeObserver;
124
+ private stopSizeObserver;
125
+ private scheduleMountRetry;
126
+ private scheduleIOSBootstrapFrames;
127
+ private mountOrUpdateHarmony;
128
+ private ensureHarmonyEmbed;
129
+ private encodeHarmonyProps;
130
+ private pushHarmonyPropsUpdate;
131
+ private scheduleHarmonyPropsRetry;
132
+ }
133
+ export declare function registerVideoComponent(): void;
134
+ export {};