Skip to content

Commit

Permalink
- Updated babel
Browse files Browse the repository at this point in the history
- Updated cerebral-provider
- Execute requests in sequence by default
	- Can you concurrent: true to do in parallel
- `connections` in state now has a `connected` boolean flag
- connect() now returns a token, connection_id, or an error.
  • Loading branch information
cyrusbowman committed Apr 8, 2020
1 parent 511f923 commit c97b172
Show file tree
Hide file tree
Showing 8 changed files with 2,705 additions and 1,752 deletions.
12 changes: 12 additions & 0 deletions .babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"presets": [
[
"@babel/preset-env",
{
targets: {
esmodules: true
}
}
]
]
}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
node_modules
index.js
sequences.js
state.js
29 changes: 15 additions & 14 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,36 +1,37 @@
{
"name": "@oada/cerebral-module",
"version": "3.0.5",
"version": "3.0.6",
"description": "oada cerebral module",
"main": "./index.js",
"scripts": {
"test": "mocha -w --require babel-polyfill --compilers js:babel-register test/**/*.test.js",
"build": "babel src --out-dir ./ --presets=env",
"test": "mocha -w --require @babel/register test/**/*.test.js",
"build": "babel src --out-dir ./",
"prepare": "npm run build",
"prettier": "prettier --write 'src/**/*.js'",
"build-watch": "babel --watch src --out-dir ./ --presets=env",
"build-watch": "babel --watch src --out-dir ./",
"dev": "cpx \"*.js\" $APP_DIR/node_modules/@oada/cerebral-module/ --watch --verbose"
},
"author": "oada",
"license": "Apache-2.0",
"dependencies": {
"@oada/cerebral-provider": "^3.0.4",
"assert": "^1.4.1",
"babel-polyfill": "^6.26.0",
"babel-preset-env": "^1.7.0",
"babel-preset-latest": "^6.24.1",
"babel-preset-stage-3": "^6.24.1",
"babel-register": "^6.26.0",
"chai": "^4.1.2",
"@oada/cerebral-provider": "^3.0.6",
"debug": "^4.1.0",
"fs": "^0.0.1-security",
"lodash": "^4.17.15",
"url": "^0.11.0"
},
"peerDependencies": {
"cerebral": "^5.1.1"
},
"devDependencies": {
"babel-cli": "^6.26.0",
"prettier": "2.0.2"
"@babel/cli": "^7.8.4",
"@babel/core": "^7.9.0",
"@babel/preset-env": "^7.9.5",
"@babel/register": "^7.9.0",
"cerebral": "^5.1.1",
"mocha": "^7.1.1",
"prettier": "2.0.2",
"chai": "^4.1.2",
"assert": "^1.4.1"
}
}
3 changes: 2 additions & 1 deletion src/index.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
import sequences from "./sequences";
import oada from "@oada/cerebral-provider";
import state from "./state"

This comment has been minimized.

Copy link
@tomohiroarakawa

tomohiroarakawa Apr 9, 2020

Member

It seems that this file (state.js) is missing in the repo?


export default {
state: { connections: {} },
state,

providers: { oada },

Expand Down
28 changes: 19 additions & 9 deletions src/sequences.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { when, merge, unset, equals, set } from "cerebral/factories";

import Promise from "bluebird";
import url from "url";
import _ from "lodash";
//Promise.config({warnings: false})

function domainToConnectionId(domainUrl) {
Expand Down Expand Up @@ -36,7 +37,7 @@ const connect = [
//return result;
})
.catch((err) => {
return path.unauthorized({});
return path.unauthorized({err});
});
},
{
Expand All @@ -57,11 +58,15 @@ const connect = [
if (wh) {
store.set(state`oada.${props.connection_id}.bookmarks`, {});
}
store.set(state`oada.connections.${props.connection_id}.connected`, true);
return {token: props.token, connection_id: props.connection_id}
},
],
unauthorized: [
({ store }) => {
store.set(state`oada.error`, {});
({ store, props }) => {
store.set(state`oada.connections.${props.connection_id}.connected`, false);
store.set(state`oada.error`, {error: props.err.message});
return {error: props.err, connection_id: props.connection_id}
},
],
},
Expand Down Expand Up @@ -98,7 +103,8 @@ const get = [
"Passing request parameters as top level keys of cerebral props has been deprecated. Instead, pass requests in as an array of request objects under the requests key"
);
var requests = props.requests || [];
return Promise.map(requests, (request, i) => {
const PromiseMap = (props.concurrent) ? Promise.map : Promise.mapSeries;
return PromiseMap(requests, (request, i) => {
if (request.complete) return;
let _cerebralPath = request.path.replace(/^\//, "").split("/").join(".");
if (request.watch) {
Expand Down Expand Up @@ -184,7 +190,8 @@ const put = [
"Passing request parameters as top level keys of cerebral props has been deprecated. Instead, pass requests in as an array of request objects under the requests key"
);
var requests = props.requests || [];
return Promise.map(requests, (request, i) => {
const PromiseMap = (props.concurrent) ? Promise.map : Promise.mapSeries;
return PromiseMap(requests, (request, i) => {
if (request.complete) return;
return oada
.put({
Expand Down Expand Up @@ -239,7 +246,8 @@ const oadaDelete = [
"Passing request parameters as top level keys of cerebral props has been deprecated. Instead, pass requests in as an array of request objects under the requests key"
);
var requests = props.requests || [];
return Promise.map(requests, (request, i) => {
const PromiseMap = (props.concurrent) ? Promise.map : Promise.mapSeries;
return PromiseMap(requests, (request, i) => {
if (request.complete) return;
let _cerebralPath = request.path.replace(/^\//, "").split("/").join(".");
let conn = state.get(
Expand Down Expand Up @@ -300,7 +308,8 @@ const resetCache = [
* @type {Primitive}
*/
const disconnect = [
({ oada, state, props }) => {
({ oada, store, props }) => {
store.set(state`oada.connections.${props.connection_id}.connected`, false);
return oada.disconnect({ connection_id: props.connection_id });
},
];
Expand All @@ -316,7 +325,8 @@ const post = [
"Passing request parameters as top level keys of cerebral props has been deprecated. Instead, pass requests in as an array of request objects under the requests key"
);
var requests = props.requests || [];
return Promise.map(requests, (request, i) => {
const PromiseMap = (props.concurrent) ? Promise.map : Promise.mapSeries;
return PromiseMap(requests, (request, i) => {
if (request.complete) return;
return oada
.post({
Expand Down Expand Up @@ -362,5 +372,5 @@ export default {
resetCache,
disconnect,
domainToConnectionId,
handleWatch,
handleWatch
};
Loading

0 comments on commit c97b172

Please sign in to comment.