Skip to content

Commit 5236571

Browse files
committed
remove the second argument (transferable ojects) form postMessage
1 parent b3fd202 commit 5236571

File tree

6 files changed

+20
-13
lines changed

6 files changed

+20
-13
lines changed

src/Web/Worker/GlobalScope.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,8 @@ export function navigator() {
99
}
1010

1111
export function postMessage(data) {
12-
return function (transfer) {
13-
return function () {
14-
self.postMessage(data, transfer.length > 0 ? transfer : undefined);
15-
};
12+
return function () {
13+
self.postMessage(data);
1614
};
1715
}
1816

src/Web/Worker/GlobalScope.purs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@ foreign import location :: Effect Location
1111

1212
foreign import navigator :: Effect Navigator
1313

14-
foreign import postMessage :: forall msg tr. msg -> Array tr -> Effect Unit
14+
foreign import postMessage :: forall msg. msg -> Effect Unit
1515

1616
foreign import close :: Effect Unit

src/Web/Worker/Navigator.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,10 @@ export function onLine(navigator) {
1414
return function () {
1515
return navigator.onLine;
1616
};
17+
}
18+
19+
export function userAgent(navigator) {
20+
return function () {
21+
return navigator.userAgent;
22+
};
1723
}

src/Web/Worker/Navigator.purs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,6 @@ foreign import hardwareConcurrency :: Navigator -> Effect Int
1212

1313
foreign import onLine :: Navigator -> Effect Boolean
1414

15-
-- connection
15+
foreign import userAgent :: Navigator -> Effect String
16+
17+
-- todo: complete the list of attributes

src/Web/Worker/Worker.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
export function newImpl (src) {
1+
export function _new (src) {
22
return function (opts) {
33
return function () {
44
return new Worker(src, opts);
55
};
66
};
77
}
88

9-
export function postMessage(data) {
9+
export function _postMessage(data) {
1010
return function (transfer) {
1111
return function (worker) {
1212
return function () {

src/Web/Worker/Worker.purs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,19 +49,20 @@ defaultWorkerOptions =
4949
, type: Classic
5050
}
5151

52-
--foreign import onError :: (Error -> Effect Unit) -> Worker -> Effect Unit
53-
54-
foreign import newImpl :: String -> { name :: String, credentials :: String, type :: String } -> Effect Worker
52+
foreign import _new :: String -> { name :: String, credentials :: String, type :: String } -> Effect Worker
5553

5654
new :: String -> WorkerOptions -> Effect Worker
57-
new url {name, type: t, credentials} = newImpl url
55+
new url {name, type: t, credentials} = _new url
5856
{ name
5957
, credentials: show credentials
6058
, type: show t
6159
}
6260

6361

64-
foreign import postMessage :: forall msg tr. msg -> Array tr -> Worker -> Effect Unit
62+
foreign import _postMessage :: forall msg tr. msg -> Array tr -> Worker -> Effect Unit
63+
64+
postMessage :: forall msg. msg -> Worker -> Effect Unit
65+
postMessage msg = _postMessage msg []
6566

6667
foreign import terminate :: Worker -> Effect Unit
6768

0 commit comments

Comments
 (0)