@openwebf/react-video-player 0.1.0-beta.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.
@@ -0,0 +1,175 @@
1
+ import React from 'react';
2
+ import { WebFElementWithMethods } from '@openwebf/react-core-ui';
3
+
4
+ interface FlutterVideoPlayerProps {
5
+ /**
6
+ * src property
7
+ * @default undefined
8
+ */
9
+ src?: string;
10
+ /**
11
+ * autoplay property
12
+ * @default undefined
13
+ */
14
+ autoplay?: string;
15
+ /**
16
+ * muted property
17
+ * @default undefined
18
+ */
19
+ muted?: string;
20
+ /**
21
+ * loop property
22
+ * @default undefined
23
+ */
24
+ loop?: string;
25
+ /**
26
+ * volume property
27
+ * @default undefined
28
+ */
29
+ volume?: string;
30
+ /**
31
+ * playbackRate property
32
+ * @default undefined
33
+ */
34
+ playbackRate?: string;
35
+ /**
36
+ * currentTime property
37
+ * @default undefined
38
+ */
39
+ currentTime?: number;
40
+ /**
41
+ * duration property
42
+ * @default undefined
43
+ */
44
+ duration?: number;
45
+ /**
46
+ * paused property
47
+ * @default undefined
48
+ */
49
+ paused?: boolean;
50
+ /**
51
+ * ended property
52
+ * @default undefined
53
+ */
54
+ ended?: boolean;
55
+ /**
56
+ * play event handler
57
+ */
58
+ onPlay?: (event: CustomEvent) => void;
59
+ /**
60
+ * pause event handler
61
+ */
62
+ onPause?: (event: CustomEvent) => void;
63
+ /**
64
+ * ended event handler
65
+ */
66
+ onEnded?: (event: CustomEvent) => void;
67
+ /**
68
+ * timeupdate event handler
69
+ */
70
+ onTimeupdate?: (event: CustomEvent) => void;
71
+ /**
72
+ * loadedmetadata event handler
73
+ */
74
+ onLoadedmetadata?: (event: CustomEvent) => void;
75
+ /**
76
+ * error event handler
77
+ */
78
+ onError?: (event: CustomEvent) => void;
79
+ /**
80
+ * HTML id attribute
81
+ */
82
+ id?: string;
83
+ /**
84
+ * Additional CSS styles
85
+ */
86
+ style?: React.CSSProperties;
87
+ /**
88
+ * Children elements
89
+ */
90
+ children?: React.ReactNode;
91
+ /**
92
+ * Additional CSS class names
93
+ */
94
+ className?: string;
95
+ }
96
+ /**
97
+ * Element interface with methods accessible via ref
98
+ * @example
99
+ * ```tsx
100
+ * const ref = useRef<FlutterVideoPlayerElement>(null);
101
+ * // Call methods on the element
102
+ * ref.current?.finishRefresh('success');
103
+ * ```
104
+ */
105
+ interface FlutterVideoPlayerElement extends WebFElementWithMethods<{
106
+ play(): void;
107
+ pause(): void;
108
+ seekTo(positionInSeconds: number): void;
109
+ setVolume(volume: number): void;
110
+ setPlaybackSpeed(speed: number): void;
111
+ }> {
112
+ }
113
+ /**
114
+ * FlutterVideoPlayer - WebF FlutterVideoPlayer component
115
+ *
116
+ * @example
117
+ * ```tsx
118
+ * const ref = useRef<FlutterVideoPlayerElement>(null);
119
+ *
120
+ * <FlutterVideoPlayer
121
+ * ref={ref}
122
+ * // Add props here
123
+ * >
124
+ * Content
125
+ * </FlutterVideoPlayer>
126
+ *
127
+ * // Call methods on the element
128
+ * ref.current?.finishRefresh('success');
129
+ * ```
130
+ */
131
+ declare const FlutterVideoPlayer: React.ForwardRefExoticComponent<FlutterVideoPlayerProps & {
132
+ className?: string;
133
+ style?: React.CSSProperties;
134
+ children?: React.ReactNode;
135
+ } & React.RefAttributes<FlutterVideoPlayerElement>>;
136
+ interface FlutterVideoProgressProps {
137
+ /**
138
+ * HTML id attribute
139
+ */
140
+ id?: string;
141
+ /**
142
+ * Additional CSS styles
143
+ */
144
+ style?: React.CSSProperties;
145
+ /**
146
+ * Children elements
147
+ */
148
+ children?: React.ReactNode;
149
+ /**
150
+ * Additional CSS class names
151
+ */
152
+ className?: string;
153
+ }
154
+ interface FlutterVideoProgressElement extends WebFElementWithMethods<{}> {
155
+ }
156
+ /**
157
+ * FlutterVideoProgress - WebF FlutterVideoProgress component
158
+ *
159
+ * @example
160
+ * ```tsx
161
+ *
162
+ * <FlutterVideoProgress
163
+ * // Add props here
164
+ * >
165
+ * Content
166
+ * </FlutterVideoProgress>
167
+ * ```
168
+ */
169
+ declare const FlutterVideoProgress: React.ForwardRefExoticComponent<FlutterVideoProgressProps & {
170
+ className?: string;
171
+ style?: React.CSSProperties;
172
+ children?: React.ReactNode;
173
+ } & React.RefAttributes<FlutterVideoProgressElement>>;
174
+
175
+ export { FlutterVideoPlayer, type FlutterVideoPlayerElement, FlutterVideoProgress, type FlutterVideoProgressElement };
@@ -0,0 +1,175 @@
1
+ import React from 'react';
2
+ import { WebFElementWithMethods } from '@openwebf/react-core-ui';
3
+
4
+ interface FlutterVideoPlayerProps {
5
+ /**
6
+ * src property
7
+ * @default undefined
8
+ */
9
+ src?: string;
10
+ /**
11
+ * autoplay property
12
+ * @default undefined
13
+ */
14
+ autoplay?: string;
15
+ /**
16
+ * muted property
17
+ * @default undefined
18
+ */
19
+ muted?: string;
20
+ /**
21
+ * loop property
22
+ * @default undefined
23
+ */
24
+ loop?: string;
25
+ /**
26
+ * volume property
27
+ * @default undefined
28
+ */
29
+ volume?: string;
30
+ /**
31
+ * playbackRate property
32
+ * @default undefined
33
+ */
34
+ playbackRate?: string;
35
+ /**
36
+ * currentTime property
37
+ * @default undefined
38
+ */
39
+ currentTime?: number;
40
+ /**
41
+ * duration property
42
+ * @default undefined
43
+ */
44
+ duration?: number;
45
+ /**
46
+ * paused property
47
+ * @default undefined
48
+ */
49
+ paused?: boolean;
50
+ /**
51
+ * ended property
52
+ * @default undefined
53
+ */
54
+ ended?: boolean;
55
+ /**
56
+ * play event handler
57
+ */
58
+ onPlay?: (event: CustomEvent) => void;
59
+ /**
60
+ * pause event handler
61
+ */
62
+ onPause?: (event: CustomEvent) => void;
63
+ /**
64
+ * ended event handler
65
+ */
66
+ onEnded?: (event: CustomEvent) => void;
67
+ /**
68
+ * timeupdate event handler
69
+ */
70
+ onTimeupdate?: (event: CustomEvent) => void;
71
+ /**
72
+ * loadedmetadata event handler
73
+ */
74
+ onLoadedmetadata?: (event: CustomEvent) => void;
75
+ /**
76
+ * error event handler
77
+ */
78
+ onError?: (event: CustomEvent) => void;
79
+ /**
80
+ * HTML id attribute
81
+ */
82
+ id?: string;
83
+ /**
84
+ * Additional CSS styles
85
+ */
86
+ style?: React.CSSProperties;
87
+ /**
88
+ * Children elements
89
+ */
90
+ children?: React.ReactNode;
91
+ /**
92
+ * Additional CSS class names
93
+ */
94
+ className?: string;
95
+ }
96
+ /**
97
+ * Element interface with methods accessible via ref
98
+ * @example
99
+ * ```tsx
100
+ * const ref = useRef<FlutterVideoPlayerElement>(null);
101
+ * // Call methods on the element
102
+ * ref.current?.finishRefresh('success');
103
+ * ```
104
+ */
105
+ interface FlutterVideoPlayerElement extends WebFElementWithMethods<{
106
+ play(): void;
107
+ pause(): void;
108
+ seekTo(positionInSeconds: number): void;
109
+ setVolume(volume: number): void;
110
+ setPlaybackSpeed(speed: number): void;
111
+ }> {
112
+ }
113
+ /**
114
+ * FlutterVideoPlayer - WebF FlutterVideoPlayer component
115
+ *
116
+ * @example
117
+ * ```tsx
118
+ * const ref = useRef<FlutterVideoPlayerElement>(null);
119
+ *
120
+ * <FlutterVideoPlayer
121
+ * ref={ref}
122
+ * // Add props here
123
+ * >
124
+ * Content
125
+ * </FlutterVideoPlayer>
126
+ *
127
+ * // Call methods on the element
128
+ * ref.current?.finishRefresh('success');
129
+ * ```
130
+ */
131
+ declare const FlutterVideoPlayer: React.ForwardRefExoticComponent<FlutterVideoPlayerProps & {
132
+ className?: string;
133
+ style?: React.CSSProperties;
134
+ children?: React.ReactNode;
135
+ } & React.RefAttributes<FlutterVideoPlayerElement>>;
136
+ interface FlutterVideoProgressProps {
137
+ /**
138
+ * HTML id attribute
139
+ */
140
+ id?: string;
141
+ /**
142
+ * Additional CSS styles
143
+ */
144
+ style?: React.CSSProperties;
145
+ /**
146
+ * Children elements
147
+ */
148
+ children?: React.ReactNode;
149
+ /**
150
+ * Additional CSS class names
151
+ */
152
+ className?: string;
153
+ }
154
+ interface FlutterVideoProgressElement extends WebFElementWithMethods<{}> {
155
+ }
156
+ /**
157
+ * FlutterVideoProgress - WebF FlutterVideoProgress component
158
+ *
159
+ * @example
160
+ * ```tsx
161
+ *
162
+ * <FlutterVideoProgress
163
+ * // Add props here
164
+ * >
165
+ * Content
166
+ * </FlutterVideoProgress>
167
+ * ```
168
+ */
169
+ declare const FlutterVideoProgress: React.ForwardRefExoticComponent<FlutterVideoProgressProps & {
170
+ className?: string;
171
+ style?: React.CSSProperties;
172
+ children?: React.ReactNode;
173
+ } & React.RefAttributes<FlutterVideoProgressElement>>;
174
+
175
+ export { FlutterVideoPlayer, type FlutterVideoPlayerElement, FlutterVideoProgress, type FlutterVideoProgressElement };
package/dist/index.js ADDED
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/index.ts
21
+ var index_exports = {};
22
+ __export(index_exports, {
23
+ FlutterVideoPlayer: () => FlutterVideoPlayer,
24
+ FlutterVideoProgress: () => FlutterVideoProgress
25
+ });
26
+ module.exports = __toCommonJS(index_exports);
27
+
28
+ // src/lib/src/video_player.tsx
29
+ var import_react_core_ui = require("@openwebf/react-core-ui");
30
+ var FlutterVideoPlayer = (0, import_react_core_ui.createWebFComponent)({
31
+ tagName: "flutter-video-player",
32
+ displayName: "FlutterVideoPlayer",
33
+ // Map props to attributes
34
+ attributeProps: [
35
+ "src",
36
+ "autoplay",
37
+ "muted",
38
+ "loop",
39
+ "volume",
40
+ "playbackRate",
41
+ "currentTime",
42
+ "duration",
43
+ "paused",
44
+ "ended"
45
+ ],
46
+ // Convert prop names to attribute names if needed
47
+ attributeMap: {
48
+ playbackRate: "playback-rate",
49
+ currentTime: "current-time"
50
+ },
51
+ // Event handlers
52
+ events: [
53
+ {
54
+ propName: "onPlay",
55
+ eventName: "play",
56
+ handler: (callback) => (event) => {
57
+ callback(event);
58
+ }
59
+ },
60
+ {
61
+ propName: "onPause",
62
+ eventName: "pause",
63
+ handler: (callback) => (event) => {
64
+ callback(event);
65
+ }
66
+ },
67
+ {
68
+ propName: "onEnded",
69
+ eventName: "ended",
70
+ handler: (callback) => (event) => {
71
+ callback(event);
72
+ }
73
+ },
74
+ {
75
+ propName: "onTimeupdate",
76
+ eventName: "timeupdate",
77
+ handler: (callback) => (event) => {
78
+ callback(event);
79
+ }
80
+ },
81
+ {
82
+ propName: "onLoadedmetadata",
83
+ eventName: "loadedmetadata",
84
+ handler: (callback) => (event) => {
85
+ callback(event);
86
+ }
87
+ },
88
+ {
89
+ propName: "onError",
90
+ eventName: "error",
91
+ handler: (callback) => (event) => {
92
+ callback(event);
93
+ }
94
+ }
95
+ ],
96
+ // Default prop values
97
+ defaultProps: {
98
+ // Add default values here
99
+ }
100
+ });
101
+ var FlutterVideoProgress = (0, import_react_core_ui.createWebFComponent)({
102
+ tagName: "flutter-video-progress",
103
+ displayName: "FlutterVideoProgress",
104
+ // Map props to attributes
105
+ attributeProps: [],
106
+ // Convert prop names to attribute names if needed
107
+ attributeMap: {},
108
+ // Event handlers
109
+ events: [],
110
+ // Default prop values
111
+ defaultProps: {
112
+ // Add default values here
113
+ }
114
+ });
115
+ // Annotate the CommonJS export names for ESM import in node:
116
+ 0 && (module.exports = {
117
+ FlutterVideoPlayer,
118
+ FlutterVideoProgress
119
+ });
120
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts","../src/lib/src/video_player.tsx"],"sourcesContent":["/*\n * Generated by TSDL, don't edit this file directly.\n */\nexport { FlutterVideoPlayer, FlutterVideoPlayerElement } from \"./lib/src/video_player\";\nexport { FlutterVideoProgress, FlutterVideoProgressElement } from \"./lib/src/video_player\";\n","import React from \"react\";\nimport { createWebFComponent, WebFElementWithMethods } from \"@openwebf/react-core-ui\";\ninterface FlutterVideoPlayerMethods {\n play(): void;\n pause(): void;\n seekTo(positionInSeconds: number): void;\n setVolume(volume: number): void;\n setPlaybackSpeed(speed: number): void;\n}\ninterface FlutterVideoProgressMethods {\n}\nexport interface FlutterVideoPlayerProps {\n /**\n * src property\n * @default undefined\n */\n src?: string;\n /**\n * autoplay property\n * @default undefined\n */\n autoplay?: string;\n /**\n * muted property\n * @default undefined\n */\n muted?: string;\n /**\n * loop property\n * @default undefined\n */\n loop?: string;\n /**\n * volume property\n * @default undefined\n */\n volume?: string;\n /**\n * playbackRate property\n * @default undefined\n */\n playbackRate?: string;\n /**\n * currentTime property\n * @default undefined\n */\n currentTime?: number;\n /**\n * duration property\n * @default undefined\n */\n duration?: number;\n /**\n * paused property\n * @default undefined\n */\n paused?: boolean;\n /**\n * ended property\n * @default undefined\n */\n ended?: boolean;\n /**\n * play event handler\n */\n onPlay?: (event: CustomEvent) => void;\n /**\n * pause event handler\n */\n onPause?: (event: CustomEvent) => void;\n /**\n * ended event handler\n */\n onEnded?: (event: CustomEvent) => void;\n /**\n * timeupdate event handler\n */\n onTimeupdate?: (event: CustomEvent) => void;\n /**\n * loadedmetadata event handler\n */\n onLoadedmetadata?: (event: CustomEvent) => void;\n /**\n * error event handler\n */\n onError?: (event: CustomEvent) => void;\n /**\n * HTML id attribute\n */\n id?: string;\n /**\n * Additional CSS styles\n */\n style?: React.CSSProperties;\n /**\n * Children elements\n */\n children?: React.ReactNode;\n /**\n * Additional CSS class names\n */\n className?: string;\n}\n/**\n * Element interface with methods accessible via ref\n * @example\n * ```tsx\n * const ref = useRef<FlutterVideoPlayerElement>(null);\n * // Call methods on the element\n * ref.current?.finishRefresh('success');\n * ```\n */\nexport interface FlutterVideoPlayerElement extends WebFElementWithMethods<{\n play(): void;\n pause(): void;\n seekTo(positionInSeconds: number): void;\n setVolume(volume: number): void;\n setPlaybackSpeed(speed: number): void;\n}> {}\n/**\n * FlutterVideoPlayer - WebF FlutterVideoPlayer component\n * \n * @example\n * ```tsx\n * const ref = useRef<FlutterVideoPlayerElement>(null);\n * \n * <FlutterVideoPlayer\n * ref={ref}\n * // Add props here\n * >\n * Content\n * </FlutterVideoPlayer>\n * \n * // Call methods on the element\n * ref.current?.finishRefresh('success');\n * ```\n */\nexport const FlutterVideoPlayer = createWebFComponent<FlutterVideoPlayerElement, FlutterVideoPlayerProps>({\n tagName: 'flutter-video-player',\n displayName: 'FlutterVideoPlayer',\n // Map props to attributes\n attributeProps: [\n 'src',\n 'autoplay',\n 'muted',\n 'loop',\n 'volume',\n 'playbackRate',\n 'currentTime',\n 'duration',\n 'paused',\n 'ended',\n ],\n // Convert prop names to attribute names if needed\n attributeMap: {\n playbackRate: 'playback-rate',\n currentTime: 'current-time',\n },\n // Event handlers\n events: [\n {\n propName: 'onPlay',\n eventName: 'play',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onPause',\n eventName: 'pause',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onEnded',\n eventName: 'ended',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onTimeupdate',\n eventName: 'timeupdate',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onLoadedmetadata',\n eventName: 'loadedmetadata',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onError',\n eventName: 'error',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n ],\n // Default prop values\n defaultProps: {\n // Add default values here\n },\n});\nexport interface FlutterVideoProgressProps {\n /**\n * HTML id attribute\n */\n id?: string;\n /**\n * Additional CSS styles\n */\n style?: React.CSSProperties;\n /**\n * Children elements\n */\n children?: React.ReactNode;\n /**\n * Additional CSS class names\n */\n className?: string;\n}\nexport interface FlutterVideoProgressElement extends WebFElementWithMethods<{\n}> {}\n/**\n * FlutterVideoProgress - WebF FlutterVideoProgress component\n * \n * @example\n * ```tsx\n * \n * <FlutterVideoProgress\n * // Add props here\n * >\n * Content\n * </FlutterVideoProgress>\n * ```\n */\nexport const FlutterVideoProgress = createWebFComponent<FlutterVideoProgressElement, FlutterVideoProgressProps>({\n tagName: 'flutter-video-progress',\n displayName: 'FlutterVideoProgress',\n // Map props to attributes\n attributeProps: [\n ],\n // Convert prop names to attribute names if needed\n attributeMap: {\n },\n // Event handlers\n events: [\n ],\n // Default prop values\n defaultProps: {\n // Add default values here\n },\n});"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACCA,2BAA4D;AAwIrD,IAAM,yBAAqB,0CAAwE;AAAA,EACxG,SAAS;AAAA,EACT,aAAa;AAAA;AAAA,EAEb,gBAAgB;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA;AAAA,EAEA,cAAc;AAAA,IACZ,cAAc;AAAA,IACd,aAAa;AAAA,EACf;AAAA;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,EACF;AAAA;AAAA,EAEA,cAAc;AAAA;AAAA,EAEd;AACF,CAAC;AAkCM,IAAM,2BAAuB,0CAA4E;AAAA,EAC9G,SAAS;AAAA,EACT,aAAa;AAAA;AAAA,EAEb,gBAAgB,CAChB;AAAA;AAAA,EAEA,cAAc,CACd;AAAA;AAAA,EAEA,QAAQ,CACR;AAAA;AAAA,EAEA,cAAc;AAAA;AAAA,EAEd;AACF,CAAC;","names":[]}
package/dist/index.mjs ADDED
@@ -0,0 +1,92 @@
1
+ // src/lib/src/video_player.tsx
2
+ import { createWebFComponent } from "@openwebf/react-core-ui";
3
+ var FlutterVideoPlayer = createWebFComponent({
4
+ tagName: "flutter-video-player",
5
+ displayName: "FlutterVideoPlayer",
6
+ // Map props to attributes
7
+ attributeProps: [
8
+ "src",
9
+ "autoplay",
10
+ "muted",
11
+ "loop",
12
+ "volume",
13
+ "playbackRate",
14
+ "currentTime",
15
+ "duration",
16
+ "paused",
17
+ "ended"
18
+ ],
19
+ // Convert prop names to attribute names if needed
20
+ attributeMap: {
21
+ playbackRate: "playback-rate",
22
+ currentTime: "current-time"
23
+ },
24
+ // Event handlers
25
+ events: [
26
+ {
27
+ propName: "onPlay",
28
+ eventName: "play",
29
+ handler: (callback) => (event) => {
30
+ callback(event);
31
+ }
32
+ },
33
+ {
34
+ propName: "onPause",
35
+ eventName: "pause",
36
+ handler: (callback) => (event) => {
37
+ callback(event);
38
+ }
39
+ },
40
+ {
41
+ propName: "onEnded",
42
+ eventName: "ended",
43
+ handler: (callback) => (event) => {
44
+ callback(event);
45
+ }
46
+ },
47
+ {
48
+ propName: "onTimeupdate",
49
+ eventName: "timeupdate",
50
+ handler: (callback) => (event) => {
51
+ callback(event);
52
+ }
53
+ },
54
+ {
55
+ propName: "onLoadedmetadata",
56
+ eventName: "loadedmetadata",
57
+ handler: (callback) => (event) => {
58
+ callback(event);
59
+ }
60
+ },
61
+ {
62
+ propName: "onError",
63
+ eventName: "error",
64
+ handler: (callback) => (event) => {
65
+ callback(event);
66
+ }
67
+ }
68
+ ],
69
+ // Default prop values
70
+ defaultProps: {
71
+ // Add default values here
72
+ }
73
+ });
74
+ var FlutterVideoProgress = createWebFComponent({
75
+ tagName: "flutter-video-progress",
76
+ displayName: "FlutterVideoProgress",
77
+ // Map props to attributes
78
+ attributeProps: [],
79
+ // Convert prop names to attribute names if needed
80
+ attributeMap: {},
81
+ // Event handlers
82
+ events: [],
83
+ // Default prop values
84
+ defaultProps: {
85
+ // Add default values here
86
+ }
87
+ });
88
+ export {
89
+ FlutterVideoPlayer,
90
+ FlutterVideoProgress
91
+ };
92
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/lib/src/video_player.tsx"],"sourcesContent":["import React from \"react\";\nimport { createWebFComponent, WebFElementWithMethods } from \"@openwebf/react-core-ui\";\ninterface FlutterVideoPlayerMethods {\n play(): void;\n pause(): void;\n seekTo(positionInSeconds: number): void;\n setVolume(volume: number): void;\n setPlaybackSpeed(speed: number): void;\n}\ninterface FlutterVideoProgressMethods {\n}\nexport interface FlutterVideoPlayerProps {\n /**\n * src property\n * @default undefined\n */\n src?: string;\n /**\n * autoplay property\n * @default undefined\n */\n autoplay?: string;\n /**\n * muted property\n * @default undefined\n */\n muted?: string;\n /**\n * loop property\n * @default undefined\n */\n loop?: string;\n /**\n * volume property\n * @default undefined\n */\n volume?: string;\n /**\n * playbackRate property\n * @default undefined\n */\n playbackRate?: string;\n /**\n * currentTime property\n * @default undefined\n */\n currentTime?: number;\n /**\n * duration property\n * @default undefined\n */\n duration?: number;\n /**\n * paused property\n * @default undefined\n */\n paused?: boolean;\n /**\n * ended property\n * @default undefined\n */\n ended?: boolean;\n /**\n * play event handler\n */\n onPlay?: (event: CustomEvent) => void;\n /**\n * pause event handler\n */\n onPause?: (event: CustomEvent) => void;\n /**\n * ended event handler\n */\n onEnded?: (event: CustomEvent) => void;\n /**\n * timeupdate event handler\n */\n onTimeupdate?: (event: CustomEvent) => void;\n /**\n * loadedmetadata event handler\n */\n onLoadedmetadata?: (event: CustomEvent) => void;\n /**\n * error event handler\n */\n onError?: (event: CustomEvent) => void;\n /**\n * HTML id attribute\n */\n id?: string;\n /**\n * Additional CSS styles\n */\n style?: React.CSSProperties;\n /**\n * Children elements\n */\n children?: React.ReactNode;\n /**\n * Additional CSS class names\n */\n className?: string;\n}\n/**\n * Element interface with methods accessible via ref\n * @example\n * ```tsx\n * const ref = useRef<FlutterVideoPlayerElement>(null);\n * // Call methods on the element\n * ref.current?.finishRefresh('success');\n * ```\n */\nexport interface FlutterVideoPlayerElement extends WebFElementWithMethods<{\n play(): void;\n pause(): void;\n seekTo(positionInSeconds: number): void;\n setVolume(volume: number): void;\n setPlaybackSpeed(speed: number): void;\n}> {}\n/**\n * FlutterVideoPlayer - WebF FlutterVideoPlayer component\n * \n * @example\n * ```tsx\n * const ref = useRef<FlutterVideoPlayerElement>(null);\n * \n * <FlutterVideoPlayer\n * ref={ref}\n * // Add props here\n * >\n * Content\n * </FlutterVideoPlayer>\n * \n * // Call methods on the element\n * ref.current?.finishRefresh('success');\n * ```\n */\nexport const FlutterVideoPlayer = createWebFComponent<FlutterVideoPlayerElement, FlutterVideoPlayerProps>({\n tagName: 'flutter-video-player',\n displayName: 'FlutterVideoPlayer',\n // Map props to attributes\n attributeProps: [\n 'src',\n 'autoplay',\n 'muted',\n 'loop',\n 'volume',\n 'playbackRate',\n 'currentTime',\n 'duration',\n 'paused',\n 'ended',\n ],\n // Convert prop names to attribute names if needed\n attributeMap: {\n playbackRate: 'playback-rate',\n currentTime: 'current-time',\n },\n // Event handlers\n events: [\n {\n propName: 'onPlay',\n eventName: 'play',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onPause',\n eventName: 'pause',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onEnded',\n eventName: 'ended',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onTimeupdate',\n eventName: 'timeupdate',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onLoadedmetadata',\n eventName: 'loadedmetadata',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n {\n propName: 'onError',\n eventName: 'error',\n handler: (callback) => (event) => {\n callback((event as CustomEvent));\n },\n },\n ],\n // Default prop values\n defaultProps: {\n // Add default values here\n },\n});\nexport interface FlutterVideoProgressProps {\n /**\n * HTML id attribute\n */\n id?: string;\n /**\n * Additional CSS styles\n */\n style?: React.CSSProperties;\n /**\n * Children elements\n */\n children?: React.ReactNode;\n /**\n * Additional CSS class names\n */\n className?: string;\n}\nexport interface FlutterVideoProgressElement extends WebFElementWithMethods<{\n}> {}\n/**\n * FlutterVideoProgress - WebF FlutterVideoProgress component\n * \n * @example\n * ```tsx\n * \n * <FlutterVideoProgress\n * // Add props here\n * >\n * Content\n * </FlutterVideoProgress>\n * ```\n */\nexport const FlutterVideoProgress = createWebFComponent<FlutterVideoProgressElement, FlutterVideoProgressProps>({\n tagName: 'flutter-video-progress',\n displayName: 'FlutterVideoProgress',\n // Map props to attributes\n attributeProps: [\n ],\n // Convert prop names to attribute names if needed\n attributeMap: {\n },\n // Event handlers\n events: [\n ],\n // Default prop values\n defaultProps: {\n // Add default values here\n },\n});"],"mappings":";AACA,SAAS,2BAAmD;AAwIrD,IAAM,qBAAqB,oBAAwE;AAAA,EACxG,SAAS;AAAA,EACT,aAAa;AAAA;AAAA,EAEb,gBAAgB;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA;AAAA,EAEA,cAAc;AAAA,IACZ,cAAc;AAAA,IACd,aAAa;AAAA,EACf;AAAA;AAAA,EAEA,QAAQ;AAAA,IACN;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,IACA;AAAA,MACE,UAAU;AAAA,MACV,WAAW;AAAA,MACX,SAAS,CAAC,aAAa,CAAC,UAAU;AAChC,iBAAU,KAAqB;AAAA,MACjC;AAAA,IACF;AAAA,EACF;AAAA;AAAA,EAEA,cAAc;AAAA;AAAA,EAEd;AACF,CAAC;AAkCM,IAAM,uBAAuB,oBAA4E;AAAA,EAC9G,SAAS;AAAA,EACT,aAAa;AAAA;AAAA,EAEb,gBAAgB,CAChB;AAAA;AAAA,EAEA,cAAc,CACd;AAAA;AAAA,EAEA,QAAQ,CACR;AAAA;AAAA,EAEA,cAAc;AAAA;AAAA,EAEd;AACF,CAAC;","names":[]}
package/package.json ADDED
@@ -0,0 +1,29 @@
1
+ {
2
+ "name": "@openwebf/react-video-player",
3
+ "version": "0.1.0-beta.0",
4
+ "description": "WebF Video Player module for handling video playback with Flutter video_player",
5
+ "main": "dist/index.js",
6
+ "module": "dist/index.mjs",
7
+ "types": "dist/index.d.ts",
8
+ "files": ["dist"],
9
+ "scripts": {
10
+ "build": "tsup"
11
+ },
12
+ "keywords": [],
13
+ "author": "",
14
+ "license": "ISC",
15
+ "type": "commonjs",
16
+ "peerDependencies": {
17
+ "react": ">=16.8.0",
18
+ "react-dom": ">=16.8.0"
19
+ },
20
+ "dependencies": {
21
+ "@openwebf/react-core-ui": "^0.2.1"
22
+ },
23
+ "devDependencies": {
24
+ "@types/react": "^19.1.0",
25
+ "@types/react-dom": "^19.1.2",
26
+ "tsup": "^8.5.0",
27
+ "typescript": "^5.8.3"
28
+ }
29
+ }