=0.10.0"
}
},
- "node_modules/base64-arraybuffer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz",
- "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==",
- "peer": true,
- "engines": {
- "node": ">= 0.6.0"
- }
- },
"node_modules/base64-js": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
@@ -19080,8 +19061,8 @@
}
},
"node_modules/civil-server": {
- "version": "0.0.18",
- "resolved": "git+ssh://git@github.com/EnCiv/civil-server.git#36ac227f8161fb051a7ef4630b653a62a2c7d98e",
+ "version": "0.0.26",
+ "resolved": "git+ssh://git@github.com/EnCiv/civil-server.git#8254efdda3abd363c0a31e3e1800290acd84acd0",
"license": "SEE LICENSE IN LICENSE.txt",
"peer": true,
"dependencies": {
@@ -19118,20 +19099,21 @@
"react-helmet": "^6.1.0",
"react-hot-loader": "^4.13.0",
"react-jss": "^10.9.0",
+ "sib-api-v3-sdk": "^8.4.2",
"sniffr": "^1.2.0",
- "socket.io": "^4.4.0",
- "socket.io-client": "^4.4.0",
+ "socket.io": "^4.6.1",
+ "socket.io-client": "^4.6.1",
"stream-browserify": "^3.0.0",
"superagent": "^5.3.1"
},
"bin": {
- "logwatch": "dist/tools/logwatch.js",
+ "do-civil": "app/tools/do-civil.sh",
+ "logwatch": "app/tools/logwatch.js",
"mongo-id": "dist/tools/mongo-id.js",
"react-directory-indexer": "dist/tools/react-directory-indexer.js"
},
"engines": {
- "node": "16.16.0",
- "npm": "8.13.2"
+ "node": "16.16.0"
},
"optionalDependencies": {
"@shelf/jest-mongodb": "^2.2.0",
@@ -19188,6 +19170,47 @@
"@hapi/hoek": "^8.3.0"
}
},
+ "node_modules/civil-server/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "peer": true,
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "node_modules/civil-server/node_modules/sib-api-v3-sdk": {
+ "version": "8.5.0",
+ "resolved": "https://registry.npmjs.org/sib-api-v3-sdk/-/sib-api-v3-sdk-8.5.0.tgz",
+ "integrity": "sha512-6Ratp5kLN/rEEvk4XVIQ4L8IrCIrcfE9m1HjvHz/WepC+CVXPsjOlgRcK/jQjpN5kC+dmhDAqrTo1OtnF6i1wA==",
+ "peer": true,
+ "dependencies": {
+ "querystring": "0.2.0",
+ "superagent": "3.7.0"
+ }
+ },
+ "node_modules/civil-server/node_modules/sib-api-v3-sdk/node_modules/superagent": {
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.7.0.tgz",
+ "integrity": "sha512-/8trxO6NbLx4YXb7IeeFTSmsQ35pQBiTBsLNvobZx7qBzBeHYvKCyIIhW2gNcWbLzYxPAjdgFbiepd8ypwC0Gw==",
+ "deprecated": "Please upgrade to v7.0.2+ of superagent. We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing. See the releases tab for more information at
.",
+ "peer": true,
+ "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"
+ },
+ "engines": {
+ "node": ">= 4.0"
+ }
+ },
"node_modules/cjs-module-lexer": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz",
@@ -22072,9 +22095,9 @@
}
},
"node_modules/engine.io": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.0.tgz",
- "integrity": "sha512-ErhZOVu2xweCjEfYcTdkCnEYUiZgkAcBBAhW4jbIvNG8SLU3orAqoJCiytZjYF7eTpVmmCrLDjLIEaPlUAs1uw==",
+ "version": "6.4.1",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.4.1.tgz",
+ "integrity": "sha512-JFYQurD/nbsA5BSPmbaOSLa3tSVj8L6o4srSwXXY3NqE+gGUNmmPTbhn8tjzcCtSqhFgIeqef81ngny8JM25hw==",
"peer": true,
"dependencies": {
"@types/cookie": "^0.4.1",
@@ -22085,34 +22108,30 @@
"cookie": "~0.4.1",
"cors": "~2.8.5",
"debug": "~4.3.1",
- "engine.io-parser": "~5.0.0",
- "ws": "~8.2.3"
+ "engine.io-parser": "~5.0.3",
+ "ws": "~8.11.0"
},
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/engine.io-client": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.1.1.tgz",
- "integrity": "sha512-V05mmDo4gjimYW+FGujoGmmmxRaDsrVr7AXA3ZIfa04MWM1jOfZfUwou0oNqhNwy/votUDvGDt4JA4QF4e0b4g==",
+ "version": "6.4.0",
+ "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.4.0.tgz",
+ "integrity": "sha512-GyKPDyoEha+XZ7iEqam49vz6auPnNJ9ZBfy89f+rMMas8AuiMWOZ9PVzu8xb9ZC6rafUqiGHSCfu22ih66E+1g==",
"peer": true,
"dependencies": {
- "@socket.io/component-emitter": "~3.0.0",
+ "@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.1",
- "engine.io-parser": "~5.0.0",
- "has-cors": "1.1.0",
- "parseqs": "0.0.6",
- "parseuri": "0.0.6",
- "ws": "~8.2.3",
- "xmlhttprequest-ssl": "~2.0.0",
- "yeast": "0.1.2"
+ "engine.io-parser": "~5.0.3",
+ "ws": "~8.11.0",
+ "xmlhttprequest-ssl": "~2.0.0"
}
},
"node_modules/engine.io-client/node_modules/debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"dependencies": {
"ms": "2.1.2"
@@ -22127,9 +22146,9 @@
}
},
"node_modules/engine.io-client/node_modules/ws": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
- "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
"peer": true,
"engines": {
"node": ">=10.0.0"
@@ -22148,30 +22167,27 @@
}
},
"node_modules/engine.io-parser": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.2.tgz",
- "integrity": "sha512-wuiO7qO/OEkPJSFueuATIXtrxF7/6GTbAO9QLv7nnbjwZ5tYhLm9zxvLwxstRs0dcT0KUlWTjtIOs1T86jt12g==",
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.6.tgz",
+ "integrity": "sha512-tjuoZDMAdEhVnSFleYPCtdL2GXwVTGtNjoeJd9IhIG3C1xs9uwxqRNEu5WpnDZCaozwVlK/nuQhpodhXSIMaxw==",
"peer": true,
- "dependencies": {
- "base64-arraybuffer": "~1.0.1"
- },
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/engine.io/node_modules/cookie": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
- "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==",
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
+ "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
"peer": true,
"engines": {
"node": ">= 0.6"
}
},
"node_modules/engine.io/node_modules/debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"dependencies": {
"ms": "2.1.2"
@@ -22186,9 +22202,9 @@
}
},
"node_modules/engine.io/node_modules/ws": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
- "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
"peer": true,
"engines": {
"node": ">=10.0.0"
@@ -24535,12 +24551,6 @@
"resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz",
"integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA=="
},
- "node_modules/has-cors": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
- "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=",
- "peer": true
- },
"node_modules/has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
@@ -32431,18 +32441,6 @@
"parse5": "^6.0.1"
}
},
- "node_modules/parseqs": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz",
- "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==",
- "peer": true
- },
- "node_modules/parseuri": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz",
- "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==",
- "peer": true
- },
"node_modules/parseurl": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
@@ -33506,7 +33504,6 @@
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
"integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
- "optional": true,
"engines": {
"node": ">=0.4.x"
}
@@ -35610,49 +35607,71 @@
"integrity": "sha512-k7C0ZcHBU330LcSkKyc2cOOB0uHosME8b2t9qFJqdqB1cKwGmZWd7BVwBz5mWOMJ5dggK1dy2qv+DSwteKLBzQ=="
},
"node_modules/socket.io": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.0.tgz",
- "integrity": "sha512-bnpJxswR9ov0Bw6ilhCvO38/1WPtE3eA2dtxi2Iq4/sFebiDJQzgKNYA7AuVVdGW09nrESXd90NbZqtDd9dzRQ==",
+ "version": "4.6.1",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.6.1.tgz",
+ "integrity": "sha512-KMcaAi4l/8+xEjkRICl6ak8ySoxsYG+gG6/XfRCPJPQ/haCRIJBTL4wIl8YCsmtaBovcAXGLOShyVWQ/FG8GZA==",
"peer": true,
"dependencies": {
"accepts": "~1.3.4",
"base64id": "~2.0.0",
"debug": "~4.3.2",
- "engine.io": "~6.1.0",
- "socket.io-adapter": "~2.3.3",
- "socket.io-parser": "~4.0.4"
+ "engine.io": "~6.4.1",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.1"
},
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/socket.io-adapter": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz",
- "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==",
- "peer": true
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz",
+ "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==",
+ "peer": true,
+ "dependencies": {
+ "ws": "~8.11.0"
+ }
+ },
+ "node_modules/socket.io-adapter/node_modules/ws": {
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
+ "peer": true,
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": "^5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
},
"node_modules/socket.io-client": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.4.0.tgz",
- "integrity": "sha512-g7riSEJXi7qCFImPow98oT8X++MSsHz6MMFRXkWNJ6uEROSHOa3kxdrsYWMq85dO+09CFMkcqlpjvbVXQl4z6g==",
+ "version": "4.6.1",
+ "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.6.1.tgz",
+ "integrity": "sha512-5UswCV6hpaRsNg5kkEHVcbBIXEYoVbMQaHJBXJCyEQ+CiFPV1NIOY0XOFWG4XR4GZcB8Kn6AsRs/9cy9TbqVMQ==",
"peer": true,
"dependencies": {
- "@socket.io/component-emitter": "~3.0.0",
- "backo2": "~1.0.2",
+ "@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.2",
- "engine.io-client": "~6.1.1",
- "parseuri": "0.0.6",
- "socket.io-parser": "~4.1.1"
+ "engine.io-client": "~6.4.0",
+ "socket.io-parser": "~4.2.1"
},
"engines": {
"node": ">=10.0.0"
}
},
"node_modules/socket.io-client/node_modules/debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"dependencies": {
"ms": "2.1.2"
@@ -35666,27 +35685,13 @@
}
}
},
- "node_modules/socket.io-client/node_modules/socket.io-parser": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.1.1.tgz",
- "integrity": "sha512-USQVLSkDWE5nbcY760ExdKaJxCE65kcsG/8k5FDGZVVxpD1pA7hABYXYkCUvxUuYYh/+uQw0N/fvBzfT8o07KA==",
- "peer": true,
- "dependencies": {
- "@socket.io/component-emitter": "~3.0.0",
- "debug": "~4.3.1"
- },
- "engines": {
- "node": ">=10.0.0"
- }
- },
"node_modules/socket.io-parser": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz",
- "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==",
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.2.tgz",
+ "integrity": "sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw==",
"peer": true,
"dependencies": {
- "@types/component-emitter": "^1.2.10",
- "component-emitter": "~1.3.0",
+ "@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.1"
},
"engines": {
@@ -35694,9 +35699,9 @@
}
},
"node_modules/socket.io-parser/node_modules/debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"dependencies": {
"ms": "2.1.2"
@@ -35711,9 +35716,9 @@
}
},
"node_modules/socket.io/node_modules/debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"dependencies": {
"ms": "2.1.2"
@@ -36933,27 +36938,6 @@
"optional": true,
"peer": true
},
- "node_modules/through2": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
- "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
- "dependencies": {
- "readable-stream": "3"
- }
- },
- "node_modules/through2/node_modules/readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/thunky": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
@@ -39364,12 +39348,6 @@
"fd-slicer": "~1.1.0"
}
},
- "node_modules/yeast": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
- "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=",
- "peer": true
- },
"node_modules/yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
@@ -42348,9 +42326,9 @@
}
},
"@socket.io/component-emitter": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.0.0.tgz",
- "integrity": "sha512-2pTGuibAXJswAPJjaKisthqS/NOK5ypG4LYT6tEAV0S/mxW0zOIvYvGK0V8w8+SHxAm6vRMSjqSalFXeBAqs+Q==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz",
+ "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==",
"peer": true
},
"@storybook/addon-actions": {
@@ -50943,12 +50921,6 @@
"integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
"optional": true
},
- "@types/component-emitter": {
- "version": "1.2.11",
- "resolved": "https://registry.npmjs.org/@types/component-emitter/-/component-emitter-1.2.11.tgz",
- "integrity": "sha512-SRXjM+tfsSlA9VuG8hGO2nft2p8zjXCK1VcC6N4NXbBbYbSia9kzCChYQajIjzIqOOOuh5Ock6MmV2oux4jDZQ==",
- "peer": true
- },
"@types/cookie": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
@@ -50956,10 +50928,13 @@
"peer": true
},
"@types/cors": {
- "version": "2.8.12",
- "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz",
- "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==",
- "peer": true
+ "version": "2.8.13",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz",
+ "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==",
+ "peer": true,
+ "requires": {
+ "@types/node": "*"
+ }
},
"@types/duplexify": {
"version": "3.6.0",
@@ -52679,12 +52654,6 @@
"babel-preset-current-node-syntax": "^1.0.0"
}
},
- "backo2": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
- "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
- "peer": true
- },
"bail": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz",
@@ -52751,12 +52720,6 @@
}
}
},
- "base64-arraybuffer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.1.tgz",
- "integrity": "sha512-vFIUq7FdLtjZMhATwDul5RZWv2jpXQ09Pd6jcVEOvIsqCWTRFD/ONHNfyOS8dA/Ippi5dsIgpyKWKZaAKZltbA==",
- "peer": true
- },
"base64-js": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
@@ -53965,8 +53928,8 @@
}
},
"civil-server": {
- "version": "git+ssh://git@github.com/EnCiv/civil-server.git#36ac227f8161fb051a7ef4630b653a62a2c7d98e",
- "from": "civil-server@github:EnCiv/civil-server",
+ "version": "git+ssh://git@github.com/EnCiv/civil-server.git#8254efdda3abd363c0a31e3e1800290acd84acd0",
+ "from": "civil-server@github:EnCiv/civil-server#sockup",
"peer": true,
"requires": {
"@babel/runtime": "^7.16.3",
@@ -54013,9 +53976,10 @@
"react-helmet": "^6.1.0",
"react-hot-loader": "^4.13.0",
"react-jss": "^10.9.0",
+ "sib-api-v3-sdk": "^8.4.2",
"sniffr": "^1.2.0",
- "socket.io": "^4.4.0",
- "socket.io-client": "^4.4.0",
+ "socket.io": "^4.6.1",
+ "socket.io-client": "^4.6.1",
"stream-browserify": "^3.0.0",
"superagent": "^5.3.1",
"webpack-dev-server": "^4.6.0"
@@ -54053,6 +54017,45 @@
"requires": {
"@hapi/hoek": "^8.3.0"
}
+ },
+ "debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "peer": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ },
+ "sib-api-v3-sdk": {
+ "version": "8.5.0",
+ "resolved": "https://registry.npmjs.org/sib-api-v3-sdk/-/sib-api-v3-sdk-8.5.0.tgz",
+ "integrity": "sha512-6Ratp5kLN/rEEvk4XVIQ4L8IrCIrcfE9m1HjvHz/WepC+CVXPsjOlgRcK/jQjpN5kC+dmhDAqrTo1OtnF6i1wA==",
+ "peer": true,
+ "requires": {
+ "querystring": "0.2.0",
+ "superagent": "3.7.0"
+ },
+ "dependencies": {
+ "superagent": {
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.7.0.tgz",
+ "integrity": "sha512-/8trxO6NbLx4YXb7IeeFTSmsQ35pQBiTBsLNvobZx7qBzBeHYvKCyIIhW2gNcWbLzYxPAjdgFbiepd8ypwC0Gw==",
+ "peer": true,
+ "requires": {
+ "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"
+ }
+ }
+ }
}
}
},
@@ -56364,9 +56367,9 @@
}
},
"engine.io": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.1.0.tgz",
- "integrity": "sha512-ErhZOVu2xweCjEfYcTdkCnEYUiZgkAcBBAhW4jbIvNG8SLU3orAqoJCiytZjYF7eTpVmmCrLDjLIEaPlUAs1uw==",
+ "version": "6.4.1",
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.4.1.tgz",
+ "integrity": "sha512-JFYQurD/nbsA5BSPmbaOSLa3tSVj8L6o4srSwXXY3NqE+gGUNmmPTbhn8tjzcCtSqhFgIeqef81ngny8JM25hw==",
"peer": true,
"requires": {
"@types/cookie": "^0.4.1",
@@ -56377,77 +56380,70 @@
"cookie": "~0.4.1",
"cors": "~2.8.5",
"debug": "~4.3.1",
- "engine.io-parser": "~5.0.0",
- "ws": "~8.2.3"
+ "engine.io-parser": "~5.0.3",
+ "ws": "~8.11.0"
},
"dependencies": {
"cookie": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
- "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==",
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
+ "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
"peer": true
},
"debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"requires": {
"ms": "2.1.2"
}
},
"ws": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
- "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
"peer": true,
"requires": {}
}
}
},
"engine.io-client": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.1.1.tgz",
- "integrity": "sha512-V05mmDo4gjimYW+FGujoGmmmxRaDsrVr7AXA3ZIfa04MWM1jOfZfUwou0oNqhNwy/votUDvGDt4JA4QF4e0b4g==",
+ "version": "6.4.0",
+ "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.4.0.tgz",
+ "integrity": "sha512-GyKPDyoEha+XZ7iEqam49vz6auPnNJ9ZBfy89f+rMMas8AuiMWOZ9PVzu8xb9ZC6rafUqiGHSCfu22ih66E+1g==",
"peer": true,
"requires": {
- "@socket.io/component-emitter": "~3.0.0",
+ "@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.1",
- "engine.io-parser": "~5.0.0",
- "has-cors": "1.1.0",
- "parseqs": "0.0.6",
- "parseuri": "0.0.6",
- "ws": "~8.2.3",
- "xmlhttprequest-ssl": "~2.0.0",
- "yeast": "0.1.2"
+ "engine.io-parser": "~5.0.3",
+ "ws": "~8.11.0",
+ "xmlhttprequest-ssl": "~2.0.0"
},
"dependencies": {
"debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"requires": {
"ms": "2.1.2"
}
},
"ws": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
- "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
"peer": true,
"requires": {}
}
}
},
"engine.io-parser": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.2.tgz",
- "integrity": "sha512-wuiO7qO/OEkPJSFueuATIXtrxF7/6GTbAO9QLv7nnbjwZ5tYhLm9zxvLwxstRs0dcT0KUlWTjtIOs1T86jt12g==",
- "peer": true,
- "requires": {
- "base64-arraybuffer": "~1.0.1"
- }
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.6.tgz",
+ "integrity": "sha512-tjuoZDMAdEhVnSFleYPCtdL2GXwVTGtNjoeJd9IhIG3C1xs9uwxqRNEu5WpnDZCaozwVlK/nuQhpodhXSIMaxw==",
+ "peer": true
},
"enhanced-resolve": {
"version": "5.8.3",
@@ -58322,12 +58318,6 @@
"resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz",
"integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA=="
},
- "has-cors": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
- "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=",
- "peer": true
- },
"has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
@@ -64422,18 +64412,6 @@
"parse5": "^6.0.1"
}
},
- "parseqs": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz",
- "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==",
- "peer": true
- },
- "parseuri": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz",
- "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==",
- "peer": true
- },
"parseurl": {
"version": "1.3.3",
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
@@ -65252,8 +65230,7 @@
"querystring": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
- "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
- "optional": true
+ "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA="
},
"querystring-es3": {
"version": "0.2.1",
@@ -66969,23 +66946,23 @@
"integrity": "sha512-k7C0ZcHBU330LcSkKyc2cOOB0uHosME8b2t9qFJqdqB1cKwGmZWd7BVwBz5mWOMJ5dggK1dy2qv+DSwteKLBzQ=="
},
"socket.io": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.4.0.tgz",
- "integrity": "sha512-bnpJxswR9ov0Bw6ilhCvO38/1WPtE3eA2dtxi2Iq4/sFebiDJQzgKNYA7AuVVdGW09nrESXd90NbZqtDd9dzRQ==",
+ "version": "4.6.1",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.6.1.tgz",
+ "integrity": "sha512-KMcaAi4l/8+xEjkRICl6ak8ySoxsYG+gG6/XfRCPJPQ/haCRIJBTL4wIl8YCsmtaBovcAXGLOShyVWQ/FG8GZA==",
"peer": true,
"requires": {
"accepts": "~1.3.4",
"base64id": "~2.0.0",
"debug": "~4.3.2",
- "engine.io": "~6.1.0",
- "socket.io-adapter": "~2.3.3",
- "socket.io-parser": "~4.0.4"
+ "engine.io": "~6.4.1",
+ "socket.io-adapter": "~2.5.2",
+ "socket.io-parser": "~4.2.1"
},
"dependencies": {
"debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"requires": {
"ms": "2.1.2"
@@ -66994,61 +66971,60 @@
}
},
"socket.io-adapter": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.3.3.tgz",
- "integrity": "sha512-Qd/iwn3VskrpNO60BeRyCyr8ZWw9CPZyitW4AQwmRZ8zCiyDiL+znRnWX6tDHXnWn1sJrM1+b6Mn6wEDJJ4aYQ==",
- "peer": true
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz",
+ "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==",
+ "peer": true,
+ "requires": {
+ "ws": "~8.11.0"
+ },
+ "dependencies": {
+ "ws": {
+ "version": "8.11.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
+ "peer": true,
+ "requires": {}
+ }
+ }
},
"socket.io-client": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.4.0.tgz",
- "integrity": "sha512-g7riSEJXi7qCFImPow98oT8X++MSsHz6MMFRXkWNJ6uEROSHOa3kxdrsYWMq85dO+09CFMkcqlpjvbVXQl4z6g==",
+ "version": "4.6.1",
+ "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.6.1.tgz",
+ "integrity": "sha512-5UswCV6hpaRsNg5kkEHVcbBIXEYoVbMQaHJBXJCyEQ+CiFPV1NIOY0XOFWG4XR4GZcB8Kn6AsRs/9cy9TbqVMQ==",
"peer": true,
"requires": {
- "@socket.io/component-emitter": "~3.0.0",
- "backo2": "~1.0.2",
+ "@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.2",
- "engine.io-client": "~6.1.1",
- "parseuri": "0.0.6",
- "socket.io-parser": "~4.1.1"
+ "engine.io-client": "~6.4.0",
+ "socket.io-parser": "~4.2.1"
},
"dependencies": {
"debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"requires": {
"ms": "2.1.2"
}
- },
- "socket.io-parser": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.1.1.tgz",
- "integrity": "sha512-USQVLSkDWE5nbcY760ExdKaJxCE65kcsG/8k5FDGZVVxpD1pA7hABYXYkCUvxUuYYh/+uQw0N/fvBzfT8o07KA==",
- "peer": true,
- "requires": {
- "@socket.io/component-emitter": "~3.0.0",
- "debug": "~4.3.1"
- }
}
}
},
"socket.io-parser": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.0.4.tgz",
- "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==",
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.2.tgz",
+ "integrity": "sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw==",
"peer": true,
"requires": {
- "@types/component-emitter": "^1.2.10",
- "component-emitter": "~1.3.0",
+ "@socket.io/component-emitter": "~3.1.0",
"debug": "~4.3.1"
},
"dependencies": {
"debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
+ "version": "4.3.4",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
"peer": true,
"requires": {
"ms": "2.1.2"
@@ -67998,26 +67974,6 @@
"optional": true,
"peer": true
},
- "through2": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
- "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
- "requires": {
- "readable-stream": "3"
- },
- "dependencies": {
- "readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
- }
- }
- },
"thunky": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
@@ -69827,12 +69783,6 @@
"fd-slicer": "~1.1.0"
}
},
- "yeast": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz",
- "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=",
- "peer": true
- },
"yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
diff --git a/package.json b/package.json
index 560e3439..37ab4b3a 100644
--- a/package.json
+++ b/package.json
@@ -57,7 +57,7 @@
},
"peerDependencies": {
"civil-client": "github:EnCiv/civil-client",
- "civil-server": "github:EnCiv/civil-server"
+ "civil-server": "github:EnCiv/civil-server#sockup"
},
"devDependencies": {
"@babel/cli": "^7.16.0",
@@ -109,7 +109,6 @@
"sib-api-v3-sdk": "^7.2.4",
"sniffr": "^1.2.0",
"superagent": "^5.3.1",
- "through2": "^4.0.2",
"underscore.string": "^3.3.5",
"wav-file-info": "git+https://github.com/nSimonFR/Node-WAV-File-Info.git",
"webrtc-adapter": "^7.7.1"
diff --git a/stories/deliberations.stories.js b/stories/deliberations.stories.js
new file mode 100644
index 00000000..b92134d6
--- /dev/null
+++ b/stories/deliberations.stories.js
@@ -0,0 +1,362 @@
+import React from 'react'
+
+import App from '../app/components/app'
+import { merge } from 'lodash'
+import { DynamicFontSizeClientHelmet } from '../app/components/dynamic-font-size-helmet'
+
+export default {
+ title: 'Deliberations',
+ component: App,
+ argTypes: {},
+ decorators: [
+ Story => (
+ <>
+
+
+ >
+ ),
+ ],
+}
+
+const iota = {
+ webComponent: {
+ "autoCameraStart": true,
+ "opening": {
+ "noPreamble": true
+ },
+ "logo": "none",
+ "firstPage": "ViewerRecorder",
+ "showMicCamera": true,
+ "instructionLink": "/candidate-conversation-candidate-recorder/instructions",
+ "metaTags": [
+ "property=\"og:title\" content=\"What is Democracy\"",
+ "property=\"og:image\" content=\"https://res.cloudinary.com/hf6mryjpf/image/upload/v1587412519/what-is-democracy-preview-2020Apr20_cl3ziv.png\""
+ ],
+ "hangupButton": {
+ "name": "Exit"
+ },
+ "maxParticipants": 5,
+ "webComponent": "CcWrapper",
+ "participants": {
+ "moderator": {
+ "name": "David Fridley",
+ "speaking": [
+ ["https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341399/5e8cec3912d6e10017ed9caa-0-speaking20230320T194318392Z.mp4", "https://video.wixstatic.com/video/2796e1_f65b9429e7a144cc80f6cfe50d49e780/480p/mp4/file.mp4", "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341401/5e8cec3912d6e10017ed9caa-1-speaking20230320T194319647Z.mp4"],
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341402/5e8cec3912d6e10017ed9caa-2-speaking20230320T194320764Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341403/5e8cec3912d6e10017ed9caa-3-speaking20230320T194322403Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341405/5e8cec3912d6e10017ed9caa-4-speaking20230320T194323624Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341406/5e8cec3912d6e10017ed9caa-5-speaking20230320T194325114Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341407/5e8cec3912d6e10017ed9caa-6-speaking20230320T194326426Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341408/5e8cec3912d6e10017ed9caa-7-speaking20230320T194327292Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341409/5e8cec3912d6e10017ed9caa-8-speaking20230320T194328169Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341410/5e8cec3912d6e10017ed9caa-9-speaking20230320T194329403Z.mp4"
+ ],
+ "listening": "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341412/5e8cec3912d6e10017ed9caa-0-listening20230320T194330611Z.mp4",
+ "agenda": [
+ [
+ ['The Electoral College'],
+ ["Reform 1: The National Popular Vote"],
+ ["Do you support or oppose a transition to a National Popular Vote system and the elimination of the Electoral College? Why? Why not?"],
+ ],
+ ["By having each person's vote count equally nationwide, does a National Popular Vote system create a more equal and fair system for the election of our president? Should this principle of equality be a necessary part of our democratic republic? "],
+ ["Is it valuable for every state to have at least a certain amount of influence in the election of our president, regardless of their size, as is the case in the current system?"],
+ ["Would smaller states and rural areas see their influence on national politics diminish as a result of a transition to a national popular vote? If so, is this an acceptable or unacceptable condition for our presidential elections?"],
+ ["What effect would a transition to a National Popular Vote have upon the way presidential candidates' campaign? Would they ignore small states and less populated areas in favor of more populous areas of the country? "],
+ ["Would the changes in the way presidential candidate's campaign be a fair outcome of each person's vote counting equally?"],
+ ["What effect would a transition to a National Popular Vote have upon voter turnout? "],
+ ["What is required for a transition to a National Popular Vote? Is a transition to a National Popular Vote practical and feasible within our current political system? Why? Why not?"],
+ ["Thank you"],
+ ],
+ "timeLimits": [60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60]
+ },
+ "audience1": {
+ "speaking": [
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876500/5e68098e9f2f3600177ab1af-0-speaking20200310T214140489Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876503/5e68098e9f2f3600177ab1af-1-speaking20200310T214141310Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876507/5e68098e9f2f3600177ab1af-2-speaking20200310T214143708Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876512/5e68098e9f2f3600177ab1af-3-speaking20200310T214148300Z.mp4"
+ ],
+ "name": "David Fridley",
+ "listening": "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876513/5e68098e9f2f3600177ab1af-0-listening20200310T214152882Z.mp4",
+ },
+ "audience2": {
+ "speaking": [
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940332/5e68ff1619a56d0017c492ac-0-speaking20200311T152531818Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940335/5e68ff1619a56d0017c492ac-1-speaking20200311T152532379Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940339/5e68ff1619a56d0017c492ac-2-speaking20200311T152535299Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940344/5e68ff1619a56d0017c492ac-3-speaking20200311T152539296Z.mp4"
+ ],
+ "name": "Adolf G Gundersen",
+ "listening": "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940350/5e68ff1619a56d0017c492ac-0-listening20200311T152544519Z.mp4",
+ "bp_info": {
+ "stage_id": "0",
+ "election_date": "2020-11-03"
+ }
+ },
+ "human": {
+ "listening": {
+ "round": 1,
+ "seat": "nextUp"
+ }
+ }
+ },
+ "closing": {
+ "thanks": "Thank You!",
+ "iframe": {
+ "src": "https://docs.google.com/forms/d/e/1FAIpQLScYiUwoqCmlqr5KQf99ewVRxEvyCrx9CvSH196xlqqtj7cEkg/viewform?embedded=true",
+ "width": 640,
+ "height": 1579
+ }
+ }
+ },
+ env: 'development',
+ path: '/country:us/organization:cfa/office:moderator/2021-03-21-recorder-622157bbc1644259e8614a9b',
+ user: {
+ email: 'ddfridley@yahoo.com',
+ id: '621e826899902756d4ba49f5',
+ },
+ browserConfig: {
+ os: {
+ name: 'windows',
+ version: [10, 0],
+ versionString: '10.0',
+ },
+ browser: {
+ name: 'chrome',
+ version: [98, 0, 4758, 102],
+ versionString: '98.0.4758.102',
+ },
+ type: 'desktop',
+ model: '',
+ ip: '::ffff:127.0.0.1',
+ },
+ _id: '622157bbc1644259e8614a9c',
+ component: {
+ component: 'UndebateCreator',
+ participants: {},
+ },
+ bp_info: {
+ office: 'Moderator',
+ election_date: '03/21/2021',
+ candidate_name: 'Bill Smith',
+ last_name: 'Smith',
+ unique_id: '622157bbc1644259e8614a9b',
+ candidate_emails: ['billsmith@gmail.com'],
+ party: '',
+ election_source: 'CodeForAmerica.NAC',
+ },
+ subject: 'Moderator-Candidate Recorder',
+ description: 'A Candidate Recorder for the undebate: Moderator',
+ parentId: '621e8aefe7db9b6338d0ab74',
+}
+
+const otherProps = {
+ env: 'development',
+ user: {
+ email: 'ddfridley@yahoo.com',
+ id: '621e826899902756d4ba49f5',
+ },
+ browserConfig: {
+ os: {
+ name: 'windows',
+ version: [10, 0],
+ versionString: '10.0',
+ },
+ browser: {
+ name: 'chrome',
+ version: [98, 0, 4758, 102],
+ versionString: '98.0.4758.102',
+ },
+ type: 'desktop',
+ model: '',
+ ip: '::ffff:127.0.0.1',
+ },
+ bp_info: {
+ office: 'Moderator',
+ election_date: '03/21/2021',
+ candidate_name: 'Bill Smith',
+ last_name: 'Smith',
+ unique_id: '622157bbc1644259e8614a9b',
+ candidate_emails: ['billsmith@gmail.com'],
+ party: '',
+ election_source: 'CodeForAmerica.NAC',
+ },
+}
+
+const Template = args =>
+
+export const Undebate = Template.bind({})
+Undebate.args = {
+ iota: iota,
+}
+
+const cc3 = {
+ _id: {
+ $oid: '5e7e6e147c213e3443f116e5',
+ },
+ path: '/candidate-conversation-3',
+ subject: 'Candidate Conversation with 3 participants',
+ description: 'A prototype Candidate Conversation for schoolboard',
+ component: {
+ component: 'MergeChildren',
+ },
+ webComponent: {
+ webComponent: 'CandidateConversation',
+ opening: {
+ line1: 'You are about to experience a new kind of conversation',
+ line2: 'This is how voters can learn about candidates in a more human way',
+ line3:
+ 'And this is how we can efficiently facilitate 500K conversations all over the country, every election season',
+ line4: 'The topic of the discussion is:',
+ bigLine: 'US School Board Candidate Conversation',
+ subLine: 'This is a mock conversation, these are not real candidates',
+ },
+ participants: {
+ moderator: {
+ name: 'David Fridley',
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788682/candidate-conversation-moderator-0_at5un1.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788667/candidate-converation-moderator-1_z2kjhr.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788659/candidate-confersation-moderator-2_cid3dq.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788634/candidate-conversation-moderator-3_iq0npa.mp4',
+ ],
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788719/candidate-conversation-moderator-listening_nlfeoy.mp4',
+ agenda: [
+ [
+ 'Introductions',
+ '1- Who you are',
+ '2- Where you are',
+ '3- One word to describe yourself',
+ '4- What office you are running for',
+ ],
+ ['What type of skills should students be learning for success in the 21st century?'],
+ ['Closing Remarks'],
+ ['Thank you'],
+ ],
+ timeLimits: [10, 60, 60],
+ },
+ audience1: {
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566942893/5d5dc697d32514001766ca87-1-speaking20190827T215452394Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566942898/5d5dc697d32514001766ca87-2-speaking20190827T215455964Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566942903/5d5dc697d32514001766ca87-3-speaking20190827T215503161Z.mp4',
+ ],
+ name: 'Will',
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566942901/5d5dc697d32514001766ca87-2-nextUp20190827T215500659Z.mp4',
+ },
+ audience2: {
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1567120064/5d685ab98d5ab100175a1dd7-1-speaking20190829T230738520Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/du_41/v1567120076/5d685ab98d5ab100175a1dd7-2-speaking20190829T230743431Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1567120089/5d685ab98d5ab100175a1dd7-3-speaking20190829T230802074Z.mp4',
+ ],
+ name: 'MaryBeth MaryBeth McGarvey',
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1567120083/5d685ab98d5ab100175a1dd7-2-nextUp20190829T230755711Z.mp4',
+ },
+ audience3: {
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566839072/5d64111ba62cb60017dad9eb-1-speaking20190826T170428600Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566839081/5d64111ba62cb60017dad9eb-2-speaking20190826T170432708Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566839337/5d64111ba62cb60017dad9eb-3-speaking20190826T170818981Z.mp4',
+ ],
+ name: 'Alex Johnson',
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566926818/5d64111ba62cb60017dad9eb-listening20190826T170818981Z_s1wphm.mp4',
+ },
+ },
+ },
+}
+
+export const CandidateConversation = Template.bind({})
+const ccIota = merge({}, cc3, otherProps)
+CandidateConversation.args = {
+ iota: ccIota,
+}
+
+const ccWrapperIota = {
+ _id: {
+ $oid: '5f7ca753e7179a6ea5213fb0',
+ },
+ path: '/qa/ccwrapper-recorder',
+ subject: 'You are invited to record a Candidate Conversation',
+ description: 'A Recorder for the Candidate Conversation with 2 participants using CC wrapper',
+ webComponent: {
+ autoBegin: true,
+ webComponent: 'CcWrapper',
+ instructionLink: 'https://docs.google.com/document/d/1fORs9PlLss9azlsnf0A0lxFoOzDQJ9RJ-zNRZ583SVo/edit?usp=sharing',
+ participants: {
+ moderator: {
+ name: 'David Fridley',
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788719/candidate-conversation-creator-moderator-0_d7a3zr.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788635/candidate-conversation-creator-moderator-1_gtchg2.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788669/candidate-conversation-creator-moderator-2_bsceus.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788656/candidate-conversation-creator-moderator-3_qomqgj.mp4',
+ ],
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788719/candidate-conversation-moderator-listening_nlfeoy.mp4',
+ agenda: [
+ [
+ 'Introductions',
+ '1- Who you are',
+ '2- Where you are',
+ '3- One word to describe yourself',
+ '4- What office you are running for',
+ ],
+ ['What type of skills should students be learning for success in the 21st century?'],
+ ['Closing Remarks'],
+ ['Thank you'],
+ ],
+ timeLimits: [10, 60, 60],
+ },
+ audience1: {
+ name: 'Adolf Gundersen',
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1565640905/undebate-short-a1.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1565640905/undebate-short-a2.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1565640905/undebate-short-a3.mp4',
+ ],
+ listening: 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1565640905/undebate-short-as.mp4',
+ },
+ human: {
+ listening: {
+ round: 2,
+ seat: 'nextUp',
+ },
+ },
+ },
+ closing: {
+ thanks: 'Thank You.',
+ iframe: {
+ src: 'https://docs.google.com/forms/d/e/1FAIpQLSeh7kAVWpyjnSYmHhjfpjfalgznfDA_AF2xmrFB8ZzQj75Vyw/viewform?embedded=true',
+ width: '640',
+ height: '1511',
+ },
+ },
+ },
+ parentId: '5f7ca481e7179a6ea5213f43',
+}
+
+export const CcWrapper = Template.bind({})
+CcWrapper.args = {
+ iota: merge({}, ccWrapperIota, otherProps),
+}
+
+export const CcWrapperWithListeningFirst = Template.bind({})
+CcWrapperWithListeningFirst.args = {
+ iota: merge({}, iota, { webComponent: { webComponent: 'CcWrapper', autoBegin: true } }),
+}
+
+/* Todo fix Component so they do not error if empty props
+export const NothingHere = Template.bind({})
+NothingHere.args = {
+ iota: {
+ webComponent: {
+ webComponent: 'Undebate',
+ },
+ },
+}
+*/
diff --git a/stories/undebate.stories.js b/stories/undebate.stories.js
index f600a155..4f9fd044 100644
--- a/stories/undebate.stories.js
+++ b/stories/undebate.stories.js
@@ -242,6 +242,7 @@ const ccWrapperIota = {
description: 'A Recorder for the Candidate Conversation with 2 participants using CC wrapper',
webComponent: {
webComponent: 'CcWrapper',
+ autoBegin: true,
instructionLink: 'https://docs.google.com/document/d/1fORs9PlLss9azlsnf0A0lxFoOzDQJ9RJ-zNRZ583SVo/edit?usp=sharing',
participants: {
moderator: {
@@ -303,7 +304,7 @@ CcWrapper.args = {
export const CcWrapperWithListeningFirst = Template.bind({})
CcWrapperWithListeningFirst.args = {
- iota: merge({}, iota, { webComponent: { webComponent: 'CcWrapper' } }),
+ iota: merge({}, iota, { webComponent: { webComponent: 'CcWrapper', autoBegin: 'true' } }),
}
/* Todo fix Component so they do not error if empty props
diff --git a/stories/viewer-recorder.stories.js b/stories/viewer-recorder.stories.js
new file mode 100644
index 00000000..20435372
--- /dev/null
+++ b/stories/viewer-recorder.stories.js
@@ -0,0 +1,392 @@
+import React from 'react'
+
+import ViewerRecorder from '../app/web-components/cc-wrapper/viewer-recorder'
+import { merge } from 'lodash'
+import { DynamicFontSizeClientHelmet } from '../app/components/dynamic-font-size-helmet'
+
+export default {
+ title: 'ViewerRecorder',
+ component: ViewerRecorder,
+ argTypes: {},
+ decorators: [
+ Story => (
+ <>
+
+
+ >
+ ),
+ ],
+}
+
+const iota = {
+ webComponent: {
+ "autoCameraStart": true,
+ "opening": {
+ "noPreamble": true
+ },
+ "logo": "none",
+ "instructionLink": "/candidate-conversation-candidate-recorder/instructions",
+ "metaTags": [
+ "property=\"og:title\" content=\"What is Democracy\"",
+ "property=\"og:image\" content=\"https://res.cloudinary.com/hf6mryjpf/image/upload/v1587412519/what-is-democracy-preview-2020Apr20_cl3ziv.png\""
+ ],
+ "hangupButton": {
+ "name": "Exit"
+ },
+ "maxParticipants": 5,
+ "webComponent": "CcWrapper",
+ "participants": {
+ "moderator": {
+ "name": "David Fridley",
+ "speaking": [
+ ["https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341399/5e8cec3912d6e10017ed9caa-0-speaking20230320T194318392Z.mp4", "https://video.wixstatic.com/video/2796e1_f65b9429e7a144cc80f6cfe50d49e780/480p/mp4/file.mp4", "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341401/5e8cec3912d6e10017ed9caa-1-speaking20230320T194319647Z.mp4"],
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341402/5e8cec3912d6e10017ed9caa-2-speaking20230320T194320764Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341403/5e8cec3912d6e10017ed9caa-3-speaking20230320T194322403Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341405/5e8cec3912d6e10017ed9caa-4-speaking20230320T194323624Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341406/5e8cec3912d6e10017ed9caa-5-speaking20230320T194325114Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341407/5e8cec3912d6e10017ed9caa-6-speaking20230320T194326426Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341408/5e8cec3912d6e10017ed9caa-7-speaking20230320T194327292Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341409/5e8cec3912d6e10017ed9caa-8-speaking20230320T194328169Z.mp4",
+ "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341410/5e8cec3912d6e10017ed9caa-9-speaking20230320T194329403Z.mp4"
+ ],
+ "listening": "https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1679341412/5e8cec3912d6e10017ed9caa-0-listening20230320T194330611Z.mp4",
+ "agenda": [
+ [
+ ['The Electoral College'],
+ ["Reform 1: The National Popular Vote"],
+ ["Do you support or oppose a transition to a National Popular Vote system and the elimination of the Electoral College? Why? Why not?"],
+ ],
+ ["By having each person's vote count equally nationwide, does a National Popular Vote system create a more equal and fair system for the election of our president? Should this principle of equality be a necessary part of our democratic republic? "],
+ ["Is it valuable for every state to have at least a certain amount of influence in the election of our president, regardless of their size, as is the case in the current system?"],
+ ["Would smaller states and rural areas see their influence on national politics diminish as a result of a transition to a national popular vote? If so, is this an acceptable or unacceptable condition for our presidential elections?"],
+ ["What effect would a transition to a National Popular Vote have upon the way presidential candidates' campaign? Would they ignore small states and less populated areas in favor of more populous areas of the country? "],
+ ["Would the changes in the way presidential candidate's campaign be a fair outcome of each person's vote counting equally?"],
+ ["What effect would a transition to a National Popular Vote have upon voter turnout? "],
+ ["What is required for a transition to a National Popular Vote? Is a transition to a National Popular Vote practical and feasible within our current political system? Why? Why not?"],
+ ["Thank you"],
+ ],
+ "timeLimits": [60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60]
+ },
+ "audience1": {
+ "speaking": [
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876500/5e68098e9f2f3600177ab1af-0-speaking20200310T214140489Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876503/5e68098e9f2f3600177ab1af-1-speaking20200310T214141310Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876507/5e68098e9f2f3600177ab1af-2-speaking20200310T214143708Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876512/5e68098e9f2f3600177ab1af-3-speaking20200310T214148300Z.mp4"
+ ],
+ "name": "David Fridley",
+ "listening": "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583876513/5e68098e9f2f3600177ab1af-0-listening20200310T214152882Z.mp4",
+ },
+ "audience2": {
+ "speaking": [
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940332/5e68ff1619a56d0017c492ac-0-speaking20200311T152531818Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940335/5e68ff1619a56d0017c492ac-1-speaking20200311T152532379Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940339/5e68ff1619a56d0017c492ac-2-speaking20200311T152535299Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940344/5e68ff1619a56d0017c492ac-3-speaking20200311T152539296Z.mp4"
+ ],
+ "name": "Adolf G Gundersen",
+ "listening": "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940350/5e68ff1619a56d0017c492ac-0-listening20200311T152544519Z.mp4",
+ "bp_info": {
+ "stage_id": "0",
+ "election_date": "2020-11-03"
+ }
+ },
+ "audience3": {
+ "speaking": [
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940332/5e68ff1619a56d0017c492ac-0-speaking20200311T152531818Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940335/5e68ff1619a56d0017c492ac-1-speaking20200311T152532379Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940339/5e68ff1619a56d0017c492ac-2-speaking20200311T152535299Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940344/5e68ff1619a56d0017c492ac-3-speaking20200311T152539296Z.mp4"
+ ],
+ "name": "Adolf G Gundersen",
+ "listening": "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940350/5e68ff1619a56d0017c492ac-0-listening20200311T152544519Z.mp4",
+ "bp_info": {
+ "stage_id": "0",
+ "election_date": "2020-11-03"
+ }
+ },
+ "audience4": {
+ "speaking": [
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940332/5e68ff1619a56d0017c492ac-0-speaking20200311T152531818Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940335/5e68ff1619a56d0017c492ac-1-speaking20200311T152532379Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940339/5e68ff1619a56d0017c492ac-2-speaking20200311T152535299Z.mp4",
+ "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940344/5e68ff1619a56d0017c492ac-3-speaking20200311T152539296Z.mp4"
+ ],
+ "name": "Adolf G Gundersen",
+ "listening": "https://res.cloudinary.com/hisfgxdff/video/upload/q_auto/v1583940350/5e68ff1619a56d0017c492ac-0-listening20200311T152544519Z.mp4",
+ "bp_info": {
+ "stage_id": "0",
+ "election_date": "2020-11-03"
+ }
+ }/*
+ "human": {
+ "listening": {
+ "round": 1,
+ "seat": "nextUp"
+ }
+ }*/
+ },
+ "closing": {
+ "thanks": "Thank You!",
+ "iframe": {
+ "src": "https://docs.google.com/forms/d/e/1FAIpQLScYiUwoqCmlqr5KQf99ewVRxEvyCrx9CvSH196xlqqtj7cEkg/viewform?embedded=true",
+ "width": 640,
+ "height": 1579
+ }
+ }
+ },
+ env: 'development',
+ path: '/country:us/organization:cfa/office:moderator/2021-03-21-recorder-622157bbc1644259e8614a9b',
+ user: {
+ email: 'ddfridley@yahoo.com',
+ id: '621e826899902756d4ba49f5',
+ },
+ browserConfig: {
+ os: {
+ name: 'windows',
+ version: [10, 0],
+ versionString: '10.0',
+ },
+ browser: {
+ name: 'chrome',
+ version: [98, 0, 4758, 102],
+ versionString: '98.0.4758.102',
+ },
+ type: 'desktop',
+ model: '',
+ ip: '::ffff:127.0.0.1',
+ },
+ _id: '622157bbc1644259e8614a9c',
+ component: {
+ component: 'UndebateCreator',
+ participants: {},
+ },
+ bp_info: {
+ office: 'Moderator',
+ election_date: '03/21/2021',
+ candidate_name: 'Bill Smith',
+ last_name: 'Smith',
+ unique_id: '622157bbc1644259e8614a9b',
+ candidate_emails: ['billsmith@gmail.com'],
+ party: '',
+ election_source: 'CodeForAmerica.NAC',
+ },
+ subject: 'Moderator-Candidate Recorder',
+ description: 'A Candidate Recorder for the undebate: Moderator',
+ parentId: '621e8aefe7db9b6338d0ab74',
+}
+
+const otherProps = {
+ env: 'development',
+ user: {
+ email: 'ddfridley@yahoo.com',
+ id: '621e826899902756d4ba49f5',
+ },
+ browserConfig: {
+ os: {
+ name: 'windows',
+ version: [10, 0],
+ versionString: '10.0',
+ },
+ browser: {
+ name: 'chrome',
+ version: [98, 0, 4758, 102],
+ versionString: '98.0.4758.102',
+ },
+ type: 'desktop',
+ model: '',
+ ip: '::ffff:127.0.0.1',
+ },
+ bp_info: {
+ office: 'Moderator',
+ election_date: '03/21/2021',
+ candidate_name: 'Bill Smith',
+ last_name: 'Smith',
+ unique_id: '622157bbc1644259e8614a9b',
+ candidate_emails: ['billsmith@gmail.com'],
+ party: '',
+ election_source: 'CodeForAmerica.NAC',
+ },
+}
+
+const Template = args =>
+
+export const Undebate = Template.bind({})
+Undebate.args = {
+ dispatch: () => { },
+ ccState: {
+ reviewing: false, // true then ViewerRecorder is in review mode rather than record mode
+ participants: {}, // this is written directly by ViewerRecorder to preserve stored video, and computed video url, referenced by Ending to upload the videos}
+ },
+ ...iota.webComponent,
+}
+
+const cc3 = {
+ _id: {
+ $oid: '5e7e6e147c213e3443f116e5',
+ },
+ path: '/candidate-conversation-3',
+ subject: 'Candidate Conversation with 3 participants',
+ description: 'A prototype Candidate Conversation for schoolboard',
+ component: {
+ component: 'MergeChildren',
+ },
+ webComponent: {
+ webComponent: 'CandidateConversation',
+ opening: {
+ line1: 'You are about to experience a new kind of conversation',
+ line2: 'This is how voters can learn about candidates in a more human way',
+ line3:
+ 'And this is how we can efficiently facilitate 500K conversations all over the country, every election season',
+ line4: 'The topic of the discussion is:',
+ bigLine: 'US School Board Candidate Conversation',
+ subLine: 'This is a mock conversation, these are not real candidates',
+ },
+ participants: {
+ moderator: {
+ name: 'David Fridley',
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788682/candidate-conversation-moderator-0_at5un1.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788667/candidate-converation-moderator-1_z2kjhr.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788659/candidate-confersation-moderator-2_cid3dq.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788634/candidate-conversation-moderator-3_iq0npa.mp4',
+ ],
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788719/candidate-conversation-moderator-listening_nlfeoy.mp4',
+ agenda: [
+ [
+ 'Introductions',
+ '1- Who you are',
+ '2- Where you are',
+ '3- One word to describe yourself',
+ '4- What office you are running for',
+ ],
+ ['What type of skills should students be learning for success in the 21st century?'],
+ ['Closing Remarks'],
+ ['Thank you'],
+ ],
+ timeLimits: [10, 60, 60],
+ },
+ audience1: {
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566942893/5d5dc697d32514001766ca87-1-speaking20190827T215452394Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566942898/5d5dc697d32514001766ca87-2-speaking20190827T215455964Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566942903/5d5dc697d32514001766ca87-3-speaking20190827T215503161Z.mp4',
+ ],
+ name: 'Will',
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566942901/5d5dc697d32514001766ca87-2-nextUp20190827T215500659Z.mp4',
+ },
+ audience2: {
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1567120064/5d685ab98d5ab100175a1dd7-1-speaking20190829T230738520Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/du_41/v1567120076/5d685ab98d5ab100175a1dd7-2-speaking20190829T230743431Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1567120089/5d685ab98d5ab100175a1dd7-3-speaking20190829T230802074Z.mp4',
+ ],
+ name: 'MaryBeth MaryBeth McGarvey',
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1567120083/5d685ab98d5ab100175a1dd7-2-nextUp20190829T230755711Z.mp4',
+ },
+ audience3: {
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566839072/5d64111ba62cb60017dad9eb-1-speaking20190826T170428600Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566839081/5d64111ba62cb60017dad9eb-2-speaking20190826T170432708Z.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566839337/5d64111ba62cb60017dad9eb-3-speaking20190826T170818981Z.mp4',
+ ],
+ name: 'Alex Johnson',
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566926818/5d64111ba62cb60017dad9eb-listening20190826T170818981Z_s1wphm.mp4',
+ },
+ },
+ },
+}
+
+export const CandidateConversation = Template.bind({})
+const ccIota = merge({}, cc3, otherProps)
+CandidateConversation.args = {
+ iota: ccIota,
+}
+
+const ccWrapperIota = {
+ _id: {
+ $oid: '5f7ca753e7179a6ea5213fb0',
+ },
+ path: '/qa/ccwrapper-recorder',
+ subject: 'You are invited to record a Candidate Conversation',
+ description: 'A Recorder for the Candidate Conversation with 2 participants using CC wrapper',
+ webComponent: {
+ webComponent: 'CcWrapper',
+ instructionLink: 'https://docs.google.com/document/d/1fORs9PlLss9azlsnf0A0lxFoOzDQJ9RJ-zNRZ583SVo/edit?usp=sharing',
+ participants: {
+ moderator: {
+ name: 'David Fridley',
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788719/candidate-conversation-creator-moderator-0_d7a3zr.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788635/candidate-conversation-creator-moderator-1_gtchg2.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788669/candidate-conversation-creator-moderator-2_bsceus.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788656/candidate-conversation-creator-moderator-3_qomqgj.mp4',
+ ],
+ listening:
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1566788719/candidate-conversation-moderator-listening_nlfeoy.mp4',
+ agenda: [
+ [
+ 'Introductions',
+ '1- Who you are',
+ '2- Where you are',
+ '3- One word to describe yourself',
+ '4- What office you are running for',
+ ],
+ ['What type of skills should students be learning for success in the 21st century?'],
+ ['Closing Remarks'],
+ ['Thank you'],
+ ],
+ timeLimits: [10, 60, 60],
+ },
+ audience1: {
+ name: 'Adolf Gundersen',
+ speaking: [
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1565640905/undebate-short-a1.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1565640905/undebate-short-a2.mp4',
+ 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1565640905/undebate-short-a3.mp4',
+ ],
+ listening: 'https://res.cloudinary.com/hf6mryjpf/video/upload/q_auto/v1565640905/undebate-short-as.mp4',
+ },
+ human: {
+ listening: {
+ round: 2,
+ seat: 'nextUp',
+ },
+ },
+ },
+ closing: {
+ thanks: 'Thank You.',
+ iframe: {
+ src: 'https://docs.google.com/forms/d/e/1FAIpQLSeh7kAVWpyjnSYmHhjfpjfalgznfDA_AF2xmrFB8ZzQj75Vyw/viewform?embedded=true',
+ width: '640',
+ height: '1511',
+ },
+ },
+ },
+ parentId: '5f7ca481e7179a6ea5213f43',
+}
+
+export const CcWrapper = Template.bind({})
+CcWrapper.args = {
+ iota: merge({}, ccWrapperIota, otherProps),
+}
+
+export const CcWrapperWithListeningFirst = Template.bind({})
+CcWrapperWithListeningFirst.args = {
+ iota: merge({}, iota, { webComponent: { webComponent: 'CcWrapper' } }),
+}
+
+/* Todo fix Component so they do not error if empty props
+export const NothingHere = Template.bind({})
+NothingHere.args = {
+ iota: {
+ webComponent: {
+ webComponent: 'Undebate',
+ },
+ },
+}
+*/
diff --git a/webpack-prod.config.js b/webpack-prod.config.js
index 9968ea38..beb4b098 100644
--- a/webpack-prod.config.js
+++ b/webpack-prod.config.js
@@ -1,13 +1,14 @@
const path = require('path')
const webpack = require('webpack')
+const production = process.env.NODE_ENV === 'production'
module.exports = {
- mode: 'production',
+ mode: 'production', // meaning no hot loading of changes
context: path.resolve(__dirname, 'dist'), // dist because app failed when building this as a node_module in another component
entry: {
main: './client/main-app.js',
},
- devtool: 'inline-cheap-source-map',
+ devtool: production ? 'inline-cheap-source-map' : 'source-map',
output: {
path: path.join(__dirname, 'assets/webpack'),
filename: '[name].js',