File tree Expand file tree Collapse file tree 4 files changed +63
-0
lines changed Expand file tree Collapse file tree 4 files changed +63
-0
lines changed Original file line number Diff line number Diff line change @@ -4,6 +4,10 @@ exports._files = function (dataTransfer) {
4
4
return dataTransfer . files ;
5
5
} ;
6
6
7
+ exports . items = function ( dataTransfer ) {
8
+ return dataTransfer . items ;
9
+ } ;
10
+
7
11
exports . types = function ( dataTransfer ) {
8
12
return dataTransfer . types ;
9
13
} ;
Original file line number Diff line number Diff line change @@ -16,6 +16,7 @@ import Data.MediaType (MediaType(..))
16
16
import Data.Nullable (Nullable , toMaybe )
17
17
import Effect (Effect )
18
18
import Web.File.FileList (FileList )
19
+ import Web.HTML.Event.DataTransfer.DataTransferItem (DataTransferItemList )
19
20
20
21
foreign import data DataTransfer :: Type
21
22
@@ -29,6 +30,10 @@ files = toMaybe <$> _files
29
30
30
31
foreign import _files :: DataTransfer -> Nullable FileList
31
32
33
+ -- | Returns a `DataTransferItemList` object which is a list of all of the drag
34
+ -- | data.
35
+ foreign import items :: DataTransfer -> DataTransferItemList
36
+
32
37
-- | Returns an array of data formats used in the drag operation.
33
38
-- | If the drag operation included no data, then the array is empty.
34
39
foreign import types :: DataTransfer -> Array String
Original file line number Diff line number Diff line change
1
+ "use strict" ;
2
+
3
+ exports . kind = function ( dataTransferItem ) {
4
+ return dataTransferItem . kind ;
5
+ } ;
6
+
7
+ exports . type_ = function ( dataTransferItem ) {
8
+ return dataTransferItem . type ;
9
+ } ;
10
+
11
+ exports . _dataTransferItem = function ( index ) {
12
+ return function ( dataTransferItemList ) {
13
+ return dataTransferItemList [ index ] ;
14
+ } ;
15
+ } ;
16
+
17
+ exports . _length = function ( dataTransferItemList ) {
18
+ return dataTransferItemList . length ;
19
+ } ;
Original file line number Diff line number Diff line change
1
+ module Web.HTML.Event.DataTransfer.DataTransferItem
2
+ ( DataTransferItem
3
+ , DataTransferItemList
4
+ ) where
5
+
6
+ import Prelude
7
+ import Data.Maybe (Maybe )
8
+ import Data.Nullable (Nullable )
9
+ import Data.Nullable as Nullable
10
+
11
+ -- | Returns the drag data item kind, which is either "string" or "file".
12
+ foreign import kind :: DataTransferItem -> String
13
+
14
+ -- | A Unicode string giving the type or format of the data, generally given by
15
+ -- | a MIME type. Some values that are not MIME types are special-cased for
16
+ -- | legacy reasons. The API does not enforce the use of MIME types; other
17
+ -- | values can be used as well. In all cases, however, the values are all
18
+ -- | converted to ASCII lowercase by the API.
19
+ -- | There is a limit of one text item per item type string.
20
+ foreign import type_ :: DataTransferItem -> String
21
+
22
+ -- | Access an item in the `DataTransferItemList` by index.
23
+ dataTransferItem :: Int -> DataTransferItemList -> Maybe DataTransferItem
24
+ dataTransferItem = map Nullable .toMaybe <$> _dataTransferItem
25
+
26
+ foreign import _dataTransferItem :: Int -> DataTransferItemList -> Nullable DataTransferItem
27
+
28
+ length :: DataTransferItemList -> Int
29
+ length = _length
30
+
31
+ foreign import _length :: DataTransferItemList -> Int
32
+
33
+ foreign import data DataTransferItem :: Type
34
+
35
+ foreign import data DataTransferItemList :: Type
You can’t perform that action at this time.
0 commit comments