Skip to content

Commit af4d465

Browse files
authored
Update settings & FFI consistency (#58)
* Upda project configurations * Remove currying for consistency * Baby around parcel
1 parent 28936cd commit af4d465

File tree

12 files changed

+8148
-22313
lines changed

12 files changed

+8148
-22313
lines changed

.github/workflows/CI.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name: CI
22

3-
on: push
3+
on: [push, pull_request]
44

55
jobs:
66
build:

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ scratchpad.*
2222
scratchpadloader.*
2323
vendor
2424
.cache
25+
.vscode/
2526
.bundle
2627

2728
.spago

package-lock.json

Lines changed: 8110 additions & 22279 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,9 @@
2828
},
2929
"devDependencies": {
3030
"jsdom": "^16.5.3",
31-
"parcel": "^2.0.0-beta.2"
31+
"parcel": "^2.2.1"
32+
},
33+
"alias": {
34+
"xhr2": false
3235
}
3336
}

packages.dhall

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ let additions =
117117
-------------------------------
118118
-}
119119
let upstream =
120-
https://github.com/purescript/package-sets/releases/download/psc-0.14.4-20211030/packages.dhall sha256:5cd7c5696feea3d3f84505d311348b9e90a76c4ce3684930a0ff29606d2d816c
120+
https://github.com/purescript/package-sets/releases/download/psc-0.14.5-20220203/packages.dhall sha256:f8905bf5d7ce9d886cf4ef1c5893ab55de0b30c82c2b4137f272d075000fbc50
121121

122122
let overrides = {=}
123123

spago.dhall

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ You can edit this file as you like.
1919
, "foldable-traversable"
2020
, "foreign"
2121
, "foreign-object"
22-
, "functions"
2322
, "maybe"
2423
, "newtype"
2524
, "nullable"

src/Flame/Html/Attribute/Event.js

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,16 @@
33
let messageEventData = 5,
44
rawEventData = 6;
55

6-
exports.createEvent_ = function (name, message) {
7-
return [messageEventData, name, message];
6+
exports.createEvent_ = function (name) {
7+
return function (message) {
8+
return [messageEventData, name, message];
9+
};
810
};
911

10-
exports.createRawEvent_ = function (name, handler) {
11-
return [rawEventData, name, handler];
12+
exports.createRawEvent_ = function (name) {
13+
return function (handler) {
14+
return [rawEventData, name, handler];
15+
};
1216
};
1317

1418
exports.nodeValue_ = function (event) {
@@ -42,5 +46,3 @@ exports.selection_ = function (event) {
4246

4347
return "";
4448
};
45-
46-

src/Flame/Html/Attribute/Event.purs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,6 @@ module Flame.Html.Event (EventName, ToEvent, ToRawEvent, ToMaybeEvent, ToSpecial
33

44
import Prelude
55

6-
import Data.Function.Uncurried (Fn2)
7-
import Data.Function.Uncurried as DFU
86
import Data.Maybe (Maybe(..))
97
import Data.Tuple (Tuple(..))
108
import Effect (Effect)
@@ -29,8 +27,8 @@ foreign import checkedValue_ :: EffectFn1 Event Boolean
2927
foreign import preventDefault_ :: EffectFn1 Event Unit
3028
foreign import key_ :: EffectFn1 Event Key
3129
foreign import selection_ :: EffectFn1 Event String
32-
foreign import createEvent_ :: forall message. Fn2 EventName message (NodeData message)
33-
foreign import createRawEvent_ :: forall message. Fn2 EventName (Event -> Effect (Maybe message)) (NodeData message)
30+
foreign import createEvent_ :: forall message. EventName -> message -> (NodeData message)
31+
foreign import createRawEvent_ :: forall message. EventName -> (Event -> Effect (Maybe message)) -> (NodeData message)
3432

3533
nodeValue :: Event -> Effect String
3634
nodeValue = FU.runEffectFn1 nodeValue_
@@ -49,11 +47,11 @@ selection = FU.runEffectFn1 selection_
4947

5048
-- | Raises the given `message` for the event
5149
createEvent :: forall message. EventName -> message -> NodeData message
52-
createEvent name = DFU.runFn2 createEvent_ name
50+
createEvent name message = createEvent_ name message
5351

5452
-- | Raises the given `message` for the given event, but also supplies the event itself
5553
createRawEvent :: forall message. EventName -> (Event -> Effect (Maybe message)) -> NodeData message
56-
createRawEvent = DFU.runFn2 createRawEvent_
54+
createRawEvent name handler = createRawEvent_ name handler
5755

5856
-- | Helper for `message`s that expect an event
5957
createEventMessage :: forall message. EventName -> (Event -> message) -> NodeData message

src/Flame/Html/Attribute/Internal.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,16 @@ let styleData = 1,
66
attributeData = 4,
77
keyData = 7;
88

9-
exports.createProperty_ = function (name, value) {
10-
return [propertyData, name, value];
9+
exports.createProperty_ = function (name) {
10+
return function (value) {
11+
return [propertyData, name, value];
12+
};
1113
};
1214

13-
exports.createAttribute_ = function (name, value) {
14-
return [attributeData, name, value];
15+
exports.createAttribute_ = function (name) {
16+
return function (value) {
17+
return [attributeData, name, value];
18+
};
1519
};
1620

1721
exports.createClass = function (array) {

src/Flame/Html/Attribute/Internal.purs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ module Flame.Html.Attribute.Internal (class ToClassList, class ToStyleList, ToBo
44
import Data.Array as DA
55
import Data.Either as DE
66
import Data.Foldable as DF
7-
import Data.Function.Uncurried (Fn2)
8-
import Data.Function.Uncurried as DFU
97
import Data.Maybe as DM
108
import Data.String (Pattern(..))
119
import Data.String as DS
@@ -58,19 +56,19 @@ instance foldableStyleList :: DF.Foldable f => ToStyleList (f (Tuple String Stri
5856
toStyleList = FO.fromFoldable
5957

6058
--these functions cheat by only creating the necessary key on NodeData
61-
foreign import createProperty_ :: forall message. Fn2 Name Value (NodeData message)
62-
foreign import createAttribute_ :: forall message. Fn2 Name Value (NodeData message)
59+
foreign import createProperty_ :: forall message. Name -> Value -> (NodeData message)
60+
foreign import createAttribute_ :: forall message. Name -> Value -> (NodeData message)
6361
foreign import createClass :: forall message. Array String -> NodeData message
6462
foreign import createStyle :: forall message. Object String -> NodeData message
6563
foreign import createKey :: forall message. String -> NodeData message
6664

6765
-- | Sets a DOM property
6866
createProperty :: forall message. String -> String -> NodeData message
69-
createProperty = DFU.runFn2 createProperty_
67+
createProperty name value = createProperty_ name value
7068

7169
-- | Creates a HTML attribute
7270
createAttribute :: forall message. String -> String -> NodeData message
73-
createAttribute = DFU.runFn2 createAttribute_
71+
createAttribute name value = createAttribute_ name value
7472

7573
booleanToFalsyString :: Boolean -> String
7674
booleanToFalsyString =

0 commit comments

Comments
 (0)