forked from purescript-web/purescript-web-dom
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request purescript-web#1 from purescript-web/compiler/0.12
Compiler/0.12
- Loading branch information
Showing
103 changed files
with
3,665 additions
and
463 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,8 +1,8 @@ | ||
# Dependencies | ||
.psci_modules | ||
bower_components | ||
node_modules | ||
|
||
# Generated files | ||
.psci | ||
output | ||
/.* | ||
!/.gitignore | ||
!/.eslintrc.json | ||
!/.travis.yml | ||
package-lock.json | ||
/bower_components/ | ||
/node_modules/ | ||
/output/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
/* global window */ | ||
"use strict"; | ||
|
||
exports.window = function () { | ||
return window; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
module Web.HTML | ||
( window | ||
, module Exports | ||
) where | ||
|
||
import Effect (Effect) | ||
import Web.HTML.Window (Window) | ||
import Web.HTML.History (History) as Exports | ||
import Web.HTML.HTMLAnchorElement (HTMLAnchorElement) as Exports | ||
import Web.HTML.HTMLAreaElement (HTMLAreaElement) as Exports | ||
import Web.HTML.HTMLAudioElement (HTMLAudioElement) as Exports | ||
import Web.HTML.HTMLBaseElement (HTMLBaseElement) as Exports | ||
import Web.HTML.HTMLBodyElement (HTMLBodyElement) as Exports | ||
import Web.HTML.HTMLBRElement (HTMLBRElement) as Exports | ||
import Web.HTML.HTMLButtonElement (HTMLButtonElement) as Exports | ||
import Web.HTML.HTMLCanvasElement (HTMLCanvasElement) as Exports | ||
import Web.HTML.HTMLDataElement (HTMLDataElement) as Exports | ||
import Web.HTML.HTMLDataListElement (HTMLDataListElement) as Exports | ||
import Web.HTML.HTMLDivElement (HTMLDivElement) as Exports | ||
import Web.HTML.HTMLDListElement (HTMLDListElement) as Exports | ||
import Web.HTML.HTMLDocument (HTMLDocument) as Exports | ||
import Web.HTML.HTMLElement (HTMLElement) as Exports | ||
import Web.HTML.HTMLEmbedElement (HTMLEmbedElement) as Exports | ||
import Web.HTML.HTMLFieldSetElement (HTMLFieldSetElement) as Exports | ||
import Web.HTML.HTMLFormElement (HTMLFormElement) as Exports | ||
import Web.HTML.HTMLHeadElement (HTMLHeadElement) as Exports | ||
import Web.HTML.HTMLHeadingElement (HTMLHeadingElement) as Exports | ||
import Web.HTML.HTMLHRElement (HTMLHRElement) as Exports | ||
import Web.HTML.HTMLIFrameElement (HTMLIFrameElement) as Exports | ||
import Web.HTML.HTMLImageElement (HTMLImageElement) as Exports | ||
import Web.HTML.HTMLInputElement (HTMLInputElement) as Exports | ||
import Web.HTML.HTMLKeygenElement (HTMLKeygenElement) as Exports | ||
import Web.HTML.HTMLLabelElement (HTMLLabelElement) as Exports | ||
import Web.HTML.HTMLLegendElement (HTMLLegendElement) as Exports | ||
import Web.HTML.HTMLLIElement (HTMLLIElement) as Exports | ||
import Web.HTML.HTMLLinkElement (HTMLLinkElement) as Exports | ||
import Web.HTML.HTMLMapElement (HTMLMapElement) as Exports | ||
import Web.HTML.HTMLMediaElement (HTMLMediaElement) as Exports | ||
import Web.HTML.HTMLMetaElement (HTMLMetaElement) as Exports | ||
import Web.HTML.HTMLMeterElement (HTMLMeterElement) as Exports | ||
import Web.HTML.HTMLModElement (HTMLModElement) as Exports | ||
import Web.HTML.HTMLObjectElement (HTMLObjectElement) as Exports | ||
import Web.HTML.HTMLOListElement (HTMLOListElement) as Exports | ||
import Web.HTML.HTMLOptGroupElement (HTMLOptGroupElement) as Exports | ||
import Web.HTML.HTMLOptionElement (HTMLOptionElement) as Exports | ||
import Web.HTML.HTMLOutputElement (HTMLOutputElement) as Exports | ||
import Web.HTML.HTMLParagraphElement (HTMLParagraphElement) as Exports | ||
import Web.HTML.HTMLParamElement (HTMLParamElement) as Exports | ||
import Web.HTML.HTMLPreElement (HTMLPreElement) as Exports | ||
import Web.HTML.HTMLProgressElement (HTMLProgressElement) as Exports | ||
import Web.HTML.HTMLQuoteElement (HTMLQuoteElement) as Exports | ||
import Web.HTML.HTMLScriptElement (HTMLScriptElement) as Exports | ||
import Web.HTML.HTMLSelectElement (HTMLSelectElement) as Exports | ||
import Web.HTML.HTMLSourceElement (HTMLSourceElement) as Exports | ||
import Web.HTML.HTMLSpanElement (HTMLSpanElement) as Exports | ||
import Web.HTML.HTMLStyleElement (HTMLStyleElement) as Exports | ||
import Web.HTML.HTMLTableCaptionElement (HTMLTableCaptionElement) as Exports | ||
import Web.HTML.HTMLTableCellElement (HTMLTableCellElement) as Exports | ||
import Web.HTML.HTMLTableColElement (HTMLTableColElement) as Exports | ||
import Web.HTML.HTMLTableDataCellElement (HTMLTableDataCellElement) as Exports | ||
import Web.HTML.HTMLTableElement (HTMLTableElement) as Exports | ||
import Web.HTML.HTMLTableHeaderCellElement (HTMLTableHeaderCellElement) as Exports | ||
import Web.HTML.HTMLTableRowElement (HTMLTableRowElement) as Exports | ||
import Web.HTML.HTMLTableSectionElement (HTMLTableSectionElement) as Exports | ||
import Web.HTML.HTMLTemplateElement (HTMLTemplateElement) as Exports | ||
import Web.HTML.HTMLTextAreaElement (HTMLTextAreaElement) as Exports | ||
import Web.HTML.HTMLTimeElement (HTMLTimeElement) as Exports | ||
import Web.HTML.HTMLTitleElement (HTMLTitleElement) as Exports | ||
import Web.HTML.HTMLTrackElement (HTMLTrackElement) as Exports | ||
import Web.HTML.HTMLUListElement (HTMLUListElement) as Exports | ||
import Web.HTML.HTMLVideoElement (HTMLVideoElement) as Exports | ||
import Web.HTML.Location (Location) as Exports | ||
import Web.HTML.Navigator (Navigator) as Exports | ||
import Web.HTML.Window (Window) as Exports | ||
|
||
foreign import window :: Effect Window |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
"use strict"; | ||
|
||
exports.returnValue = function (e) { | ||
return function () { | ||
return e.returnValue; | ||
}; | ||
}; | ||
|
||
exports.setReturnValue = function (v) { | ||
return function (e) { | ||
return function () { | ||
e.returnValue = v; | ||
}; | ||
}; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
module Web.HTML.Event.BeforeUnloadEvent where | ||
|
||
import Prelude | ||
|
||
import Data.Maybe (Maybe) | ||
import Effect (Effect) | ||
import Unsafe.Coerce (unsafeCoerce) | ||
import Web.Event.Event (Event) | ||
import Web.Internal.FFI (unsafeReadProtoTagged) | ||
|
||
foreign import data BeforeUnloadEvent :: Type | ||
|
||
fromEvent :: Event -> Maybe BeforeUnloadEvent | ||
fromEvent = unsafeReadProtoTagged "BeforeUnloadEvent" | ||
|
||
toEvent :: BeforeUnloadEvent -> Event | ||
toEvent = unsafeCoerce | ||
|
||
foreign import returnValue :: BeforeUnloadEvent -> Effect String | ||
|
||
foreign import setReturnValue :: String -> BeforeUnloadEvent -> Effect Unit |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
module Web.HTML.Event.BeforeUnloadEvent.EventTypes where | ||
|
||
import Web.Event.Event (EventType(..)) | ||
|
||
beforeunload :: EventType | ||
beforeunload = EventType "beforeunload" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
"use strict"; | ||
|
||
exports._files = function (dataTransfer) { | ||
return dataTransfer.files; | ||
}; | ||
|
||
exports.types = function (dataTransfer) { | ||
return dataTransfer.types; | ||
}; | ||
|
||
exports._getData = function (format) { | ||
return function (dataTransfer) { | ||
return function () { | ||
return dataTransfer.getData(format); | ||
}; | ||
}; | ||
}; | ||
|
||
exports._setData = function (format) { | ||
return function (data) { | ||
return function (dataTransfer) { | ||
return function () { | ||
return dataTransfer.setData(format, data); | ||
}; | ||
}; | ||
}; | ||
}; | ||
|
||
exports._dropEffect = function (dataTransfer) { | ||
return function () { | ||
return dataTransfer.dropEffect; | ||
}; | ||
}; | ||
|
||
exports._setDropEffect = function (e) { | ||
return function (dataTransfer) { | ||
return function () { | ||
dataTransfer.dropEffect = e; | ||
}; | ||
}; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
module Web.HTML.Event.DataTransfer | ||
( DataTransfer | ||
, files | ||
, types | ||
, getData | ||
, setData | ||
, DropEffect(..) | ||
, dropEffect | ||
, setDropEffect | ||
) where | ||
|
||
import Prelude | ||
|
||
import Data.Maybe (Maybe) | ||
import Data.MediaType (MediaType(..)) | ||
import Data.Nullable (Nullable, toMaybe) | ||
import Effect (Effect) | ||
import Web.File.FileList (FileList) | ||
|
||
foreign import data DataTransfer :: Type | ||
|
||
-- | Contains a list of all the local files available on the data transfer. | ||
-- | Empty if the drag operation doesn't involve dragging files. | ||
-- | | ||
-- | It's possible that a drag operation may have null files, instead of an | ||
-- | empty file list. In these cases Nothing is returned. | ||
files :: DataTransfer -> Maybe FileList | ||
files = toMaybe <$> _files | ||
|
||
foreign import _files :: DataTransfer -> Nullable FileList | ||
|
||
-- | Returns an array of data formats used in the drag operation. | ||
-- | If the drag operation included no data, then the array is empty. | ||
foreign import types :: DataTransfer -> Array String | ||
|
||
foreign import _getData | ||
:: String | ||
-> DataTransfer | ||
-> Effect String | ||
|
||
-- | Retrieves the data for a given media type, or an empty string if data for | ||
-- | that type does not exist or the data transfer object contains no data. | ||
getData :: MediaType -> DataTransfer -> Effect String | ||
getData (MediaType format) dt = _getData format dt | ||
|
||
foreign import _setData | ||
:: String | ||
-> String | ||
-> DataTransfer | ||
-> Effect Unit | ||
|
||
-- | Sets the data transfer object's data for a given media format. | ||
setData | ||
:: MediaType | ||
-> String | ||
-> DataTransfer | ||
-> Effect Unit | ||
setData (MediaType format) dat dt = _setData format dat dt | ||
|
||
foreign import _dropEffect :: DataTransfer -> Effect String | ||
|
||
data DropEffect = Copy | Link | Move | None | ||
|
||
derive instance eqDropEffect :: Eq DropEffect | ||
derive instance ordDropEffect :: Ord DropEffect | ||
|
||
-- | Gets the data transfer object's drop effect. | ||
dropEffect :: DataTransfer -> Effect DropEffect | ||
dropEffect dt = | ||
_dropEffect dt <#> case _ of | ||
"copy" -> Copy | ||
"link" -> Link | ||
"move" -> Move | ||
"none" -> None | ||
_ -> None | ||
|
||
foreign import _setDropEffect :: String -> DataTransfer -> Effect Unit | ||
|
||
-- | Sets the data transfer object's drop effect. | ||
setDropEffect :: DropEffect -> DataTransfer -> Effect Unit | ||
setDropEffect de = _setDropEffect case de of | ||
Copy -> "copy" | ||
Link -> "link" | ||
Move -> "move" | ||
None -> "none" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
"use strict"; | ||
|
||
exports.dataTransfer = function (e) { | ||
return e.dataTransfer; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
module Web.HTML.Event.DragEvent where | ||
|
||
import Data.Maybe (Maybe) | ||
import Unsafe.Coerce (unsafeCoerce) | ||
import Web.Event.Event (Event) | ||
import Web.HTML.Event.DataTransfer (DataTransfer) | ||
import Web.Internal.FFI (unsafeReadProtoTagged) | ||
|
||
foreign import data DragEvent :: Type | ||
|
||
fromEvent :: Event -> Maybe DragEvent | ||
fromEvent = unsafeReadProtoTagged "DragEvent" | ||
|
||
toEvent :: DragEvent -> Event | ||
toEvent = unsafeCoerce | ||
|
||
foreign import dataTransfer :: DragEvent -> DataTransfer |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
module Web.HTML.Event.DragEvent.EventTypes where | ||
|
||
import Web.Event.Event (EventType(..)) | ||
|
||
dragstart :: EventType | ||
dragstart = EventType "dragstart" | ||
|
||
drag :: EventType | ||
drag = EventType "drag" | ||
|
||
dragenter :: EventType | ||
dragenter = EventType "dragenter" | ||
|
||
dragexit :: EventType | ||
dragexit = EventType "dragexit" | ||
|
||
dragleave :: EventType | ||
dragleave = EventType "dragleave" | ||
|
||
dragover :: EventType | ||
dragover = EventType "dragover" | ||
|
||
drop :: EventType | ||
drop = EventType "drop" | ||
|
||
dragend :: EventType | ||
dragend = EventType "dragend" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
"use strict"; | ||
|
||
exports.message = function (e) { | ||
return e.message; | ||
}; | ||
|
||
exports.fileName = function (e) { | ||
return e.filename; | ||
}; | ||
|
||
exports.lineNo = function (e) { | ||
return e.lineno; | ||
}; | ||
|
||
exports.colNo = function (e) { | ||
return e.colno; | ||
}; |
Oops, something went wrong.