You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add `MessageChannel` interface and basic impl
feat: add `MessagePort` interface and basic impl
test: add initial tests for channel messaging
test: add `MessageChannel` and `MessagePort` to common minimum
chore: re-pin api for `graalvm` module
Fixes and closes#1317
Relates-to: #1317
Signed-off-by: Sam Gammon <[email protected]>
Copy file name to clipboardExpand all lines: packages/graalvm/api/graalvm.api
+149Lines changed: 149 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -2254,6 +2254,20 @@ public abstract interface class elide/runtime/intrinsics/js/MapLike$Entry {
2254
2254
public abstract fun getValue ()Ljava/lang/Object;
2255
2255
}
2256
2256
2257
+
public abstract interface class elide/runtime/intrinsics/js/MessageChannel : elide/runtime/interop/ReadOnlyProxyObject {
2258
+
public abstract fun getPort1 ()Lelide/runtime/intrinsics/js/MessagePort;
2259
+
public abstract fun getPort2 ()Lelide/runtime/intrinsics/js/MessagePort;
2260
+
}
2261
+
2262
+
public abstract interface class elide/runtime/intrinsics/js/MessagePort : elide/runtime/intrinsics/js/node/events/EventTarget, java/lang/AutoCloseable, org/graalvm/polyglot/proxy/ProxyObject {
2263
+
public abstract fun close ()V
2264
+
public fun postMessage (Ljava/lang/Object;Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;)V
2265
+
public fun postMessage (Ljava/lang/Object;Ljava/util/Collection;)V
2266
+
public abstract fun postMessage (Ljava/lang/Object;Ljava/util/Collection;Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;)V
2267
+
public fun postMessage ([Lorg/graalvm/polyglot/Value;)V
2268
+
public abstract fun start ()V
2269
+
}
2270
+
2257
2271
public abstract interface class elide/runtime/intrinsics/js/MultiMapLike : elide/runtime/intrinsics/js/MapLike {
2258
2272
public abstract fun getAll (Ljava/lang/Object;)Ljava/util/List;
2259
2273
}
@@ -2345,6 +2359,9 @@ public abstract interface class elide/runtime/intrinsics/js/Timers {
2345
2359
public static synthetic fun setTimeout$default (Lelide/runtime/intrinsics/js/Timers;Ljava/lang/Long;[Ljava/lang/Object;Lorg/graalvm/polyglot/Value;ILjava/lang/Object;)J
2346
2360
}
2347
2361
2362
+
public abstract interface class elide/runtime/intrinsics/js/Transferable {
2363
+
}
2364
+
2348
2365
public abstract interface class elide/runtime/intrinsics/js/URL : java/io/Serializable, org/graalvm/polyglot/proxy/ProxyObject {
2349
2366
public abstract fun getHash ()Ljava/lang/String;
2350
2367
public abstract fun getHost ()Ljava/lang/String;
@@ -2681,6 +2698,31 @@ public abstract interface class elide/runtime/intrinsics/js/express/ExpressRespo
2681
2698
public abstract fun send (Lorg/graalvm/polyglot/Value;)V
2682
2699
}
2683
2700
2701
+
public final class elide/runtime/intrinsics/js/messaging/PostMessageOptions : java/lang/Record {
2702
+
public static final field Companion Lelide/runtime/intrinsics/js/messaging/PostMessageOptions$Companion;
2703
+
public fun <init> ()V
2704
+
public fun <init> (Ljava/util/Collection;)V
2705
+
public synthetic fun <init> (Ljava/util/Collection;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
2706
+
public final fun component1 ()Ljava/util/Collection;
2707
+
public final fun copy (Ljava/util/Collection;)Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2708
+
public static synthetic fun copy$default (Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;Ljava/util/Collection;ILjava/lang/Object;)Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2709
+
public static final fun empty ()Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2710
+
public fun equals (Ljava/lang/Object;)Z
2711
+
public static final fun from (Lorg/graalvm/polyglot/Value;)Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2712
+
public fun hashCode ()I
2713
+
public static final fun of (Ljava/util/Collection;)Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2714
+
public static final fun of ([Lelide/runtime/intrinsics/js/Transferable;)Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2715
+
public fun toString ()Ljava/lang/String;
2716
+
public final fun transfer ()Ljava/util/Collection;
2717
+
}
2718
+
2719
+
public final class elide/runtime/intrinsics/js/messaging/PostMessageOptions$Companion {
2720
+
public final fun empty ()Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2721
+
public final fun from (Lorg/graalvm/polyglot/Value;)Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2722
+
public final fun of (Ljava/util/Collection;)Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2723
+
public final fun of ([Lelide/runtime/intrinsics/js/Transferable;)Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;
2724
+
}
2725
+
2684
2726
public abstract interface class elide/runtime/intrinsics/js/node/AssertAPI : elide/runtime/intrinsics/js/node/NodeAPI {
2685
2727
public abstract fun assert (Ljava/lang/Object;Ljava/lang/String;)V
2686
2728
public static synthetic fun assert$default (Lelide/runtime/intrinsics/js/node/AssertAPI;Ljava/lang/Object;Ljava/lang/String;ILjava/lang/Object;)V
@@ -5818,6 +5860,24 @@ public abstract interface class elide/runtime/intrinsics/testing/TestingAPI$Test
5818
5860
public abstract interface class elide/runtime/intrinsics/testing/TestingAPI$TestGraphNode$Test : elide/runtime/intrinsics/testing/TestingAPI$TestGraphNode {
5819
5861
}
5820
5862
5863
+
public synthetic class elide/runtime/javascript/$MessageChannelBuiltin$Definition : io/micronaut/context/AbstractInitializableBeanDefinitionAndReference {
5864
+
public static final field $ANNOTATION_METADATA Lio/micronaut/core/annotation/AnnotationMetadata;
5865
+
public fun <init> ()V
5866
+
protected fun <init> (Ljava/lang/Class;Lio/micronaut/context/AbstractInitializableBeanDefinition$MethodOrFieldReference;)V
5867
+
public fun instantiate (Lio/micronaut/context/BeanResolutionContext;Lio/micronaut/context/BeanContext;)Ljava/lang/Object;
5868
+
public fun isEnabled (Lio/micronaut/context/BeanContext;)Z
5869
+
public fun isEnabled (Lio/micronaut/context/BeanContext;Lio/micronaut/context/BeanResolutionContext;)Z
5870
+
public fun load ()Lio/micronaut/inject/BeanDefinition;
5871
+
}
5872
+
5873
+
public final synthetic class elide/runtime/javascript/$MessageChannelBuiltin$Introspection : io/micronaut/inject/beans/AbstractInitializableBeanIntrospectionAndReference {
5874
+
public static final field $ANNOTATION_METADATA Lio/micronaut/core/annotation/AnnotationMetadata;
5875
+
public fun <init> ()V
5876
+
public fun hasBuilder ()Z
5877
+
public fun instantiate ()Ljava/lang/Object;
5878
+
public fun isBuildable ()Z
5879
+
}
5880
+
5821
5881
public synthetic class elide/runtime/javascript/$NavigatorBuiltin$Definition : io/micronaut/context/AbstractInitializableBeanDefinitionAndReference {
5822
5882
public static final field $ANNOTATION_METADATA Lio/micronaut/core/annotation/AnnotationMetadata;
5823
5883
public fun <init> ()V
@@ -5871,6 +5931,44 @@ public final synthetic class elide/runtime/javascript/$StructuredCloneBuiltin$In
5871
5931
public fun isBuildable ()Z
5872
5932
}
5873
5933
5934
+
public final class elide/runtime/javascript/MessageChannelBuiltin : elide/runtime/gvm/internals/intrinsics/js/AbstractJsIntrinsic, org/graalvm/polyglot/proxy/ProxyInstantiable {
5935
+
public fun <init> ()V
5936
+
public fun install (Lelide/runtime/intrinsics/GuestIntrinsic$MutableIntrinsicBindings;)V
5937
+
public fun newInstance ([Lorg/graalvm/polyglot/Value;)Lelide/runtime/javascript/MessageChannelBuiltin$MessageChannelInstance;
5938
+
public synthetic fun newInstance ([Lorg/graalvm/polyglot/Value;)Ljava/lang/Object;
5939
+
}
5940
+
5941
+
public final class elide/runtime/javascript/MessageChannelBuiltin$MessageChannelInstance : elide/runtime/interop/ReadOnlyProxyObject, elide/runtime/intrinsics/js/MessageChannel {
5942
+
public fun getMember (Ljava/lang/String;)Ljava/lang/Object;
5943
+
public synthetic fun getMemberKeys ()Ljava/lang/Object;
5944
+
public fun getMemberKeys ()[Ljava/lang/String;
5945
+
public fun getPort1 ()Lelide/runtime/intrinsics/js/MessagePort;
5946
+
public fun getPort2 ()Lelide/runtime/intrinsics/js/MessagePort;
5947
+
}
5948
+
5949
+
public final class elide/runtime/javascript/MessagePortBuiltin : elide/runtime/intrinsics/js/MessagePort, elide/runtime/intrinsics/js/node/events/EventTarget, org/graalvm/polyglot/proxy/ProxyObject {
5950
+
public fun addEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/AddEventListenerOptions;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
5951
+
public fun addEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
5952
+
public fun addEventListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;Lorg/graalvm/polyglot/Value;)V
5953
+
public fun close ()V
5954
+
public static final fun create (Ljava/lang/String;)Lelide/runtime/javascript/MessagePortBuiltin;
5955
+
public fun dispatchEvent (Lelide/runtime/intrinsics/js/node/events/Event;)Z
5956
+
public fun getMember (Ljava/lang/String;)Ljava/lang/Object;
5957
+
public synthetic fun getMemberKeys ()Ljava/lang/Object;
5958
+
public fun getMemberKeys ()[Ljava/lang/String;
5959
+
public fun hasMember (Ljava/lang/String;)Z
5960
+
public fun postMessage (Ljava/lang/Object;Ljava/util/Collection;Lelide/runtime/intrinsics/js/messaging/PostMessageOptions;)V
5961
+
public fun putMember (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
5962
+
public fun removeEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
5963
+
public fun removeEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;Lelide/runtime/intrinsics/js/node/events/RemoveEventListenerOptions;)V
5964
+
public fun removeEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;Lorg/graalvm/polyglot/Value;)V
5965
+
public fun removeEventListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
5966
+
public fun removeEventListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;Lorg/graalvm/polyglot/Value;)V
5967
+
public fun removeMember (Ljava/lang/String;)Z
5968
+
public fun start ()V
5969
+
public fun toString ()Ljava/lang/String;
5970
+
}
5971
+
5874
5972
public final class elide/runtime/javascript/NavigatorBuiltin : elide/runtime/gvm/internals/intrinsics/js/AbstractJsIntrinsic, elide/runtime/interop/ReadOnlyProxyObject {
5875
5973
public fun <init> ()V
5876
5974
public fun getMember (Ljava/lang/String;)Ljava/lang/Object;
@@ -6571,6 +6669,57 @@ public final class elide/runtime/node/events/EventAware$Companion {
6571
6669
public final fun create ([Ljava/lang/String;)Lelide/runtime/node/events/EventAware;
6572
6670
}
6573
6671
6672
+
public final class elide/runtime/node/events/EventAwareProxy : elide/runtime/node/events/EventAware, org/graalvm/polyglot/proxy/ProxyObject {
6673
+
public static final field Companion Lelide/runtime/node/events/EventAwareProxy$Companion;
6674
+
public synthetic fun <init> (Lelide/runtime/node/events/EventAware;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
6675
+
public fun addEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/AddEventListenerOptions;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
6676
+
public fun addEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
6677
+
public fun addEventListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;Lorg/graalvm/polyglot/Value;)V
6678
+
public fun addListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
6679
+
public fun addListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
6680
+
public fun close ()V
6681
+
public static final fun create ()Lelide/runtime/node/events/EventAwareProxy;
6682
+
public static final fun create (Ljava/lang/Iterable;)Lelide/runtime/node/events/EventAwareProxy;
6683
+
public static final fun create ([Ljava/lang/String;)Lelide/runtime/node/events/EventAwareProxy;
6684
+
public fun dispatchEvent (Lelide/runtime/intrinsics/js/node/events/Event;)Z
6685
+
public fun emit (Ljava/lang/String;[Ljava/lang/Object;)Z
6686
+
public fun eventNames ()Ljava/util/List;
6687
+
public fun getMaxListeners ()I
6688
+
public fun getMember (Ljava/lang/String;)Ljava/lang/Object;
6689
+
public synthetic fun getMemberKeys ()Ljava/lang/Object;
6690
+
public fun getMemberKeys ()Ljava/util/List;
6691
+
public fun hasMember (Ljava/lang/String;)Z
6692
+
public fun listenerCount (Ljava/lang/String;)I
6693
+
public fun listeners (Ljava/lang/String;)Ljava/util/List;
6694
+
public fun off (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
6695
+
public fun on (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)Lelide/runtime/intrinsics/js/node/events/EventEmitter;
6696
+
public fun on (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)Lelide/runtime/intrinsics/js/node/events/EventEmitter;
6697
+
public fun once (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
6698
+
public fun once (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
6699
+
public fun prependListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
6700
+
public fun prependListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
6701
+
public fun prependOnceListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
6702
+
public fun prependOnceListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
6703
+
public fun putMember (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
6704
+
public fun rawListeners (Ljava/lang/String;)Ljava/util/List;
6705
+
public fun removeAllListeners ()V
6706
+
public fun removeAllListeners (Ljava/lang/String;)V
6707
+
public fun removeEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;)V
6708
+
public fun removeEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;Lelide/runtime/intrinsics/js/node/events/RemoveEventListenerOptions;)V
6709
+
public fun removeEventListener (Ljava/lang/String;Lelide/runtime/intrinsics/js/node/events/EventListener;Lorg/graalvm/polyglot/Value;)V
6710
+
public fun removeEventListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
6711
+
public fun removeEventListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;Lorg/graalvm/polyglot/Value;)V
6712
+
public fun removeListener (Ljava/lang/String;Lorg/graalvm/polyglot/Value;)V
6713
+
public fun removeMember (Ljava/lang/String;)Z
6714
+
public fun setMaxListeners (I)V
6715
+
}
6716
+
6717
+
public final class elide/runtime/node/events/EventAwareProxy$Companion {
6718
+
public final fun create ()Lelide/runtime/node/events/EventAwareProxy;
6719
+
public final fun create (Ljava/lang/Iterable;)Lelide/runtime/node/events/EventAwareProxy;
6720
+
public final fun create ([Ljava/lang/String;)Lelide/runtime/node/events/EventAwareProxy;
6721
+
}
6722
+
6574
6723
public abstract interface class elide/runtime/node/events/GuestEventListener : elide/runtime/intrinsics/js/node/events/EventListener, java/util/function/Consumer, org/graalvm/polyglot/proxy/ProxyExecutable {
6575
6724
public static final field Companion Lelide/runtime/node/events/GuestEventListener$Companion;
6576
6725
public fun accept (Lelide/runtime/intrinsics/js/node/events/Event;)V
0 commit comments