JSFiddle - React, Tailwind, and code Playground
by tonytlwu
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js"></script>
JavaScript
var Fliplet = {};
(function(){
var settings = {
sun: 'shine'
};
function use(provider) {
// Create self, which inherits from its parent
var self = Object.create(this);
// Inherit the prototype from its parent
self.settings = Object.create(this.settings);
// Define the default service
if (service) {
self.settings.default_service = service;
}
return self;
}
function configure(services) {
if (!services || typeof services !== 'object') {
return this.services;
}
// Define provider credentials
// Reformat the ID field
for (var x in services) {
if (services.hasOwnProperty(x)) {
if (typeof (services[x]) !== 'object') {
services[x] = {id: services[x]};
}
}
}
_.assignIn(this.services, services);
return this;
}
function login() {
}
Fliplet.OAuth2 = function (provider) {
return Fliplet.OAuth2.use(provider);
};
_.assignIn(Fliplet.OAuth2, {
settings: settings,
services: {},
use: use,
configure: configure,
login: login
});
})();
Fliplet.OAuth2.configure({
a: {
foo: 'bar'
},
b: {
foo: 'baz'
}
});
Fliplet.OAuth2('a').login();
Fliplet.OAuth2('b').login();