Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
SRCT
whats-open-web
Commits
0ac9e3af
Commit
0ac9e3af
authored
Feb 18, 2019
by
Andrew Hrdy
Browse files
Added proper typings for Redux, converted from thunk to saga.
parent
17e18825
Pipeline
#3950
failed with stage
in 1 minute and 11 seconds
Changes
31
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
package-lock.json
View file @
0ac9e3af
...
...
@@ -471,6 +471,53 @@
"integrity": "sha512-LAQ1d4OPfSJ/BMbI2DuizmYrrkD9JMaTdi2hQTlI53lQ4kRQPyZQRS4CYQ7O66bnBBnP/oYdRxbk++X0xuFU6A==",
"dev": true
},
"@redux-saga/core": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@redux-saga/core/-/core-1.0.1.tgz",
"integrity": "sha512-e/rvF5jA/2BBLHwQWIwRVSbD8ylQAUXp0zaCUJrfDQmsKGY2VJbcUdSgkM4rxRss9d4U/c2Oa0D9o5geDCup0w==",
"requires": {
"@babel/runtime": "^7.0.0",
"@redux-saga/deferred": "^1.0.1",
"@redux-saga/delay-p": "^1.0.1",
"@redux-saga/is": "^1.0.1",
"@redux-saga/symbols": "^1.0.1",
"@redux-saga/types": "^1.0.0",
"redux": ">=0.10 <5",
"typescript-tuple": "^2.1.0"
}
},
"@redux-saga/deferred": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@redux-saga/deferred/-/deferred-1.0.1.tgz",
"integrity": "sha512-+gW5xQ93QXOOmRLAmX8x2Hx1HpbTG6CM6+HcdTSbJovh4uMWaGyeDECnqXSt8QqA/ja3s2nqYXLqXFKepIQ1hw=="
},
"@redux-saga/delay-p": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@redux-saga/delay-p/-/delay-p-1.0.1.tgz",
"integrity": "sha512-0SnNDyDLUyB4NThtptAwiprNOnbCNhoed/Rp5JwS7SB+a/AdWynVgg/E6BmjsggLFNr07KW0bzn05tsPRBuU7Q==",
"requires": {
"@redux-saga/symbols": "^1.0.1"
}
},
"@redux-saga/is": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@redux-saga/is/-/is-1.0.1.tgz",
"integrity": "sha512-hOm7MyvGToJX6aeYkKmoL88a/7bzD8PXP1yPfELEgrKeiN5oBvMTbZ0LNU3boM3HJcYuiyjZED9qw12YpmXGAA==",
"requires": {
"@redux-saga/symbols": "^1.0.1",
"@redux-saga/types": "^1.0.0"
}
},
"@redux-saga/symbols": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@redux-saga/symbols/-/symbols-1.0.1.tgz",
"integrity": "sha512-akKkzcVnb1RzJaZV2LQFbi51abvdICMuAKwwLoCjjxLbLAGIw9EJxk5ucNnWSSCEsoEQMeol5tkAcK+Xzuv1Bg=="
},
"@redux-saga/types": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@redux-saga/types/-/types-1.0.0.tgz",
"integrity": "sha512-9I7ejD0kASU3H8gD6Wv8Y3F9VabNdvjE8apkGfSphCAjt46snJKjt79CnHdxo1xkTE0qMEZzmYmZ8hnIYDydhw=="
},
"@samverschueren/stream-to-observable": {
"version": "0.3.0",
"resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz",
...
...
@@ -509,6 +556,11 @@
"resolved": "https://registry.npmjs.org/@types/classnames/-/classnames-2.2.7.tgz",
"integrity": "sha512-rzOhiQ55WzAiFgXRtitP/ZUT8iVNyllEpylJ5zHzR4vArUvMB39GTk+Zon/uAM0JxEFAWnwsxC2gH8s+tZ3Myg=="
},
"@types/history": {
"version": "4.7.2",
"resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.2.tgz",
"integrity": "sha512-ui3WwXmjTaY73fOQ3/m3nnajU/Orhi6cEu5rzX+BrAAJxa3eITXZ5ch9suPqtM03OWhAHhPSyBGCN4UKoxO20Q=="
},
"@types/jss": {
"version": "9.5.7",
"resolved": "https://registry.npmjs.org/@types/jss/-/jss-9.5.7.tgz",
...
...
@@ -595,6 +647,26 @@
}
}
},
"@types/react-router": {
"version": "4.4.4",
"resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-4.4.4.tgz",
"integrity": "sha512-TZVfpT6nvUv/lbho/nRtckEtgkhspOQr3qxrnpXixwgQRKKyg5PvDfNKc8Uend/p/Pi70614VCmC0NPAKWF+0g==",
"requires": {
"@types/history": "*",
"@types/react": "*"
}
},
"@types/react-router-redux": {
"version": "5.0.18",
"resolved": "https://registry.npmjs.org/@types/react-router-redux/-/react-router-redux-5.0.18.tgz",
"integrity": "sha512-5SI69Virpmo+5HXWXKIzSt5hsnV7TTidL3Ddmbi+PH1CIdi40wthJwjFoqiE+gRQANur5WhjEtfyPorJ4zymHA==",
"requires": {
"@types/history": "*",
"@types/react": "*",
"@types/react-router": "*",
"redux": ">= 3.7.2"
}
},
"@types/react-transition-group": {
"version": "2.0.15",
"resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-2.0.15.tgz",
...
...
@@ -5236,6 +5308,14 @@
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz",
"integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY="
},
"promise": {
"version": "7.3.1",
"resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz",
"integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==",
"requires": {
"asap": "~2.0.3"
}
}
}
},
...
...
@@ -6570,18 +6650,6 @@
"integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=",
"dev": true
},
"history": {
"version": "4.7.2",
"resolved": "https://registry.npmjs.org/history/-/history-4.7.2.tgz",
"integrity": "sha512-1zkBRWW6XweO0NBcjiphtVJVsIQ+SXF29z9DVkceeaSLVMFXHool+fdCZD4spDCfZJCILPILc3bm7Bc+HRi0nA==",
"requires": {
"invariant": "^2.2.1",
"loose-envify": "^1.2.0",
"resolve-pathname": "^2.2.0",
"value-equal": "^0.4.0",
"warning": "^3.0.0"
}
},
"hmac-drbg": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
...
...
@@ -9929,6 +9997,7 @@
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz",
"integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=",
"dev": true,
"requires": {
"isarray": "0.0.1"
},
...
...
@@ -9936,7 +10005,8 @@
"isarray": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8="
"integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
"dev": true
}
}
},
...
...
@@ -11410,11 +11480,11 @@
"dev": true
},
"promise": {
"version": "
7.1.1
",
"resolved": "https://registry.npmjs.org/promise/-/promise-
7.1.1
.tgz",
"integrity": "sha
1-SJZUxpJha4qlWwck+oCbt9tJxb8
=",
"version": "
8.0.2
",
"resolved": "https://registry.npmjs.org/promise/-/promise-
8.0.2
.tgz",
"integrity": "sha
512-EIyzM39FpVOMbqgzEHhxdrEhtOSDOtjMZQ0M6iVfCE+kWNgCkAyOdnuCWqfmflylftfadU6FkiMgHZA2kUzwRw=
=",
"requires": {
"asap": "~2.0.
3
"
"asap": "~2.0.
6
"
}
},
"promise-inflight": {
...
...
@@ -11698,34 +11768,6 @@
}
}
},
"react-autosuggest": {
"version": "9.3.4",
"resolved": "https://registry.npmjs.org/react-autosuggest/-/react-autosuggest-9.3.4.tgz",
"integrity": "sha512-vcAsZw+6zkjimni4aun1tvuzVCGilmFihAgF8yCeVm/p82ssGgtQb0pnNCcEBcPzPTLJjQc2O8dLJidoOyjlcA==",
"requires": {
"prop-types": "^15.5.10",
"react-autowhatever": "^10.1.0",
"shallow-equal": "^1.0.0"
}
},
"react-autowhatever": {
"version": "10.1.1",
"resolved": "https://registry.npmjs.org/react-autowhatever/-/react-autowhatever-10.1.1.tgz",
"integrity": "sha512-fcwjDnk1zKMYoJyKmEukw8eWJlwT6UVKZagY+Lfhj79Nx0D8Brj38ZLNtQOFrRLAZrIA+QX4UUjW0MUISqT9OA==",
"requires": {
"prop-types": "^15.5.8",
"react-themeable": "^1.1.0",
"section-iterator": "^2.0.0"
}
},
"react-classnames": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/react-classnames/-/react-classnames-0.1.2.tgz",
"integrity": "sha1-6MvsLXcQ5+95v/OBa1fwAcroU5w=",
"requires": {
"react": "*"
}
},
"react-dom": {
"version": "16.8.1",
"resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.8.1.tgz",
...
...
@@ -11802,57 +11844,10 @@
"prop-types": "^15.6.0"
}
},
"react-router": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/react-router/-/react-router-4.2.0.tgz",
"integrity": "sha512-DY6pjwRhdARE4TDw7XjxjZsbx9lKmIcyZoZ+SDO7SBJ1KUeWNxT22Kara2AC7u6/c2SYEHlEDLnzBCcNhLE8Vg==",
"requires": {
"history": "^4.7.2",
"hoist-non-react-statics": "^2.3.0",
"invariant": "^2.2.2",
"loose-envify": "^1.3.1",
"path-to-regexp": "^1.7.0",
"prop-types": "^15.5.4",
"warning": "^3.0.0"
}
},
"react-router-dom": {
"version": "4.2.2",
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-4.2.2.tgz",
"integrity": "sha512-cHMFC1ZoLDfEaMFoKTjN7fry/oczMgRt5BKfMAkTu5zEuJvUiPp1J8d0eXSVTnBh6pxlbdqDhozunOOLtmKfPA==",
"requires": {
"history": "^4.7.2",
"invariant": "^2.2.2",
"loose-envify": "^1.3.1",
"prop-types": "^15.5.4",
"react-router": "^4.2.0",
"warning": "^3.0.0"
}
},
"react-router-redux": {
"version": "5.0.0-alpha.9",
"resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-5.0.0-alpha.9.tgz",
"integrity": "sha512-euSgNIANnRXr4GydIuwA7RZCefrLQzIw5WdXspS8NPYbV+FxrKSS9MKG7U9vb6vsKHONnA4VxrVNWfnMUnUQAw==",
"requires": {
"history": "^4.7.2",
"prop-types": "^15.6.0",
"react-router": "^4.2.0"
}
},
"react-themeable": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/react-themeable/-/react-themeable-1.1.0.tgz",
"integrity": "sha1-fURm3ZsrX6dQWHJ4JenxUro3mg4=",
"requires": {
"object-assign": "^3.0.0"
},
"dependencies": {
"object-assign": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz",
"integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I="
}
}
"version": "4.0.8",
"resolved": "https://registry.npmjs.org/react-router-redux/-/react-router-redux-4.0.8.tgz",
"integrity": "sha1-InQDWWtRUeGCN32rg1tdRfD4BU4="
},
"react-transition-group": {
"version": "2.3.1",
...
...
@@ -12046,26 +12041,41 @@
}
},
"redux": {
"version": "
3.7.2
",
"resolved": "https://registry.npmjs.org/redux/-/redux-
3.7.2
.tgz",
"integrity": "sha512-
pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A
==",
"version": "
4.0.1
",
"resolved": "https://registry.npmjs.org/redux/-/redux-
4.0.1
.tgz",
"integrity": "sha512-
R7bAtSkk7nY6O/OYMVR9RiBI+XghjF9rlbl5806HJbQph0LJVHZrU5oaO4q70eUKiqMRqm4y07KLTlMZ2BlVmg
==",
"requires": {
"lodash": "^4.2.1",
"lodash-es": "^4.2.1",
"loose-envify": "^1.1.0",
"symbol-observable": "^1.0.3"
"loose-envify": "^1.4.0",
"symbol-observable": "^1.2.0"
},
"dependencies": {
"loose-envify": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
"integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
"requires": {
"js-tokens": "^3.0.0 || ^4.0.0"
}
},
"symbol-observable": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz",
"integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ=="
}
}
},
"redux-devtools-extension": {
"version": "2.13.8",
"resolved": "https://registry.npmjs.org/redux-devtools-extension/-/redux-devtools-extension-2.13.8.tgz",
"integrity": "sha512-8qlpooP2QqPtZHQZRhx3x3OP5skEV1py/zUdMY28WNAocbafxdG2tRD1MWE7sp8obGMNYuLWanhhQ7EQvT1FBg==",
"dev": true
"integrity": "sha512-8qlpooP2QqPtZHQZRhx3x3OP5skEV1py/zUdMY28WNAocbafxdG2tRD1MWE7sp8obGMNYuLWanhhQ7EQvT1FBg=="
},
"redux-thunk": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.3.0.tgz",
"integrity": "sha512-km6dclyFnmcvxhAcrQV2AkZmPQjzPDjgVlQtR0EQjxZPyJ0BnMf3in1ryuR8A2qU0HldVRfxYXbFSKlI3N7Slw=="
"redux-saga": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/redux-saga/-/redux-saga-1.0.1.tgz",
"integrity": "sha512-XAp0OliRaoBCk/qynMfvXnTtC1WXrEpSqMwPKtOZHXVbQFekdcei/Eln/w0L7m3NcNxYQSlWwdUoffWzB1oAAQ==",
"requires": {
"@redux-saga/core": "^1.0.1"
}
},
"regenerate": {
"version": "1.4.0",
...
...
@@ -12331,11 +12341,6 @@
"integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=",
"dev": true
},
"resolve-pathname": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz",
"integrity": "sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg=="
},
"resolve-protobuf-schema": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz",
...
...
@@ -12432,23 +12437,6 @@
"rx-lite": "*"
}
},
"rxjs": {
"version": "5.5.11",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.11.tgz",
"integrity": "sha512-3bjO7UwWfA2CV7lmwYMBzj4fQ6Cq+ftHc2MvUe+WMS7wcdJ1LosDWmdjPQanYp2dBRj572p7PeU81JUxHKOcBA==",
"dev": true,
"requires": {
"symbol-observable": "1.0.1"
},
"dependencies": {
"symbol-observable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz",
"integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=",
"dev": true
}
}
},
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
...
...
@@ -12571,11 +12559,6 @@
}
}
},
"section-iterator": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/section-iterator/-/section-iterator-2.0.0.tgz",
"integrity": "sha1-v0RNev7rlK1Dw5rS+yYVFifMuio="
},
"select-hose": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
...
...
@@ -12738,11 +12721,6 @@
"resolved": "https://registry.npmjs.org/shallow-copy/-/shallow-copy-0.0.1.tgz",
"integrity": "sha1-QV9CcC1z2BAzApLMXuhurhoRoXA="
},
"shallow-equal": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/shallow-equal/-/shallow-equal-1.0.0.tgz",
"integrity": "sha1-UI0YOLPeWQq4dXsBGyXkMJAJRfc="
},
"sharkdown": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/sharkdown/-/sharkdown-0.1.0.tgz",
...
...
@@ -14164,6 +14142,27 @@
"integrity": "sha512-Y21Xqe54TBVp+VDSNbuDYdGw0BpoR/Q6wo/+35M8PAU0vipahnyduJWirxxdxjsAkS7hue53x2zp8gz7F05u0A==",
"dev": true
},
"typescript-compare": {
"version": "0.0.2",
"resolved": "https://registry.npmjs.org/typescript-compare/-/typescript-compare-0.0.2.tgz",
"integrity": "sha512-8ja4j7pMHkfLJQO2/8tut7ub+J3Lw2S3061eJLFQcvs3tsmJKp8KG5NtpLn7KcY2w08edF74BSVN7qJS0U6oHA==",
"requires": {
"typescript-logic": "^0.0.0"
}
},
"typescript-logic": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/typescript-logic/-/typescript-logic-0.0.0.tgz",
"integrity": "sha512-zXFars5LUkI3zP492ls0VskH3TtdeHCqu0i7/duGt60i5IGPIpAHE/DWo5FqJ6EjQ15YKXrt+AETjv60Dat34Q=="
},
"typescript-tuple": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/typescript-tuple/-/typescript-tuple-2.1.1.tgz",
"integrity": "sha512-7jOyW+a6vGSfzpkgimnldfkvT5FEY7hURzdS8gXHBXCOZ7NZRqoXNvsEmkNNhPLbdXUbZexjFXQOz1CSn+7stg==",
"requires": {
"typescript-compare": "^0.0.2"
}
},
"ua-parser-js": {
"version": "0.7.18",
"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.18.tgz",
...
...
@@ -14580,11 +14579,6 @@
"spdx-expression-parse": "^3.0.0"
}
},
"value-equal": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz",
"integrity": "sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw=="
},
"vary": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
...
...
@@ -15599,6 +15593,17 @@
"string-width": "^2.1.0",
"strip-ansi": "^4.0.0",
"through": "^2.3.6"
},
"dependencies": {
"rxjs": {
"version": "5.5.12",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz",
"integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==",
"dev": true,
"requires": {
"symbol-observable": "1.0.1"
}
}
}
},
"os-locale": {
...
...
@@ -15636,6 +15641,12 @@
"has-flag": "^3.0.0"
}
},
"symbol-observable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz",
"integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=",
"dev": true
},
"url-parse-lax": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz",
...
...
@@ -16603,6 +16614,17 @@
"string-width": "^2.1.0",
"strip-ansi": "^4.0.0",
"through": "^2.3.6"
},
"dependencies": {
"rxjs": {
"version": "5.5.12",
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz",
"integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==",
"dev": true,
"requires": {
"symbol-observable": "1.0.1"
}
}
}
},
"strip-ansi": {
...
...
@@ -16622,6 +16644,12 @@
"requires": {
"has-flag": "^3.0.0"
}
},
"symbol-observable": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz",
"integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=",
"dev": true
}
}
},
...
...
package.json
View file @
0ac9e3af
...
...
@@ -12,23 +12,21 @@
"
@types/react
"
:
"
^16.8.3
"
,
"
@types/react-dom
"
:
"
^16.8.1
"
,
"
@types/react-redux
"
:
"
^7.0.1
"
,
"
@types/react-router-redux
"
:
"
^5.0.18
"
,
"
classnames
"
:
"
^2.2.5
"
,
"
jss
"
:
"
^9.8.7
"
,
"
mapbox-gl
"
:
"
^0.49.0
"
,
"
phone-formatter
"
:
"
^0.0.2
"
,
"
promise
"
:
"
7.1.1
"
,
"
prop-types
"
:
"
^15.5.10
"
,
"
promise
"
:
"
8.0.2
"
,
"
react
"
:
"
^16.8.1
"
,
"
react-autosuggest
"
:
"
^9.3.2
"
,
"
react-classnames
"
:
"
^0.1.2
"
,
"
react-dom
"
:
"
^16.8.1
"
,
"
react-mapbox-gl
"
:
"
^4.2.0
"
,
"
react-piwik
"
:
"
^1.6.0
"
,
"
react-redux
"
:
"
^5.0.5
"
,
"
react-router-
dom
"
:
"
^4.
1.2
"
,
"
react-router-
redux
"
:
"
^
5
.0.
0-alpha.9
"
,
"
redux
"
:
"
^3.7.2
"
,
"
redux-
thunk
"
:
"
^2.2.0
"
,
"
react-router-
redux
"
:
"
^4.
0.8
"
,
"
redux
"
:
"
^
4
.0.
1
"
,
"
redux
-devtools-extension
"
:
"
^2.13.8
"
,
"
redux-
saga
"
:
"
^1.0.1
"
,
"
typeface-roboto
"
:
"
0.0.50
"
},
"devDependencies"
:
{
...
...
@@ -52,7 +50,6 @@
"
node-sass
"
:
"
^4.9.0
"
,
"
optimize-css-assets-webpack-plugin
"
:
"
^4.0.2
"
,
"
postcss-loader
"
:
"
2.0.6
"
,
"
redux-devtools-extension
"
:
"
^2.13.8
"
,
"
sass-loader
"
:
"
^7.0.2
"
,
"
source-map-loader
"
:
"
^0.2.4
"
,
"
style-loader
"
:
"
^0.18.2
"
,
...
...
src/actions/action-types.ts
deleted
100644 → 0
View file @
17e18825
export
const
SET_SIDEBAR
=
'
SET_SIDEBAR
'
;
export
const
SET_FACILITIES
=
'
SET_FACILITIES
'
;
export
const
GET_FACILITIES
=
'
GET_FACILITIES
'
;
export
const
SET_ALERTS
=
'
SET_ALERTS
'
;
export
const
GET_ALERTS
=
'
GET_ALERTS
'
;
export
const
VIEW_ALERT
=
'
VIEW_ALERT
'
;
export
const
SET_SELECTED_FACILITY
=
'
SET_SELECTED_FACILITY
'
;
export
const
SET_SEARCH_TERM
=
'
SET_SEARCH_TERM
'
;
export
const
SET_CAMPUS_REGION
=
'
SET_CAMPUS_REGION
'
;
export
const
ADD_FAVORITE_FACILITY
=
'
ADD_FAVORITE_FACILITY
'
;
export
const
REMOVE_FAVORITE_FACILITY
=
'
REMOVE_FAVORITE_FACILITY
'
;
export
const
SET_ALL_FAVORITES
=
'
SET_ALL_FAVORITES
'
;
export
const
SORT_FACILITY_CARDS
=
'
SORT_FACILITY_CARDS
'
;
\ No newline at end of file
src/actions/api.ts
deleted
100644 → 0
View file @
17e18825
import
{
GET_ALERTS
,
GET_FACILITIES
,
SET_ALERTS
,
SET_FACILITIES
,
SORT_FACILITY_CARDS
,
VIEW_ALERT
}
from
'
./action-types
'
;
import
{
Dispatch
}
from
'
redux
'
;
import
{
IFacility
}
from
'
../models/facility.model
'
;
import
{
IAlert
}
from
'
../models/alert.model
'
;
const
API_GET_FACILITIES
=
process
.
env
.
API_GET_FACILITIES
?
process
.
env
.
API_GET_FACILITIES
:
'
https://api.srct.gmu.edu/whatsopen/v2/facilities/
'
;
const
API_GET_ALERTS
=
'
https://api.srct.gmu.edu/whatsopen/v2/alerts/?ordering=urgency_tag
'
;
export
const
getFacilities
=
()
=>
(
dispatch
:
Dispatch
<
any
>
)
=>
{
dispatch
({
type
:
GET_FACILITIES
});
const
request
=
new
Request
(
API_GET_FACILITIES
,
{
method
:
'
GET
'
});
return
fetch
(
request
)
.
then
((
res
)
=>
{
if
(
res
.
status
<
200
||
res
.
status
>=
300
)
{
throw
new
Error
(
res
.
statusText
);
}
return
res
.
json
();
}).
then
((
json
)
=>
{
dispatch
(
setFacilities
(
json
));
});
};
export
const
setFacilities
=
(
facilities
:
IFacility
[])
=>
{
try
{
localStorage
.
setItem
(
'
facilities
'
,
JSON
.
stringify
(
facilities
));
}
catch
(
e
)
{
//Empty
}
return
{
type
:
SET_FACILITIES
,
facilities
:
facilities
};
};
export
const
sortFacilityCards
=
()
=>
({
type
:
SORT_FACILITY_CARDS
});
export
const
getAlerts
=
()
=>
(
dispatch
:
Dispatch
<
any
>
)
=>
{
dispatch
({
type
:
GET_ALERTS
});
const
request
=
new
Request
(
API_GET_ALERTS
,
{
method
:
'
GET
'
});
return
fetch
(
request
)
.
then
((
res
)
=>
{
if
(
res
.
status
<
200
||
res
.
status
>=
300
)
{
throw
new
Error
(
res
.
statusText
);
}
return
res
.
json
();
}).
then
((
json
)
=>
{
dispatch
(
setAlerts
(
json
));
});
};
export
const
setAlerts
=
(
alerts
:
IAlert
[])
=>
{
const
viewedAlerts
=
JSON
.
parse
(
localStorage
.
getItem
(
'
viewedAlerts
'
));
if
(
viewedAlerts
)
{
alerts
.
forEach
((
alert
)
=>
{
alert
[
'
viewed
'
]
=
viewedAlerts
.
includes
(
alert
.
id
);
});
}
return
{
type
:
SET_ALERTS
,
alerts
:
alerts
};
};
export
const
viewAlert
=
(
alert
:
IAlert
)
=>
{
try
{
let
viewedAlerts
=
JSON
.
parse
(
localStorage
.
getItem
(
'
viewedAlerts
'
));
if
(
!
viewedAlerts
)
{
viewedAlerts
=
[];
}
if
(
!
viewedAlerts
.
includes
(
alert
.
id
))
{
viewedAlerts
.
push
(
alert
.
id
);
}
localStorage
.
setItem
(
'
viewedAlerts
'
,
JSON
.
stringify
(
viewedAlerts
));
}
catch
(
e
)
{
//Empty
}
return
{
type
:
VIEW_ALERT
,
alert
};
};
src/actions/ui.ts
deleted
100644 → 0
View file @
17e18825
import
{
ADD_FAVORITE_FACILITY
,
REMOVE_FAVORITE_FACILITY
,
SET_ALL_FAVORITES
,
SET_CAMPUS_REGION
,
SET_SEARCH_TERM
,
SET_SELECTED_FACILITY
,
SET_SIDEBAR
}
from
'
./action-types
'
;
import
{
IFacility
,
CampusRegion
}
from
'
../models/facility.model
'
;
export
const
setSidebar
=
(
setOpen
:
boolean
)
=>
({
type
:
SET_SIDEBAR
,
setOpen
});
export
const
setSelectedFacility
=
(
facility
:
IFacility
)
=>
({
type
:
SET_SELECTED_FACILITY
,
facility
});