Merged 1.3.x_branch into master
This commit is contained in:
@@ -1,4 +1,13 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 1.3.3
|
||||||
|
* \#49: Download progress is not visible if dependencies are missing
|
||||||
|
* \#51: javascript error
|
||||||
|
* \#52: Mount location is not set error on new install
|
||||||
|
* \#53: Busy notification is still visible when 'Install' button is available
|
||||||
|
* \#54: Unable to download UI update while dependencies are being checked
|
||||||
|
* Disabled 'Install' button in new release notification
|
||||||
|
|
||||||
## 1.3.2
|
## 1.3.2
|
||||||
* \#48: Support pinning files to cache
|
* \#48: Support pinning files to cache
|
||||||
* Fixed Skynet export display
|
* Fixed Skynet export display
|
||||||
|
|||||||
12
README.md
12
README.md
@@ -12,13 +12,13 @@ Skynet support is considered EXPERIMENTAL. Files added to Skynet should not be c
|
|||||||
* ScPrime >=1.4.1.2
|
* ScPrime >=1.4.1.2
|
||||||
|
|
||||||
## Downloads
|
## Downloads
|
||||||
* **Repertory UI v1.3.2 Linux
|
* **Repertory UI v1.3.3 Linux
|
||||||
64-bit** [<Download\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_linux_x86_64.AppImage)
|
64-bit** [<Download\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.3_linux_x86_64.AppImage)
|
||||||
* NOTE: Linux distributions require `fuse` and `libfuse` to be installed.
|
* NOTE: Linux distributions require `fuse` and `libfuse` to be installed.
|
||||||
* **Repertory UI v1.3.2 OS X
|
* **Repertory UI v1.3.3 OS X
|
||||||
64-bit** [<Download\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_mac.dmg)
|
64-bit** [<Download\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.3_mac.dmg)
|
||||||
* **Repertory UI v1.3.2 Windows
|
* **Repertory UI v1.3.3 Windows
|
||||||
64-bit** [<Download\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_win.exe)
|
64-bit** [<Download\>](https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.3_win.exe)
|
||||||
|
|
||||||
## Supported Platforms
|
## Supported Platforms
|
||||||
* OS X 64-bit
|
* OS X 64-bit
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "repertory-ui",
|
"name": "repertory-ui",
|
||||||
"version": "1.3.2",
|
"version": "1.3.3",
|
||||||
"private": true,
|
"private": true,
|
||||||
"author": "scott.e.graves@protonmail.com",
|
"author": "scott.e.graves@protonmail.com",
|
||||||
"description": "GUI for Repertory - Repertory allows you to mount Sia, Skynet, and/or ScPrime storage solutions via FUSE on Linux/OS X or via WinFSP on Windows.",
|
"description": "GUI for Repertory - Repertory allows you to mount Sia, Skynet, and/or ScPrime storage solutions via FUSE on Linux/OS X or via WinFSP on Windows.",
|
||||||
|
|||||||
@@ -1,84 +1,60 @@
|
|||||||
{
|
{
|
||||||
"Locations": {
|
"Locations": {
|
||||||
"centos7": {
|
"centos7": {
|
||||||
"1.3.2": {
|
"1.3.3": {
|
||||||
"sha256": "a8b9bff91d0f0685041737cfa40b4bc8ef765d24419104f3dd90f977023e7858",
|
"sig": "BL1hmylvFtrY5GAJaZD4m2YAgOgf21N7aCRmQmVQqDpA5tLrLhaCxJaRwQaNTXrNFnwL3YHBXJQf5cJi43dVXI7o+rcltU5QDA2Q7DvzdlaMfL9saBzxLT0D94l017XvczaxhOlypEQIUzFVQYxGzdw3Kx6fKWFySeKgS4l+SB1FTXfeYhfp2ZApOdRB1Y9BzAIN0hATm/UBcBL12FlwCl4+YV6BEIz/07I8VypwxLx68dqGCE/ucTVCf/4D00oGcWEFfrIxBnGzSLFWSyvhvyJwJWvH4VIDIP2KwlhdEs/3p0ETzSl1YbV+bOeUbUGR6Nv2ljF62Y918WOXspiC6N2bDzvpBZkkpKs0xRih4AJQDHR6gs3/43XIqrnTrKMZbZVy2JnEkl3KNGmscLjzS8lus7Wmkn8l0qyOuGY30ef4q60q55VVUw4y+Ox66WbnMYpLpSCY56iNOjw0Kp+rpV7UreLFt5UffQuWWlOttrXs1XJKO9GYv8kbognKAf8gRr7iJWMbZWe8o4++P9ziwt4nd7JlcGzxKinntB4Jn/BHYJnJKGqHhA5j8EJ1QZlu3txruKdcOPV7RpXoFEvOJZ8rji7mUUrlPGM/UJ8JhLcr8P+goKza9dFcX3pFqVHOll4pNOmpPOE+ui+UPSk0I9oCBlEvHSMijywVnwjMh2Yb+VBbuC9Hw5qK2kMZgGXpysa40WrEO5dznJclRSDChIKWVJzdvqnQ2mkR7va+4YAi7Pi/7JnJkO1gcM7O0hGz2bHeG3j7xdUvf0pS8YCcEYojJ97xnBH5UWDYXPBnMsrBMy7mwu/TH8MEGtLiC+9k6THV4Xf9ooS2roHhVskkK5u3xhNFNLxeBVBnQvk7lHynjFbjVNa3URMsD5J5SzQ8O10UhAV8vnpTD70GO25htI1MZuMgV8KPZZ5pOlUMrxqgS14obph8TxMUrD3Wy6SZrwYj/0JTY0lkfhxaXuaecoKDVtCVmiTCcioFryvMymCuz0/0FV8ctlau5Ko3W2W0wmWCVmlDSU5xEybVDegSSnI6bWPQn1SgHUC6DpaWa5LOtCMBgA84AAEMRCMDIcc1EY/VAHz/NeU9UJFESdv/uniL2wcWRq72xPYVwD5fB5YEyFgHx3UXNxhtwMWeThEaOvmHp2snOksM6RSjXVcBLkzK7JQxb25AKEo0rpgHqcVZo+pRpl/6RyXmJWQb1Fl0N6/0fDzJUS3Ji1fAw4O9T2ftrrk1WUD/PsjdaXKRJfWDNl9iWN4gbv+KZAwx+BgF+oMD4b7bOU+cQnkISzT2WD8k/S7wKhrbyMGOWwPYHnebIj0TK0QR0+RWpcP5BggGe7/YpjizvVPGBySjYTcWcig=",
|
||||||
"sig": "CBEtKUDJwjPrchhNXvzulpfaBWFElDD+Kn9b14oF426IuKncsmqTWUesG3cT/beDk1onaDOhDIchyan6iW/BCdB+sVAuGAoRpm2lJ4lWba7ZPnXP7H10uIjVf1xASwIciP4jpAUPo0bO8hi9kqu1zkF9GeVHHb+SXlLhDP31wN7kHwgb/MeZ95/NqfucumYcwfFOZOnofSKaGQwHpbypy57YzyVCf/NzQDnYC46lcH9xVMmbgodT+y5MIIF0kkSJn0DbSfxLVMWTx1pnZUzJ7J827EKUgAS4d4uLI7ShskS+d84i8rNV9gXgqwYkqDvYbdFi7ArJZB7GJtyZ4VPTqRqGfxwF8rL3K0ml+635DfEXiHN8MbTuqwLHD2giChOfsdAAV4ngJ8xg7+Th8dqpgC92GXoOjNK7GSAyrOFsQ7xeqdVOBZMNk/dHVAb9eCTbPIsOjGFTAzOk8n3roM8naDUOq7PefUj1Jb2EGVhWnwS2ngvhNfRggZmmr3l9IElddaHro0JpnubsFmiAa+akV0P8VLb1jjpIJRfr2CIEnPTQbT4UQ1DdBitgkWiPbagTp8BQF1YGcVZ8jc9mbOxmF46z0MyuMQZjDHw2Vai0uPsoLIJHhy3I7nJqsnEw6gQX/l1VGj9wPHeaqMgGYGFykFfvVssh0CH45tUCdWL6Q9Hgx8+yLw0Lky/HIGMQc0qZUM9ute/9Buifd9cOK8+S5PaA0Zg0G/pIY6fThtO86wKJQnoPeiuBkJ9yXc20ZGrfb39Qnf2nZxrPyVl2iQJlven6CDBxc88henxzvxK61bXUynK8zHVuoIAC7ejWZEbPOqDV3DOOSVDz1+eq1MU2KZ4JmaLipzbdy/y+ph1TnCGwdL9R3s+xLYSaxA+ybhQVNXHhQ7+eZD6CWXytaIVYe8giL1ki8oN/18Bm1B2dVxCZ4KKbAToFpBOGvW+w8JFAC5nBK5aj2BGWEocyWQ1XIJmqVBd8RSOMYVYjQOhVnIvyJxOqvnrLUoRzJruj8R/riuCSMnfq17ykpjCzoNzIjvimCPyAib9kdWx7M8dyOS9Sls2sMLwJvDcsGi/FfuGqBmV2v28XagRZz70iypqNaIUrj4CShfz8e110su3BtLQHr1O6yffxy+whbB7w+ogZ6gz86AZ/63Zz6xbLIk4wuNx1UL/ZuRMGq4xOW/7zRpOYYSe/h98YFd9/UTcoi8Osjl+o1eVup6YWVeDvOG69uqwfID8XHivJnEV2NVFx8fbb6fHSrMg/QbjSngdyQ3b+5rWiZG01DGCDB5RFOvEKY24qrXXWQGAx+JXbj+/7xYWts+/Fv7hSqvpvf7H8aVCoOKXGtjJiy+K/9tAJJLQDAzo=",
|
"sha256": "03c29d95cb5406f90b076d633fd6a3e2f4a42a5bcf75433099453c0767acc761",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.3_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"darwin": {
|
"darwin": {
|
||||||
"1.3.2": {
|
"1.3.3": {
|
||||||
"sha256": "d8e5749a43541edaeaa91cbc81c42fb21c8e4c8446c9c1dff0a8e3a0efc23270",
|
"sha256": "7fbcca92d5d3c728e3663a4cf4035c5d1c45f4cd3a43b5dab605969aa9f95d29",
|
||||||
"sig": "AKXLbLDnkBlB2b8dKLPZ5Vr9bcbv1dCvYGJTCltxYRJkOBzmQMTJ+ADKAtQQCfZKtNji+Dez28A401BMUY7xBd3Sh4FDnmNv64Q2zfqxQpOkhdrK8KcwK2aFCFbWn3vTnU3GBk2IXqGY8qIeR4d/v2UaBnnpK0EulztxPXojLz0pA6DVndJOodItoE6OUNohPd5MTWh5ewpjXJN+VKeao3ABkXgCzYLH/SSYCyi8ZFH8Ija20HJk8ST2QIokmRQGk5MDcyxylyWkusGOf7yn9M6vdtHNfrHfWXGxnMTuaw9+YNTuxZNDgIFpmoVx4t7HSoNti+ZZwyo+1jtDeh0xPmdEGpnZOY7zp94zlh4zP9Cx5cYg6W5/NQKQzDtlUZlELqR8Kwoa/bDCwWeSkifGqEJT2Yezs9r5llSoIh8PrxLkmdaX2vkOvaRYYE0kvdO2MllT8SSyYkum/9eD8uA52IYbUliJqfAf43gOj9n0ooRcCo45lBY5PIUB44XBLEGK15OuarybSyaBDMFbc3HWh1A9jB9kSPctnMMJMNMsocTI5AEN8eRbLyF7z01WE+nB7JDS8NW3+QRFyQInxdXpcGeKO6riuSO7aXHLWAZvUVSxThSuV7JtsugtUnIsP9ah7njtcVHOSEcUG3U2WxZRbe6PG5pdjS4Px+E9Yx35zLSwo39TcwLb2fM7mQKREsH0fUrRd4WN1T0pWOuzDlWSq4pfDXWdO8y828l8XVJzw5LUH9U0F7qAiuzEVQIYJ+xjjAp4JVJXBof4iWeW4N+7PYgntEgr94Ti6rjb6BrKWdl4B+9j79EkC2yLWafcGnryUaSfOFDFiB8Upf6NQ+a1TxY5ufFe1JfuI58rchUZi4SjNdyFMat4GSdTI6I513ZVcohBb1KVIxEM0u38hJqKIFx3stWMZrLvyFH9ceqzXzVQCIDE31usUKFsXallWMQyB2kIy7qoif7zmDhdJQZboD7ZHsTrcSK1u9D+h3oG1poN+AULmhgYZNT11ktRiVUbmzDS0qA7lnF8dcsuthj0vHP0/BFN6a7ljQuwDVY1xoeCf+RobfNWucK2MLxmqV1z9nO4jpdy/GfC/5ln4Tev+5luo5ux0BXXXAWuzGyQ0QK+13k3lIUwxsDNou0dMDHJPaMavBjmlm0Uf5esZdSIU9U2sdfuO+j/6enwGvESlrKmBCsdPatHREP931dGPZCsF1m30OylV+m7WhBh9w6AbklmjHNCZu3C2Ln23gOKGX8HpQ9nnaPCicmlfSyBjPoKVtDCACVbjwRfTJ+UXCocrCVSbAhskOSvlq050QFQcZO5DzFWdeTfG6x6MrqdSelYThjy5xn8AXuqsFSLIdYpCAQ=",
|
"sig": "BPM/WKDq+vueZ7YcSI3S+GbisBPsv/OjZPnyxAfHvDQst+Fjrx/9jmTJTTFMtP0xZ1RtrnmSkAwjnyTJRgEPCfe4yWsV52augPp9tvEBVKJgb5KM10h1yN0+DlNB4PMPdE6Ix520mIbQXY72BedPt3qhkom5RN/rQ/ZTHO9qmKwHpvaukh4tUsfsMlGEzjm/Bzch2qdj1pi4CGuug0KxIp23NSgk2ic4EcnVR+aa1lhEpjgE6pGg5ikQ07GR/mFkvr6xAlrEQVXuJ7qGStkXjNuNywSAhT+kUwRr1Wd43s7FEikInLLbewhXStZLG/Q9fVYFxXBoPhk6g5deshGabmNCWt/4JcYYFEq5HWCoaT/86DKQJnLZ3ZMnO/cqlj/7jbi29TmTxvoqdDADp7yRMAcM89LsjDMiFnADlnlsBhUYrM8kjJsd4VGZESviMWmls3kPr3oaZ+OjBQdcYX/bpvrFULFtRxOHYPJHJ9W1IkOd2EGYf/BcxyjRxGqI18oj3a9VaVzyM3IWm3i2Bw0ijj2GQ+p/qeyy3lzTNM25LuUe/PJF9d0wuLisTpvFyW52tNOBLqhrT2wQK8oCo95MqSNKd22vfxJzTcD8PlZSG9ZXNTrmKFbYqJmi6JptUNLVlyn1L8uyJf4S+vL8HAJ1hSqr4iJ/AIF5nMBONzE/4PCP3tathkJ67Yfw0eQbOwl7d+fXSJjZtggFUADLGcwrCLHRclSiW7/9LpL6YJD+h0Ud9ZgLNjYjU/bHL6TCqeAtbSBYG6VNFWN+s73NaBkzC2kx6HnWaa2q4AHAxoix7/LUWhdWh85XGa1UUFWtyxy+hIM3cpacKrSd3u9VdKLHL3GtdfvQjvEE/5UyjH2VzedRVZntjVlBTnVDHq/J4prBAZyA/PSOGtK1x0LmlH2UdT3QEU1WNZaag7vLKWxfPPVvO8zoJG21l8xFWfoAZ/90HA5WRxEsSavSUXzvffmv9O5C/WnWj0tNRsWYqwOYS9l7IcrUDB68V2Rws/sDG56xfgqzdZM4CjM3BBQyarVWr9wyzxAfR0VFOf7GsjF7A1OpQXPiY8pVHg7QPTUSG0Ssse1/leZnU11CEpr/v8JwmHi7LRZ0KSbUowRwPjkzVdDrRjnIQh+2ssphL5mJHNfoxNUFAbvQidN5OjzdUoqEK7H6/OjjHek9mgvJuDDYSHV5cUwgmgPFTwONarrepFThj5YwKGQhYYsCqJLZ+ZunzsjXTJ3VlIF+B0qir370oEWq9dWvaLUYkC6QCHifJ+ZVaPp/pNln7S0zh/dTGO84aKwS0hF7S0uvTTiKRXHTBDmHnmSQuoG8Fku1iqbE9fkScIYPF2wO5N7UPgU86te8/to=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_mac.dmg"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.3_mac.dmg"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"solus": {
|
"solus": {
|
||||||
"1.3.2": {
|
"1.3.3": {
|
||||||
"sha256": "a8b9bff91d0f0685041737cfa40b4bc8ef765d24419104f3dd90f977023e7858",
|
"sig": "BL1hmylvFtrY5GAJaZD4m2YAgOgf21N7aCRmQmVQqDpA5tLrLhaCxJaRwQaNTXrNFnwL3YHBXJQf5cJi43dVXI7o+rcltU5QDA2Q7DvzdlaMfL9saBzxLT0D94l017XvczaxhOlypEQIUzFVQYxGzdw3Kx6fKWFySeKgS4l+SB1FTXfeYhfp2ZApOdRB1Y9BzAIN0hATm/UBcBL12FlwCl4+YV6BEIz/07I8VypwxLx68dqGCE/ucTVCf/4D00oGcWEFfrIxBnGzSLFWSyvhvyJwJWvH4VIDIP2KwlhdEs/3p0ETzSl1YbV+bOeUbUGR6Nv2ljF62Y918WOXspiC6N2bDzvpBZkkpKs0xRih4AJQDHR6gs3/43XIqrnTrKMZbZVy2JnEkl3KNGmscLjzS8lus7Wmkn8l0qyOuGY30ef4q60q55VVUw4y+Ox66WbnMYpLpSCY56iNOjw0Kp+rpV7UreLFt5UffQuWWlOttrXs1XJKO9GYv8kbognKAf8gRr7iJWMbZWe8o4++P9ziwt4nd7JlcGzxKinntB4Jn/BHYJnJKGqHhA5j8EJ1QZlu3txruKdcOPV7RpXoFEvOJZ8rji7mUUrlPGM/UJ8JhLcr8P+goKza9dFcX3pFqVHOll4pNOmpPOE+ui+UPSk0I9oCBlEvHSMijywVnwjMh2Yb+VBbuC9Hw5qK2kMZgGXpysa40WrEO5dznJclRSDChIKWVJzdvqnQ2mkR7va+4YAi7Pi/7JnJkO1gcM7O0hGz2bHeG3j7xdUvf0pS8YCcEYojJ97xnBH5UWDYXPBnMsrBMy7mwu/TH8MEGtLiC+9k6THV4Xf9ooS2roHhVskkK5u3xhNFNLxeBVBnQvk7lHynjFbjVNa3URMsD5J5SzQ8O10UhAV8vnpTD70GO25htI1MZuMgV8KPZZ5pOlUMrxqgS14obph8TxMUrD3Wy6SZrwYj/0JTY0lkfhxaXuaecoKDVtCVmiTCcioFryvMymCuz0/0FV8ctlau5Ko3W2W0wmWCVmlDSU5xEybVDegSSnI6bWPQn1SgHUC6DpaWa5LOtCMBgA84AAEMRCMDIcc1EY/VAHz/NeU9UJFESdv/uniL2wcWRq72xPYVwD5fB5YEyFgHx3UXNxhtwMWeThEaOvmHp2snOksM6RSjXVcBLkzK7JQxb25AKEo0rpgHqcVZo+pRpl/6RyXmJWQb1Fl0N6/0fDzJUS3Ji1fAw4O9T2ftrrk1WUD/PsjdaXKRJfWDNl9iWN4gbv+KZAwx+BgF+oMD4b7bOU+cQnkISzT2WD8k/S7wKhrbyMGOWwPYHnebIj0TK0QR0+RWpcP5BggGe7/YpjizvVPGBySjYTcWcig=",
|
||||||
"sig": "CBEtKUDJwjPrchhNXvzulpfaBWFElDD+Kn9b14oF426IuKncsmqTWUesG3cT/beDk1onaDOhDIchyan6iW/BCdB+sVAuGAoRpm2lJ4lWba7ZPnXP7H10uIjVf1xASwIciP4jpAUPo0bO8hi9kqu1zkF9GeVHHb+SXlLhDP31wN7kHwgb/MeZ95/NqfucumYcwfFOZOnofSKaGQwHpbypy57YzyVCf/NzQDnYC46lcH9xVMmbgodT+y5MIIF0kkSJn0DbSfxLVMWTx1pnZUzJ7J827EKUgAS4d4uLI7ShskS+d84i8rNV9gXgqwYkqDvYbdFi7ArJZB7GJtyZ4VPTqRqGfxwF8rL3K0ml+635DfEXiHN8MbTuqwLHD2giChOfsdAAV4ngJ8xg7+Th8dqpgC92GXoOjNK7GSAyrOFsQ7xeqdVOBZMNk/dHVAb9eCTbPIsOjGFTAzOk8n3roM8naDUOq7PefUj1Jb2EGVhWnwS2ngvhNfRggZmmr3l9IElddaHro0JpnubsFmiAa+akV0P8VLb1jjpIJRfr2CIEnPTQbT4UQ1DdBitgkWiPbagTp8BQF1YGcVZ8jc9mbOxmF46z0MyuMQZjDHw2Vai0uPsoLIJHhy3I7nJqsnEw6gQX/l1VGj9wPHeaqMgGYGFykFfvVssh0CH45tUCdWL6Q9Hgx8+yLw0Lky/HIGMQc0qZUM9ute/9Buifd9cOK8+S5PaA0Zg0G/pIY6fThtO86wKJQnoPeiuBkJ9yXc20ZGrfb39Qnf2nZxrPyVl2iQJlven6CDBxc88henxzvxK61bXUynK8zHVuoIAC7ejWZEbPOqDV3DOOSVDz1+eq1MU2KZ4JmaLipzbdy/y+ph1TnCGwdL9R3s+xLYSaxA+ybhQVNXHhQ7+eZD6CWXytaIVYe8giL1ki8oN/18Bm1B2dVxCZ4KKbAToFpBOGvW+w8JFAC5nBK5aj2BGWEocyWQ1XIJmqVBd8RSOMYVYjQOhVnIvyJxOqvnrLUoRzJruj8R/riuCSMnfq17ykpjCzoNzIjvimCPyAib9kdWx7M8dyOS9Sls2sMLwJvDcsGi/FfuGqBmV2v28XagRZz70iypqNaIUrj4CShfz8e110su3BtLQHr1O6yffxy+whbB7w+ogZ6gz86AZ/63Zz6xbLIk4wuNx1UL/ZuRMGq4xOW/7zRpOYYSe/h98YFd9/UTcoi8Osjl+o1eVup6YWVeDvOG69uqwfID8XHivJnEV2NVFx8fbb6fHSrMg/QbjSngdyQ3b+5rWiZG01DGCDB5RFOvEKY24qrXXWQGAx+JXbj+/7xYWts+/Fv7hSqvpvf7H8aVCoOKXGtjJiy+K/9tAJJLQDAzo=",
|
"sha256": "03c29d95cb5406f90b076d633fd6a3e2f4a42a5bcf75433099453c0767acc761",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_linux_x86_64.AppImage"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.3_linux_x86_64.AppImage"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"win32": {
|
"win32": {
|
||||||
"1.3.2": {
|
"1.3.3": {
|
||||||
"sha256": "29b91fcba36fc7cac38837674559c6af1169b3dc54bd57284c3ecf44a1af869d",
|
"sha256": "a86091d453600506cccb25759b62a638c482ce8983d24a5b3ec1def9545ae1c3",
|
||||||
"sig":"BLy7sutkbfkK39sOPPlDdn8DVoorVC7NiEl7LvCqp9Dcnt+6afmszRLFYNu0ipu2krN8HdA2uCqCS2lAlNwOzGzkCGN6RHfobHRqj/HObNrWsvGKSp+Vdt96J76TmrV/gjPGLJOBq5dobBGmN1KJSrkLpWj6IOoEuR4/7WkSJah4XWMIfVlPAZKwP6yNv6OaYqjIy74geKkoCI5/mmwDzUX/T8M3DsdSbm3kuYJ0S3E3mEO2lGH++nxDDPMdA2yjFbBwHU2RFQShbL7jB/AqodSrIU4wOstbRWiF34KUZ/KYG+ZFvwEBshbgDoZQyNbVmFDD86g/sEatnQRpN7juGBWwScgPfoTbdl9y0lf5U85dicOe7+iholAUVprLuPk9Y3NVXoBFM9g9mkqgMVoYoSUgh/BJBnomDgvt1pd4Id/CO26buhSU28fRbQ/c8i+x5zdsfqN7p/64sj/2Xp0HQMwFmc3IotjDEtUTcfI+VGP62pJLMao5vheZ8JU05GXn7ZA7Sojfov9luuoajguukXHEclaxgWKyo0u/ZcowExrKpkegxui6v/3+W/pTv/cSg01CFyJTMTvT9cT7O0bWSdUcxOgpYptV5wVOdglUm/aQscqtDVaVv90ZMNldQ2YVI6wuFTIcUpWNCa/r5oIcGVWWrxBu9uq0jLF3AoTNpLeLJuJL37KacJwNqNDUolG6bwdjvAI1cpcy7fGrzbGE95pPmHpruVfKpLpSQ7tKnT5dV9H2gQz63gl/QzvVGnov0pLUNuJwQQhdvcGZXnVcB96u0i8GBacr4WZVhhJWGWk/u5zx5ganXcXYkodDLN4zpI/aV/TdW2QH2xN8OOmQOZ8yZS9toS0vcIUeoT6eQUg5clJniKtivUv2GSldGzKG9xk3s/2IQlivOX2BxnTSYaP1AkWTUSyJeXcEYbYytLiFrMj875NxeYfKD74SGfxWh//NWyzL7GG/q8G77xw/1s4LorzhSN5jifyPgtSWI4h3WaSu6nfLJHioujAEMDwhkwP9mPmPmBUbTveKWdTZy7YQGGN+4DMJLoGQnx0qBbsIOWfmt+/cjQ72Sx8V7oRzElSohxg9q/oCKkMo4f1JuS1kOGasbPnXjjjuWTX1bOeQ86TjBi+wSt1Y5VgifvyfEdEeDvvwrcm2Cp3NnWYAXhqE5tgVUIYLEtsbHaAtWOv4XSlp8EISd1XIDeTADHNonEEWUWGjNJvylQ05iGUjQny6CObSN3gNbwL0xO/gI1o1+SR4HsM5u2leIKaD5hU/6OdsorVX53b1xPNLyLrDr1uMgfM6lGgCyrs8DY5hVIujIycTSEbaAGpMA2+ovzpa9jO/cZ0/slMMf55Roic2yCQ=",
|
"sig": "AeaJxYZ8LpeCAKJEeS0QmfwL894tHmJ2tHi4JRQPoPOzU2fxMSthgOIOLgeTIDuagVk4hbUeZ02Q/t53AQCcrgmyT9xxJy1/2gdkgBN4yLcD76dg9QsSIAT/D3W3oOwzvRu2GRHzKKjD+dzR2HDSbMz6YHsIJDBGqWEcd3PTJ0jREWpQm8slbNflnmMIgumRKzwws93fus4rxXqTTgl/wn01wgSbgrSjncuTRXQUtk63LofkH87g3ivLd3iHVUnCHYQlpKKUuyK1t5Prr7akcFno588k5VGmRYrXljcakobZVeG5ikCFl3+463Eq4Bf1AzMHS6jlSAyEigF10Ys0iD59DnoE2/q2GJekbW0Zjs7qWTQldJyvwa5lhsU5gOxgJYcydhmAu1jEw74jHu/XDFxIpsrfAZfowHTuItsv5kSjJAQleMtDmMnOPs+S+PDhgOTQjtksplnu3aSHdKKE88nkUdWhcddxTFqD1R6IKSBvPZGcRX17n64MnzWqq3yuSV0qAe0CgRWF7Cy48YMeaPk1V+yCkUSh2nvIkjfRc5rRv14Jh2sq03beMxnEC2n+PSV5WA85gWcmkl53iDJSfWATCq6M1rj+PzTwmnjagjnhgDDLolH/g/RWabUEA9ywG9xtJb2M0aCAY7sqeX8I5WEODkfmHTGvYi6E9L7xvpHwmYPxVr2Frs+PbKa8h5C4RLJZGQlia5Rw7i3g0byd9shpbRcrzoGEJmBbkzdMWgSwIVXPD+EqqfiTOdcmQy1JwsTF9zUx7auxXviAddr6HlXXFLt661b47WElRJGXgl1m9qi8eSYRIH0a5wF5XRU+LyCDllUTZhMNNGGP1U3azu3iYsOaYphobn/IVlZBJ4phoafr4D69PbOG+k9B4pTxwHeY7jmszUpiJMgonoftp9TLsLIzDcXBp0vEVoPE0fr1ljOAaQgdtsi0wr0Z2Nxtp5d04d/cYfvfOKx2M/uupdpmU/aBCnv79r9etnnEHhcQtpfCNAZ4567pYAiLiJ4zVEct715hZ6LN57Wx5YWfNT6aCUogWaLx0K5CaL9kv0HyllIoM5z1+7unKwmq4nSO5A1QAh67yCfPTISL2m1SIODmnYUqgBk95oX/AAEk+gaCil0b2A6JGxbI3OcUEyN4BZcWyJRL2QToEmUMNkUuK+aaQl5OTp2wNLFXO1wpqXQAVppDeY2nHqjUY9B2Wku2wFV61T1VZ9sYlGoFYjK7G6PQUsBCTmXAlpzLUjWadgWvKPyRehy4Bzdqwy+BuZ8BEC+txUDnh90jUqd9YCXGsMLEGa6EXijjCBRhqdfQTLZpd3n62YpMvXkfQ6lNnaI4ybqqXwuDpvB5Cvx3tk2VOwc=",
|
||||||
"urls": [
|
"urls": [
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_win.exe"
|
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.3_win.exe"
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"debian9": {
|
|
||||||
"1.3.2": {
|
|
||||||
"sig": "CBEtKUDJwjPrchhNXvzulpfaBWFElDD+Kn9b14oF426IuKncsmqTWUesG3cT/beDk1onaDOhDIchyan6iW/BCdB+sVAuGAoRpm2lJ4lWba7ZPnXP7H10uIjVf1xASwIciP4jpAUPo0bO8hi9kqu1zkF9GeVHHb+SXlLhDP31wN7kHwgb/MeZ95/NqfucumYcwfFOZOnofSKaGQwHpbypy57YzyVCf/NzQDnYC46lcH9xVMmbgodT+y5MIIF0kkSJn0DbSfxLVMWTx1pnZUzJ7J827EKUgAS4d4uLI7ShskS+d84i8rNV9gXgqwYkqDvYbdFi7ArJZB7GJtyZ4VPTqRqGfxwF8rL3K0ml+635DfEXiHN8MbTuqwLHD2giChOfsdAAV4ngJ8xg7+Th8dqpgC92GXoOjNK7GSAyrOFsQ7xeqdVOBZMNk/dHVAb9eCTbPIsOjGFTAzOk8n3roM8naDUOq7PefUj1Jb2EGVhWnwS2ngvhNfRggZmmr3l9IElddaHro0JpnubsFmiAa+akV0P8VLb1jjpIJRfr2CIEnPTQbT4UQ1DdBitgkWiPbagTp8BQF1YGcVZ8jc9mbOxmF46z0MyuMQZjDHw2Vai0uPsoLIJHhy3I7nJqsnEw6gQX/l1VGj9wPHeaqMgGYGFykFfvVssh0CH45tUCdWL6Q9Hgx8+yLw0Lky/HIGMQc0qZUM9ute/9Buifd9cOK8+S5PaA0Zg0G/pIY6fThtO86wKJQnoPeiuBkJ9yXc20ZGrfb39Qnf2nZxrPyVl2iQJlven6CDBxc88henxzvxK61bXUynK8zHVuoIAC7ejWZEbPOqDV3DOOSVDz1+eq1MU2KZ4JmaLipzbdy/y+ph1TnCGwdL9R3s+xLYSaxA+ybhQVNXHhQ7+eZD6CWXytaIVYe8giL1ki8oN/18Bm1B2dVxCZ4KKbAToFpBOGvW+w8JFAC5nBK5aj2BGWEocyWQ1XIJmqVBd8RSOMYVYjQOhVnIvyJxOqvnrLUoRzJruj8R/riuCSMnfq17ykpjCzoNzIjvimCPyAib9kdWx7M8dyOS9Sls2sMLwJvDcsGi/FfuGqBmV2v28XagRZz70iypqNaIUrj4CShfz8e110su3BtLQHr1O6yffxy+whbB7w+ogZ6gz86AZ/63Zz6xbLIk4wuNx1UL/ZuRMGq4xOW/7zRpOYYSe/h98YFd9/UTcoi8Osjl+o1eVup6YWVeDvOG69uqwfID8XHivJnEV2NVFx8fbb6fHSrMg/QbjSngdyQ3b+5rWiZG01DGCDB5RFOvEKY24qrXXWQGAx+JXbj+/7xYWts+/Fv7hSqvpvf7H8aVCoOKXGtjJiy+K/9tAJJLQDAzo=",
|
|
||||||
"sha256": "a8b9bff91d0f0685041737cfa40b4bc8ef765d24419104f3dd90f977023e7858",
|
|
||||||
"urls": [
|
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_linux_x86_64.AppImage"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"debian10": {
|
|
||||||
"1.3.2": {
|
|
||||||
"sig": "CBEtKUDJwjPrchhNXvzulpfaBWFElDD+Kn9b14oF426IuKncsmqTWUesG3cT/beDk1onaDOhDIchyan6iW/BCdB+sVAuGAoRpm2lJ4lWba7ZPnXP7H10uIjVf1xASwIciP4jpAUPo0bO8hi9kqu1zkF9GeVHHb+SXlLhDP31wN7kHwgb/MeZ95/NqfucumYcwfFOZOnofSKaGQwHpbypy57YzyVCf/NzQDnYC46lcH9xVMmbgodT+y5MIIF0kkSJn0DbSfxLVMWTx1pnZUzJ7J827EKUgAS4d4uLI7ShskS+d84i8rNV9gXgqwYkqDvYbdFi7ArJZB7GJtyZ4VPTqRqGfxwF8rL3K0ml+635DfEXiHN8MbTuqwLHD2giChOfsdAAV4ngJ8xg7+Th8dqpgC92GXoOjNK7GSAyrOFsQ7xeqdVOBZMNk/dHVAb9eCTbPIsOjGFTAzOk8n3roM8naDUOq7PefUj1Jb2EGVhWnwS2ngvhNfRggZmmr3l9IElddaHro0JpnubsFmiAa+akV0P8VLb1jjpIJRfr2CIEnPTQbT4UQ1DdBitgkWiPbagTp8BQF1YGcVZ8jc9mbOxmF46z0MyuMQZjDHw2Vai0uPsoLIJHhy3I7nJqsnEw6gQX/l1VGj9wPHeaqMgGYGFykFfvVssh0CH45tUCdWL6Q9Hgx8+yLw0Lky/HIGMQc0qZUM9ute/9Buifd9cOK8+S5PaA0Zg0G/pIY6fThtO86wKJQnoPeiuBkJ9yXc20ZGrfb39Qnf2nZxrPyVl2iQJlven6CDBxc88henxzvxK61bXUynK8zHVuoIAC7ejWZEbPOqDV3DOOSVDz1+eq1MU2KZ4JmaLipzbdy/y+ph1TnCGwdL9R3s+xLYSaxA+ybhQVNXHhQ7+eZD6CWXytaIVYe8giL1ki8oN/18Bm1B2dVxCZ4KKbAToFpBOGvW+w8JFAC5nBK5aj2BGWEocyWQ1XIJmqVBd8RSOMYVYjQOhVnIvyJxOqvnrLUoRzJruj8R/riuCSMnfq17ykpjCzoNzIjvimCPyAib9kdWx7M8dyOS9Sls2sMLwJvDcsGi/FfuGqBmV2v28XagRZz70iypqNaIUrj4CShfz8e110su3BtLQHr1O6yffxy+whbB7w+ogZ6gz86AZ/63Zz6xbLIk4wuNx1UL/ZuRMGq4xOW/7zRpOYYSe/h98YFd9/UTcoi8Osjl+o1eVup6YWVeDvOG69uqwfID8XHivJnEV2NVFx8fbb6fHSrMg/QbjSngdyQ3b+5rWiZG01DGCDB5RFOvEKY24qrXXWQGAx+JXbj+/7xYWts+/Fv7hSqvpvf7H8aVCoOKXGtjJiy+K/9tAJJLQDAzo=",
|
|
||||||
"sha256": "a8b9bff91d0f0685041737cfa40b4bc8ef765d24419104f3dd90f977023e7858",
|
|
||||||
"urls": [
|
|
||||||
"https://bitbucket.org/blockstorage/repertory-ui/downloads/repertory-ui_1.3.2_linux_x86_64.AppImage"
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Versions": {
|
"Versions": {
|
||||||
"centos7": [
|
"centos7": [
|
||||||
"1.3.2"
|
"1.3.3"
|
||||||
],
|
],
|
||||||
"darwin": [
|
"darwin": [
|
||||||
"1.3.2"
|
"1.3.3"
|
||||||
],
|
],
|
||||||
"linux": [
|
"linux": [
|
||||||
"unavailable"
|
"unavailable"
|
||||||
],
|
],
|
||||||
"solus": [
|
"solus": [
|
||||||
"1.3.2"
|
"1.3.3"
|
||||||
],
|
],
|
||||||
"unknown": [
|
"unknown": [
|
||||||
"unavailable"
|
"unavailable"
|
||||||
],
|
],
|
||||||
"win32": [
|
"win32": [
|
||||||
"1.3.2"
|
"1.3.3"
|
||||||
],
|
|
||||||
"debian9": [
|
|
||||||
"1.3.2"
|
|
||||||
],
|
|
||||||
"debian10": [
|
|
||||||
"1.3.2"
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -98,7 +98,6 @@ class App extends IPCContainer {
|
|||||||
!this.props.DownloadActive &&
|
!this.props.DownloadActive &&
|
||||||
(selectedVersion !== 'unavailable') &&
|
(selectedVersion !== 'unavailable') &&
|
||||||
(selectedVersion !== this.props.InstalledVersion);
|
(selectedVersion !== this.props.InstalledVersion);
|
||||||
|
|
||||||
const missingDependencies = (this.props.MissingDependencies.length > 0) &&
|
const missingDependencies = (this.props.MissingDependencies.length > 0) &&
|
||||||
this.props.AllowMount;
|
this.props.AllowMount;
|
||||||
|
|
||||||
@@ -230,7 +229,7 @@ class App extends IPCContainer {
|
|||||||
skynetSupported={skynetSupported}/>
|
skynetSupported={skynetSupported}/>
|
||||||
</Box>
|
</Box>
|
||||||
));
|
));
|
||||||
} else if (selectedVersion !== 'unavailable') {
|
} else if (!downloadEnabled && (selectedVersion !== 'unavailable')) {
|
||||||
mainContent.push((
|
mainContent.push((
|
||||||
<Box dxStyle={{padding: 'var(--default_spacing)', height: '170px'}}
|
<Box dxStyle={{padding: 'var(--default_spacing)', height: '170px'}}
|
||||||
key={'md_' + key++}>
|
key={'md_' + key++}>
|
||||||
@@ -254,8 +253,8 @@ class App extends IPCContainer {
|
|||||||
textAlign={'center'}
|
textAlign={'center'}
|
||||||
type={'Heading1'}/>
|
type={'Heading1'}/>
|
||||||
<UpgradeIcon
|
<UpgradeIcon
|
||||||
available={this.props.UpgradeAvailable || (this.props.NewReleasesAvailable2.length > 0)}
|
available={!missingDependencies && (this.props.UpgradeAvailable || (this.props.NewReleasesAvailable2.length > 0))}
|
||||||
newReleases={!this.props.UpgradeAvailable && (this.props.NewReleasesAvailable2.length > 0)}
|
newReleases={!missingDependencies && (!this.props.UpgradeAvailable && (this.props.NewReleasesAvailable2.length > 0))}
|
||||||
clicked={this.handleUpgradeIconClicked}
|
clicked={this.handleUpgradeIconClicked}
|
||||||
col={dimensions => dimensions.columns - 6}
|
col={dimensions => dimensions.columns - 6}
|
||||||
colSpan={5}
|
colSpan={5}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import Box from '../UI/Box/Box';
|
|||||||
import Loader from 'react-loader-spinner';
|
import Loader from 'react-loader-spinner';
|
||||||
import Text from '../UI/Text/Text';
|
import Text from '../UI/Text/Text';
|
||||||
|
|
||||||
export default ({title}) => {
|
const ApplicationBusy = ({title}) => {
|
||||||
return (
|
return (
|
||||||
<Box dxStyle={{padding: 'var(--default_spacing)'}}>
|
<Box dxStyle={{padding: 'var(--default_spacing)'}}>
|
||||||
<Text
|
<Text
|
||||||
@@ -18,4 +18,6 @@ export default ({title}) => {
|
|||||||
</div>
|
</div>
|
||||||
</Box>
|
</Box>
|
||||||
);
|
);
|
||||||
}
|
};
|
||||||
|
|
||||||
|
export default ApplicationBusy;
|
||||||
|
|||||||
@@ -9,6 +9,12 @@ import {
|
|||||||
} from '../../../redux/actions/error_actions';
|
} from '../../../redux/actions/error_actions';
|
||||||
import {installReleaseByVersion} from '../../../redux/actions/install_actions';
|
import {installReleaseByVersion} from '../../../redux/actions/install_actions';
|
||||||
|
|
||||||
|
const mapStateToProps = state => {
|
||||||
|
return {
|
||||||
|
AllowInstall: state.install.MissingDependencies.length === 0,
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
const mapDispatchToProps = dispatch => {
|
const mapDispatchToProps = dispatch => {
|
||||||
return {
|
return {
|
||||||
installReleaseByVersion: (release, version) => dispatch(installReleaseByVersion(release, version)),
|
installReleaseByVersion: (release, version) => dispatch(installReleaseByVersion(release, version)),
|
||||||
@@ -17,12 +23,16 @@ const mapDispatchToProps = dispatch => {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
export default connect(null, mapDispatchToProps)(({dismiss, release, lastItem, notifyError, notifyInfo, installReleaseByVersion}) => {
|
export default connect(mapStateToProps, mapDispatchToProps)(({
|
||||||
|
AllowInstall,
|
||||||
|
dismiss,
|
||||||
|
release,
|
||||||
|
lastItem,
|
||||||
|
notifyError,
|
||||||
|
notifyInfo,
|
||||||
|
installReleaseByVersion
|
||||||
|
}) => {
|
||||||
const title = '[' + Constants.RELEASE_TYPES[release.Release] + '] ' + release.Display;
|
const title = '[' + Constants.RELEASE_TYPES[release.Release] + '] ' + release.Display;
|
||||||
const installReleaseVersion = () => {
|
|
||||||
dismiss();
|
|
||||||
installReleaseByVersion(release.Release, release.Version);
|
|
||||||
};
|
|
||||||
const displayChanges = async () => {
|
const displayChanges = async () => {
|
||||||
try {
|
try {
|
||||||
const lines = await getChangesForRepertoryVersion(release.VersionString);
|
const lines = await getChangesForRepertoryVersion(release.VersionString);
|
||||||
@@ -32,6 +42,14 @@ export default connect(null, mapDispatchToProps)(({dismiss, release, lastItem, n
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// TODO Switch to activate
|
||||||
|
/*const installReleaseVersion = () => {
|
||||||
|
dismiss();
|
||||||
|
installReleaseByVersion(release.Release, release.Version);
|
||||||
|
};
|
||||||
|
{AllowInstall ?
|
||||||
|
<Button buttonStyles={{width: '100%'}}
|
||||||
|
clicked={installReleaseVersion}>Install</Button> : null}*/
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<h2>{title}</h2>
|
<h2>{title}</h2>
|
||||||
@@ -46,7 +64,6 @@ export default connect(null, mapDispatchToProps)(({dismiss, release, lastItem, n
|
|||||||
<div style={{width: 'var(--default_spacing)'}}/>
|
<div style={{width: 'var(--default_spacing)'}}/>
|
||||||
</td>
|
</td>
|
||||||
<td width="50%">
|
<td width="50%">
|
||||||
<Button buttonStyles={{width: '100%'}} clicked={installReleaseVersion}>Install</Button>
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
{lastItem ? null : <tr style={{height: 'var(--default_spacing)'}}/>}
|
{lastItem ? null : <tr style={{height: 'var(--default_spacing)'}}/>}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import './Box.css';
|
import './Box.css';
|
||||||
|
|
||||||
export default props => {
|
const Box = props => {
|
||||||
const styleList = [];
|
const styleList = [];
|
||||||
styleList.push('Box');
|
styleList.push('Box');
|
||||||
if (props.dxDark) {
|
if (props.dxDark) {
|
||||||
@@ -24,5 +24,6 @@ export default props => {
|
|||||||
{props.children}
|
{props.children}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default Box;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import './Button.css';
|
import './Button.css';
|
||||||
|
|
||||||
export default props => {
|
const Button = props => {
|
||||||
return (
|
return (
|
||||||
<button disabled={props.disabled}
|
<button disabled={props.disabled}
|
||||||
autoFocus={props.autoFocus}
|
autoFocus={props.autoFocus}
|
||||||
@@ -11,3 +11,4 @@ export default props => {
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default Button;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import './CheckBox.css';
|
import './CheckBox.css';
|
||||||
|
|
||||||
export default props => {
|
const CheckBox = props => {
|
||||||
return (
|
return (
|
||||||
<div className={'CheckBoxOwner'}>
|
<div className={'CheckBoxOwner'}>
|
||||||
<label className='CheckBoxLabel'>{props.label}
|
<label className='CheckBoxLabel'>{props.label}
|
||||||
@@ -15,3 +15,5 @@ export default props => {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default CheckBox;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import './DropDown.css';
|
import './DropDown.css';
|
||||||
|
|
||||||
export default props => {
|
const DropDown = props => {
|
||||||
const options = props.items.map((s, i) => {
|
const options = props.items.map((s, i) => {
|
||||||
return (
|
return (
|
||||||
<option className={'DropDownOption'} key={i} value={s}>{s}</option>
|
<option className={'DropDownOption'} key={i} value={s}>{s}</option>
|
||||||
@@ -10,7 +10,8 @@ export default props => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={'DropDown'}>
|
<div className={'DropDown'}>
|
||||||
<select className={'DropDownSelect' + (props.auto ? ' Auto ' : '') + (props.alt ? ' Alt ' : '') }
|
<select
|
||||||
|
className={'DropDownSelect' + (props.auto ? ' Auto ' : '') + (props.alt ? ' Alt ' : '')}
|
||||||
autoFocus={props.autoFocus}
|
autoFocus={props.autoFocus}
|
||||||
disabled={props.disabled}
|
disabled={props.disabled}
|
||||||
onChange={props.changed}
|
onChange={props.changed}
|
||||||
@@ -21,3 +22,5 @@ export default props => {
|
|||||||
);
|
);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default DropDown;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import GridComponent from './GridComponent/GridComponent';
|
|||||||
|
|
||||||
const DEFAULT_GRID_SIZE = 4;
|
const DEFAULT_GRID_SIZE = 4;
|
||||||
|
|
||||||
export default class extends Component {
|
export default class Grid extends Component {
|
||||||
resizeTimeout;
|
resizeTimeout;
|
||||||
state = {
|
state = {
|
||||||
calculated: false,
|
calculated: false,
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import './GridComponent.css';
|
import './GridComponent.css';
|
||||||
|
|
||||||
export default props => {
|
const GridComponent = props => {
|
||||||
const style = {
|
const style = {
|
||||||
style: {
|
style: {
|
||||||
gridRowStart: Math.floor(props.row + 1),
|
gridRowStart: Math.floor(props.row + 1),
|
||||||
@@ -18,3 +18,5 @@ export default props => {
|
|||||||
);
|
);
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default GridComponent;
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ import React from 'react';
|
|||||||
import './Loading.css'
|
import './Loading.css'
|
||||||
import Loader from 'react-loader-spinner';
|
import Loader from 'react-loader-spinner';
|
||||||
|
|
||||||
export default () => {
|
const Loading = () => {
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
className={'Loading'}>
|
className={'Loading'}>
|
||||||
@@ -14,3 +14,5 @@ export default () => {
|
|||||||
</div>
|
</div>
|
||||||
</div>);
|
</div>);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default Loading;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import React from 'react';
|
|||||||
import './Modal.css'
|
import './Modal.css'
|
||||||
import FocusTrap from 'focus-trap-react';
|
import FocusTrap from 'focus-trap-react';
|
||||||
|
|
||||||
export default props => {
|
const Modal = props => {
|
||||||
let modalStyles = [];
|
let modalStyles = [];
|
||||||
let contentStyles = [];
|
let contentStyles = [];
|
||||||
modalStyles.push('Modal');
|
modalStyles.push('Modal');
|
||||||
@@ -29,3 +29,5 @@ export default props => {
|
|||||||
</FocusTrap>
|
</FocusTrap>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default Modal;
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
|
||||||
export default (props) => {
|
const RootElem = props => {
|
||||||
return (
|
return (
|
||||||
<div style={{margin: 0, padding: 0}} {...props}>
|
<div style={{margin: 0, padding: 0}} {...props}>
|
||||||
{props.children}
|
{props.children}
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default RootElem;
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import './Text.css';
|
import './Text.css';
|
||||||
|
|
||||||
export default props => {
|
const Text = props => {
|
||||||
const styleList = [];
|
const styleList = [];
|
||||||
styleList.push('Text');
|
styleList.push('Text');
|
||||||
if (props.type) {
|
if (props.type) {
|
||||||
@@ -24,3 +24,5 @@ export default props => {
|
|||||||
{text}
|
{text}
|
||||||
</div>);
|
</div>);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default Text;
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import ReactTooltip from 'react-tooltip';
|
|||||||
import {faExclamationTriangle} from '@fortawesome/free-solid-svg-icons';
|
import {faExclamationTriangle} from '@fortawesome/free-solid-svg-icons';
|
||||||
import {FontAwesomeIcon} from '@fortawesome/react-fontawesome';
|
import {FontAwesomeIcon} from '@fortawesome/react-fontawesome';
|
||||||
|
|
||||||
export default props => {
|
const UpgradeIcon = props => {
|
||||||
const styles = ['UpgradeIcon'];
|
const styles = ['UpgradeIcon'];
|
||||||
let placement = 'left';
|
let placement = 'left';
|
||||||
let toolTipText = 'UI Upgrade Available';
|
let toolTipText = 'UI Upgrade Available';
|
||||||
@@ -33,3 +33,5 @@ export default props => {
|
|||||||
)
|
)
|
||||||
: null;
|
: null;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default UpgradeIcon;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import {getIPCRenderer} from '../../utils';
|
|||||||
|
|
||||||
const ipcRenderer = getIPCRenderer();
|
const ipcRenderer = getIPCRenderer();
|
||||||
|
|
||||||
export default class extends Component {
|
export default class IPCContainer extends Component {
|
||||||
handlerList = {};
|
handlerList = {};
|
||||||
|
|
||||||
componentWillUnmount() {
|
componentWillUnmount() {
|
||||||
|
|||||||
@@ -304,15 +304,12 @@ class MountItems extends IPCContainer {
|
|||||||
const providerState = this.props.ProviderState[provider];
|
const providerState = this.props.ProviderState[provider];
|
||||||
if (location.length === 0) {
|
if (location.length === 0) {
|
||||||
location = (this.props.Platform === 'win32') ?
|
location = (this.props.Platform === 'win32') ?
|
||||||
providerState.MountLocation || driveLetters[0] :
|
!providerState.MountLocation || providerState.MountLocation.trim().length === 0 ? driveLetters[0] : providerState.MountLocation :
|
||||||
providerState.MountLocation;
|
providerState.MountLocation;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (location !== providerState.MountLocation) {
|
if (location !== providerState.MountLocation) {
|
||||||
const value = (this.props.Platform === 'win32') ?
|
this.handleMountLocationChanged(provider, location);
|
||||||
driveLetters.indexOf(location) :
|
|
||||||
location;
|
|
||||||
this.handleMountLocationChanged(provider, value);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!this.props.AutoMountProcessed[provider] &&
|
if (!this.props.AutoMountProcessed[provider] &&
|
||||||
|
|||||||
@@ -1,12 +1,15 @@
|
|||||||
import React from 'react'
|
import React from 'react'
|
||||||
import './Import.css'
|
import './Import.css'
|
||||||
|
|
||||||
export default ({data}) => {
|
const Import = ({data}) => {
|
||||||
return (
|
return (
|
||||||
<div className={'ImportOwner'}>
|
<div className={'ImportOwner'}>
|
||||||
<input readOnly
|
<input readOnly
|
||||||
className={'ConfigurationItemInput'}
|
className={'ConfigurationItemInput'}
|
||||||
style={{maxWidth: 'calc(33.33% - var(--default_spacing)', marginRight: 'var(--default_spacing)'}}
|
style={{
|
||||||
|
maxWidth: 'calc(33.33% - var(--default_spacing)',
|
||||||
|
marginRight: 'var(--default_spacing)'
|
||||||
|
}}
|
||||||
type={'text'}
|
type={'text'}
|
||||||
value={data.directory}/>
|
value={data.directory}/>
|
||||||
<input readOnly
|
<input readOnly
|
||||||
@@ -16,9 +19,14 @@ export default ({data}) => {
|
|||||||
value={data.skylink}/>
|
value={data.skylink}/>
|
||||||
<input readOnly
|
<input readOnly
|
||||||
className={'ConfigurationItemInput'}
|
className={'ConfigurationItemInput'}
|
||||||
style={{maxWidth: 'calc(33.33% - calc(var(--default_spacing) / 2))', marginLeft: 'var(--default_spacing)'}}
|
style={{
|
||||||
|
maxWidth: 'calc(33.33% - calc(var(--default_spacing) / 2))',
|
||||||
|
marginLeft: 'var(--default_spacing)'
|
||||||
|
}}
|
||||||
type={'text'}
|
type={'text'}
|
||||||
value={data.token}/>
|
value={data.token}/>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default Import;
|
||||||
|
|||||||
@@ -3,12 +3,13 @@ import './ImportList.css'
|
|||||||
import Import from './Import/Import'
|
import Import from './Import/Import'
|
||||||
import Text from '../../../components/UI/Text/Text';
|
import Text from '../../../components/UI/Text/Text';
|
||||||
|
|
||||||
export default ({imports_array}) => {
|
const ImportList = ({imports_array}) => {
|
||||||
let key = 0;
|
let key = 0;
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<div className={'ImportListHeader'}>
|
<div className={'ImportListHeader'}>
|
||||||
<Text type={'Heading1'} text={'Directory'} style={{minWidth: '33.33%', maxWidth: '33.33%'}}/>
|
<Text type={'Heading1'} text={'Directory'}
|
||||||
|
style={{minWidth: '33.33%', maxWidth: '33.33%'}}/>
|
||||||
<Text type={'Heading1'} text={'Skylink'} style={{minWidth: '33.33%', maxWidth: '33.33%'}}/>
|
<Text type={'Heading1'} text={'Skylink'} style={{minWidth: '33.33%', maxWidth: '33.33%'}}/>
|
||||||
<Text type={'Heading1'} text={'Token'} style={{minWidth: '33.33%', maxWidth: '33.33%'}}/>
|
<Text type={'Heading1'} text={'Token'} style={{minWidth: '33.33%', maxWidth: '33.33%'}}/>
|
||||||
</div>
|
</div>
|
||||||
@@ -27,3 +28,5 @@ export default ({imports_array}) => {
|
|||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export default ImportList;
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ const mapDispatchToProps = dispatch => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export default connect(mapStateToProps, mapDispatchToProps)(class extends IPCContainer {
|
export default connect(mapStateToProps, mapDispatchToProps)(class SkynetImport extends IPCContainer {
|
||||||
|
|
||||||
state = {
|
state = {
|
||||||
import_text: '',
|
import_text: '',
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import './Password.css';
|
|||||||
import {faEye, faEyeSlash} from '@fortawesome/free-solid-svg-icons';
|
import {faEye, faEyeSlash} from '@fortawesome/free-solid-svg-icons';
|
||||||
import {FontAwesomeIcon} from '@fortawesome/react-fontawesome';
|
import {FontAwesomeIcon} from '@fortawesome/react-fontawesome';
|
||||||
|
|
||||||
export default class extends Component {
|
export default class Password extends Component {
|
||||||
state = {
|
state = {
|
||||||
button_text: 'clear',
|
button_text: 'clear',
|
||||||
password: '',
|
password: '',
|
||||||
|
|||||||
@@ -188,7 +188,7 @@ const _execProcessGetOutput = (cmd, working, args) => {
|
|||||||
}
|
}
|
||||||
const proc = spawn(cmd, args, processOptions);
|
const proc = spawn(cmd, args, processOptions);
|
||||||
|
|
||||||
let output;
|
let output = '';
|
||||||
proc.stdout.on('data', data => { output += data.toString(); });
|
proc.stdout.on('data', data => { output += data.toString(); });
|
||||||
|
|
||||||
proc.on('error', (err) => { reject(err); });
|
proc.on('error', (err) => { reject(err); });
|
||||||
|
|||||||
Reference in New Issue
Block a user