Skip to content

Commit

Permalink
Very, very basic authentication
Browse files Browse the repository at this point in the history
  • Loading branch information
RawToast committed Mar 31, 2018
1 parent 83dbd5f commit ae449ee
Show file tree
Hide file tree
Showing 5 changed files with 128 additions and 13 deletions.
1 change: 1 addition & 0 deletions dokusho/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
"private": true,
"dependencies": {
"@glennsl/bs-json": "^1.1.3",
"auth0-js": "^9.4.2",
"bs-fetch": "^0.2.1",
"isomorphic-fetch": "^2.2.1",
"rationale": "^0.1.3",
Expand Down
3 changes: 2 additions & 1 deletion dokusho/src/App.re
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
[%bs.raw {|require('./toolbox/theme.css')|}];
[%bs.raw {|require('../node_modules/auth0-js/build/auth0.js')|}];
[%bs.raw {|require('./toolbox/theme.css')|}];

open Dokusho;

[@bs.module]
external theme : ReactToolbox.ThemeProvider.theme = "./toolbox/theme";
[%bs.raw {|require('./toolbox/theme.css')|}];

let component = ReasonReact.statelessComponent("App");

Expand Down
2 changes: 2 additions & 0 deletions dokusho/src/app/Dokusho.re
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ open Actions;
open DokuUtil;
open Rationale;


module Dokusho {
let component = ReasonReact.reducerComponent("Dokusho");
let initState = () => {
Expand Down Expand Up @@ -42,6 +43,7 @@ module Dokusho {
let availableDates = DateUtil.availableDates(self.state.readingData);

<div>
<LoginButton />
<div className="title">
(ReasonReact.stringToElement("Dokusho"))
</div>
Expand Down
39 changes: 39 additions & 0 deletions dokusho/src/app/LoginButton.re
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
module Auth {
type generatedAuth0Client = {.
"authorize": [@bs.meth] (unit => unit)
};

type clientOptions = {
.
"domain": string,
"clientID": string,
"redirectUri": string,
"responseType": string,
"scope": string
};

[@bs.module "auth0-js"] [@bs.new] external createClient : (clientOptions => generatedAuth0Client) = "WebAuth";
};

let authOptions = {
"domain": "dokusho.eu.auth0.com",
"clientID": "mal13rQ1KYJSpAjTBvs72ioa8xhnq8wh",
"redirectUri": "http://localhost:3000/callback",
"responseType": "token id_token",
"scope": "openid"
};

let authClient = Auth.createClient(authOptions);

let component = ReasonReact.statelessComponent("LoginButton");

let make = (_) => {
...component,
render: (_) => {
let onLogin = (_event => authClient##authorize());
<ReactToolbox.Button
label="Hey"
onClick=(onLogin)
/>
}
};
96 changes: 84 additions & 12 deletions dokusho/yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -318,6 +318,17 @@ asynckit@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"

auth0-js@^9.4.2:
version "9.4.2"
resolved "https://registry.yarnpkg.com/auth0-js/-/auth0-js-9.4.2.tgz#44363933266781fb9447ce09503c6f783b86a474"
dependencies:
base64-js "^1.2.0"
idtoken-verifier "^1.2.0"
qs "^6.4.0"
superagent "^3.8.2"
url-join "^1.1.0"
winchan "^0.2.0"

autoprefixer@7.1.6:
version "7.1.6"
resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.1.6.tgz#fb933039f74af74a83e71225ce78d9fd58ba84d7"
Expand Down Expand Up @@ -1045,7 +1056,7 @@ balanced-match@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"

base64-js@^1.0.2:
base64-js@^1.0.2, base64-js@^1.2.0:
version "1.2.3"
resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.3.tgz#fb13668233d9614cf5fb4bce95a9ba4096cdf801"

Expand Down Expand Up @@ -1580,6 +1591,10 @@ commondir@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"

component-emitter@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6"

compressible@~2.0.13:
version "2.0.13"
resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.13.tgz#0d1020ab924b2fdb4d6279875c7d6daba6baa7a9"
Expand Down Expand Up @@ -1667,6 +1682,10 @@ cookie@0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb"

cookiejar@^2.1.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/cookiejar/-/cookiejar-2.1.1.tgz#41ad57b1b555951ec171412a81942b1e8200d34a"

core-js@^1.0.0:
version "1.2.7"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
Expand Down Expand Up @@ -1760,6 +1779,10 @@ crypto-browserify@^3.11.0:
randombytes "^2.0.0"
randomfill "^1.0.3"

crypto-js@^3.1.9-1:
version "3.1.9-1"
resolved "https://registry.yarnpkg.com/crypto-js/-/crypto-js-3.1.9-1.tgz#fda19e761fc077e01ffbfdc6e9fdfc59e8806cd8"

crypto-random-string@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e"
Expand Down Expand Up @@ -2611,7 +2634,7 @@ express@^4.13.3:
utils-merge "1.0.1"
vary "~1.1.2"

extend@~3.0.0, extend@~3.0.1:
extend@^3.0.0, extend@~3.0.0, extend@~3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444"

Expand Down Expand Up @@ -2815,6 +2838,14 @@ forever-agent@~0.6.1:
version "0.6.1"
resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"

form-data@^2.3.1, form-data@~2.3.1:
version "2.3.2"
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099"
dependencies:
asynckit "^0.4.0"
combined-stream "1.0.6"
mime-types "^2.1.12"

form-data@~2.1.1:
version "2.1.4"
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1"
Expand All @@ -2823,13 +2854,9 @@ form-data@~2.1.1:
combined-stream "^1.0.5"
mime-types "^2.1.12"

form-data@~2.3.1:
version "2.3.2"
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099"
dependencies:
asynckit "^0.4.0"
combined-stream "1.0.6"
mime-types "^2.1.12"
formidable@^1.1.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.1.tgz#70fb7ca0290ee6ff961090415f4b3df3d2082659"

forwarded@~0.1.2:
version "0.1.2"
Expand Down Expand Up @@ -3306,6 +3333,16 @@ icss-utils@^2.1.0:
dependencies:
postcss "^6.0.1"

idtoken-verifier@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/idtoken-verifier/-/idtoken-verifier-1.2.0.tgz#4654f1f07ab7a803fc9b1b8b36057e2a87ad8b09"
dependencies:
base64-js "^1.2.0"
crypto-js "^3.1.9-1"
jsbn "^0.1.0"
superagent "^3.8.2"
url-join "^1.1.0"

ieee754@^1.1.4:
version "1.1.8"
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4"
Expand Down Expand Up @@ -4441,7 +4478,7 @@ js-yaml@~3.7.0:
argparse "^1.0.7"
esprima "^2.6.0"

jsbn@~0.1.0:
jsbn@^0.1.0, jsbn@~0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"

Expand Down Expand Up @@ -4844,7 +4881,7 @@ merge@^1.1.3:
version "1.2.0"
resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da"

methods@~1.1.2:
methods@^1.1.1, methods@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"

Expand Down Expand Up @@ -6160,7 +6197,7 @@ q@^1.1.2:
version "1.5.1"
resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"

qs@6.5.1, qs@~6.5.1:
qs@6.5.1, qs@^6.4.0, qs@^6.5.1, qs@~6.5.1:
version "6.5.1"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8"

Expand Down Expand Up @@ -6415,6 +6452,18 @@ readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.6, readable
string_decoder "~1.0.3"
util-deprecate "~1.0.1"

readable-stream@^2.0.5:
version "2.3.5"
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.5.tgz#b4f85003a938cbb6ecbce2a124fb1012bd1a838d"
dependencies:
core-util-is "~1.0.0"
inherits "~2.0.3"
isarray "~1.0.0"
process-nextick-args "~2.0.0"
safe-buffer "~5.1.1"
string_decoder "~1.0.3"
util-deprecate "~1.0.1"

readdirp@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78"
Expand Down Expand Up @@ -7200,6 +7249,21 @@ style-loader@0.19.0:
loader-utils "^1.0.2"
schema-utils "^0.3.0"

superagent@^3.8.2:
version "3.8.2"
resolved "https://registry.yarnpkg.com/superagent/-/superagent-3.8.2.tgz#e4a11b9d047f7d3efeb3bbe536d9ec0021d16403"
dependencies:
component-emitter "^1.2.0"
cookiejar "^2.1.0"
debug "^3.1.0"
extend "^3.0.0"
form-data "^2.3.1"
formidable "^1.1.1"
methods "^1.1.1"
mime "^1.4.1"
qs "^6.5.1"
readable-stream "^2.0.5"

supports-color@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
Expand Down Expand Up @@ -7528,6 +7592,10 @@ urijs@^1.16.1:
version "1.19.1"
resolved "https://registry.yarnpkg.com/urijs/-/urijs-1.19.1.tgz#5b0ff530c0cbde8386f6342235ba5ca6e995d25a"

url-join@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/url-join/-/url-join-1.1.0.tgz#741c6c2f4596c4830d6718460920d0c92202dc78"

url-loader@0.6.2:
version "0.6.2"
resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.6.2.tgz#a007a7109620e9d988d14bce677a1decb9a993f7"
Expand Down Expand Up @@ -7833,6 +7901,10 @@ widest-line@^2.0.0:
dependencies:
string-width "^2.1.1"

winchan@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/winchan/-/winchan-0.2.0.tgz#3863028e7f974b0da1412f28417ba424972abd94"

window-size@0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
Expand Down

0 comments on commit ae449ee

Please sign in to comment.