Bug fixing added moving torrents after download, getting ready for alpha release
This commit is contained in:
5
.gitignore
vendored
5
.gitignore
vendored
@@ -1,4 +1,6 @@
|
|||||||
downloads/
|
downloads/
|
||||||
|
downloading/
|
||||||
|
uploadedTorrents/
|
||||||
storage.db.lock
|
storage.db.lock
|
||||||
storage.db
|
storage.db
|
||||||
.torrent.bolt.db.lock
|
.torrent.bolt.db.lock
|
||||||
@@ -10,4 +12,5 @@ output.json
|
|||||||
.idea/workspace.xml
|
.idea/workspace.xml
|
||||||
.idea/vcs.xml
|
.idea/vcs.xml
|
||||||
*.torrent
|
*.torrent
|
||||||
boltbrowser.win64.exe
|
boltbrowser.win64.exe
|
||||||
|
logs/server.log
|
18
config.toml
18
config.toml
@@ -3,16 +3,16 @@
|
|||||||
|
|
||||||
ServerPort = ":8000" #leave format as is it expects a string with colon
|
ServerPort = ":8000" #leave format as is it expects a string with colon
|
||||||
ServerAddr = "" #blank will bind to default IP address, usually fine to leave be
|
ServerAddr = "" #blank will bind to default IP address, usually fine to leave be
|
||||||
LogLevel = "Info" # Options = Debug, Info, Warn, Error, Fatal, Panic
|
LogLevel = "Debug" # Options = Debug, Info, Warn, Error, Fatal, Panic
|
||||||
LogOutput = "stdout" #Options = file, stdout #file will print it to logs/server.log
|
LogOutput = "file" #Options = file, stdout #file will print it to logs/server.log
|
||||||
|
|
||||||
SeedRatioStop = 1.50 #automatically stops the torrent after it reaches this seeding ratio
|
SeedRatioStop = 1.50 #automatically stops the torrent after it reaches this seeding ratio
|
||||||
DefaultMoveFolder = "downloads" #default path that a finished torrent is symlinked to after completion. Torrents added via RSS will default here
|
DefaultMoveFolder = "downloaded" #default path that a finished torrent is symlinked to after completion. Torrents added via RSS will default here
|
||||||
|
|
||||||
|
|
||||||
[notifications]
|
[notifications]
|
||||||
|
|
||||||
PushBulletToken = "o.QW6G7F6FUOKXCUKmw948fBceCUn0msFi" #add your pushbullet api token here to notify of torrent completion to pushbullet
|
PushBulletToken = "o.QW6G7F6FUOKXCUKmw948fBceCUn0msFi" #add your pushbullet api token here to notify of torrent completion to pushbullet
|
||||||
|
|
||||||
|
|
||||||
[EncryptionPolicy]
|
[EncryptionPolicy]
|
||||||
@@ -23,9 +23,12 @@
|
|||||||
|
|
||||||
|
|
||||||
[torrentClientConfig]
|
[torrentClientConfig]
|
||||||
DownloadDir = "downloads" #the full OR relative path where the torrent server stores in-progress torrents
|
DownloadDir = "downloading" #the full OR relative path where the torrent server stores in-progress torrents
|
||||||
|
|
||||||
Seed = true #boolean #seed after download
|
Seed = true #boolean #seed after download
|
||||||
|
|
||||||
|
# Never send chunks to peers.
|
||||||
|
NoUpload = false #boolean
|
||||||
|
|
||||||
#The address to listen for new uTP and TCP bittorrent protocolconnections. DHT shares a UDP socket with uTP unless configured otherwise.
|
#The address to listen for new uTP and TCP bittorrent protocolconnections. DHT shares a UDP socket with uTP unless configured otherwise.
|
||||||
ListenAddr = "" #Leave Blank for default, syntax "HOST:PORT"
|
ListenAddr = "" #Leave Blank for default, syntax "HOST:PORT"
|
||||||
@@ -38,9 +41,6 @@
|
|||||||
# Don't create a DHT.
|
# Don't create a DHT.
|
||||||
NoDHT = false #boolean
|
NoDHT = false #boolean
|
||||||
|
|
||||||
# Never send chunks to peers.
|
|
||||||
NoUpload = false #boolean
|
|
||||||
|
|
||||||
# Events are data bytes sent in pieces. The burst must be large enough to fit a whole chunk.
|
# Events are data bytes sent in pieces. The burst must be large enough to fit a whole chunk.
|
||||||
UploadRateLimiter = "" #*rate.Limiter
|
UploadRateLimiter = "" #*rate.Limiter
|
||||||
|
|
||||||
|
@@ -22,6 +22,7 @@ func InitializeCronEngine() *cron.Cron {
|
|||||||
//RefreshRSSCron refreshes all of the RSS feeds on an hourly basis
|
//RefreshRSSCron refreshes all of the RSS feeds on an hourly basis
|
||||||
func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrentLocalStorage Storage.TorrentLocal, dataDir string) {
|
func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrentLocalStorage Storage.TorrentLocal, dataDir string) {
|
||||||
c.AddFunc("@hourly", func() {
|
c.AddFunc("@hourly", func() {
|
||||||
|
torrentHashHistory := Storage.FetchHashHistory(db)
|
||||||
RSSFeedStore := Storage.FetchRSSFeeds(db)
|
RSSFeedStore := Storage.FetchRSSFeeds(db)
|
||||||
singleRSSTorrent := Storage.SingleRSSTorrent{}
|
singleRSSTorrent := Storage.SingleRSSTorrent{}
|
||||||
newFeedStore := Storage.RSSFeedStore{ID: RSSFeedStore.ID} //creating a new feed store just using old one to parse for new torrents
|
newFeedStore := Storage.RSSFeedStore{ID: RSSFeedStore.ID} //creating a new feed store just using old one to parse for new torrents
|
||||||
@@ -36,6 +37,12 @@ func RefreshRSSCron(c *cron.Cron, db *storm.DB, tclient *torrent.Client, torrent
|
|||||||
singleRSSTorrent.Link = RSSTorrent.Link
|
singleRSSTorrent.Link = RSSTorrent.Link
|
||||||
singleRSSTorrent.Title = RSSTorrent.Title
|
singleRSSTorrent.Title = RSSTorrent.Title
|
||||||
singleRSSTorrent.PubDate = RSSTorrent.Published
|
singleRSSTorrent.PubDate = RSSTorrent.Published
|
||||||
|
for _, hash := range torrentHashHistory.HashList {
|
||||||
|
linkHash := singleRSSTorrent.Link[20:60] //cutting the infohash out of the link
|
||||||
|
if linkHash == hash {
|
||||||
|
Logger.WithFields(logrus.Fields{"Torrent": RSSTorrent.Title}).Warn("Torrent already added for this RSS item, skipping torrent")
|
||||||
|
}
|
||||||
|
}
|
||||||
clientTorrent, err := tclient.AddMagnet(RSSTorrent.Link)
|
clientTorrent, err := tclient.AddMagnet(RSSTorrent.Link)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Logger.WithFields(logrus.Fields{"err": err, "Torrent": RSSTorrent.Title}).Warn("Unable to add torrent to torrent client!")
|
Logger.WithFields(logrus.Fields{"err": err, "Torrent": RSSTorrent.Title}).Warn("Unable to add torrent to torrent client!")
|
||||||
|
@@ -1,6 +1,7 @@
|
|||||||
package engine
|
package engine
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
@@ -11,44 +12,77 @@ import (
|
|||||||
Storage "github.com/deranjer/goTorrent/storage"
|
Storage "github.com/deranjer/goTorrent/storage"
|
||||||
pushbullet "github.com/mitsuse/pushbullet-go"
|
pushbullet "github.com/mitsuse/pushbullet-go"
|
||||||
"github.com/mitsuse/pushbullet-go/requests"
|
"github.com/mitsuse/pushbullet-go/requests"
|
||||||
|
folderCopy "github.com/otiai10/copy"
|
||||||
"github.com/sirupsen/logrus"
|
"github.com/sirupsen/logrus"
|
||||||
)
|
)
|
||||||
|
|
||||||
//MoveAndLeaveSymlink takes the file from the default download dir and moves it to the user specified directory and then leaves a symlink behind.
|
//MoveAndLeaveSymlink takes the file from the default download dir and moves it to the user specified directory and then leaves a symlink behind.
|
||||||
func MoveAndLeaveSymlink(config FullClientSettings, singleTorrent *torrent.Torrent, db *storm.DB) {
|
func MoveAndLeaveSymlink(config FullClientSettings, singleTorrent *torrent.Torrent, db *storm.DB) {
|
||||||
|
Logger.WithFields(logrus.Fields{"Torrent Name": singleTorrent.Name()}).Error("Move and Create symlink started for torrent")
|
||||||
tStorage := Storage.FetchTorrentFromStorage(db, singleTorrent.InfoHash().String())
|
tStorage := Storage.FetchTorrentFromStorage(db, singleTorrent.InfoHash().String())
|
||||||
oldFilePath := filepath.Join(config.TorrentConfig.DataDir, singleTorrent.Name())
|
oldFilePath := filepath.Join(config.TorrentConfig.DataDir, singleTorrent.Name())
|
||||||
newFilePath := filepath.Join(tStorage.StoragePath, singleTorrent.Name())
|
newFilePath := filepath.Join(tStorage.StoragePath, singleTorrent.Name())
|
||||||
|
_, err := os.Stat(tStorage.StoragePath)
|
||||||
|
if os.IsNotExist(err) {
|
||||||
|
err := os.MkdirAll(tStorage.StoragePath, 0644)
|
||||||
|
if err != nil {
|
||||||
|
Logger.WithFields(logrus.Fields{"New File Path": newFilePath, "error": err}).Error("Cannot create new directory")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
oldFileInfo, err := os.Stat(oldFilePath)
|
||||||
|
if err != nil {
|
||||||
|
Logger.WithFields(logrus.Fields{"Old File info": oldFileInfo, "error": err}).Error("Cannot find the old file to copy/symlink!")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
if oldFilePath != newFilePath {
|
if oldFilePath != newFilePath {
|
||||||
if runtime.GOOS == "windows" { //TODO the windows symlink is broken on windows 10 creator edition, so doing a copy for now until Go 1.11
|
if runtime.GOOS == "windows" { //TODO the windows symlink is broken on windows 10 creator edition, so doing a copy for now until Go 1.11
|
||||||
|
if oldFileInfo.IsDir() {
|
||||||
|
os.Mkdir(newFilePath, 0644)
|
||||||
|
folderCopy.Copy(oldFilePath, newFilePath) //copy the folder to the new location
|
||||||
|
notifyUser(tStorage, config, singleTorrent)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
srcFile, err := os.Open(oldFilePath)
|
srcFile, err := os.Open(oldFilePath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "error": err}).Error("Windows: Cannot open old file for copy")
|
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "error": err}).Error("Windows: Cannot open old file for copy")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
destFile, err := os.Create(newFilePath) // creating new file to copy old one to
|
defer srcFile.Close()
|
||||||
|
destFile, err := os.Create(newFilePath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Logger.WithFields(logrus.Fields{"New File Path": newFilePath, "error": err}).Error("Windows: Cannot open new file for copying into")
|
Logger.WithFields(logrus.Fields{"New File Path": newFilePath, "error": err}).Error("Windows: Cannot open new file for copying into")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
_, err = io.Copy(srcFile, destFile)
|
defer destFile.Close()
|
||||||
|
bytesWritten, err := io.Copy(destFile, srcFile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Windows: Cannot copy old file into new")
|
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Windows: Cannot copy old file into new")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath}).Info("Windows Torrent Copy Completed")
|
err = destFile.Sync()
|
||||||
|
if err != nil {
|
||||||
|
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Windows: Error syncing new file to disk")
|
||||||
|
}
|
||||||
|
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "bytesWritten": bytesWritten}).Info("Windows Torrent Copy Completed")
|
||||||
|
notifyUser(tStorage, config, singleTorrent)
|
||||||
} else {
|
} else {
|
||||||
err := os.Symlink(oldFilePath, newFilePath) //For all other OS's create a symlink
|
err := os.Symlink(oldFilePath, newFilePath) //For all other OS's create a symlink
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Error creating symlink")
|
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath, "error": err}).Error("Error creating symlink")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
notifyUser(tStorage, config, singleTorrent)
|
||||||
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath}).Info("Moving completed torrent")
|
Logger.WithFields(logrus.Fields{"Old File Path": oldFilePath, "New File Path": newFilePath}).Info("Moving completed torrent")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
tStorage.TorrentMoved = true
|
tStorage.TorrentMoved = true
|
||||||
Storage.AddTorrentLocalStorage(db, tStorage) //Updating the fact that we moved the torrent
|
Storage.AddTorrentLocalStorage(db, tStorage) //Updating the fact that we moved the torrent
|
||||||
|
}
|
||||||
|
|
||||||
|
func notifyUser(tStorage Storage.TorrentLocal, config FullClientSettings, singleTorrent *torrent.Torrent) {
|
||||||
|
fmt.Println("Pushbullet token", config.PushBulletToken)
|
||||||
if config.PushBulletToken != "" {
|
if config.PushBulletToken != "" {
|
||||||
pb := pushbullet.New(config.PushBulletToken)
|
pb := pushbullet.New(config.PushBulletToken)
|
||||||
n := requests.NewNote()
|
n := requests.NewNote()
|
||||||
@@ -60,5 +94,4 @@ func MoveAndLeaveSymlink(config FullClientSettings, singleTorrent *torrent.Torre
|
|||||||
}
|
}
|
||||||
Logger.WithFields(logrus.Fields{"Torrent": singleTorrent.Name(), "New File Path": tStorage.StoragePath}).Info("Pushbullet note sent")
|
Logger.WithFields(logrus.Fields{"Torrent": singleTorrent.Name(), "New File Path": tStorage.StoragePath}).Info("Pushbullet note sent")
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -80,7 +80,7 @@ func timeOutInfo(clientTorrent *torrent.Torrent, seconds time.Duration) (deleted
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func readTorrentFileFromDB(element *Storage.TorrentLocal, singleTorrent *torrent.Torrent, tclient *torrent.Client, db *storm.DB) {
|
func readTorrentFileFromDB(element *Storage.TorrentLocal, tclient *torrent.Client, db *storm.DB) (singleTorrent *torrent.Torrent) {
|
||||||
tempFile, err := ioutil.TempFile("", "TorrentFileTemp")
|
tempFile, err := ioutil.TempFile("", "TorrentFileTemp")
|
||||||
if err != nil {
|
if err != nil {
|
||||||
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to create tempfile")
|
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to create tempfile")
|
||||||
@@ -92,13 +92,16 @@ func readTorrentFileFromDB(element *Storage.TorrentLocal, singleTorrent *torrent
|
|||||||
if err := tempFile.Close(); err != nil { //close the tempfile so that we can add it back into the torrent client
|
if err := tempFile.Close(); err != nil { //close the tempfile so that we can add it back into the torrent client
|
||||||
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to close tempfile")
|
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to close tempfile")
|
||||||
}
|
}
|
||||||
singleTorrent, _ = tclient.AddTorrentFromFile(tempFile.Name())
|
_, err = os.Stat(element.TorrentFileName) //if we CAN find the torrent, add it
|
||||||
if _, err := os.Stat(element.TorrentFileName); err == nil { //if we CAN find the torrent, add it
|
if err != nil {
|
||||||
singleTorrent, _ = tclient.AddTorrentFromFile(element.TorrentFileName)
|
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to find file")
|
||||||
} else { //if we cant find the torrent delete it
|
|
||||||
Storage.DelTorrentLocalStorage(db, element.Hash)
|
|
||||||
Logger.WithFields(logrus.Fields{"tempfile": tempFile, "err": err}).Error("Unable to find Torrent, deleting..")
|
|
||||||
}
|
}
|
||||||
|
singleTorrent, err = tclient.AddTorrentFromFile(element.TorrentFileName)
|
||||||
|
if err != nil {
|
||||||
|
Logger.WithFields(logrus.Fields{"tempfile": element.TorrentFileName, "err": err}).Error("Unable to add Torrent from file!")
|
||||||
|
|
||||||
|
}
|
||||||
|
return singleTorrent
|
||||||
}
|
}
|
||||||
|
|
||||||
//StartTorrent creates the storage.db entry and starts A NEW TORRENT and adds to the running torrent array
|
//StartTorrent creates the storage.db entry and starts A NEW TORRENT and adds to the running torrent array
|
||||||
@@ -147,7 +150,6 @@ func StartTorrent(clientTorrent *torrent.Torrent, torrentLocalStorage Storage.To
|
|||||||
func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Storage.TorrentLocal, PreviousTorrentArray []ClientDB, config FullClientSettings, db *storm.DB) (RunningTorrentArray []ClientDB) {
|
func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Storage.TorrentLocal, PreviousTorrentArray []ClientDB, config FullClientSettings, db *storm.DB) (RunningTorrentArray []ClientDB) {
|
||||||
|
|
||||||
for _, singleTorrentFromStorage := range TorrentLocalArray {
|
for _, singleTorrentFromStorage := range TorrentLocalArray {
|
||||||
|
|
||||||
var singleTorrent *torrent.Torrent
|
var singleTorrent *torrent.Torrent
|
||||||
var TempHash metainfo.Hash
|
var TempHash metainfo.Hash
|
||||||
|
|
||||||
@@ -155,15 +157,13 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
|
|||||||
//singleTorrentStorageInfo := Storage.FetchTorrentFromStorage(db, TempHash.String()) //pulling the single torrent info from storage ()
|
//singleTorrentStorageInfo := Storage.FetchTorrentFromStorage(db, TempHash.String()) //pulling the single torrent info from storage ()
|
||||||
|
|
||||||
if singleTorrentFromStorage.TorrentType == "file" { //if it is a file pull it from the uploaded torrent folder
|
if singleTorrentFromStorage.TorrentType == "file" { //if it is a file pull it from the uploaded torrent folder
|
||||||
readTorrentFileFromDB(singleTorrentFromStorage, singleTorrent, tclient, db)
|
singleTorrent = readTorrentFileFromDB(singleTorrentFromStorage, tclient, db)
|
||||||
fullClientDB.SourceType = "Torrent File"
|
fullClientDB.SourceType = "Torrent File"
|
||||||
continue
|
|
||||||
} else {
|
} else {
|
||||||
singleTorrentFromStorageMagnet := "magnet:?xt=urn:btih:" + singleTorrentFromStorage.Hash //For magnet links just need to prepend the magnet part to the hash to readd
|
singleTorrentFromStorageMagnet := "magnet:?xt=urn:btih:" + singleTorrentFromStorage.Hash //For magnet links just need to prepend the magnet part to the hash to readd
|
||||||
singleTorrent, _ = tclient.AddMagnet(singleTorrentFromStorageMagnet)
|
singleTorrent, _ = tclient.AddMagnet(singleTorrentFromStorageMagnet)
|
||||||
fullClientDB.SourceType = "Magnet Link"
|
fullClientDB.SourceType = "Magnet Link"
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(singleTorrentFromStorage.InfoBytes) == 0 { //TODO.. kind of a fringe scenario.. not sure if needed since the db should always have the infobytes
|
if len(singleTorrentFromStorage.InfoBytes) == 0 { //TODO.. kind of a fringe scenario.. not sure if needed since the db should always have the infobytes
|
||||||
timeOut := timeOutInfo(singleTorrent, 45)
|
timeOut := timeOutInfo(singleTorrent, 45)
|
||||||
if timeOut == true { // if we did timeout then drop the torrent from the boltdb database
|
if timeOut == true { // if we did timeout then drop the torrent from the boltdb database
|
||||||
@@ -173,8 +173,12 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
|
|||||||
singleTorrentFromStorage.InfoBytes = singleTorrent.Metainfo().InfoBytes
|
singleTorrentFromStorage.InfoBytes = singleTorrent.Metainfo().InfoBytes
|
||||||
}
|
}
|
||||||
|
|
||||||
|
err := singleTorrent.SetInfoBytes(singleTorrentFromStorage.InfoBytes) //setting the infobytes back into the torrent
|
||||||
|
if err != nil {
|
||||||
|
Logger.WithFields(logrus.Fields{"torrentFile": singleTorrent.Name(), "error": err}).Error("Unable to add infobytes to the torrent!")
|
||||||
|
}
|
||||||
|
//Logger.WithFields(logrus.Fields{"singleTorrent": singleTorrentFromStorage.TorrentName}).Info("Generating infohash")
|
||||||
TempHash = singleTorrent.InfoHash()
|
TempHash = singleTorrent.InfoHash()
|
||||||
singleTorrent.SetInfoBytes(singleTorrentFromStorage.InfoBytes) //setting the infobytes back into the torrent
|
|
||||||
|
|
||||||
if (singleTorrent.BytesCompleted() == singleTorrent.Length()) && (singleTorrentFromStorage.TorrentMoved == false) { //if we are done downloading and havent moved torrent yet
|
if (singleTorrent.BytesCompleted() == singleTorrent.Length()) && (singleTorrentFromStorage.TorrentMoved == false) { //if we are done downloading and havent moved torrent yet
|
||||||
MoveAndLeaveSymlink(config, singleTorrent, db)
|
MoveAndLeaveSymlink(config, singleTorrent, db)
|
||||||
@@ -190,7 +194,7 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
|
|||||||
|
|
||||||
downloadedSizeHumanized := HumanizeBytes(float32(singleTorrent.BytesCompleted())) //convert size to GB if needed
|
downloadedSizeHumanized := HumanizeBytes(float32(singleTorrent.BytesCompleted())) //convert size to GB if needed
|
||||||
totalSizeHumanized := HumanizeBytes(float32(singleTorrent.Length()))
|
totalSizeHumanized := HumanizeBytes(float32(singleTorrent.Length()))
|
||||||
|
//Logger.WithFields(logrus.Fields{"singleTorrent": singleTorrentFromStorage.TorrentName}).Info("Generated infohash")
|
||||||
//grabbed from torrent client
|
//grabbed from torrent client
|
||||||
fullClientDB.DownloadedSize = downloadedSizeHumanized
|
fullClientDB.DownloadedSize = downloadedSizeHumanized
|
||||||
fullClientDB.Size = totalSizeHumanized
|
fullClientDB.Size = totalSizeHumanized
|
||||||
@@ -206,7 +210,7 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
|
|||||||
fullClientDB.DateAdded = singleTorrentFromStorage.DateAdded
|
fullClientDB.DateAdded = singleTorrentFromStorage.DateAdded
|
||||||
fullClientDB.BytesCompleted = singleTorrent.BytesCompleted()
|
fullClientDB.BytesCompleted = singleTorrent.BytesCompleted()
|
||||||
fullClientDB.NumberofFiles = len(singleTorrent.Files())
|
fullClientDB.NumberofFiles = len(singleTorrent.Files())
|
||||||
CalculateTorrentETA(singleTorrent, fullClientDB)
|
|
||||||
//ranging over the previous torrent array to calculate the speed for each torrent
|
//ranging over the previous torrent array to calculate the speed for each torrent
|
||||||
if len(PreviousTorrentArray) > 0 { //if we actually have a previous array
|
if len(PreviousTorrentArray) > 0 { //if we actually have a previous array
|
||||||
for _, previousElement := range PreviousTorrentArray {
|
for _, previousElement := range PreviousTorrentArray {
|
||||||
@@ -217,6 +221,7 @@ func CreateRunningTorrentArray(tclient *torrent.Client, TorrentLocalArray []*Sto
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
CalculateTorrentETA(singleTorrent, fullClientDB) //needs to be here since we need the speed calcuated before we can estimate the eta.
|
||||||
|
|
||||||
fullClientDB.TotalUploadedSize = HumanizeBytes(float32(fullClientDB.TotalUploadedBytes))
|
fullClientDB.TotalUploadedSize = HumanizeBytes(float32(fullClientDB.TotalUploadedBytes))
|
||||||
fullClientDB.UploadRatio = CalculateUploadRatio(singleTorrent, fullClientDB) //calculate the upload ratio
|
fullClientDB.UploadRatio = CalculateUploadRatio(singleTorrent, fullClientDB) //calculate the upload ratio
|
||||||
|
@@ -67,7 +67,7 @@ func FullClientSettingsNew() FullClientSettings {
|
|||||||
httpAddrPort := viper.GetString("serverConfig.ServerPort")
|
httpAddrPort := viper.GetString("serverConfig.ServerPort")
|
||||||
seedRatioStop := viper.GetFloat64("serverConfig.SeedRatioStop")
|
seedRatioStop := viper.GetFloat64("serverConfig.SeedRatioStop")
|
||||||
httpAddr = httpAddrIP + httpAddrPort
|
httpAddr = httpAddrIP + httpAddrPort
|
||||||
pushBulletToken := viper.GetString("serverConfig.notifications.PushBulletToken")
|
pushBulletToken := viper.GetString("notifications.PushBulletToken")
|
||||||
defaultMoveFolder := viper.GetString("serverConfig.DefaultMoveFolder")
|
defaultMoveFolder := viper.GetString("serverConfig.DefaultMoveFolder")
|
||||||
|
|
||||||
dataDir := viper.GetString("torrentClientConfig.DownloadDir")
|
dataDir := viper.GetString("torrentClientConfig.DownloadDir")
|
||||||
@@ -117,9 +117,6 @@ func FullClientSettingsNew() FullClientSettings {
|
|||||||
downloadRateLimiter := new(rate.Limiter)
|
downloadRateLimiter := new(rate.Limiter)
|
||||||
viper.UnmarshalKey("DownloadRateLimiter", &downloadRateLimiter)
|
viper.UnmarshalKey("DownloadRateLimiter", &downloadRateLimiter)
|
||||||
|
|
||||||
rreferNoEncryption := viper.GetBool("EncryptionPolicy.PreferNoEncryption")
|
|
||||||
fmt.Println("Encryption", rreferNoEncryption)
|
|
||||||
|
|
||||||
encryptionPolicy := torrent.EncryptionPolicy{
|
encryptionPolicy := torrent.EncryptionPolicy{
|
||||||
DisableEncryption: viper.GetBool("EncryptionPolicy.DisableEncryption"),
|
DisableEncryption: viper.GetBool("EncryptionPolicy.DisableEncryption"),
|
||||||
ForceEncryption: viper.GetBool("EncryptionPolicy.ForceEncryption"),
|
ForceEncryption: viper.GetBool("EncryptionPolicy.ForceEncryption"),
|
||||||
|
3
goTorrentWebUI/node_modules/attr-accept/package.json
generated
vendored
3
goTorrentWebUI/node_modules/attr-accept/package.json
generated
vendored
@@ -22,7 +22,8 @@
|
|||||||
"fetchSpec": "1.1.0"
|
"fetchSpec": "1.1.0"
|
||||||
},
|
},
|
||||||
"_requiredBy": [
|
"_requiredBy": [
|
||||||
"/"
|
"/",
|
||||||
|
"/react-dropzone"
|
||||||
],
|
],
|
||||||
"_resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-1.1.0.tgz",
|
"_resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-1.1.0.tgz",
|
||||||
"_spec": "1.1.0",
|
"_spec": "1.1.0",
|
||||||
|
19
goTorrentWebUI/node_modules/react-dropzone/.babelrc
generated
vendored
Normal file
19
goTorrentWebUI/node_modules/react-dropzone/.babelrc
generated
vendored
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
{
|
||||||
|
"env": {
|
||||||
|
"development": {
|
||||||
|
"presets": ["env", "react", "stage-1"],
|
||||||
|
"plugins": ["add-module-exports"]
|
||||||
|
},
|
||||||
|
"test": {
|
||||||
|
"presets": ["env", "react", "stage-1"],
|
||||||
|
"plugins": ["add-module-exports"]
|
||||||
|
},
|
||||||
|
"production": {
|
||||||
|
"presets": ["env", "react", "stage-1"],
|
||||||
|
"plugins": ["add-module-exports"]
|
||||||
|
},
|
||||||
|
"es": {
|
||||||
|
"presets": [["env",{ "modules": false }], "react", "stage-1"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
15
goTorrentWebUI/node_modules/react-dropzone/.codeclimate.yml
generated
vendored
Normal file
15
goTorrentWebUI/node_modules/react-dropzone/.codeclimate.yml
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
engines:
|
||||||
|
duplication:
|
||||||
|
enabled: true
|
||||||
|
config:
|
||||||
|
languages:
|
||||||
|
- javascript
|
||||||
|
eslint:
|
||||||
|
enabled: true
|
||||||
|
channel: "eslint-3"
|
||||||
|
ratings:
|
||||||
|
paths:
|
||||||
|
- "**.js"
|
||||||
|
exclude_paths:
|
||||||
|
- "dist/"
|
||||||
|
- "src/*.spec.js"
|
13
goTorrentWebUI/node_modules/react-dropzone/.editorconfig
generated
vendored
Normal file
13
goTorrentWebUI/node_modules/react-dropzone/.editorconfig
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
# http://editorconfig.org
|
||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
||||||
|
end_of_line = lf
|
||||||
|
charset = utf-8
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
insert_final_newline = true
|
||||||
|
|
||||||
|
[*.md]
|
||||||
|
trim_trailing_whitespace = false
|
34
goTorrentWebUI/node_modules/react-dropzone/.eslintrc
generated
vendored
Normal file
34
goTorrentWebUI/node_modules/react-dropzone/.eslintrc
generated
vendored
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"extends": [
|
||||||
|
"okonet",
|
||||||
|
"prettier"
|
||||||
|
],
|
||||||
|
"plugins": [
|
||||||
|
"prettier"
|
||||||
|
],
|
||||||
|
"rules": {
|
||||||
|
// React
|
||||||
|
"react/forbid-prop-types": [
|
||||||
|
2,
|
||||||
|
{
|
||||||
|
"forbid": [
|
||||||
|
"any",
|
||||||
|
"array"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"react/require-default-props": 0,
|
||||||
|
|
||||||
|
// Import
|
||||||
|
"import/no-extraneous-dependencies": [
|
||||||
|
2,
|
||||||
|
{
|
||||||
|
"devDependencies": [
|
||||||
|
"webpack*.js",
|
||||||
|
"**/*.spec.js",
|
||||||
|
"**/testSetup.js"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
12
goTorrentWebUI/node_modules/react-dropzone/.travis.yml
generated
vendored
Normal file
12
goTorrentWebUI/node_modules/react-dropzone/.travis.yml
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
language: node_js
|
||||||
|
cache: yarn
|
||||||
|
notifications:
|
||||||
|
email: false
|
||||||
|
node_js:
|
||||||
|
- '8'
|
||||||
|
after_success:
|
||||||
|
- bash <(curl -s https://codecov.io/bash)
|
||||||
|
- npm run semantic-release
|
||||||
|
branches:
|
||||||
|
except:
|
||||||
|
- /^v\d+\.\d+\.\d+$/
|
22
goTorrentWebUI/node_modules/react-dropzone/LICENSE
generated
vendored
Normal file
22
goTorrentWebUI/node_modules/react-dropzone/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2014 Param Aggarwal
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
165
goTorrentWebUI/node_modules/react-dropzone/README.md
generated
vendored
Normal file
165
goTorrentWebUI/node_modules/react-dropzone/README.md
generated
vendored
Normal file
@@ -0,0 +1,165 @@
|
|||||||
|

|
||||||
|
|
||||||
|
# react-dropzone
|
||||||
|
|
||||||
|
[](https://travis-ci.org/react-dropzone/react-dropzone) [](https://badge.fury.io/js/react-dropzone) [](https://codecov.io/gh/react-dropzone/react-dropzone) [](#backers)
|
||||||
|
[](#sponsors)
|
||||||
|
|
||||||
|
Simple HTML5-compliant drag'n'drop zone for files built with React.js.
|
||||||
|
|
||||||
|
Documentation and examples: https://react-dropzone.js.org
|
||||||
|
Source code: https://github.com/react-dropzone/react-dropzone/
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Looking for maintainers: https://github.com/react-dropzone/react-dropzone/issues/479**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Install it from npm and include it in your React build process (using [Webpack](http://webpack.github.io/), [Browserify](http://browserify.org/), etc).
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm install --save react-dropzone
|
||||||
|
```
|
||||||
|
or:
|
||||||
|
```bash
|
||||||
|
yarn add react-dropzone
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Import `Dropzone` in your React component:
|
||||||
|
|
||||||
|
```javascript static
|
||||||
|
import Dropzone from 'react-dropzone'
|
||||||
|
```
|
||||||
|
|
||||||
|
and specify the `onDrop` method that accepts two arguments. The first argument represents the accepted files and the second argument the rejected files.
|
||||||
|
|
||||||
|
```javascript static
|
||||||
|
function onDrop(acceptedFiles, rejectedFiles) {
|
||||||
|
// do stuff with files...
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Files accepted or rejected based on `accept` prop. This must be a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file).
|
||||||
|
|
||||||
|
Please note that `onDrop` method will always be called regardless if dropped file was accepted or rejected. The `onDropAccepted` method will be called if all dropped files were accepted and the `onDropRejected` method will be called if any of the dropped files was rejected.
|
||||||
|
|
||||||
|
Using `react-dropzone` is similar to using a file form field, but instead of getting the `files` property from the field, you listen to the `onDrop` callback to handle the files. Simple explanation here: http://abandon.ie/notebook/simple-file-uploads-using-jquery-ajax
|
||||||
|
|
||||||
|
Specifying the `onDrop` method, provides you with an array of [Files](https://developer.mozilla.org/en-US/docs/Web/API/File) which you can then send to a server. For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:
|
||||||
|
|
||||||
|
```javascript static
|
||||||
|
onDrop: acceptedFiles => {
|
||||||
|
const req = request.post('/upload');
|
||||||
|
acceptedFiles.forEach(file => {
|
||||||
|
req.attach(file.name, file);
|
||||||
|
});
|
||||||
|
req.end(callback);
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
**Warning**: On most recent browsers versions, the files given by `onDrop` won't have properties `path` or `fullPath`, see [this SO question](https://stackoverflow.com/a/23005925/2275818) and [this issue](https://github.com/react-dropzone/react-dropzone/issues/477).
|
||||||
|
If you want to access file content you have to use the [FileReader API](https://developer.mozilla.org/en-US/docs/Web/API/FileReader).
|
||||||
|
|
||||||
|
```javascript static
|
||||||
|
onDrop: acceptedFiles => {
|
||||||
|
acceptedFiles.forEach(file => {
|
||||||
|
const reader = new FileReader();
|
||||||
|
reader.onload = () => {
|
||||||
|
const fileAsBinaryString = reader.result;
|
||||||
|
// do whatever you want with the file content
|
||||||
|
};
|
||||||
|
reader.onabort = () => console.log('file reading was aborted');
|
||||||
|
reader.onerror = () => console.log('file reading has failed');
|
||||||
|
|
||||||
|
reader.readAsBinaryString(file);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
## PropTypes
|
||||||
|
|
||||||
|
See https://react-dropzone.netlify.com/#proptypes
|
||||||
|
|
||||||
|
### Word of caution when working with previews
|
||||||
|
|
||||||
|
*Important*: `react-dropzone` doesn't manage dropped files. You need to destroy the object URL yourself whenever you don't need the `preview` by calling `window.URL.revokeObjectURL(file.preview);` to avoid memory leaks.
|
||||||
|
|
||||||
|
## Support
|
||||||
|
|
||||||
|
### Backers
|
||||||
|
Support us with a monthly donation and help us continue our activities. [[Become a backer](https://opencollective.com/react-dropzone#backer)]
|
||||||
|
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/0/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/0/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/1/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/1/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/2/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/2/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/3/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/3/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/4/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/4/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/5/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/5/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/6/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/6/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/7/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/7/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/8/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/8/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/9/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/9/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/10/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/10/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/11/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/11/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/12/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/12/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/13/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/13/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/14/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/14/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/15/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/15/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/16/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/16/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/17/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/17/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/18/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/18/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/19/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/19/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/20/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/20/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/21/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/21/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/22/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/22/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/23/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/23/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/24/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/24/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/25/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/25/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/26/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/26/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/27/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/27/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/28/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/28/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/backer/29/website" target="_blank"><img src="https://opencollective.com/react-dropzone/backer/29/avatar.svg"></a>
|
||||||
|
|
||||||
|
|
||||||
|
### Sponsors
|
||||||
|
Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/react-dropzone#sponsor)]
|
||||||
|
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/0/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/0/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/1/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/1/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/2/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/2/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/3/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/3/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/4/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/4/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/5/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/5/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/6/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/6/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/7/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/7/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/8/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/8/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/9/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/9/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/10/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/10/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/11/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/11/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/12/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/12/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/13/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/13/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/14/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/14/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/15/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/15/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/16/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/16/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/17/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/17/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/18/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/18/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/19/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/19/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/20/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/20/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/21/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/21/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/22/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/22/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/23/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/23/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/24/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/24/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/25/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/25/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/26/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/26/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/27/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/27/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/28/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/28/avatar.svg"></a>
|
||||||
|
<a href="https://opencollective.com/react-dropzone/sponsor/29/website" target="_blank"><img src="https://opencollective.com/react-dropzone/sponsor/29/avatar.svg"></a>
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT
|
1
goTorrentWebUI/node_modules/react-dropzone/commitlint.config.js
generated
vendored
Normal file
1
goTorrentWebUI/node_modules/react-dropzone/commitlint.config.js
generated
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
module.exports = { extends: ['@commitlint/config-angular'] }
|
619
goTorrentWebUI/node_modules/react-dropzone/dist/es/index.js
generated
vendored
Normal file
619
goTorrentWebUI/node_modules/react-dropzone/dist/es/index.js
generated
vendored
Normal file
@@ -0,0 +1,619 @@
|
|||||||
|
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
|
||||||
|
|
||||||
|
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
||||||
|
|
||||||
|
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
|
||||||
|
|
||||||
|
function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
|
||||||
|
|
||||||
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||||
|
|
||||||
|
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
|
||||||
|
|
||||||
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
||||||
|
|
||||||
|
/* eslint prefer-template: 0 */
|
||||||
|
|
||||||
|
import React from 'react';
|
||||||
|
import PropTypes from 'prop-types';
|
||||||
|
import { supportMultiple, fileAccepted, allFilesAccepted, fileMatchSize, onDocumentDragOver, getDataTransferItems } from './utils';
|
||||||
|
import styles from './utils/styles';
|
||||||
|
|
||||||
|
var Dropzone = function (_React$Component) {
|
||||||
|
_inherits(Dropzone, _React$Component);
|
||||||
|
|
||||||
|
function Dropzone(props, context) {
|
||||||
|
_classCallCheck(this, Dropzone);
|
||||||
|
|
||||||
|
var _this = _possibleConstructorReturn(this, (Dropzone.__proto__ || Object.getPrototypeOf(Dropzone)).call(this, props, context));
|
||||||
|
|
||||||
|
_this.renderChildren = function (children, isDragActive, isDragAccept, isDragReject) {
|
||||||
|
if (typeof children === 'function') {
|
||||||
|
return children(_extends({}, _this.state, {
|
||||||
|
isDragActive: isDragActive,
|
||||||
|
isDragAccept: isDragAccept,
|
||||||
|
isDragReject: isDragReject
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
return children;
|
||||||
|
};
|
||||||
|
|
||||||
|
_this.composeHandlers = _this.composeHandlers.bind(_this);
|
||||||
|
_this.onClick = _this.onClick.bind(_this);
|
||||||
|
_this.onDocumentDrop = _this.onDocumentDrop.bind(_this);
|
||||||
|
_this.onDragEnter = _this.onDragEnter.bind(_this);
|
||||||
|
_this.onDragLeave = _this.onDragLeave.bind(_this);
|
||||||
|
_this.onDragOver = _this.onDragOver.bind(_this);
|
||||||
|
_this.onDragStart = _this.onDragStart.bind(_this);
|
||||||
|
_this.onDrop = _this.onDrop.bind(_this);
|
||||||
|
_this.onFileDialogCancel = _this.onFileDialogCancel.bind(_this);
|
||||||
|
_this.onInputElementClick = _this.onInputElementClick.bind(_this);
|
||||||
|
|
||||||
|
_this.setRef = _this.setRef.bind(_this);
|
||||||
|
_this.setRefs = _this.setRefs.bind(_this);
|
||||||
|
|
||||||
|
_this.isFileDialogActive = false;
|
||||||
|
|
||||||
|
_this.state = {
|
||||||
|
draggedFiles: [],
|
||||||
|
acceptedFiles: [],
|
||||||
|
rejectedFiles: []
|
||||||
|
};
|
||||||
|
return _this;
|
||||||
|
}
|
||||||
|
|
||||||
|
_createClass(Dropzone, [{
|
||||||
|
key: 'componentDidMount',
|
||||||
|
value: function componentDidMount() {
|
||||||
|
var preventDropOnDocument = this.props.preventDropOnDocument;
|
||||||
|
|
||||||
|
this.dragTargets = [];
|
||||||
|
|
||||||
|
if (preventDropOnDocument) {
|
||||||
|
document.addEventListener('dragover', onDocumentDragOver, false);
|
||||||
|
document.addEventListener('drop', this.onDocumentDrop, false);
|
||||||
|
}
|
||||||
|
this.fileInputEl.addEventListener('click', this.onInputElementClick, false);
|
||||||
|
// Tried implementing addEventListener, but didn't work out
|
||||||
|
document.body.onfocus = this.onFileDialogCancel;
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'componentWillUnmount',
|
||||||
|
value: function componentWillUnmount() {
|
||||||
|
var preventDropOnDocument = this.props.preventDropOnDocument;
|
||||||
|
|
||||||
|
if (preventDropOnDocument) {
|
||||||
|
document.removeEventListener('dragover', onDocumentDragOver);
|
||||||
|
document.removeEventListener('drop', this.onDocumentDrop);
|
||||||
|
}
|
||||||
|
if (this.fileInputEl != null) {
|
||||||
|
this.fileInputEl.removeEventListener('click', this.onInputElementClick, false);
|
||||||
|
}
|
||||||
|
// Can be replaced with removeEventListener, if addEventListener works
|
||||||
|
if (document != null) {
|
||||||
|
document.body.onfocus = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'composeHandlers',
|
||||||
|
value: function composeHandlers(handler) {
|
||||||
|
if (this.props.disabled) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return handler;
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onDocumentDrop',
|
||||||
|
value: function onDocumentDrop(evt) {
|
||||||
|
if (this.node && this.node.contains(evt.target)) {
|
||||||
|
// if we intercepted an event for our instance, let it propagate down to the instance's onDrop handler
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
evt.preventDefault();
|
||||||
|
this.dragTargets = [];
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onDragStart',
|
||||||
|
value: function onDragStart(evt) {
|
||||||
|
if (this.props.onDragStart) {
|
||||||
|
this.props.onDragStart.call(this, evt);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onDragEnter',
|
||||||
|
value: function onDragEnter(evt) {
|
||||||
|
evt.preventDefault();
|
||||||
|
|
||||||
|
// Count the dropzone and any children that are entered.
|
||||||
|
if (this.dragTargets.indexOf(evt.target) === -1) {
|
||||||
|
this.dragTargets.push(evt.target);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.setState({
|
||||||
|
isDragActive: true, // Do not rely on files for the drag state. It doesn't work in Safari.
|
||||||
|
draggedFiles: getDataTransferItems(evt)
|
||||||
|
});
|
||||||
|
|
||||||
|
if (this.props.onDragEnter) {
|
||||||
|
this.props.onDragEnter.call(this, evt);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onDragOver',
|
||||||
|
value: function onDragOver(evt) {
|
||||||
|
// eslint-disable-line class-methods-use-this
|
||||||
|
evt.preventDefault();
|
||||||
|
evt.stopPropagation();
|
||||||
|
try {
|
||||||
|
// The file dialog on Chrome allows users to drag files from the dialog onto
|
||||||
|
// the dropzone, causing the browser the crash when the file dialog is closed.
|
||||||
|
// A drop effect of 'none' prevents the file from being dropped
|
||||||
|
evt.dataTransfer.dropEffect = this.isFileDialogActive ? 'none' : 'copy'; // eslint-disable-line no-param-reassign
|
||||||
|
} catch (err) {
|
||||||
|
// continue regardless of error
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.props.onDragOver) {
|
||||||
|
this.props.onDragOver.call(this, evt);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onDragLeave',
|
||||||
|
value: function onDragLeave(evt) {
|
||||||
|
var _this2 = this;
|
||||||
|
|
||||||
|
evt.preventDefault();
|
||||||
|
|
||||||
|
// Only deactivate once the dropzone and all children have been left.
|
||||||
|
this.dragTargets = this.dragTargets.filter(function (el) {
|
||||||
|
return el !== evt.target && _this2.node.contains(el);
|
||||||
|
});
|
||||||
|
if (this.dragTargets.length > 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Clear dragging files state
|
||||||
|
this.setState({
|
||||||
|
isDragActive: false,
|
||||||
|
draggedFiles: []
|
||||||
|
});
|
||||||
|
|
||||||
|
if (this.props.onDragLeave) {
|
||||||
|
this.props.onDragLeave.call(this, evt);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onDrop',
|
||||||
|
value: function onDrop(evt) {
|
||||||
|
var _this3 = this;
|
||||||
|
|
||||||
|
var _props = this.props,
|
||||||
|
onDrop = _props.onDrop,
|
||||||
|
onDropAccepted = _props.onDropAccepted,
|
||||||
|
onDropRejected = _props.onDropRejected,
|
||||||
|
multiple = _props.multiple,
|
||||||
|
disablePreview = _props.disablePreview,
|
||||||
|
accept = _props.accept;
|
||||||
|
|
||||||
|
var fileList = getDataTransferItems(evt);
|
||||||
|
var acceptedFiles = [];
|
||||||
|
var rejectedFiles = [];
|
||||||
|
|
||||||
|
// Stop default browser behavior
|
||||||
|
evt.preventDefault();
|
||||||
|
|
||||||
|
// Reset the counter along with the drag on a drop.
|
||||||
|
this.dragTargets = [];
|
||||||
|
this.isFileDialogActive = false;
|
||||||
|
|
||||||
|
fileList.forEach(function (file) {
|
||||||
|
if (!disablePreview) {
|
||||||
|
try {
|
||||||
|
file.preview = window.URL.createObjectURL(file); // eslint-disable-line no-param-reassign
|
||||||
|
} catch (err) {
|
||||||
|
if (process.env.NODE_ENV !== 'production') {
|
||||||
|
console.error('Failed to generate preview for file', file, err); // eslint-disable-line no-console
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fileAccepted(file, accept) && fileMatchSize(file, _this3.props.maxSize, _this3.props.minSize)) {
|
||||||
|
acceptedFiles.push(file);
|
||||||
|
} else {
|
||||||
|
rejectedFiles.push(file);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!multiple) {
|
||||||
|
// if not in multi mode add any extra accepted files to rejected.
|
||||||
|
// This will allow end users to easily ignore a multi file drop in "single" mode.
|
||||||
|
rejectedFiles.push.apply(rejectedFiles, _toConsumableArray(acceptedFiles.splice(1)));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (onDrop) {
|
||||||
|
onDrop.call(this, acceptedFiles, rejectedFiles, evt);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rejectedFiles.length > 0 && onDropRejected) {
|
||||||
|
onDropRejected.call(this, rejectedFiles, evt);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (acceptedFiles.length > 0 && onDropAccepted) {
|
||||||
|
onDropAccepted.call(this, acceptedFiles, evt);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Clear files value
|
||||||
|
this.draggedFiles = null;
|
||||||
|
|
||||||
|
// Reset drag state
|
||||||
|
this.setState({
|
||||||
|
isDragActive: false,
|
||||||
|
draggedFiles: [],
|
||||||
|
acceptedFiles: acceptedFiles,
|
||||||
|
rejectedFiles: rejectedFiles
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onClick',
|
||||||
|
value: function onClick(evt) {
|
||||||
|
var _props2 = this.props,
|
||||||
|
onClick = _props2.onClick,
|
||||||
|
disableClick = _props2.disableClick;
|
||||||
|
|
||||||
|
if (!disableClick) {
|
||||||
|
evt.stopPropagation();
|
||||||
|
|
||||||
|
if (onClick) {
|
||||||
|
onClick.call(this, evt);
|
||||||
|
}
|
||||||
|
|
||||||
|
// in IE11/Edge the file-browser dialog is blocking, ensure this is behind setTimeout
|
||||||
|
// this is so react can handle state changes in the onClick prop above above
|
||||||
|
// see: https://github.com/react-dropzone/react-dropzone/issues/450
|
||||||
|
setTimeout(this.open.bind(this), 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onInputElementClick',
|
||||||
|
value: function onInputElementClick(evt) {
|
||||||
|
evt.stopPropagation();
|
||||||
|
if (this.props.inputProps && this.props.inputProps.onClick) {
|
||||||
|
this.props.inputProps.onClick();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'onFileDialogCancel',
|
||||||
|
value: function onFileDialogCancel() {
|
||||||
|
// timeout will not recognize context of this method
|
||||||
|
var onFileDialogCancel = this.props.onFileDialogCancel;
|
||||||
|
var fileInputEl = this.fileInputEl;
|
||||||
|
var isFileDialogActive = this.isFileDialogActive;
|
||||||
|
// execute the timeout only if the onFileDialogCancel is defined and FileDialog
|
||||||
|
// is opened in the browser
|
||||||
|
|
||||||
|
if (onFileDialogCancel && isFileDialogActive) {
|
||||||
|
setTimeout(function () {
|
||||||
|
// Returns an object as FileList
|
||||||
|
var FileList = fileInputEl.files;
|
||||||
|
if (!FileList.length) {
|
||||||
|
isFileDialogActive = false;
|
||||||
|
onFileDialogCancel();
|
||||||
|
}
|
||||||
|
}, 300);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'setRef',
|
||||||
|
value: function setRef(ref) {
|
||||||
|
this.node = ref;
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'setRefs',
|
||||||
|
value: function setRefs(ref) {
|
||||||
|
this.fileInputEl = ref;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Open system file upload dialog.
|
||||||
|
*
|
||||||
|
* @public
|
||||||
|
*/
|
||||||
|
|
||||||
|
}, {
|
||||||
|
key: 'open',
|
||||||
|
value: function open() {
|
||||||
|
this.isFileDialogActive = true;
|
||||||
|
this.fileInputEl.value = null;
|
||||||
|
this.fileInputEl.click();
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
key: 'render',
|
||||||
|
value: function render() {
|
||||||
|
var _props3 = this.props,
|
||||||
|
accept = _props3.accept,
|
||||||
|
acceptClassName = _props3.acceptClassName,
|
||||||
|
activeClassName = _props3.activeClassName,
|
||||||
|
children = _props3.children,
|
||||||
|
disabled = _props3.disabled,
|
||||||
|
disabledClassName = _props3.disabledClassName,
|
||||||
|
inputProps = _props3.inputProps,
|
||||||
|
multiple = _props3.multiple,
|
||||||
|
name = _props3.name,
|
||||||
|
rejectClassName = _props3.rejectClassName,
|
||||||
|
rest = _objectWithoutProperties(_props3, ['accept', 'acceptClassName', 'activeClassName', 'children', 'disabled', 'disabledClassName', 'inputProps', 'multiple', 'name', 'rejectClassName']);
|
||||||
|
|
||||||
|
var acceptStyle = rest.acceptStyle,
|
||||||
|
activeStyle = rest.activeStyle,
|
||||||
|
_rest$className = rest.className,
|
||||||
|
className = _rest$className === undefined ? '' : _rest$className,
|
||||||
|
disabledStyle = rest.disabledStyle,
|
||||||
|
rejectStyle = rest.rejectStyle,
|
||||||
|
style = rest.style,
|
||||||
|
props = _objectWithoutProperties(rest, ['acceptStyle', 'activeStyle', 'className', 'disabledStyle', 'rejectStyle', 'style']);
|
||||||
|
|
||||||
|
var _state = this.state,
|
||||||
|
isDragActive = _state.isDragActive,
|
||||||
|
draggedFiles = _state.draggedFiles;
|
||||||
|
|
||||||
|
var filesCount = draggedFiles.length;
|
||||||
|
var isMultipleAllowed = multiple || filesCount <= 1;
|
||||||
|
var isDragAccept = filesCount > 0 && allFilesAccepted(draggedFiles, this.props.accept);
|
||||||
|
var isDragReject = filesCount > 0 && (!isDragAccept || !isMultipleAllowed);
|
||||||
|
var noStyles = !className && !style && !activeStyle && !acceptStyle && !rejectStyle && !disabledStyle;
|
||||||
|
|
||||||
|
if (isDragActive && activeClassName) {
|
||||||
|
className += ' ' + activeClassName;
|
||||||
|
}
|
||||||
|
if (isDragAccept && acceptClassName) {
|
||||||
|
className += ' ' + acceptClassName;
|
||||||
|
}
|
||||||
|
if (isDragReject && rejectClassName) {
|
||||||
|
className += ' ' + rejectClassName;
|
||||||
|
}
|
||||||
|
if (disabled && disabledClassName) {
|
||||||
|
className += ' ' + disabledClassName;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (noStyles) {
|
||||||
|
style = styles.default;
|
||||||
|
activeStyle = styles.active;
|
||||||
|
acceptStyle = style.active;
|
||||||
|
rejectStyle = styles.rejected;
|
||||||
|
disabledStyle = styles.disabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
var appliedStyle = _extends({}, style);
|
||||||
|
if (activeStyle && isDragActive) {
|
||||||
|
appliedStyle = _extends({}, style, activeStyle);
|
||||||
|
}
|
||||||
|
if (acceptStyle && isDragAccept) {
|
||||||
|
appliedStyle = _extends({}, appliedStyle, acceptStyle);
|
||||||
|
}
|
||||||
|
if (rejectStyle && isDragReject) {
|
||||||
|
appliedStyle = _extends({}, appliedStyle, rejectStyle);
|
||||||
|
}
|
||||||
|
if (disabledStyle && disabled) {
|
||||||
|
appliedStyle = _extends({}, style, disabledStyle);
|
||||||
|
}
|
||||||
|
|
||||||
|
var inputAttributes = {
|
||||||
|
accept: accept,
|
||||||
|
disabled: disabled,
|
||||||
|
type: 'file',
|
||||||
|
style: { display: 'none' },
|
||||||
|
multiple: supportMultiple && multiple,
|
||||||
|
ref: this.setRefs,
|
||||||
|
onChange: this.onDrop,
|
||||||
|
autoComplete: 'off'
|
||||||
|
};
|
||||||
|
|
||||||
|
if (name && name.length) {
|
||||||
|
inputAttributes.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Destructure custom props away from props used for the div element
|
||||||
|
|
||||||
|
var acceptedFiles = props.acceptedFiles,
|
||||||
|
preventDropOnDocument = props.preventDropOnDocument,
|
||||||
|
disablePreview = props.disablePreview,
|
||||||
|
disableClick = props.disableClick,
|
||||||
|
onDropAccepted = props.onDropAccepted,
|
||||||
|
onDropRejected = props.onDropRejected,
|
||||||
|
onFileDialogCancel = props.onFileDialogCancel,
|
||||||
|
maxSize = props.maxSize,
|
||||||
|
minSize = props.minSize,
|
||||||
|
divProps = _objectWithoutProperties(props, ['acceptedFiles', 'preventDropOnDocument', 'disablePreview', 'disableClick', 'onDropAccepted', 'onDropRejected', 'onFileDialogCancel', 'maxSize', 'minSize']);
|
||||||
|
|
||||||
|
return React.createElement(
|
||||||
|
'div',
|
||||||
|
_extends({
|
||||||
|
className: className,
|
||||||
|
style: appliedStyle
|
||||||
|
}, divProps /* expand user provided props first so event handlers are never overridden */, {
|
||||||
|
onClick: this.composeHandlers(this.onClick),
|
||||||
|
onDragStart: this.composeHandlers(this.onDragStart),
|
||||||
|
onDragEnter: this.composeHandlers(this.onDragEnter),
|
||||||
|
onDragOver: this.composeHandlers(this.onDragOver),
|
||||||
|
onDragLeave: this.composeHandlers(this.onDragLeave),
|
||||||
|
onDrop: this.composeHandlers(this.onDrop),
|
||||||
|
ref: this.setRef,
|
||||||
|
'aria-disabled': disabled
|
||||||
|
}),
|
||||||
|
this.renderChildren(children, isDragActive, isDragAccept, isDragReject),
|
||||||
|
React.createElement('input', _extends({}, inputProps /* expand user provided inputProps first so inputAttributes override them */, inputAttributes))
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}]);
|
||||||
|
|
||||||
|
return Dropzone;
|
||||||
|
}(React.Component);
|
||||||
|
|
||||||
|
export default Dropzone;
|
||||||
|
|
||||||
|
Dropzone.propTypes = {
|
||||||
|
/**
|
||||||
|
* Allow specific types of files. See https://github.com/okonet/attr-accept for more information.
|
||||||
|
* Keep in mind that mime type determination is not reliable across platforms. CSV files,
|
||||||
|
* for example, are reported as text/plain under macOS but as application/vnd.ms-excel under
|
||||||
|
* Windows. In some cases there might not be a mime type set at all.
|
||||||
|
* See: https://github.com/react-dropzone/react-dropzone/issues/276
|
||||||
|
*/
|
||||||
|
accept: PropTypes.string,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Contents of the dropzone
|
||||||
|
*/
|
||||||
|
children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Disallow clicking on the dropzone container to open file dialog
|
||||||
|
*/
|
||||||
|
disableClick: PropTypes.bool,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enable/disable the dropzone entirely
|
||||||
|
*/
|
||||||
|
disabled: PropTypes.bool,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enable/disable preview generation
|
||||||
|
*/
|
||||||
|
disablePreview: PropTypes.bool,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If false, allow dropped items to take over the current browser window
|
||||||
|
*/
|
||||||
|
preventDropOnDocument: PropTypes.bool,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Pass additional attributes to the `<input type="file"/>` tag
|
||||||
|
*/
|
||||||
|
inputProps: PropTypes.object,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Allow dropping multiple files
|
||||||
|
*/
|
||||||
|
multiple: PropTypes.bool,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* `name` attribute for the input tag
|
||||||
|
*/
|
||||||
|
name: PropTypes.string,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Maximum file size
|
||||||
|
*/
|
||||||
|
maxSize: PropTypes.number,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Minimum file size
|
||||||
|
*/
|
||||||
|
minSize: PropTypes.number,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* className
|
||||||
|
*/
|
||||||
|
className: PropTypes.string,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* className for active state
|
||||||
|
*/
|
||||||
|
activeClassName: PropTypes.string,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* className for accepted state
|
||||||
|
*/
|
||||||
|
acceptClassName: PropTypes.string,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* className for rejected state
|
||||||
|
*/
|
||||||
|
rejectClassName: PropTypes.string,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* className for disabled state
|
||||||
|
*/
|
||||||
|
disabledClassName: PropTypes.string,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* CSS styles to apply
|
||||||
|
*/
|
||||||
|
style: PropTypes.object,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* CSS styles to apply when drag is active
|
||||||
|
*/
|
||||||
|
activeStyle: PropTypes.object,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* CSS styles to apply when drop will be accepted
|
||||||
|
*/
|
||||||
|
acceptStyle: PropTypes.object,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* CSS styles to apply when drop will be rejected
|
||||||
|
*/
|
||||||
|
rejectStyle: PropTypes.object,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* CSS styles to apply when dropzone is disabled
|
||||||
|
*/
|
||||||
|
disabledStyle: PropTypes.object,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onClick callback
|
||||||
|
* @param {Event} event
|
||||||
|
*/
|
||||||
|
onClick: PropTypes.func,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onDrop callback
|
||||||
|
*/
|
||||||
|
onDrop: PropTypes.func,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onDropAccepted callback
|
||||||
|
*/
|
||||||
|
onDropAccepted: PropTypes.func,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onDropRejected callback
|
||||||
|
*/
|
||||||
|
onDropRejected: PropTypes.func,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onDragStart callback
|
||||||
|
*/
|
||||||
|
onDragStart: PropTypes.func,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onDragEnter callback
|
||||||
|
*/
|
||||||
|
onDragEnter: PropTypes.func,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onDragOver callback
|
||||||
|
*/
|
||||||
|
onDragOver: PropTypes.func,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* onDragLeave callback
|
||||||
|
*/
|
||||||
|
onDragLeave: PropTypes.func,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provide a callback on clicking the cancel button of the file dialog
|
||||||
|
*/
|
||||||
|
onFileDialogCancel: PropTypes.func
|
||||||
|
};
|
||||||
|
|
||||||
|
Dropzone.defaultProps = {
|
||||||
|
preventDropOnDocument: true,
|
||||||
|
disabled: false,
|
||||||
|
disablePreview: false,
|
||||||
|
disableClick: false,
|
||||||
|
multiple: true,
|
||||||
|
maxSize: Infinity,
|
||||||
|
minSize: 0
|
||||||
|
};
|
42
goTorrentWebUI/node_modules/react-dropzone/dist/es/utils/index.js
generated
vendored
Normal file
42
goTorrentWebUI/node_modules/react-dropzone/dist/es/utils/index.js
generated
vendored
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
import accepts from 'attr-accept';
|
||||||
|
|
||||||
|
export var supportMultiple = typeof document !== 'undefined' && document && document.createElement ? 'multiple' in document.createElement('input') : true;
|
||||||
|
|
||||||
|
export function getDataTransferItems(event) {
|
||||||
|
var dataTransferItemsList = [];
|
||||||
|
if (event.dataTransfer) {
|
||||||
|
var dt = event.dataTransfer;
|
||||||
|
if (dt.files && dt.files.length) {
|
||||||
|
dataTransferItemsList = dt.files;
|
||||||
|
} else if (dt.items && dt.items.length) {
|
||||||
|
// During the drag even the dataTransfer.files is null
|
||||||
|
// but Chrome implements some drag store, which is accesible via dataTransfer.items
|
||||||
|
dataTransferItemsList = dt.items;
|
||||||
|
}
|
||||||
|
} else if (event.target && event.target.files) {
|
||||||
|
dataTransferItemsList = event.target.files;
|
||||||
|
}
|
||||||
|
// Convert from DataTransferItemsList to the native Array
|
||||||
|
return Array.prototype.slice.call(dataTransferItemsList);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with
|
||||||
|
// that MIME type will always be accepted
|
||||||
|
export function fileAccepted(file, accept) {
|
||||||
|
return file.type === 'application/x-moz-file' || accepts(file, accept);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function fileMatchSize(file, maxSize, minSize) {
|
||||||
|
return file.size <= maxSize && file.size >= minSize;
|
||||||
|
}
|
||||||
|
|
||||||
|
export function allFilesAccepted(files, accept) {
|
||||||
|
return files.every(function (file) {
|
||||||
|
return fileAccepted(file, accept);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// allow the entire document to be a drag target
|
||||||
|
export function onDocumentDragOver(evt) {
|
||||||
|
evt.preventDefault();
|
||||||
|
}
|
23
goTorrentWebUI/node_modules/react-dropzone/dist/es/utils/styles.js
generated
vendored
Normal file
23
goTorrentWebUI/node_modules/react-dropzone/dist/es/utils/styles.js
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
export default {
|
||||||
|
rejected: {
|
||||||
|
borderStyle: 'solid',
|
||||||
|
borderColor: '#c66',
|
||||||
|
backgroundColor: '#eee'
|
||||||
|
},
|
||||||
|
disabled: {
|
||||||
|
opacity: 0.5
|
||||||
|
},
|
||||||
|
active: {
|
||||||
|
borderStyle: 'solid',
|
||||||
|
borderColor: '#6c6',
|
||||||
|
backgroundColor: '#eee'
|
||||||
|
},
|
||||||
|
default: {
|
||||||
|
width: 200,
|
||||||
|
height: 200,
|
||||||
|
borderWidth: 2,
|
||||||
|
borderColor: '#666',
|
||||||
|
borderStyle: 'dashed',
|
||||||
|
borderRadius: 5
|
||||||
|
}
|
||||||
|
};
|
1029
goTorrentWebUI/node_modules/react-dropzone/dist/index.js
generated
vendored
Normal file
1029
goTorrentWebUI/node_modules/react-dropzone/dist/index.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
1
goTorrentWebUI/node_modules/react-dropzone/dist/index.js.map
generated
vendored
Normal file
1
goTorrentWebUI/node_modules/react-dropzone/dist/index.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
8
goTorrentWebUI/node_modules/react-dropzone/examples/.eslintrc
generated
vendored
Normal file
8
goTorrentWebUI/node_modules/react-dropzone/examples/.eslintrc
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"globals": {
|
||||||
|
"Dropzone": true
|
||||||
|
},
|
||||||
|
"rules": {
|
||||||
|
"react/jsx-no-bind": "off"
|
||||||
|
}
|
||||||
|
}
|
99
goTorrentWebUI/node_modules/react-dropzone/examples/Accept/Readme.md
generated
vendored
Normal file
99
goTorrentWebUI/node_modules/react-dropzone/examples/Accept/Readme.md
generated
vendored
Normal file
@@ -0,0 +1,99 @@
|
|||||||
|
By providing `accept` prop you can make Dropzone to accept specific file types and reject the others.
|
||||||
|
|
||||||
|
The value must be a comma-separated list of unique content type specifiers:
|
||||||
|
* A file extension starting with the STOP character (U+002E). (e.g. .jpg, .png, .doc).
|
||||||
|
* A valid MIME type with no extensions.
|
||||||
|
* audio/* representing sound files.
|
||||||
|
* video/* representing video files.
|
||||||
|
* image/* representing image files.
|
||||||
|
|
||||||
|
For more information see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input
|
||||||
|
|
||||||
|
```
|
||||||
|
class Accept extends React.Component {
|
||||||
|
constructor() {
|
||||||
|
super()
|
||||||
|
this.state = {
|
||||||
|
accepted: [],
|
||||||
|
rejected: []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
return (
|
||||||
|
<section>
|
||||||
|
<div className="dropzone">
|
||||||
|
<Dropzone
|
||||||
|
accept="image/jpeg, image/png"
|
||||||
|
onDrop={(accepted, rejected) => { this.setState({ accepted, rejected }); }}
|
||||||
|
>
|
||||||
|
<p>Try dropping some files here, or click to select files to upload.</p>
|
||||||
|
<p>Only *.jpeg and *.png images will be accepted</p>
|
||||||
|
</Dropzone>
|
||||||
|
</div>
|
||||||
|
<aside>
|
||||||
|
<h2>Accepted files</h2>
|
||||||
|
<ul>
|
||||||
|
{
|
||||||
|
this.state.accepted.map(f => <li key={f.name}>{f.name} - {f.size} bytes</li>)
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
<h2>Rejected files</h2>
|
||||||
|
<ul>
|
||||||
|
{
|
||||||
|
this.state.rejected.map(f => <li key={f.name}>{f.name} - {f.size} bytes</li>)
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
</aside>
|
||||||
|
</section>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
<Accept />
|
||||||
|
```
|
||||||
|
|
||||||
|
### Browser limitations
|
||||||
|
|
||||||
|
Because of HTML5 File API differences across different browsers during the drag, Dropzone will only display `rejected` styles in Chrome (and Chromium based browser). It isn't working in Safari nor IE.
|
||||||
|
|
||||||
|
Also, at this moment it's not possible to read file names (and thus, file extensions) during the drag operation. For that reason, if you want to react on different file types _during_ the drag operation, _you have to use_ mime types and not extensions! For example, the following example won't work even in Chrome:
|
||||||
|
|
||||||
|
```
|
||||||
|
<Dropzone
|
||||||
|
accept=".jpeg,.png"
|
||||||
|
>
|
||||||
|
{({ isDragActive, isDragReject }) => {
|
||||||
|
if (isDragActive) {
|
||||||
|
return "All files will be accepted";
|
||||||
|
}
|
||||||
|
if (isDragReject) {
|
||||||
|
return "Some files will be rejected";
|
||||||
|
}
|
||||||
|
return "Dropping some files here...";
|
||||||
|
}}
|
||||||
|
</Dropzone>
|
||||||
|
```
|
||||||
|
|
||||||
|
but this one will:
|
||||||
|
|
||||||
|
```
|
||||||
|
<Dropzone
|
||||||
|
accept="image/jpeg, image/png"
|
||||||
|
>
|
||||||
|
{({ isDragActive, isDragReject }) => {
|
||||||
|
if (isDragActive) {
|
||||||
|
return "All files will be accepted";
|
||||||
|
}
|
||||||
|
if (isDragReject) {
|
||||||
|
return "Some files will be rejected";
|
||||||
|
}
|
||||||
|
return "Dropping some files here...";
|
||||||
|
}}
|
||||||
|
</Dropzone>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Notes
|
||||||
|
|
||||||
|
Mime type determination is not reliable accross platforms. CSV files, for example, are reported as text/plain under macOS but as application/vnd.ms-excel under Windows. In some cases there might not be a mime type set at all.
|
||||||
|
|
80
goTorrentWebUI/node_modules/react-dropzone/examples/Basic/Readme.md
generated
vendored
Normal file
80
goTorrentWebUI/node_modules/react-dropzone/examples/Basic/Readme.md
generated
vendored
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
Dropzone with default properties and displays list of the dropped files.
|
||||||
|
|
||||||
|
```
|
||||||
|
class Basic extends React.Component {
|
||||||
|
constructor() {
|
||||||
|
super()
|
||||||
|
this.state = { files: [] }
|
||||||
|
}
|
||||||
|
|
||||||
|
onDrop(files) {
|
||||||
|
this.setState({
|
||||||
|
files
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
return (
|
||||||
|
<section>
|
||||||
|
<div className="dropzone">
|
||||||
|
<Dropzone onDrop={this.onDrop.bind(this)}>
|
||||||
|
<p>Try dropping some files here, or click to select files to upload.</p>
|
||||||
|
</Dropzone>
|
||||||
|
</div>
|
||||||
|
<aside>
|
||||||
|
<h2>Dropped files</h2>
|
||||||
|
<ul>
|
||||||
|
{
|
||||||
|
this.state.files.map(f => <li key={f.name}>{f.name} - {f.size} bytes</li>)
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
</aside>
|
||||||
|
</section>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
<Basic />
|
||||||
|
```
|
||||||
|
|
||||||
|
Dropzone with `disabled` property:
|
||||||
|
|
||||||
|
```
|
||||||
|
class Basic extends React.Component {
|
||||||
|
constructor() {
|
||||||
|
super()
|
||||||
|
this.state = { disabled: true, files: [] }
|
||||||
|
}
|
||||||
|
|
||||||
|
onDrop(files) {
|
||||||
|
this.setState({
|
||||||
|
files
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
return (
|
||||||
|
<section>
|
||||||
|
<aside>
|
||||||
|
<button type="button" onClick={() => this.setState({ disabled: !this.state.disabled })}>Toggle disabled</button>
|
||||||
|
</aside>
|
||||||
|
<div className="dropzone">
|
||||||
|
<Dropzone onDrop={this.onDrop.bind(this)} disabled={this.state.disabled}>
|
||||||
|
<p>Try dropping some files here, or click to select files to upload.</p>
|
||||||
|
</Dropzone>
|
||||||
|
</div>
|
||||||
|
<aside>
|
||||||
|
<h2>Dropped files</h2>
|
||||||
|
<ul>
|
||||||
|
{
|
||||||
|
this.state.files.map(f => <li>{f.name} - {f.size} bytes</li>)
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
</aside>
|
||||||
|
</section>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
<Basic />
|
||||||
|
```
|
16
goTorrentWebUI/node_modules/react-dropzone/examples/File Dialog/Readme.md
generated
vendored
Normal file
16
goTorrentWebUI/node_modules/react-dropzone/examples/File Dialog/Readme.md
generated
vendored
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
You can programmatically invoke default OS file prompt. In order to do that you'll have to set the ref on your `Dropzone` instance and call the instance `open` method.
|
||||||
|
|
||||||
|
```
|
||||||
|
let dropzoneRef;
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<Dropzone ref={(node) => { dropzoneRef = node; }} onDrop={(accepted, rejected) => { alert(accepted) }}>
|
||||||
|
<p>Drop files here.</p>
|
||||||
|
</Dropzone>
|
||||||
|
<button type="button" onClick={() => { dropzoneRef.open() }}>
|
||||||
|
Open File Dialog
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
```
|
||||||
|
|
||||||
|
The completion handler for the `open` function is also the `onDrop` function.
|
85
goTorrentWebUI/node_modules/react-dropzone/examples/Fullscreen/Readme.md
generated
vendored
Normal file
85
goTorrentWebUI/node_modules/react-dropzone/examples/Fullscreen/Readme.md
generated
vendored
Normal file
@@ -0,0 +1,85 @@
|
|||||||
|
You can wrap the whole app into the dropzone. This will make the whole app a Dropzone target.
|
||||||
|
|
||||||
|
```
|
||||||
|
class FullScreen extends React.Component {
|
||||||
|
constructor() {
|
||||||
|
super()
|
||||||
|
this.state = {
|
||||||
|
accept: '',
|
||||||
|
files: [],
|
||||||
|
dropzoneActive: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
onDragEnter() {
|
||||||
|
this.setState({
|
||||||
|
dropzoneActive: true
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
onDragLeave() {
|
||||||
|
this.setState({
|
||||||
|
dropzoneActive: false
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
onDrop(files) {
|
||||||
|
this.setState({
|
||||||
|
files,
|
||||||
|
dropzoneActive: false
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
applyMimeTypes(event) {
|
||||||
|
this.setState({
|
||||||
|
accept: event.target.value
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
render() {
|
||||||
|
const { accept, files, dropzoneActive } = this.state;
|
||||||
|
const overlayStyle = {
|
||||||
|
position: 'absolute',
|
||||||
|
top: 0,
|
||||||
|
right: 0,
|
||||||
|
bottom: 0,
|
||||||
|
left: 0,
|
||||||
|
padding: '2.5em 0',
|
||||||
|
background: 'rgba(0,0,0,0.5)',
|
||||||
|
textAlign: 'center',
|
||||||
|
color: '#fff'
|
||||||
|
};
|
||||||
|
return (
|
||||||
|
<Dropzone
|
||||||
|
disableClick
|
||||||
|
style={{position: "relative"}}
|
||||||
|
accept={accept}
|
||||||
|
onDrop={this.onDrop.bind(this)}
|
||||||
|
onDragEnter={this.onDragEnter.bind(this)}
|
||||||
|
onDragLeave={this.onDragLeave.bind(this)}
|
||||||
|
>
|
||||||
|
{ dropzoneActive && <div style={overlayStyle}>Drop files...</div> }
|
||||||
|
<div>
|
||||||
|
<h1>My awesome app</h1>
|
||||||
|
<label htmlFor="mimetypes">Enter mime types you want to accept: </label>
|
||||||
|
<input
|
||||||
|
type="text"
|
||||||
|
id="mimetypes"
|
||||||
|
onChange={this.applyMimeTypes.bind(this)}
|
||||||
|
/>
|
||||||
|
|
||||||
|
<h2>Dropped files</h2>
|
||||||
|
<ul>
|
||||||
|
{
|
||||||
|
files.map(f => <li>{f.name} - {f.size} bytes</li>)
|
||||||
|
}
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</Dropzone>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
<FullScreen />
|
||||||
|
```
|
23
goTorrentWebUI/node_modules/react-dropzone/examples/Styling/Readme.md
generated
vendored
Normal file
23
goTorrentWebUI/node_modules/react-dropzone/examples/Styling/Readme.md
generated
vendored
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
By default, the Dropzone component picks up some default styling to get you started. You can customize `<Dropzone>` by specifying a `style`, `activeStyle` or `rejectStyle` which is applied when a file is dragged over the zone. You can also specify `className`, `activeClassName` or `rejectClassName` if you would rather style using CSS.
|
||||||
|
|
||||||
|
## Updating styles and contents based on user input
|
||||||
|
|
||||||
|
By providing a function that returns the component's children you can not only style Dropzone appropriately but also render appropriate content.
|
||||||
|
|
||||||
|
```
|
||||||
|
<Dropzone
|
||||||
|
accept="image/png"
|
||||||
|
>
|
||||||
|
{({ isDragActive, isDragReject, acceptedFiles, rejectedFiles }) => {
|
||||||
|
if (isDragActive) {
|
||||||
|
return "This file is authorized";
|
||||||
|
}
|
||||||
|
if (isDragReject) {
|
||||||
|
return "This file is not authorized";
|
||||||
|
}
|
||||||
|
return acceptedFiles.length || rejectedFiles.length
|
||||||
|
? `Accepted ${acceptedFiles.length}, rejected ${rejectedFiles.length} files`
|
||||||
|
: "Try dropping some files.";
|
||||||
|
}}
|
||||||
|
</Dropzone>
|
||||||
|
```
|
12
goTorrentWebUI/node_modules/react-dropzone/examples/theme.css
generated
vendored
Normal file
12
goTorrentWebUI/node_modules/react-dropzone/examples/theme.css
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
section {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dropzone {
|
||||||
|
flex: 1 auto;
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
|
||||||
|
aside {
|
||||||
|
width: 50%;
|
||||||
|
}
|
15
goTorrentWebUI/node_modules/react-dropzone/node_modules/.bin/loose-envify
generated
vendored
Normal file
15
goTorrentWebUI/node_modules/react-dropzone/node_modules/.bin/loose-envify
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
||||||
|
|
||||||
|
case `uname` in
|
||||||
|
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [ -x "$basedir/node" ]; then
|
||||||
|
"$basedir/node" "$basedir/../loose-envify/cli.js" "$@"
|
||||||
|
ret=$?
|
||||||
|
else
|
||||||
|
node "$basedir/../loose-envify/cli.js" "$@"
|
||||||
|
ret=$?
|
||||||
|
fi
|
||||||
|
exit $ret
|
7
goTorrentWebUI/node_modules/react-dropzone/node_modules/.bin/loose-envify.cmd
generated
vendored
Normal file
7
goTorrentWebUI/node_modules/react-dropzone/node_modules/.bin/loose-envify.cmd
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
@IF EXIST "%~dp0\node.exe" (
|
||||||
|
"%~dp0\node.exe" "%~dp0\..\loose-envify\cli.js" %*
|
||||||
|
) ELSE (
|
||||||
|
@SETLOCAL
|
||||||
|
@SET PATHEXT=%PATHEXT:;.JS;=;%
|
||||||
|
node "%~dp0\..\loose-envify\cli.js" %*
|
||||||
|
)
|
70
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/CHANGES.md
generated
vendored
Normal file
70
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/CHANGES.md
generated
vendored
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
|
||||||
|
## 2.0.6
|
||||||
|
|
||||||
|
Version 2.0.4 adds support for React Native by clarifying in package.json that
|
||||||
|
the browser environment does not support Node.js domains.
|
||||||
|
Why this is necessary, we leave as an exercise for the user.
|
||||||
|
|
||||||
|
## 2.0.3
|
||||||
|
|
||||||
|
Version 2.0.3 fixes a bug when adjusting the capacity of the task queue.
|
||||||
|
|
||||||
|
## 2.0.1-2.02
|
||||||
|
|
||||||
|
Version 2.0.1 fixes a bug in the way redirects were expressed that affected the
|
||||||
|
function of Browserify, but which Mr would tolerate.
|
||||||
|
|
||||||
|
## 2.0.0
|
||||||
|
|
||||||
|
Version 2 of ASAP is a full rewrite with a few salient changes.
|
||||||
|
First, the ASAP source is CommonJS only and designed with [Browserify][] and
|
||||||
|
[Browserify-compatible][Mr] module loaders in mind.
|
||||||
|
|
||||||
|
[Browserify]: https://github.com/substack/node-browserify
|
||||||
|
[Mr]: https://github.com/montagejs/mr
|
||||||
|
|
||||||
|
The new version has been refactored in two dimensions.
|
||||||
|
Support for Node.js and browsers have been separated, using Browserify
|
||||||
|
redirects and ASAP has been divided into two modules.
|
||||||
|
The "raw" layer depends on the tasks to catch thrown exceptions and unravel
|
||||||
|
Node.js domains.
|
||||||
|
|
||||||
|
The full implementation of ASAP is loadable as `require("asap")` in both Node.js
|
||||||
|
and browsers.
|
||||||
|
|
||||||
|
The raw layer that lacks exception handling overhead is loadable as
|
||||||
|
`require("asap/raw")`.
|
||||||
|
The interface is the same for both layers.
|
||||||
|
|
||||||
|
Tasks are no longer required to be functions, but can rather be any object that
|
||||||
|
implements `task.call()`.
|
||||||
|
With this feature you can recycle task objects to avoid garbage collector churn
|
||||||
|
and avoid closures in general.
|
||||||
|
|
||||||
|
The implementation has been rigorously documented so that our successors can
|
||||||
|
understand the scope of the problem that this module solves and all of its
|
||||||
|
nuances, ensuring that the next generation of implementations know what details
|
||||||
|
are essential.
|
||||||
|
|
||||||
|
- [asap.js](https://github.com/kriskowal/asap/blob/master/asap.js)
|
||||||
|
- [raw.js](https://github.com/kriskowal/asap/blob/master/raw.js)
|
||||||
|
- [browser-asap.js](https://github.com/kriskowal/asap/blob/master/browser-asap.js)
|
||||||
|
- [browser-raw.js](https://github.com/kriskowal/asap/blob/master/browser-raw.js)
|
||||||
|
|
||||||
|
The new version has also been rigorously tested across a broad spectrum of
|
||||||
|
browsers, in both the window and worker context.
|
||||||
|
The following charts capture the browser test results for the most recent
|
||||||
|
release.
|
||||||
|
The first chart shows test results for ASAP running in the main window context.
|
||||||
|
The second chart shows test results for ASAP running in a web worker context.
|
||||||
|
Test results are inconclusive (grey) on browsers that do not support web
|
||||||
|
workers.
|
||||||
|
These data are captured automatically by [Continuous
|
||||||
|
Integration][].
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
[Continuous Integration]: https://github.com/kriskowal/asap/blob/master/CONTRIBUTING.md
|
||||||
|
|
21
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/LICENSE.md
generated
vendored
Normal file
21
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/LICENSE.md
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
|
||||||
|
Copyright 2009–2014 Contributors. All rights reserved.
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to
|
||||||
|
deal in the Software without restriction, including without limitation the
|
||||||
|
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
IN THE SOFTWARE.
|
||||||
|
|
237
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/README.md
generated
vendored
Normal file
237
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/README.md
generated
vendored
Normal file
@@ -0,0 +1,237 @@
|
|||||||
|
# ASAP
|
||||||
|
|
||||||
|
[](https://travis-ci.org/kriskowal/asap)
|
||||||
|
|
||||||
|
Promise and asynchronous observer libraries, as well as hand-rolled callback
|
||||||
|
programs and libraries, often need a mechanism to postpone the execution of a
|
||||||
|
callback until the next available event.
|
||||||
|
(See [Designing API’s for Asynchrony][Zalgo].)
|
||||||
|
The `asap` function executes a task **as soon as possible** but not before it
|
||||||
|
returns, waiting only for the completion of the current event and previously
|
||||||
|
scheduled tasks.
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
asap(function () {
|
||||||
|
// ...
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
[Zalgo]: http://blog.izs.me/post/59142742143/designing-apis-for-asynchrony
|
||||||
|
|
||||||
|
This CommonJS package provides an `asap` module that exports a function that
|
||||||
|
executes a task function *as soon as possible*.
|
||||||
|
|
||||||
|
ASAP strives to schedule events to occur before yielding for IO, reflow,
|
||||||
|
or redrawing.
|
||||||
|
Each event receives an independent stack, with only platform code in parent
|
||||||
|
frames and the events run in the order they are scheduled.
|
||||||
|
|
||||||
|
ASAP provides a fast event queue that will execute tasks until it is
|
||||||
|
empty before yielding to the JavaScript engine's underlying event-loop.
|
||||||
|
When a task gets added to a previously empty event queue, ASAP schedules a flush
|
||||||
|
event, preferring for that event to occur before the JavaScript engine has an
|
||||||
|
opportunity to perform IO tasks or rendering, thus making the first task and
|
||||||
|
subsequent tasks semantically indistinguishable.
|
||||||
|
ASAP uses a variety of techniques to preserve this invariant on different
|
||||||
|
versions of browsers and Node.js.
|
||||||
|
|
||||||
|
By design, ASAP prevents input events from being handled until the task
|
||||||
|
queue is empty.
|
||||||
|
If the process is busy enough, this may cause incoming connection requests to be
|
||||||
|
dropped, and may cause existing connections to inform the sender to reduce the
|
||||||
|
transmission rate or stall.
|
||||||
|
ASAP allows this on the theory that, if there is enough work to do, there is no
|
||||||
|
sense in looking for trouble.
|
||||||
|
As a consequence, ASAP can interfere with smooth animation.
|
||||||
|
If your task should be tied to the rendering loop, consider using
|
||||||
|
`requestAnimationFrame` instead.
|
||||||
|
A long sequence of tasks can also effect the long running script dialog.
|
||||||
|
If this is a problem, you may be able to use ASAP’s cousin `setImmediate` to
|
||||||
|
break long processes into shorter intervals and periodically allow the browser
|
||||||
|
to breathe.
|
||||||
|
`setImmediate` will yield for IO, reflow, and repaint events.
|
||||||
|
It also returns a handler and can be canceled.
|
||||||
|
For a `setImmediate` shim, consider [YuzuJS setImmediate][setImmediate].
|
||||||
|
|
||||||
|
[setImmediate]: https://github.com/YuzuJS/setImmediate
|
||||||
|
|
||||||
|
Take care.
|
||||||
|
ASAP can sustain infinite recursive calls without warning.
|
||||||
|
It will not halt from a stack overflow, and it will not consume unbounded
|
||||||
|
memory.
|
||||||
|
This is behaviorally equivalent to an infinite loop.
|
||||||
|
Just as with infinite loops, you can monitor a Node.js process for this behavior
|
||||||
|
with a heart-beat signal.
|
||||||
|
As with infinite loops, a very small amount of caution goes a long way to
|
||||||
|
avoiding problems.
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
function loop() {
|
||||||
|
asap(loop);
|
||||||
|
}
|
||||||
|
loop();
|
||||||
|
```
|
||||||
|
|
||||||
|
In browsers, if a task throws an exception, it will not interrupt the flushing
|
||||||
|
of high-priority tasks.
|
||||||
|
The exception will be postponed to a later, low-priority event to avoid
|
||||||
|
slow-downs.
|
||||||
|
In Node.js, if a task throws an exception, ASAP will resume flushing only if—and
|
||||||
|
only after—the error is handled by `domain.on("error")` or
|
||||||
|
`process.on("uncaughtException")`.
|
||||||
|
|
||||||
|
## Raw ASAP
|
||||||
|
|
||||||
|
Checking for exceptions comes at a cost.
|
||||||
|
The package also provides an `asap/raw` module that exports the underlying
|
||||||
|
implementation which is faster but stalls if a task throws an exception.
|
||||||
|
This internal version of the ASAP function does not check for errors.
|
||||||
|
If a task does throw an error, it will stall the event queue unless you manually
|
||||||
|
call `rawAsap.requestFlush()` before throwing the error, or any time after.
|
||||||
|
|
||||||
|
In Node.js, `asap/raw` also runs all tasks outside any domain.
|
||||||
|
If you need a task to be bound to your domain, you will have to do it manually.
|
||||||
|
|
||||||
|
```js
|
||||||
|
if (process.domain) {
|
||||||
|
task = process.domain.bind(task);
|
||||||
|
}
|
||||||
|
rawAsap(task);
|
||||||
|
```
|
||||||
|
|
||||||
|
## Tasks
|
||||||
|
|
||||||
|
A task may be any object that implements `call()`.
|
||||||
|
A function will suffice, but closures tend not to be reusable and can cause
|
||||||
|
garbage collector churn.
|
||||||
|
Both `asap` and `rawAsap` accept task objects to give you the option of
|
||||||
|
recycling task objects or using higher callable object abstractions.
|
||||||
|
See the `asap` source for an illustration.
|
||||||
|
|
||||||
|
|
||||||
|
## Compatibility
|
||||||
|
|
||||||
|
ASAP is tested on Node.js v0.10 and in a broad spectrum of web browsers.
|
||||||
|
The following charts capture the browser test results for the most recent
|
||||||
|
release.
|
||||||
|
The first chart shows test results for ASAP running in the main window context.
|
||||||
|
The second chart shows test results for ASAP running in a web worker context.
|
||||||
|
Test results are inconclusive (grey) on browsers that do not support web
|
||||||
|
workers.
|
||||||
|
These data are captured automatically by [Continuous
|
||||||
|
Integration][].
|
||||||
|
|
||||||
|
[Continuous Integration]: https://github.com/kriskowal/asap/blob/master/CONTRIBUTING.md
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Caveats
|
||||||
|
|
||||||
|
When a task is added to an empty event queue, it is not always possible to
|
||||||
|
guarantee that the task queue will begin flushing immediately after the current
|
||||||
|
event.
|
||||||
|
However, once the task queue begins flushing, it will not yield until the queue
|
||||||
|
is empty, even if the queue grows while executing tasks.
|
||||||
|
|
||||||
|
The following browsers allow the use of [DOM mutation observers][] to access
|
||||||
|
the HTML [microtask queue][], and thus begin flushing ASAP's task queue
|
||||||
|
immediately at the end of the current event loop turn, before any rendering or
|
||||||
|
IO:
|
||||||
|
|
||||||
|
[microtask queue]: http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#microtask-queue
|
||||||
|
[DOM mutation observers]: http://dom.spec.whatwg.org/#mutation-observers
|
||||||
|
|
||||||
|
- Android 4–4.3
|
||||||
|
- Chrome 26–34
|
||||||
|
- Firefox 14–29
|
||||||
|
- Internet Explorer 11
|
||||||
|
- iPad Safari 6–7.1
|
||||||
|
- iPhone Safari 7–7.1
|
||||||
|
- Safari 6–7
|
||||||
|
|
||||||
|
In the absense of mutation observers, there are a few browsers, and situations
|
||||||
|
like web workers in some of the above browsers, where [message channels][]
|
||||||
|
would be a useful way to avoid falling back to timers.
|
||||||
|
Message channels give direct access to the HTML [task queue][], so the ASAP
|
||||||
|
task queue would flush after any already queued rendering and IO tasks, but
|
||||||
|
without having the minimum delay imposed by timers.
|
||||||
|
However, among these browsers, Internet Explorer 10 and Safari do not reliably
|
||||||
|
dispatch messages, so they are not worth the trouble to implement.
|
||||||
|
|
||||||
|
[message channels]: http://www.whatwg.org/specs/web-apps/current-work/multipage/web-messaging.html#message-channels
|
||||||
|
[task queue]: http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#concept-task
|
||||||
|
|
||||||
|
- Internet Explorer 10
|
||||||
|
- Safair 5.0-1
|
||||||
|
- Opera 11-12
|
||||||
|
|
||||||
|
In the absense of mutation observers, these browsers and the following browsers
|
||||||
|
all fall back to using `setTimeout` and `setInterval` to ensure that a `flush`
|
||||||
|
occurs.
|
||||||
|
The implementation uses both and cancels whatever handler loses the race, since
|
||||||
|
`setTimeout` tends to occasionally skip tasks in unisolated circumstances.
|
||||||
|
Timers generally delay the flushing of ASAP's task queue for four milliseconds.
|
||||||
|
|
||||||
|
- Firefox 3–13
|
||||||
|
- Internet Explorer 6–10
|
||||||
|
- iPad Safari 4.3
|
||||||
|
- Lynx 2.8.7
|
||||||
|
|
||||||
|
|
||||||
|
## Heritage
|
||||||
|
|
||||||
|
ASAP has been factored out of the [Q][] asynchronous promise library.
|
||||||
|
It originally had a naïve implementation in terms of `setTimeout`, but
|
||||||
|
[Malte Ubl][NonBlocking] provided an insight that `postMessage` might be
|
||||||
|
useful for creating a high-priority, no-delay event dispatch hack.
|
||||||
|
Since then, Internet Explorer proposed and implemented `setImmediate`.
|
||||||
|
Robert Katić began contributing to Q by measuring the performance of
|
||||||
|
the internal implementation of `asap`, paying particular attention to
|
||||||
|
error recovery.
|
||||||
|
Domenic, Robert, and Kris Kowal collectively settled on the current strategy of
|
||||||
|
unrolling the high-priority event queue internally regardless of what strategy
|
||||||
|
we used to dispatch the potentially lower-priority flush event.
|
||||||
|
Domenic went on to make ASAP cooperate with Node.js domains.
|
||||||
|
|
||||||
|
[Q]: https://github.com/kriskowal/q
|
||||||
|
[NonBlocking]: http://www.nonblocking.io/2011/06/windownexttick.html
|
||||||
|
|
||||||
|
For further reading, Nicholas Zakas provided a thorough article on [The
|
||||||
|
Case for setImmediate][NCZ].
|
||||||
|
|
||||||
|
[NCZ]: http://www.nczonline.net/blog/2013/07/09/the-case-for-setimmediate/
|
||||||
|
|
||||||
|
Ember’s RSVP promise implementation later [adopted][RSVP ASAP] the name ASAP but
|
||||||
|
further developed the implentation.
|
||||||
|
Particularly, The `MessagePort` implementation was abandoned due to interaction
|
||||||
|
[problems with Mobile Internet Explorer][IE Problems] in favor of an
|
||||||
|
implementation backed on the newer and more reliable DOM `MutationObserver`
|
||||||
|
interface.
|
||||||
|
These changes were back-ported into this library.
|
||||||
|
|
||||||
|
[IE Problems]: https://github.com/cujojs/when/issues/197
|
||||||
|
[RSVP ASAP]: https://github.com/tildeio/rsvp.js/blob/cddf7232546a9cf858524b75cde6f9edf72620a7/lib/rsvp/asap.js
|
||||||
|
|
||||||
|
In addition, ASAP factored into `asap` and `asap/raw`, such that `asap` remained
|
||||||
|
exception-safe, but `asap/raw` provided a tight kernel that could be used for
|
||||||
|
tasks that guaranteed that they would not throw exceptions.
|
||||||
|
This core is useful for promise implementations that capture thrown errors in
|
||||||
|
rejected promises and do not need a second safety net.
|
||||||
|
At the same time, the exception handling in `asap` was factored into separate
|
||||||
|
implementations for Node.js and browsers, using the the [Browserify][Browser
|
||||||
|
Config] `browser` property in `package.json` to instruct browser module loaders
|
||||||
|
and bundlers, including [Browserify][], [Mr][], and [Mop][], to use the
|
||||||
|
browser-only implementation.
|
||||||
|
|
||||||
|
[Browser Config]: https://gist.github.com/defunctzombie/4339901
|
||||||
|
[Browserify]: https://github.com/substack/node-browserify
|
||||||
|
[Mr]: https://github.com/montagejs/mr
|
||||||
|
[Mop]: https://github.com/montagejs/mop
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
Copyright 2009-2014 by Contributors
|
||||||
|
MIT License (enclosed)
|
||||||
|
|
65
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/asap.js
generated
vendored
Normal file
65
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/asap.js
generated
vendored
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
var rawAsap = require("./raw");
|
||||||
|
var freeTasks = [];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calls a task as soon as possible after returning, in its own event, with
|
||||||
|
* priority over IO events. An exception thrown in a task can be handled by
|
||||||
|
* `process.on("uncaughtException") or `domain.on("error")`, but will otherwise
|
||||||
|
* crash the process. If the error is handled, all subsequent tasks will
|
||||||
|
* resume.
|
||||||
|
*
|
||||||
|
* @param {{call}} task A callable object, typically a function that takes no
|
||||||
|
* arguments.
|
||||||
|
*/
|
||||||
|
module.exports = asap;
|
||||||
|
function asap(task) {
|
||||||
|
var rawTask;
|
||||||
|
if (freeTasks.length) {
|
||||||
|
rawTask = freeTasks.pop();
|
||||||
|
} else {
|
||||||
|
rawTask = new RawTask();
|
||||||
|
}
|
||||||
|
rawTask.task = task;
|
||||||
|
rawTask.domain = process.domain;
|
||||||
|
rawAsap(rawTask);
|
||||||
|
}
|
||||||
|
|
||||||
|
function RawTask() {
|
||||||
|
this.task = null;
|
||||||
|
this.domain = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
RawTask.prototype.call = function () {
|
||||||
|
if (this.domain) {
|
||||||
|
this.domain.enter();
|
||||||
|
}
|
||||||
|
var threw = true;
|
||||||
|
try {
|
||||||
|
this.task.call();
|
||||||
|
threw = false;
|
||||||
|
// If the task throws an exception (presumably) Node.js restores the
|
||||||
|
// domain stack for the next event.
|
||||||
|
if (this.domain) {
|
||||||
|
this.domain.exit();
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
// We use try/finally and a threw flag to avoid messing up stack traces
|
||||||
|
// when we catch and release errors.
|
||||||
|
if (threw) {
|
||||||
|
// In Node.js, uncaught exceptions are considered fatal errors.
|
||||||
|
// Re-throw them to interrupt flushing!
|
||||||
|
// Ensure that flushing continues if an uncaught exception is
|
||||||
|
// suppressed listening process.on("uncaughtException") or
|
||||||
|
// domain.on("error").
|
||||||
|
rawAsap.requestFlush();
|
||||||
|
}
|
||||||
|
// If the task threw an error, we do not want to exit the domain here.
|
||||||
|
// Exiting the domain would prevent the domain from catching the error.
|
||||||
|
this.task = null;
|
||||||
|
this.domain = null;
|
||||||
|
freeTasks.push(this);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
66
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/browser-asap.js
generated
vendored
Normal file
66
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/browser-asap.js
generated
vendored
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
// rawAsap provides everything we need except exception management.
|
||||||
|
var rawAsap = require("./raw");
|
||||||
|
// RawTasks are recycled to reduce GC churn.
|
||||||
|
var freeTasks = [];
|
||||||
|
// We queue errors to ensure they are thrown in right order (FIFO).
|
||||||
|
// Array-as-queue is good enough here, since we are just dealing with exceptions.
|
||||||
|
var pendingErrors = [];
|
||||||
|
var requestErrorThrow = rawAsap.makeRequestCallFromTimer(throwFirstError);
|
||||||
|
|
||||||
|
function throwFirstError() {
|
||||||
|
if (pendingErrors.length) {
|
||||||
|
throw pendingErrors.shift();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Calls a task as soon as possible after returning, in its own event, with priority
|
||||||
|
* over other events like animation, reflow, and repaint. An error thrown from an
|
||||||
|
* event will not interrupt, nor even substantially slow down the processing of
|
||||||
|
* other events, but will be rather postponed to a lower priority event.
|
||||||
|
* @param {{call}} task A callable object, typically a function that takes no
|
||||||
|
* arguments.
|
||||||
|
*/
|
||||||
|
module.exports = asap;
|
||||||
|
function asap(task) {
|
||||||
|
var rawTask;
|
||||||
|
if (freeTasks.length) {
|
||||||
|
rawTask = freeTasks.pop();
|
||||||
|
} else {
|
||||||
|
rawTask = new RawTask();
|
||||||
|
}
|
||||||
|
rawTask.task = task;
|
||||||
|
rawAsap(rawTask);
|
||||||
|
}
|
||||||
|
|
||||||
|
// We wrap tasks with recyclable task objects. A task object implements
|
||||||
|
// `call`, just like a function.
|
||||||
|
function RawTask() {
|
||||||
|
this.task = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// The sole purpose of wrapping the task is to catch the exception and recycle
|
||||||
|
// the task object after its single use.
|
||||||
|
RawTask.prototype.call = function () {
|
||||||
|
try {
|
||||||
|
this.task.call();
|
||||||
|
} catch (error) {
|
||||||
|
if (asap.onerror) {
|
||||||
|
// This hook exists purely for testing purposes.
|
||||||
|
// Its name will be periodically randomized to break any code that
|
||||||
|
// depends on its existence.
|
||||||
|
asap.onerror(error);
|
||||||
|
} else {
|
||||||
|
// In a web browser, exceptions are not fatal. However, to avoid
|
||||||
|
// slowing down the queue of pending tasks, we rethrow the error in a
|
||||||
|
// lower priority turn.
|
||||||
|
pendingErrors.push(error);
|
||||||
|
requestErrorThrow();
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
this.task = null;
|
||||||
|
freeTasks[freeTasks.length] = this;
|
||||||
|
}
|
||||||
|
};
|
223
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/browser-raw.js
generated
vendored
Normal file
223
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/browser-raw.js
generated
vendored
Normal file
@@ -0,0 +1,223 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
// Use the fastest means possible to execute a task in its own turn, with
|
||||||
|
// priority over other events including IO, animation, reflow, and redraw
|
||||||
|
// events in browsers.
|
||||||
|
//
|
||||||
|
// An exception thrown by a task will permanently interrupt the processing of
|
||||||
|
// subsequent tasks. The higher level `asap` function ensures that if an
|
||||||
|
// exception is thrown by a task, that the task queue will continue flushing as
|
||||||
|
// soon as possible, but if you use `rawAsap` directly, you are responsible to
|
||||||
|
// either ensure that no exceptions are thrown from your task, or to manually
|
||||||
|
// call `rawAsap.requestFlush` if an exception is thrown.
|
||||||
|
module.exports = rawAsap;
|
||||||
|
function rawAsap(task) {
|
||||||
|
if (!queue.length) {
|
||||||
|
requestFlush();
|
||||||
|
flushing = true;
|
||||||
|
}
|
||||||
|
// Equivalent to push, but avoids a function call.
|
||||||
|
queue[queue.length] = task;
|
||||||
|
}
|
||||||
|
|
||||||
|
var queue = [];
|
||||||
|
// Once a flush has been requested, no further calls to `requestFlush` are
|
||||||
|
// necessary until the next `flush` completes.
|
||||||
|
var flushing = false;
|
||||||
|
// `requestFlush` is an implementation-specific method that attempts to kick
|
||||||
|
// off a `flush` event as quickly as possible. `flush` will attempt to exhaust
|
||||||
|
// the event queue before yielding to the browser's own event loop.
|
||||||
|
var requestFlush;
|
||||||
|
// The position of the next task to execute in the task queue. This is
|
||||||
|
// preserved between calls to `flush` so that it can be resumed if
|
||||||
|
// a task throws an exception.
|
||||||
|
var index = 0;
|
||||||
|
// If a task schedules additional tasks recursively, the task queue can grow
|
||||||
|
// unbounded. To prevent memory exhaustion, the task queue will periodically
|
||||||
|
// truncate already-completed tasks.
|
||||||
|
var capacity = 1024;
|
||||||
|
|
||||||
|
// The flush function processes all tasks that have been scheduled with
|
||||||
|
// `rawAsap` unless and until one of those tasks throws an exception.
|
||||||
|
// If a task throws an exception, `flush` ensures that its state will remain
|
||||||
|
// consistent and will resume where it left off when called again.
|
||||||
|
// However, `flush` does not make any arrangements to be called again if an
|
||||||
|
// exception is thrown.
|
||||||
|
function flush() {
|
||||||
|
while (index < queue.length) {
|
||||||
|
var currentIndex = index;
|
||||||
|
// Advance the index before calling the task. This ensures that we will
|
||||||
|
// begin flushing on the next task the task throws an error.
|
||||||
|
index = index + 1;
|
||||||
|
queue[currentIndex].call();
|
||||||
|
// Prevent leaking memory for long chains of recursive calls to `asap`.
|
||||||
|
// If we call `asap` within tasks scheduled by `asap`, the queue will
|
||||||
|
// grow, but to avoid an O(n) walk for every task we execute, we don't
|
||||||
|
// shift tasks off the queue after they have been executed.
|
||||||
|
// Instead, we periodically shift 1024 tasks off the queue.
|
||||||
|
if (index > capacity) {
|
||||||
|
// Manually shift all values starting at the index back to the
|
||||||
|
// beginning of the queue.
|
||||||
|
for (var scan = 0, newLength = queue.length - index; scan < newLength; scan++) {
|
||||||
|
queue[scan] = queue[scan + index];
|
||||||
|
}
|
||||||
|
queue.length -= index;
|
||||||
|
index = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
queue.length = 0;
|
||||||
|
index = 0;
|
||||||
|
flushing = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// `requestFlush` is implemented using a strategy based on data collected from
|
||||||
|
// every available SauceLabs Selenium web driver worker at time of writing.
|
||||||
|
// https://docs.google.com/spreadsheets/d/1mG-5UYGup5qxGdEMWkhP6BWCz053NUb2E1QoUTU16uA/edit#gid=783724593
|
||||||
|
|
||||||
|
// Safari 6 and 6.1 for desktop, iPad, and iPhone are the only browsers that
|
||||||
|
// have WebKitMutationObserver but not un-prefixed MutationObserver.
|
||||||
|
// Must use `global` or `self` instead of `window` to work in both frames and web
|
||||||
|
// workers. `global` is a provision of Browserify, Mr, Mrs, or Mop.
|
||||||
|
|
||||||
|
/* globals self */
|
||||||
|
var scope = typeof global !== "undefined" ? global : self;
|
||||||
|
var BrowserMutationObserver = scope.MutationObserver || scope.WebKitMutationObserver;
|
||||||
|
|
||||||
|
// MutationObservers are desirable because they have high priority and work
|
||||||
|
// reliably everywhere they are implemented.
|
||||||
|
// They are implemented in all modern browsers.
|
||||||
|
//
|
||||||
|
// - Android 4-4.3
|
||||||
|
// - Chrome 26-34
|
||||||
|
// - Firefox 14-29
|
||||||
|
// - Internet Explorer 11
|
||||||
|
// - iPad Safari 6-7.1
|
||||||
|
// - iPhone Safari 7-7.1
|
||||||
|
// - Safari 6-7
|
||||||
|
if (typeof BrowserMutationObserver === "function") {
|
||||||
|
requestFlush = makeRequestCallFromMutationObserver(flush);
|
||||||
|
|
||||||
|
// MessageChannels are desirable because they give direct access to the HTML
|
||||||
|
// task queue, are implemented in Internet Explorer 10, Safari 5.0-1, and Opera
|
||||||
|
// 11-12, and in web workers in many engines.
|
||||||
|
// Although message channels yield to any queued rendering and IO tasks, they
|
||||||
|
// would be better than imposing the 4ms delay of timers.
|
||||||
|
// However, they do not work reliably in Internet Explorer or Safari.
|
||||||
|
|
||||||
|
// Internet Explorer 10 is the only browser that has setImmediate but does
|
||||||
|
// not have MutationObservers.
|
||||||
|
// Although setImmediate yields to the browser's renderer, it would be
|
||||||
|
// preferrable to falling back to setTimeout since it does not have
|
||||||
|
// the minimum 4ms penalty.
|
||||||
|
// Unfortunately there appears to be a bug in Internet Explorer 10 Mobile (and
|
||||||
|
// Desktop to a lesser extent) that renders both setImmediate and
|
||||||
|
// MessageChannel useless for the purposes of ASAP.
|
||||||
|
// https://github.com/kriskowal/q/issues/396
|
||||||
|
|
||||||
|
// Timers are implemented universally.
|
||||||
|
// We fall back to timers in workers in most engines, and in foreground
|
||||||
|
// contexts in the following browsers.
|
||||||
|
// However, note that even this simple case requires nuances to operate in a
|
||||||
|
// broad spectrum of browsers.
|
||||||
|
//
|
||||||
|
// - Firefox 3-13
|
||||||
|
// - Internet Explorer 6-9
|
||||||
|
// - iPad Safari 4.3
|
||||||
|
// - Lynx 2.8.7
|
||||||
|
} else {
|
||||||
|
requestFlush = makeRequestCallFromTimer(flush);
|
||||||
|
}
|
||||||
|
|
||||||
|
// `requestFlush` requests that the high priority event queue be flushed as
|
||||||
|
// soon as possible.
|
||||||
|
// This is useful to prevent an error thrown in a task from stalling the event
|
||||||
|
// queue if the exception handled by Node.js’s
|
||||||
|
// `process.on("uncaughtException")` or by a domain.
|
||||||
|
rawAsap.requestFlush = requestFlush;
|
||||||
|
|
||||||
|
// To request a high priority event, we induce a mutation observer by toggling
|
||||||
|
// the text of a text node between "1" and "-1".
|
||||||
|
function makeRequestCallFromMutationObserver(callback) {
|
||||||
|
var toggle = 1;
|
||||||
|
var observer = new BrowserMutationObserver(callback);
|
||||||
|
var node = document.createTextNode("");
|
||||||
|
observer.observe(node, {characterData: true});
|
||||||
|
return function requestCall() {
|
||||||
|
toggle = -toggle;
|
||||||
|
node.data = toggle;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
// The message channel technique was discovered by Malte Ubl and was the
|
||||||
|
// original foundation for this library.
|
||||||
|
// http://www.nonblocking.io/2011/06/windownexttick.html
|
||||||
|
|
||||||
|
// Safari 6.0.5 (at least) intermittently fails to create message ports on a
|
||||||
|
// page's first load. Thankfully, this version of Safari supports
|
||||||
|
// MutationObservers, so we don't need to fall back in that case.
|
||||||
|
|
||||||
|
// function makeRequestCallFromMessageChannel(callback) {
|
||||||
|
// var channel = new MessageChannel();
|
||||||
|
// channel.port1.onmessage = callback;
|
||||||
|
// return function requestCall() {
|
||||||
|
// channel.port2.postMessage(0);
|
||||||
|
// };
|
||||||
|
// }
|
||||||
|
|
||||||
|
// For reasons explained above, we are also unable to use `setImmediate`
|
||||||
|
// under any circumstances.
|
||||||
|
// Even if we were, there is another bug in Internet Explorer 10.
|
||||||
|
// It is not sufficient to assign `setImmediate` to `requestFlush` because
|
||||||
|
// `setImmediate` must be called *by name* and therefore must be wrapped in a
|
||||||
|
// closure.
|
||||||
|
// Never forget.
|
||||||
|
|
||||||
|
// function makeRequestCallFromSetImmediate(callback) {
|
||||||
|
// return function requestCall() {
|
||||||
|
// setImmediate(callback);
|
||||||
|
// };
|
||||||
|
// }
|
||||||
|
|
||||||
|
// Safari 6.0 has a problem where timers will get lost while the user is
|
||||||
|
// scrolling. This problem does not impact ASAP because Safari 6.0 supports
|
||||||
|
// mutation observers, so that implementation is used instead.
|
||||||
|
// However, if we ever elect to use timers in Safari, the prevalent work-around
|
||||||
|
// is to add a scroll event listener that calls for a flush.
|
||||||
|
|
||||||
|
// `setTimeout` does not call the passed callback if the delay is less than
|
||||||
|
// approximately 7 in web workers in Firefox 8 through 18, and sometimes not
|
||||||
|
// even then.
|
||||||
|
|
||||||
|
function makeRequestCallFromTimer(callback) {
|
||||||
|
return function requestCall() {
|
||||||
|
// We dispatch a timeout with a specified delay of 0 for engines that
|
||||||
|
// can reliably accommodate that request. This will usually be snapped
|
||||||
|
// to a 4 milisecond delay, but once we're flushing, there's no delay
|
||||||
|
// between events.
|
||||||
|
var timeoutHandle = setTimeout(handleTimer, 0);
|
||||||
|
// However, since this timer gets frequently dropped in Firefox
|
||||||
|
// workers, we enlist an interval handle that will try to fire
|
||||||
|
// an event 20 times per second until it succeeds.
|
||||||
|
var intervalHandle = setInterval(handleTimer, 50);
|
||||||
|
|
||||||
|
function handleTimer() {
|
||||||
|
// Whichever timer succeeds will cancel both timers and
|
||||||
|
// execute the callback.
|
||||||
|
clearTimeout(timeoutHandle);
|
||||||
|
clearInterval(intervalHandle);
|
||||||
|
callback();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
// This is for `asap.js` only.
|
||||||
|
// Its name will be periodically randomized to break any code that depends on
|
||||||
|
// its existence.
|
||||||
|
rawAsap.makeRequestCallFromTimer = makeRequestCallFromTimer;
|
||||||
|
|
||||||
|
// ASAP was originally a nextTick shim included in Q. This was factored out
|
||||||
|
// into this ASAP package. It was later adapted to RSVP which made further
|
||||||
|
// amendments. These decisions, particularly to marginalize MessageChannel and
|
||||||
|
// to capture the MutationObserver implementation in a closure, were integrated
|
||||||
|
// back into ASAP proper.
|
||||||
|
// https://github.com/tildeio/rsvp.js/blob/cddf7232546a9cf858524b75cde6f9edf72620a7/lib/rsvp/asap.js
|
87
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/package.json
generated
vendored
Normal file
87
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/package.json
generated
vendored
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
{
|
||||||
|
"_from": "asap@~2.0.3",
|
||||||
|
"_id": "asap@2.0.6",
|
||||||
|
"_inBundle": false,
|
||||||
|
"_integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
|
||||||
|
"_location": "/react-dropzone/asap",
|
||||||
|
"_phantomChildren": {},
|
||||||
|
"_requested": {
|
||||||
|
"type": "range",
|
||||||
|
"registry": true,
|
||||||
|
"raw": "asap@~2.0.3",
|
||||||
|
"name": "asap",
|
||||||
|
"escapedName": "asap",
|
||||||
|
"rawSpec": "~2.0.3",
|
||||||
|
"saveSpec": null,
|
||||||
|
"fetchSpec": "~2.0.3"
|
||||||
|
},
|
||||||
|
"_requiredBy": [
|
||||||
|
"/react-dropzone/promise"
|
||||||
|
],
|
||||||
|
"_resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
|
||||||
|
"_shasum": "e50347611d7e690943208bbdafebcbc2fb866d46",
|
||||||
|
"_spec": "asap@~2.0.3",
|
||||||
|
"_where": "C:\\Users\\deranjer\\go\\src\\github.com\\deranjer\\goTorrent\\goTorrentWebUI\\node_modules\\react-dropzone\\node_modules\\promise",
|
||||||
|
"browser": {
|
||||||
|
"./asap": "./browser-asap.js",
|
||||||
|
"./asap.js": "./browser-asap.js",
|
||||||
|
"./raw": "./browser-raw.js",
|
||||||
|
"./raw.js": "./browser-raw.js",
|
||||||
|
"./test/domain.js": "./test/browser-domain.js"
|
||||||
|
},
|
||||||
|
"bugs": {
|
||||||
|
"url": "https://github.com/kriskowal/asap/issues"
|
||||||
|
},
|
||||||
|
"bundleDependencies": false,
|
||||||
|
"deprecated": false,
|
||||||
|
"description": "High-priority task queue for Node.js and browsers",
|
||||||
|
"devDependencies": {
|
||||||
|
"benchmark": "^1.0.0",
|
||||||
|
"events": "^1.0.1",
|
||||||
|
"jshint": "^2.5.1",
|
||||||
|
"knox": "^0.8.10",
|
||||||
|
"mr": "^2.0.5",
|
||||||
|
"opener": "^1.3.0",
|
||||||
|
"q": "^2.0.3",
|
||||||
|
"q-io": "^2.0.3",
|
||||||
|
"saucelabs": "^0.1.1",
|
||||||
|
"wd": "^0.2.21",
|
||||||
|
"weak-map": "^1.0.5"
|
||||||
|
},
|
||||||
|
"files": [
|
||||||
|
"raw.js",
|
||||||
|
"asap.js",
|
||||||
|
"browser-raw.js",
|
||||||
|
"browser-asap.js"
|
||||||
|
],
|
||||||
|
"homepage": "https://github.com/kriskowal/asap#readme",
|
||||||
|
"keywords": [
|
||||||
|
"event",
|
||||||
|
"task",
|
||||||
|
"queue"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"main": "./asap.js",
|
||||||
|
"name": "asap",
|
||||||
|
"react-native": {
|
||||||
|
"domain": false
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://github.com/kriskowal/asap.git"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"benchmarks": "node benchmarks",
|
||||||
|
"lint": "jshint raw.js asap.js browser-raw.js browser-asap.js $(find scripts -name '*.js' | grep -v gauntlet)",
|
||||||
|
"test": "npm run lint && npm run test-node",
|
||||||
|
"test-browser": "node scripts/publish-bundle.js test/asap-test.js | xargs opener",
|
||||||
|
"test-node": "node test/asap-test.js",
|
||||||
|
"test-publish": "node scripts/publish-bundle.js test/asap-test.js | pbcopy",
|
||||||
|
"test-saucelabs": "node scripts/saucelabs.js test/asap-test.js scripts/saucelabs-spot-configurations.json",
|
||||||
|
"test-saucelabs-all": "node scripts/saucelabs.js test/asap-test.js scripts/saucelabs-all-configurations.json",
|
||||||
|
"test-saucelabs-worker": "node scripts/saucelabs-worker-test.js scripts/saucelabs-spot-configurations.json",
|
||||||
|
"test-saucelabs-worker-all": "node scripts/saucelabs-worker-test.js scripts/saucelabs-all-configurations.json",
|
||||||
|
"test-travis": "npm run lint && npm run test-node && npm run test-saucelabs && npm run test-saucelabs-worker"
|
||||||
|
},
|
||||||
|
"version": "2.0.6"
|
||||||
|
}
|
101
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/raw.js
generated
vendored
Normal file
101
goTorrentWebUI/node_modules/react-dropzone/node_modules/asap/raw.js
generated
vendored
Normal file
@@ -0,0 +1,101 @@
|
|||||||
|
"use strict";
|
||||||
|
|
||||||
|
var domain; // The domain module is executed on demand
|
||||||
|
var hasSetImmediate = typeof setImmediate === "function";
|
||||||
|
|
||||||
|
// Use the fastest means possible to execute a task in its own turn, with
|
||||||
|
// priority over other events including network IO events in Node.js.
|
||||||
|
//
|
||||||
|
// An exception thrown by a task will permanently interrupt the processing of
|
||||||
|
// subsequent tasks. The higher level `asap` function ensures that if an
|
||||||
|
// exception is thrown by a task, that the task queue will continue flushing as
|
||||||
|
// soon as possible, but if you use `rawAsap` directly, you are responsible to
|
||||||
|
// either ensure that no exceptions are thrown from your task, or to manually
|
||||||
|
// call `rawAsap.requestFlush` if an exception is thrown.
|
||||||
|
module.exports = rawAsap;
|
||||||
|
function rawAsap(task) {
|
||||||
|
if (!queue.length) {
|
||||||
|
requestFlush();
|
||||||
|
flushing = true;
|
||||||
|
}
|
||||||
|
// Avoids a function call
|
||||||
|
queue[queue.length] = task;
|
||||||
|
}
|
||||||
|
|
||||||
|
var queue = [];
|
||||||
|
// Once a flush has been requested, no further calls to `requestFlush` are
|
||||||
|
// necessary until the next `flush` completes.
|
||||||
|
var flushing = false;
|
||||||
|
// The position of the next task to execute in the task queue. This is
|
||||||
|
// preserved between calls to `flush` so that it can be resumed if
|
||||||
|
// a task throws an exception.
|
||||||
|
var index = 0;
|
||||||
|
// If a task schedules additional tasks recursively, the task queue can grow
|
||||||
|
// unbounded. To prevent memory excaustion, the task queue will periodically
|
||||||
|
// truncate already-completed tasks.
|
||||||
|
var capacity = 1024;
|
||||||
|
|
||||||
|
// The flush function processes all tasks that have been scheduled with
|
||||||
|
// `rawAsap` unless and until one of those tasks throws an exception.
|
||||||
|
// If a task throws an exception, `flush` ensures that its state will remain
|
||||||
|
// consistent and will resume where it left off when called again.
|
||||||
|
// However, `flush` does not make any arrangements to be called again if an
|
||||||
|
// exception is thrown.
|
||||||
|
function flush() {
|
||||||
|
while (index < queue.length) {
|
||||||
|
var currentIndex = index;
|
||||||
|
// Advance the index before calling the task. This ensures that we will
|
||||||
|
// begin flushing on the next task the task throws an error.
|
||||||
|
index = index + 1;
|
||||||
|
queue[currentIndex].call();
|
||||||
|
// Prevent leaking memory for long chains of recursive calls to `asap`.
|
||||||
|
// If we call `asap` within tasks scheduled by `asap`, the queue will
|
||||||
|
// grow, but to avoid an O(n) walk for every task we execute, we don't
|
||||||
|
// shift tasks off the queue after they have been executed.
|
||||||
|
// Instead, we periodically shift 1024 tasks off the queue.
|
||||||
|
if (index > capacity) {
|
||||||
|
// Manually shift all values starting at the index back to the
|
||||||
|
// beginning of the queue.
|
||||||
|
for (var scan = 0, newLength = queue.length - index; scan < newLength; scan++) {
|
||||||
|
queue[scan] = queue[scan + index];
|
||||||
|
}
|
||||||
|
queue.length -= index;
|
||||||
|
index = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
queue.length = 0;
|
||||||
|
index = 0;
|
||||||
|
flushing = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
rawAsap.requestFlush = requestFlush;
|
||||||
|
function requestFlush() {
|
||||||
|
// Ensure flushing is not bound to any domain.
|
||||||
|
// It is not sufficient to exit the domain, because domains exist on a stack.
|
||||||
|
// To execute code outside of any domain, the following dance is necessary.
|
||||||
|
var parentDomain = process.domain;
|
||||||
|
if (parentDomain) {
|
||||||
|
if (!domain) {
|
||||||
|
// Lazy execute the domain module.
|
||||||
|
// Only employed if the user elects to use domains.
|
||||||
|
domain = require("domain");
|
||||||
|
}
|
||||||
|
domain.active = process.domain = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// `setImmediate` is slower that `process.nextTick`, but `process.nextTick`
|
||||||
|
// cannot handle recursion.
|
||||||
|
// `requestFlush` will only be called recursively from `asap.js`, to resume
|
||||||
|
// flushing after an error is thrown into a domain.
|
||||||
|
// Conveniently, `setImmediate` was introduced in the same version
|
||||||
|
// `process.nextTick` started throwing recursion errors.
|
||||||
|
if (flushing && hasSetImmediate) {
|
||||||
|
setImmediate(flush);
|
||||||
|
} else {
|
||||||
|
process.nextTick(flush);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (parentDomain) {
|
||||||
|
domain.active = process.domain = parentDomain;
|
||||||
|
}
|
||||||
|
}
|
409
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/CHANGELOG.md
generated
vendored
Normal file
409
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/CHANGELOG.md
generated
vendored
Normal file
@@ -0,0 +1,409 @@
|
|||||||
|
## Changelog
|
||||||
|
##### 1.2.7 [LEGACY] - 2016.07.18
|
||||||
|
* some fixes for issues like #159, #186, #194, #207
|
||||||
|
|
||||||
|
##### 1.2.6 - 2015.11.09
|
||||||
|
* reject with `TypeError` on attempt resolve promise itself
|
||||||
|
* correct behavior with broken `Promise` subclass constructors / methods
|
||||||
|
* added `Promise`-based fallback for microtask
|
||||||
|
* fixed V8 and FF `Array#{values, @@iterator}.name`
|
||||||
|
* fixed IE7- `[1, 2].join(undefined) -> '1,2'`
|
||||||
|
* some other fixes / improvements / optimizations
|
||||||
|
|
||||||
|
##### 1.2.5 - 2015.11.02
|
||||||
|
* some more `Number` constructor fixes:
|
||||||
|
* fixed V8 ~ Node 0.8 bug: `Number('+0x1')` should be `NaN`
|
||||||
|
* fixed `Number(' 0b1\n')` case, should be `1`
|
||||||
|
* fixed `Number()` case, should be `0`
|
||||||
|
|
||||||
|
##### 1.2.4 - 2015.11.01
|
||||||
|
* fixed `Number('0b12') -> NaN` case in the shim
|
||||||
|
* fixed V8 ~ Chromium 40- bug - `Weak(Map|Set)#{delete, get, has}` should not throw errors [#124](https://github.com/zloirock/core-js/issues/124)
|
||||||
|
* some other fixes and optimizations
|
||||||
|
|
||||||
|
##### 1.2.3 - 2015.10.23
|
||||||
|
* fixed some problems related old V8 bug `Object('a').propertyIsEnumerable(0) // => false`, for example, `Object.assign({}, 'qwe')` from the last release
|
||||||
|
* fixed `.name` property and `Function#toString` conversion some polyfilled methods
|
||||||
|
* fixed `Math.imul` arity in Safari 8-
|
||||||
|
|
||||||
|
##### 1.2.2 - 2015.10.18
|
||||||
|
* improved optimisations for V8
|
||||||
|
* fixed build process from external packages, [#120](https://github.com/zloirock/core-js/pull/120)
|
||||||
|
* one more `Object.{assign, values, entries}` fix for [**very** specific case](https://github.com/ljharb/proposal-object-values-entries/issues/5)
|
||||||
|
|
||||||
|
##### 1.2.1 - 2015.10.02
|
||||||
|
* replaced fix `JSON.stringify` + `Symbol` behavior from `.toJSON` method to wrapping `JSON.stringify` - little more correct, [compat-table/642](https://github.com/kangax/compat-table/pull/642)
|
||||||
|
* fixed typo which broke tasks scheduler in WebWorkers in old FF, [#114](https://github.com/zloirock/core-js/pull/114)
|
||||||
|
|
||||||
|
##### 1.2.0 - 2015.09.27
|
||||||
|
* added browser [`Promise` rejection hook](#unhandled-rejection-tracking), [#106](https://github.com/zloirock/core-js/issues/106)
|
||||||
|
* added correct [`IsRegExp`](http://www.ecma-international.org/ecma-262/6.0/#sec-isregexp) logic to [`String#{includes, startsWith, endsWith}`](https://github.com/zloirock/core-js/#ecmascript-6-string) and [`RegExp` constructor](https://github.com/zloirock/core-js/#ecmascript-6-regexp), `@@match` case, [example](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Symbol/match#Disabling_the_isRegExp_check)
|
||||||
|
* updated [`String#leftPad`](https://github.com/zloirock/core-js/#ecmascript-7) [with proposal](https://github.com/ljharb/proposal-string-pad-left-right/issues/6): string filler truncated from the right side
|
||||||
|
* replaced V8 [`Object.assign`](https://github.com/zloirock/core-js/#ecmascript-6-object) - its properties order not only [incorrect](https://github.com/sindresorhus/object-assign/issues/22), it is non-deterministic and it causes some problems
|
||||||
|
* fixed behavior with deleted in getters properties for `Object.{`[`assign`](https://github.com/zloirock/core-js/#ecmascript-6-object)`, `[`entries, values`](https://github.com/zloirock/core-js/#ecmascript-7)`}`, [example](http://goo.gl/iQE01c)
|
||||||
|
* fixed [`Math.sinh`](https://github.com/zloirock/core-js/#ecmascript-6-math) with very small numbers in V8 near Chromium 38
|
||||||
|
* some other fixes and optimizations
|
||||||
|
|
||||||
|
##### 1.1.4 - 2015.09.05
|
||||||
|
* fixed support symbols in FF34-35 [`Object.assign`](https://github.com/zloirock/core-js/#ecmascript-6-object)
|
||||||
|
* fixed [collections iterators](https://github.com/zloirock/core-js/#ecmascript-6-iterators) in FF25-26
|
||||||
|
* fixed non-generic WebKit [`Array.of`](https://github.com/zloirock/core-js/#ecmascript-6-array)
|
||||||
|
* some other fixes and optimizations
|
||||||
|
|
||||||
|
##### 1.1.3 - 2015.08.29
|
||||||
|
* fixed support Node.js domains in [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise), [#103](https://github.com/zloirock/core-js/issues/103)
|
||||||
|
|
||||||
|
##### 1.1.2 - 2015.08.28
|
||||||
|
* added `toJSON` method to [`Symbol`](https://github.com/zloirock/core-js/#ecmascript-6-symbol) polyfill and to MS Edge implementation for expected `JSON.stringify` result w/o patching this method
|
||||||
|
* replaced [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) implementations w/o correct support third argument
|
||||||
|
* fixed `global` detection with changed `document.domain` in ~IE8, [#100](https://github.com/zloirock/core-js/issues/100)
|
||||||
|
|
||||||
|
##### 1.1.1 - 2015.08.20
|
||||||
|
* added more correct microtask implementation for [`Promise`](#ecmascript-6-promise)
|
||||||
|
|
||||||
|
##### 1.1.0 - 2015.08.17
|
||||||
|
* updated [string padding](https://github.com/zloirock/core-js/#ecmascript-7) to [actual proposal](https://github.com/ljharb/proposal-string-pad-left-right) - renamed, minor internal changes:
|
||||||
|
* `String#lpad` -> `String#padLeft`
|
||||||
|
* `String#rpad` -> `String#padRight`
|
||||||
|
* added [string trim functions](#ecmascript-7) - [proposal](https://github.com/sebmarkbage/ecmascript-string-left-right-trim), defacto standard - required only for IE11- and fixed for some old engines:
|
||||||
|
* `String#trimLeft`
|
||||||
|
* `String#trimRight`
|
||||||
|
* [`String#trim`](https://github.com/zloirock/core-js/#ecmascript-6-string) fixed for some engines by es6 spec and moved from `es5` to single `es6` module
|
||||||
|
* splitted [`es6.object.statics-accept-primitives`](https://github.com/zloirock/core-js/#ecmascript-6-object)
|
||||||
|
* caps for `freeze`-family `Object` methods moved from `es5` to `es6` namespace and joined with [es6 wrappers](https://github.com/zloirock/core-js/#ecmascript-6-object)
|
||||||
|
* `es5` [namespace](https://github.com/zloirock/core-js/#commonjs) also includes modules, moved to `es6` namespace - you can use it as before
|
||||||
|
* increased `MessageChannel` priority in `$.task`, [#95](https://github.com/zloirock/core-js/issues/95)
|
||||||
|
* does not get `global.Symbol` on each getting iterator, if you wanna use alternative `Symbol` shim - add it before `core-js`
|
||||||
|
* [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) optimized and fixed for some cases
|
||||||
|
* simplified [`Reflect.enumerate`](https://github.com/zloirock/core-js/#ecmascript-6-reflect), see [this question](https://esdiscuss.org/topic/question-about-enumerate-and-property-decision-timing)
|
||||||
|
* some corrections in [`Math.acosh`](https://github.com/zloirock/core-js/#ecmascript-6-math)
|
||||||
|
* fixed [`Math.imul`](https://github.com/zloirock/core-js/#ecmascript-6-math) for old WebKit
|
||||||
|
* some fixes in string / RegExp [well-known symbols](https://github.com/zloirock/core-js/#ecmascript-6-regexp) logic
|
||||||
|
* some other fixes and optimizations
|
||||||
|
|
||||||
|
##### 1.0.1 - 2015.07.31
|
||||||
|
* some fixes for final MS Edge, replaced broken native `Reflect.defineProperty`
|
||||||
|
* some minor fixes and optimizations
|
||||||
|
* changed compression `client/*.min.js` options for safe `Function#name` and `Function#length`, should be fixed [#92](https://github.com/zloirock/core-js/issues/92)
|
||||||
|
|
||||||
|
##### 1.0.0 - 2015.07.22
|
||||||
|
* added logic for [well-known symbols](https://github.com/zloirock/core-js/#ecmascript-6-regexp):
|
||||||
|
* `Symbol.match`
|
||||||
|
* `Symbol.replace`
|
||||||
|
* `Symbol.split`
|
||||||
|
* `Symbol.search`
|
||||||
|
* actualized and optimized work with iterables:
|
||||||
|
* optimized [`Map`, `Set`, `WeakMap`, `WeakSet` constructors](https://github.com/zloirock/core-js/#ecmascript-6-collections), [`Promise.all`, `Promise.race`](https://github.com/zloirock/core-js/#ecmascript-6-promise) for default `Array Iterator`
|
||||||
|
* optimized [`Array.from`](https://github.com/zloirock/core-js/#ecmascript-6-array) for default `Array Iterator`
|
||||||
|
* added [`core.getIteratorMethod`](https://github.com/zloirock/core-js/#ecmascript-6-iterators) helper
|
||||||
|
* uses enumerable properties in shimmed instances - collections, iterators, etc for optimize performance
|
||||||
|
* added support native constructors to [`Reflect.construct`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) with 2 arguments
|
||||||
|
* added support native constructors to [`Function#bind`](https://github.com/zloirock/core-js/#ecmascript-5) shim with `new`
|
||||||
|
* removed obsolete `.clear` methods native [`Weak`-collections](https://github.com/zloirock/core-js/#ecmascript-6-collections)
|
||||||
|
* maximum modularity, reduced minimal custom build size, separated into submodules:
|
||||||
|
* [`es6.reflect`](https://github.com/zloirock/core-js/#ecmascript-6-reflect)
|
||||||
|
* [`es6.regexp`](https://github.com/zloirock/core-js/#ecmascript-6-regexp)
|
||||||
|
* [`es6.math`](https://github.com/zloirock/core-js/#ecmascript-6-math)
|
||||||
|
* [`es6.number`](https://github.com/zloirock/core-js/#ecmascript-6-number)
|
||||||
|
* [`es7.object.to-array`](https://github.com/zloirock/core-js/#ecmascript-7)
|
||||||
|
* [`core.object`](https://github.com/zloirock/core-js/#object)
|
||||||
|
* [`core.string`](https://github.com/zloirock/core-js/#escaping-html)
|
||||||
|
* [`core.iter-helpers`](https://github.com/zloirock/core-js/#ecmascript-6-iterators)
|
||||||
|
* internal modules (`$`, `$.iter`, etc)
|
||||||
|
* many other optimizations
|
||||||
|
* final cleaning non-standard features
|
||||||
|
* moved `$for` to [separate library](https://github.com/zloirock/forof). This work for syntax - `for-of` loop and comprehensions
|
||||||
|
* moved `Date#{format, formatUTC}` to [separate library](https://github.com/zloirock/dtf). Standard way for this - `ECMA-402`
|
||||||
|
* removed `Math` methods from `Number.prototype`. Slight sugar for simple `Math` methods calling
|
||||||
|
* removed `{Array#, Array, Dict}.turn`
|
||||||
|
* removed `core.global`
|
||||||
|
* uses `ToNumber` instead of `ToLength` in [`Number Iterator`](https://github.com/zloirock/core-js/#number-iterator), `Array.from(2.5)` will be `[0, 1, 2]` instead of `[0, 1]`
|
||||||
|
* fixed [#85](https://github.com/zloirock/core-js/issues/85) - invalid `Promise` unhandled rejection message in nested `setTimeout`
|
||||||
|
* fixed [#86](https://github.com/zloirock/core-js/issues/86) - support FF extensions
|
||||||
|
* fixed [#89](https://github.com/zloirock/core-js/issues/89) - behavior `Number` constructor in strange case
|
||||||
|
|
||||||
|
##### 0.9.18 - 2015.06.17
|
||||||
|
* removed `/` from [`RegExp.escape`](https://github.com/zloirock/core-js/#ecmascript-7) escaped characters
|
||||||
|
|
||||||
|
##### 0.9.17 - 2015.06.14
|
||||||
|
* updated [`RegExp.escape`](https://github.com/zloirock/core-js/#ecmascript-7) to the [latest proposal](https://github.com/benjamingr/RexExp.escape)
|
||||||
|
* fixed conflict with webpack dev server + IE buggy behavior
|
||||||
|
|
||||||
|
##### 0.9.16 - 2015.06.11
|
||||||
|
* more correct order resolving thenable in [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) polyfill
|
||||||
|
* uses polyfill instead of [buggy V8 `Promise`](https://github.com/zloirock/core-js/issues/78)
|
||||||
|
|
||||||
|
##### 0.9.15 - 2015.06.09
|
||||||
|
* [collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) from `library` version return wrapped native instances
|
||||||
|
* fixed collections prototype methods in `library` version
|
||||||
|
* optimized [`Math.hypot`](https://github.com/zloirock/core-js/#ecmascript-6-math)
|
||||||
|
|
||||||
|
##### 0.9.14 - 2015.06.04
|
||||||
|
* updated [`Promise.resolve` behavior](https://esdiscuss.org/topic/fixing-promise-resolve)
|
||||||
|
* added fallback for IE11 buggy `Object.getOwnPropertyNames` + iframe
|
||||||
|
* some other fixes
|
||||||
|
|
||||||
|
##### 0.9.13 - 2015.05.25
|
||||||
|
* added fallback for [`Symbol` polyfill](https://github.com/zloirock/core-js/#ecmascript-6-symbol) for old Android
|
||||||
|
* some other fixes
|
||||||
|
|
||||||
|
##### 0.9.12 - 2015.05.24
|
||||||
|
* different instances `core-js` should use / recognize the same symbols
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.9.11 - 2015.05.18
|
||||||
|
* simplified [custom build](https://github.com/zloirock/core-js/#custom-build)
|
||||||
|
* add custom build js api
|
||||||
|
* added `grunt-cli` to `devDependencies` for `npm run grunt`
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.9.10 - 2015.05.16
|
||||||
|
* wrapped `Function#toString` for correct work wrapped methods / constructors with methods similar to the [`lodash` `isNative`](https://github.com/lodash/lodash/issues/1197)
|
||||||
|
* added proto versions of methods to export object in `default` version for consistency with `library` version
|
||||||
|
|
||||||
|
##### 0.9.9 - 2015.05.14
|
||||||
|
* wrapped `Object#propertyIsEnumerable` for [`Symbol` polyfill](https://github.com/zloirock/core-js/#ecmascript-6-symbol)
|
||||||
|
* [added proto versions of methods to `library` for ES7 bind syntax](https://github.com/zloirock/core-js/issues/65)
|
||||||
|
* some other fixes
|
||||||
|
|
||||||
|
##### 0.9.8 - 2015.05.12
|
||||||
|
* fixed [`Math.hypot`](https://github.com/zloirock/core-js/#ecmascript-6-math) with negative arguments
|
||||||
|
* added `Object#toString.toString` as fallback for [`lodash` `isNative`](https://github.com/lodash/lodash/issues/1197)
|
||||||
|
|
||||||
|
##### 0.9.7 - 2015.05.07
|
||||||
|
* added [support DOM collections](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice#Streamlining_cross-browser_behavior) to IE8- `Array#slice`
|
||||||
|
|
||||||
|
##### 0.9.6 - 2015.05.01
|
||||||
|
* added [`String#lpad`, `String#rpad`](https://github.com/zloirock/core-js/#ecmascript-7)
|
||||||
|
|
||||||
|
##### 0.9.5 - 2015.04.30
|
||||||
|
* added cap for `Function#@@hasInstance`
|
||||||
|
* some fixes and optimizations
|
||||||
|
|
||||||
|
##### 0.9.4 - 2015.04.27
|
||||||
|
* fixed `RegExp` constructor
|
||||||
|
|
||||||
|
##### 0.9.3 - 2015.04.26
|
||||||
|
* some fixes and optimizations
|
||||||
|
|
||||||
|
##### 0.9.2 - 2015.04.25
|
||||||
|
* more correct [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) unhandled rejection tracking and resolving / rejection priority
|
||||||
|
|
||||||
|
##### 0.9.1 - 2015.04.25
|
||||||
|
* fixed `__proto__`-based [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) subclassing in some environments
|
||||||
|
|
||||||
|
##### 0.9.0 - 2015.04.24
|
||||||
|
* added correct [symbols](https://github.com/zloirock/core-js/#ecmascript-6-symbol) descriptors
|
||||||
|
* fixed behavior `Object.{assign, create, defineProperty, defineProperties, getOwnPropertyDescriptor, getOwnPropertyDescriptors}` with symbols
|
||||||
|
* added [single entry points](https://github.com/zloirock/core-js/#commonjs) for `Object.{create, defineProperty, defineProperties}`
|
||||||
|
* added [`Map#toJSON`](https://github.com/zloirock/core-js/#ecmascript-7)
|
||||||
|
* removed non-standard methods `Object#[_]` and `Function#only` - they solves syntax problems, but now in compilers available arrows and ~~in near future will be available~~ [available](http://babeljs.io/blog/2015/05/14/function-bind/) [bind syntax](https://github.com/zenparsing/es-function-bind)
|
||||||
|
* removed non-standard undocumented methods `Symbol.{pure, set}`
|
||||||
|
* some fixes and internal changes
|
||||||
|
|
||||||
|
##### 0.8.4 - 2015.04.18
|
||||||
|
* uses `webpack` instead of `browserify` for browser builds - more compression-friendly result
|
||||||
|
|
||||||
|
##### 0.8.3 - 2015.04.14
|
||||||
|
* fixed `Array` statics with single entry points
|
||||||
|
|
||||||
|
##### 0.8.2 - 2015.04.13
|
||||||
|
* [`Math.fround`](https://github.com/zloirock/core-js/#ecmascript-6-math) now also works in IE9-
|
||||||
|
* added [`Set#toJSON`](https://github.com/zloirock/core-js/#ecmascript-7)
|
||||||
|
* some optimizations and fixes
|
||||||
|
|
||||||
|
##### 0.8.1 - 2015.04.03
|
||||||
|
* fixed `Symbol.keyFor`
|
||||||
|
|
||||||
|
##### 0.8.0 - 2015.04.02
|
||||||
|
* changed [CommonJS API](https://github.com/zloirock/core-js/#commonjs)
|
||||||
|
* splitted and renamed some modules
|
||||||
|
* added support ES3 environment (ES5 polyfill) to **all** default versions - size increases slightly (+ ~4kb w/o gzip), many issues disappear, if you don't need it - [simply include only required namespaces / features / modules](https://github.com/zloirock/core-js/#commonjs)
|
||||||
|
* removed [abstract references](https://github.com/zenparsing/es-abstract-refs) support - proposal has been superseded =\
|
||||||
|
* [`$for.isIterable` -> `core.isIterable`, `$for.getIterator` -> `core.getIterator`](https://github.com/zloirock/core-js/#ecmascript-6-iterators), temporary available in old namespace
|
||||||
|
* fixed iterators support in v8 `Promise.all` and `Promise.race`
|
||||||
|
* many other fixes
|
||||||
|
|
||||||
|
##### 0.7.2 - 2015.03.09
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.7.1 - 2015.03.07
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.7.0 - 2015.03.06
|
||||||
|
* rewritten and splitted into [CommonJS modules](https://github.com/zloirock/core-js/#commonjs)
|
||||||
|
|
||||||
|
##### 0.6.1 - 2015.02.24
|
||||||
|
* fixed support [`Object.defineProperty`](https://github.com/zloirock/core-js/#ecmascript-5) with accessors on DOM elements on IE8
|
||||||
|
|
||||||
|
##### 0.6.0 - 2015.02.23
|
||||||
|
* added support safe closing iteration - calling `iterator.return` on abort iteration, if it exists
|
||||||
|
* added basic support [`Promise`](https://github.com/zloirock/core-js/#ecmascript-6-promise) unhandled rejection tracking in shim
|
||||||
|
* added [`Object.getOwnPropertyDescriptors`](https://github.com/zloirock/core-js/#ecmascript-7)
|
||||||
|
* removed `console` cap - creates too many problems - you can use [`core.log`](https://github.com/zloirock/core-js/#console) module as that
|
||||||
|
* restructuring [namespaces](https://github.com/zloirock/core-js/#custom-build)
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.5.4 - 2015.02.15
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.5.3 - 2015.02.14
|
||||||
|
* added [support binary and octal literals](https://github.com/zloirock/core-js/#ecmascript-6-number) to `Number` constructor
|
||||||
|
* added [`Date#toISOString`](https://github.com/zloirock/core-js/#ecmascript-5)
|
||||||
|
|
||||||
|
##### 0.5.2 - 2015.02.10
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.5.1 - 2015.02.09
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.5.0 - 2015.02.08
|
||||||
|
* systematization of modules
|
||||||
|
* splitted [`es6` module](https://github.com/zloirock/core-js/#ecmascript-6)
|
||||||
|
* splitted [`console` module](https://github.com/zloirock/core-js/#console): `web.console` - only cap for missing methods, `core.log` - bound methods & additional features
|
||||||
|
* added [`delay` method](https://github.com/zloirock/core-js/#delay)
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.4.10 - 2015.01.28
|
||||||
|
* [`Object.getOwnPropertySymbols`](https://github.com/zloirock/core-js/#ecmascript-6-symbol) polyfill returns array of wrapped keys
|
||||||
|
|
||||||
|
##### 0.4.9 - 2015.01.27
|
||||||
|
* FF20-24 fix
|
||||||
|
|
||||||
|
##### 0.4.8 - 2015.01.25
|
||||||
|
* some [collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) fixes
|
||||||
|
|
||||||
|
##### 0.4.7 - 2015.01.25
|
||||||
|
* added support frozen objects as [collections](https://github.com/zloirock/core-js/#ecmascript-6-collections) keys
|
||||||
|
|
||||||
|
##### 0.4.6 - 2015.01.21
|
||||||
|
* added [`Object.getOwnPropertySymbols`](https://github.com/zloirock/core-js/#ecmascript-6-symbol)
|
||||||
|
* added [`NodeList.prototype[@@iterator]`](https://github.com/zloirock/core-js/#ecmascript-6-iterators)
|
||||||
|
* added basic `@@species` logic - getter in native constructors
|
||||||
|
* removed `Function#by`
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.4.5 - 2015.01.16
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.4.4 - 2015.01.11
|
||||||
|
* enabled CSP support
|
||||||
|
|
||||||
|
##### 0.4.3 - 2015.01.10
|
||||||
|
* added `Function` instances `name` property for IE9+
|
||||||
|
|
||||||
|
##### 0.4.2 - 2015.01.10
|
||||||
|
* `Object` static methods accept primitives
|
||||||
|
* `RegExp` constructor can alter flags (IE9+)
|
||||||
|
* added `Array.prototype[Symbol.unscopables]`
|
||||||
|
|
||||||
|
##### 0.4.1 - 2015.01.05
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.4.0 - 2015.01.03
|
||||||
|
* added [`es6.reflect`](https://github.com/zloirock/core-js/#ecmascript-6-reflect) module:
|
||||||
|
* added `Reflect.apply`
|
||||||
|
* added `Reflect.construct`
|
||||||
|
* added `Reflect.defineProperty`
|
||||||
|
* added `Reflect.deleteProperty`
|
||||||
|
* added `Reflect.enumerate`
|
||||||
|
* added `Reflect.get`
|
||||||
|
* added `Reflect.getOwnPropertyDescriptor`
|
||||||
|
* added `Reflect.getPrototypeOf`
|
||||||
|
* added `Reflect.has`
|
||||||
|
* added `Reflect.isExtensible`
|
||||||
|
* added `Reflect.preventExtensions`
|
||||||
|
* added `Reflect.set`
|
||||||
|
* added `Reflect.setPrototypeOf`
|
||||||
|
* `core-js` methods now can use external `Symbol.iterator` polyfill
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.3.3 - 2014.12.28
|
||||||
|
* [console cap](https://github.com/zloirock/core-js/#console) excluded from node.js default builds
|
||||||
|
|
||||||
|
##### 0.3.2 - 2014.12.25
|
||||||
|
* added cap for [ES5](https://github.com/zloirock/core-js/#ecmascript-5) freeze-family methods
|
||||||
|
* fixed `console` bug
|
||||||
|
|
||||||
|
##### 0.3.1 - 2014.12.23
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.3.0 - 2014.12.23
|
||||||
|
* Optimize [`Map` & `Set`](https://github.com/zloirock/core-js/#ecmascript-6-collections):
|
||||||
|
* use entries chain on hash table
|
||||||
|
* fast & correct iteration
|
||||||
|
* iterators moved to [`es6`](https://github.com/zloirock/core-js/#ecmascript-6) and [`es6.collections`](https://github.com/zloirock/core-js/#ecmascript-6-collections) modules
|
||||||
|
|
||||||
|
##### 0.2.5 - 2014.12.20
|
||||||
|
* `console` no longer shortcut for `console.log` (compatibility problems)
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.2.4 - 2014.12.17
|
||||||
|
* better compliance of ES6
|
||||||
|
* added [`Math.fround`](https://github.com/zloirock/core-js/#ecmascript-6-math) (IE10+)
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.2.3 - 2014.12.15
|
||||||
|
* [Symbols](https://github.com/zloirock/core-js/#ecmascript-6-symbol):
|
||||||
|
* added option to disable addition setter to `Object.prototype` for Symbol polyfill:
|
||||||
|
* added `Symbol.useSimple`
|
||||||
|
* added `Symbol.useSetter`
|
||||||
|
* added cap for well-known Symbols:
|
||||||
|
* added `Symbol.hasInstance`
|
||||||
|
* added `Symbol.isConcatSpreadable`
|
||||||
|
* added `Symbol.match`
|
||||||
|
* added `Symbol.replace`
|
||||||
|
* added `Symbol.search`
|
||||||
|
* added `Symbol.species`
|
||||||
|
* added `Symbol.split`
|
||||||
|
* added `Symbol.toPrimitive`
|
||||||
|
* added `Symbol.unscopables`
|
||||||
|
|
||||||
|
##### 0.2.2 - 2014.12.13
|
||||||
|
* added [`RegExp#flags`](https://github.com/zloirock/core-js/#ecmascript-6-regexp) ([December 2014 Draft Rev 29](http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts#december_6_2014_draft_rev_29))
|
||||||
|
* added [`String.raw`](https://github.com/zloirock/core-js/#ecmascript-6-string)
|
||||||
|
|
||||||
|
##### 0.2.1 - 2014.12.12
|
||||||
|
* repair converting -0 to +0 in [native collections](https://github.com/zloirock/core-js/#ecmascript-6-collections)
|
||||||
|
|
||||||
|
##### 0.2.0 - 2014.12.06
|
||||||
|
* added [`es7.proposals`](https://github.com/zloirock/core-js/#ecmascript-7) and [`es7.abstract-refs`](https://github.com/zenparsing/es-abstract-refs) modules
|
||||||
|
* added [`String#at`](https://github.com/zloirock/core-js/#ecmascript-7)
|
||||||
|
* added real [`String Iterator`](https://github.com/zloirock/core-js/#ecmascript-6-iterators), older versions used Array Iterator
|
||||||
|
* added abstract references support:
|
||||||
|
* added `Symbol.referenceGet`
|
||||||
|
* added `Symbol.referenceSet`
|
||||||
|
* added `Symbol.referenceDelete`
|
||||||
|
* added `Function#@@referenceGet`
|
||||||
|
* added `Map#@@referenceGet`
|
||||||
|
* added `Map#@@referenceSet`
|
||||||
|
* added `Map#@@referenceDelete`
|
||||||
|
* added `WeakMap#@@referenceGet`
|
||||||
|
* added `WeakMap#@@referenceSet`
|
||||||
|
* added `WeakMap#@@referenceDelete`
|
||||||
|
* added `Dict.{...methods}[@@referenceGet]`
|
||||||
|
* removed deprecated `.contains` methods
|
||||||
|
* some fixes
|
||||||
|
|
||||||
|
##### 0.1.5 - 2014.12.01
|
||||||
|
* added [`Array#copyWithin`](https://github.com/zloirock/core-js/#ecmascript-6-array)
|
||||||
|
* added [`String#codePointAt`](https://github.com/zloirock/core-js/#ecmascript-6-string)
|
||||||
|
* added [`String.fromCodePoint`](https://github.com/zloirock/core-js/#ecmascript-6-string)
|
||||||
|
|
||||||
|
##### 0.1.4 - 2014.11.27
|
||||||
|
* added [`Dict.mapPairs`](https://github.com/zloirock/core-js/#dict)
|
||||||
|
|
||||||
|
##### 0.1.3 - 2014.11.20
|
||||||
|
* [TC39 November meeting](https://github.com/rwaldron/tc39-notes/tree/master/es6/2014-11):
|
||||||
|
* [`.contains` -> `.includes`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-18.md#51--44-arrayprototypecontains-and-stringprototypecontains)
|
||||||
|
* `String#contains` -> [`String#includes`](https://github.com/zloirock/core-js/#ecmascript-6-string)
|
||||||
|
* `Array#contains` -> [`Array#includes`](https://github.com/zloirock/core-js/#ecmascript-7)
|
||||||
|
* `Dict.contains` -> [`Dict.includes`](https://github.com/zloirock/core-js/#dict)
|
||||||
|
* [removed `WeakMap#clear`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-19.md#412-should-weakmapweakset-have-a-clear-method-markm)
|
||||||
|
* [removed `WeakSet#clear`](https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-11/nov-19.md#412-should-weakmapweakset-have-a-clear-method-markm)
|
||||||
|
|
||||||
|
##### 0.1.2 - 2014.11.19
|
||||||
|
* `Map` & `Set` bug fix
|
||||||
|
|
||||||
|
##### 0.1.1 - 2014.11.18
|
||||||
|
* public release
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/Gruntfile.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/Gruntfile.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('LiveScript');
|
||||||
|
module.exports = require('./build/Gruntfile');
|
19
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/LICENSE
generated
vendored
Normal file
19
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/LICENSE
generated
vendored
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
Copyright (c) 2015 Denis Pushkarev
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
|
THE SOFTWARE.
|
34
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/bower.json
generated
vendored
Normal file
34
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/bower.json
generated
vendored
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
{
|
||||||
|
"name": "core.js",
|
||||||
|
"main": "client/core.js",
|
||||||
|
"version": "1.2.7",
|
||||||
|
"description": "Standard Library",
|
||||||
|
"keywords": [
|
||||||
|
"ES6",
|
||||||
|
"ECMAScript 6",
|
||||||
|
"ES7",
|
||||||
|
"ECMAScript 7",
|
||||||
|
"Map",
|
||||||
|
"Set",
|
||||||
|
"WeakMap",
|
||||||
|
"WeakSet",
|
||||||
|
"Dict",
|
||||||
|
"Promise",
|
||||||
|
"Symbol",
|
||||||
|
"console"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
"Denis Pushkarev <zloirock@zloirock.ru> (http://zloirock.ru/)"
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"homepage": "https://github.com/zloirock/core-js",
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/zloirock/core-js.git"
|
||||||
|
},
|
||||||
|
"ignore": [
|
||||||
|
"build",
|
||||||
|
"node_modules",
|
||||||
|
"tests"
|
||||||
|
]
|
||||||
|
}
|
84
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/build/Gruntfile.ls
generated
vendored
Normal file
84
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/build/Gruntfile.ls
generated
vendored
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
require! <[./build fs ./config]>
|
||||||
|
library-tests = <[client/library.js tests/helpers.js tests/library.js]>map -> src: it
|
||||||
|
module.exports = (grunt)->
|
||||||
|
grunt.loadNpmTasks \grunt-contrib-clean
|
||||||
|
grunt.loadNpmTasks \grunt-contrib-copy
|
||||||
|
grunt.loadNpmTasks \grunt-contrib-uglify
|
||||||
|
grunt.loadNpmTasks \grunt-contrib-watch
|
||||||
|
grunt.loadNpmTasks \grunt-livescript
|
||||||
|
grunt.loadNpmTasks \grunt-karma
|
||||||
|
grunt.initConfig do
|
||||||
|
pkg: grunt.file.readJSON './package.json'
|
||||||
|
uglify: build:
|
||||||
|
files: '<%=grunt.option("path")%>.min.js': '<%=grunt.option("path")%>.js'
|
||||||
|
options:
|
||||||
|
mangle: {+sort, +keep_fnames}
|
||||||
|
compress: {+pure_getters, +keep_fargs, +keep_fnames}
|
||||||
|
sourceMap: on
|
||||||
|
banner: config.banner
|
||||||
|
livescript: src: files:
|
||||||
|
'./tests/helpers.js': './tests/helpers/*'
|
||||||
|
'./tests/tests.js': './tests/tests/*'
|
||||||
|
'./tests/library.js': './tests/library/*'
|
||||||
|
'./tests/es.js': './tests/tests/es*'
|
||||||
|
'./tests/experimental.js': './tests/experimental/*'
|
||||||
|
'./build/index.js': './build/build.ls*'
|
||||||
|
clean: <[./library]>
|
||||||
|
copy: lib: files:
|
||||||
|
* expand: on
|
||||||
|
cwd: './'
|
||||||
|
src: <[es5/** es6/** es7/** js/** web/** core/** fn/** index.js shim.js]>
|
||||||
|
dest: './library/'
|
||||||
|
* expand: on
|
||||||
|
cwd: './'
|
||||||
|
src: <[modules/*]>
|
||||||
|
dest: './library/'
|
||||||
|
filter: \isFile
|
||||||
|
* expand: on
|
||||||
|
cwd: './modules/library/'
|
||||||
|
src: '*'
|
||||||
|
dest: './library/modules/'
|
||||||
|
watch:
|
||||||
|
core:
|
||||||
|
files: './modules/*'
|
||||||
|
tasks: \default
|
||||||
|
tests:
|
||||||
|
files: './tests/tests/*'
|
||||||
|
tasks: \livescript
|
||||||
|
karma:
|
||||||
|
'options':
|
||||||
|
configFile: './tests/karma.conf.js'
|
||||||
|
browsers: <[PhantomJS]>
|
||||||
|
singleRun: on
|
||||||
|
'continuous': {}
|
||||||
|
'continuous-library':
|
||||||
|
files: library-tests
|
||||||
|
grunt.registerTask \build (options)->
|
||||||
|
done = @async!
|
||||||
|
err, it <- build {
|
||||||
|
modules: (options || 'es5,es6,es7,js,web,core')split \,
|
||||||
|
blacklist: (grunt.option(\blacklist) || '')split \,
|
||||||
|
library: !!grunt.option \library
|
||||||
|
}
|
||||||
|
if err
|
||||||
|
console.error err
|
||||||
|
process.exit 1
|
||||||
|
grunt.option(\path) || grunt.option(\path, './custom')
|
||||||
|
fs.writeFile grunt.option(\path) + '.js', it, done
|
||||||
|
grunt.registerTask \client ->
|
||||||
|
grunt.option \library ''
|
||||||
|
grunt.option \path './client/core'
|
||||||
|
grunt.task.run <[build:es5,es6,es7,js,web,core uglify]>
|
||||||
|
grunt.registerTask \library ->
|
||||||
|
grunt.option \library 'true'
|
||||||
|
grunt.option \path './client/library'
|
||||||
|
grunt.task.run <[build:es5,es6,es7,js,web,core uglify]>
|
||||||
|
grunt.registerTask \shim ->
|
||||||
|
grunt.option \library ''
|
||||||
|
grunt.option \path './client/shim'
|
||||||
|
grunt.task.run <[build:es5,es6,es7,js,web uglify]>
|
||||||
|
grunt.registerTask \e ->
|
||||||
|
grunt.option \library ''>
|
||||||
|
grunt.option \path './client/core'
|
||||||
|
grunt.task.run <[build:es5,es6,es7,js,web,core,exp uglify]>
|
||||||
|
grunt.registerTask \default <[clean copy client library shim]>
|
218
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/build/build.ls
generated
vendored
Normal file
218
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/build/build.ls
generated
vendored
Normal file
@@ -0,0 +1,218 @@
|
|||||||
|
require! {'./config': {banner}, fs: {readFile, writeFile, unlink}, path, webpack}
|
||||||
|
|
||||||
|
list = <[
|
||||||
|
es5
|
||||||
|
es6.symbol
|
||||||
|
es6.object.assign
|
||||||
|
es6.object.is
|
||||||
|
es6.object.set-prototype-of
|
||||||
|
es6.object.to-string
|
||||||
|
es6.object.freeze
|
||||||
|
es6.object.seal
|
||||||
|
es6.object.prevent-extensions
|
||||||
|
es6.object.is-frozen
|
||||||
|
es6.object.is-sealed
|
||||||
|
es6.object.is-extensible
|
||||||
|
es6.object.get-own-property-descriptor
|
||||||
|
es6.object.get-prototype-of
|
||||||
|
es6.object.keys
|
||||||
|
es6.object.get-own-property-names
|
||||||
|
es6.function.name
|
||||||
|
es6.function.has-instance
|
||||||
|
es6.number.constructor
|
||||||
|
es6.number.epsilon
|
||||||
|
es6.number.is-finite
|
||||||
|
es6.number.is-integer
|
||||||
|
es6.number.is-nan
|
||||||
|
es6.number.is-safe-integer
|
||||||
|
es6.number.max-safe-integer
|
||||||
|
es6.number.min-safe-integer
|
||||||
|
es6.number.parse-float
|
||||||
|
es6.number.parse-int
|
||||||
|
es6.math.acosh
|
||||||
|
es6.math.asinh
|
||||||
|
es6.math.atanh
|
||||||
|
es6.math.cbrt
|
||||||
|
es6.math.clz32
|
||||||
|
es6.math.cosh
|
||||||
|
es6.math.expm1
|
||||||
|
es6.math.fround
|
||||||
|
es6.math.hypot
|
||||||
|
es6.math.imul
|
||||||
|
es6.math.log10
|
||||||
|
es6.math.log1p
|
||||||
|
es6.math.log2
|
||||||
|
es6.math.sign
|
||||||
|
es6.math.sinh
|
||||||
|
es6.math.tanh
|
||||||
|
es6.math.trunc
|
||||||
|
es6.string.from-code-point
|
||||||
|
es6.string.raw
|
||||||
|
es6.string.trim
|
||||||
|
es6.string.code-point-at
|
||||||
|
es6.string.ends-with
|
||||||
|
es6.string.includes
|
||||||
|
es6.string.repeat
|
||||||
|
es6.string.starts-with
|
||||||
|
es6.string.iterator
|
||||||
|
es6.array.from
|
||||||
|
es6.array.of
|
||||||
|
es6.array.iterator
|
||||||
|
es6.array.species
|
||||||
|
es6.array.copy-within
|
||||||
|
es6.array.fill
|
||||||
|
es6.array.find
|
||||||
|
es6.array.find-index
|
||||||
|
es6.regexp.constructor
|
||||||
|
es6.regexp.flags
|
||||||
|
es6.regexp.match
|
||||||
|
es6.regexp.replace
|
||||||
|
es6.regexp.search
|
||||||
|
es6.regexp.split
|
||||||
|
es6.promise
|
||||||
|
es6.map
|
||||||
|
es6.set
|
||||||
|
es6.weak-map
|
||||||
|
es6.weak-set
|
||||||
|
es6.reflect.apply
|
||||||
|
es6.reflect.construct
|
||||||
|
es6.reflect.define-property
|
||||||
|
es6.reflect.delete-property
|
||||||
|
es6.reflect.enumerate
|
||||||
|
es6.reflect.get
|
||||||
|
es6.reflect.get-own-property-descriptor
|
||||||
|
es6.reflect.get-prototype-of
|
||||||
|
es6.reflect.has
|
||||||
|
es6.reflect.is-extensible
|
||||||
|
es6.reflect.own-keys
|
||||||
|
es6.reflect.prevent-extensions
|
||||||
|
es6.reflect.set
|
||||||
|
es6.reflect.set-prototype-of
|
||||||
|
es6.date.to-string
|
||||||
|
es6.typed.array-buffer
|
||||||
|
es6.typed.data-view
|
||||||
|
es6.typed.int8-array
|
||||||
|
es6.typed.uint8-array
|
||||||
|
es6.typed.uint8-clamped-array
|
||||||
|
es6.typed.int16-array
|
||||||
|
es6.typed.uint16-array
|
||||||
|
es6.typed.int32-array
|
||||||
|
es6.typed.uint32-array
|
||||||
|
es6.typed.float32-array
|
||||||
|
es6.typed.float64-array
|
||||||
|
es7.array.includes
|
||||||
|
es7.string.at
|
||||||
|
es7.string.pad-left
|
||||||
|
es7.string.pad-right
|
||||||
|
es7.string.trim-left
|
||||||
|
es7.string.trim-right
|
||||||
|
es7.regexp.escape
|
||||||
|
es7.object.get-own-property-descriptors
|
||||||
|
es7.object.values
|
||||||
|
es7.object.entries
|
||||||
|
es7.map.to-json
|
||||||
|
es7.set.to-json
|
||||||
|
web.immediate
|
||||||
|
web.dom.iterable
|
||||||
|
web.timers
|
||||||
|
core.dict
|
||||||
|
core.get-iterator-method
|
||||||
|
core.get-iterator
|
||||||
|
core.is-iterable
|
||||||
|
core.delay
|
||||||
|
core.function.part
|
||||||
|
core.object.is-object
|
||||||
|
core.object.classof
|
||||||
|
core.object.define
|
||||||
|
core.object.make
|
||||||
|
core.number.iterator
|
||||||
|
core.string.escape-html
|
||||||
|
core.string.unescape-html
|
||||||
|
core.log
|
||||||
|
js.array.statics
|
||||||
|
]>
|
||||||
|
|
||||||
|
experimental = <[
|
||||||
|
es6.date.to-string
|
||||||
|
es6.typed.array-buffer
|
||||||
|
es6.typed.data-view
|
||||||
|
es6.typed.int8-array
|
||||||
|
es6.typed.uint8-array
|
||||||
|
es6.typed.uint8-clamped-array
|
||||||
|
es6.typed.int16-array
|
||||||
|
es6.typed.uint16-array
|
||||||
|
es6.typed.int32-array
|
||||||
|
es6.typed.uint32-array
|
||||||
|
es6.typed.float32-array
|
||||||
|
es6.typed.float64-array
|
||||||
|
]>
|
||||||
|
|
||||||
|
libraryBlacklist = <[
|
||||||
|
es6.object.to-string
|
||||||
|
es6.function.name
|
||||||
|
es6.regexp.constructor
|
||||||
|
es6.regexp.flags
|
||||||
|
es6.regexp.match
|
||||||
|
es6.regexp.replace
|
||||||
|
es6.regexp.search
|
||||||
|
es6.regexp.split
|
||||||
|
es6.number.constructor
|
||||||
|
]>
|
||||||
|
|
||||||
|
es5SpecialCase = <[
|
||||||
|
es6.object.freeze
|
||||||
|
es6.object.seal
|
||||||
|
es6.object.prevent-extensions
|
||||||
|
es6.object.is-frozen
|
||||||
|
es6.object.is-sealed
|
||||||
|
es6.object.is-extensible
|
||||||
|
es6.string.trim
|
||||||
|
]>
|
||||||
|
|
||||||
|
module.exports = ({modules = [], blacklist = [], library = no}, next)!->
|
||||||
|
let @ = modules.reduce ((memo, it)-> memo[it] = on; memo), {}
|
||||||
|
check = (err)->
|
||||||
|
if err
|
||||||
|
next err, ''
|
||||||
|
on
|
||||||
|
|
||||||
|
if @exp => for experimental => @[..] = on
|
||||||
|
if @es5 => for es5SpecialCase => @[..] = on
|
||||||
|
for ns of @
|
||||||
|
if @[ns]
|
||||||
|
for name in list
|
||||||
|
if name.indexOf("#ns.") is 0 and name not in experimental
|
||||||
|
@[name] = on
|
||||||
|
|
||||||
|
if library => blacklist ++= libraryBlacklist
|
||||||
|
for ns in blacklist
|
||||||
|
for name in list
|
||||||
|
if name is ns or name.indexOf("#ns.") is 0
|
||||||
|
@[name] = no
|
||||||
|
|
||||||
|
TARGET = "./__tmp#{ Math.random! }__.js"
|
||||||
|
err, info <~! webpack do
|
||||||
|
entry: list.filter(~> @[it]).map ~>
|
||||||
|
path.join(__dirname, '../', "#{ if library => '/library' else '' }/modules/#it")
|
||||||
|
output:
|
||||||
|
path: ''
|
||||||
|
filename: TARGET
|
||||||
|
if check err => return
|
||||||
|
err, script <~! readFile TARGET
|
||||||
|
if check err => return
|
||||||
|
err <~! unlink TARGET
|
||||||
|
if check err => return
|
||||||
|
|
||||||
|
next null """
|
||||||
|
#banner
|
||||||
|
!function(__e, __g, undefined){
|
||||||
|
'use strict';
|
||||||
|
#script
|
||||||
|
// CommonJS export
|
||||||
|
if(typeof module != 'undefined' && module.exports)module.exports = __e;
|
||||||
|
// RequireJS export
|
||||||
|
else if(typeof define == 'function' && define.amd)define(function(){return __e});
|
||||||
|
// Export to global object
|
||||||
|
else __g.core = __e;
|
||||||
|
}(1, 1);
|
||||||
|
"""
|
8
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/build/config.js
generated
vendored
Normal file
8
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/build/config.js
generated
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
module.exports = {
|
||||||
|
banner: '/**\n' +
|
||||||
|
' * core-js ' + require('../package').version + '\n' +
|
||||||
|
' * https://github.com/zloirock/core-js\n' +
|
||||||
|
' * License: http://rock.mit-license.org\n' +
|
||||||
|
' * © ' + new Date().getFullYear() + ' Denis Pushkarev\n' +
|
||||||
|
' */'
|
||||||
|
};
|
98
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/build/index.js
generated
vendored
Normal file
98
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/build/index.js
generated
vendored
Normal file
@@ -0,0 +1,98 @@
|
|||||||
|
// Generated by LiveScript 1.3.1
|
||||||
|
(function(){
|
||||||
|
var banner, ref$, readFile, writeFile, unlink, path, webpack, list, experimental, libraryBlacklist, es5SpecialCase;
|
||||||
|
banner = require('./config').banner;
|
||||||
|
ref$ = require('fs'), readFile = ref$.readFile, writeFile = ref$.writeFile, unlink = ref$.unlink;
|
||||||
|
path = require('path');
|
||||||
|
webpack = require('webpack');
|
||||||
|
list = ['es5', 'es6.symbol', 'es6.object.assign', 'es6.object.is', 'es6.object.set-prototype-of', 'es6.object.to-string', 'es6.object.freeze', 'es6.object.seal', 'es6.object.prevent-extensions', 'es6.object.is-frozen', 'es6.object.is-sealed', 'es6.object.is-extensible', 'es6.object.get-own-property-descriptor', 'es6.object.get-prototype-of', 'es6.object.keys', 'es6.object.get-own-property-names', 'es6.function.name', 'es6.function.has-instance', 'es6.number.constructor', 'es6.number.epsilon', 'es6.number.is-finite', 'es6.number.is-integer', 'es6.number.is-nan', 'es6.number.is-safe-integer', 'es6.number.max-safe-integer', 'es6.number.min-safe-integer', 'es6.number.parse-float', 'es6.number.parse-int', 'es6.math.acosh', 'es6.math.asinh', 'es6.math.atanh', 'es6.math.cbrt', 'es6.math.clz32', 'es6.math.cosh', 'es6.math.expm1', 'es6.math.fround', 'es6.math.hypot', 'es6.math.imul', 'es6.math.log10', 'es6.math.log1p', 'es6.math.log2', 'es6.math.sign', 'es6.math.sinh', 'es6.math.tanh', 'es6.math.trunc', 'es6.string.from-code-point', 'es6.string.raw', 'es6.string.trim', 'es6.string.code-point-at', 'es6.string.ends-with', 'es6.string.includes', 'es6.string.repeat', 'es6.string.starts-with', 'es6.string.iterator', 'es6.array.from', 'es6.array.of', 'es6.array.iterator', 'es6.array.species', 'es6.array.copy-within', 'es6.array.fill', 'es6.array.find', 'es6.array.find-index', 'es6.regexp.constructor', 'es6.regexp.flags', 'es6.regexp.match', 'es6.regexp.replace', 'es6.regexp.search', 'es6.regexp.split', 'es6.promise', 'es6.map', 'es6.set', 'es6.weak-map', 'es6.weak-set', 'es6.reflect.apply', 'es6.reflect.construct', 'es6.reflect.define-property', 'es6.reflect.delete-property', 'es6.reflect.enumerate', 'es6.reflect.get', 'es6.reflect.get-own-property-descriptor', 'es6.reflect.get-prototype-of', 'es6.reflect.has', 'es6.reflect.is-extensible', 'es6.reflect.own-keys', 'es6.reflect.prevent-extensions', 'es6.reflect.set', 'es6.reflect.set-prototype-of', 'es6.date.to-string', 'es6.typed.array-buffer', 'es6.typed.data-view', 'es6.typed.int8-array', 'es6.typed.uint8-array', 'es6.typed.uint8-clamped-array', 'es6.typed.int16-array', 'es6.typed.uint16-array', 'es6.typed.int32-array', 'es6.typed.uint32-array', 'es6.typed.float32-array', 'es6.typed.float64-array', 'es7.array.includes', 'es7.string.at', 'es7.string.pad-left', 'es7.string.pad-right', 'es7.string.trim-left', 'es7.string.trim-right', 'es7.regexp.escape', 'es7.object.get-own-property-descriptors', 'es7.object.values', 'es7.object.entries', 'es7.map.to-json', 'es7.set.to-json', 'web.immediate', 'web.dom.iterable', 'web.timers', 'core.dict', 'core.get-iterator-method', 'core.get-iterator', 'core.is-iterable', 'core.delay', 'core.function.part', 'core.object.is-object', 'core.object.classof', 'core.object.define', 'core.object.make', 'core.number.iterator', 'core.string.escape-html', 'core.string.unescape-html', 'core.log', 'js.array.statics'];
|
||||||
|
experimental = ['es6.date.to-string', 'es6.typed.array-buffer', 'es6.typed.data-view', 'es6.typed.int8-array', 'es6.typed.uint8-array', 'es6.typed.uint8-clamped-array', 'es6.typed.int16-array', 'es6.typed.uint16-array', 'es6.typed.int32-array', 'es6.typed.uint32-array', 'es6.typed.float32-array', 'es6.typed.float64-array'];
|
||||||
|
libraryBlacklist = ['es6.object.to-string', 'es6.function.name', 'es6.regexp.constructor', 'es6.regexp.flags', 'es6.regexp.match', 'es6.regexp.replace', 'es6.regexp.search', 'es6.regexp.split', 'es6.number.constructor'];
|
||||||
|
es5SpecialCase = ['es6.object.freeze', 'es6.object.seal', 'es6.object.prevent-extensions', 'es6.object.is-frozen', 'es6.object.is-sealed', 'es6.object.is-extensible', 'es6.string.trim'];
|
||||||
|
module.exports = function(arg$, next){
|
||||||
|
var modules, ref$, blacklist, library;
|
||||||
|
modules = (ref$ = arg$.modules) != null
|
||||||
|
? ref$
|
||||||
|
: [], blacklist = (ref$ = arg$.blacklist) != null
|
||||||
|
? ref$
|
||||||
|
: [], library = (ref$ = arg$.library) != null ? ref$ : false;
|
||||||
|
(function(){
|
||||||
|
var check, i$, x$, ref$, len$, y$, ns, name, j$, len1$, TARGET, this$ = this;
|
||||||
|
check = function(err){
|
||||||
|
if (err) {
|
||||||
|
next(err, '');
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
if (this.exp) {
|
||||||
|
for (i$ = 0, len$ = (ref$ = experimental).length; i$ < len$; ++i$) {
|
||||||
|
x$ = ref$[i$];
|
||||||
|
this[x$] = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (this.es5) {
|
||||||
|
for (i$ = 0, len$ = (ref$ = es5SpecialCase).length; i$ < len$; ++i$) {
|
||||||
|
y$ = ref$[i$];
|
||||||
|
this[y$] = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (ns in this) {
|
||||||
|
if (this[ns]) {
|
||||||
|
for (i$ = 0, len$ = (ref$ = list).length; i$ < len$; ++i$) {
|
||||||
|
name = ref$[i$];
|
||||||
|
if (name.indexOf(ns + ".") === 0 && !in$(name, experimental)) {
|
||||||
|
this[name] = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (library) {
|
||||||
|
blacklist = blacklist.concat(libraryBlacklist);
|
||||||
|
}
|
||||||
|
for (i$ = 0, len$ = blacklist.length; i$ < len$; ++i$) {
|
||||||
|
ns = blacklist[i$];
|
||||||
|
for (j$ = 0, len1$ = (ref$ = list).length; j$ < len1$; ++j$) {
|
||||||
|
name = ref$[j$];
|
||||||
|
if (name === ns || name.indexOf(ns + ".") === 0) {
|
||||||
|
this[name] = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
TARGET = "./__tmp" + Math.random() + "__.js";
|
||||||
|
webpack({
|
||||||
|
entry: list.filter(function(it){
|
||||||
|
return this$[it];
|
||||||
|
}).map(function(it){
|
||||||
|
return path.join(__dirname, '../', (library ? '/library' : '') + "/modules/" + it);
|
||||||
|
}),
|
||||||
|
output: {
|
||||||
|
path: '',
|
||||||
|
filename: TARGET
|
||||||
|
}
|
||||||
|
}, function(err, info){
|
||||||
|
if (check(err)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
readFile(TARGET, function(err, script){
|
||||||
|
if (check(err)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
unlink(TARGET, function(err){
|
||||||
|
if (check(err)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
next(null, "" + banner + "\n!function(__e, __g, undefined){\n'use strict';\n" + script + "\n// CommonJS export\nif(typeof module != 'undefined' && module.exports)module.exports = __e;\n// RequireJS export\nelse if(typeof define == 'function' && define.amd)define(function(){return __e});\n// Export to global object\nelse __g.core = __e;\n}(1, 1);");
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}.call(modules.reduce(function(memo, it){
|
||||||
|
memo[it] = true;
|
||||||
|
return memo;
|
||||||
|
}, {})));
|
||||||
|
};
|
||||||
|
function in$(x, xs){
|
||||||
|
var i = -1, l = xs.length >>> 0;
|
||||||
|
while (++i < l) if (x === xs[i]) return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}).call(this);
|
4910
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/core.js
generated
vendored
Normal file
4910
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/core.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
9
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/core.min.js
generated
vendored
Normal file
9
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/core.min.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
1
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/core.min.js.map
generated
vendored
Normal file
1
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/core.min.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4550
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/library.js
generated
vendored
Normal file
4550
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/library.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
9
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/library.min.js
generated
vendored
Normal file
9
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/library.min.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
1
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/library.min.js.map
generated
vendored
Normal file
1
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/library.min.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
4551
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/shim.js
generated
vendored
Normal file
4551
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/shim.js
generated
vendored
Normal file
File diff suppressed because it is too large
Load Diff
9
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/shim.min.js
generated
vendored
Normal file
9
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/shim.min.js
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
1
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/shim.min.js.map
generated
vendored
Normal file
1
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/client/shim.min.js.map
generated
vendored
Normal file
File diff suppressed because one or more lines are too long
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/_.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/_.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/core.function.part');
|
||||||
|
module.exports = require('../modules/$.core')._;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/delay.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/delay.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/core.delay');
|
||||||
|
module.exports = require('../modules/$.core').delay;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/dict.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/dict.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/core.dict');
|
||||||
|
module.exports = require('../modules/$.core').Dict;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/function.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/function.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/core.function.part');
|
||||||
|
module.exports = require('../modules/$.core').Function;
|
15
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/index.js
generated
vendored
Normal file
15
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/index.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
require('../modules/core.dict');
|
||||||
|
require('../modules/core.get-iterator-method');
|
||||||
|
require('../modules/core.get-iterator');
|
||||||
|
require('../modules/core.is-iterable');
|
||||||
|
require('../modules/core.delay');
|
||||||
|
require('../modules/core.function.part');
|
||||||
|
require('../modules/core.object.is-object');
|
||||||
|
require('../modules/core.object.classof');
|
||||||
|
require('../modules/core.object.define');
|
||||||
|
require('../modules/core.object.make');
|
||||||
|
require('../modules/core.number.iterator');
|
||||||
|
require('../modules/core.string.escape-html');
|
||||||
|
require('../modules/core.string.unescape-html');
|
||||||
|
require('../modules/core.log');
|
||||||
|
module.exports = require('../modules/$.core');
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/log.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/log.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/core.log');
|
||||||
|
module.exports = require('../modules/$.core').log;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/number.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/number.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/core.number.iterator');
|
||||||
|
module.exports = require('../modules/$.core').Number;
|
5
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/object.js
generated
vendored
Normal file
5
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/object.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
require('../modules/core.object.is-object');
|
||||||
|
require('../modules/core.object.classof');
|
||||||
|
require('../modules/core.object.define');
|
||||||
|
require('../modules/core.object.make');
|
||||||
|
module.exports = require('../modules/$.core').Object;
|
3
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/string.js
generated
vendored
Normal file
3
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/core/string.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
require('../modules/core.string.escape-html');
|
||||||
|
require('../modules/core.string.unescape-html');
|
||||||
|
module.exports = require('../modules/$.core').String;
|
9
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es5/index.js
generated
vendored
Normal file
9
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es5/index.js
generated
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
require('../modules/es5');
|
||||||
|
require('../modules/es6.object.freeze');
|
||||||
|
require('../modules/es6.object.seal');
|
||||||
|
require('../modules/es6.object.prevent-extensions');
|
||||||
|
require('../modules/es6.object.is-frozen');
|
||||||
|
require('../modules/es6.object.is-sealed');
|
||||||
|
require('../modules/es6.object.is-extensible');
|
||||||
|
require('../modules/es6.string.trim');
|
||||||
|
module.exports = require('../modules/$.core');
|
10
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/array.js
generated
vendored
Normal file
10
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/array.js
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
require('../modules/es6.string.iterator');
|
||||||
|
require('../modules/es6.array.from');
|
||||||
|
require('../modules/es6.array.of');
|
||||||
|
require('../modules/es6.array.species');
|
||||||
|
require('../modules/es6.array.iterator');
|
||||||
|
require('../modules/es6.array.copy-within');
|
||||||
|
require('../modules/es6.array.fill');
|
||||||
|
require('../modules/es6.array.find');
|
||||||
|
require('../modules/es6.array.find-index');
|
||||||
|
module.exports = require('../modules/$.core').Array;
|
3
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/function.js
generated
vendored
Normal file
3
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/function.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
require('../modules/es6.function.name');
|
||||||
|
require('../modules/es6.function.has-instance');
|
||||||
|
module.exports = require('../modules/$.core').Function;
|
87
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/index.js
generated
vendored
Normal file
87
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/index.js
generated
vendored
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
require('../modules/es6.symbol');
|
||||||
|
require('../modules/es6.object.assign');
|
||||||
|
require('../modules/es6.object.is');
|
||||||
|
require('../modules/es6.object.set-prototype-of');
|
||||||
|
require('../modules/es6.object.to-string');
|
||||||
|
require('../modules/es6.object.freeze');
|
||||||
|
require('../modules/es6.object.seal');
|
||||||
|
require('../modules/es6.object.prevent-extensions');
|
||||||
|
require('../modules/es6.object.is-frozen');
|
||||||
|
require('../modules/es6.object.is-sealed');
|
||||||
|
require('../modules/es6.object.is-extensible');
|
||||||
|
require('../modules/es6.object.get-own-property-descriptor');
|
||||||
|
require('../modules/es6.object.get-prototype-of');
|
||||||
|
require('../modules/es6.object.keys');
|
||||||
|
require('../modules/es6.object.get-own-property-names');
|
||||||
|
require('../modules/es6.function.name');
|
||||||
|
require('../modules/es6.function.has-instance');
|
||||||
|
require('../modules/es6.number.constructor');
|
||||||
|
require('../modules/es6.number.epsilon');
|
||||||
|
require('../modules/es6.number.is-finite');
|
||||||
|
require('../modules/es6.number.is-integer');
|
||||||
|
require('../modules/es6.number.is-nan');
|
||||||
|
require('../modules/es6.number.is-safe-integer');
|
||||||
|
require('../modules/es6.number.max-safe-integer');
|
||||||
|
require('../modules/es6.number.min-safe-integer');
|
||||||
|
require('../modules/es6.number.parse-float');
|
||||||
|
require('../modules/es6.number.parse-int');
|
||||||
|
require('../modules/es6.math.acosh');
|
||||||
|
require('../modules/es6.math.asinh');
|
||||||
|
require('../modules/es6.math.atanh');
|
||||||
|
require('../modules/es6.math.cbrt');
|
||||||
|
require('../modules/es6.math.clz32');
|
||||||
|
require('../modules/es6.math.cosh');
|
||||||
|
require('../modules/es6.math.expm1');
|
||||||
|
require('../modules/es6.math.fround');
|
||||||
|
require('../modules/es6.math.hypot');
|
||||||
|
require('../modules/es6.math.imul');
|
||||||
|
require('../modules/es6.math.log10');
|
||||||
|
require('../modules/es6.math.log1p');
|
||||||
|
require('../modules/es6.math.log2');
|
||||||
|
require('../modules/es6.math.sign');
|
||||||
|
require('../modules/es6.math.sinh');
|
||||||
|
require('../modules/es6.math.tanh');
|
||||||
|
require('../modules/es6.math.trunc');
|
||||||
|
require('../modules/es6.string.from-code-point');
|
||||||
|
require('../modules/es6.string.raw');
|
||||||
|
require('../modules/es6.string.trim');
|
||||||
|
require('../modules/es6.string.iterator');
|
||||||
|
require('../modules/es6.string.code-point-at');
|
||||||
|
require('../modules/es6.string.ends-with');
|
||||||
|
require('../modules/es6.string.includes');
|
||||||
|
require('../modules/es6.string.repeat');
|
||||||
|
require('../modules/es6.string.starts-with');
|
||||||
|
require('../modules/es6.array.from');
|
||||||
|
require('../modules/es6.array.of');
|
||||||
|
require('../modules/es6.array.species');
|
||||||
|
require('../modules/es6.array.iterator');
|
||||||
|
require('../modules/es6.array.copy-within');
|
||||||
|
require('../modules/es6.array.fill');
|
||||||
|
require('../modules/es6.array.find');
|
||||||
|
require('../modules/es6.array.find-index');
|
||||||
|
require('../modules/es6.regexp.constructor');
|
||||||
|
require('../modules/es6.regexp.flags');
|
||||||
|
require('../modules/es6.regexp.match');
|
||||||
|
require('../modules/es6.regexp.replace');
|
||||||
|
require('../modules/es6.regexp.search');
|
||||||
|
require('../modules/es6.regexp.split');
|
||||||
|
require('../modules/es6.promise');
|
||||||
|
require('../modules/es6.map');
|
||||||
|
require('../modules/es6.set');
|
||||||
|
require('../modules/es6.weak-map');
|
||||||
|
require('../modules/es6.weak-set');
|
||||||
|
require('../modules/es6.reflect.apply');
|
||||||
|
require('../modules/es6.reflect.construct');
|
||||||
|
require('../modules/es6.reflect.define-property');
|
||||||
|
require('../modules/es6.reflect.delete-property');
|
||||||
|
require('../modules/es6.reflect.enumerate');
|
||||||
|
require('../modules/es6.reflect.get');
|
||||||
|
require('../modules/es6.reflect.get-own-property-descriptor');
|
||||||
|
require('../modules/es6.reflect.get-prototype-of');
|
||||||
|
require('../modules/es6.reflect.has');
|
||||||
|
require('../modules/es6.reflect.is-extensible');
|
||||||
|
require('../modules/es6.reflect.own-keys');
|
||||||
|
require('../modules/es6.reflect.prevent-extensions');
|
||||||
|
require('../modules/es6.reflect.set');
|
||||||
|
require('../modules/es6.reflect.set-prototype-of');
|
||||||
|
module.exports = require('../modules/$.core');
|
5
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/map.js
generated
vendored
Normal file
5
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/map.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
require('../modules/es6.object.to-string');
|
||||||
|
require('../modules/es6.string.iterator');
|
||||||
|
require('../modules/web.dom.iterable');
|
||||||
|
require('../modules/es6.map');
|
||||||
|
module.exports = require('../modules/$.core').Map;
|
18
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/math.js
generated
vendored
Normal file
18
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/math.js
generated
vendored
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
require('../modules/es6.math.acosh');
|
||||||
|
require('../modules/es6.math.asinh');
|
||||||
|
require('../modules/es6.math.atanh');
|
||||||
|
require('../modules/es6.math.cbrt');
|
||||||
|
require('../modules/es6.math.clz32');
|
||||||
|
require('../modules/es6.math.cosh');
|
||||||
|
require('../modules/es6.math.expm1');
|
||||||
|
require('../modules/es6.math.fround');
|
||||||
|
require('../modules/es6.math.hypot');
|
||||||
|
require('../modules/es6.math.imul');
|
||||||
|
require('../modules/es6.math.log10');
|
||||||
|
require('../modules/es6.math.log1p');
|
||||||
|
require('../modules/es6.math.log2');
|
||||||
|
require('../modules/es6.math.sign');
|
||||||
|
require('../modules/es6.math.sinh');
|
||||||
|
require('../modules/es6.math.tanh');
|
||||||
|
require('../modules/es6.math.trunc');
|
||||||
|
module.exports = require('../modules/$.core').Math;
|
11
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/number.js
generated
vendored
Normal file
11
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/number.js
generated
vendored
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
require('../modules/es6.number.constructor');
|
||||||
|
require('../modules/es6.number.epsilon');
|
||||||
|
require('../modules/es6.number.is-finite');
|
||||||
|
require('../modules/es6.number.is-integer');
|
||||||
|
require('../modules/es6.number.is-nan');
|
||||||
|
require('../modules/es6.number.is-safe-integer');
|
||||||
|
require('../modules/es6.number.max-safe-integer');
|
||||||
|
require('../modules/es6.number.min-safe-integer');
|
||||||
|
require('../modules/es6.number.parse-float');
|
||||||
|
require('../modules/es6.number.parse-int');
|
||||||
|
module.exports = require('../modules/$.core').Number;
|
17
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/object.js
generated
vendored
Normal file
17
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/object.js
generated
vendored
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
require('../modules/es6.symbol');
|
||||||
|
require('../modules/es6.object.assign');
|
||||||
|
require('../modules/es6.object.is');
|
||||||
|
require('../modules/es6.object.set-prototype-of');
|
||||||
|
require('../modules/es6.object.to-string');
|
||||||
|
require('../modules/es6.object.freeze');
|
||||||
|
require('../modules/es6.object.seal');
|
||||||
|
require('../modules/es6.object.prevent-extensions');
|
||||||
|
require('../modules/es6.object.is-frozen');
|
||||||
|
require('../modules/es6.object.is-sealed');
|
||||||
|
require('../modules/es6.object.is-extensible');
|
||||||
|
require('../modules/es6.object.get-own-property-descriptor');
|
||||||
|
require('../modules/es6.object.get-prototype-of');
|
||||||
|
require('../modules/es6.object.keys');
|
||||||
|
require('../modules/es6.object.get-own-property-names');
|
||||||
|
|
||||||
|
module.exports = require('../modules/$.core').Object;
|
5
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/promise.js
generated
vendored
Normal file
5
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/promise.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
require('../modules/es6.object.to-string');
|
||||||
|
require('../modules/es6.string.iterator');
|
||||||
|
require('../modules/web.dom.iterable');
|
||||||
|
require('../modules/es6.promise');
|
||||||
|
module.exports = require('../modules/$.core').Promise;
|
15
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/reflect.js
generated
vendored
Normal file
15
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/reflect.js
generated
vendored
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
require('../modules/es6.reflect.apply');
|
||||||
|
require('../modules/es6.reflect.construct');
|
||||||
|
require('../modules/es6.reflect.define-property');
|
||||||
|
require('../modules/es6.reflect.delete-property');
|
||||||
|
require('../modules/es6.reflect.enumerate');
|
||||||
|
require('../modules/es6.reflect.get');
|
||||||
|
require('../modules/es6.reflect.get-own-property-descriptor');
|
||||||
|
require('../modules/es6.reflect.get-prototype-of');
|
||||||
|
require('../modules/es6.reflect.has');
|
||||||
|
require('../modules/es6.reflect.is-extensible');
|
||||||
|
require('../modules/es6.reflect.own-keys');
|
||||||
|
require('../modules/es6.reflect.prevent-extensions');
|
||||||
|
require('../modules/es6.reflect.set');
|
||||||
|
require('../modules/es6.reflect.set-prototype-of');
|
||||||
|
module.exports = require('../modules/$.core').Reflect;
|
7
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/regexp.js
generated
vendored
Normal file
7
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/regexp.js
generated
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
require('../modules/es6.regexp.constructor');
|
||||||
|
require('../modules/es6.regexp.flags');
|
||||||
|
require('../modules/es6.regexp.match');
|
||||||
|
require('../modules/es6.regexp.replace');
|
||||||
|
require('../modules/es6.regexp.search');
|
||||||
|
require('../modules/es6.regexp.split');
|
||||||
|
module.exports = require('../modules/$.core').RegExp;
|
5
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/set.js
generated
vendored
Normal file
5
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/set.js
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
require('../modules/es6.object.to-string');
|
||||||
|
require('../modules/es6.string.iterator');
|
||||||
|
require('../modules/web.dom.iterable');
|
||||||
|
require('../modules/es6.set');
|
||||||
|
module.exports = require('../modules/$.core').Set;
|
14
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/string.js
generated
vendored
Normal file
14
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/string.js
generated
vendored
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
require('../modules/es6.string.from-code-point');
|
||||||
|
require('../modules/es6.string.raw');
|
||||||
|
require('../modules/es6.string.trim');
|
||||||
|
require('../modules/es6.string.iterator');
|
||||||
|
require('../modules/es6.string.code-point-at');
|
||||||
|
require('../modules/es6.string.ends-with');
|
||||||
|
require('../modules/es6.string.includes');
|
||||||
|
require('../modules/es6.string.repeat');
|
||||||
|
require('../modules/es6.string.starts-with');
|
||||||
|
require('../modules/es6.regexp.match');
|
||||||
|
require('../modules/es6.regexp.replace');
|
||||||
|
require('../modules/es6.regexp.search');
|
||||||
|
require('../modules/es6.regexp.split');
|
||||||
|
module.exports = require('../modules/$.core').String;
|
3
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/symbol.js
generated
vendored
Normal file
3
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/symbol.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
require('../modules/es6.symbol');
|
||||||
|
require('../modules/es6.object.to-string');
|
||||||
|
module.exports = require('../modules/$.core').Symbol;
|
4
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/weak-map.js
generated
vendored
Normal file
4
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/weak-map.js
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
require('../modules/es6.object.to-string');
|
||||||
|
require('../modules/es6.array.iterator');
|
||||||
|
require('../modules/es6.weak-map');
|
||||||
|
module.exports = require('../modules/$.core').WeakMap;
|
4
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/weak-set.js
generated
vendored
Normal file
4
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es6/weak-set.js
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
require('../modules/es6.object.to-string');
|
||||||
|
require('../modules/web.dom.iterable');
|
||||||
|
require('../modules/es6.weak-set');
|
||||||
|
module.exports = require('../modules/$.core').WeakSet;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/array.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/array.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/es7.array.includes');
|
||||||
|
module.exports = require('../modules/$.core').Array;
|
13
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/index.js
generated
vendored
Normal file
13
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/index.js
generated
vendored
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
require('../modules/es7.array.includes');
|
||||||
|
require('../modules/es7.string.at');
|
||||||
|
require('../modules/es7.string.pad-left');
|
||||||
|
require('../modules/es7.string.pad-right');
|
||||||
|
require('../modules/es7.string.trim-left');
|
||||||
|
require('../modules/es7.string.trim-right');
|
||||||
|
require('../modules/es7.regexp.escape');
|
||||||
|
require('../modules/es7.object.get-own-property-descriptors');
|
||||||
|
require('../modules/es7.object.values');
|
||||||
|
require('../modules/es7.object.entries');
|
||||||
|
require('../modules/es7.map.to-json');
|
||||||
|
require('../modules/es7.set.to-json');
|
||||||
|
module.exports = require('../modules/$.core');
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/map.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/map.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/es7.map.to-json');
|
||||||
|
module.exports = require('../modules/$.core').Map;
|
4
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/object.js
generated
vendored
Normal file
4
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/object.js
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
require('../modules/es7.object.get-own-property-descriptors');
|
||||||
|
require('../modules/es7.object.values');
|
||||||
|
require('../modules/es7.object.entries');
|
||||||
|
module.exports = require('../modules/$.core').Object;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/regexp.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/regexp.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/es7.regexp.escape');
|
||||||
|
module.exports = require('../modules/$.core').RegExp;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/set.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/set.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/es7.set.to-json');
|
||||||
|
module.exports = require('../modules/$.core').Set;
|
6
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/string.js
generated
vendored
Normal file
6
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/es7/string.js
generated
vendored
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
require('../modules/es7.string.at');
|
||||||
|
require('../modules/es7.string.pad-left');
|
||||||
|
require('../modules/es7.string.pad-right');
|
||||||
|
require('../modules/es7.string.trim-left');
|
||||||
|
require('../modules/es7.string.trim-right');
|
||||||
|
module.exports = require('../modules/$.core').String;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/_.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/_.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../modules/core.function.part');
|
||||||
|
module.exports = require('../modules/$.core')._;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/concat.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/concat.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/js.array.statics');
|
||||||
|
module.exports = require('../../modules/$.core').Array.concat;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/copy-within.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/copy-within.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/es6.array.copy-within');
|
||||||
|
module.exports = require('../../modules/$.core').Array.copyWithin;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/entries.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/entries.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/es6.array.iterator');
|
||||||
|
module.exports = require('../../modules/$.core').Array.entries;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/every.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/every.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/js.array.statics');
|
||||||
|
module.exports = require('../../modules/$.core').Array.every;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/fill.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/fill.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/es6.array.fill');
|
||||||
|
module.exports = require('../../modules/$.core').Array.fill;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/filter.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/filter.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/js.array.statics');
|
||||||
|
module.exports = require('../../modules/$.core').Array.filter;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/find-index.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/find-index.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/es6.array.find-index');
|
||||||
|
module.exports = require('../../modules/$.core').Array.findIndex;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/find.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/find.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/es6.array.find');
|
||||||
|
module.exports = require('../../modules/$.core').Array.find;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/for-each.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/for-each.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/js.array.statics');
|
||||||
|
module.exports = require('../../modules/$.core').Array.forEach;
|
3
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/from.js
generated
vendored
Normal file
3
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/from.js
generated
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
require('../../modules/es6.string.iterator');
|
||||||
|
require('../../modules/es6.array.from');
|
||||||
|
module.exports = require('../../modules/$.core').Array.from;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/includes.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/includes.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/es7.array.includes');
|
||||||
|
module.exports = require('../../modules/$.core').Array.includes;
|
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/index-of.js
generated
vendored
Normal file
2
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/index-of.js
generated
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
require('../../modules/js.array.statics');
|
||||||
|
module.exports = require('../../modules/$.core').Array.indexOf;
|
12
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/index.js
generated
vendored
Normal file
12
goTorrentWebUI/node_modules/react-dropzone/node_modules/core-js/fn/array/index.js
generated
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
require('../../modules/es6.string.iterator');
|
||||||
|
require('../../modules/es6.array.from');
|
||||||
|
require('../../modules/es6.array.of');
|
||||||
|
require('../../modules/es6.array.species');
|
||||||
|
require('../../modules/es6.array.iterator');
|
||||||
|
require('../../modules/es6.array.copy-within');
|
||||||
|
require('../../modules/es6.array.fill');
|
||||||
|
require('../../modules/es6.array.find');
|
||||||
|
require('../../modules/es6.array.find-index');
|
||||||
|
require('../../modules/es7.array.includes');
|
||||||
|
require('../../modules/js.array.statics');
|
||||||
|
module.exports = require('../../modules/$.core').Array;
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user