@gradio/image 0.22.17 → 0.23.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,45 @@
1
1
  # @gradio/image
2
2
 
3
+ ## 0.23.0
4
+
5
+ ### Features
6
+
7
+ - [#11858](https://github.com/gradio-app/gradio/pull/11858) [`3f8ea13`](https://github.com/gradio-app/gradio/commit/3f8ea13a8ca92abf0ad34392e403a449fda3c6c2) - remove lite. Thanks @pngwn!
8
+
9
+ ### Fixes
10
+
11
+ - [#11784](https://github.com/gradio-app/gradio/pull/11784) [`d9dd3f5`](https://github.com/gradio-app/gradio/commit/d9dd3f54b7fb34cf7118e549d39fc63937ca3489) - Add "hidden" option to component's `visible` kwarg to render but visually hide the component. Thanks @pngwn!
12
+
13
+ ### Dependency updates
14
+
15
+ - @gradio/statustracker@0.11.1
16
+ - @gradio/atoms@0.18.0
17
+ - @gradio/client@1.19.0
18
+ - @gradio/upload@0.17.0
19
+
20
+ ## 0.22.18
21
+
22
+ ### Dependency updates
23
+
24
+ - @gradio/client@1.18.0
25
+ - @gradio/icons@0.14.0
26
+ - @gradio/atoms@0.17.0
27
+ - @gradio/statustracker@0.11.0
28
+ - @gradio/upload@0.16.17
29
+
30
+ ## 0.22.17
31
+
32
+ ### Dependency updates
33
+
34
+ - @gradio/statustracker@0.10.18
35
+
36
+ ## 0.22.17
37
+
38
+ ### Dependency updates
39
+
40
+ - @gradio/icons@0.13.1
41
+ - @gradio/upload@0.16.16
42
+
3
43
  ## 0.22.17
4
44
 
5
45
  ### Fixes
package/Index.svelte CHANGED
@@ -36,7 +36,7 @@
36
36
  export let value_is_output = false;
37
37
  export let elem_id = "";
38
38
  export let elem_classes: string[] = [];
39
- export let visible = true;
39
+ export let visible: boolean | "hidden" = true;
40
40
  export let value: null | FileData = null;
41
41
  let old_value: null | FileData = null;
42
42
  export let label: string;
@@ -4,12 +4,14 @@ declare const __propDef: {
4
4
  props: {
5
5
  value: null | FileData;
6
6
  type: "gallery" | "table";
7
- selected?: boolean | undefined;
7
+ selected?: boolean;
8
8
  };
9
9
  events: {
10
10
  [evt: string]: CustomEvent<any>;
11
11
  };
12
12
  slots: {};
13
+ exports?: {} | undefined;
14
+ bindings?: string | undefined;
13
15
  };
14
16
  export type ExampleProps = typeof __propDef.props;
15
17
  export type ExampleEvents = typeof __propDef.events;
package/dist/Index.svelte CHANGED
@@ -56,8 +56,7 @@ export let input_ready;
56
56
  export let webcam_options;
57
57
  let fullscreen = false;
58
58
  let uploading = false;
59
- $:
60
- input_ready = !uploading;
59
+ $: input_ready = !uploading;
61
60
  export let gradio;
62
61
  $: {
63
62
  if (JSON.stringify(value) !== JSON.stringify(old_value)) {
@@ -10,14 +10,14 @@ import { type FileData } from "@gradio/client";
10
10
  import type { LoadingStatus } from "@gradio/statustracker";
11
11
  declare const __propDef: {
12
12
  props: {
13
- modify_stream_state?: ((state: "open" | "closed" | "waiting") => void) | undefined;
14
- get_stream_state?: (() => void) | undefined;
13
+ modify_stream_state?: (state: "open" | "closed" | "waiting") => void;
14
+ get_stream_state?: () => void;
15
15
  set_time_limit: (arg0: number) => void;
16
- value_is_output?: boolean | undefined;
17
- elem_id?: string | undefined;
18
- elem_classes?: string[] | undefined;
19
- visible?: boolean | undefined;
20
- value?: (null | FileData) | undefined;
16
+ value_is_output?: boolean;
17
+ elem_id?: string;
18
+ elem_classes?: string[];
19
+ visible?: boolean | "hidden";
20
+ value?: null | FileData;
21
21
  label: string;
22
22
  show_label: boolean;
23
23
  show_download_button: boolean;
@@ -25,13 +25,13 @@ declare const __propDef: {
25
25
  height: number | undefined;
26
26
  width: number | undefined;
27
27
  stream_every: number;
28
- _selectable?: boolean | undefined;
29
- container?: boolean | undefined;
30
- scale?: (number | null) | undefined;
28
+ _selectable?: boolean;
29
+ container?: boolean;
30
+ scale?: number | null;
31
31
  min_width?: number | undefined;
32
32
  loading_status: LoadingStatus;
33
- show_share_button?: boolean | undefined;
34
- sources?: ("clipboard" | "webcam" | "upload")[] | undefined;
33
+ show_share_button?: boolean;
34
+ sources?: ("clipboard" | "webcam" | "upload")[];
35
35
  interactive: boolean;
36
36
  streaming: boolean;
37
37
  pending: boolean;
@@ -58,6 +58,8 @@ declare const __propDef: {
58
58
  [evt: string]: CustomEvent<any>;
59
59
  };
60
60
  slots: {};
61
+ exports?: {} | undefined;
62
+ bindings?: string | undefined;
61
63
  };
62
64
  export type IndexProps = typeof __propDef.props;
63
65
  export type IndexEvents = typeof __propDef.events;
@@ -80,12 +82,12 @@ export default class Index extends SvelteComponent<IndexProps, IndexEvents, Inde
80
82
  get elem_classes(): string[] | undefined;
81
83
  /**accessor*/
82
84
  set elem_classes(_: string[] | undefined);
83
- get visible(): boolean | undefined;
85
+ get visible(): boolean | "hidden" | undefined;
84
86
  /**accessor*/
85
- set visible(_: boolean | undefined);
86
- get value(): FileData | null | undefined;
87
+ set visible(_: boolean | "hidden" | undefined);
88
+ get value(): any;
87
89
  /**accessor*/
88
- set value(_: FileData | null | undefined);
90
+ set value(_: any);
89
91
  get label(): string;
90
92
  /**accessor*/
91
93
  set label(_: string);
@@ -1,21 +1,8 @@
1
- <script>import { resolve_wasm_src } from "@gradio/wasm/svelte";
2
- export let src = void 0;
3
- let resolved_src;
4
- let latest_src;
5
- $: {
6
- resolved_src = src;
7
- latest_src = src;
8
- const resolving_src = src;
9
- resolve_wasm_src(resolving_src).then((s) => {
10
- if (latest_src === resolving_src) {
11
- resolved_src = s;
12
- }
13
- });
14
- }
1
+ <script>export let src = void 0;
15
2
  </script>
16
3
 
17
4
  <!-- svelte-ignore a11y-missing-attribute -->
18
- <img src={resolved_src} {...$$restProps} on:load />
5
+ <img {src} {...$$restProps} on:load />
19
6
 
20
7
  <style>
21
8
  img {
@@ -1,236 +1,8 @@
1
1
  import { SvelteComponent } from "svelte";
2
+ import type { HTMLImgAttributes } from "svelte/elements";
2
3
  declare const __propDef: {
3
- props: {
4
- [x: `data-${string}`]: any;
5
- alt?: string | undefined | null;
6
- crossorigin?: "anonymous" | "use-credentials" | "" | undefined | null;
7
- decoding?: "async" | "auto" | "sync" | undefined | null;
8
- fetchpriority?: "auto" | "high" | "low" | undefined | null;
9
- height?: number | string | undefined | null;
10
- ismap?: boolean | undefined | null;
11
- loading?: "eager" | "lazy" | undefined | null;
12
- referrerpolicy?: ReferrerPolicy | undefined | null;
13
- sizes?: string | undefined | null;
14
- src?: string | undefined | null;
15
- srcset?: string | undefined | null;
16
- usemap?: string | undefined | null;
17
- width?: number | string | undefined | null;
18
- readonly 'bind:naturalWidth'?: number | undefined | null;
19
- readonly 'bind:naturalHeight'?: number | undefined | null;
20
- accesskey?: string | undefined | null;
21
- autofocus?: boolean | undefined | null;
22
- class?: string | undefined | null;
23
- contenteditable?: import("svelte/elements").Booleanish | "inherit" | "plaintext-only" | undefined | null;
24
- contextmenu?: string | undefined | null;
25
- dir?: string | undefined | null;
26
- draggable?: import("svelte/elements").Booleanish | undefined | null;
27
- enterkeyhint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | null;
28
- hidden?: boolean | undefined | null;
29
- id?: string | undefined | null;
30
- lang?: string | undefined | null;
31
- part?: string | undefined | null;
32
- placeholder?: string | undefined | null;
33
- slot?: string | undefined | null;
34
- spellcheck?: import("svelte/elements").Booleanish | undefined | null;
35
- style?: string | undefined | null;
36
- tabindex?: number | undefined | null;
37
- title?: string | undefined | null;
38
- translate?: "yes" | "no" | "" | undefined | null;
39
- inert?: boolean | undefined | null;
40
- popover?: "auto" | "manual" | "" | undefined | null;
41
- radiogroup?: string | undefined | null;
42
- role?: import("svelte/elements").AriaRole | undefined | null;
43
- about?: string | undefined | null;
44
- datatype?: string | undefined | null;
45
- inlist?: any;
46
- prefix?: string | undefined | null;
47
- property?: string | undefined | null;
48
- resource?: string | undefined | null;
49
- typeof?: string | undefined | null;
50
- vocab?: string | undefined | null;
51
- autocapitalize?: string | undefined | null;
52
- autocorrect?: string | undefined | null;
53
- autosave?: string | undefined | null;
54
- color?: string | undefined | null;
55
- itemprop?: string | undefined | null;
56
- itemscope?: boolean | undefined | null;
57
- itemtype?: string | undefined | null;
58
- itemid?: string | undefined | null;
59
- itemref?: string | undefined | null;
60
- results?: number | undefined | null;
61
- security?: string | undefined | null;
62
- unselectable?: "on" | "off" | undefined | null;
63
- inputmode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | null;
64
- is?: string | undefined | null;
65
- 'bind:innerHTML'?: string | undefined | null;
66
- 'bind:textContent'?: string | undefined | null;
67
- 'bind:innerText'?: string | undefined | null;
68
- readonly 'bind:contentRect'?: DOMRectReadOnly | undefined | null;
69
- readonly 'bind:contentBoxSize'?: ResizeObserverSize[] | undefined | null;
70
- readonly 'bind:borderBoxSize'?: ResizeObserverSize[] | undefined | null;
71
- readonly 'bind:devicePixelContentBoxSize'?: ResizeObserverSize[] | undefined | null;
72
- 'data-sveltekit-keepfocus'?: true | "" | "off" | undefined | null;
73
- 'data-sveltekit-noscroll'?: true | "" | "off" | undefined | null;
74
- 'data-sveltekit-preload-code'?: true | "" | "eager" | "viewport" | "hover" | "tap" | "off" | undefined | null;
75
- 'data-sveltekit-preload-data'?: true | "" | "hover" | "tap" | "off" | undefined | null;
76
- 'data-sveltekit-reload'?: true | "" | "off" | undefined | null;
77
- 'data-sveltekit-replacestate'?: true | "" | "off" | undefined | null;
78
- 'aria-activedescendant'?: string | undefined | null;
79
- 'aria-atomic'?: import("svelte/elements").Booleanish | undefined | null;
80
- 'aria-autocomplete'?: "none" | "inline" | "list" | "both" | undefined | null;
81
- 'aria-busy'?: import("svelte/elements").Booleanish | undefined | null;
82
- 'aria-checked'?: boolean | "false" | "mixed" | "true" | undefined | null;
83
- 'aria-colcount'?: number | undefined | null;
84
- 'aria-colindex'?: number | undefined | null;
85
- 'aria-colspan'?: number | undefined | null;
86
- 'aria-controls'?: string | undefined | null;
87
- 'aria-current'?: import("svelte/elements").Booleanish | "page" | "step" | "location" | "date" | "time" | undefined | null;
88
- 'aria-describedby'?: string | undefined | null;
89
- 'aria-details'?: string | undefined | null;
90
- 'aria-disabled'?: import("svelte/elements").Booleanish | undefined | null;
91
- 'aria-dropeffect'?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined | null;
92
- 'aria-errormessage'?: string | undefined | null;
93
- 'aria-expanded'?: import("svelte/elements").Booleanish | undefined | null;
94
- 'aria-flowto'?: string | undefined | null;
95
- 'aria-grabbed'?: import("svelte/elements").Booleanish | undefined | null;
96
- 'aria-haspopup'?: import("svelte/elements").Booleanish | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined | null;
97
- 'aria-hidden'?: import("svelte/elements").Booleanish | undefined | null;
98
- 'aria-invalid'?: import("svelte/elements").Booleanish | "grammar" | "spelling" | undefined | null;
99
- 'aria-keyshortcuts'?: string | undefined | null;
100
- 'aria-label'?: string | undefined | null;
101
- 'aria-labelledby'?: string | undefined | null;
102
- 'aria-level'?: number | undefined | null;
103
- 'aria-live'?: "off" | "assertive" | "polite" | undefined | null;
104
- 'aria-modal'?: import("svelte/elements").Booleanish | undefined | null;
105
- 'aria-multiline'?: import("svelte/elements").Booleanish | undefined | null;
106
- 'aria-multiselectable'?: import("svelte/elements").Booleanish | undefined | null;
107
- 'aria-orientation'?: "horizontal" | "vertical" | undefined | null;
108
- 'aria-owns'?: string | undefined | null;
109
- 'aria-placeholder'?: string | undefined | null;
110
- 'aria-posinset'?: number | undefined | null;
111
- 'aria-pressed'?: boolean | "false" | "mixed" | "true" | undefined | null;
112
- 'aria-readonly'?: import("svelte/elements").Booleanish | undefined | null;
113
- 'aria-relevant'?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined | null;
114
- 'aria-required'?: import("svelte/elements").Booleanish | undefined | null;
115
- 'aria-roledescription'?: string | undefined | null;
116
- 'aria-rowcount'?: number | undefined | null;
117
- 'aria-rowindex'?: number | undefined | null;
118
- 'aria-rowspan'?: number | undefined | null;
119
- 'aria-selected'?: import("svelte/elements").Booleanish | undefined | null;
120
- 'aria-setsize'?: number | undefined | null;
121
- 'aria-sort'?: "none" | "ascending" | "descending" | "other" | undefined | null;
122
- 'aria-valuemax'?: number | undefined | null;
123
- 'aria-valuemin'?: number | undefined | null;
124
- 'aria-valuenow'?: number | undefined | null;
125
- 'aria-valuetext'?: string | undefined | null;
126
- 'on:copy'?: import("svelte/elements").ClipboardEventHandler<HTMLImageElement> | null | undefined;
127
- 'on:cut'?: import("svelte/elements").ClipboardEventHandler<HTMLImageElement> | null | undefined;
128
- 'on:paste'?: import("svelte/elements").ClipboardEventHandler<HTMLImageElement> | null | undefined;
129
- 'on:compositionend'?: import("svelte/elements").CompositionEventHandler<HTMLImageElement> | null | undefined;
130
- 'on:compositionstart'?: import("svelte/elements").CompositionEventHandler<HTMLImageElement> | null | undefined;
131
- 'on:compositionupdate'?: import("svelte/elements").CompositionEventHandler<HTMLImageElement> | null | undefined;
132
- 'on:focus'?: import("svelte/elements").FocusEventHandler<HTMLImageElement> | null | undefined;
133
- 'on:focusin'?: import("svelte/elements").FocusEventHandler<HTMLImageElement> | null | undefined;
134
- 'on:focusout'?: import("svelte/elements").FocusEventHandler<HTMLImageElement> | null | undefined;
135
- 'on:blur'?: import("svelte/elements").FocusEventHandler<HTMLImageElement> | null | undefined;
136
- 'on:change'?: import("svelte/elements").FormEventHandler<HTMLImageElement> | null | undefined;
137
- 'on:beforeinput'?: import("svelte/elements").EventHandler<InputEvent, HTMLImageElement> | null | undefined;
138
- 'on:input'?: import("svelte/elements").FormEventHandler<HTMLImageElement> | null | undefined;
139
- 'on:reset'?: import("svelte/elements").FormEventHandler<HTMLImageElement> | null | undefined;
140
- 'on:submit'?: import("svelte/elements").EventHandler<SubmitEvent, HTMLImageElement> | null | undefined;
141
- 'on:invalid'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
142
- 'on:formdata'?: import("svelte/elements").EventHandler<FormDataEvent, HTMLImageElement> | null | undefined;
143
- 'on:load'?: import("svelte/elements").EventHandler | undefined | null;
144
- 'on:error'?: import("svelte/elements").EventHandler | undefined | null;
145
- 'on:beforetoggle'?: import("svelte/elements").ToggleEventHandler<HTMLImageElement> | null | undefined;
146
- 'on:toggle'?: import("svelte/elements").ToggleEventHandler<HTMLImageElement> | null | undefined;
147
- 'on:keydown'?: import("svelte/elements").KeyboardEventHandler<HTMLImageElement> | null | undefined;
148
- 'on:keypress'?: import("svelte/elements").KeyboardEventHandler<HTMLImageElement> | null | undefined;
149
- 'on:keyup'?: import("svelte/elements").KeyboardEventHandler<HTMLImageElement> | null | undefined;
150
- 'on:abort'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
151
- 'on:canplay'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
152
- 'on:canplaythrough'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
153
- 'on:cuechange'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
154
- 'on:durationchange'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
155
- 'on:emptied'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
156
- 'on:encrypted'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
157
- 'on:ended'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
158
- 'on:loadeddata'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
159
- 'on:loadedmetadata'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
160
- 'on:loadstart'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
161
- 'on:pause'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
162
- 'on:play'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
163
- 'on:playing'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
164
- 'on:progress'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
165
- 'on:ratechange'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
166
- 'on:seeked'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
167
- 'on:seeking'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
168
- 'on:stalled'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
169
- 'on:suspend'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
170
- 'on:timeupdate'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
171
- 'on:volumechange'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
172
- 'on:waiting'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
173
- 'on:auxclick'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
174
- 'on:click'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
175
- 'on:contextmenu'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
176
- 'on:dblclick'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
177
- 'on:drag'?: import("svelte/elements").DragEventHandler<HTMLImageElement> | null | undefined;
178
- 'on:dragend'?: import("svelte/elements").DragEventHandler<HTMLImageElement> | null | undefined;
179
- 'on:dragenter'?: import("svelte/elements").DragEventHandler<HTMLImageElement> | null | undefined;
180
- 'on:dragexit'?: import("svelte/elements").DragEventHandler<HTMLImageElement> | null | undefined;
181
- 'on:dragleave'?: import("svelte/elements").DragEventHandler<HTMLImageElement> | null | undefined;
182
- 'on:dragover'?: import("svelte/elements").DragEventHandler<HTMLImageElement> | null | undefined;
183
- 'on:dragstart'?: import("svelte/elements").DragEventHandler<HTMLImageElement> | null | undefined;
184
- 'on:drop'?: import("svelte/elements").DragEventHandler<HTMLImageElement> | null | undefined;
185
- 'on:mousedown'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
186
- 'on:mouseenter'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
187
- 'on:mouseleave'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
188
- 'on:mousemove'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
189
- 'on:mouseout'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
190
- 'on:mouseover'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
191
- 'on:mouseup'?: import("svelte/elements").MouseEventHandler<HTMLImageElement> | null | undefined;
192
- 'on:select'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
193
- 'on:selectionchange'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
194
- 'on:selectstart'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
195
- 'on:touchcancel'?: import("svelte/elements").TouchEventHandler<HTMLImageElement> | null | undefined;
196
- 'on:touchend'?: import("svelte/elements").TouchEventHandler<HTMLImageElement> | null | undefined;
197
- 'on:touchmove'?: import("svelte/elements").TouchEventHandler<HTMLImageElement> | null | undefined;
198
- 'on:touchstart'?: import("svelte/elements").TouchEventHandler<HTMLImageElement> | null | undefined;
199
- 'on:gotpointercapture'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
200
- 'on:pointercancel'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
201
- 'on:pointerdown'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
202
- 'on:pointerenter'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
203
- 'on:pointerleave'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
204
- 'on:pointermove'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
205
- 'on:pointerout'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
206
- 'on:pointerover'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
207
- 'on:pointerup'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
208
- 'on:lostpointercapture'?: import("svelte/elements").PointerEventHandler<HTMLImageElement> | null | undefined;
209
- 'on:gamepadconnected'?: import("svelte/elements").GamepadEventHandler<HTMLImageElement> | null | undefined;
210
- 'on:gamepaddisconnected'?: import("svelte/elements").GamepadEventHandler<HTMLImageElement> | null | undefined;
211
- 'on:scroll'?: import("svelte/elements").UIEventHandler<HTMLImageElement> | null | undefined;
212
- 'on:scrollend'?: import("svelte/elements").UIEventHandler<HTMLImageElement> | null | undefined;
213
- 'on:resize'?: import("svelte/elements").UIEventHandler<HTMLImageElement> | null | undefined;
214
- 'on:wheel'?: import("svelte/elements").WheelEventHandler<HTMLImageElement> | null | undefined;
215
- 'on:animationstart'?: import("svelte/elements").AnimationEventHandler<HTMLImageElement> | null | undefined;
216
- 'on:animationend'?: import("svelte/elements").AnimationEventHandler<HTMLImageElement> | null | undefined;
217
- 'on:animationiteration'?: import("svelte/elements").AnimationEventHandler<HTMLImageElement> | null | undefined;
218
- 'on:transitionstart'?: import("svelte/elements").TransitionEventHandler<HTMLImageElement> | null | undefined;
219
- 'on:transitionrun'?: import("svelte/elements").TransitionEventHandler<HTMLImageElement> | null | undefined;
220
- 'on:transitionend'?: import("svelte/elements").TransitionEventHandler<HTMLImageElement> | null | undefined;
221
- 'on:transitioncancel'?: import("svelte/elements").TransitionEventHandler<HTMLImageElement> | null | undefined;
222
- 'on:outrostart'?: import("svelte/elements").EventHandler<CustomEvent<null>, HTMLImageElement> | null | undefined;
223
- 'on:outroend'?: import("svelte/elements").EventHandler<CustomEvent<null>, HTMLImageElement> | null | undefined;
224
- 'on:introstart'?: import("svelte/elements").EventHandler<CustomEvent<null>, HTMLImageElement> | null | undefined;
225
- 'on:introend'?: import("svelte/elements").EventHandler<CustomEvent<null>, HTMLImageElement> | null | undefined;
226
- 'on:message'?: import("svelte/elements").MessageEventHandler<HTMLImageElement> | null | undefined;
227
- 'on:messageerror'?: import("svelte/elements").MessageEventHandler<HTMLImageElement> | null | undefined;
228
- 'on:visibilitychange'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
229
- 'on:cancel'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
230
- 'on:close'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
231
- 'on:fullscreenchange'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
232
- 'on:fullscreenerror'?: import("svelte/elements").EventHandler<Event, HTMLImageElement> | null | undefined;
233
- "data-testid"?: string | undefined;
4
+ props: HTMLImgAttributes & {
5
+ "data-testid"?: string;
234
6
  };
235
7
  events: {
236
8
  load: Event;
@@ -238,6 +10,8 @@ declare const __propDef: {
238
10
  [evt: string]: CustomEvent<any>;
239
11
  };
240
12
  slots: {};
13
+ exports?: {} | undefined;
14
+ bindings?: string | undefined;
241
15
  };
242
16
  export type ImageProps = typeof __propDef.props;
243
17
  export type ImageEvents = typeof __propDef.events;
@@ -6,12 +6,12 @@ import {
6
6
  IconButton,
7
7
  ShareButton,
8
8
  IconButtonWrapper,
9
- FullscreenButton
9
+ FullscreenButton,
10
+ DownloadLink
10
11
  } from "@gradio/atoms";
11
12
  import { Download, Image as ImageIcon } from "@gradio/icons";
12
13
  import { get_coordinates_of_clicked_image } from "./utils";
13
14
  import Image from "./Image.svelte";
14
- import { DownloadLink } from "@gradio/wasm/svelte";
15
15
  export let value;
16
16
  export let label = void 0;
17
17
  export let show_label;
@@ -7,13 +7,13 @@ declare const __propDef: {
7
7
  value: null | FileData;
8
8
  label?: string | undefined;
9
9
  show_label: boolean;
10
- show_download_button?: boolean | undefined;
11
- selectable?: boolean | undefined;
12
- show_share_button?: boolean | undefined;
10
+ show_download_button?: boolean;
11
+ selectable?: boolean;
12
+ show_share_button?: boolean;
13
13
  i18n: I18nFormatter;
14
- show_fullscreen_button?: boolean | undefined;
15
- display_icon_button_wrapper_top_corner?: boolean | undefined;
16
- fullscreen?: boolean | undefined;
14
+ show_fullscreen_button?: boolean;
15
+ display_icon_button_wrapper_top_corner?: boolean;
16
+ fullscreen?: boolean;
17
17
  };
18
18
  events: {
19
19
  fullscreen: CustomEvent<any>;
@@ -26,6 +26,8 @@ declare const __propDef: {
26
26
  [evt: string]: CustomEvent<any>;
27
27
  };
28
28
  slots: {};
29
+ exports?: {} | undefined;
30
+ bindings?: string | undefined;
29
31
  };
30
32
  export type ImagePreviewProps = typeof __propDef.props;
31
33
  export type ImagePreviewEvents = typeof __propDef.events;
@@ -77,25 +77,20 @@ async function handle_save(img_blob, event) {
77
77
  }
78
78
  pending = false;
79
79
  }
80
- $:
81
- active_streaming = streaming && active_source === "webcam";
82
- $:
83
- if (uploading && !active_streaming)
84
- value = null;
80
+ $: active_streaming = streaming && active_source === "webcam";
81
+ $: if (uploading && !active_streaming) value = null;
85
82
  const dispatch = createEventDispatcher();
86
83
  export let dragging = false;
87
- $:
88
- dispatch("drag", dragging);
84
+ $: dispatch("drag", dragging);
89
85
  function handle_click(evt) {
90
86
  let coordinates = get_coordinates_of_clicked_image(evt);
91
87
  if (coordinates) {
92
88
  dispatch("select", { index: coordinates, value: null });
93
89
  }
94
90
  }
95
- $:
96
- if (!active_source && sources) {
97
- active_source = sources[0];
98
- }
91
+ $: if (!active_source && sources) {
92
+ active_source = sources[0];
93
+ }
99
94
  async function handle_select_source(source) {
100
95
  switch (source) {
101
96
  case "clipboard":
@@ -4,31 +4,31 @@ import { FileData, type Client } from "@gradio/client";
4
4
  import type { Base64File, WebcamOptions } from "./types";
5
5
  declare const __propDef: {
6
6
  props: {
7
- value?: (null | FileData | Base64File) | undefined;
7
+ value?: null | FileData | Base64File;
8
8
  label?: string | undefined;
9
9
  show_label: boolean;
10
- sources?: ("clipboard" | "upload" | "microphone" | "webcam" | null)[] | undefined;
11
- streaming?: boolean | undefined;
12
- pending?: boolean | undefined;
10
+ sources?: ("clipboard" | "upload" | "microphone" | "webcam" | null)[];
11
+ streaming?: boolean;
12
+ pending?: boolean;
13
13
  webcam_options: WebcamOptions;
14
- selectable?: boolean | undefined;
14
+ selectable?: boolean;
15
15
  root: string;
16
16
  i18n: I18nFormatter;
17
- max_file_size?: (number | null) | undefined;
17
+ max_file_size?: number | null;
18
18
  upload: Client["upload"];
19
19
  stream_handler: Client["stream"];
20
20
  stream_every: number;
21
21
  modify_stream: (state: "open" | "closed" | "waiting") => void;
22
22
  set_time_limit: (arg0: number) => void;
23
- show_fullscreen_button?: boolean | undefined;
24
- uploading?: boolean | undefined;
25
- active_source?: ("clipboard" | "upload" | "microphone" | "webcam" | null) | undefined;
26
- fullscreen?: boolean | undefined;
27
- dragging?: boolean | undefined;
23
+ show_fullscreen_button?: boolean;
24
+ uploading?: boolean;
25
+ active_source?: "clipboard" | "upload" | "microphone" | "webcam" | null;
26
+ fullscreen?: boolean;
27
+ dragging?: boolean;
28
28
  };
29
29
  events: {
30
30
  fullscreen: CustomEvent<boolean>;
31
- error: CustomEvent<string> | CustomEvent<any>;
31
+ error: CustomEvent<any> | CustomEvent<string>;
32
32
  drag: CustomEvent<any>;
33
33
  close_stream: CustomEvent<undefined>;
34
34
  change?: CustomEvent<undefined> | undefined;
@@ -43,6 +43,8 @@ declare const __propDef: {
43
43
  slots: {
44
44
  default: {};
45
45
  };
46
+ exports?: {} | undefined;
47
+ bindings?: string | undefined;
46
48
  };
47
49
  export type ImageUploaderProps = typeof __propDef.props;
48
50
  export type ImageUploaderEvents = typeof __propDef.events;
@@ -32,8 +32,7 @@ export const modify_stream = (state) => {
32
32
  }
33
33
  };
34
34
  export const set_time_limit = (time) => {
35
- if (recording)
36
- time_limit = time;
35
+ if (recording) time_limit = time;
37
36
  };
38
37
  let canvas;
39
38
  export let streaming = false;
@@ -221,8 +220,7 @@ function handle_click_outside(event) {
221
220
  options_open = false;
222
221
  }
223
222
  onDestroy(() => {
224
- if (typeof window === "undefined")
225
- return;
223
+ if (typeof window === "undefined") return;
226
224
  record_video_or_photo({ destroy: true });
227
225
  stream?.getTracks().forEach((track) => track.stop());
228
226
  });
@@ -4,26 +4,26 @@ import { type FileData, type Client } from "@gradio/client";
4
4
  import type { Base64File } from "./types";
5
5
  declare const __propDef: {
6
6
  props: {
7
- modify_stream?: ((state: "open" | "closed" | "waiting") => void) | undefined;
8
- set_time_limit?: ((time: number) => void) | undefined;
9
- streaming?: boolean | undefined;
10
- pending?: boolean | undefined;
11
- root?: string | undefined;
12
- stream_every?: number | undefined;
13
- mode?: ("image" | "video") | undefined;
7
+ modify_stream?: (state: "open" | "closed" | "waiting") => void;
8
+ set_time_limit?: (time: number) => void;
9
+ streaming?: boolean;
10
+ pending?: boolean;
11
+ root?: string;
12
+ stream_every?: number;
13
+ mode?: "image" | "video";
14
14
  mirror_webcam: boolean;
15
15
  include_audio: boolean;
16
- webcam_constraints?: ({
16
+ webcam_constraints?: {
17
17
  [key: string]: any;
18
- } | null) | undefined;
18
+ } | null;
19
19
  i18n: I18nFormatter;
20
20
  upload: Client["upload"];
21
- value?: (FileData | null | Base64File) | undefined;
22
- click_outside?: ((node: Node, cb: any) => any) | undefined;
21
+ value?: FileData | null | Base64File;
22
+ click_outside?: (node: Node, cb: any) => any;
23
23
  };
24
24
  events: {
25
25
  stream: CustomEvent<string | Blob>;
26
- capture: CustomEvent<Blob | FileData | null>;
26
+ capture: CustomEvent<any>;
27
27
  error: CustomEvent<string>;
28
28
  start_recording: CustomEvent<undefined>;
29
29
  stop_recording: CustomEvent<undefined>;
@@ -32,6 +32,8 @@ declare const __propDef: {
32
32
  [evt: string]: CustomEvent<any>;
33
33
  };
34
34
  slots: {};
35
+ exports?: {} | undefined;
36
+ bindings?: string | undefined;
35
37
  };
36
38
  export type WebcamProps = typeof __propDef.props;
37
39
  export type WebcamEvents = typeof __propDef.events;
@@ -1,14 +1,14 @@
1
1
  import { SvelteComponent } from "svelte";
2
2
  declare const __propDef: {
3
- props: {
4
- [x: string]: never;
5
- };
3
+ props: Record<string, never>;
6
4
  events: {
7
5
  click: CustomEvent<undefined>;
8
6
  } & {
9
7
  [evt: string]: CustomEvent<any>;
10
8
  };
11
9
  slots: {};
10
+ exports?: {} | undefined;
11
+ bindings?: string | undefined;
12
12
  };
13
13
  export type WebcamPermissionsProps = typeof __propDef.props;
14
14
  export type WebcamPermissionsEvents = typeof __propDef.events;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gradio/image",
3
- "version": "0.22.17",
3
+ "version": "0.23.0",
4
4
  "description": "Gradio UI packages",
5
5
  "type": "module",
6
6
  "author": "",
@@ -10,13 +10,12 @@
10
10
  "cropperjs": "^1.5.12",
11
11
  "lazy-brush": "^1.0.1",
12
12
  "resize-observer-polyfill": "^1.5.1",
13
- "@gradio/client": "^1.17.1",
14
- "@gradio/atoms": "^0.16.5",
15
- "@gradio/icons": "^0.13.0",
16
- "@gradio/statustracker": "^0.10.17",
17
- "@gradio/utils": "^0.10.2",
18
- "@gradio/wasm": "^0.18.1",
19
- "@gradio/upload": "^0.16.15"
13
+ "@gradio/atoms": "^0.18.0",
14
+ "@gradio/icons": "^0.14.0",
15
+ "@gradio/statustracker": "^0.11.1",
16
+ "@gradio/client": "^1.19.0",
17
+ "@gradio/upload": "^0.17.0",
18
+ "@gradio/utils": "^0.10.2"
20
19
  },
21
20
  "devDependencies": {
22
21
  "@gradio/preview": "^0.14.0"
@@ -6,36 +6,11 @@
6
6
  }
7
7
  type $$Props = Props;
8
8
 
9
- import { resolve_wasm_src } from "@gradio/wasm/svelte";
10
-
11
9
  export let src: HTMLImgAttributes["src"] = undefined;
12
-
13
- let resolved_src: typeof src;
14
-
15
- // The `src` prop can be updated before the Promise from `resolve_wasm_src` is resolved.
16
- // In such a case, the resolved value for the old `src` has to be discarded,
17
- // This variable `latest_src` is used to pick up only the value resolved for the latest `src` prop.
18
- let latest_src: typeof src;
19
- $: {
20
- // In normal (non-Wasm) Gradio, the `<img>` element should be rendered with the passed `src` props immediately
21
- // without waiting for `resolve_wasm_src()` to resolve.
22
- // If it waits, a blank image is displayed until the async task finishes
23
- // and it leads to undesirable flickering.
24
- // So set `src` to `resolved_src` here.
25
- resolved_src = src;
26
-
27
- latest_src = src;
28
- const resolving_src = src;
29
- resolve_wasm_src(resolving_src).then((s) => {
30
- if (latest_src === resolving_src) {
31
- resolved_src = s;
32
- }
33
- });
34
- }
35
10
  </script>
36
11
 
37
12
  <!-- svelte-ignore a11y-missing-attribute -->
38
- <img src={resolved_src} {...$$restProps} on:load />
13
+ <img {src} {...$$restProps} on:load />
39
14
 
40
15
  <style>
41
16
  img {
@@ -8,12 +8,12 @@
8
8
  IconButton,
9
9
  ShareButton,
10
10
  IconButtonWrapper,
11
- FullscreenButton
11
+ FullscreenButton,
12
+ DownloadLink
12
13
  } from "@gradio/atoms";
13
14
  import { Download, Image as ImageIcon } from "@gradio/icons";
14
15
  import { get_coordinates_of_clicked_image } from "./utils";
15
16
  import Image from "./Image.svelte";
16
- import { DownloadLink } from "@gradio/wasm/svelte";
17
17
 
18
18
  import type { I18nFormatter } from "@gradio/utils";
19
19
  import type { FileData } from "@gradio/client";