diff options
author | Stone, Avi (as206k) <as206k@att.com> | 2018-04-12 16:36:39 +0300 |
---|---|---|
committer | Stone, Avi (as206k) <as206k@att.com> | 2018-04-12 16:36:39 +0300 |
commit | 9b2ceb347a3371819fcad6bbe2268203afecaf4e (patch) | |
tree | fbb5ea2c147d71dfeeec0882b215423e7b7206b4 /public | |
parent | 72dc8e3298d3e4315cdd9717b778671cb0b625bc (diff) |
DCAE-D fe initial commit
DCAE-D fe initial commit
Change-Id: Ica8ccb7c7ef769c969664d1e168d205eb9fc67f2
Issue-ID: SDC-1218
Signed-off-by: Stone, Avi (as206k) <as206k@att.com>
Diffstat (limited to 'public')
173 files changed, 35471 insertions, 0 deletions
diff --git a/public/.angular-cli.json b/public/.angular-cli.json new file mode 100644 index 0000000..fa9ff9f --- /dev/null +++ b/public/.angular-cli.json @@ -0,0 +1,68 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "project": { + "name": "dcae-fe" + }, + "apps": [ + { + "root": "src", + "outDir": "dist", + "assets": ["assets", "favicon.ico"], + "index": "index.html", + "main": "main.ts", + "polyfills": "polyfills.ts", + "test": "test.ts", + "tsconfig": "tsconfig.app.json", + "testTsconfig": "tsconfig.spec.json", + "prefix": "app", + "styles": [ + "../node_modules/font-awesome/css/font-awesome.min.css", + "../node_modules/material-design-icons/iconfont/material-icons.css", + "../node_modules/primeng/resources/themes/omega/theme.css", + "../node_modules/primeng/resources/primeng.min.css", + "../node_modules/angular-tree-component/dist/angular-tree-component.css", + "../node_modules/pretty-checkbox/src/pretty-checkbox.scss", + "../node_modules/@ng-select/ng-select/themes/default.theme.css", + "../node_modules/ngx-toastr/toastr.css", + "styles.css" + ], + "scripts": [], + "environmentSource": "environments/environment.ts", + "environments": { + "dev": "environments/environment.ts", + "prod": "environments/environment.prod.ts" + } + } + ], + "e2e": { + "protractor": { + "config": "./protractor.conf.js" + } + }, + "lint": [ + { + "project": "src/tsconfig.app.json", + "exclude": "**/node_modules/**" + }, + { + "project": "src/tsconfig.spec.json", + "exclude": "**/node_modules/**" + }, + { + "project": "e2e/tsconfig.e2e.json", + "exclude": "**/node_modules/**" + } + ], + "test": { + "karma": { + "config": "./karma.conf.js" + } + }, + "defaults": { + "styleExt": "scss", + "component": {}, + "serve": { + "port": 4300 + } + } +} diff --git a/public/.editorconfig b/public/.editorconfig new file mode 100644 index 0000000..6e87a00 --- /dev/null +++ b/public/.editorconfig @@ -0,0 +1,13 @@ +# Editor configuration, see http://editorconfig.org +root = true + +[*] +charset = utf-8 +indent_style = space +indent_size = 2 +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +max_line_length = off +trim_trailing_whitespace = false diff --git a/public/.gitignore b/public/.gitignore new file mode 100644 index 0000000..f9482fc --- /dev/null +++ b/public/.gitignore @@ -0,0 +1,55 @@ +# See http://help.github.com/ignore-files/ for more about ignoring files. + +# compiled output +dist +dist-server +tmp +out-tsc + +# dependencies +node_modules + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json + +# misc +.sass-cache +connect.lock +coverage +libpeerconnection.log +/publicnpm-debug.log +/publictestem.log +typings + +# e2e +e2e/*.js +e2e/*.map + +# System Files +.DS_Store +Thumbs.db + +#java +.project +.idea/ +/target/ +.settings* +.classpath +/*.war +/src/main/webapp/* +!/src/main/webapp/META-INF/* +!/src/main/webapp/web.xml +!/src/main/webapp/jetty-web.xml diff --git a/public/.prettierrc b/public/.prettierrc new file mode 100644 index 0000000..1d2a048 --- /dev/null +++ b/public/.prettierrc @@ -0,0 +1,8 @@ +{ + "printWidth": 80, + "singleQuote": true, + "useTabs": false, + "tabWidth": 2, + "semi": true, + "bracketSpacing": true +} diff --git a/public/.storybook/addons.js b/public/.storybook/addons.js new file mode 100644 index 0000000..820f9d6 --- /dev/null +++ b/public/.storybook/addons.js @@ -0,0 +1,3 @@ +import '@storybook/addon-actions/register'; +import '@storybook/addon-options/register'; +import '@storybook/addon-knobs/register'; diff --git a/public/.storybook/config.js b/public/.storybook/config.js new file mode 100644 index 0000000..672bfeb --- /dev/null +++ b/public/.storybook/config.js @@ -0,0 +1,12 @@ +import { configure, addDecorator } from '@storybook/angular'; +import { withKnobs } from '@storybook/addon-knobs/angular'; + +addDecorator(withKnobs); + +const req = require.context('../src/stories', true, /.stories.ts$/); + +function loadStories() { + req.keys().forEach(filename => req(filename)); +} + +configure(loadStories, module); diff --git a/public/.storybook/preview-head.html b/public/.storybook/preview-head.html new file mode 100644 index 0000000..efe6c69 --- /dev/null +++ b/public/.storybook/preview-head.html @@ -0,0 +1,20 @@ +<style> + html, + body { + margin: 0; + height: 100%; + } + + storybook-dynamic-app-root { + display: flex; + flex-direction: column; + justify-content: center; + height: 100%; + padding: 25px; + } + + storybook-dynamic-app-root>ng-component { + margin: 0 auto; + } + +</style> diff --git a/public/.storybook/tsconfig.json b/public/.storybook/tsconfig.json new file mode 100644 index 0000000..b36918c --- /dev/null +++ b/public/.storybook/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "noImplicitAny": false, + "types": ["node"] + }, + "exclude": ["./node_modules/*", "../cypress/**/*.ts", "../src/**/*.spec.ts"], + "include": ["../src/stories/**/*.ts"] + // , "../node_modules/@storybook/**/*.ts" +} diff --git a/public/README.md b/public/README.md new file mode 100644 index 0000000..84ccbdc --- /dev/null +++ b/public/README.md @@ -0,0 +1,30 @@ +# DcaeFe + +Example of url: +http://localhost:4300/home?userId=123&contextType=srv&vfcmtUuid=456&lifecycleState=checkout&isOwner=true + +This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.6.4. + +## Development server + +Run `ng serve` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files. + +## Code scaffolding + +Run `ng generate component component-name` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module`. + +## Build + +Run `ng build` to build the project. The build artifacts will be stored in the `dist/` directory. Use the `-prod` flag for a production build. + +## Running unit tests + +Run `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io). + +## Running end-to-end tests + +Run `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/). + +## Further help + +To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md). diff --git a/public/cypress.json b/public/cypress.json new file mode 100644 index 0000000..5a2036d --- /dev/null +++ b/public/cypress.json @@ -0,0 +1,9 @@ +{ + "chromeWebSecurity": false, + "requestTimeout": 60000, + "responseTimeout": 100000, + "baseUrl": "http://localhost:4300/#/", + "env": { + "backendUrl": "http://localhost:8446" + } +} diff --git a/public/cypress/fixtures/TranslateSimpleCopy.json b/public/cypress/fixtures/TranslateSimpleCopy.json new file mode 100644 index 0000000..1099de7 --- /dev/null +++ b/public/cypress/fixtures/TranslateSimpleCopy.json @@ -0,0 +1,26 @@ +{ + "processing": [ + { + "phase": "snmp_map", + "processors": [ + { + "array": "varbinds", + "datacolumn": "varbind_value", + "keycolumn": "varbind_oid", + "class": "SnmpConvertor" + }, + { "phase": "sto2", "class": "RunPhase" } + ] + }, + { + "phase": "sto2", + "processors": [ + { "updates": { "event.commonEventHeader.domain": "a" }, "class": "Set" } + ] + }, + { + "phase": "sto2", + "processors": [{ "phase": "map_publish", "class": "RunPhase" }] + } + ] +} diff --git a/public/cypress/fixtures/createMcRes.json b/public/cypress/fixtures/createMcRes.json new file mode 100644 index 0000000..ada82bc --- /dev/null +++ b/public/cypress/fixtures/createMcRes.json @@ -0,0 +1,972 @@ +{ + "vfcmt":{ + "uuid": "6d436c07-8006-4335-8c84-d65b4740f8d6" + }, + "cdump": { + "cid": "47908e78-9893-4f18-b767-ea7131dd8de7", + "version": 0, + "nodes": [ + { + "name": "map", + "description": + "/sdc/v1/catalog/resources/e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/artifacts/6134d7c8-f9af-4562-bf8d-e60039ec58bb", + "id": "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b", + "nid": "n.1517823219961.0", + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "properties": [ + { + "assignment": { "value": "Map_input" }, + "name": "format", + "type": "string" + }, + { + "assignment": { "value": "IGNORE" }, + "name": "route", + "type": "string" + }, + { + "assignment": { "value": "1.0.0" }, + "name": "version", + "type": "string" + } + ] + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "node_filter": { + "capabilities": [ + { + "dcae.capabilities.stream.subscribe": { + "properties": [ + { "format": [{ "equal": "VES_specification" }] }, + { "version": [{ "equal": "5.28.4" }] } + ] + } + } + ] + }, + "name": "stream_publish_0", + "relationship": { "type": "dcae.relationships.rework_connected_to" } + }, + { + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": "template.yaml/dcae.capabilities.cdapHost" + }, + "name": "host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "properties": [ + { + "assignment": { + "value": { + "get_input": "mappingType" + } + }, + "name": "Type1", + "description": + "CSV to VES mapping, from the file to generate multiple events or single event", + "type": "string", + "constraints": [ + { + "valid_values": ["single", "multiple"] + } + ] + }, + { + "assignment": { + "value": "multiple" + }, + "name": "mappingType", + "description": + "CSV to VES mapping, from the file to generate multiple events or single event", + "type": "string", + "constraints": [ + { + "valid_values": ["single", "multiple"] + } + ] + }, + { + "assignment": { + "value": + "com.att.gfp.dcae.eventProcessor.Catalog,com.att.ecomp.dcae.eventproc.cdap.common.processors.Catalog" + }, + "name": "defaultCatalogs", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "defaultObjects" } }, + "name": "defaultObjects", + "type": "string" + }, + { + "assignment": { "value": "Map Microservice" }, + "name": "description", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "dmaapConsumerGrp" } }, + "name": "dmaapConsumerGrp", + "type": "string" + }, + { + "assignment": { "value": "" }, + "name": "eventFactory", + "type": "string" + }, + { + "assignment": { + "value": + "{\"processing\":[{\"phase\":\"snmp_map\",\"filter\":{\"class\":\"StartsWith\",\"string\":\"${notify OID}\",\"value\":\".1.3.6.1.4.1.26878.200.2\"},\"processors\":[{\"class\":\"SnmpConvertor\",\"array\":\"varbinds\",\"keycolumn\":\"varbind_oid\",\"datacolumn\":\"varbind_value\"},{\"class\":\"RunPhase\",\"phase\":\"vPCRF_MOGParsingPhase\"}]},{\"phase\":\"vPCRF_MOGParsingPhase\",\"processors\":[{\"class\":\"MapAlarmValues\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"toField\":\"eventGroup\",\"map\":{\"LinkDown\":\"LinkUp_Down\",\"LinkUp\":\"LinkUp_Down\",\"HIGH CPU USAGE Alert\":\"HighCpuUsageAlert-Clear\",\"HIGH CPU USAGE Clear\":\"HighCpuUsageAlert-Clear\",\"ProcessDown\":\"ProcessUp-Down\",\"ProcessUp\":\"ProcessUp-Down\",\"HighLoadAlert\":\"HighLoadAlert-Clear\",\"HighLoadClear\":\"HighLoadAlert-Clear\",\"DiskFullAlert\":\"DiskFullAlert-Clear\",\"DiskFullClear\":\"DiskFullAlert-Clear\",\"LowSwapAlert\":\"LowMemoryAlert-Clear\",\"LowSwapClear\":\"LowMemoryAlert-Clear\",\"LowMemoryAlert\":\"LowMemoryAlert-Clear\",\"LowMemoryClear\":\"LowMemoryAlert-Clear\",\"ApplicationStartError\":\"ApplicationStartError\",\"LicenseUsageThresholdExceeded \":\"LicenseUsageThresholdExceeded \",\"LicensedSessionCreation\":\"LicensedSessionCreation\",\"InvalidLicense\":\"InvalidLicense\",\"PoliciesNotConfigured\":\"PoliciesNotConfigured\",\"DiameterAllPeersDown\":\"DiameterAllPeersUp-Down\",\"DiameterAllPeersUp\":\"DiameterAllPeersUp-Down\",\"HA Failover\":\"HAFailover\",\"GR Failover\":\"GRFailover\",\"All DB Member of replica set Down\":\"AllDBMemberReplicaSetUp-Down\",\"All DB Member of replica set Up\":\"AllDBMemberReplicaSetUp-Down\",\"No Primary DB Member Found\":\"PrimaryDBMemberFound-NotFound\",\"Primary DB Member Found\":\"PrimaryDBMemberFound-NotFound\",\"Secondary DB Member Down\":\"SecondaryDBMemberUp-Down\",\"Secondary DB Member Up\":\"SecondaryDBMemberUp-Down\",\"Arbiter Down\":\"ArbiterUp-Down\",\"Arbiter Up\":\"ArbiterUp-Down\",\"DB resync is needed\":\"DBResyncNeeded-NotNeeded\",\"DB resync is not needed\":\"DBResyncNeeded-NotNeeded\",\"Config Server Down\":\"ConfigServerUp-Down\",\"Config Server Up\":\"ConfigServerUp-Down\",\"VM Down\":\"VMUp-Down\",\"VM Up\":\"VMUp-Down\",\"QNS Process Down\":\"QNSProcessUp-Down\",\"QNS Process Up\":\"QNSProcessUp-Down\",\"VirtualInterface Down\":\"VirtualInterfaceUp-Down\",\"VirtualInterface Up\":\"VirtualInterfaceUp-Down\",\"MemcachedConnectError\":\"MemcachedConnectError\",\"PolicyConfiguration\":\"PolicyConfiguration\",\"DiameterPeerDown\":\"DiameterPeerDown\",\"DeveloperMode\":\"DeveloperMode\",\"ZeroMQConnectionError\":\"ZeroMQConnectionError\",\"Admin User Logged In\":\"AdminUserLoggedIn\"}},{\"class\":\"Set\",\"updates\":{\"event.commonEventHeader.domain\":\"fault\",\"event.commonEventHeader.version\":3,\"event.faultFields.faultFieldsVersion\":2.0,\"event.faultFields.vfStatus\":\"Active\",\"event.commonEventHeader.priority\":\"Normal\",\"event.commonEventHeader.sequence\":0,\"event.faultFields.alarmCondition\":\"${_1_3_6_1_4_1_26878_100_1_1_9}\",\"event.faultFields.alarmAdditionalInformation[0].name\":\"EventGroup\",\"event.faultFields.alarmAdditionalInformation[0].value\":\"${eventGroup}\",\"event.faultFields.alarmAdditionalInformation[1].name\":\"OID1\",\"event.faultFields.alarmAdditionalInformation[1].value\":\"${varbinds[0].varbind_value}\"}},{\"class\":\"Set\",\"updates\":{\"event.commonEventHeader.startEpochMicrosec\":\"%{now.ms}\"}},{\"class\":\"MapAlarmValues\",\"field\":\"_1_3_6_1_4_1_26878_100_1_4\",\"default\":\"WARNING\",\"toField\":\"event.faultFields.eventSeverity\",\"map\":{\"0\":\"CRITICAL\",\"1\":\"CRITICAL\",\"2\":\"MAJOR\",\"3\":\"MAJOR\",\"4\":\"MINOR\",\"5\":\"WARNING\",\"6\":\"WARNING\",\"7\":\"WARNING\",\"8\":\"WARNING\",\"9\":\"NORMAL\"}},{\"class\":\"MapAlarmValues\",\"field\":\"_1_3_6_1_4_1_26878_100_1_3\",\"default\":\"\",\"toField\":\"event.faultFields.specificProblem\",\"map\":{\"0\":\"Hardware\",\"1\":\"Networking\",\"2\":\"Virtualization\",\"3\":\"Operating System\",\"4\":\"Application\",\"5\":\"Process\"}},{\"class\":\"Set\",\"updates\":{\"event.commonEventHeader.lastEpochMicrosec\":\"${event.commonEventHeader.startEpochMicrosec}\"}},{\"class\":\"ConvertFieldTypes\",\"updates\":{\"event.commonEventHeader.startEpochMicrosec\":\"long\",\"event.commonEventHeader.lastEpochMicrosec\":\"long\"}}]},{\"phase\":\"vPCRF_MOGParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"DiskFullAlert\",\"LowSwapAlert\",\"LowMemoryAlert\"]},\"processors\":[{\"class\":\"Set\",\"updates\":{\"event.faultFields.eventSeverity\":\"MAJOR\"}}]},{\"phase\":\"vPCRF_MOGParsingPhase\",\"filter\":{\"class\":\"Contains\",\"string\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"value\":\"mog\"},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"event.commonEventHeader.sourceName\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\"([^:]*):.*\"},{\"class\":\"Set\",\"updates\":{\"event.faultFields.eventSourceType\":\"vMOG\",\"event.commonEventHeader.functionalRole\":\"vMoG\",\"event.commonEventHeader.eventType\":\"vMoG_Alarms\",\"event.commonEventHeader.eventId\":\"${event.commonEventHeader.sourceName}_${eventGroup}\",\"event.commonEventHeader.eventName\":\"NA\"}}]},{\"phase\":\"vPCRF_MOGParsingPhase\",\"filter\":{\"class\":\"Not\",\"filter\":{\"class\":\"Contains\",\"string\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"value\":\"mog\"}},\"processors\":[{\"class\":\"Set\",\"updates\":{\"event.commonEventHeader.sourceName\":\"${agent address}\",\"event.faultFields.eventSourceType\":\"vPCRF\",\"event.commonEventHeader.functionalRole\":\"vPCRF\",\"event.commonEventHeader.eventType\":\"PCRF_Alarms\",\"event.commonEventHeader.eventId\":\"${agent address}_${eventGroup}\",\"event.commonEventHeader.reportingEntityName\":\"${event.commonEventHeader.sourceName}\"}}]},{\"phase\":\"vPCRF_MOGParsingPhase\",\"filter\":{\"class\":\"Contains\",\"string\":\"${_1_3_6_1_4_1_26878_100_1_1_7}\",\"value\":\"mogx\"},\"processors\":[{\"class\":\"Set\",\"updates\":{\"event.faultFields.alarmCondition\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"event.faultFields.specificProblem\":\"${_1_3_6_1_4_1_26878_100_1_1_9}\",\"event.commonEventHeader.reportingEntityName\":\"${event.commonEventHeader.sourceName}\"}},{\"class\":\"RunPhase\",\"phase\":\"vPCRF_MOGX_ParsingPhase\"},{\"class\":\"Set\",\"updates\":{\"event.commonEventHeader.eventId\":\"${event.commonEventHeader.sourceName}_${eventGroup}_${eventKey}\"}}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"LinkDown\",\"LinkUp\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".* (.*)\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"ProcessDown\",\"ProcessUp\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".*:(.*) process.*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"DiskFullAlert\",\"DiskFullClear\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".*:(.*):.*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"QNS Process Down\",\"QNS Process Up\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".*:(.*) server on .*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"DiameterPeerDown\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".* (.*) [R/r]ealm.*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"DiameterAllPeersDown\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".*Realm: (.*):[^:]*peers.*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"VirtualInterface Down\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".*onnect (.*). Not reachable\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"VirtualInterface Up\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".*: (.*) is up\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"GR Failover\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".*: (Geo Failover done from .*) of .*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"Arbiter Down\",\"Arbiter Up\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".* Arbiter (.*) is .*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"All DB Member of replica set Down\",\"All DB Member of replica set Up\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".* All DB members of replica set (.*) are .*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"No Primary DB Member Found\",\"Primary DB Member Found\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".* Replica-set (.*)\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"DB Member Down\",\"DB Member Up\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".* (DB.Member .*) of SET .*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"Secondary DB Member Down\",\"Secondary DB Member Up\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".*Secondary (DB.*) is.*\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"DB Resync is needed\",\"DB Resync is not needed\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".* member (.*:[0-9]+).*$\"}]},{\"phase\":\"vPCRF_MOGX_ParsingPhase\",\"filter\":{\"class\":\"OneOf\",\"field\":\"_1_3_6_1_4_1_26878_100_1_1_9\",\"values\":[\"ZeroMQConnectionError\"]},\"processors\":[{\"class\":\"ExtractText\",\"field\":\"eventKey\",\"value\":\"${_1_3_6_1_4_1_26878_100_1_1_10}\",\"regex\":\".* for (tcp.*)\"}]},{\"phase\":\"vPCRF_MOGParsingPhase\",\"processors\":[{\"class\":\"Clear\",\"fields\":[\"community len\",\"cambria.partition\",\"notify OID\",\"notify OID len\",\"epoch_serno\",\"protocol version\",\"agent name\",\"trap category\",\"community\",\"time received\",\"agent address\",\"varbinds\"]},{\"class\":\"ClearNoneStandardFields\",\"reservedFields\":[\"event\",\"parserType\"]},{\"class\":\"LogEvent\",\"title\":\"UCSNMPEvent-vPCRF_MOG_Parser_Output\",\"logName\":\"com.att.gfp.dcae.eventProcessor.output\",\"logLevel\":\"DEBUG\"},{\"class\":\"LogText\",\"logLevel\":\"INFO\",\"logText\":\"Finished_vPCRF_MOGParsingPhase Mapping Phase\"},{\"class\":\"RunPhase\",\"phase\":\"map_publish\"}]}]}" + }, + "name": "json", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "monitorThreads" } }, + "name": "monitorThreads", + "type": "string" + }, + { + "assignment": { "value": "mapMS" }, + "name": "name", + "type": "string" + }, + { + "assignment": { "value": "snmp_map" }, + "name": "phases.snmp_map.phaseName", + "type": "string" + }, + { + "assignment": { "value": ".*snmp.*" }, + "name": "phases.snmp_map.streamPattern", + "type": "string" + }, + { + "assignment": { "value": "syslog_map" }, + "name": "phases.syslog_map.phaseName", + "type": "string" + }, + { + "assignment": { "value": ".*syslog.*" }, + "name": "phases.syslog_map.streamPattern", + "type": "string" + }, + { + "assignment": { + "value": + "{\"phase\":\"map_publish\",\"processors\":[{\"class\":\"EventProcessorMetric\",\"metric\":\"out.events\"},{\"class\":\"SendEvent\",\"channel\":\"DCAE-MAP-EVENT-OUT\"}]}" + }, + "name": "postConfig", + "type": "string" + }, + { + "assignment": { "value": "vnfTypes.*" }, + "name": "ruleKeyPattern", + "type": "string" + }, + { + "assignment": { + "value": + "[{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"MOD\",\"INT\":\"INT\",\"HSEV\":\"header-SEV \",\"SEVDES\":\"Syslog-Severity\"},\"filter\":{\"${Priority}\":\"$Priority\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"0\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"1\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"0\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"2\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"0\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"3\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"0\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"4\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"0\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"5\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"0\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"6\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"0\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"7\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"1\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"8\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"1\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"9\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"1\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"10\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"1\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"11\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"1\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"12\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"1\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"13\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"1\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"14\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"1\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"15\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"2\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"16\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"2\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"17\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"2\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"18\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"2\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"19\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"2\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"20\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"2\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"21\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"2\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"22\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"2\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"23\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"3\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"24\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"3\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"25\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"3\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"26\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"3\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"27\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"3\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"28\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"3\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"29\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"3\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"30\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"3\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"31\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"4\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"32\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"4\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"33\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"4\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"34\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"4\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"35\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"4\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"36\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"4\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"37\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"4\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"38\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"4\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"39\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"5\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"40\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"5\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"41\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"5\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"42\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"5\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"43\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"5\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"44\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"5\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"45\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"5\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"46\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"5\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"47\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"6\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"48\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"6\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"49\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"6\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"50\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"6\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"51\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"6\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"52\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"6\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"53\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"6\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"54\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"6\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"55\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"7\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"56\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"7\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"57\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"7\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"58\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"7\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"59\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"7\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"60\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"7\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"61\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"7\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"62\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"7\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"63\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"8\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"64\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"8\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"65\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"8\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"66\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"8\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"67\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"8\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"68\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"8\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"69\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"8\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"70\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"8\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"71\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"9\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"72\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"9\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"73\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"9\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"74\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"9\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"75\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"9\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"76\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"9\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"77\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"9\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"78\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"9\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"79\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"10\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"80\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"10\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"81\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"10\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"82\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"10\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"83\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"10\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"84\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"10\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"85\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"10\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"86\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"10\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"87\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"11\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"88\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"11\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"89\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"11\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"90\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"11\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"91\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"11\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"92\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"11\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"93\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"11\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"94\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"11\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"95\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"12\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"96\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"12\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"97\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"12\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"98\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"12\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"99\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"12\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"100\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"12\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"101\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"12\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"102\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"12\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"103\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"13\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"104\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"13\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"105\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"13\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"106\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"13\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"107\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"13\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"108\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"13\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"109\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"13\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"110\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"13\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"111\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"14\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"112\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"14\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"113\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"14\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"114\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"14\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"115\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"14\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"116\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"14\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"117\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"14\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"118\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"14\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"119\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"15\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"120\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"15\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"121\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"15\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"122\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"15\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"123\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"15\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"124\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"15\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"125\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"15\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"126\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"15\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"127\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"16\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"128\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"16\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"129\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"16\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"130\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"16\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"131\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"16\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"132\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"16\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"133\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"16\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"134\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"16\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"135\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"17\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"136\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"17\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"137\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"17\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"138\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"17\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"139\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"17\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"140\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"17\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"141\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"17\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"142\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"17\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"143\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"18\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"144\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"18\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"145\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"18\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"146\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"18\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"147\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"18\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"148\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"18\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"149\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"18\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"150\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"18\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"151\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"19\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"152\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"19\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"153\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"19\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"154\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"19\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"155\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"19\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"156\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"19\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"157\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"19\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"158\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"19\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"159\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"20\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"160\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"20\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"161\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"20\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"162\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"20\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"163\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"20\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"164\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"20\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"165\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"20\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"166\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"20\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"167\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"21\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"168\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"21\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"169\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"21\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"170\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"21\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"171\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"21\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"172\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"21\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"173\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"21\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"174\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"21\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"175\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"22\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"176\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"22\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"177\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"22\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"178\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"22\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"179\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"22\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"180\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"22\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"181\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"22\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"182\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"22\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"183\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"23\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"184\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"23\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"185\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"23\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"186\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"23\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"187\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"23\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"188\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"23\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"189\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"23\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"190\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"23\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"191\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"0\",\"INT\":\"24\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Emergency: system is unusable\"},\"filter\":{\"${Priority}\":\"192\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"1\",\"INT\":\"24\",\"HSEV\":\"CRITICAL\",\"SEVDES\":\"Alert: action must be taken immediately\"},\"filter\":{\"${Priority}\":\"193\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"2\",\"INT\":\"24\",\"HSEV\":\"MAJOR\",\"SEVDES\":\"Critical: critical conditions\"},\"filter\":{\"${Priority}\":\"194\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"3\",\"INT\":\"24\",\"HSEV\":\"MINOR\",\"SEVDES\":\"Error: error conditions\"},\"filter\":{\"${Priority}\":\"195\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"4\",\"INT\":\"24\",\"HSEV\":\"WARNING\",\"SEVDES\":\"Warning: warning conditions\"},\"filter\":{\"${Priority}\":\"196\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"5\",\"INT\":\"24\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Notice: normal but significant condition\"},\"filter\":{\"${Priority}\":\"197\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"6\",\"INT\":\"24\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Informational: informational messages\"},\"filter\":{\"${Priority}\":\"198\"}},{\"key\":\"syslogLookup\",\"value\":{\"MOD\":\"7\",\"INT\":\"23\",\"HSEV\":\"NORMAL\",\"SEVDES\":\"Debug: debug-level messages\"},\"filter\":{\"${Priority}\":\"199\"}}]" + }, + "name": "settings", + "type": "string" + }, + { + "assignment": { "value": "False" }, + "name": "startNoChannels", + "type": "string" + }, + { + "default": "cdap_broker", + "assignment": { + "value": { "get_input": "connected_broker_dns_name" } + }, + "name": "connected_broker_dns_name", + "type": "string", + "required": true + }, + { "name": "jar_url", "type": "string", "required": true }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location_id", + "type": "string", + "required": true + }, + { + "name": "service_component_type", + "type": "string", + "required": true + } + ], + "typeinfo": { + "itemId": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/tosca.dcae.nodes.cdapApp.Map", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/dcae.capabilities.stream.subscribe" + }, + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/dcae.capabilities.stream.subscribe" + }, + "name": "stream_publish_0", + "id": "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/stream_publish_0", + "relationship": { + "type": "dcae.relationships.rework_connected_to" + } + }, + { + "node": { + "name": "dcae.capabilities.cdapHost", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/dcae.capabilities.cdapHost" + }, + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/dcae.capabilities.cdapHost" + }, + "name": "host", + "id": "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/dcae.capabilities.stream.subscribe" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "http://135.91.225.81:8080", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.cdapApp", + "id": + "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/tosca.dcae.nodes.cdapApp" + }, + { + "name": "tosca.dcae.nodes.Root", + "id": "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "e45ec9d7-01df-4cb1-896f-aff2a6ca5a8b/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.cdapApp.Map", + "id": 0 + }, + "type": { "name": "tosca.dcae.nodes.cdapApp.Map" } + }, + { + "name": "supplement", + "description": + "/sdc/v1/catalog/resources/30d0b4f4-efc5-424a-9d26-6d7843a0971d/artifacts/2d68c4e3-a4ab-46b3-ae3b-2a593fa97ded", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d", + "nid": "n.1517823224030.1", + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "properties": [ + { + "assignment": { "value": "VES_specification" }, + "name": "format", + "type": "string" + }, + { + "assignment": { "value": "IGNORE" }, + "name": "route", + "type": "string" + }, + { + "assignment": { "value": "5.28.4" }, + "name": "version", + "type": "string" + } + ] + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "node_filter": { + "capabilities": [ + { + "dcae.capabilities.stream.subscribe": { + "properties": [ + { "format": [{ "equal": "VES_specification" }] }, + { "version": [{ "equal": "5.28.4" }] } + ] + } + } + ] + }, + "name": "stream_publish_0", + "relationship": { "type": "dcae.relationships.rework_connected_to" } + }, + { + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": "template.yaml/dcae.capabilities.cdapHost" + }, + "name": "host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "properties": [ + { + "assignment": { + "value": + "com.att.gfp.dcae.eventProcessor.Catalog,com.att.ecomp.dcae.eventproc.cdap.common.processors.Catalog" + }, + "name": "defaultCatalogs", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "defaultObjects" } }, + "name": "defaultObjects", + "type": "string" + }, + { + "assignment": { "value": "Supplement Microservice" }, + "name": "description", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "dmaapConsumerGrp" } }, + "name": "dmaapConsumerGrp", + "type": "string" + }, + { + "assignment": { "value": "" }, + "name": "eventFactory", + "type": "string" + }, + { + "assignment": { + "value": + "{\"processing\":[{\"phase\":\"supplement\",\"filter\":{\"class\":\"OneOf\",\"field\":\"event.commonEventHeader.eventType\",\"values\":[\"vPCRF_Alarms\",\"vMoG_Alarms\",\"applicationVnf\",\"GuestOS_Alarms\",\"Control\"]},\"processors\":[{\"class\":\"DateFormatter\",\"value\":\"${event.commonEventHeader.startEpochMicrosec}\",\"fromFormat\":\"#ms\",\"fromTz\":\"GMT\",\"toField\":\"event.commonEventHeader.internalHeaderFields.firstDatetime\",\"toFormat\":\"EEE,ddMMMyyyyHH:mm:ssZ\",\"toTz\":\"GMT\"},{\"class\":\"DateFormatter\",\"value\":\"${event.commonEventHeader.lastEpochMicrosec}\",\"fromFormat\":\"#ms\",\"fromTz\":\"GMT\",\"toField\":\"event.commonEventHeader.internalHeaderFields.lastDatetime\",\"toFormat\":\"EEE,ddMMMyyyyHH:mm:ssZ\",\"toTz\":\"GMT\"},{\"class\":\"DateFormatter\",\"value\":\"%{now.ms}\",\"fromFormat\":\"#ms\",\"fromTz\":\"GMT\",\"toField\":\"event.commonEventHeader.internalHeaderFields.collectorTimeStamp\",\"toFormat\":\"EEE,ddMMMyyyyHH:mm:ssZ\",\"toTz\":\"GMT\"},{\"class\":\"Set\",\"updates\":{\"event.commonEventHeader.internalHeaderFields.internalHeaderFieldsVersion\":\"9.9\",\"event.commonEventHeader.internalHeaderFields.eventTag\":\"${hp.tag}\"}}]},{\"phase\":\"supplement\",\"processors\":[{\"class\":\"RunPhase\",\"phase\":\"supplement_publish\"}]},{\"phase\":\"ves_supplement\",\"filter\":{\"class\":\"OneOf\",\"field\":\"event.commonEventHeader.eventType\",\"values\":[\"vIRC_Alarms\"]},\"processors\":[{\"class\":\"RunPhase\",\"phase\":\"supplement_publish\"}]}]}" + }, + "name": "json", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "monitorThreads" } }, + "name": "monitorThreads", + "type": "string" + }, + { + "assignment": { "value": "supplementMS" }, + "name": "name", + "type": "string" + }, + { + "assignment": { "value": "supplement" }, + "name": "phases.supplement.phaseName", + "type": "string" + }, + { + "assignment": { "value": ".*supplement-in.*" }, + "name": "phases.supplement.streamPattern", + "type": "string" + }, + { + "assignment": { "value": "ves_supplement" }, + "name": "phases.ves_supplement.phaseName", + "type": "string" + }, + { + "assignment": { "value": ".*sec-fault.*" }, + "name": "phases.ves_supplement.streamPattern", + "type": "string" + }, + { + "assignment": { + "value": + "{\"phase\":\"supplement_publish\",\"processors\":[{\"class\":\"EventProcessorMetric\",\"metric\":\"out.events\"},{\"class\":\"SendEvent\",\"channel\":\"DCAE-SUPPLEMENT-EVENT-OUT\"}]}" + }, + "name": "postConfig", + "type": "string" + }, + { + "assignment": { "value": "vnfTypes.*" }, + "name": "ruleKeyPattern", + "type": "string" + }, + { + "assignment": { "value": "False" }, + "name": "startNoChannels", + "type": "string" + }, + { + "default": "cdap_broker", + "assignment": { + "value": { "get_input": "connected_broker_dns_name" } + }, + "name": "connected_broker_dns_name", + "type": "string", + "required": true + }, + { "name": "jar_url", "type": "string", "required": true }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location_id", + "type": "string", + "required": true + }, + { + "name": "service_component_type", + "type": "string", + "required": true + } + ], + "typeinfo": { + "itemId": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.dcae.nodes.cdapApp.Supplement", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.stream.subscribe" + }, + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.stream.subscribe" + }, + "name": "stream_publish_0", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/stream_publish_0", + "relationship": { + "type": "dcae.relationships.rework_connected_to" + } + }, + { + "node": { + "name": "dcae.capabilities.cdapHost", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.cdapHost" + }, + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.cdapHost" + }, + "name": "host", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.stream.subscribe" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "http://135.91.225.81:8080", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.cdapApp", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.dcae.nodes.cdapApp" + }, + { + "name": "tosca.dcae.nodes.Root", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.cdapApp.Supplement", + "id": 0 + }, + "type": { "name": "tosca.dcae.nodes.cdapApp.Supplement" } + }, + { + "name": "enrich", + "description": + "/sdc/v1/catalog/resources/8743b27b-f01e-4b17-a306-37efd42983d0/artifacts/c96f3ffd-516c-470b-ab7c-ced64fb244f0", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0", + "nid": "n.1517823228454.2", + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "properties": [ + { + "assignment": { "value": "VES_specification" }, + "name": "format", + "type": "string" + }, + { + "assignment": { "value": "IGNORE" }, + "name": "route", + "type": "string" + }, + { + "assignment": { "value": "5.28.4" }, + "name": "version", + "type": "string" + } + ] + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "node_filter": { + "capabilities": [ + { + "dcae.capabilities.stream.subscribe": { + "properties": [ + { "format": [{ "equal": "VES_specification" }] }, + { "version": [{ "equal": "5.28.4" }] } + ] + } + } + ] + }, + "name": "stream_publish_0", + "relationship": { "type": "dcae.relationships.rework_connected_to" } + }, + { + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": "template.yaml/dcae.capabilities.cdapHost" + }, + "name": "host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "properties": [ + { + "assignment": { + "value": + "com.att.ecomp.dcae.eventproc.cdap.common.processors.Catalog,com.att.sa.highlandPark.topoTools.HpTopoDbObjectCatalog,com.att.sa.highlandPark.topoTools.HpTopoDbProcessors,com.att.gfp.dcae.eventProcessor.Catalog" + }, + "name": "defaultCatalogs", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "defaultObjects" } }, + "name": "defaultObjects", + "type": "string" + }, + { + "assignment": { "value": "Enrich Microservice" }, + "name": "description", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "dmaapConsumerGrp" } }, + "name": "dmaapConsumerGrp", + "type": "string" + }, + { + "assignment": { "value": "" }, + "name": "eventFactory", + "type": "string" + }, + { + "assignment": { + "value": + "{\"processing\":[{\"phase\":\"enrich\",\"filter\":{\"class\":\"Assigned\",\"field\":\"event.commonEventHeader.sourceName\",\"emtpyIsAssigned\":false},\"processors\":[{\"class\":\"StringTransform\",\"value\":\"${event.commonEventHeader.sourceName}\",\"toField\":\"searchString\",\"targetCase\":\"lower\"},{\"class\":\"EventProcessorMetric\",\"metric\":\"in.events\"},{\"class\":\"LogText\",\"logLevel\":\"WARN\",\"logText\":\"Alarm_EnrichmentStartingfor${hp.tag}\"},{\"class\":\"TopoSearch\",\"searchField\":\"oid\",\"searchValue\":\"${searchString}\",\"updates\":{\"event.commonEventHeader.sourceName\":\"${ptnii_name}\",\"event.commonEventHeader.sourceId\":\"${vserver_id}\",\"event.commonEventHeader.reportingEntityName\":\"${vnf_name}\",\"event.commonEventHeader.reportingEntityId\":\"${vnf_id}\",\"event.commonEventHeader.internalHeaderFields.equipmentType\":\"${equip_type}\",\"event.commonEventHeader.internalHeaderFields.provStatus\":\"${prov_status}\",\"event.commonEventHeader.internalHeaderFields.inMaint\":\"${in_maint}\",\"event.commonEventHeader.internalHeaderFields.tenantName\":\"${tenant_name}\",\"event.commonEventHeader.internalHeaderFields.eventSourceHostname\":\"${hostname}\",\"isEnriched\":true}},{\"class\":\"Set\",\"updates\":{\"event.preCorrelationAging\":\"${preCorrelationAging}\",\"event.prepublishAging\":\"${prepublishAging}\"}},{\"class\":\"Clear\",\"fields\":[\"searchString\"]},{\"class\":\"RunPhase\",\"phase\":\"enrich_publish\"}]}]}" + }, + "name": "json", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "monitorThreads" } }, + "name": "monitorThreads", + "type": "string" + }, + { + "assignment": { "value": "enrichMS" }, + "name": "name", + "type": "string" + }, + { + "assignment": { "value": "enrich" }, + "name": "phases.enrich.phaseName", + "type": "string" + }, + { + "assignment": { "value": ".*" }, + "name": "phases.enrich.streamPattern", + "type": "string" + }, + { + "assignment": { + "value": + "{\"phase\":\"enrich_publish\",\"processors\":[{\"class\":\"EventProcessorMetric\",\"metric\":\"out.events\"},{\"class\":\"SendEvent\",\"channel\":\"DCAE-ENRICH-EVENT-OUT\"}]}" + }, + "name": "postConfig", + "type": "string" + }, + { + "assignment": { "value": "vnfTypes.*" }, + "name": "ruleKeyPattern", + "type": "string" + }, + { + "assignment": { "value": "False" }, + "name": "startNoChannels", + "type": "string" + }, + { + "default": "cdap_broker", + "assignment": { + "value": { "get_input": "connected_broker_dns_name" } + }, + "name": "connected_broker_dns_name", + "type": "string", + "required": true + }, + { "name": "jar_url", "type": "string", "required": true }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location_id", + "type": "string", + "required": true + }, + { + "name": "service_component_type", + "type": "string", + "required": true + } + ], + "typeinfo": { + "itemId": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.dcae.nodes.cdapApp.Enrich", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.stream.subscribe" + }, + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.stream.subscribe" + }, + "name": "stream_publish_0", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/stream_publish_0", + "relationship": { + "type": "dcae.relationships.rework_connected_to" + } + }, + { + "node": { + "name": "dcae.capabilities.cdapHost", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.cdapHost" + }, + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.cdapHost" + }, + "name": "host", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.stream.subscribe" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "http://135.91.225.81:8080", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.cdapApp", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.dcae.nodes.cdapApp" + }, + { + "name": "tosca.dcae.nodes.Root", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.cdapApp.Enrich", + "id": 0 + }, + "type": { "name": "tosca.dcae.nodes.cdapApp.Enrich" } + } + ], + "relations": [], + "inputs": [], + "outputs": [] + } +} diff --git a/public/cypress/fixtures/doneSaveSimpleCopy.json b/public/cypress/fixtures/doneSaveSimpleCopy.json new file mode 100644 index 0000000..e377e8c --- /dev/null +++ b/public/cypress/fixtures/doneSaveSimpleCopy.json @@ -0,0 +1,21 @@ +{ + "version": "4.1", + "eventType": "syslogFields", + "description": "newRule", + "uid": "f620724b-7170-43e1-8a8b-55e98cabe658", + "phase": "sto2", + "condition": null, + "actions": [ + { + "actionType": "copy", + "from": { + "regex": "", + "state": "closed", + "values": [{ "value": "" }, { "value": "" }], + "value": "a" + }, + "target": "event.commonEventHeader.domain", + "id": "296bcdd0-1d20-11e8-a96d-298fbe0cb0fd" + } + ] +} diff --git a/public/cypress/fixtures/example.json b/public/cypress/fixtures/example.json new file mode 100644 index 0000000..da18d93 --- /dev/null +++ b/public/cypress/fixtures/example.json @@ -0,0 +1,5 @@ +{ + "name": "Using fixtures to represent data", + "email": "hello@cypress.io", + "body": "Fixtures are a great way to mock data for responses to routes" +}
\ No newline at end of file diff --git a/public/cypress/fixtures/getMCMock.json b/public/cypress/fixtures/getMCMock.json new file mode 100644 index 0000000..602d2e0 --- /dev/null +++ b/public/cypress/fixtures/getMCMock.json @@ -0,0 +1,628 @@ +{ + "vfcmt": { + "uuid": "06c7d927-4e2f-47e1-a29d-b6ed229ebc0a", + "name": "vosk007", + "description": "the name is vosk, eran vosk", + "vfiName": "LiavSrv", + "flowType": "SNMP" + }, + "cdump": { + "cid": "47908e78-9893-4f18-b767-ea7131dd8de7", + "version": 0, + "nodes": [ + { + "name": "supplement", + "description": + "/sdc/v1/catalog/resources/30d0b4f4-efc5-424a-9d26-6d7843a0971d/artifacts/2d68c4e3-a4ab-46b3-ae3b-2a593fa97ded", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d", + "nid": "n.1517823224030.1", + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "properties": [ + { + "assignment": { "value": "VES_specification" }, + "name": "format", + "type": "string" + }, + { + "assignment": { "value": "IGNORE" }, + "name": "route", + "type": "string" + }, + { + "assignment": { "value": "5.28.4" }, + "name": "version", + "type": "string" + } + ] + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "node_filter": { + "capabilities": [ + { + "dcae.capabilities.stream.subscribe": { + "properties": [ + { "format": [{ "equal": "VES_specification" }] }, + { "version": [{ "equal": "5.28.4" }] } + ] + } + } + ] + }, + "name": "stream_publish_0", + "relationship": { "type": "dcae.relationships.rework_connected_to" } + }, + { + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": "template.yaml/dcae.capabilities.cdapHost" + }, + "name": "host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "properties": [ + { + "assignment": { + "value": + "com.att.gfp.dcae.eventProcessor.Catalog,com.att.ecomp.dcae.eventproc.cdap.common.processors.Catalog" + }, + "name": "defaultCatalogs", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "defaultObjects" } }, + "name": "defaultObjects", + "type": "string" + }, + { + "assignment": { "value": "Supplement Microservice" }, + "name": "description", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "dmaapConsumerGrp" } }, + "name": "dmaapConsumerGrp", + "type": "string" + }, + { + "assignment": { "value": "" }, + "name": "eventFactory", + "type": "string" + }, + { + "assignment": { + "value": + "{\"processing\":[{\"phase\":\"supplement\",\"filter\":{\"class\":\"OneOf\",\"field\":\"event.commonEventHeader.eventType\",\"values\":[\"vPCRF_Alarms\",\"vMoG_Alarms\",\"applicationVnf\",\"GuestOS_Alarms\",\"Control\"]},\"processors\":[{\"class\":\"DateFormatter\",\"value\":\"${event.commonEventHeader.startEpochMicrosec}\",\"fromFormat\":\"#ms\",\"fromTz\":\"GMT\",\"toField\":\"event.commonEventHeader.internalHeaderFields.firstDatetime\",\"toFormat\":\"EEE,ddMMMyyyyHH:mm:ssZ\",\"toTz\":\"GMT\"},{\"class\":\"DateFormatter\",\"value\":\"${event.commonEventHeader.lastEpochMicrosec}\",\"fromFormat\":\"#ms\",\"fromTz\":\"GMT\",\"toField\":\"event.commonEventHeader.internalHeaderFields.lastDatetime\",\"toFormat\":\"EEE,ddMMMyyyyHH:mm:ssZ\",\"toTz\":\"GMT\"},{\"class\":\"DateFormatter\",\"value\":\"%{now.ms}\",\"fromFormat\":\"#ms\",\"fromTz\":\"GMT\",\"toField\":\"event.commonEventHeader.internalHeaderFields.collectorTimeStamp\",\"toFormat\":\"EEE,ddMMMyyyyHH:mm:ssZ\",\"toTz\":\"GMT\"},{\"class\":\"Set\",\"updates\":{\"event.commonEventHeader.internalHeaderFields.internalHeaderFieldsVersion\":\"9.9\",\"event.commonEventHeader.internalHeaderFields.eventTag\":\"${hp.tag}\"}}]},{\"phase\":\"supplement\",\"processors\":[{\"class\":\"RunPhase\",\"phase\":\"supplement_publish\"}]},{\"phase\":\"ves_supplement\",\"filter\":{\"class\":\"OneOf\",\"field\":\"event.commonEventHeader.eventType\",\"values\":[\"vIRC_Alarms\"]},\"processors\":[{\"class\":\"RunPhase\",\"phase\":\"supplement_publish\"}]}]}" + }, + "name": "json", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "monitorThreads" } }, + "name": "monitorThreads", + "type": "string" + }, + { + "assignment": { "value": "supplementMS" }, + "name": "name", + "type": "string" + }, + { + "assignment": { "value": "supplement" }, + "name": "phases.supplement.phaseName", + "type": "string" + }, + { + "assignment": { "value": ".*supplement-in.*" }, + "name": "phases.supplement.streamPattern", + "type": "string" + }, + { + "assignment": { "value": "ves_supplement" }, + "name": "phases.ves_supplement.phaseName", + "type": "string" + }, + { + "assignment": { "value": ".*sec-fault.*" }, + "name": "phases.ves_supplement.streamPattern", + "type": "string" + }, + { + "assignment": { + "value": + "{\"phase\":\"supplement_publish\",\"processors\":[{\"class\":\"EventProcessorMetric\",\"metric\":\"out.events\"},{\"class\":\"SendEvent\",\"channel\":\"DCAE-SUPPLEMENT-EVENT-OUT\"}]}" + }, + "name": "postConfig", + "type": "string" + }, + { + "assignment": { "value": "vnfTypes.*" }, + "name": "ruleKeyPattern", + "type": "string" + }, + { + "assignment": { "value": "False" }, + "name": "startNoChannels", + "type": "string" + }, + { + "default": "cdap_broker", + "assignment": { + "value": { "get_input": "connected_broker_dns_name" } + }, + "name": "connected_broker_dns_name", + "type": "string", + "required": true + }, + { "name": "jar_url", "type": "string", "required": true }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location_id", + "type": "string", + "required": true + }, + { + "name": "service_component_type", + "type": "string", + "required": true + } + ], + "typeinfo": { + "itemId": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.dcae.nodes.cdapApp.Supplement", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.stream.subscribe" + }, + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.stream.subscribe" + }, + "name": "stream_publish_0", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/stream_publish_0", + "relationship": { + "type": "dcae.relationships.rework_connected_to" + } + }, + { + "node": { + "name": "dcae.capabilities.cdapHost", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.cdapHost" + }, + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.cdapHost" + }, + "name": "host", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/dcae.capabilities.stream.subscribe" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "http://135.91.225.81:8080", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.cdapApp", + "id": + "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.dcae.nodes.cdapApp" + }, + { + "name": "tosca.dcae.nodes.Root", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "30d0b4f4-efc5-424a-9d26-6d7843a0971d/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.cdapApp.Supplement", + "id": 0 + }, + "type": { "name": "tosca.dcae.nodes.cdapApp.Supplement" } + }, + { + "name": "enrich", + "description": + "/sdc/v1/catalog/resources/8743b27b-f01e-4b17-a306-37efd42983d0/artifacts/c96f3ffd-516c-470b-ab7c-ced64fb244f0", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0", + "nid": "n.1517823228454.2", + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "properties": [ + { + "assignment": { "value": "VES_specification" }, + "name": "format", + "type": "string" + }, + { + "assignment": { "value": "IGNORE" }, + "name": "route", + "type": "string" + }, + { + "assignment": { "value": "5.28.4" }, + "name": "version", + "type": "string" + } + ] + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": "template.yaml/dcae.capabilities.stream.subscribe" + }, + "node_filter": { + "capabilities": [ + { + "dcae.capabilities.stream.subscribe": { + "properties": [ + { "format": [{ "equal": "VES_specification" }] }, + { "version": [{ "equal": "5.28.4" }] } + ] + } + } + ] + }, + "name": "stream_publish_0", + "relationship": { "type": "dcae.relationships.rework_connected_to" } + }, + { + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": "template.yaml/dcae.capabilities.cdapHost" + }, + "name": "host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "properties": [ + { + "assignment": { + "value": + "com.att.ecomp.dcae.eventproc.cdap.common.processors.Catalog,com.att.sa.highlandPark.topoTools.HpTopoDbObjectCatalog,com.att.sa.highlandPark.topoTools.HpTopoDbProcessors,com.att.gfp.dcae.eventProcessor.Catalog" + }, + "name": "defaultCatalogs", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "defaultObjects" } }, + "name": "defaultObjects", + "type": "string" + }, + { + "assignment": { "value": "Enrich Microservice" }, + "name": "description", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "dmaapConsumerGrp" } }, + "name": "dmaapConsumerGrp", + "type": "string" + }, + { + "assignment": { "value": "" }, + "name": "eventFactory", + "type": "string" + }, + { + "assignment": { + "value": + "{\"processing\":[{\"phase\":\"enrich\",\"filter\":{\"class\":\"Assigned\",\"field\":\"event.commonEventHeader.sourceName\",\"emtpyIsAssigned\":false},\"processors\":[{\"class\":\"StringTransform\",\"value\":\"${event.commonEventHeader.sourceName}\",\"toField\":\"searchString\",\"targetCase\":\"lower\"},{\"class\":\"EventProcessorMetric\",\"metric\":\"in.events\"},{\"class\":\"LogText\",\"logLevel\":\"WARN\",\"logText\":\"Alarm_EnrichmentStartingfor${hp.tag}\"},{\"class\":\"TopoSearch\",\"searchField\":\"oid\",\"searchValue\":\"${searchString}\",\"updates\":{\"event.commonEventHeader.sourceName\":\"${ptnii_name}\",\"event.commonEventHeader.sourceId\":\"${vserver_id}\",\"event.commonEventHeader.reportingEntityName\":\"${vnf_name}\",\"event.commonEventHeader.reportingEntityId\":\"${vnf_id}\",\"event.commonEventHeader.internalHeaderFields.equipmentType\":\"${equip_type}\",\"event.commonEventHeader.internalHeaderFields.provStatus\":\"${prov_status}\",\"event.commonEventHeader.internalHeaderFields.inMaint\":\"${in_maint}\",\"event.commonEventHeader.internalHeaderFields.tenantName\":\"${tenant_name}\",\"event.commonEventHeader.internalHeaderFields.eventSourceHostname\":\"${hostname}\",\"isEnriched\":true}},{\"class\":\"Set\",\"updates\":{\"event.preCorrelationAging\":\"${preCorrelationAging}\",\"event.prepublishAging\":\"${prepublishAging}\"}},{\"class\":\"Clear\",\"fields\":[\"searchString\"]},{\"class\":\"RunPhase\",\"phase\":\"enrich_publish\"}]}]}" + }, + "name": "json", + "type": "string" + }, + { + "assignment": { "value": { "get_input": "monitorThreads" } }, + "name": "monitorThreads", + "type": "string" + }, + { + "assignment": { "value": "enrichMS" }, + "name": "name", + "type": "string" + }, + { + "assignment": { "value": "enrich" }, + "name": "phases.enrich.phaseName", + "type": "string" + }, + { + "assignment": { "value": ".*" }, + "name": "phases.enrich.streamPattern", + "type": "string" + }, + { + "assignment": { + "value": + "{\"phase\":\"enrich_publish\",\"processors\":[{\"class\":\"EventProcessorMetric\",\"metric\":\"out.events\"},{\"class\":\"SendEvent\",\"channel\":\"DCAE-ENRICH-EVENT-OUT\"}]}" + }, + "name": "postConfig", + "type": "string" + }, + { + "assignment": { "value": "vnfTypes.*" }, + "name": "ruleKeyPattern", + "type": "string" + }, + { + "assignment": { "value": "False" }, + "name": "startNoChannels", + "type": "string" + }, + { + "default": "cdap_broker", + "assignment": { + "value": { "get_input": "connected_broker_dns_name" } + }, + "name": "connected_broker_dns_name", + "type": "string", + "required": true + }, + { "name": "jar_url", "type": "string", "required": true }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location_id", + "type": "string", + "required": true + }, + { + "name": "service_component_type", + "type": "string", + "required": true + } + ], + "typeinfo": { + "itemId": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.dcae.nodes.cdapApp.Enrich", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.stream.subscribe" + }, + "capability": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.stream.subscribe" + }, + "name": "stream_publish_0", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/stream_publish_0", + "relationship": { + "type": "dcae.relationships.rework_connected_to" + } + }, + { + "node": { + "name": "dcae.capabilities.cdapHost", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.cdapHost" + }, + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.cdapHost" + }, + "name": "host", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/dependency", + "relationship": { "type": "tosca.relationships.DependsOn" } + } + ], + "capabilities": [ + { + "name": "stream_subscribe_0", + "type": { + "name": "dcae.capabilities.stream.subscribe", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/dcae.capabilities.stream.subscribe" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "http://135.91.225.81:8080", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.cdapApp", + "id": + "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.dcae.nodes.cdapApp" + }, + { + "name": "tosca.dcae.nodes.Root", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "8743b27b-f01e-4b17-a306-37efd42983d0/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.cdapApp.Enrich", + "id": 0 + }, + "type": { "name": "tosca.dcae.nodes.cdapApp.Enrich" } + } + ], + "relations": [], + "inputs": [], + "outputs": [] + } +} diff --git a/public/cypress/fixtures/igorCreateMcRes.json b/public/cypress/fixtures/igorCreateMcRes.json new file mode 100644 index 0000000..4bca081 --- /dev/null +++ b/public/cypress/fixtures/igorCreateMcRes.json @@ -0,0 +1,1960 @@ +{ + "uuid": "6d436c07-8006-4335-8c84-d65b4740f8d6", + "cdump": { + "cid": "95222b23-df17-454d-84b0-d4667357b380", + "flowType": "SNMP", + "version": 0, + "nodes": [ + { + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.dockerHost", + "id": "template.yaml/dcae.capabilities.dockerHost" + }, + "name": "host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "name": "fm_poller", + "description": + "/sdc/v1/catalog/resources/c8db6f9b-6173-4d7d-bd25-c20bfc154daa/artifacts/66b05681-a407-4e46-9239-86f245c68b81", + "type": { + "name": "tosca.dcae.nodes.dockerApp.fm_poller" + }, + "properties": [ + { + "assignment": { + "value": "ciscoRouter" + }, + "name": "DeviceCategory", + "type": "string", + "constraints": [ + { + "valid_values": [ + "ciscoSwitch", + "ciscoRouter", + "juniperSwitch", + "juniperRouter" + ] + } + ], + "value": "ciscoRouter" + }, + { + "assignment": { + "value": "/opt/app/discovery/seed" + }, + "name": "DeviceToWalkJson", + "type": "string", + "value": "/opt/app/discovery/seed" + }, + { + "assignment": { + "value": { + "get_input": "DisoveryInterval" + } + }, + "name": "DisoveryInterval", + "type": "string", + "value": { + "get_input": "DisoveryInterval" + } + }, + { + "assignment": { + "value": { + "get_input": "FlatironHost" + } + }, + "name": "FlatironHost", + "type": "string", + "value": { + "get_input": "FlatironHost" + } + }, + { + "assignment": { + "value": { + "get_input": "FlatironScope" + } + }, + "name": "FlatironScope", + "type": "string", + "value": { + "get_input": "FlatironScope" + } + }, + { + "assignment": { + "value": "/opt/app/discovery/curloutput" + }, + "name": "SeedFilePath", + "type": "string", + "value": "/opt/app/discovery/curloutput" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/app_config.json" + }, + "name": "app_config_file", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/app_config.json" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/ciscorouteroids" + }, + "name": "ciscorouter", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/ciscorouteroids" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/ciscoswitchoids" + }, + "name": "ciscoswitch", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/ciscoswitchoids" + }, + { + "assignment": { + "value": { + "get_input": "clientUri" + } + }, + "name": "clientUri", + "type": "string", + "value": { + "get_input": "clientUri" + } + }, + { + "assignment": { + "value": { + "get_input": "dcae_service_location" + } + }, + "name": "dcae_service_location", + "type": "string", + "value": { + "get_input": "dcae_service_location" + } + }, + { + "assignment": { + "value": "rv1-dis / rv1-mib" + }, + "name": "dcae_target_type", + "type": "string", + "constraints": [ + { + "valid_values": [ + "rv1-dis / rv1-mib", + "rv2- dis / rv2-mib", + "rv3- dis / rv3-mib", + "rv4- dis / rv4-mib", + "rv5- dis / rv5-mib", + "rv6- dis / rv6-mib", + "rv7- dis / rv7-mib", + "me6- dis / me6- mib" + ] + } + ], + "value": "rv1-dis / rv1-mib" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/defaultoids" + }, + "name": "default", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/defaultoids" + }, + { + "assignment": { + "value": "" + }, + "name": "dmaapSeedFilePath", + "type": "string" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/dmaap_config.json" + }, + "name": "dmaap_conf_file", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/dmaap_config.json" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/dti_config.json" + }, + "name": "dti_config_file", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/dti_config.json" + }, + { + "assignment": { + "value": { + "get_input": "environment" + } + }, + "name": "environment", + "type": "string", + "value": { + "get_input": "environment" + } + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/juniperrouteroids" + }, + "name": "juniperrouter", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/juniperrouteroids" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/juniperswitchoids" + }, + "name": "juniperswitch", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/juniperswitchoids" + }, + { + "assignment": { + "value": "/opt/app/discovery/outdata" + }, + "name": "outdata", + "type": "string", + "value": "/opt/app/discovery/outdata" + }, + { + "name": "image", + "type": "string", + "required": true + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location_id", + "type": "string", + "required": true, + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + { + "name": "service_component_type", + "type": "string", + "required": true + } + ], + "typeinfo": { + "itemId": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.dcae.nodes.dockerApp.fm_poller", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.dockerHost", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dcae.capabilities.dockerHost" + }, + "capability": { + "name": "dcae.capabilities.dockerHost", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dcae.capabilities.dockerHost" + }, + "name": "host", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "https://zldcrdm2sdc4cbe01.3f1a87.rdm2.tci.att.com:8443", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.dockerApp", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.dcae.nodes.dockerApp" + }, + { + "name": "tosca.dcae.nodes.Root", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.dockerApp.fm_poller", + "id": 0 + }, + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa", + "nid": "n.1519543437108.0", + "ndata": { + "name": "n.1519543437108.0", + "label": "fm_poller", + "x": 1642, + "y": 417, + "px": 1641, + "py": 416, + "ports": [], + "radius": 30 + } + }, + { + "requirements": [ + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "policy", + "type": { + "name": "dcae.capabilities.policy", + "id": "template.yaml/dcae.capabilities.policy" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "name": "policy_0", + "description": + "/sdc/v1/catalog/resources/3c473efc-57fc-4a47-b3fc-190bd3b02bd2/artifacts/a04ce19c-6d71-44b7-9483-baa74d050fdb", + "type": { + "name": "tosca.dcae.nodes.policy" + }, + "properties": [ + { + "name": "policy_id", + "type": "string", + "required": true + }, + { + "assignment": { + "value": "policy.nodes.cdap.tca.hi.lo.app" + }, + "name": "policy_name", + "type": "string", + "value": "policy.nodes.cdap.tca.hi.lo.app" + } + ], + "typeinfo": { + "itemId": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.policy", + "requirements": [ + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "policy", + "type": { + "name": "dcae.capabilities.policy", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.policy" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "https://zldcrdm2sdc4cbe01.3f1a87.rdm2.tci.att.com:8443", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.Root", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.policy", + "id": 0 + }, + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2", + "nid": "n.1519546229982.0", + "ndata": { + "name": "n.1519546229982.0", + "label": "policy_0", + "x": 1432, + "y": 324, + "px": 1431, + "py": 323, + "ports": [], + "radius": 30 + } + }, + { + "requirements": [ + { + "node": "topic0", + "capability": { + "name": "dcae.capabilities.dmmap.topic", + "id": "template.yaml/dcae.capabilities.dmmap.topic" + }, + "name": "stream_subscribe_0", + "relationship": { + "type": "dcae.relationships.subscribe_to_events" + } + }, + { + "node": "topic1", + "capability": { + "name": "dcae.capabilities.dmmap.topic", + "id": "template.yaml/dcae.capabilities.dmmap.topic" + }, + "name": "stream_publish_0", + "relationship": { + "type": "dcae.relationships.publish_events" + } + }, + { + "node": "policy_0", + "capability": { + "name": "dcae.capabilities.policy", + "id": "template.yaml/dcae.capabilities.policy" + }, + "name": "policy", + "relationship": { + "type": "cloudify.relationships.depends_on" + } + }, + { + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": "template.yaml/dcae.capabilities.cdapHost" + }, + "name": "host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "name": "tcaSpec", + "description": + "/sdc/v1/catalog/resources/3c473efc-57fc-4a47-b3fc-190bd3b02bd2/artifacts/a04ce19c-6d71-44b7-9483-baa74d050fdb", + "type": { + "name": "tosca.dcae.nodes.cdapApp.tcaSpec" + }, + "properties": [ + { + "assignment": { + "value": "123.123.123.123" + }, + "name": "aaiEnrichmentHost", + "type": "string", + "value": "123.123.123.123" + }, + { + "assignment": { + "value": "true" + }, + "name": "aaiEnrichmentIgnoreSSLCertificateErrors", + "type": "string", + "value": "true" + }, + { + "assignment": { + "value": "8443" + }, + "name": "aaiEnrichmentPortNumber", + "type": "string", + "value": "8443" + }, + { + "assignment": { + "value": "https" + }, + "name": "aaiEnrichmentProtocol", + "type": "string", + "value": "https" + }, + { + "assignment": { + "value": "http://username:password@proxyhost.com:8080" + }, + "name": "aaiEnrichmentProxyURL", + "type": "string", + "value": "http://username:password@proxyhost.com:8080" + }, + { + "assignment": { + "value": "DCAE" + }, + "name": "aaiEnrichmentUserName", + "type": "string", + "value": "DCAE" + }, + { + "assignment": { + "value": "DCAE" + }, + "name": "aaiEnrichmentUserPassword", + "type": "string", + "value": "DCAE" + }, + { + "assignment": { + "value": "/aai/v11/search/nodes-query" + }, + "name": "aaiVMEnrichmentAPIPath", + "type": "string", + "value": "/aai/v11/search/nodes-query" + }, + { + "assignment": { + "value": "/aai/v11/network/generic-vnfs/generic-vnf" + }, + "name": "aaiVNFEnrichmentAPIPath", + "type": "string", + "value": "/aai/v11/network/generic-vnfs/generic-vnf" + }, + { + "assignment": { + "value": "DCAE Analytics Threshold Crossing Alert Application" + }, + "name": "appDescription", + "type": "string", + "value": "DCAE Analytics Threshold Crossing Alert Application" + }, + { + "assignment": { + "value": "dcae-tca" + }, + "name": "appName", + "type": "string", + "value": "dcae-tca" + }, + { + "assignment": { + "value": "true" + }, + "name": "enableAAIEnrichment", + "type": "string", + "value": "true" + }, + { + "assignment": { + "value": "false" + }, + "name": "enableAlertCEFFormat", + "type": "string", + "value": "false" + }, + { + "assignment": { + "value": "application/json" + }, + "name": "publisherContentType", + "type": "string", + "value": "application/json" + }, + { + "assignment": { + "value": "1" + }, + "name": "publisherMaxBatchSize", + "type": "string", + "value": "1" + }, + { + "assignment": { + "value": "100000" + }, + "name": "publisherMaxRecoveryQueueSize", + "type": "string", + "value": "100000" + }, + { + "assignment": { + "value": "20000" + }, + "name": "publisherPollingInterval", + "type": "string", + "value": "20000" + }, + { + "assignment": { + "value": "OpenDCAE-c12" + }, + "name": "subscriberConsumerGroup", + "type": "string", + "value": "OpenDCAE-c12" + }, + { + "assignment": { + "value": "c12" + }, + "name": "subscriberConsumerId", + "type": "string", + "value": "c12" + }, + { + "assignment": { + "value": "application/json" + }, + "name": "subscriberContentType", + "type": "string", + "value": "application/json" + }, + { + "assignment": { + "value": "-1" + }, + "name": "subscriberMessageLimit", + "type": "string", + "value": "-1" + }, + { + "assignment": { + "value": "30000" + }, + "name": "subscriberPollingInterval", + "type": "string", + "value": "30000" + }, + { + "assignment": { + "value": "-1" + }, + "name": "subscriberTimeoutMS", + "type": "string", + "value": "-1" + }, + { + "assignment": { + "value": "TCAAlertsAbatementTable" + }, + "name": "tcaAlertsAbatementTableName", + "type": "string", + "value": "TCAAlertsAbatementTable" + }, + { + "assignment": { + "value": "1728000" + }, + "name": "tcaAlertsAbatementTableTTLSeconds", + "type": "string", + "value": "1728000" + }, + { + "assignment": { + "value": "TCASubscriberOutputStream" + }, + "name": "tcaSubscriberOutputStreamName", + "type": "string", + "value": "TCASubscriberOutputStream" + }, + { + "assignment": { + "value": "TCAVESAlertsTable" + }, + "name": "tcaVESAlertsTableName", + "type": "string", + "value": "TCAVESAlertsTable" + }, + { + "assignment": { + "value": "1728000" + }, + "name": "tcaVESAlertsTableTTLSeconds", + "type": "string", + "value": "1728000" + }, + { + "assignment": { + "value": "TCAVESMessageStatusTable" + }, + "name": "tcaVESMessageStatusTableName", + "type": "string", + "value": "TCAVESMessageStatusTable" + }, + { + "assignment": { + "value": "86400" + }, + "name": "tcaVESMessageStatusTableTTLSeconds", + "type": "string", + "value": "86400" + }, + { + "assignment": { + "value": + "{\"domain\":\"measurementsForVfScaling\",\"metricsPerEventName\":[{\"eventName\":\"Mfvs_eNodeB_RANKPI\",\"controlLoopSchemaType\":\"VNF\",\"policyScope\":\"resource=vFirewall;type=configuration\",\"policyName\":\"configuration.dcae.microservice.tca.xml\",\"policyVersion\":\"v0.0.1\",\"thresholds\":[{\"closedLoopControlName\":\"CL-FRWL-LOW-TRAFFIC-SIG-d925ed73-8231-4d02-9545-db4e101f88f8\",\"closedLoopEventStatus\":\"ONSET\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":4000,\"direction\":\"LESS_OR_EQUAL\",\"severity\":\"MAJOR\"},{\"closedLoopControlName\":\"CL-FRWL-HIGH-TRAFFIC-SIG-EA36FE84-9342-5E13-A656-EC5F21309A09\",\"closedLoopEventStatus\":\"ONSET\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":20000,\"direction\":\"GREATER_OR_EQUAL\",\"severity\":\"CRITICAL\"},{\"closedLoopControlName\":\"CL-FRWL-HIGH-TRAFFIC-SIG-EA36FE84-9342-5E13-A656-EC5F21309A09\",\"closedLoopEventStatus\":\"ABATED\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":0,\"direction\":\"EQUAL\",\"severity\":\"CRITICAL\"}]},{\"eventName\":\"vLoadBalancer\",\"controlLoopSchemaType\":\"VNF\",\"policyScope\":\"resource=vLoadBalancer;type=configuration\",\"policyName\":\"configuration.dcae.microservice.tca.xml\",\"policyVersion\":\"v0.0.1\",\"thresholds\":[{\"closedLoopControlName\":\"CL-LBAL-LOW-TRAFFIC-SIG-FB480F95-A453-6F24-B767-FD703241AB1A\",\"closedLoopEventStatus\":\"ONSET\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":500,\"direction\":\"LESS_OR_EQUAL\",\"severity\":\"MAJOR\"},{\"closedLoopControlName\":\"CL-LBAL-LOW-TRAFFIC-SIG-0C5920A6-B564-8035-C878-0E814352BC2B\",\"closedLoopEventStatus\":\"ONSET\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":5000,\"direction\":\"GREATER_OR_EQUAL\",\"severity\":\"CRITICAL\"}]}]}" + }, + "name": "tca_policy", + "type": "string", + "value": + "{\"domain\":\"measurementsForVfScaling\",\"metricsPerEventName\":[{\"eventName\":\"Mfvs_eNodeB_RANKPI\",\"controlLoopSchemaType\":\"VNF\",\"policyScope\":\"resource=vFirewall;type=configuration\",\"policyName\":\"configuration.dcae.microservice.tca.xml\",\"policyVersion\":\"v0.0.1\",\"thresholds\":[{\"closedLoopControlName\":\"CL-FRWL-LOW-TRAFFIC-SIG-d925ed73-8231-4d02-9545-db4e101f88f8\",\"closedLoopEventStatus\":\"ONSET\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":4000,\"direction\":\"LESS_OR_EQUAL\",\"severity\":\"MAJOR\"},{\"closedLoopControlName\":\"CL-FRWL-HIGH-TRAFFIC-SIG-EA36FE84-9342-5E13-A656-EC5F21309A09\",\"closedLoopEventStatus\":\"ONSET\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":20000,\"direction\":\"GREATER_OR_EQUAL\",\"severity\":\"CRITICAL\"},{\"closedLoopControlName\":\"CL-FRWL-HIGH-TRAFFIC-SIG-EA36FE84-9342-5E13-A656-EC5F21309A09\",\"closedLoopEventStatus\":\"ABATED\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":0,\"direction\":\"EQUAL\",\"severity\":\"CRITICAL\"}]},{\"eventName\":\"vLoadBalancer\",\"controlLoopSchemaType\":\"VNF\",\"policyScope\":\"resource=vLoadBalancer;type=configuration\",\"policyName\":\"configuration.dcae.microservice.tca.xml\",\"policyVersion\":\"v0.0.1\",\"thresholds\":[{\"closedLoopControlName\":\"CL-LBAL-LOW-TRAFFIC-SIG-FB480F95-A453-6F24-B767-FD703241AB1A\",\"closedLoopEventStatus\":\"ONSET\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":500,\"direction\":\"LESS_OR_EQUAL\",\"severity\":\"MAJOR\"},{\"closedLoopControlName\":\"CL-LBAL-LOW-TRAFFIC-SIG-0C5920A6-B564-8035-C878-0E814352BC2B\",\"closedLoopEventStatus\":\"ONSET\",\"version\":\"1.0.2\",\"fieldPath\":\"$.event.measurementsForVfScalingFields.vNicPerformanceArray[*].receivedBroadcastPacketsAccumulated\",\"thresholdValue\":5000,\"direction\":\"GREATER_OR_EQUAL\",\"severity\":\"CRITICAL\"}]}]}" + }, + { + "assignment": { + "value": "2" + }, + "name": "thresholdCalculatorFlowletInstances", + "type": "string", + "value": "2" + }, + { + "default": "cdap_broker", + "assignment": { + "value": { + "get_input": "connected_broker_dns_name" + } + }, + "name": "connected_broker_dns_name", + "type": "string", + "required": true, + "value": { + "get_input": "connected_broker_dns_name" + } + }, + { + "name": "jar_url", + "type": "string", + "required": true + }, + { + "name": "service_component_type", + "type": "string", + "required": true + } + ], + "typeinfo": { + "itemId": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.cdapApp.tcaSpec", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.dmmap.topic", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.dmmap.topic" + }, + "capability": { + "name": "dcae.capabilities.dmmap.topic", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.dmmap.topic" + }, + "name": "stream_subscribe_0", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/stream_subscribe_0", + "relationship": { + "type": "dcae.relationships.subscribe_to_events" + } + }, + { + "node": { + "name": "dcae.capabilities.dmmap.topic", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.dmmap.topic" + }, + "capability": { + "name": "dcae.capabilities.dmmap.topic", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.dmmap.topic" + }, + "name": "stream_publish_0", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/stream_publish_0", + "relationship": { + "type": "dcae.relationships.publish_events" + } + }, + { + "node": { + "name": "dcae.capabilities.policy", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.policy" + }, + "capability": { + "name": "dcae.capabilities.policy", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.policy" + }, + "name": "policy", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/policy", + "relationship": { + "type": "cloudify.relationships.depends_on" + } + }, + { + "node": { + "name": "dcae.capabilities.cdapHost", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.cdapHost" + }, + "capability": { + "name": "dcae.capabilities.cdapHost", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.cdapHost" + }, + "name": "host", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "https://zldcrdm2sdc4cbe01.3f1a87.rdm2.tci.att.com:8443", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.cdapApp", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.cdapApp" + }, + { + "name": "tosca.dcae.nodes.Root", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.cdapApp.tcaSpec", + "id": 0 + }, + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2", + "nid": "n.1519546229993.1", + "ndata": { + "name": "n.1519546229993.1", + "label": "tcaSpec", + "x": 1482, + "y": 340.0928478067284, + "px": 1481, + "py": 339.0928478067284, + "ports": [], + "radius": 30 + } + }, + { + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "topic", + "type": { + "name": "dcae.capabilities.dmmap.topic", + "id": "template.yaml/dcae.capabilities.dmmap.topic" + }, + "properties": [ + { + "assignment": { + "value": { + "get_property": ["SELF", "aaf_password"] + } + }, + "name": "aaf_password", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "aaf_username"] + } + }, + "name": "aaf_username", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "client_role"] + } + }, + "name": "client_role", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "location"] + } + }, + "name": "location", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "node_name"] + } + }, + "name": "node_name", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "topic_name"] + } + }, + "name": "topic_name", + "type": "string" + } + ] + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "name": "topic0", + "description": + "/sdc/v1/catalog/resources/3c473efc-57fc-4a47-b3fc-190bd3b02bd2/artifacts/a04ce19c-6d71-44b7-9483-baa74d050fdb", + "type": { + "name": "tosca.dcae.nodes.dmaap.topic" + }, + "properties": [ + { + "assignment": { + "value": { + "get_input": "topic0_aaf_password" + } + }, + "name": "aaf_password", + "type": "string", + "value": { + "get_input": "topic0_aaf_password" + } + }, + { + "assignment": { + "value": { + "get_input": "topic0_aaf_username" + } + }, + "name": "aaf_username", + "type": "string", + "value": { + "get_input": "topic0_aaf_username" + } + }, + { + "assignment": { + "value": { + "get_input": "topic0_client_role" + } + }, + "name": "client_role", + "type": "string", + "value": { + "get_input": "topic0_client_role" + } + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location", + "type": "string", + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + { + "assignment": { + "value": "__GET_NODE_NAME__" + }, + "name": "node_name", + "type": "string", + "value": "__GET_NODE_NAME__" + }, + { + "assignment": { + "value": "" + }, + "name": "topic_name", + "type": "string" + } + ], + "typeinfo": { + "itemId": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.dmaap.topic", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "topic", + "type": { + "name": "dcae.capabilities.dmmap.topic", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.dmmap.topic" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "https://zldcrdm2sdc4cbe01.3f1a87.rdm2.tci.att.com:8443", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.Root", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.dmaap.topic", + "id": 0 + }, + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2", + "nid": "n.1519546230003.2", + "ndata": { + "name": "n.1519546230003.2", + "label": "topic0", + "x": 1532, + "y": 359.82099057536396, + "px": 1531, + "py": 358.82099057536396, + "ports": [], + "radius": 30 + } + }, + { + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "topic", + "type": { + "name": "dcae.capabilities.dmmap.topic", + "id": "template.yaml/dcae.capabilities.dmmap.topic" + }, + "properties": [ + { + "assignment": { + "value": { + "get_property": ["SELF", "aaf_password"] + } + }, + "name": "aaf_password", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "aaf_username"] + } + }, + "name": "aaf_username", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "client_role"] + } + }, + "name": "client_role", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "location"] + } + }, + "name": "location", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "node_name"] + } + }, + "name": "node_name", + "type": "string" + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "topic_name"] + } + }, + "name": "topic_name", + "type": "string" + } + ] + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "name": "topic1", + "description": + "/sdc/v1/catalog/resources/3c473efc-57fc-4a47-b3fc-190bd3b02bd2/artifacts/a04ce19c-6d71-44b7-9483-baa74d050fdb", + "type": { + "name": "tosca.dcae.nodes.dmaap.topic" + }, + "properties": [ + { + "assignment": { + "value": { + "get_input": "topic1_aaf_password" + } + }, + "name": "aaf_password", + "type": "string", + "value": { + "get_input": "topic1_aaf_password" + } + }, + { + "assignment": { + "value": { + "get_input": "topic1_aaf_username" + } + }, + "name": "aaf_username", + "type": "string", + "value": { + "get_input": "topic1_aaf_username" + } + }, + { + "assignment": { + "value": { + "get_input": "topic1_client_role" + } + }, + "name": "client_role", + "type": "string", + "value": { + "get_input": "topic1_client_role" + } + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location", + "type": "string", + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + { + "assignment": { + "value": "__GET_NODE_NAME__" + }, + "name": "node_name", + "type": "string", + "value": "__GET_NODE_NAME__" + }, + { + "assignment": { + "value": "" + }, + "name": "topic_name", + "type": "string" + } + ], + "typeinfo": { + "itemId": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.dmaap.topic", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "topic", + "type": { + "name": "dcae.capabilities.dmmap.topic", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/dcae.capabilities.dmmap.topic" + } + }, + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "https://zldcrdm2sdc4cbe01.3f1a87.rdm2.tci.att.com:8443", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.Root", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.dmaap.topic", + "id": 0 + }, + "id": "3c473efc-57fc-4a47-b3fc-190bd3b02bd2", + "nid": "n.1519546230015.3", + "ndata": { + "name": "n.1519546230015.3", + "label": "topic1", + "x": 1582, + "y": 364.5060542566447, + "px": 1581, + "py": 363.5060542566447, + "ports": [], + "radius": 30 + } + }, + { + "requirements": [ + { + "capability": { + "name": "dcae.capabilities.dockerHost", + "id": "template.yaml/dcae.capabilities.dockerHost" + }, + "name": "host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "capability": { + "name": "dcae.capabilities.composition.host", + "id": "template.yaml/dcae.capabilities.composition.host" + }, + "name": "composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": "tosca.nodes.Root", + "capability": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + }, + "name": "dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": "template.yaml/tosca.capabilities.Node" + } + } + ], + "name": "fm_poller", + "description": + "/sdc/v1/catalog/resources/c8db6f9b-6173-4d7d-bd25-c20bfc154daa/artifacts/66b05681-a407-4e46-9239-86f245c68b81", + "type": { + "name": "tosca.dcae.nodes.dockerApp.fm_poller" + }, + "properties": [ + { + "assignment": { + "value": "ciscoRouter" + }, + "name": "DeviceCategory", + "type": "string", + "constraints": [ + { + "valid_values": [ + "ciscoSwitch", + "ciscoRouter", + "juniperSwitch", + "juniperRouter" + ] + } + ], + "value": "ciscoRouter" + }, + { + "assignment": { + "value": "/opt/app/discovery/seed" + }, + "name": "DeviceToWalkJson", + "type": "string", + "value": "/opt/app/discovery/seed" + }, + { + "assignment": { + "value": { + "get_input": "DisoveryInterval" + } + }, + "name": "DisoveryInterval", + "type": "string", + "value": { + "get_input": "DisoveryInterval" + } + }, + { + "assignment": { + "value": { + "get_input": "FlatironHost" + } + }, + "name": "FlatironHost", + "type": "string", + "value": { + "get_input": "FlatironHost" + } + }, + { + "assignment": { + "value": { + "get_input": "FlatironScope" + } + }, + "name": "FlatironScope", + "type": "string", + "value": { + "get_input": "FlatironScope" + } + }, + { + "assignment": { + "value": "/opt/app/discovery/curloutput" + }, + "name": "SeedFilePath", + "type": "string", + "value": "/opt/app/discovery/curloutput" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/app_config.json" + }, + "name": "app_config_file", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/app_config.json" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/ciscorouteroids" + }, + "name": "ciscorouter", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/ciscorouteroids" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/ciscoswitchoids" + }, + "name": "ciscoswitch", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/ciscoswitchoids" + }, + { + "assignment": { + "value": { + "get_input": "clientUri" + } + }, + "name": "clientUri", + "type": "string", + "value": { + "get_input": "clientUri" + } + }, + { + "assignment": { + "value": { + "get_input": "dcae_service_location" + } + }, + "name": "dcae_service_location", + "type": "string", + "value": { + "get_input": "dcae_service_location" + } + }, + { + "assignment": { + "value": "rv1-dis / rv1-mib" + }, + "name": "dcae_target_type", + "type": "string", + "constraints": [ + { + "valid_values": [ + "rv1-dis / rv1-mib", + "rv2- dis / rv2-mib", + "rv3- dis / rv3-mib", + "rv4- dis / rv4-mib", + "rv5- dis / rv5-mib", + "rv6- dis / rv6-mib", + "rv7- dis / rv7-mib", + "me6- dis / me6- mib" + ] + } + ], + "value": "rv1-dis / rv1-mib" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/defaultoids" + }, + "name": "default", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/defaultoids" + }, + { + "assignment": { + "value": "" + }, + "name": "dmaapSeedFilePath", + "type": "string" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/dmaap_config.json" + }, + "name": "dmaap_conf_file", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/dmaap_config.json" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/dti_config.json" + }, + "name": "dti_config_file", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/conf/dti_config.json" + }, + { + "assignment": { + "value": { + "get_input": "environment" + } + }, + "name": "environment", + "type": "string", + "value": { + "get_input": "environment" + } + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/juniperrouteroids" + }, + "name": "juniperrouter", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/juniperrouteroids" + }, + { + "assignment": { + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/juniperswitchoids" + }, + "name": "juniperswitch", + "type": "string", + "value": + "/opt/app/topologyCollector/TopologyCollector-1.0.0/data/juniperswitchoids" + }, + { + "assignment": { + "value": "/opt/app/discovery/outdata" + }, + "name": "outdata", + "type": "string", + "value": "/opt/app/discovery/outdata" + }, + { + "name": "image", + "type": "string", + "required": true + }, + { + "assignment": { + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + "name": "location_id", + "type": "string", + "required": true, + "value": { + "get_property": ["SELF", "composition", "location_id"] + } + }, + { + "name": "service_component_type", + "type": "string", + "required": true + } + ], + "typeinfo": { + "itemId": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.dcae.nodes.dockerApp.fm_poller", + "requirements": [ + { + "node": { + "name": "dcae.capabilities.dockerHost", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dcae.capabilities.dockerHost" + }, + "capability": { + "name": "dcae.capabilities.dockerHost", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dcae.capabilities.dockerHost" + }, + "name": "host", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/host", + "relationship": { + "type": "dcae.relationships.component_contained_in" + } + }, + { + "node": { + "name": "dcae.capabilities.composition.host", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dcae.capabilities.composition.host" + }, + "capability": { + "name": "dcae.capabilities.composition.host", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dcae.capabilities.composition.host" + }, + "name": "composition", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/composition" + }, + { + "occurrences": [0, "UNBOUNDED"], + "node": { + "name": "tosca.capabilities.Node", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.capabilities.Node" + }, + "capability": { + "name": "tosca.capabilities.Node", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.capabilities.Node" + }, + "name": "dependency", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/dependency", + "relationship": { + "type": "tosca.relationships.DependsOn" + } + } + ], + "capabilities": [ + { + "name": "feature", + "type": { + "name": "tosca.capabilities.Node", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.capabilities.Node" + } + } + ], + "catalogId": 0, + "catalog": "https://zldcrdm2sdc4cbe01.3f1a87.rdm2.tci.att.com:8443", + "hierarchy": [ + { + "name": "tosca.dcae.nodes.dockerApp", + "id": + "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.dcae.nodes.dockerApp" + }, + { + "name": "tosca.dcae.nodes.Root", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.dcae.nodes.Root" + }, + { + "name": "tosca.nodes.Root", + "description": + "The TOSCA Node Type all other TOSCA base Node Types derive from", + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa/tosca.nodes.Root" + } + ], + "name": "tosca.dcae.nodes.dockerApp.fm_poller", + "id": 0 + }, + "id": "c8db6f9b-6173-4d7d-bd25-c20bfc154daa", + "nid": "n.1519638059958.3", + "ndata": { + "name": "n.1519638059958.3", + "label": "fm_poller", + "x": 757, + "y": 533, + "px": 756, + "py": 532, + "ports": [], + "radius": 30 + } + } + ], + "relations": [ + { + "rid": "lnk.1519638491147.0", + "n1": "n.1519546229993.1", + "name1": "tcaSpec", + "n2": "n.1519546230003.2", + "name2": "topic0", + "meta": { + "n1": "n.1519546229993.1", + "n2": "n.1519546230003.2", + "p1": "stream_subscribe_0", + "p2": "topic", + "relationship": ["tcaSpec", null, "stream_subscribe_0"] + } + }, + { + "rid": "lnk.1519638491150.1", + "n1": "n.1519546229993.1", + "name1": "tcaSpec", + "n2": "n.1519546230015.3", + "name2": "topic1", + "meta": { + "n1": "n.1519546229993.1", + "n2": "n.1519546230015.3", + "p1": "stream_publish_0", + "p2": "topic", + "relationship": ["tcaSpec", null, "stream_publish_0"] + } + }, + { + "rid": "lnk.1519638491156.2", + "n1": "n.1519546229993.1", + "name1": "tcaSpec", + "n2": "n.1519546229982.0", + "name2": "policy_0", + "meta": { + "n1": "n.1519546229993.1", + "n2": "n.1519546229982.0", + "p1": "policy", + "p2": "policy", + "relationship": ["tcaSpec", null, "policy"] + } + } + ], + "inputs": [], + "outputs": [] + } +} diff --git a/public/cypress/fixtures/importVfcmt.json b/public/cypress/fixtures/importVfcmt.json new file mode 100644 index 0000000..6da0d60 --- /dev/null +++ b/public/cypress/fixtures/importVfcmt.json @@ -0,0 +1,93 @@ +[ + { + "uuid": "cb06b8a9-c7e0-4451-a941-89fc338303c9", + "invariantUUID": "8c341465-43bb-44a9-b5f0-356e6a2a855f", + "name": "LiavSprint10.3", + "version": "0.1", + "toscaModelURL": + "/sdc/v1/catalog/resources/cb06b8a9-c7e0-4451-a941-89fc338303c9/toscaModel", + "lastUpdaterUserId": "le056g", + "category": "Template", + "lifecycleState": "NOT_CERTIFIED_CHECKIN", + "subCategory": "Monitoring Template", + "resourceType": "VFCMT" + }, + { + "uuid": "eef4a0c8-8a52-4d09-bdbd-f68dfd835ee3", + "invariantUUID": "d8003bd6-de41-4910-b38d-a357de25a61a", + "name": "teSt.__.monitoring---TempLATE.Rsnq", + "version": "0.1", + "toscaModelURL": + "/sdc/v1/catalog/resources/eef4a0c8-8a52-4d09-bdbd-f68dfd835ee3/toscaModel", + "lastUpdaterUserId": "cs0008", + "category": "Template", + "lifecycleState": "NOT_CERTIFIED_CHECKIN", + "subCategory": "Monitoring Template", + "resourceType": "VFCMT" + }, + { + "uuid": "f34758c9-f0e8-4b18-993a-0c1b48c5885a", + "invariantUUID": "7a96b209-0598-4df7-9313-48234b6e731b", + "name": "teSt.__.monitoring---TempLATE.Yh5k", + "version": "2.0", + "toscaModelURL": + "/sdc/v1/catalog/resources/f34758c9-f0e8-4b18-993a-0c1b48c5885a/toscaModel", + "lastUpdaterUserId": "cs0008", + "category": "Template", + "lifecycleState": "CERTIFIED", + "subCategory": "Monitoring Template", + "resourceType": "VFCMT" + }, + { + "uuid": "22473d26-d0bd-4c1b-84c1-20e539fb7556", + "invariantUUID": "5feeebf4-d4e9-44bc-9f17-10703af44da7", + "name": "CI-fJc9mhvlrfdx6qeCI", + "version": "0.1", + "toscaModelURL": + "/sdc/v1/catalog/resources/22473d26-d0bd-4c1b-84c1-20e539fb7556/toscaModel", + "lastUpdaterUserId": "cs0008", + "category": "Template", + "lifecycleState": "NOT_CERTIFIED_CHECKIN", + "subCategory": "Monitoring Template", + "resourceType": "VFCMT" + }, + { + "uuid": "dc588160-b1ca-4219-b790-bd8eda9332c1", + "invariantUUID": "e23ac861-1ba3-4acc-a1bd-ea297c51f1da", + "name": "teSt.__.monitoring---TempLATE.Fv2x", + "version": "1.0", + "toscaModelURL": + "/sdc/v1/catalog/resources/dc588160-b1ca-4219-b790-bd8eda9332c1/toscaModel", + "lastUpdaterUserId": "cs0008", + "category": "Template", + "lifecycleState": "CERTIFIED", + "subCategory": "Monitoring Template", + "resourceType": "VFCMT" + }, + { + "uuid": "cdb18942-e769-4361-9e89-96b06d13b138", + "invariantUUID": "fc8c40aa-f67c-4386-92b1-fbc652b8d3dc", + "name": "CIba71c93f4299", + "version": "0.3", + "toscaModelURL": + "/sdc/v1/catalog/resources/cdb18942-e769-4361-9e89-96b06d13b138/toscaModel", + "lastUpdaterUserId": "cs0008", + "category": "Template", + "lifecycleState": "NOT_CERTIFIED_CHECKIN", + "subCategory": "Monitoring Template", + "resourceType": "VFCMT" + }, + { + "uuid": "d9a5372c-2127-4b83-9aed-17e5b041cb45", + "invariantUUID": "3decd698-451b-405f-93ca-dcdf1dfd525e", + "name": "teSt.__.monitoring---TempLATE.Sgno", + "version": "0.2", + "toscaModelURL": + "/sdc/v1/catalog/resources/d9a5372c-2127-4b83-9aed-17e5b041cb45/toscaModel", + "lastUpdaterUserId": "cs0008", + "category": "Template", + "lifecycleState": "NOT_CERTIFIED_CHECKIN", + "subCategory": "Monitoring Template", + "resourceType": "VFCMT" + } +] diff --git a/public/cypress/fixtures/list-events-by-version.json b/public/cypress/fixtures/list-events-by-version.json new file mode 100644 index 0000000..0a07af0 --- /dev/null +++ b/public/cypress/fixtures/list-events-by-version.json @@ -0,0 +1,29 @@ +[ + { + "version": "4.1", + "eventTypes": [ + "syslogFields", + "thresholdCrossingAlertFields", + "measurementsForVfScalingFields", + "mobileFlowFields", + "otherFields", + "stateChangeFields", + "faultFields" + ] + }, + { + "version": "5.3", + "eventTypes": [ + "syslogFields", + "thresholdCrossingAlertFields", + "voiceQualityFields", + "heartbeatFields", + "measurementsForVfScalingFields", + "sipSignalingFields", + "mobileFlowFields", + "otherFields", + "stateChangeFields", + "faultFields" + ] + } +] diff --git a/public/cypress/fixtures/monitoringComponentsMock.json b/public/cypress/fixtures/monitoringComponentsMock.json new file mode 100644 index 0000000..ab34688 --- /dev/null +++ b/public/cypress/fixtures/monitoringComponentsMock.json @@ -0,0 +1,123 @@ +{ + "monitoringComponents": [ + { + "uuid": "cba37ed8-94e1-406f-b4f5-b5edbc31ac85", + "name": "CIe4d5a9b271d6", + "version": "0.2", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "not submitted", + "vfiName": "vfb53dd48360ff4fa2b66e6ceb1961bd9b0" + }, + { + "uuid": "64471437-8feb-40d9-a8b0-9407a81dd5c0", + "name": "teSt.__.monitoring---TempLATE.6hnc", + "version": "1.0", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "submitted", + "vfiName": "dump0" + }, + { + "uuid": "64471437-8feb-40d9-a8b0-9407a81dd5c0", + "name": "teSt.__.monitoring---TempLATE.6hnc", + "version": "1.0", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "submitted", + "vfiName": "dump0" + }, + { + "uuid": "cba37ed8-94e1-406f-b4f5-b5edbc31ac85", + "name": "CIe4d5a9b271d6", + "version": "0.2", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "not submitted", + "vfiName": "vfb53dd48360ff4fa2b66e6ceb1961bd9b0" + }, + { + "uuid": "64471437-8feb-40d9-a8b0-9407a81dd5c0", + "name": "teSt.__.monitoring---TempLATE.6hnc", + "version": "1.0", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "submitted", + "vfiName": "dump0" + }, + { + "uuid": "64471437-8feb-40d9-a8b0-9407a81dd5c0", + "name": "teSt.__.monitoring---TempLATE.6hnc", + "version": "1.0", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "submitted", + "vfiName": "dump0" + }, + { + "uuid": "cba37ed8-94e1-406f-b4f5-b5edbc31ac85", + "name": "CIe4d5a9b271d6", + "version": "0.2", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "not submitted", + "vfiName": "vfb53dd48360ff4fa2b66e6ceb1961bd9b0" + }, + { + "uuid": "64471437-8feb-40d9-a8b0-9407a81dd5c0", + "name": "teSt.__.monitoring---TempLATE.6hnc", + "version": "1.0", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "submitted", + "vfiName": "dump0" + }, + { + "uuid": "64471437-8feb-40d9-a8b0-9407a81dd5c0", + "name": "teSt.__.monitoring---TempLATE.6hnc", + "version": "1.0", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "submitted", + "vfiName": "dump0" + }, + { + "uuid": "cba37ed8-94e1-406f-b4f5-b5edbc31ac85", + "name": "CIe4d5a9b271d6", + "version": "0.2", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "not submitted", + "vfiName": "vfb53dd48360ff4fa2b66e6ceb1961bd9b0" + }, + { + "uuid": "64471437-8feb-40d9-a8b0-9407a81dd5c0", + "name": "teSt.__.monitoring---TempLATE.6hnc", + "version": "1.0", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "submitted", + "vfiName": "dump0" + }, + { + "uuid": "64471437-8feb-40d9-a8b0-9407a81dd5c0", + "name": "teSt.__.monitoring---TempLATE.6hnc", + "version": "1.0", + "lastUpdaterUserId": "cs0008", + "description": "description", + "status": "submitted", + "vfiName": "dump0" + } + ], + "unavailable": [ + { + "uuid": "111111-1111111-1111111", + "name": null, + "version": null, + "lastUpdaterUserId": null, + "description": null, + "status": "unavailable", + "vfiName": "dump0" + } + ] +}
\ No newline at end of file diff --git a/public/cypress/fixtures/serviceDdl.json b/public/cypress/fixtures/serviceDdl.json new file mode 100644 index 0000000..a0a05bc --- /dev/null +++ b/public/cypress/fixtures/serviceDdl.json @@ -0,0 +1,24 @@ +{ + "uuid": "06c7d927-4e2f-47e1-a29d-b6ed229ebc0a", + "invariantUUID": "424b2457-d0fc-4b73-aaf6-d809f402aff5", + "name": "ciService669277f472b0", + "version": "0.1", + "toscaModelURL": + "/sdc/v1/catalog/services/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/toscaModel", + "lastUpdaterUserId": "cs0008", + "category": "Mobility", + "lifecycleState": "NOT_CERTIFIED_CHECKOUT", + "distributionStatus": "DISTRIBUTION_NOT_APPROVED", + "lastUpdaterFullName": "Idan Agam", + "resources": [ + { + "resourceInstanceName": "LiavSrv", + "resourceName": "ciResVF4e28237d8f08", + "resourceInvariantUUID": "c36512c2-7938-4dce-ab9e-8884c9cb1fb0", + "resourceVersion": "0.1", + "resoucreType": "VF", + "resourceUUID": "bce6b896-c086-450c-a023-86c1129de7e8", + "artifacts": null + } + ] +} diff --git a/public/cypress/fixtures/syslogTargetTree.json b/public/cypress/fixtures/syslogTargetTree.json new file mode 100644 index 0000000..a6b73b4 --- /dev/null +++ b/public/cypress/fixtures/syslogTargetTree.json @@ -0,0 +1,239 @@ +[ + { + "name": "commonEventHeader", + "children": [ + { + "name": "domain", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.domain" + }, + { + "name": "eventId", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.eventId" + }, + { + "name": "eventType", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.commonEventHeader.eventType" + }, + { + "name": "functionalRole", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.functionalRole" + }, + { + "name": "internalHeaderFields", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.commonEventHeader.internalHeaderFields" + }, + { + "name": "lastEpochMicrosec", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.lastEpochMicrosec" + }, + { + "name": "priority", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.priority" + }, + { + "name": "reportingEntityId", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.commonEventHeader.reportingEntityId" + }, + { + "name": "reportingEntityName", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.reportingEntityName" + }, + { + "name": "sequence", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.sequence" + }, + { + "name": "sourceId", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.commonEventHeader.sourceId" + }, + { + "name": "sourceName", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.sourceName" + }, + { + "name": "startEpochMicrosec", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.commonEventHeader.startEpochMicrosec" + }, + { + "name": "version", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.commonEventHeader.version" + } + ], + "isRequired": false, + "requiredChildren": [ + "domain", + "eventId", + "functionalRole", + "lastEpochMicrosec", + "priority", + "reportingEntityName", + "sequence", + "sourceName", + "startEpochMicrosec" + ], + "id": "event.commonEventHeader" + }, + { + "name": "syslogFields", + "children": [ + { + "name": "additionalFields", + "children": [ + { + "name": "name", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.syslogFields.additionalFields[].name" + }, + { + "name": "value", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.syslogFields.additionalFields[].value" + } + ], + "isRequired": false, + "requiredChildren": ["name", "value"], + "id": "event.syslogFields.additionalFields[]" + }, + { + "name": "eventSourceHost", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.eventSourceHost" + }, + { + "name": "eventSourceType", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.syslogFields.eventSourceType" + }, + { + "name": "syslogFacility", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogFacility" + }, + { + "name": "syslogFieldsVersion", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogFieldsVersion" + }, + { + "name": "syslogMsg", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.syslogFields.syslogMsg" + }, + { + "name": "syslogPri", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogPri" + }, + { + "name": "syslogProc", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogProc" + }, + { + "name": "syslogProcId", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogProcId" + }, + { + "name": "syslogSData", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogSData" + }, + { + "name": "syslogSdId", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogSdId" + }, + { + "name": "syslogSev", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogSev" + }, + { + "name": "syslogTag", + "children": null, + "isRequired": true, + "requiredChildren": null, + "id": "event.syslogFields.syslogTag" + }, + { + "name": "syslogVer", + "children": null, + "isRequired": false, + "requiredChildren": null, + "id": "event.syslogFields.syslogVer" + } + ], + "isRequired": false, + "requiredChildren": ["eventSourceType", "syslogMsg", "syslogTag"], + "id": "event.syslogFields" + } +] diff --git a/public/cypress/fixtures/templateMock.json b/public/cypress/fixtures/templateMock.json new file mode 100644 index 0000000..b8fff17 --- /dev/null +++ b/public/cypress/fixtures/templateMock.json @@ -0,0 +1,15 @@ +[ + { + "uuid": "2a67bbb6-3457-4bb6-baef-e3bc5f1fd9b7", + "invariantUUID": "cb594fb6-c9e7-42c1-bef9-7a1873325986", + "name": "AviStone1234", + "version": "1.0", + "toscaModelURL": + "/sdc/v1/catalog/resources/2a67bbb6-3457-4bb6-baef-e3bc5f1fd9b7/toscaModel", + "lastUpdaterUserId": "cs0008", + "category": "Template", + "lifecycleState": "CERTIFIED", + "subCategory": "Base Monitoring Template", + "resourceType": "VFCMT" + } +] diff --git a/public/cypress/fixtures/vfniMock.json b/public/cypress/fixtures/vfniMock.json new file mode 100644 index 0000000..cb4a91b --- /dev/null +++ b/public/cypress/fixtures/vfniMock.json @@ -0,0 +1,12 @@ +[ + { + "uuid": "d31bc895-d908-4e62-9e81-77fd52e13632", + "invariantUUID": "4b8e8dde-8f18-42f4-86c7-3e2f9bc163b4", + "name": "LiavSrv", + "version": "0.3", + "lastUpdaterUserId": "af3193", + "category": "Mobility", + "lifecycleState": "NOT_CERTIFIED_CHECKIN", + "distributionStatus": "DISTRIBUTION_NOT_APPROVED" + } +] diff --git a/public/cypress/integration/e2e/e2eWithIntegration-spec.ts b/public/cypress/integration/e2e/e2eWithIntegration-spec.ts new file mode 100644 index 0000000..459a7de --- /dev/null +++ b/public/cypress/integration/e2e/e2eWithIntegration-spec.ts @@ -0,0 +1,145 @@ +const randomNodeName = () => + Math.random() + .toString(36) + .substr(2, 7); +const NODE_NAME = randomNodeName(); + +const serverGetDDLData = () => { + return cy + .server() + .route( + 'GET', + Cypress.env('backendUrl') + '/getResourcesByMonitoringTemplateCategory' + ) + .as('templateAPi') + .route( + 'GET', + Cypress.env('backendUrl') + + '/service/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a' + ) + .as('vfniListAPi'); +}; + +const saveAndDoneHttp = () => { + cy.server(); + cy + .route({ + method: 'POST', + url: Cypress.env('backendUrl') + '/rule-editor/rule/**/**/**/**' + }) + .as('doneSaveCopyRule'); +}; + +const createNewMC = () => { + cy + .get('input[data-tests-id="nameMc"]') + .type(`Hello${NODE_NAME}`) + .get('textarea[data-tests-id="descMc"]') + .type('Hello Description') + .get('select[data-tests-id="templateDdl"]') + .then($els => { + const opt = $els.find('option'); + const first = opt.get(1) as any; + return $els.val(first.value); + }) + .trigger('change') + .get('select[data-tests-id="vfniDdl"]') + .then($els => { + const opt = $els.find('option'); + const first = opt.get(1) as any; + return $els.val(first.value); + }) + .trigger('change') + .get('button[data-tests-id="createMonitoring"]') + .not('[disabled]') + .should('not.contain', 'Disabled'); + cy + .server() + .route({ + method: 'POST', + url: Cypress.env('backendUrl') + '/createMC' + }) + .as('newMC') + .get('button[data-tests-id="createMonitoring"]') + .click() + .wait('@newMC'); +}; + +import { buttonCreateMC } from '../mocks/homePage-spec'; +import { + selectVersionAndTypeAndAddFirstRule, + fillRuleDecription, + addCopyAction, + editFirstRule +} from '../mocks/ruleEngine-spec'; + +describe('DCAED - forntend e2e and inagration test', () => { + context('Empty Monitoring Configuration list for service', () => { + it('Loads', () => { + cy.homePage(); + }); + }); + + context('Create new monitoring configuration', () => { + beforeEach(() => { + serverGetDDLData(); + cy.homePage(); + buttonCreateMC() + .click() + .wait(['@templateAPi', '@vfniListAPi']); + }); + + it('After api call success verify create button is disabled', () => { + cy + .get('button[data-tests-id="createMonitoring"]') + .should('be.visible') + .and('be.disabled'); + }); + + it('click on create mc - more then one tab should be visible', () => { + createNewMC(); + cy + .get('ul[p-tabviewnav]') + .children() + .should($el => { + expect($el.length).to.be.greaterThan(1); + }); + }); + + it('should enter rule engine in map tab and create new rule', () => { + createNewMC(); + cy + .get('#ui-tabpanel-1-label') + .should('contain', 'map') + .click(); + selectVersionAndTypeAndAddFirstRule(); + fillRuleDecription('newRule'); + addCopyAction(); + saveAndDoneHttp(); + cy.get('button[data-tests-id="btnDone"]').click(); + cy + .wait('@doneSaveCopyRule') + .get('div[data-tests-id="ruleElement"]') + .should('be.visible') + .then(function($lis) { + expect($lis).to.have.length(1); + expect($lis.eq(0)).to.contain('newRule'); + }); + editFirstRule(); + fillRuleDecription('LiavRule'); + saveAndDoneHttp(); + cy + .get('button[data-tests-id="btnSave"]') + .click() + .wait('@doneSaveCopyRule') + .get('a[data-tests-id="btnBackRule"]') + .click() + .get('div[data-tests-id="ruleElement"]') + .should('be.visible') + .then(function($lis) { + expect($lis).to.have.length(1); + expect($lis.eq(0)).to.contain('LiavRule'); + }); + }); + }); +}); diff --git a/public/cypress/integration/mocks/errorDialog-spec.ts b/public/cypress/integration/mocks/errorDialog-spec.ts new file mode 100644 index 0000000..9141ab2 --- /dev/null +++ b/public/cypress/integration/mocks/errorDialog-spec.ts @@ -0,0 +1,22 @@ +describe('Dialog error - E2E test flow with mock', () => { + describe('Simulate errors', () => { + beforeEach(() => { + cy.getMCListEmpty(); + cy.getTemplateApiError(); + }); + + it('Simulate error dialog is visible', () => { + cy.get('.ui-dialog').should('be.visible'); + }); + + it('Simulate error dialog is close by cancel button', () => { + cy.get('button[data-tests-id="error-cancel"]').click(); + cy.get('.ui-dialog').should('not.be.visible'); + }); + + it('Simulate error dialog is close by X button', () => { + cy.get('.ui-dialog-titlebar-icon').click(); + cy.get('.ui-dialog').should('not.be.visible'); + }); + }); +}); diff --git a/public/cypress/integration/mocks/generalPage-spec.ts b/public/cypress/integration/mocks/generalPage-spec.ts new file mode 100644 index 0000000..1297de8 --- /dev/null +++ b/public/cypress/integration/mocks/generalPage-spec.ts @@ -0,0 +1,84 @@ +describe('General Page - E2E test flow with mock', () => { + describe('Create new MC', () => { + beforeEach(() => { + cy.httpGetDDLData(); + cy.getMCListEmpty(); + cy.homePage(); + cy.get('button[data-tests-id="btn-create-mc"]').click(); + }); + + it('Create button need to be disabled', () => { + cy + .get('button[data-tests-id="createMonitoring"]') + .should('be.visible') + .and('be.disabled'); + }); + + it('Fill form then click to submit verify setting button and constrain ddl', () => { + cy.fillNewMcForm(); + cy + .get('button[data-tests-id="createMonitoring"]') + .as('createButton') + .not('[disabled]') + .should('not.contain', 'Disabled'); + + cy.httpCreateNewMc(); + cy.emptyRuleEngine('Type1'); + + cy.get('@createButton').click(); + cy + .get('#ui-tabpanel-1-label') + .should('contain', 'map') + .click(); + cy + .get('button[data-tests-id="setting-gear"]') + .should('be.visible') + .first() + .click({ multiple: true }); + + cy + .get('.map-setting-list #mappingType > .field-text') + .should('have.value', 'multiple'); + }); + }); + + describe('Tabs after MC created', () => { + beforeEach(() => { + cy.httpGetDDLData(); + cy.getMCListEmpty(); + cy.homePage(); + cy.get('button[data-tests-id="btn-create-mc"]').click(); + cy.fillNewMcForm(); + cy.httpCreateNewMc(); + cy.emptyRuleEngine('Type1'); + cy.get('button[data-tests-id="createMonitoring"]').click(); + }); + + it('should have 4 icon buttons in map tab', () => { + cy + .get('#ui-tabpanel-1-label') + .should('contain', 'map') + .click(); + cy + .get('.map-bar-icon-container>button') + .should('have.length', 2) + .get('.map-bar-icon-container>div>button') + .should('have.length', 2) + .and('be.visible'); + }); + + it('should have 2 icon buttons in supplement tab', () => { + cy + .get('#ui-tabpanel-2-label') + .should('contain', 'supplement') + .click(); + cy + .get('.supplement-bar-icon-container>button') + .should('have.length', 2) + .and('be.visible') + .get('.supplement-bar-icon-container') + .children() + .should('have.length', 3); + }); + }); +}); diff --git a/public/cypress/integration/mocks/homePage-spec.ts b/public/cypress/integration/mocks/homePage-spec.ts new file mode 100644 index 0000000..2889390 --- /dev/null +++ b/public/cypress/integration/mocks/homePage-spec.ts @@ -0,0 +1,209 @@ +export const buttonCreateMC = () => { + return cy.get('button[data-tests-id="btn-create-mc"]'); +}; +export const buttonCreateMCSpan = () => { + return cy.get('span[data-tests-id="btn-span-create-mc"]'); +}; + +export const tableItems = () => { + return cy.get('tr[data-tests-id="monitoringComponentTableItems"]'); +}; + +export const tableHeaders = () => { + return cy.get('tr[data-tests-id="monitoringComponentTableHeaders"]'); +}; +export const tableItemsDeleteButton = () => { + return cy.get('button[data-tests-id="tableItemsButtonDelete"]'); +}; + +export const tableItemsInfoButton = () => { + return cy.get('button[data-tests-id="tableItemsButtonInfo"]'); +}; + +export const popupGetDeleteBtn = () => { + return cy.get('button[data-tests-id="btnDelete"]'); +}; + +export const popupGetCancelBtn = () => { + return cy.get('button[data-tests-id="btnCancel"]'); +}; + +export const getMonitoringConfiguration = () => { + return cy.get('div[data-tests-id="tableItemsMonitoringConfiguration"]'); +}; + +export const doHoverOverFirstLine = () => { + return tableItems() + .first() + .trigger('mouseover'); +}; + +export const doHoverOverFirstLineMonitoringConfiguration = () => { + tableItems() + .first() + .trigger('mouseover'); + return getMonitoringConfiguration(); +}; + +const NUMBER_OF_ITEMS = 12; + +const navigateButtonDisabled = () => { + return buttonCreateMC() + .should('be.visible') + .and('be.disabled') + .get('button[data-tests-id="btn-fab-create-mc"]') + .should('be.visible') + .and('be.disabled'); +}; + +describe('Home Page - E2E test flow with mock', () => { + describe('MC List empty', () => { + beforeEach(() => { + cy.getMCListEmpty(); + cy.homePage(); + }); + + it("Shouldn't have create table with headers", () => { + tableHeaders().should('not.be.visible'); + }); + it("Shouldn't have create table without items", () => { + buttonCreateMC() + .get('div[data-tests-id="new-monitoring-title"]') + .should('contain', 'Monitoring'); + }); + }); + + describe('Check Edit Save and Submit', () => { + beforeEach(() => { + cy.getMCList(); + cy.homePage(); + cy.getMC(); + cy.submitMonitoringComponent(); + cy.saveMonitoringComponent(); + }); + + it('Edit VFCMT', () => { + this.doHoverOverFirstLineMonitoringConfiguration() + .first() + .click({ force: true }); + }); + }); + + describe('MC List', () => { + beforeEach(() => { + cy.getMCList(); + cy.homePage(); + }); + + it('Should have create button on top of the screen', () => { + buttonCreateMC().should('be.visible'); + }); + + it('Should have create table with headers', () => { + tableHeaders().should('be.visible'); + }); + it('Should have create table with items', () => { + tableItems().should('have.length', NUMBER_OF_ITEMS); + }); + }); + + describe('MC List Edit Tests', () => { + beforeEach(() => { + cy.getMCList(); + cy.homePage(); + }); + }); + + describe('MC List Delete Tests', () => { + beforeEach(() => { + cy.getMCList(); + cy.homePage(); + cy.deleteMonitoringComponent(); + cy.deleteMonitoringComponentWithBlueprint(); + }); + it('Mouse hover over item, delete is visible, info not visible', () => { + doHoverOverFirstLine(); + tableItemsDeleteButton().should('be.visible'); + tableItemsInfoButton().should('not.be.visible'); + }); + it('Mouse hover over item, call delete and remove not submitted (call delete without blueprint api)', () => { + tableItems().should('have.length', NUMBER_OF_ITEMS); + doHoverOverFirstLine(); + tableItemsDeleteButton() + .should('be.visible') + .click({ force: true }); + popupGetDeleteBtn().click({ force: true }); + tableItems().should('have.length', NUMBER_OF_ITEMS - 1); + }); + it('Mouse hover over item, call delete and remove submitted (call delete with blueprint api)', () => { + tableItems() + .should('have.length', NUMBER_OF_ITEMS) + .last() + .trigger('mouseover'); + tableItemsDeleteButton() + .should('be.visible') + .click({ force: true }); + popupGetDeleteBtn().click({ force: true }); + tableItems().should('have.length', NUMBER_OF_ITEMS - 1); + }); + it('Mouse hover over item, call delete and cancelOperation', () => { + tableItems().should('have.length', NUMBER_OF_ITEMS); + doHoverOverFirstLine(); + tableItemsDeleteButton() + .should('be.visible') + .click({ force: true }); + popupGetCancelBtn().click({ force: true }); + tableItems().should('have.length', NUMBER_OF_ITEMS); + }); + }); + + describe('Show Info icon', () => { + beforeEach(() => { + cy.getMCList(); + cy.homePageCertified(); + }); + it('Mouse hover over item, delete is not visible, info visible', () => { + doHoverOverFirstLine(); + tableItemsInfoButton().should('be.visible'); + tableItemsDeleteButton().should('not.be.visible'); + }); + }); + + describe('Successfully Entry Home Page Monitoring Configuration', () => { + beforeEach(() => { + cy.getMCListEmpty(); + cy.homePage(); + }); + + it('Buttons looks Assertion', () => { + buttonCreateMC() + .should('contain', 'Create New MC') + .and('be.visible') + .and('not.be.disabled'); + + buttonCreateMCSpan() + .should('contain', 'Add First MC') + .and('be.visible') + .and('not.be.disabled'); + }); + + it('Buttons Functionality Assertion', () => { + buttonCreateMC() + .click() + .get('div[data-tests-id="new-monitoring-title"]') + .should('contain', 'Monitoring'); + }); + }); + + describe('Not Auth Entry Home Page Monitoring Configuration', () => { + it('Buttons disabled when user not owner', () => { + cy.sdcIsOwnerFalse(); + navigateButtonDisabled(); + }); + + it('Buttons disabled when user not checkout', () => { + cy.sdcUserNotCheckout(); + navigateButtonDisabled(); + }); + }); +}); diff --git a/public/cypress/integration/mocks/importPage-spec.ts b/public/cypress/integration/mocks/importPage-spec.ts new file mode 100644 index 0000000..7af904e --- /dev/null +++ b/public/cypress/integration/mocks/importPage-spec.ts @@ -0,0 +1,232 @@ +const loadVfcmtList = () => { + return cy + .server() + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/SERVICE/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/0.1/getVfcmtsForMigration', + response: 'fixture:importVfcmt' + }) + .as('importVfcmtList') + .visit( + 'http://localhost:4300/#/main/SERVICE/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/0.1/import' + ); +}; + +const getVfcmtRefData = data => { + return cy + .server() + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/getVfcmtReferenceData/cb06b8a9-c7e0-4451-a941-89fc338303c9', + response: data + }) + .as('vfcmtRef'); +}; + +const getFlowType = () => { + return cy + .server() + .route({ + method: 'GET', + url: Cypress.env('backendUrl') + '/conf/composition', + response: { + flowTypes: ['Syslog', 'SNMP', 'FOI'] + } + }) + .as('flowTypes'); +}; + +const getVfniList = () => { + return cy + .server() + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/service/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a', + response: 'fixture:serviceDdl' + }) + .as('vfniListApi'); +}; + +const importMCServerApi = () => { + return cy + .server() + .route({ + method: 'POST', + url: Cypress.env('backendUrl') + '/importMC', + response: 'fixture:createMcRes' + }) + .as('importMC'); +}; + +const chooseVfcmtFromDDLWithVersion = () => { + return cy + .get('.ng-input > input') + .click() + .type('liav') + .type('{enter}') + .get('select[data-tests-id="vfcmtVersion"]') + .select('0.1'); +}; + +const getName = () => { + return cy.get('input[data-tests-id="nameMc"]'); +}; +const getDescription = () => { + return cy.get('textarea[data-tests-id="descMc"]'); +}; +const getFlowTypeSelect = () => { + return cy.get('select[data-tests-id="flowTypeDdl"]'); +}; +const getVfniSelect = () => { + return cy.get('select[data-tests-id="vfniDdl"]'); +}; +const getImportButton = () => { + return cy.get('button[data-tests-id="importMonitoring"]'); +}; + +describe('Import Page', () => { + context('First step - get vfcmts list and pick one', () => { + beforeEach(() => { + loadVfcmtList(); + }); + + it('should have values in ddl', () => { + cy + .get('ng-select') + .should('be.visible') + .click() + .get('.ng-option') + .should('contain', 7); + }); + + it('should have value on typing and press enter key', () => { + cy + .get('.ng-input > input') + .click() + .type('liav') + .type('{enter}') + .get('.ng-value-label') + .should('contain', 'LiavSprint10.3'); + }); + + it('should have version when pick vfcmt from list', () => { + cy + .get('.ng-input > input') + .click() + .type('liav') + .type('{enter}') + .get('select[data-tests-id="vfcmtVersion"]') + .should('be.visible') + .and('contain', '0.1'); + }); + }); + + context('second step - fill fileds according to server response', () => { + beforeEach(() => { + loadVfcmtList(); + }); + + it('get flow type true and service is match to context service', () => { + getVfcmtRefData({ + serviceUuid: '06c7d927-4e2f-47e1-a29d-b6ed229ebc0a', + name: 'test', + description: 'test', + flowType: 'FOI', + vfiName: 'LiavSrv' + }); + chooseVfcmtFromDDLWithVersion(); + getName() + .should('have.value', 'test') + .and('be.disabled'); + getDescription() + .should('have.value', 'test') + .and('be.disabled'); + getFlowTypeSelect().should('have.value', 'FOI'); + getVfniSelect().should('have.value', 'LiavSrv'); + getImportButton() + .not('[disabled]') + .should('not.contain', 'Disabled'); + }); + + it('get flow type true but service not match', () => { + getVfcmtRefData({ + serviceUuid: '555555-4e2f-47e1-a29d-b6ed229ebc0a', + name: 'test', + description: 'test', + flowType: 'FOI', + vfiName: 'ChcoSrv' + }); + getVfniList(); + chooseVfcmtFromDDLWithVersion(); + getFlowTypeSelect().should('have.value', 'FOI'); + }); + + it('get flow type false service match', () => { + getVfcmtRefData({ + serviceUuid: '06c7d927-4e2f-47e1-a29d-b6ed229ebc0a', + name: 'test', + description: 'test', + vfiName: 'LiavSrv' + }); + getImportButton() + .should('be.visible') + .and('be.disabled'); + getFlowType(); + chooseVfcmtFromDDLWithVersion(); + getName() + .should('have.value', 'test') + .and('be.disabled'); + getDescription() + .should('have.value', 'test') + .and('be.disabled'); + getVfniSelect().should('have.value', 'LiavSrv'); + }); + + it('get flow type false service not match', () => { + getVfcmtRefData({ + serviceUuid: '555555-4e2f-47e1-a29d-b6ed229ebc0a', + name: 'test', + description: 'test', + vfiName: 'ChcoSrv' + }); + getImportButton() + .should('be.visible') + .and('be.disabled'); + getFlowType(); + getVfniList(); + chooseVfcmtFromDDLWithVersion(); + getName().should('have.value', ''); + getDescription().should('have.value', ''); + }); + }); + + context('final step - import vfcmt and getting cdump for tabs', () => { + beforeEach(() => { + loadVfcmtList(); + getVfcmtRefData({ + serviceUuid: '06c7d927-4e2f-47e1-a29d-b6ed229ebc0a', + name: 'test', + description: 'test', + flowType: 'FOI', + vfiName: 'LiavSrv' + }); + chooseVfcmtFromDDLWithVersion(); + }); + + it('should get cdump after import and vfcmt import not visible', () => { + importMCServerApi(); + getImportButton().click({ force: true }); + cy + .get('.import-wrapper') + .should('not.be.visible') + .get('#ui-tabpanel-1-label') + .should('contain', 'map'); + }); + }); +}); diff --git a/public/cypress/integration/mocks/ruleEngine-spec.ts b/public/cypress/integration/mocks/ruleEngine-spec.ts new file mode 100644 index 0000000..9a75b87 --- /dev/null +++ b/public/cypress/integration/mocks/ruleEngine-spec.ts @@ -0,0 +1,168 @@ +export const mappingTragetDDL = () => { + return cy.get('select[data-tests-id="mappingDdl"]'); +}; + +export const selectVersionAndTypeAndAddFirstRule = () => { + return cy + .get('select[data-tests-id="selectVersion"]') + .select('4.1') + .get('select[data-tests-id="selectEventType"]') + .select('syslog') + .get('button[data-tests-id="btnAddFirstRule"]') + .click(); +}; + +export const fillRuleDecription = text => { + return cy + .get('input[data-tests-id="inputDescription"]') + .clear() + .type(text); +}; + +export const addCopyAction = () => { + return cy + .get('select[data-tests-id="selectAction"]') + .select('copy') + .get('button[data-tests-id="btnAddAction"]') + .click() + .get('input[data-tests-id="valueInput"]') + .type('A') + .get('span[data-tests-id="openTargetTree"]') + .click() + .get('.bottom-select') + .should('be.visible') + .find('.toggle-children') + .first() + .click() + .get('span[data-tests-id="targetNode"]') + .should(node => { + expect(node.eq(0)).to.contain('commonEventHeader'); + expect(node.eq(1)).to.contain('domain'); + }) + .each(($el, index) => { + if (index === 1) { + cy.wrap($el).click(); + } + }); +}; + +export const editFirstRule = () => { + return cy + .get('div[data-tests-id="ruleElement"]') + .first() + .trigger('mouseover') + .get('button[data-tests-id="editRule"]') + .should('be.visible') + .click(); +}; + +export const translateValue = () => { + return '{"processing":[{"phase":"snmp_map","processors":[{"array":"varbinds","datacolumn":"varbind_value","keycolumn":"varbind_oid","class":"SnmpConvertor"},{"phase":"sto2","class":"RunPhase"}]},{"phase":"sto2","processors":[{"updates":{"event.commonEventHeader.domain":"a"},"class":"Set"}]},{"phase":"sto2","processors":[{"phase":"map_publish","class":"RunPhase"}]}]}'; +}; + +describe('Rule engine - E2E test flow with mock', () => { + describe('Mapping target select', () => { + beforeEach(() => { + cy.httpGetDDLData(); + cy.getMCListEmpty(); + cy.homePage(); + cy.get('button[data-tests-id="btn-create-mc"]').click(); + cy.fillNewMcForm(); + cy.httpCreateNewMc(); + cy.emptyRuleEngine('Type1'); + cy.get('button[data-tests-id="createMonitoring"]').click(); + cy + .get('#ui-tabpanel-1-label') + .should('contain', 'map') + .click(); + }); + + it('should exist and contain options', () => { + mappingTragetDDL() + .should('be.visible') + .contains('json'); + }); + + it('should page refrash after change select value in mapping target ddl', () => { + cy.httpTargetTree(); + cy + .get('select[data-tests-id="selectVersion"]') + .select('4.1') + .get('select[data-tests-id="selectEventType"]') + .select('syslog') + .get('button[data-tests-id="btnAddFirstRule"]') + .should('be.visible'); + cy.emptyRuleEngine('json'); + mappingTragetDDL() + .select('json') + .get('select[data-tests-id="selectVersion"]') + .should('have.value', null); + }); + }); + + describe('Translate And Save Rule List', () => { + beforeEach(() => { + cy.httpGetDDLData(); + cy.getMCListEmpty(); + cy.homePage(); + cy.get('button[data-tests-id="btn-create-mc"]').click(); + cy.fillNewMcForm(); + cy.httpCreateNewMc(); + cy.emptyRuleEngine('Type1'); + cy + .get('button[data-tests-id="createMonitoring"]') + .click() + .get('#ui-tabpanel-1-label') + .should('contain', 'map') + .click(); + cy.httpTargetTree(); + selectVersionAndTypeAndAddFirstRule(); + fillRuleDecription('newRule'); + addCopyAction(); + cy.doneSaveRule(); + }); + + context('Play with save, back and done button', () => { + it('should rule exist in list after save rule and click back', () => { + cy + .get('button[data-tests-id="btnSave"]') + .click() + .get('a[data-tests-id="btnBackRule"]') + .click() + .get('div[data-tests-id="ruleElement"]') + .should('be.visible') + .then(function($lis) { + expect($lis).to.have.length(1); + expect($lis.eq(0)).to.contain('newRule'); + }); + }); + + it('should rule exist in list after done edit rule', () => { + cy + .get('button[data-tests-id="btnDone"]') + .click() + .get('div[data-tests-id="ruleElement"]') + .should('be.visible') + .then(function($lis) { + expect($lis).to.have.length(1); + expect($lis.eq(0)).to.contain('newRule'); + }); + }); + }); + + context('Translate', () => { + it('should open advanced setting when translate successfuly', () => { + cy.get('button[data-tests-id="btnDone"]').click(); + cy.httpTransalte(); + cy + .get('button[data-tests-id="btnTranslate"]') + .click() + .get('.toast-container') + .should('be.visible') + .get('.map-setting-list > #Type1 > input') + .should('be.visible') + .and('have.value', translateValue()); + }); + }); + }); +}); diff --git a/public/cypress/plugins/cy-ts-preprocessor.js b/public/cypress/plugins/cy-ts-preprocessor.js new file mode 100644 index 0000000..7f0bba9 --- /dev/null +++ b/public/cypress/plugins/cy-ts-preprocessor.js @@ -0,0 +1,26 @@ +const wp = require('@cypress/webpack-preprocessor') + +const webpackOptions = { + resolve: { + extensions: ['.ts', '.js'] + }, + module: { + rules: [ + { + test: /\.ts$/, + exclude: [/node_modules/], + use: [ + { + loader: 'ts-loader' + } + ] + } + ] + } +} + +const options = { + webpackOptions +} + +module.exports = wp(options) diff --git a/public/cypress/plugins/index.js b/public/cypress/plugins/index.js new file mode 100644 index 0000000..78e782f --- /dev/null +++ b/public/cypress/plugins/index.js @@ -0,0 +1,5 @@ +const cypressTypeScriptPreprocessor = require('./cy-ts-preprocessor') + +module.exports = on => { + on('file:preprocessor', cypressTypeScriptPreprocessor) +} diff --git a/public/cypress/support/commands.ts b/public/cypress/support/commands.ts new file mode 100644 index 0000000..ee8623c --- /dev/null +++ b/public/cypress/support/commands.ts @@ -0,0 +1,31 @@ +declare namespace Cypress { + interface Chainable { + getTemplateApiError: typeof getTemplateApiError; + } +} + +function getTemplateApiError(): void { + cy.server().route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/service/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a', + status: 500, + response: { + requestError: { + policyException: { + messageId: 'POL5000', + text: 'Error: Internal Server Error. Please try again later.', + variables: [], + formattedErrorMessage: + 'Error: Internal Server Error. Please try again later.' + } + }, + notes: 'Error: Requested "123" resource was not found.' + } + }); + cy.homePage(); + cy.get('button[data-tests-id="btn-create-mc"]').click(); +} + +Cypress.Commands.add('getTemplateApiError', getTemplateApiError); diff --git a/public/cypress/support/generalCommands.ts b/public/cypress/support/generalCommands.ts new file mode 100644 index 0000000..fc87acc --- /dev/null +++ b/public/cypress/support/generalCommands.ts @@ -0,0 +1,50 @@ +declare namespace Cypress { + interface Chainable { + httpGetDDLData: typeof httpGetDDLData; + fillNewMcForm: typeof fillNewMcForm; + httpCreateNewMc: typeof httpCreateNewMc; + } +} + +function httpGetDDLData(): void { + cy + .server() + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/service/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a', + response: 'fixture:serviceDdl' + }) + .as('vfniListApi') + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + '/getResourcesByMonitoringTemplateCategory', + response: [{ name: 'AviStone1234' }] + }) + .as('templateAPi'); +} + +function fillNewMcForm() { + cy.get('input[data-tests-id="nameMc"]').type('new mc'); + cy.get('textarea[data-tests-id="descMc"]').type('Hello Description'); + cy.get('select[data-tests-id="templateDdl"]').select('AviStone1234'); + cy.get('select[data-tests-id="vfniDdl"]').select('LiavSrv'); +} + +function httpCreateNewMc() { + cy.server(); + cy + .route({ + method: 'POST', + url: Cypress.env('backendUrl') + '/createMC', + response: 'fixture:createMcRes' + }) + .as('newMC'); +} + +// Add cypress commands +Cypress.Commands.add('httpGetDDLData', httpGetDDLData); +Cypress.Commands.add('fillNewMcForm', fillNewMcForm); +Cypress.Commands.add('httpCreateNewMc', httpCreateNewMc); diff --git a/public/cypress/support/homeCommands.ts b/public/cypress/support/homeCommands.ts new file mode 100644 index 0000000..6f3349c --- /dev/null +++ b/public/cypress/support/homeCommands.ts @@ -0,0 +1,147 @@ +declare namespace Cypress { + interface Chainable { + homePage: typeof homePage; + homePageCertified: typeof homePageCertified; + sdcIsOwnerFalse: typeof sdcIsOwnerFalse; + sdcUserNotCheckout: typeof sdcUserNotCheckout; + getMCList: typeof getMCList; + getMCListEmpty: typeof getMCListEmpty; + deleteMonitoringComponent: typeof deleteMonitoringComponent; + deleteMonitoringComponentWithBlueprint: typeof deleteMonitoringComponentWithBlueprint; + submitMonitoringComponent: typeof submitMonitoringComponent; + saveMonitoringComponent: typeof saveMonitoringComponent; + getMC: typeof getMC; + } +} + +// functionality +function sdcIsOwnerFalse(): void { + cy.visit( + 'home?userId=cs0008&userRole=DESIGNER&displayType=context&contextType=SERVICE&uuid=b1645734-b812-4cd7-a0cc-5b5843940ad6&lifecycleState=NOT_CERTIFIED_CHECKOUT&isOwner=false' + ); +} + +function sdcUserNotCheckout(): void { + cy.visit( + 'home?userId=cs0008&userRole=DESIGNER&displayType=context&contextType=SERVICE&uuid=b1645734-b812-4cd7-a0cc-5b5843940ad6&lifecycleState=READY_FOR_CERTIFICATION&isOwner=true' + ); +} + +function homePage(): void { + cy.visit( + 'home?userId=cs0008&userRole=DESIGNER&displayType=context&contextType=SERVICES&uuid=06c7d927-4e2f-47e1-a29d-b6ed229ebc0a&lifecycleState=NOT_CERTIFIED_CHECKOUT&isOwner=true&version=0.1' + ); +} + +function homePageCertified(): void { + cy.visit( + 'home?userId=cs0008&userRole=DESIGNER&displayType=context&contextType=SERVICES&uuid=06c7d927-4e2f-47e1-a29d-b6ed229ebc0a&lifecycleState=CERTIFIED_CHECKOUT&isOwner=true&version=0.1' + ); +} + +function deleteMonitoringComponent(): void { + cy + .server() + .route({ + method: 'DELETE', + url: + Cypress.env('backendUrl') + + '/SERVICES/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/vfb53dd48360ff4fa2b66e6ceb1961bd9b0/cba37ed8-94e1-406f-b4f5-b5edbc31ac85/deleteVfcmtReference', + response: '{}' + }) + .as('deleteMonitoringComponent'); +} + +function saveMonitoringComponent(): void { + cy + .server() + .route({ + method: 'POST', + url: + Cypress.env('backendUrl') + + '/SERVICES/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/vfb53dd48360ff4fa2b66e6ceb1961bd9b0/saveComposition/cba37ed8-94e1-406f-b4f5-b5edbc31ac85', + response: '{}' + }) + .as('saveMonitoringComponent'); +} + +function submitMonitoringComponent(): void { + cy + .server() + .route({ + method: 'POST', + url: + Cypress.env('backendUrl') + + '/SERVICES/createBluePrint/cba37ed8-94e1-406f-b4f5-b5edbc31ac85/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/vfb53dd48360ff4fa2b66e6ceb1961bd9b0/', + response: '{}' + }) + .as('submitMonitoringComponent'); +} + +function deleteMonitoringComponentWithBlueprint(): void { + cy + .server() + .route({ + method: 'DELETE', + url: + Cypress.env('backendUrl') + + '/SERVICES/teSt.__.monitoring---TempLATE.6hnc/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/dump0/64471437-8feb-40d9-a8b0-9407a81dd5c0/deleteVfcmtReference', + response: '{}' + }) + .as('deleteMonitoringComponentWithBlueprint'); +} + +function getMCList(): void { + cy + .server() + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/SERVICES/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/0.1/monitoringComponents', + response: 'fixture:monitoringComponentsMock' + }) + .as('mcList'); +} + +function getMC(): void { + cy + .server() + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/getMC/cba37ed8-94e1-406f-b4f5-b5edbc31ac85', + response: 'fixture:getMCMock' + }) + .as('getMC'); +} + +function getMCListEmpty(): void { + cy + .server() + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/SERVICES/06c7d927-4e2f-47e1-a29d-b6ed229ebc0a/0.1/monitoringComponents', + response: '{}' + }) + .as('mcListEmpty'); +} + +// Add cypress commands +Cypress.Commands.add('homePage', homePage); +Cypress.Commands.add('homePageCertified', homePageCertified); +Cypress.Commands.add('sdcIsOwnerFalse', sdcIsOwnerFalse); +Cypress.Commands.add('sdcUserNotCheckout', sdcUserNotCheckout); +Cypress.Commands.add('getMCList', getMCList); +Cypress.Commands.add('getMCListEmpty', getMCListEmpty); +Cypress.Commands.add('deleteMonitoringComponent', deleteMonitoringComponent); +Cypress.Commands.add( + 'deleteMonitoringComponentWithBlueprint', + deleteMonitoringComponentWithBlueprint +); +Cypress.Commands.add('submitMonitoringComponent', submitMonitoringComponent); +Cypress.Commands.add('saveMonitoringComponent', saveMonitoringComponent); +Cypress.Commands.add('getMC', getMC); diff --git a/public/cypress/support/index.js b/public/cypress/support/index.js new file mode 100644 index 0000000..2f70722 --- /dev/null +++ b/public/cypress/support/index.js @@ -0,0 +1,23 @@ +// *********************************************************** +// This example support/index.js is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** + +// Import commands.js using ES2015 syntax: +import './commands'; +import './homeCommands'; +import './generalCommands'; +import './ruleEngineCommands'; + +// Alternatively you can use CommonJS syntax: +// require('./commands') diff --git a/public/cypress/support/ruleEngineCommands.ts b/public/cypress/support/ruleEngineCommands.ts new file mode 100644 index 0000000..2142e7f --- /dev/null +++ b/public/cypress/support/ruleEngineCommands.ts @@ -0,0 +1,71 @@ +declare namespace Cypress { + interface Chainable { + emptyRuleEngine: typeof emptyRuleEngine; + httpTargetTree: typeof httpTargetTree; + doneSaveRule: typeof doneSaveRule; + httpTransalte: typeof httpTransalte; + } +} + +function emptyRuleEngine(targetFiled) { + cy.server(); + cy + .route({ + method: 'GET', + url: `${Cypress.env( + 'backendUrl' + )}/rule-editor/rule/6d436c07-8006-4335-8c84-d65b4740f8d6/map/n.1517823219961.0/${targetFiled}`, + response: {} + }) + .as('serverRuleList') + .route({ + method: 'GET', + url: Cypress.env('backendUrl') + '/rule-editor/list-events-by-versions', + response: 'fixture:list-events-by-version' + }) + .as('serverEventsAndVersion'); +} + +function httpTargetTree() { + cy.server(); + cy + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + '/rule-editor/definition/4.1/syslogFields', + response: 'fixture:syslogTargetTree' + }) + .as('targetData'); +} + +function doneSaveRule() { + cy.server(); + cy + .route({ + method: 'POST', + url: + Cypress.env('backendUrl') + + '/rule-editor/rule/6d436c07-8006-4335-8c84-d65b4740f8d6/map/n.1517823219961.0/Type1', + response: 'fixture:doneSaveSimpleCopy' + }) + .as('doneSaveCopyRule'); +} + +function httpTransalte() { + cy.server(); + cy + .route({ + method: 'GET', + url: + Cypress.env('backendUrl') + + '/rule-editor/rule/translate/6d436c07-8006-4335-8c84-d65b4740f8d6/map/n.1517823219961.0/Type1', + response: 'fixture:TranslateSimpleCopy' + }) + .as('TranslateSimpleCopy'); +} + +// Add cypress commands +Cypress.Commands.add('emptyRuleEngine', emptyRuleEngine); +Cypress.Commands.add('httpTargetTree', httpTargetTree); +Cypress.Commands.add('doneSaveRule', doneSaveRule); +Cypress.Commands.add('httpTransalte', httpTransalte); diff --git a/public/cypress/tsconfig.json b/public/cypress/tsconfig.json new file mode 100644 index 0000000..342bcb4 --- /dev/null +++ b/public/cypress/tsconfig.json @@ -0,0 +1,24 @@ +{ + "extends": "../tsconfig.json", + "include": [ + "integration/**/*.ts", + "support/**/*.ts", + "../node_modules/cypress", + "../node_modules/@types/mocha" + ], + "compilerOptions": { + "experimentalDecorators": true, + "skipLibCheck": true, + "declaration": false, + "removeComments": true, + "emitDecoratorMetadata": true, + "noImplicitAny": false, + "noImplicitReturns": true, + "noImplicitUseStrict": false, + "sourceMap": true, + "pretty": true, + "noLib": false, + "typeRoots": ["../../node_modules/@types", "../../node_modules"], + "types": ["cypress", "mocha", "jasmine", "node"] + } +} diff --git a/public/e2e/app.e2e-spec.ts b/public/e2e/app.e2e-spec.ts new file mode 100644 index 0000000..004463f --- /dev/null +++ b/public/e2e/app.e2e-spec.ts @@ -0,0 +1,14 @@ +import { AppPage } from './app.po'; + +describe('dcae-fe App', () => { + let page: AppPage; + + beforeEach(() => { + page = new AppPage(); + }); + + it('should display welcome message', () => { + page.navigateTo(); + expect(page.getParagraphText()).toEqual('Welcome to app!'); + }); +}); diff --git a/public/e2e/app.po.ts b/public/e2e/app.po.ts new file mode 100644 index 0000000..82ea75b --- /dev/null +++ b/public/e2e/app.po.ts @@ -0,0 +1,11 @@ +import { browser, by, element } from 'protractor'; + +export class AppPage { + navigateTo() { + return browser.get('/'); + } + + getParagraphText() { + return element(by.css('app-root h1')).getText(); + } +} diff --git a/public/e2e/tsconfig.e2e.json b/public/e2e/tsconfig.e2e.json new file mode 100644 index 0000000..1d9e5ed --- /dev/null +++ b/public/e2e/tsconfig.e2e.json @@ -0,0 +1,14 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/e2e", + "baseUrl": "./", + "module": "commonjs", + "target": "es5", + "types": [ + "jasmine", + "jasminewd2", + "node" + ] + } +} diff --git a/public/jest.config.js b/public/jest.config.js new file mode 100644 index 0000000..e1836c0 --- /dev/null +++ b/public/jest.config.js @@ -0,0 +1,39 @@ +module.exports = { + // mapCoverage: true, + globals: { + __TS_CONFIG__: { + target: 'es6', + module: 'commonjs', + moduleResolution: 'node' + }, + 'ts-jest': { + tsConfigFile: 'src/tsconfig.spec.json' + }, + __TRANSFORM_HTML__: true + }, + testRegex: '(/__tests__/.*|\\.(test|spec))\\.(ts|js)$', + setupTestFrameworkScriptFile: '<rootDir>/src/setupJest.ts', + transform: { + '^.+\\.(ts|html)$': + '<rootDir>/node_modules/jest-preset-angular/preprocessor.js' + }, + transformIgnorePatterns: ['node_modules/(?!@ngrx)'], + collectCoverageFrom: [ + 'src/app/module/**/*.{ts}', + '!src/app/*.{ts}', + '!src/app/**/*.{js}', + '!src/app/environment/*.{ts}', + '!src/app/language/*.{ts}', + '!src/app/**/*.module.{ts}', + '!src/app/**/*.interface.{ts}', + '!src/app/**/*.state.{ts}', + '!src/app/**/*.entity.{ts}' + ], + moduleFileExtensions: ['ts', 'tsx', 'js', 'json'], + testPathIgnorePatterns: ['/node_modules/', '/dist/', 'src/app/*.{js}'], + testResultsProcessor: 'jest-sonar-reporter', + moduleNameMapper: { + 'app/(.*)': '<rootDir>/src/app/$1', + '@common/(.*)': '<rootDir>/src/app/common/$1' + } +}; diff --git a/public/karma.conf.js b/public/karma.conf.js new file mode 100644 index 0000000..af139fa --- /dev/null +++ b/public/karma.conf.js @@ -0,0 +1,33 @@ +// Karma configuration file, see link for more information +// https://karma-runner.github.io/1.0/config/configuration-file.html + +module.exports = function (config) { + config.set({ + basePath: '', + frameworks: ['jasmine', '@angular/cli'], + plugins: [ + require('karma-jasmine'), + require('karma-chrome-launcher'), + require('karma-jasmine-html-reporter'), + require('karma-coverage-istanbul-reporter'), + require('@angular/cli/plugins/karma') + ], + client:{ + clearContext: false // leave Jasmine Spec Runner output visible in browser + }, + coverageIstanbulReporter: { + reports: [ 'html', 'lcovonly' ], + fixWebpackSourcePaths: true + }, + angularCli: { + environment: 'dev' + }, + reporters: ['progress', 'kjhtml'], + port: 9876, + colors: true, + logLevel: config.LOG_INFO, + autoWatch: true, + browsers: ['Chrome'], + singleRun: false + }); +}; diff --git a/public/package.json b/public/package.json new file mode 100644 index 0000000..c79a42b --- /dev/null +++ b/public/package.json @@ -0,0 +1,117 @@ +{ + "name": "dcae-fe", + "version": "0.0.0", + "license": "MIT", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build --prod --deploy-url=/dcae", + "test": "ng test", + "test:jest": "jest --watch", + "test:ci": "jest --runInBand", + "test:coverage": "jest --coverage", + "lint": "ng lint", + "e2e": "ng e2e", + "cy:run": "cypress run", + "cy:open": "cypress open", + "cy:report": "cypress run --reporter mochawesome", + "war-local": "npm run build && cd dist && jar -cvf rule_engine.war *", + "war-remote": "mvn clean install", + "storybook": "start-storybook -p 9001 -c .storybook", + "build-storybook": "build-storybook", + "format": + "prettier --write \"src/{app,environments,assets}/**/*{.ts,.js,.json,.css,.scss}\"", + "format:fix": "pretty-quick --staged", + "precommit": "pretty-quick --staged" + }, + "jest": { + "preset": "jest-preset-angular", + "roots": ["<rootDir>/src"], + "setupTestFrameworkScriptFile": "<rootDir>/src/setupJest.ts", + "globals": { + "ts-jest": { + "tsConfigFile": "src/tsconfig.spec.json" + }, + "__TRANSFORM_HTML__": true + } + }, + "private": true, + "dependencies": { + "@angular/animations": "^5.1.0", + "@angular/cdk": "^5.1.1", + "@angular/common": "^5.1.0", + "@angular/compiler": "^5.1.0", + "@angular/core": "^5.1.0", + "@angular/forms": "^5.1.0", + "@angular/http": "^5.1.0", + "@angular/material": "5.1.1", + "@angular/platform-browser": "^5.1.0", + "@angular/platform-browser-dynamic": "^5.1.0", + "@angular/router": "^5.1.0", + "@bahmutov/add-typescript-to-cypress": "^2.0.0", + "@ng-select/ng-select": "^0.26.2", + "angular-tree-component": "^7.0.1", + "core-js": "^2.4.1", + "feather-icons": "^4.5.0", + "font-awesome": "^4.7.0", + "lodash": "^4.17.5", + "material-design-icons": "^3.0.1", + "mobx": "^4.1.0", + "mobx-angular": "^3.0.1", + "ngx-toastr": "^8.2.1", + "papaparse": "^4.3.6", + "pretty-checkbox": "3.0.3", + "primeng": "^5.0.2", + "ramda": "^0.25.0", + "rxjs": "^5.5.6", + "uuid": "^3.2.1", + "zone.js": "^0.8.19" + }, + "devDependencies": { + "@angular/cli": "^1.7.3", + "@angular/compiler-cli": "^5.1.0", + "@angular/language-service": "^5.1.0", + "@storybook/addon-actions": "3.4.0-alpha.9", + "@storybook/addon-knobs": "3.4.0-alpha.9", + "@storybook/addon-links": "3.4.0-alpha.9", + "@storybook/addon-notes": "3.4.0-alpha.9", + "@storybook/addon-options": "3.4.0-alpha.9", + "@storybook/addons": "3.4.0-alpha.9", + "@storybook/angular": "^3.4.0-alpha.9", + "@types/jasmine": "~2.8.3", + "@types/jasminewd2": "~2.0.2", + "@types/jest": "^22.2.0", + "@types/node": "^9.4.6", + "angular2-template-loader": "^0.6.2", + "babel-core": "^6.26.0", + "codelyzer": "^4.0.1", + "cypress": "1.4.2", + "electron": "^1.8.3", + "husky": "^0.14.3", + "jasmine-core": "~2.8.0", + "jasmine-spec-reporter": "~4.2.1", + "jest": "^22.4.2", + "jest-preset-angular": "^5.2.1", + "jest-sonar-reporter": "^1.3.0", + "karma": "~2.0.0", + "karma-chrome-launcher": "~2.2.0", + "karma-cli": "~1.0.1", + "karma-coverage-istanbul-reporter": "^1.2.1", + "karma-jasmine": "~1.1.0", + "karma-jasmine-html-reporter": "^0.2.2", + "lint-staged": "^7.0.0", + "mobx-devtools-mst": "^0.9.14", + "mobx-remotedev": "^0.2.8", + "mocha": "^5.0.0", + "mocha-rp-reporter": "^1.0.12", + "mochawesome": "^3.0.2", + "prettier": "^1.11.1", + "pretty-quick": "^1.4.1", + "protractor": "~5.1.2", + "ts-node": "~3.2.0", + "tslint": "~5.9.1", + "tslint-config-prettier": "^1.10.0", + "typescript": "~2.5.3", + "wallaby-webpack": "^3.9.5" + } +} diff --git a/public/protractor.conf.js b/public/protractor.conf.js new file mode 100644 index 0000000..7ee3b5e --- /dev/null +++ b/public/protractor.conf.js @@ -0,0 +1,28 @@ +// Protractor configuration file, see link for more information +// https://github.com/angular/protractor/blob/master/lib/config.ts + +const { SpecReporter } = require('jasmine-spec-reporter'); + +exports.config = { + allScriptsTimeout: 11000, + specs: [ + './e2e/**/*.e2e-spec.ts' + ], + capabilities: { + 'browserName': 'chrome' + }, + directConnect: true, + baseUrl: 'http://localhost:4200/', + framework: 'jasmine', + jasmineNodeOpts: { + showColors: true, + defaultTimeoutInterval: 30000, + print: function() {} + }, + onPrepare() { + require('ts-node').register({ + project: 'e2e/tsconfig.e2e.json' + }); + jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } })); + } +}; diff --git a/public/reportportal.json b/public/reportportal.json new file mode 100644 index 0000000..a30a4b2 --- /dev/null +++ b/public/reportportal.json @@ -0,0 +1,9 @@ +// "reporter": "mocha-rp-reporter", +// "reporterOptions": { +// "configOptions": { +// "token": "fd8d16ea-b413-4ee0-9e39-2bf486a3ae64", +// "endpoint": "http://reportportal.intl.att.com:8080/api/v1", +// "launch": "ym903w_TEST_EXAMPLE", +// "project": "dcea-d" +// } +// } diff --git a/public/src/app/api/feather-pipe.ts b/public/src/app/api/feather-pipe.ts new file mode 100644 index 0000000..7a0715d --- /dev/null +++ b/public/src/app/api/feather-pipe.ts @@ -0,0 +1,19 @@ +import { DomSanitizer } from '@angular/platform-browser'; +import { Pipe, PipeTransform } from '@angular/core'; + +import * as feather from 'feather-icons/dist/feather'; + +@Pipe({ name: 'feather' }) +export class FeatherIconsPipe implements PipeTransform { + constructor(private sanitizer: DomSanitizer) {} + + transform(icon: string, size: number = 24, fill: string = 'none') { + return this.sanitizer.bypassSecurityTrustHtml( + feather.icons[icon].toSvg({ + width: size, + height: size, + fill: fill + }) + ); + } +} diff --git a/public/src/app/api/rest-api.service.spec.ts b/public/src/app/api/rest-api.service.spec.ts new file mode 100644 index 0000000..ce921cb --- /dev/null +++ b/public/src/app/api/rest-api.service.spec.ts @@ -0,0 +1,26 @@ +import { TestBed, inject } from '@angular/core/testing'; +import { HttpModule } from '@angular/http'; +import { RestApiService } from './rest-api.service'; +import { v4 as genrateUuid } from 'uuid'; + +describe('RestApiService', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + imports: [HttpModule], + providers: [RestApiService] + }); + }); + + it( + 'should be created', + inject([RestApiService], (service: RestApiService) => { + expect(service).toBeTruthy(); + }) + ); + + it('should genrate deffrent uuid each time for request id', () => { + const firstUuid = genrateUuid(); + const secondUuid = genrateUuid(); + expect(firstUuid !== secondUuid).toBe(true); + }); +}); diff --git a/public/src/app/api/rest-api.service.ts b/public/src/app/api/rest-api.service.ts new file mode 100644 index 0000000..ba5cc54 --- /dev/null +++ b/public/src/app/api/rest-api.service.ts @@ -0,0 +1,179 @@ +import { Injectable } from '@angular/core'; +import { + Http, + Response, + Headers, + RequestOptions, + URLSearchParams +} from '@angular/http'; +import { Observable } from 'rxjs/Observable'; +// Import RxJs required methods +import 'rxjs/add/operator/map'; +import 'rxjs/add/operator/catch'; +import 'rxjs/add/observable/throw'; +import { environment } from '../../environments/environment'; +import { v4 as uuidGenarator } from 'uuid'; + +@Injectable() +export class RestApiService { + options: RequestOptions; + headers: Headers; + baseUrl: string; + + constructor(private http: Http) { + this.baseUrl = `${environment.apiBaseUrl}`; + this.headers = new Headers({ + 'Content-Type': 'application/json', + USER_ID: 'ym903w' + }); + this.options = new RequestOptions({ headers: this.headers }); + } + + getVfcmtsForMigration(params) { + const { contextType, uuid, version } = params; + const url = `${ + this.baseUrl + }/${contextType}/${uuid}/${version}/getVfcmtsForMigration`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json() || 'Server error'); + }); + } + + getVfcmtReferenceData(vfcmtUUID) { + const url = `${this.baseUrl}/getVfcmtReferenceData/${vfcmtUUID}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + getFlowType() { + const url = `${this.baseUrl}/conf/composition`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + createNewVFCMT(params) { + const url = `${this.baseUrl}/createMC`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .post(url, params, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json() || 'Server error'); + }); + } + + importVFCMT(params) { + const url = `${this.baseUrl}/importMC`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .post(url, params, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json() || 'Server error'); + }); + } + + getServiceInstances(serviceID) { + const url = `${this.baseUrl}/service/${serviceID}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json() || 'Server error'); + }); + } + + getTemplateResources() { + const url = `${this.baseUrl}/getResourcesByMonitoringTemplateCategory`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + getMonitoringComponents(params) { + const { contextType, uuid, version } = params; + const url = `${ + this.baseUrl + }/${contextType}/${uuid}/${version}/monitoringComponents`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + deleteMonitoringComponent(params, vfcmtUuid, vfiName) { + const { contextType, uuid } = params; + const url = `${ + this.baseUrl + }/${contextType}/${uuid}/${vfiName}/${vfcmtUuid}/deleteVfcmtReference`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .delete(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + deleteMonitoringComponentWithBlueprint( + params, + monitoringComponentName, + vfcmtUuid, + vfiName + ) { + const { contextType, uuid } = params; + const url = `${ + this.baseUrl + }/${contextType}/${monitoringComponentName}/${uuid}/${vfiName}/${vfcmtUuid}/deleteVfcmtReference`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .delete(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + getCompositionMonitoringComponent(vfcmtUuid) { + const url = `${this.baseUrl}/getMC/${vfcmtUuid}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + saveMonitoringComponent(params) { + const { contextType, serviceUuid, vfiName, vfcmtUuid, cdump } = params; + const url = `${ + this.baseUrl + }/${contextType}/${serviceUuid}/${vfiName}/saveComposition/${vfcmtUuid}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .post(url, cdump, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } + + submitMonitoringComponent(params) { + const { contextType, serviceUuid, vfiName, vfcmtUuid, flowType } = params; + const url = `${ + this.baseUrl + }/${contextType}/createBluePrint/${vfcmtUuid}/${serviceUuid}/${vfiName}`; + this.options.headers.set('X-ECOMP-RequestID', uuidGenarator()); + return this.http + .post(url, {}, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => Observable.throw(error.json() || 'Server error')); + } +} diff --git a/public/src/app/app-routing.module.ts b/public/src/app/app-routing.module.ts new file mode 100644 index 0000000..b2d1531 --- /dev/null +++ b/public/src/app/app-routing.module.ts @@ -0,0 +1,27 @@ +import { NgModule } from '@angular/core'; +import { RouterModule, Routes } from '@angular/router'; + +import { HomeComponent } from './home/home.component'; +import { MainComponent } from './main/main.component'; + +const routes: Routes = [ + { + path: '', + redirectTo: '/home', + pathMatch: 'full' + }, + { + path: 'home', + component: HomeComponent + }, + { + path: 'main/:contextType/:uuid/:version/:mcid', + component: MainComponent + } +]; + +@NgModule({ + imports: [RouterModule.forRoot(routes, { useHash: true })], + exports: [RouterModule] +}) +export class AppRoutingModule {} diff --git a/public/src/app/app.component.html b/public/src/app/app.component.html new file mode 100644 index 0000000..adb06f1 --- /dev/null +++ b/public/src/app/app.component.html @@ -0,0 +1,7 @@ +<!-- <div class="container"> --> +<main [@slideAnimation]="getRouterOutletState(o)"> + <app-error-dialog></app-error-dialog> + <app-loader [hidden]="!this.store.loader"></app-loader> + <router-outlet #o="outlet"></router-outlet> +</main> +<!-- </div> --> diff --git a/public/src/app/app.component.scss b/public/src/app/app.component.scss new file mode 100644 index 0000000..82b9721 --- /dev/null +++ b/public/src/app/app.component.scss @@ -0,0 +1,20 @@ +:host { + display: flex; + overflow: auto; + height: 100vh; + + .container { + height: 100%; + } + + main { + flex: 1; + position: relative; + } + + /deep/ router-outlet ~ * { + position: absolute; + width: 100%; + // height: 100%; + } +} diff --git a/public/src/app/app.component.ts b/public/src/app/app.component.ts new file mode 100644 index 0000000..0711538 --- /dev/null +++ b/public/src/app/app.component.ts @@ -0,0 +1,31 @@ +import { Component } from '@angular/core'; +import { slideAnimation } from './router.animations'; +import { ActivatedRoute } from '@angular/router'; +import { DomSanitizer } from '@angular/platform-browser'; +import { MatIconRegistry } from '@angular/material'; +import { Store } from './store/store'; + +@Component({ + selector: 'app-root', + animations: [slideAnimation], + templateUrl: './app.component.html', + styleUrls: ['./app.component.scss'] +}) +export class AppComponent { + constructor( + private _iconRegistry: MatIconRegistry, + private _sanitizer: DomSanitizer, + private route: ActivatedRoute, + public store: Store + ) { + this.loadIcons(_iconRegistry, _sanitizer); + } + + loadIcons(_iconRegistry: MatIconRegistry, _sanitizer: DomSanitizer) { + _iconRegistry.registerFontClassAlias('fontawesome', 'fa'); + } + + public getRouterOutletState(outlet) { + return outlet.isActivated ? outlet.activatedRoute : ''; + } +} diff --git a/public/src/app/app.module.ts b/public/src/app/app.module.ts new file mode 100644 index 0000000..8ed8c87 --- /dev/null +++ b/public/src/app/app.module.ts @@ -0,0 +1,109 @@ +import { BrowserModule } from '@angular/platform-browser'; +import { NgModule, APP_INITIALIZER } from '@angular/core'; +import { FormsModule, ReactiveFormsModule } from '@angular/forms'; +import { HttpModule } from '@angular/http'; +import { HttpClientModule } from '@angular/common/http'; + +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { MobxAngularModule } from 'mobx-angular'; + +import { TabViewModule, DialogModule, TooltipModule } from 'primeng/primeng'; +import { MatButtonModule } from '@angular/material/button'; +import { MatIconModule } from '@angular/material/icon'; +import { MatDialogModule } from '@angular/material/dialog'; +import { ToastrModule } from 'ngx-toastr'; +import { NgSelectModule } from '@ng-select/ng-select'; + +// import { SdcUiComponentsModule } from 'sdc-ui/lib/angular'; + +import { AppComponent } from './app.component'; +import { AppRoutingModule } from './app-routing.module'; +import { HomeComponent } from './home/home.component'; +import { GeneralComponent } from './general/general.component'; +import { MainComponent } from './main/main.component'; +import { RuleFrameComponent } from './rule-frame/rule-frame.component'; + +import { HostService } from './host/host.service'; +import { RestApiService } from './api/rest-api.service'; +import { FeatherIconsPipe } from './api/feather-pipe'; +import { Store } from './store/store'; +import { LoaderComponent } from './loader/loader.component'; +import { ErrorDialogComponent } from './error-dialog/error-dialog.component'; + +// rule engine +import { TreeModule } from 'angular-tree-component'; +import { TargetComponent } from './rule-engine/target/target.component'; +import { VersionTypeSelectComponent } from './rule-engine/version-type-select/version-type-select.component'; +import { FromComponent } from './rule-engine/from/from.component'; +import { ActionComponent } from './rule-engine/action/action.component'; +import { ActionListComponent } from './rule-engine/action-list/action-list.component'; +import { ConditionComponent } from './rule-engine/condition/condition.component'; +import { RuleEngineApiService } from './rule-engine/api/rule-engine-api.service'; +import { ConfirmPopupComponent } from './rule-engine/confirm-popup/confirm-popup.component'; +import { SlidePanelComponent } from './rule-engine/slide-panel/slide-panel.component'; +import { RuleListComponent } from './rule-engine/rule-list/rule-list.component'; +import { BarIconsComponent } from './bar-icons/bar-icons.component'; +import { DiagramComponent } from './diagram/diagram.component'; + +const appInitializerFn = () => { + return () => { + console.log('app initializing'); + }; +}; + +@NgModule({ + declarations: [ + AppComponent, + HomeComponent, + GeneralComponent, + MainComponent, + RuleFrameComponent, + LoaderComponent, + FeatherIconsPipe, + ErrorDialogComponent, + TargetComponent, + VersionTypeSelectComponent, + FromComponent, + ActionComponent, + ActionListComponent, + ConditionComponent, + ConfirmPopupComponent, + SlidePanelComponent, + RuleListComponent, + BarIconsComponent, + DiagramComponent + ], + imports: [ + BrowserModule, + BrowserAnimationsModule, + FormsModule, + HttpModule, + HttpClientModule, + AppRoutingModule, + MobxAngularModule, + TabViewModule, + DialogModule, + MatButtonModule, + MatIconModule, + MatDialogModule, + TreeModule, + NgSelectModule, + TooltipModule, + ToastrModule.forRoot({ enableHtml: true }) + ], + entryComponents: [ConfirmPopupComponent], + providers: [ + HostService, + RestApiService, + RuleEngineApiService, + Store, + { + provide: APP_INITIALIZER, + useFactory: appInitializerFn, + multi: true, + deps: [] + } + ], + bootstrap: [AppComponent] +}) +export class AppModule {} diff --git a/public/src/app/bar-icons/bar-icons.component.html b/public/src/app/bar-icons/bar-icons.component.html new file mode 100644 index 0000000..03129bf --- /dev/null +++ b/public/src/app/bar-icons/bar-icons.component.html @@ -0,0 +1,59 @@ +<div style="display: flex; position: relative; justify-content: flex-end;"> + <div style="display: flex; justify-content: flex-end;" [class]="genrateBarTestId()"> + <button mat-icon-button> + <span style="width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'help-circle' | feather:18"></span> + </button> + <hr> + + <div *ngIf="tabName.includes('map')" style="display: flex;"> + <button mat-icon-button> + <span style="width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'upload' | feather:18"></span> + </button> + <hr> + + <button mat-icon-button> + <span style="width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'download' | feather:18"></span> + </button> + <hr> + </div> + + <button mat-icon-button (click)="enableSetting()" data-tests-id="setting-gear" [style.color]="this.store.expandAdvancedSetting[store.tabIndex] ? '#009FDB' : 'black'"> + <span style="width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'settings' | feather:18"></span> + </button> + </div> + + <!-- advanced setting --> + <div class="setting" *ngIf="store.expandAdvancedSetting[store.tabIndex]"> + <div *mobxAutorun style="width: 100%;" [class]="tabName+'-setting-list'"> + <div style="font-size: 1.5em; padding: 0 12px;">{{tabName}} Advanced Setting</div> + <form #cdumpConfForm="ngForm"> + <div *ngFor="let prop of store.configurationForm" class="field" [id]="prop.name"> + <p class="field-label">{{prop.name}}</p> + <input *ngIf="!isPropertyDdl(prop)" type="text" name="{{prop.name}}" class="field-text" [(ngModel)]="prop.assignment.value" + (ngModelChange)="onChange($event)"> + <select *ngIf="isPropertyDdl(prop)" class="field-text" name="{{prop.name}}" [(ngModel)]="prop.assignment.value" (ngModelChange)="onChange($event)"> + <option *ngFor="let value of prop.constraints[0].valid_values" [value]="value"> + {{value}} + </option> + </select> + </div> + </form> + </div> + </div> +</div> diff --git a/public/src/app/bar-icons/bar-icons.component.scss b/public/src/app/bar-icons/bar-icons.component.scss new file mode 100644 index 0000000..893f757 --- /dev/null +++ b/public/src/app/bar-icons/bar-icons.component.scss @@ -0,0 +1,48 @@ +.setting { + position: absolute; + top: 47px; + right: 0; + background: white; + padding: 1em; + border: 1px solid gray; + display: flex; + min-width: 400px; + z-index: 2; + // width: 35%; +} + +.target-field { + width: 370px; + display: flex; + align-items: center; + margin: 10px; + .field-label { + padding-right: 10px; + } + .required::before { + content: '*'; + color: red; + padding-right: 5px; + } + .field-select { + flex: 1; + width: 100%; + min-width: 250px; + padding: 5px 0 5px 5px; + margin: 0; + } +} + +.field { + margin: 1em; + .field-label { + padding-bottom: 0.5em; + } + .field-text { + flex: 1; + width: 100%; + min-width: 250px; + padding: 5px 0 5px 5px; + margin: 0; + } +} diff --git a/public/src/app/bar-icons/bar-icons.component.ts b/public/src/app/bar-icons/bar-icons.component.ts new file mode 100644 index 0000000..adf4b88 --- /dev/null +++ b/public/src/app/bar-icons/bar-icons.component.ts @@ -0,0 +1,47 @@ +import { Component, Input, ViewChild } from '@angular/core'; +import { Store } from '../store/store'; +import { includes } from 'lodash'; +import { NgForm } from '@angular/forms'; + +@Component({ + selector: 'app-bar-icons', + templateUrl: './bar-icons.component.html', + styleUrls: ['./bar-icons.component.scss'] +}) +export class BarIconsComponent { + configuration; + @Input() tabName: string; + @ViewChild('cdumpConfForm') cdumpConfForm: NgForm; + + constructor(public store: Store) {} + + onChange(e) { + this.store.cdumpIsDirty = true; + } + + isPropertyDdl(property) { + if (property.hasOwnProperty('constraints')) { + if ( + includes( + property.constraints[0].valid_values, + property.assignment.value + ) + ) { + return true; + } else { + return false; + } + } else { + return false; + } + } + + genrateBarTestId() { + return `${this.tabName}-bar-icon-container`; + } + + enableSetting() { + this.store.expandAdvancedSetting[this.store.tabIndex] = !this.store + .expandAdvancedSetting[this.store.tabIndex]; + } +} diff --git a/public/src/app/diagram/diagram.component.html b/public/src/app/diagram/diagram.component.html new file mode 100644 index 0000000..b3cb28a --- /dev/null +++ b/public/src/app/diagram/diagram.component.html @@ -0,0 +1,19 @@ +<svg id="diagram" #diagram> + <svg viewBox="0 0 500 500" width="100%" height="500px" preserveAspectRatio="xMaxYMin meet" *ngFor="let item of list; let i = index"> + + <svg width="80px"> + <text x="0" [attr.y]="45 * (i+1)"> + {{item.source}} + </text> + </svg> + + <circle cx="100" [attr.cy]="44 * (i+1)" r="5" /> + <line x1="100" [attr.y1]="44 * (i+1)" [attr.x2]="maxWidth - 150" [attr.y2]="44 * (i+1)" stroke-width="2" stroke="black" stroke-dasharray="5, 5" + class="line" /> + <circle [attr.cx]="maxWidth - 150" [attr.cy]="44 * (i+1)" r="5" /> + + <text [attr.x]="maxWidth - 130" [attr.y]="45 * (i+1)"> + {{item.target}} + </text> + </svg> +</svg> diff --git a/public/src/app/diagram/diagram.component.scss b/public/src/app/diagram/diagram.component.scss new file mode 100644 index 0000000..57437d8 --- /dev/null +++ b/public/src/app/diagram/diagram.component.scss @@ -0,0 +1,28 @@ +svg { + height: 400px; + width: 100%; + margin: auto; + display: block; + .line { + stroke-dasharray: 1400; + animation: draw 5s ease-in; + } +} + +@keyframes draw { + from { + stroke-dashoffset: -1400; + } + to { + stroke-dashoffset: 0; + } +} + +@keyframes dude { + 0% { + width: 0; + } + 100% { + width: 100%; + } +} diff --git a/public/src/app/diagram/diagram.component.spec.ts b/public/src/app/diagram/diagram.component.spec.ts new file mode 100644 index 0000000..535f280 --- /dev/null +++ b/public/src/app/diagram/diagram.component.spec.ts @@ -0,0 +1,26 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { DiagramComponent } from './diagram.component'; + +describe('DiagramComponent', () => { + let component: DiagramComponent; + let fixture: ComponentFixture<DiagramComponent>; + + beforeEach( + async(() => { + TestBed.configureTestingModule({ + declarations: [DiagramComponent] + }).compileComponents(); + }) + ); + + beforeEach(() => { + fixture = TestBed.createComponent(DiagramComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/public/src/app/diagram/diagram.component.ts b/public/src/app/diagram/diagram.component.ts new file mode 100644 index 0000000..a0ae3a1 --- /dev/null +++ b/public/src/app/diagram/diagram.component.ts @@ -0,0 +1,12 @@ +import { Component, Input } from '@angular/core'; + +@Component({ + selector: 'app-diagram', + templateUrl: './diagram.component.html', + styleUrls: ['./diagram.component.scss'] +}) +export class DiagramComponent { + @Input() list; + maxWidth: number = 500; + constructor() {} +} diff --git a/public/src/app/error-dialog/error-dialog.component.html b/public/src/app/error-dialog/error-dialog.component.html new file mode 100644 index 0000000..7b72d06 --- /dev/null +++ b/public/src/app/error-dialog/error-dialog.component.html @@ -0,0 +1,17 @@ +<p-dialog [(visible)]="store.displayErrorDialog" modal="modal" width="500" [responsive]="true" data-tests-id="error-dialog"> + <p-header> + <span style="font-size: 1.3em;"> + Error + </span> + </p-header> + + <div *ngFor="let error of store.ErrorContent"> + {{ error.formattedErrorMessage }} + </div> + + <p-footer> + <button mat-raised-button color="primary" (click)="closeDialog()" data-tests-id="error-cancel"> + Cancel + </button> + </p-footer> +</p-dialog> diff --git a/public/src/app/error-dialog/error-dialog.component.scss b/public/src/app/error-dialog/error-dialog.component.scss new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/public/src/app/error-dialog/error-dialog.component.scss diff --git a/public/src/app/error-dialog/error-dialog.component.ts b/public/src/app/error-dialog/error-dialog.component.ts new file mode 100644 index 0000000..3e7bfe0 --- /dev/null +++ b/public/src/app/error-dialog/error-dialog.component.ts @@ -0,0 +1,17 @@ +import { Component, OnInit } from '@angular/core'; +import { Store } from '../store/store'; + +@Component({ + selector: 'app-error-dialog', + templateUrl: './error-dialog.component.html', + styleUrls: ['./error-dialog.component.scss'] +}) +export class ErrorDialogComponent implements OnInit { + constructor(public store: Store) {} + + ngOnInit() {} + + closeDialog() { + this.store.displayErrorDialog = false; + } +} diff --git a/public/src/app/general/general.component.html b/public/src/app/general/general.component.html new file mode 100644 index 0000000..dcea57a --- /dev/null +++ b/public/src/app/general/general.component.html @@ -0,0 +1,83 @@ +<form #generalForm="ngForm" novalidate style="display: flex; margin: 1em;"> + <div class="left"> + + <div class="import-wrapper" style="display: flex" *ngIf="store.generalflow === 'import' && !importCompleted"> + <div class="field" style="width:70%"> + <div class="field-label required" style="display: flex;"> + <span>Select existing VFCMT</span> + </div> + <ng-select name="vfcmt" [items]="vfcmts" required [virtualScroll]="true" placeholder="Select VFCMT" [(ngModel)]="selectedVfcmt" + class="vfcmt-list" (change)="vfcmtChange($event)"> + </ng-select> + </div> + + <div class="field" style="width:30%"> + <div class="field-label required" style="display: flex;"> + <span>Select version</span> + </div> + <select name="version" required data-tests-id="vfcmtVersion" [(ngModel)]="selectedVersion" [style.background]="versions.length == 0 ? '#ebebe4' : 'white'" + (ngModelChange)="versionChange($event)" [disabled]="versions.length == 0" style="width: 100%; height: 30px;"> + <option [ngValue]="null" disabled>Select version</option> + <option *ngFor="let item of versions" [value]="item.version">{{item.version}}</option> + </select> + </div> + </div> + + <div class="field"> + <div class="field-label required">Name</div> + <input type="text" name="name" ngModel required [(ngModel)]="newVfcmt.name" class="field-text" [disabled]="this.store.isEditMode || disableName" + data-tests-id="nameMc" /> + </div> + + <div class="field"> + <div class="field-label required">Description</div> + <textarea required name="description" ngModel [(ngModel)]="newVfcmt.description" style="resize: none;" cols="30" rows="10" + class="field-text" data-tests-id="descMc" [disabled]="this.store.isEditMode || disableDescription"></textarea> + </div> + + <div class="field" *ngIf="store.generalflow === 'new'"> + <div class="field-label required" style="display: flex;"> + <span>Template</span> + <span style="padding-left: 5px;" [innerHTML]="'help-circle' | feather:14"></span> + </div> + <select name="template" [disabled]="this.store.isEditMode" required [(ngModel)]="newVfcmt.template" (ngModelChange)="onChangeTemplate($event)" + data-tests-id="templateDdl" class="field-text" [style.background]="this.store.isEditMode ? '#ebebe4' : 'white'"> + <option [ngValue]="null" disabled>Select template</option> + <option *ngFor="let template of templates" [value]="template.uuid" data-tests-id="templateOptions">{{template.name}}</option> + </select> + </div> + + <div class="field" *ngIf="store.generalflow === 'import' || store.generalflow === 'edit'"> + <div class="field-label required" style="display: flex;"> + <span>Flow type</span> + <span style="padding-left: 5px;" [innerHTML]="'help-circle' | feather:14"></span> + </div> + <select name="flowType" [disabled]="this.store.isEditMode || disableFlowType" required [(ngModel)]="newVfcmt.flowType" data-tests-id="flowTypeDdl" + class="field-text" [style.background]="this.store.isEditMode || disableFlowType ? '#ebebe4' : 'white'"> + <option [ngValue]="null" disabled>Select Flow Type</option> + <option *ngFor="let flowType of flowTypes" [value]="flowType" data-tests-id="flowTypeOptions">{{flowType}}</option> + </select> + </div> + + <div class="field"> + <div class="field-label required" style="display: flex;"> + <span>Attached to</span> + <span style="padding-left: 5px;" [innerHTML]="'help-circle' | feather:14"></span> + </div> + <select name="serviceAttached" [disabled]="this.store.isEditMode || disableVnfiList" required [(ngModel)]="newVfcmt.vfni" + data-tests-id="vfniDdl" (ngModelChange)="onChangeVfni($event)" class="field-text" [style.background]="this.store.isEditMode || disableVnfiList ? '#ebebe4' : 'white'"> + <option [ngValue]="null" disabled>Select VFNI</option> + <option *ngFor="let vfi of vfniList" [value]="vfi.resourceInstanceName">{{vfi.resourceInstanceName}}</option> + </select> + </div> + </div> + + <div class="right"> + <div style="padding: 0.7em 0.5em; padding-top: 1em; font-weight: 600;">Flow diagram</div> + <div> + <app-diagram [list]="list"></app-diagram> + <!-- <img style="width:100%; height:100%;" src="https://upload.wikimedia.org/wikipedia/commons/thumb/7/73/Flag_of_Romania.svg/1200px-Flag_of_Romania.svg.png" + alt="flow"> --> + </div> + </div> +</form> diff --git a/public/src/app/general/general.component.scss b/public/src/app/general/general.component.scss new file mode 100644 index 0000000..d76e1ae --- /dev/null +++ b/public/src/app/general/general.component.scss @@ -0,0 +1,38 @@ +.left, +.right { + width: 50%; +} + +.ng-select.ng-single .ng-control { + border-radius: 0; + height: 30px; + min-height: 30px; +} + +.toast-container .toast { + width: 400px !important; + box-shadow: none; + border-radius: 0; +} +.toast-container .toast:hover { + box-shadow: none; +} + +.field { + margin: 1em; + .field-label { + padding-bottom: 0.5em; + } + .required::before { + content: '*'; + color: red; + padding-right: 5px; + } + .field-text { + flex: 1; + width: 100%; + min-width: 250px; + padding: 5px 0 5px 5px; + margin: 0; + } +} diff --git a/public/src/app/general/general.component.spec.ts b/public/src/app/general/general.component.spec.ts new file mode 100644 index 0000000..fb761db --- /dev/null +++ b/public/src/app/general/general.component.spec.ts @@ -0,0 +1,55 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { GeneralComponent, groupingData } from './general.component'; +import { sortBy } from 'lodash'; + +const data = [ + { + name: 'avi', + version: '2.0' + }, + { + name: 'stone', + version: '0.9' + }, + { + name: 'avi', + version: '2.1' + }, + { + name: 'vosk', + version: '0.1' + }, + { + name: 'liav', + version: '0.5' + } +]; +const sortedMatchVfcmtList = ['avi', 'liav', 'stone', 'vosk']; +const sortedVersionInGroup = [ + { + name: 'avi', + version: '2.1' + }, + { + name: 'avi', + version: '2.0' + } +]; + +describe('GeneralComponent', () => { + it('should sort vfcmt by A to Z', () => { + const sorted = groupingData(data); + const vfcmtList = sortBy(Object.keys(sorted), name => name); + expect(vfcmtList).toEqual(sortedMatchVfcmtList); + }); + + it('should group vfcmt by name', () => { + const sorted = groupingData(data); + expect(Object.keys(sorted)).toEqual(['avi', 'stone', 'vosk', 'liav']); + }); + + it('should version array be sorted in group', () => { + const sorted = groupingData(data); + expect(Object.values(sorted)[0]).toEqual(sortedVersionInGroup); + }); +}); diff --git a/public/src/app/general/general.component.ts b/public/src/app/general/general.component.ts new file mode 100644 index 0000000..422d834 --- /dev/null +++ b/public/src/app/general/general.component.ts @@ -0,0 +1,323 @@ +import { + Component, + OnInit, + ViewChild, + ViewEncapsulation, + Output, + EventEmitter +} from '@angular/core'; +import { RestApiService } from '../api/rest-api.service'; +import { ActivatedRoute } from '@angular/router'; +import { Store } from '../store/store'; +import { NgForm } from '@angular/forms'; +import { forkJoin } from 'rxjs/observable/forkJoin'; +import { + pipe, + groupBy, + map, + sort, + descend, + ascend, + prop, + find, + propEq, + findIndex +} from 'ramda'; +import { sortBy, forEach } from 'lodash'; +import { ToastrService } from 'ngx-toastr'; + +export const groupingData = pipe( + groupBy(prop('name')), + map(sort(descend(prop('version')))) +); + +@Component({ + selector: 'app-general', + encapsulation: ViewEncapsulation.None, + templateUrl: './general.component.html', + styleUrls: ['./general.component.scss'] +}) +export class GeneralComponent implements OnInit { + newVfcmt = { + name: null, + description: null, + template: null, + flowType: null, + vfni: null, + isCloneVFCMT: false, + isUpdateFlowType: false + }; + isLatestVersion = true; + vfniList = []; + templates = []; + serviceUUID: string; + vfcmts = new Array(); + versions = new Array(); + result = new Array(); + flowTypes = new Array(); + selectedVfcmt; + selectedVersion = null; + importCompleted = false; + disableName = false; + disableDescription = false; + disableFlowType = false; + disableVnfiList = false; + @Output() updateCdumpEv = new EventEmitter<string>(); + @ViewChild('generalForm') generalForm; + // list = [ + // { source: 'node1dsvsdsvd', target: 'node2' }, + // { source: 'node3', target: 'node4' }, + // { source: 'node5', target: 'nodedsvsds6' }, + // { source: 'node7', target: 'node8' } + // ]; + list = []; + + constructor( + private restApi: RestApiService, + public store: Store, + private toastr: ToastrService, + private route: ActivatedRoute + ) { + console.log('route mcid: ', this.route.snapshot.params.mcid); + if ( + this.route.snapshot.params.mcid === 'import' || + this.route.snapshot.params.mcid === 'new' + ) { + this.store.generalflow = this.route.snapshot.params.mcid; + } else { + this.store.generalflow = 'edit'; + this.store.mcUuid = this.route.snapshot.params.mcid; + } + this.serviceUUID = this.route.snapshot.params.uuid; + } + + onChangeTemplate(template) { + console.log('flow template', template); + } + onChangeVfni(vfni) { + console.log('vfni', vfni); + } + vfcmtChange(vfcmtName) { + vfcmtName !== undefined + ? (this.versions = this.result[vfcmtName]) + : ((this.versions = []), this.restForm()); + this.store.isEditMode = true; + this.selectedVersion = null; + } + versionChange(version) { + const versionIndex = findIndex(propEq('version', version))(this.versions); + this.isLatestVersion = versionIndex === 0 ? true : false; + const selectedVfcmtByVersion = find( + propEq('version', version), + this.result[this.selectedVfcmt] + ); + this.newVfcmt.template = selectedVfcmtByVersion.uuid; + this.restApi.getVfcmtReferenceData(selectedVfcmtByVersion.uuid).subscribe( + success => { + this.store.loader = false; + console.log('vfcmt ref data:', success); + this.store.isEditMode = false; + this.getServiceRef(success); + }, + error => { + this.notifyError(error); + }, + () => { + this.store.loader = false; + } + ); + } + private notifyError(error: any) { + this.store.loader = false; + console.log(error.notes); + this.store.ErrorContent = Object.values(error.requestError); + this.store.displayErrorDialog = true; + } + + ngOnInit() { + if (this.store.generalflow === 'edit') { + this.store.loader = true; + this.restApi + .getCompositionMonitoringComponent(this.store.mcUuid) + .subscribe( + response => { + this.newVfcmt = response.vfcmt; + this.flowTypes.push(this.newVfcmt.flowType); + this.newVfcmt.vfni = this.store.vfiName; + this.vfniList.push({ resourceInstanceName: this.newVfcmt.vfni }); + // this.store.cdump = response.cdump; + this.updateCdumpEv.next(response.cdump); + this.store.isEditMode = true; + this.store.loader = false; + }, + error => { + this.notifyError(error); + } + ); + } else if (this.store.generalflow === 'import') { + this.store.loader = true; + this.store.isEditMode = true; + this.restApi + .getVfcmtsForMigration({ + contextType: this.route.snapshot.params.contextType, + uuid: this.route.snapshot.params.uuid, + version: this.route.snapshot.params.version + }) + .subscribe( + success => { + this.store.loader = false; + this.result = groupingData(success); + this.vfcmts = sortBy(Object.keys(this.result), name => name); + }, + error => { + this.notifyError(error); + }, + () => { + this.store.loader = false; + } + ); + } else if (this.route.snapshot.params.mcid === 'new') { + // get template data for ddl + const template$ = this.restApi.getTemplateResources(); + // get service vfi list for ddl '08ff91f1-9b57-4918-998b-4d2c98832815' + const vfniList$ = this.restApi.getServiceInstances(this.serviceUUID); + this.store.loader = true; + forkJoin(template$, vfniList$).subscribe( + success => { + console.log('all', success); + this.templates = success[0]; + this.vfniList = success[1].resources; + }, + error => { + this.notifyError(error); + }, + () => { + this.store.loader = false; + } + ); + } + } + + private restForm() { + this.newVfcmt = { + name: null, + description: null, + template: null, + flowType: null, + vfni: null, + isCloneVFCMT: false, + isUpdateFlowType: false + }; + const controls = this.generalForm.controls; + forEach(controls, control => { + control.markAsUntouched(); + }); + } + + private getServiceRef(data) { + if (data.flowType !== undefined) { + if (data.serviceUuid === this.serviceUUID) { + this.newVfcmt.name = data.name; + this.newVfcmt.description = data.description; + this.disableName = true; + this.disableDescription = true; + this.setFlowType(data); // true + this.setVfni(data); + this.newVfcmt.isCloneVFCMT = false; + } else { + this.isCloneVfcmtToast(); + this.setFlowType(data); // true + this.setVfni(data); + this.newVfcmt.isCloneVFCMT = true; + } + } else { + if (data.serviceUuid === this.serviceUUID && this.isLatestVersion) { + this.newVfcmt.name = data.name; + this.newVfcmt.description = data.description; + this.disableName = true; + this.disableDescription = true; + this.newVfcmt.isCloneVFCMT = false; + this.setFlowType(data); // true + this.setVfni(data); + } else { + this.isCloneVfcmtToast(); + this.setFlowType(data); // true + this.setVfni(data); + this.newVfcmt.isCloneVFCMT = true; + } + } + } + + private isCloneVfcmtToast() { + this.toastr.warning( + `<h3>The monitoring configuration is copied.</h3> + <div> + The selected VFCMT is assigned to a different + </div> + <div> + service or has a newer version. + </div> + `, + '', + { + enableHtml: true, + // disableTimeOut: true + timeOut: 10000 + } + ); + } + + private setVfni(data: any) { + if (data.serviceUuid !== this.serviceUUID) { + this.getVfniList(); + this.disableVnfiList = false; + } else { + this.disableVnfiList = true; + this.vfniList.push({ resourceInstanceName: data.vfiName }); + this.newVfcmt.vfni = data.vfiName; + } + } + + private setFlowType(data: any) { + if (data.flowType === undefined) { + this.newVfcmt.isUpdateFlowType = true; + this.disableFlowType = false; + this.getFlowTypeList(); + } else { + this.newVfcmt.isUpdateFlowType = false; + this.disableFlowType = true; + this.flowTypes.push(data.flowType); + this.newVfcmt.flowType = data.flowType; + } + } + + private getFlowTypeList() { + this.restApi.getFlowType().subscribe( + success => { + console.log('flow types', success.flowTypes); + this.flowTypes = success.flowTypes; + }, + error => { + this.notifyError(error); + }, + () => { + this.store.loader = false; + } + ); + } + private getVfniList() { + this.restApi.getServiceInstances(this.serviceUUID).subscribe( + success => { + console.log('vfni List', success); + this.vfniList = success.resources; + }, + error => { + this.notifyError(error); + return null; + }, + () => { + this.store.loader = false; + } + ); + } +} diff --git a/public/src/app/home/home.component.html b/public/src/app/home/home.component.html new file mode 100644 index 0000000..90e82d3 --- /dev/null +++ b/public/src/app/home/home.component.html @@ -0,0 +1,106 @@ +<div class="container"> + <div style="display: flex; + justify-content: space-between;"> + <div style="font-size: 1.7em; display: flex; align-items: center;">Monitoring</div> + + <div style="display: flex;"> + <button mat-icon-button [disabled]="checkCanCreate()" (click)="importScreen()"> + <span style="width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'download' | feather:22"></span> + </button> + + <button mat-raised-button color="primary" (click)="createScreen()" data-tests-id="btn-create-mc" [disabled]="checkCanCreate()"> + Create New MC + </button> + </div> + </div> + + <div *ngIf="showTable===true; then thenBlock else elseBlock"></div> + + <ng-template #thenBlock> + <!-- Table --> + <div class="table-wrapper"> + <div *ngIf="unavailableMonitoringComponents.length > 0" data-tests-id="unavailableArea" style="color: white; background: red; padding: 1rem; border-radius: 5px; font-weight: bold; margin: 1em 0;"> + <div *ngFor="let item of unavailableMonitoringComponents"> + {{item.uuid}} + </div> + </div> + <table class="mcTable"> + <thead> + <tr data-tests-id="monitoringComponentTableHeaders"> + <th>Monitoring Configuration</th> + <th>VNFI Name</th> + <th style="width:90px;">Version</th> + <th style="width:140px;">Status</th> + <th style="width:140px;">Last Updated by</th> + <th style="width:96px;">Action</th> + </tr> + </thead> + <tbody> + <tr *ngFor="let item of monitoringComponents; let i = index" on-mouseleave="hoveredIndex=null" (click)="onSelect(i)" [class.active]="i == selectedLine" + data-tests-id="monitoringComponentTableItems" on-mouseover="hoveredIndex=i"> + <td color="blue"> + <div [hidden]="checkHoverCondition(item)" data-tests-id="tableItemsMonitoringConfiguration" class="table-Monitoring-Component" (click)="editItem(item)"> + {{item.name}} + </div> + </td> + <td> + <span pTooltip="{{item.vfiName}}" tooltipPosition="bottom" style="padding:5px;">{{item.vfiName}}</span> + </td> + <td style="width:90px;">{{item.version}}</td> + <td style="width:140px;">{{item.status}}</td> + <td style="width:140px;">{{item.lastUpdaterUserId}}</td> + <td style="width:80px;"> + <div *ngIf="i==hoveredIndex" [hidden]="checkHoverCondition(item)"> + <button mat-icon-button data-tests-id="tableItemsButtonDelete" (click)="deleteItem(item)" style="width:30px; height: 30px;"> + <span style="width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'trash-2' | feather:18"></span> + </button> + </div> + <div *ngIf="i==hoveredIndex" [hidden]="!checkHoverCondition(item)"> + <button mat-icon-button data-tests-id="tableItemsButtonInfo" style="width:30px; height: 30px;"> + <span style="width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'info' | feather:18"></span> + </button> + </div> + </td> + </tr> + </tbody> + </table> + </div> + </ng-template> + + <ng-template #elseBlock> + <div style="display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + flex:1;"> + <div style="font-size: 1.5em;"> + Monitoring Configuration does not Exist + </div> + <div style="padding: 0.5em; padding-top: 1em;" data-tests-id="new-monitoring-title"> + A Monitoring Configuration (MC) was not yet created + </div> + <div> + Please create a new MC to monitor the service + </div> + <div class="wrapper-btn-add-mc"> + <button mat-mini-fab color="primary" (click)="createScreen()" data-tests-id="btn-fab-create-mc" [disabled]="checkCanCreate()"> + <span [innerHTML]="'plus' | feather:24"></span> + </button> + <span data-tests-id="btn-span-create-mc" style="margin-top: 1rem; font-size: 1.2em; font-weight: 400;" [style.color]="checkCanCreate() ? '#ebebe4' : '#009FDB'">Add First MC</span> + </div> + </div> + </ng-template> +</div> + diff --git a/public/src/app/home/home.component.scss b/public/src/app/home/home.component.scss new file mode 100644 index 0000000..583705f --- /dev/null +++ b/public/src/app/home/home.component.scss @@ -0,0 +1,110 @@ +.container { + display: flex; + flex-direction: column; + height: 100%; + padding: 0.5em; + margin-left: 15px; + margin-right: 15px; + .wrapper-btn-add-mc { + margin-top: 3em; + display: flex; + flex-direction: column; + align-items: center; + } +} + +.table-Monitoring-Component { + &:hover { + color: #009fdb; + text-decoration: underline; + cursor: pointer; + } +} + +.table-wrapper { + display: flex; + justify-content: center; + flex: 1; + margin-bottom: 2em; + flex-direction: column; + display: block; +} + +table.mcTable { + display: flex; + flex-flow: column; + height: calc(100vh - 150px); + width: 100%; + background-color: #ffffff; + color: #5a5a5a; +} +table.mcTable thead { + /* head takes the height it requires, + and it's not scaled when table.mcTable is resized */ + flex: 0 0 auto; + // width: calc(100% - 17px); + width: 100%; +} +table.mcTable tbody { + /* body takes all the remaining available space */ + flex: 1 1 auto; + display: block; + overflow-y: scroll; +} +table.mcTable tbody tr { + width: 100%; +} + +table.mcTable thead, +table.mcTable tbody tr { + display: table; + table-layout: fixed; +} + +table.mcTable { + border-collapse: collapse; + border-spacing: 0px; +} + +table.mcTable tr.active td { + background-color: #e6f6fb !important; + color: #5a5a5a; +} + +table.mcTable th { + background: #f4f4f4; + color: #191919; + text-align: left; +} + +table.mcTable tr { + &:hover { + background-color: #f8f8f8; + color: #5a5a5a; + } +} + +table.mcTable table, +table.mcTable th, +table.mcTable td { + padding: 5px 10px; + border: 0.5px solid #d2d2d2; + border-bottom: none; + height: 40px; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; +} + +table.mcTable tr:last-child { + border-bottom: 0.5px solid #d2d2d2; +} + +/deep/ .ui-tooltip .ui-tooltip-text { + font-size: 0.8em; + padding: 0.7em; +} + +/deep/ .ui-tooltip { + max-width: 400px; +} diff --git a/public/src/app/home/home.component.ts b/public/src/app/home/home.component.ts new file mode 100644 index 0000000..1c538c0 --- /dev/null +++ b/public/src/app/home/home.component.ts @@ -0,0 +1,188 @@ +import { Component } from '@angular/core'; +import { Store } from '../store/store'; +import { HostService } from '../host/host.service'; +import { ActivatedRoute, Router } from '@angular/router'; +import { RestApiService } from '../api/rest-api.service'; +import { NgIf } from '@angular/common'; +import { ConfirmPopupComponent } from '../rule-engine/confirm-popup/confirm-popup.component'; +import { MatDialog } from '@angular/material'; +import { ToastrService } from 'ngx-toastr'; +import { ChangeDetectorRef } from '@angular/core'; + +@Component({ + selector: 'app-home', + templateUrl: './home.component.html', + styleUrls: ['./home.component.scss'] +}) +export class HomeComponent { + linkToMain: string; + currentUserId: string; + showTable = true; + selectedLine; + monitoringComponents = new Array(); + unavailableMonitoringComponents = new Array(); + hoveredIndex = null; + dialogRef; + + constructor( + private activeRoute: ActivatedRoute, + private route: Router, + private _restApi: RestApiService, + private dialog: MatDialog, + public store: Store, + private toastr: ToastrService, + private changeDetectorRef: ChangeDetectorRef + ) { + this.store.loader = true; + this.activeRoute.queryParams.subscribe(params => { + console.log('params: %o', params); + this.store.sdcParmas = params; + this.linkToMain = `/main/${params.contextType}/${params.uuid}/${ + params.version + }/`; + this._restApi.getMonitoringComponents(params).subscribe( + response => { + console.log('response: ', response); + if (response.hasOwnProperty('monitoringComponents')) { + this.monitoringComponents = response.monitoringComponents; + } + if (response.hasOwnProperty('unavailable')) { + this.unavailableMonitoringComponents = response.unavailable; + } + this.showTable = this.monitoringComponents.length > 0; + this.store.loader = false; + }, + response => { + this.showTable = false; + this.store.loader = false; + console.log('ERROR: ', response); + } + ); + HostService.disableLoader(); + }); + } + + createScreen() { + this.store.isEditMode = false; + this.route.navigate([this.linkToMain + 'new']); + } + + importScreen() { + this.store.isEditMode = false; + this.route.navigate([this.linkToMain + 'import']); + } + + checkCanCreate() { + if ( + JSON.parse(this.store.sdcParmas.isOwner) && + this.store.sdcParmas.lifecycleState === 'NOT_CERTIFIED_CHECKOUT' + ) { + return false; + } else { + return true; + } + } + + checkHoverCondition(item: any): boolean { + if ( + this.store.sdcParmas.userId === item.lastUpdaterUserId && + this.store.sdcParmas.lifecycleState === 'NOT_CERTIFIED_CHECKOUT' + ) { + return false; + } else { + return true; + } + } + + editItem(item: any): void { + this.store.vfiName = item.vfiName; + this.route.navigate([this.linkToMain + '/' + item.uuid]); + } + + onSelect(item: any): void { + this.selectedLine = item; + console.log('selected : ', item); + } + + deleteEnable(item: any): boolean { + console.log( + 'delete enable: ', + item.isOwner && item.Lifecycle == 'NOT_CERTIFIED_CHECKOUT' + ); + const { userId, lifecycleState } = this.store.sdcParmas; + return ( + item.lastUpdaterUserId == userId && + lifecycleState == 'NOT_CERTIFIED_CHECKOUT' + ); + } + + deleteItem(item: any): void { + let deleteRow = this.hoveredIndex; + this.dialogRef = this.dialog.open(ConfirmPopupComponent, { + panelClass: 'my-confrim-dialog', + disableClose: true + }); + this.dialogRef.afterClosed().subscribe(result => { + // if the user want to delete + if (result) { + if (item.status == 'submitted') { + this._restApi + .deleteMonitoringComponentWithBlueprint( + this.store.sdcParmas, + item.name, + item.uuid, + item.vfiName + ) + .subscribe( + response => { + this.itemDeletedRemoveAndNotify(deleteRow); + }, + error => { + if (error.messageId === 'SVC6118') { + this.monitoringComponents.splice(deleteRow, 1); + this.changeDetectorRef.detectChanges(); + } + const errorMsg = Object.values(error.requestError) as any; + this.toastr.error('', errorMsg[0]); + } + ); + } else { + this._restApi + .deleteMonitoringComponent( + this.store.sdcParmas, + item.uuid, + item.vfiName + ) + .subscribe( + response => { + this.itemDeletedRemoveAndNotify(deleteRow); + }, + error => { + const errorMsg = Object.values(error.requestError) as any; + this.toastr.error('', errorMsg[0]); + } + ); + } + } + }); + } + + itemDeletedRemoveAndNotify(deletedRow: number): void { + this.monitoringComponents.splice(deletedRow, 1); + this.changeDetectorRef.detectChanges(); + this.toastr.success( + '', + 'Monitoring Configuration was successfully deleted' + ); + } + + // convertFile(fileInput: any) { + // // read file from input + // const fileReaded = fileInput.target.files[0]; + // Papa.parse(fileReaded, { + // complete: function(results) { + // console.log('Finished:', results.data); + // } + // }); + // } +} diff --git a/public/src/app/host/host.service.ts b/public/src/app/host/host.service.ts new file mode 100644 index 0000000..31c4746 --- /dev/null +++ b/public/src/app/host/host.service.ts @@ -0,0 +1,44 @@ +import { Injectable } from '@angular/core'; + +interface HostParams { + readonly userId: string; + readonly contextType: string; + readonly vfcmtUuid: string; + readonly lifecycleState: string; + readonly isOwner: string; +} + +@Injectable() +export class HostService { + /* Public Members */ + public static getParams(): HostParams { + return this.getQueryParamsObj(window.location.hash) as HostParams; + } + + public static disableLoader(): void { + this.postMessage('READY', null); + } + + /* Private Methods */ + private static postMessage(eventName: string, data: string): void { + window.parent.postMessage( + { + type: eventName, + data: data + }, + '*' + ); + } + + private static getQueryParamsObj(query: string): object { + return query + .substring(7) // removes '?' that always appears as prefix to the query-string + .split('&') // splits query-string to "key=value" strings + .map(p => p.split('=')) // splits each "key=value" string to [key,value] array + .reduce((res, p) => { + // converts to a dictionary (object) of params + res[p[0]] = p[1]; + return res; + }, {}); + } +} diff --git a/public/src/app/loader/loader.component.html b/public/src/app/loader/loader.component.html new file mode 100644 index 0000000..55a8f4c --- /dev/null +++ b/public/src/app/loader/loader.component.html @@ -0,0 +1,4 @@ +<!-- loader --> +<div class="tlv-loader-block"> +</div> +<div class="tlv-loader large" style="z-index: 10002;" data-tests-id="loader"></div> diff --git a/public/src/app/loader/loader.component.scss b/public/src/app/loader/loader.component.scss new file mode 100644 index 0000000..621adba --- /dev/null +++ b/public/src/app/loader/loader.component.scss @@ -0,0 +1,152 @@ +.tlv-loader-block { + background-color: #ffffff; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + z-index: 9999; + opacity: 0.5; +} + +.tlv-loader { + height: 63px; + width: 63px; + position: absolute; + top: 50%; + left: 50%; +} + +.tlv-loader.small { + -webkit-transform: scale(0.26); + transform: scale(0.26); + margin-top: -36.5px; + margin-left: -36.5px; +} + +.tlv-loader.medium { + -webkit-transform: scale(0.5); + transform: scale(0.5); + margin-top: -26.5px; + margin-left: -26.5px; +} + +.tlv-loader.large { + -webkit-transform: scale(1); + transform: scale(1); + margin-top: -10.5px; + margin-left: -10.5px; +} + +.tlv-loader::before { + background-color: #eaeaea; + border-radius: 50%; + box-shadow: 21px 21px 0px 0px #eaeaea, 0px 42px 0px 0px #eaeaea, + -21px 21px 0px 0px #eaeaea; + content: ''; + display: block; + height: 21px; + width: 21px; + position: absolute; + left: 50%; + margin-left: -10.5px; +} + +.tlv-loader::after { + border-radius: 50%; + content: ''; + display: block; + position: absolute; + height: 21px; + width: 21px; + -webkit-animation: dot-move 4.5s infinite ease-in; + animation: dot-move 4.5s infinite ease-in; +} + +@keyframes dot-move { + 0% { + background-color: #3bb2df; + left: 21px; + top: 0; + } + 6.25% { + background-color: #3bb2df; + left: 42px; + top: 21px; + } + 12.5% { + background-color: #3bb2df; + left: 21px; + top: 42px; + } + 18.75% { + background-color: #3bb2df; + left: 0; + top: 21px; + } + 25% { + background-color: #ffb81c; + left: 21px; + top: 0; + } + 31.25% { + background-color: #ffb81c; + left: 42px; + top: 21px; + } + 37.5% { + background-color: #ffb81c; + left: 21px; + top: 42px; + } + 43.75% { + background-color: #ffb81c; + left: 0; + top: 21px; + } + 50% { + background-color: #caa2dd; + left: 21px; + top: 0; + } + 56.25% { + background-color: #caa2dd; + left: 42px; + top: 21px; + } + 62.5% { + background-color: #caa2dd; + left: 21px; + top: 42px; + } + 68.75% { + background-color: #caa2dd; + left: 0; + top: 21px; + } + 75% { + background-color: #d9e51c; + left: 21px; + top: 0; + } + 81.25% { + background-color: #d9e51c; + left: 42px; + top: 21px; + } + 87.5% { + background-color: #d9e51c; + left: 21px; + top: 42px; + } + 93.75% { + background-color: #d9e51c; + left: 0; + top: 21px; + } + 100% { + background-color: #3bb2df; + left: 21px; + top: 0; + } +} diff --git a/public/src/app/loader/loader.component.spec.ts b/public/src/app/loader/loader.component.spec.ts new file mode 100644 index 0000000..7c82913 --- /dev/null +++ b/public/src/app/loader/loader.component.spec.ts @@ -0,0 +1,26 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { LoaderComponent } from './loader.component'; + +describe('LoaderComponent', () => { + let component: LoaderComponent; + let fixture: ComponentFixture<LoaderComponent>; + + beforeEach( + async(() => { + TestBed.configureTestingModule({ + declarations: [LoaderComponent] + }).compileComponents(); + }) + ); + + beforeEach(() => { + fixture = TestBed.createComponent(LoaderComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/public/src/app/loader/loader.component.ts b/public/src/app/loader/loader.component.ts new file mode 100644 index 0000000..89403b2 --- /dev/null +++ b/public/src/app/loader/loader.component.ts @@ -0,0 +1,12 @@ +import { Component, OnInit } from '@angular/core'; + +@Component({ + selector: 'app-loader', + templateUrl: './loader.component.html', + styleUrls: ['./loader.component.scss'] +}) +export class LoaderComponent implements OnInit { + constructor() {} + + ngOnInit() {} +} diff --git a/public/src/app/main/main.component.html b/public/src/app/main/main.component.html new file mode 100644 index 0000000..d54b27b --- /dev/null +++ b/public/src/app/main/main.component.html @@ -0,0 +1,62 @@ +<div class="container"> + + <div style="padding: .25em; display: flex; + justify-content: space-between; + align-items: flex-end;"> + <div> + <a (click)="goBack()" data-tests-id="btn-back-home" style="display: flex; cursor: pointer;text-decoration: none; color: #009fdb;"> + <mat-icon fontSet="fontawesome" fontIcon="fa-angle-left" style="height: 17px; width: 12px; font-size: 17px;"></mat-icon> + <span style="display: flex; align-items: center;">Back to Monitoring</span> + </a> + <div style="margin:10px 0;" data-tests-id="new-monitorying-titie"> + <span style="font-size: 2em;" *ngIf='store.generalflow === "new"'> + New + </span> + <span style="font-size: 2em;" *ngIf='store.generalflow === "import"'> + Import + </span> + <span style="font-size: 2em;"> + Monitoring Configuration + </span> + </div> + </div> + + <div> + <div *ngIf='store.generalflow === "new" || store.generalflow === "edit"'> + <button *ngIf="!this.store.isEditMode" mat-raised-button color="primary" [disabled]="this.generalComponent.generalForm.invalid" + data-tests-id="createMonitoring" (click)="createMC(this.generalComponent.generalForm.value)">Create</button> + + <div *ngIf="this.store.isEditMode" style="display: flex;"> + <button mat-icon-button (click)="saveCDUMP()" [disabled]="!store.cdumpIsDirty"> + <span style="width: 100%; + height: 100%; + padding-right: 20px; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'save' | feather:22"></span> + </button> + <button mat-raised-button color="primary" (click)="saveAndCreateBlueprint()">Submit</button> + </div> + </div> + <div *ngIf='store.generalflow === "import"'> + <button mat-raised-button color="primary" (click)="importMC(this.generalComponent.newVfcmt)" [disabled]="this.generalComponent.generalForm.invalid" + data-tests-id="importMonitoring">Import</button> + </div> + </div> + </div> + + <div style="position: relative; flex:1;"> + + <p-tabView (onChange)="handleChange($event)" data-tests-id="tabs"> + <p-tabPanel header="General"> + <div> + <app-general (updateCdumpEv)="updateCdump($event)"></app-general> + </div> + </p-tabPanel> + <p-tabPanel *ngFor="let item of nodes" [header]="item.name"> + <app-rule-frame [tabName]="item.name"></app-rule-frame> + </p-tabPanel> + </p-tabView> + + </div> +</div> diff --git a/public/src/app/main/main.component.scss b/public/src/app/main/main.component.scss new file mode 100644 index 0000000..402a56a --- /dev/null +++ b/public/src/app/main/main.component.scss @@ -0,0 +1,33 @@ +.container { + display: flex; + flex-direction: column; + // height: 100%; + margin: 1em; +} + +// overhide +.ui-tabview .ui-tabview-panel { + border: 1px solid #d9d9d9; + padding: 0; + margin-left: 0.2em; + height: calc(100vh - 150px); + overflow: auto; +} + +.ui-tabview .ui-tabview-nav li { + margin: 0; +} + +.ui-tabview .ui-tabview-nav li.ui-tabview-selected { + color: #009fdb; + border-top: 4px solid #009fdb; + border-bottom: none; +} + +.ui-tabview-title { + font-size: 14px; +} + +.ui-tabview .ui-tabview-nav li.ui-tabview-selected .ui-tabview-title { + color: #009fdb; +} diff --git a/public/src/app/main/main.component.ts b/public/src/app/main/main.component.ts new file mode 100644 index 0000000..fdbb077 --- /dev/null +++ b/public/src/app/main/main.component.ts @@ -0,0 +1,228 @@ +import { Component, ViewEncapsulation, ViewChild } from '@angular/core'; +import { ActivatedRoute } from '@angular/router'; +import { Location } from '@angular/common'; +import { RestApiService } from '../api/rest-api.service'; +import { Store } from '../store/store'; +import { RuleFrameComponent } from '../rule-frame/rule-frame.component'; +import { GeneralComponent } from '../general/general.component'; +import { ToastrService } from 'ngx-toastr'; +import { forkJoin } from 'rxjs/observable/forkJoin'; + +@Component({ + selector: 'app-main', + encapsulation: ViewEncapsulation.None, + templateUrl: './main.component.html', + styleUrls: ['./main.component.scss'] +}) +export class MainComponent { + cdump; + nodes = []; + @ViewChild(GeneralComponent) generalComponent: GeneralComponent; + // @ViewChildren(RuleFrameComponent) ruleFrameRef: QueryList<RuleFrameComponent>; + + constructor( + private route: ActivatedRoute, + private restApi: RestApiService, + private toastr: ToastrService, + public store: Store, + private location: Location + ) { + this.route.snapshot.params.mcid === 'import' + ? (this.store.generalflow = 'import') + : (this.store.generalflow = 'new'); + } + + goBack() { + this.location.back(); + } + + createMC(params) { + console.log('newVfcmt: %o', params); + this.store.loader = true; + this.restApi + .createNewVFCMT({ + name: params.name, + description: params.description, + templateUuid: params.template, + vfiName: params.serviceAttached, + serviceUuid: this.route.snapshot.params.uuid, + contextType: this.route.snapshot.params.contextType, + flowType: 'default' + }) + .subscribe( + success => { + console.log(success); + this.store.mcUuid = success.vfcmt.uuid; + console.log(this.cleanProperty(success)); + this.store.cdump = success.cdump; + this.nodes = this.store.cdump.nodes; + this.store.setTabsProperties(this.nodes); + this.setDataFromMapToRuleEngine(success.cdump); + this.store.loader = false; + this.store.isEditMode = true; + }, + error => { + this.store.loader = false; + console.log(error.notes); + this.store.ErrorContent = Object.values(error.requestError); + this.store.displayErrorDialog = true; + } + ); + } + + updateCdump(cdump) { + this.store.cdump = cdump; + this.nodes = this.store.cdump.nodes; + this.store.setTabsProperties(this.nodes); + this.setDataFromMapToRuleEngine(cdump); + } + + importMC(params) { + console.log('importVfcmt: %o', params); + this.generalComponent.importCompleted = true; + this.store.loader = true; + this.restApi + .importVFCMT({ + name: params.name, + description: params.description, + templateUuid: params.template, + vfiName: params.vfni, + serviceUuid: this.route.snapshot.params.uuid, + contextType: this.route.snapshot.params.contextType, + flowType: params.flowType, + cloneVFCMT: params.isCloneVFCMT, + updateFlowType: params.isUpdateFlowType + }) + .subscribe( + success => { + console.log(success); + this.location.path(); + // this.location.go(); + this.store.mcUuid = success.vfcmt.uuid; + console.log(this.cleanProperty(success)); + this.store.cdump = success.cdump; + this.nodes = this.store.cdump.nodes; + this.store.setTabsProperties(this.nodes); + this.setDataFromMapToRuleEngine(success.cdump); + this.store.generalflow = 'edit'; + this.store.loader = false; + this.store.isEditMode = true; + }, + error => { + this.store.loader = false; + console.log(error.notes); + this.store.ErrorContent = Object.values(error.requestError); + this.store.displayErrorDialog = true; + } + ); + } + + setDataFromMapToRuleEngine(cdump) { + this.store.tabParmasForRule = cdump.nodes + .filter(x => x.name.includes('map')) + .map(y => { + return { + name: y.name, + nid: y.nid + }; + }); + } + + cleanProperty(response) { + return response.cdump.nodes.map(node => { + const t = node.properties.filter(item => + item.hasOwnProperty('assignment') + ); + node.properties = t; + return node; + }); + } + + saveCDUMP() { + debugger; + this.store.loader = true; + this.restApi + .saveMonitoringComponent({ + contextType: this.store.sdcParmas.contextType, + serviceUuid: this.store.sdcParmas.uuid, + vfiName: this.generalComponent.newVfcmt.vfni, + vfcmtUuid: this.store.mcUuid, + flowType: this.generalComponent.newVfcmt.flowType, + cdump: this.store.cdump + }) + .subscribe( + success => { + this.store.loader = false; + this.store.mcUuid = success.uuid; + this.toastr.success('', 'Save succeeded'); + }, + error => { + this.store.loader = false; + console.log(error.notes); + this.store.ErrorContent = Object.values(error.requestError); + this.store.displayErrorDialog = true; + }, + () => {} + ); + } + + saveAndCreateBlueprint() { + debugger; + this.store.loader = true; + if (this.store.cdumpIsDirty) { + this.restApi + .saveMonitoringComponent({ + contextType: this.store.sdcParmas.contextType, + serviceUuid: this.store.sdcParmas.uuid, + vfiName: this.generalComponent.newVfcmt.vfni, + vfcmtUuid: this.store.mcUuid, + cdump: this.store.cdump + }) + .subscribe( + success => { + this.store.loader = false; + this.store.mcUuid = success.uuid; + this.submitBlueprint(); + }, + error => { + this.store.loader = false; + console.log(error.notes); + this.store.ErrorContent = Object.values(error.requestError); + this.store.displayErrorDialog = true; + }, + () => {} + ); + } else { + this.submitBlueprint(); + } + } + + submitBlueprint() { + this.store.loader = true; + this.restApi + .submitMonitoringComponent({ + contextType: this.store.sdcParmas.contextType, + serviceUuid: this.store.sdcParmas.uuid, + vfiName: this.generalComponent.newVfcmt.vfni, + vfcmtUuid: this.store.mcUuid, + flowType: this.store.cdump.flowType + }) + .subscribe( + success => { + this.store.loader = false; + this.toastr.success('', 'Save succeeded'); + }, + error => { + this.store.loader = false; + console.log(error.notes); + this.store.ErrorContent = Object.values(error.requestError); + this.store.displayErrorDialog = true; + }, + () => {} + ); + } + + handleChange(e) { + this.store.setTabIndex(e.index - 1); + } +} diff --git a/public/src/app/router.animations.ts b/public/src/app/router.animations.ts new file mode 100644 index 0000000..072c031 --- /dev/null +++ b/public/src/app/router.animations.ts @@ -0,0 +1,66 @@ +import { + trigger, + state, + animate, + transition, + style, + query +} from '@angular/animations'; + +export const fadeAnimation = trigger('fadeAnimation', [ + transition('* => *', [ + query(':enter', [style({ opacity: 0 })], { optional: true }), + + query( + ':leave', + [style({ opacity: 1 }), animate('0.5s', style({ opacity: 0 }))], + { optional: true } + ), + + query( + ':enter', + [style({ opacity: 0 }), animate('0.5s', style({ opacity: 1 }))], + { optional: true } + ) + ]) +]); + +export const slideAnimation = trigger('slideAnimation', [ + transition('* <=> *', [ + // Initial state of new route + query( + ':enter', + style({ + position: 'fixed', + width: '100%', + transform: 'translateX(-100%)' + }), + { optional: true } + ), + // move page off screen right on leave + // query( + // ':leave', + // animate( + // '500ms ease', + // style({ + // position: 'fixed', + // width: '100%', + // transform: 'translateX(-100%)' + // }) + // ), + // { optional: true } + // ), + // move page in screen from left to right + query( + ':enter', + animate( + '500ms ease', + style({ + opacity: 1, + transform: 'translateX(0%)' + }) + ), + { optional: true } + ) + ]) +]); diff --git a/public/src/app/rule-engine/action-list/action-list.component.html b/public/src/app/rule-engine/action-list/action-list.component.html new file mode 100644 index 0000000..e7879b7 --- /dev/null +++ b/public/src/app/rule-engine/action-list/action-list.component.html @@ -0,0 +1,100 @@ +<form #actionListFrm="ngForm" class="wrapper" data-tests-id="popupRuleEditor"> + <div class="header"> + <div style="display: flex; justify-content: flex-end; align-items: center;"> + <a (click)="closeDialog()" data-tests-id="btnBackRule" style="cursor: pointer;text-decoration: none; color: #009fdb;"> + <mat-icon fontSet="fontawesome" fontIcon="fa-angle-left" style="height: 22px; width: 22px; font-size: 22px; padding-right: 20px;"></mat-icon> + </a> + <span style="font-size: 18px;">New Rule Editor</span> + </div> + + <div style="display: flex; justify-content: flex-end; align-items: center; padding: 10px;"> + + <button mat-icon-button [disabled]="actions.length === 0" (click)="saveRole()" data-tests-id="btnSave"> + <span style="width: 100%; + height: 100%; + display: flex; + justify-content: center; + align-items: center;" [innerHTML]="'save' | feather:22"></span> + </button> + + <button mat-raised-button [disabled]="actions.length === 0" style="height: 35px; margin-left: 20px;" color="primary" data-tests-id="btnDone" + (click)="saveAndDone()"> + Done + </button> + </div> + </div> + <!-- error container --> + <div *ngIf="error" data-tests-id="errorList" class="error-list"> + <div *ngFor="let item of error"> + {{ item }} + </div> + </div> + + <div class="main-content"> + <div> + <div class="required" style="padding-right: 1rem; width: 100%; padding-bottom: 0.5rem;">Description</div> + <input type="text" [(ngModel)]="description" ngModel required name="descInput" style="padding: 5px; width: 100%;" data-tests-id="inputDescription"> + </div> + + <div style="margin: 1.5rem 0;"> + <div class="pretty p-svg" style="margin: 1rem 0rem;"> + <input type="checkbox" name="isCondition" data-tests-id="isCondition" [checked]="ifStatement" (change)="ifStatement = !ifStatement" + /> + <div class="state"> + <!-- svg path --> + <svg class="svg svg-icon" viewBox="0 0 20 20"> + <path d="M7.629,14.566c0.125,0.125,0.291,0.188,0.456,0.188c0.164,0,0.329-0.062,0.456-0.188l8.219-8.221c0.252-0.252,0.252-0.659,0-0.911c-0.252-0.252-0.659-0.252-0.911,0l-7.764,7.763L4.152,9.267c-0.252-0.251-0.66-0.251-0.911,0c-0.252,0.252-0.252,0.66,0,0.911L7.629,14.566z" + style="stroke: #009fdb; fill:#009fdb;"></path> + </svg> + <label>Conditional Action</label> + </div> + </div> + + <div *ngIf="ifStatement"> + <app-condition #condition (removeConditionCheck)="removeConditionCheck($event)" (onConditionChange)="updateCondition($event)"></app-condition> + </div> + </div> + + <div> + <div class="required" style="padding-bottom: 0.5rem"> + Action + </div> + <div style="display: flex;"> + <select [(ngModel)]="selectedAction" name="selectedAction" style="height: 2rem; width: 150px; margin-right: 1rem;" data-tests-id="selectAction"> + <option [ngValue]="null" disabled>Select Action</option> + <option value="copy">Copy</option> + <option value="concat">Concat</option> + <option value="map">Map</option> + <option value="date formatter">Date Formatter</option> + </select> + + <div style="display: flex; align-items: center;"> + <button mat-mini-fab color="primary" style="height: 24px; width: 24px; display:flex; justify-content: center;" (click)="addAction2list(selectedAction)" + data-tests-id="btnAddAction"> + <span style="display: flex; justify-content: center; align-items: center" [innerHTML]="'plus' | feather:16"></span> + </button> + <span style="color: #009FDB; display: flex; justify-content: center; padding-left: 10px">Add Action</span> + </div> + + </div> + + <div> + <ul> + <li *ngFor="let action of actions; let index = index" style="list-style: none; margin: 1rem 0;" (mouseleave)="hoveredIndex=-1" + (mouseover)="hoveredIndex=index" data-tests-id="action"> + <div style="display:flex;"> + <app-action #actions style="width: 100%;" [action]="action"></app-action> + + <div style="height: 45px; display: flex; align-items: center;"> + <button mat-icon-button class='button-remove' (click)="removeAction(action)" data-tests-id="deleteAction"> + <mat-icon>delete</mat-icon> + </button> + </div> + </div> + </li> + </ul> + </div> + + </div> + </div> +</form> diff --git a/public/src/app/rule-engine/action-list/action-list.component.scss b/public/src/app/rule-engine/action-list/action-list.component.scss new file mode 100644 index 0000000..39b9dce --- /dev/null +++ b/public/src/app/rule-engine/action-list/action-list.component.scss @@ -0,0 +1,77 @@ +.wrapper { + display: flex; + flex-direction: column; + height: 100%; + width: 100%; + + .header { + display: flex; + justify-content: space-between; + align-items: center; + color: #191919; + border-bottom: 2px solid #d2d2d2; + // padding: 0.4rem 1rem; + } + + .main-content { + display: flex; + flex-direction: column; + flex: 1; + flex-grow: 1; + // overflow-y: auto; + padding: 24px 10px; + width: 100%; + // height: calc(100vh - 54px); + } +} + +.mat-fab, +.mat-mini-fab, +.mat-raised-button { + box-shadow: none; +} + +.button-remove { + display: flex; + justify-content: center; + padding-top: 5px; + color: #a7a7a7; + &:hover { + color: #009fdb; + } +} + +:host { + @mixin md-icon-size($size: 24px) { + // font-size: $size; + height: $size; + width: $size; + } + + .material-icons.mat-icon { + @include md-icon-size(24px); + } + /deep/ .mat-button-wrapper { + padding: 0; + } + .mat-icon { + width: 18px; + height: 18px; + } +} + +.black { + color: black; +} +.highlight { + color: #009fdb; +} + +.error-list { + margin: 10px; + color: white; + background: red; + padding: 1rem; + border-radius: 5px; + font-weight: bold; +} diff --git a/public/src/app/rule-engine/action-list/action-list.component.ts b/public/src/app/rule-engine/action-list/action-list.component.ts new file mode 100644 index 0000000..40ff46d --- /dev/null +++ b/public/src/app/rule-engine/action-list/action-list.component.ts @@ -0,0 +1,290 @@ +import { + Component, + Inject, + ViewChildren, + QueryList, + AfterViewInit, + ViewChild, + Input +} from '@angular/core'; +import { RuleEngineApiService } from '../api/rule-engine-api.service'; +import { Subject } from 'rxjs/Subject'; +import { v1 as uuid } from 'uuid'; +import { environment } from '../../../environments/environment'; +import { ActionComponent } from '../action/action.component'; +import { cloneDeep } from 'lodash'; +import { Store } from '../../store/store'; +import { NgForm } from '@angular/forms'; + +@Component({ + selector: 'app-action-list', + templateUrl: './action-list.component.html', + styleUrls: ['./action-list.component.scss'] +}) +export class ActionListComponent implements AfterViewInit { + error: Array<string>; + condition: any; + eventType: string; + version: string; + params; + selectedAction; + targetSource; + description = ''; + actions = new Array(); + ifStatement = false; + uid = ''; + backupActionForCancel = new Array(); + @ViewChild('actionListFrm') actionListFrm: NgForm; + @ViewChild('condition') conditionRef; + @ViewChildren('actions') actionsRef: QueryList<ActionComponent>; + + constructor(private _ruleApi: RuleEngineApiService, public store: Store) { + this._ruleApi.editorData.subscribe(data => { + this.params = data.params; + console.log('update.. params', data.params); + this.targetSource = data.targetSource; + this.version = data.version; + this.eventType = data.eventType; + if (data.item) { + // edit mode set values to attributes + console.log('actions %o', data.item.actions); + this.actions = this.convertActionDataFromServer(data.item.actions); + this.backupActionForCancel = cloneDeep(this.actions); + this.condition = data.item.condition; + this.uid = data.item.uid; + this.description = data.item.description; + this.ifStatement = this.condition == null ? false : true; + } else { + this.actions = new Array(); + this.backupActionForCancel = new Array(); + this.condition = null; + this.uid = ''; + this.description = ''; + this.ifStatement = false; + } + this.selectedAction = null; + }); + } + + convertActionDataFromServer(actions) { + return actions.map(item => { + if (!item.hasOwnProperty('nodes')) { + return Object.assign({}, item, { nodes: this.targetSource }); + } + }); + } + + ngAfterViewInit() { + // console.log(this.actionsRef.toArray()); + if (this.condition) { + if (this.condition.name === 'condition') { + this.conditionRef.updateMode(true, this.condition); + } else { + const convertedCondition = this.convertConditionFromServer( + this.condition + ); + this.conditionRef.updateMode(false, convertedCondition); + } + } + } + + addAction2list(selectedAction) { + if (selectedAction !== null) { + this.actions.push({ + id: uuid(), + nodes: this.targetSource, + from: { + value: '', + regex: '', + state: 'closed', + values: [{ value: '' }, { value: '' }] + }, + actionType: this.selectedAction, + target: '', + map: { + values: [{ key: '', value: '' }], + haveDefault: false, + default: '' + }, + dateFormatter: { + fromFormat: '', + toFormat: '', + fromTimezone: '', + toTimezone: '' + } + }); + } + } + + removeConditionCheck(flag) { + this.ifStatement = flag; + } + + removeAction(action) { + this.actions = this.actions.filter(item => { + return item.id !== action.id; + }); + } + + updateCondition(data) { + this.condition = data; + } + + changeRightToArrayOrString(data, toArray) { + data.forEach(element => { + if (element.name === 'operator') { + this.changeRightToArrayOrString(element.children, toArray); + } + if (element.name === 'condition') { + if (toArray) { + element.right = element.right.split(','); + } else { + element.right = element.right.join(','); + } + } + }); + console.log(data); + return data; + } + + prepareDataToSaveRule() { + // action array + console.log(this.actions); + const actionSetData = this.actions.map(item => { + return { + id: item.id, + actionType: item.actionType, + from: item.from, + target: + typeof item.selectedNode === 'string' + ? item.selectedNode + : typeof item.selectedNode === 'undefined' + ? item.target + : item.selectedNode.id, + map: item.map, + dateFormatter: item.dateFormatter + }; + }); + let conditionData2server = null; + if (this.ifStatement) { + if (this.conditionRef.conditionTree) { + // change condition right to array + conditionData2server = this.convertConditionToServer( + this.conditionRef.conditionTree + ); + } + } + // data structure + return { + version: this.version, + eventType: this.eventType, + uid: this.uid, + description: this.description, + actions: actionSetData, + condition: this.ifStatement ? conditionData2server : null + }; + } + + errorHandler(error) { + this.store.loader = false; + console.log(error); + this.error = []; + if (typeof error === 'string') { + this.error.push(error); + } else { + console.log(error.notes); + const errorFromServer = Object.values(error)[0] as any; + if (Object.keys(error)[0] === 'serviceExceptions') { + this.error = errorFromServer.map(x => x.formattedErrorMessage); + } else { + this.error.push(errorFromServer.formattedErrorMessage); + } + } + } + + saveAndDone() { + const data = this.prepareDataToSaveRule(); + this.store.loader = true; + this._ruleApi.modifyRule(data).subscribe( + response => { + this.store.loader = false; + this.store.updateRuleInList(response); + this._ruleApi.callUpdateVersionLock(); + this.store.isLeftVisible = true; + }, + error => { + this.errorHandler(error); + }, + () => { + this.store.loader = false; + } + ); + } + + saveRole() { + const actionComp = this.actionsRef.toArray(); + const filterInvalidActions = actionComp.filter(comp => { + return ( + comp.fromInstance.fromFrm.invalid || + comp.targetInstance.targetFrm.invalid || + comp.actionFrm.invalid + ); + }); + if (this.actionListFrm.valid && filterInvalidActions.length === 0) { + const data = this.prepareDataToSaveRule(); + this.store.loader = true; + this._ruleApi.modifyRule(data).subscribe( + response => { + this.store.loader = false; + this.store.updateRuleInList(response); + this._ruleApi.callUpdateVersionLock(); + this.uid = response.uid; + // add toast notification + }, + error => { + this.errorHandler(error); + }, + () => { + this.store.loader = false; + } + ); + } else { + // scroll to first invalid element + const elId = filterInvalidActions[0].action.id; + const el = document.getElementById(elId as string); + const label = el.children.item(0) as HTMLElement; + el.scrollIntoView(); + } + } + + public convertConditionFromServer(condition) { + const temp = new Array(); + temp.push(condition); + const cloneCondition = cloneDeep(temp); + const conditionSetData = this.changeRightToArrayOrString( + cloneCondition, + false + ); + console.log('condition to server:', conditionSetData); + return conditionSetData; + } + + public convertConditionToServer(tree) { + const cloneCondition = cloneDeep(tree); + const conditionSetData = this.changeRightToArrayOrString( + cloneCondition, + true + ); + let simpleCondition = null; + if (conditionSetData[0].children.length === 1) { + simpleCondition = conditionSetData[0].children; + } + console.log('condition to server:', conditionSetData); + return simpleCondition !== null ? simpleCondition[0] : conditionSetData[0]; + } + + closeDialog(): void { + this.actions = this.backupActionForCancel; + this.store.isLeftVisible = true; + } +} diff --git a/public/src/app/rule-engine/action/action.component.html b/public/src/app/rule-engine/action/action.component.html new file mode 100644 index 0000000..b41ab82 --- /dev/null +++ b/public/src/app/rule-engine/action/action.component.html @@ -0,0 +1,114 @@ +<form #actionFrm="ngForm" class="conatiner" id="{{action.id}}" (mouseover)="changeStyle($event)" (mouseout)="changeStyle($event)"> + <div> + <div class="center-content"> + <!-- type info --> + <div class="action-info" [ngClass]="highlight"> + {{action.actionType | uppercase}} + </div> + <!-- from component --> + <app-from #from style="width: 100%" [actionType]="action.actionType" (onFromChange)="updateFrom($event)"></app-from> + <!-- target component --> + <app-target #target style="width: 100%" (onTargetChange)="updateTarget($event)" [nodes]="action.nodes"> + </app-target> + </div> + + <!-- dateFormatter --> + <div *ngIf="action.actionType === 'date formatter'" style="display: flex; flex-direction: column; margin: 1em; align-items: flex-end;"> + <div style="display: flex; margin: 0.5em 0;"> + <div class="from"> + <div class="from-conatiner"> + <div style="display: flex; align-items: center;" class="label"> + <span class="label" style="padding: 0 5px; width: 100px;">From Format</span> + <input class="input-text" ngModel required name="fromFormat" [(ngModel)]="action.dateFormatter.fromFormat" type="text"> + </div> + </div> + </div> + <div class="from"> + <div class="from-conatiner"> + <div style="display: flex; align-items: center;" class="label"> + <span class="label" style="padding: 0 5px; width: 100px;">To Format</span> + <input class="input-text" ngModel required name="toFormat" [(ngModel)]="action.dateFormatter.toFormat" type="text"> + </div> + </div> + </div> + </div> + + <div style="display: flex; margin: 0.5em 0;"> + <div class="from"> + <div class="from-conatiner"> + <div style="display: flex; align-items: center;" class="label"> + <span class="label" style="padding: 0 5px; width: 100px;">From Time-zone</span> + <input class="input-text" ngModel required name="fromTimezone" [(ngModel)]="action.dateFormatter.fromTimezone" type="text"> + </div> + </div> + </div> + <div class="from"> + <div class="from-conatiner"> + <div style="display: flex; align-items: center;" class="label"> + <span class="label" style="padding: 0 5px; width: 100px;">To Time-zone</span> + <input class="input-text" ngModel required name="toTimezone" [(ngModel)]="action.dateFormatter.toTimezone" type="text"> + </div> + </div> + </div> + </div> + </div> + + <!-- Map --> + <div *ngIf="action.actionType === 'map'" class="map-container"> + <!-- Default checkbox and input --> + <div class="default" style="display: flex; align-items: center"> + <div class="pretty p-svg"> + <input type="checkbox" name="defaultCheckbox" data-tests-id="defaultCheckbox" [checked]="action.map.haveDefault" (change)="changeCheckbox()" + /> + <div class="state"> + <!-- svg path --> + <svg class="svg svg-icon" viewBox="0 0 20 20"> + <path d="M7.629,14.566c0.125,0.125,0.291,0.188,0.456,0.188c0.164,0,0.329-0.062,0.456-0.188l8.219-8.221c0.252-0.252,0.252-0.659,0-0.911c-0.252-0.252-0.659-0.252-0.911,0l-7.764,7.763L4.152,9.267c-0.252-0.251-0.66-0.251-0.911,0c-0.252,0.252-0.252,0.66,0,0.911L7.629,14.566z" + style="stroke: #009fdb; fill:#009fdb;"></path> + </svg> + <label>Default</label> + </div> + </div> + <div *ngIf="action.map.haveDefault" class="input-wrapper"> + <input type="text" ngModel required name="defaultInput" data-tests-id="defaultInput" [(ngModel)]="action.map.default" class="input"> + </div> + </div> + + <table style="width: 100%; margin-bottom: 1rem;"> + <thead style="background: #D2D2D2;"> + <tr style="height: 30px;"> + <th style="padding-left: 10px;">Key</th> + <th style="padding-left: 10px;">value</th> + </tr> + </thead> + <tbody ngModelGroup="mapKeyValue" #mapKeyValue="ngModelGroup"> + <tr *ngFor="let item of action.map.values; let index = index;" (mouseleave)="hoveredIndex=-1" (mouseover)="hoveredIndex=index"> + <th style="height: 30px; border: 1px solid #F3F3F3;"> + <input [(ngModel)]="item.key" ngModel required name="mapValue[{{index}}]" data-tests-id="key" type="text" style="width:97%; height: 100%;border: none; padding:0 5px;"> + </th> + <th style="height: 30px; border: 1px solid #F3F3F3;"> + <input [(ngModel)]="item.value" ngModel required name="mapValue[{{index}}]" data-tests-id="value" type="text" style="width:97%; height: 100%;border: none; padding:0 5px;"> + </th> + <th style="height: 30px; display: flex; align-items: baseline;"> + <button mat-icon-button [ngStyle]="hoveredIndex === index ? {'opacity':'1'} : {'opacity':'0'}" class="button-remove" (click)="removeMapRow(index)" + *ngIf="action.map.values.length > 1" style="height: 24px; width: 24px; display:flex; box-shadow: none;"> + <mat-icon class="md-24">delete</mat-icon> + </button> + </th> + </tr> + </tbody> + </table> + + + <div style="display:flex; justify-content: space-between;"> + <div style="display: flex; align-items: center;"> + <button mat-mini-fab color="primary" (click)="addMapRow()" style="height: 24px; width: 24px; display:flex; box-shadow: none;"> + <mat-icon>add</mat-icon> + </button> + <span style="color: #009FDB; display: flex; justify-content: center; padding-left: 6px">Add Row</span> + </div> + </div> + </div> + + </div> +</form> diff --git a/public/src/app/rule-engine/action/action.component.scss b/public/src/app/rule-engine/action/action.component.scss new file mode 100644 index 0000000..f903db4 --- /dev/null +++ b/public/src/app/rule-engine/action/action.component.scss @@ -0,0 +1,116 @@ +.conatiner { + display: flex; + flex-direction: column; + width: 100%; + height: 100%; + justify-content: space-between; + margin: 10px 0; + .black { + color: black; + } + .highlight { + color: #009fdb; + } + .center-content { + display: flex; + width: 100%; + .action-info { + background: #f2f2f2; + padding: 6px 12px; + border-radius: 5px; + height: 32px; + margin: 0 10px; + display: flex; + align-items: center; + justify-content: center; + min-width: 142px; + } + } + .map-container { + padding-left: 115px; + .default { + display: flex; + width: 100%; + margin: 1rem 0; + min-height: 35px; + .input-wrapper { + width: 100%; + display: flex; + .input { + height: 20px; + padding: 5px; + margin-left: 10px; + width: 100%; + border: 1px solid #d2d2d2; + } + } + } + .grid-container { + padding-bottom: 10px; + .layout { + display: grid; + grid-template-columns: 1fr 1fr 30px; + grid-gap: 1px; + .title { + background-color: #f3f3f3; + height: 30px; + padding-left: 10px; + display: flex; + align-items: center; + } + .text-wrapper { + height: 30px; + border: 1px solid #f3f3f3; + .input { + width: 97%; + height: 100%; + border: none; + padding: 0 5px; + } + } + .btn-container { + height: 30px; + display: flex; + align-items: baseline; + } + } + } + } +} + +.from { + display: flex; + flex-direction: column; + padding: 0 10px; + .from-conatiner { + display: flex; + flex-direction: column; + align-items: flex-start; + width: 100%; + min-width: 350px; + .input-text { + border: none; + flex: 1; + width: 100%; + min-width: 250px; + padding: 5px 0 5px 5px; + margin: 0; + } + } + .label { + border: 1px solid #d2d2d2; + height: 30px; + justify-content: flex-start; + align-items: center; + display: flex; + } +} + +.button-remove { + display: flex; + justify-content: center; + color: #a7a7a7; + &:hover { + color: #009fdb; + } +} diff --git a/public/src/app/rule-engine/action/action.component.ts b/public/src/app/rule-engine/action/action.component.ts new file mode 100644 index 0000000..9c7023f --- /dev/null +++ b/public/src/app/rule-engine/action/action.component.ts @@ -0,0 +1,51 @@ +import { Component, Inject, Input, OnInit, ViewChild } from '@angular/core'; +// import { Copy } from "../model"; +import { Http, Response, Headers, RequestOptions } from '@angular/http'; +import { Observable } from 'rxjs/Rx'; +import 'rxjs/add/operator/map'; +import 'rxjs/add/operator/catch'; +import { Subject } from 'rxjs/Subject'; +import { NgForm } from '@angular/forms'; + +@Component({ + selector: 'app-action', + templateUrl: './action.component.html', + styleUrls: ['./action.component.scss'] +}) +export class ActionComponent implements OnInit { + @Input() action; + @ViewChild('from') fromInstance; + @ViewChild('target') targetInstance; + @ViewChild('actionFrm') actionFrm: NgForm; + highlight = 'black'; + hoveredIndex; + changeStyle($event) { + this.highlight = $event.type === 'mouseover' ? 'highlight' : 'black'; + } + ngOnInit(): void { + console.log(this.action.id); + if (this.action.from !== '') { + console.log('Action %o', this.action); + this.fromInstance.updateMode(this.action.from); + this.targetInstance.updateMode(this.action); + } + } + updateFrom(data) { + this.action.from = data; + } + updateTarget(data) { + this.action.selectedNode = data; + } + /* map functionality */ + addMapRow() { + this.action.map.values.push({ key: '', value: '' }); + } + removeMapRow(index) { + this.action.map.values.splice(index, 1); + } + + changeCheckbox() { + console.log(this.action.id); + return (this.action.map.haveDefault = !this.action.map.haveDefault); + } +} diff --git a/public/src/app/rule-engine/api/rule-engine-api.service.spec.ts b/public/src/app/rule-engine/api/rule-engine-api.service.spec.ts new file mode 100644 index 0000000..e15535b --- /dev/null +++ b/public/src/app/rule-engine/api/rule-engine-api.service.spec.ts @@ -0,0 +1,19 @@ +import { TestBed, inject } from '@angular/core/testing'; +import { HttpModule } from '@angular/http'; +import { RuleEngineApiService } from './rule-engine-api.service'; + +describe('RuleEngineApiService', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + imports: [HttpModule], + providers: [RuleEngineApiService] + }); + }); + + it( + 'should be created', + inject([RuleEngineApiService], (service: RuleEngineApiService) => { + expect(service).toBeTruthy(); + }) + ); +}); diff --git a/public/src/app/rule-engine/api/rule-engine-api.service.ts b/public/src/app/rule-engine/api/rule-engine-api.service.ts new file mode 100644 index 0000000..0d7ab5e --- /dev/null +++ b/public/src/app/rule-engine/api/rule-engine-api.service.ts @@ -0,0 +1,134 @@ +import { Injectable, EventEmitter } from '@angular/core'; +import { + Http, + Response, + Headers, + RequestOptions, + URLSearchParams +} from '@angular/http'; +import { Observable, Subject } from 'rxjs/Rx'; +// Import RxJs required methods +import 'rxjs/add/operator/map'; +import 'rxjs/add/operator/catch'; +import { environment } from '../../../environments/environment'; +import { v4 as uuid } from 'uuid'; + +@Injectable() +export class RuleEngineApiService { + options: RequestOptions; + headers: Headers; + baseUrl: string; + vfcmtUuid: string; + dcaeCompName: string; + nid: string; + configParam: string; + flowType: string; + editorData: Subject<any> = new Subject(); + updateVersionLock: Subject<any> = new Subject(); + + constructor(private http: Http) { + this.baseUrl = `${environment.apiBaseUrl}/rule-editor`; + } + + setParams(params) { + this.headers = new Headers({ + 'Content-Type': 'application/json', + USER_ID: params.userId + }); + this.options = new RequestOptions({ headers: this.headers }); + this.vfcmtUuid = params.vfcmtUuid; + this.dcaeCompName = params.nodeName; + this.nid = params.nodeId; + this.configParam = params.fieldName; + this.flowType = params.flowType; + } + + setFieldName(name) { + this.configParam = name; + } + + getMetaData() { + const url = `${this.baseUrl}/list-events-by-versions`; + this.options.headers.set('X-ECOMP-RequestID', uuid()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => + Observable.throw(error.json().requestError || 'Server error') + ); + } + + getSchema(version, eventType) { + const url = `${this.baseUrl}/definition/${version}/${eventType}`; + this.options.headers.set('X-ECOMP-RequestID', uuid()); + return this.http + .get(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => + Observable.throw(error.json().requestError || 'Server error') + ); + } + + getListOfRules(): Observable<any> { + const url = `${this.baseUrl}/rule/${this.vfcmtUuid}/${this.dcaeCompName}/${ + this.nid + }/${this.configParam}`; + this.options.headers.set('X-ECOMP-RequestID', uuid()); + return this.http + .get(url, this.options) + .map(response => response.json()) + .catch((error: any) => { + return Observable.throw(error.json().requestError || 'Server error'); + }); + } + + modifyRule(newRole) { + const url = `${this.baseUrl}/rule/${this.vfcmtUuid}/${this.dcaeCompName}/${ + this.nid + }/${this.configParam}`; + this.options.headers.set('X-ECOMP-RequestID', uuid()); + return this.http + .post(url, newRole, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json().requestError || 'Server error'); + }); + } + + deleteRule(uid) { + const url = `${this.baseUrl}/rule/${this.vfcmtUuid}/${this.dcaeCompName}/${ + this.nid + }/${this.configParam}/${uid}`; + this.options.headers.set('X-ECOMP-RequestID', uuid()); + return this.http + .delete(url, this.options) + .map((res: Response) => res.json()) + .catch((error: any) => { + return Observable.throw(error.json().requestError || 'Server error'); + }); + } + + translate() { + const url = `${this.baseUrl}/rule/translate/${this.vfcmtUuid}/${ + this.dcaeCompName + }/${this.nid}/${this.configParam}`; + this.options.headers.set('X-ECOMP-RequestID', uuid()); + const params = new URLSearchParams(); + params.append('flowType', this.flowType); + const options = { ...this.options, params: params }; + return this.http + .get(url, options) + .map(response => response.json()) + .catch((error: any) => { + return Observable.throw(error.json().requestError || 'Server error'); + }); + } + + passDataToEditor(data) { + this.editorData.next(data); + } + + callUpdateVersionLock() { + this.updateVersionLock.next(); + } +} diff --git a/public/src/app/rule-engine/condition/condition.component.html b/public/src/app/rule-engine/condition/condition.component.html new file mode 100644 index 0000000..a441f55 --- /dev/null +++ b/public/src/app/rule-engine/condition/condition.component.html @@ -0,0 +1,89 @@ +<tree-root #tree class="condition-tree" (initialized)="onInitialized(tree)" [nodes]="conditionTree" [options]="customTemplateStringOptions"> + <ng-template #treeNodeTemplate let-node let-index="index"> + + <div> + <div *ngIf="node.data.name === 'operator'" style="background: #F2F2F2;"> + <div style="display: flex; margin-left: 5px; align-items: center; min-height: 35px;"> + <div style="display: flex; align-items: center;" *ngIf="showType"> + <select style="padding: 5px;" [(ngModel)]="node.data.type"> + <option value="ANY">ANY</option> + <option value="ALL">ALL</option> + </select> + + <div style="display: flex; align-items: center; margin-left: 10px;"> + of the following are true: + </div> + </div> + + <div style="display: flex; margin-left: auto;"> + + <div style="display: flex; align-items: center; padding: 0 25px;"> + <button mat-mini-fab color="primary" (click)="addConditional(tree, node)" style="height: 24px; width: 24px; display:flex; box-shadow: none;"> + <mat-icon class="material-icons md-18">add</mat-icon> + </button> + <span class="btn-label">Add Condition + </span> + </div> + + <div style="display: flex; align-items: center; padding: 0 25px;"> + <button mat-mini-fab color="primary" data-tests-id="addConditionGroup" [disabled]="node.data.level === 2" (click)="addConditionalGroup(tree, node)" + style="height: 24px; width: 24px; display:flex; box-shadow: none;"> + <mat-icon class="material-icons md-18">add</mat-icon> + </button> + <span [style.color]="node.data.level === 2 ? '#a7a7a7' : '#009fdb' " [style.cursor]="node.data.level === 2 ? 'default' : 'pointer' " + class="btn-label">Add Condition Group + </span> + </div> + + <div style="display: flex; align-items: center; padding: 0 5px; background: #FFFFFF;"> + <button mat-icon-button (click)="removeConditional(tree, node)" class="button-remove"> + <mat-icon class="md-24">delete</mat-icon> + </button> + </div> + + </div> + </div> + </div> + <div *ngIf="node.data.name === 'condition'"> + <div class="from-conatiner" style="height:35px; "> + <div style="display: flex; width:90%;"> + <div class="label" style="width:100%"> + <span class="label" style="padding: 0 10px; border-left: none;"> + Input + </span> + <input class="input-text" data-tests-id="left" [(ngModel)]="node.data.left" (ngModelChange)="modelChange($event)" ngDefaultControl + type="text"> + </div> + + <div style="margin: 0 1rem;"> + <select style="height: 30px;" data-tests-id="selectOperator" [(ngModel)]="node.data.operator" (ngModelChange)="modelChange($event)" + ngDefaultControl> + <option [ngValue]="null" disabled>Select operator</option> + <option value="contains">Contains</option> + <option value="endsWith">Ends with</option> + <option value="startsWith">Starts with</option> + <option value="equals">Equals</option> + <option value="notEqual">Not equal</option> + </select> + </div> + + <div class="label" style="width:100%"> + <span class="label" style="padding: 0 10px; border-left: none;"> + Value + </span> + <input class="input-text" data-tests-id="right" (ngModelChange)="modelChange($event)" [(ngModel)]="node.data.right" ngDefaultControl + type="text"> + </div> + </div> + <!-- remove button --> + <div class="show-delete"> + <button mat-icon-button (click)="removeConditional(tree, node)" class="button-remove"> + <mat-icon class="md-24">delete</mat-icon> + </button> + </div> + + </div> + </div> + </div> + </ng-template> +</tree-root> diff --git a/public/src/app/rule-engine/condition/condition.component.scss b/public/src/app/rule-engine/condition/condition.component.scss new file mode 100644 index 0000000..8c0e9e0 --- /dev/null +++ b/public/src/app/rule-engine/condition/condition.component.scss @@ -0,0 +1,114 @@ +.condition-tree { + tree-viewport { + overflow-x: hidden; + overflow-y: hidden; + } + .angular-tree-component, + .tree-node-leaf { + margin: 0; + padding: 0; + } + .angular-tree-component { + padding-left: 1em; + overflow-y: hidden; + } + .tree-node-leaf.container { + border-bottom: 0px; + } + .tree-node-leaf.empty { + font-style: italic; + color: #fafafa; + border-color: #fafafa; + } + .tree-node-leaf div { + margin: 0; + top: 0.5em; + } + .node-wrapper { + background: white; + } + .tree-children { + border-left: 2px solid #f2f2f2; + // border-top: 1px solid #f2f2f2; + border-bottom: 1px solid #f2f2f2; + } + tree-node-expander { + display: none; + } + .node-content-wrapper { + padding-left: 0; + width: 100%; + .show-delete { + opacity: 0; + } + } + .tree-node-content { + width: 100%; + } + .node-content-wrapper-active, + .node-content-wrapper.node-content-wrapper-active:hover, + .node-content-wrapper-active.node-content-wrapper-focused { + background: white; + } + *:focus { + outline: none; + } + + .node-content-wrapper-active, + .node-content-wrapper-focused, + .node-content-wrapper:hover { + box-shadow: none; + .show-delete { + opacity: 1; + display: flex; + align-items: center; + padding: 0 5px; + } + } +} + +.from-conatiner { + display: flex; + align-items: center; + .input-text { + border: none; + flex: 1; + // width: 250px; + padding: 5px 0 5px 5px; + margin: 0; + } + .label { + border: 1px solid #d2d2d2; + height: 30px; + justify-content: center; + align-items: center; + display: flex; + cursor: default; + } +} + +.btn-label { + display: flex; + justify-content: center; + padding-left: 5px; + color: #009fdb; +} + +.button-label { + color: #a7a7a7; + display: flex; + justify-content: center; + padding-left: 5px; + &:hover { + color: #009fdb; + } +} + +.button-remove { + display: flex; + justify-content: center; + color: #a7a7a7; + &:hover { + color: #009fdb; + } +} diff --git a/public/src/app/rule-engine/condition/condition.component.spec.ts b/public/src/app/rule-engine/condition/condition.component.spec.ts new file mode 100644 index 0000000..bb0d38a --- /dev/null +++ b/public/src/app/rule-engine/condition/condition.component.spec.ts @@ -0,0 +1,51 @@ +import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { By } from '@angular/platform-browser'; +import { DebugElement } from '@angular/core'; +import { FormsModule } from '@angular/forms'; +import { HttpModule } from '@angular/http'; +import { + MatDialogModule, + MatButtonModule, + MatIconModule, + MatDialogRef, + MAT_DIALOG_DATA +} from '@angular/material'; + +import { ConditionComponent } from './condition.component'; + +describe('Condition Component', () => { + let component: ConditionComponent; + let fixture: ComponentFixture<ConditionComponent>; + let de: DebugElement; + let el: HTMLElement; + + beforeEach( + async(() => { + TestBed.configureTestingModule({ + imports: [ + FormsModule, + HttpModule, + MatDialogModule, + MatButtonModule, + MatIconModule + ], + providers: [], + schemas: [CUSTOM_ELEMENTS_SCHEMA], + declarations: [ConditionComponent] + }).compileComponents(); + }) + ); + + beforeEach(() => { + // create component and test fixture + fixture = TestBed.createComponent(ConditionComponent); + // get test component from the fixture + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should be created', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/public/src/app/rule-engine/condition/condition.component.ts b/public/src/app/rule-engine/condition/condition.component.ts new file mode 100644 index 0000000..f44fbf4 --- /dev/null +++ b/public/src/app/rule-engine/condition/condition.component.ts @@ -0,0 +1,161 @@ +import { + Component, + ViewEncapsulation, + ViewChild, + Output, + EventEmitter +} from '@angular/core'; +import { TreeModel, TreeComponent, ITreeOptions } from 'angular-tree-component'; +import { some } from 'lodash'; + +@Component({ + selector: 'app-condition', + templateUrl: './condition.component.html', + styleUrls: ['./condition.component.scss'], + encapsulation: ViewEncapsulation.None +}) +export class ConditionComponent { + conditionTree = []; + showType = false; + @ViewChild(TreeComponent) private tree: TreeComponent; + @Output() onConditionChange = new EventEmitter(); + @Output() removeConditionCheck = new EventEmitter(); + customTemplateStringOptions: ITreeOptions = { + isExpandedField: 'expanded', + animateExpand: true, + animateSpeed: 30, + animateAcceleration: 1.2 + }; + + constructor() { + this.conditionTree.push({ + name: 'operator', + level: 0, + type: 'ALL', + children: [] + }); + this.conditionTree[0].children.push({ + name: 'condition', + left: '', + right: '', + operator: null, + level: 1 + }); + } + + onInitialized(tree) { + tree.treeModel.expandAll(); + } + + updateMode(isSingle, data) { + if (isSingle) { + this.conditionTree[0].children.pop(); + if (typeof data.right !== 'string') { + data.right = data.right.join(','); + } + this.conditionTree[0].children.push({ + name: 'condition', + left: data.left, + right: data.right, + operator: data.operator, + level: 1 + }); + this.showType = false; + } else { + this.conditionTree = data; + setTimeout(() => (this.showType = true), 500); + } + this.tree.treeModel.update(); + } + + addConditional(tree, selectedNode) { + if (this.conditionTree[0].children.length > 0) { + this.showType = true; + } + const tempLevel = + selectedNode.data.name === 'condition' + ? selectedNode.data.level + : selectedNode.data.children[0].level; + + const conditionTemplate = { + name: 'condition', + left: '', + right: '', + operator: null, + level: tempLevel + }; + selectedNode.data.children.push(conditionTemplate); + tree.treeModel.update(); + } + + addConditionalGroup(tree, selectedNode) { + if (selectedNode.level < 3) { + if (this.conditionTree[0].children.length > 0) { + this.showType = true; + } + selectedNode.data.children.push({ + name: 'operator', + level: selectedNode.data.level + 1, + type: 'ALL', + children: [] + }); + + for (let i = 0; i < 2; i++) { + selectedNode.data.children[ + selectedNode.data.children.length - 1 + ].children.push({ + name: 'condition', + left: '', + right: '', + operator: null, + level: selectedNode.data.level + 2 + }); + } + tree.treeModel.update(); + tree.treeModel.expandAll(); + } + } + + removeConditional(tree, selectedNode) { + if ( + (selectedNode.level === 1 && selectedNode.index === 0) || + (selectedNode.parent.data.name === 'operator' && + selectedNode.parent.level === 1 && + selectedNode.parent.data.children.length === 1) + ) { + this.removeConditionCheck.emit(false); + } else if ( + selectedNode.parent.level === 1 && + selectedNode.parent.data.children.length === 2 && + selectedNode.data.name === 'condition' && + some(selectedNode.parent.data.children, { name: 'operator' }) + ) { + return; + } else { + if ( + selectedNode.parent.data.name === 'operator' && + selectedNode.parent.level > 1 + ) { + // Nested Group can delete when more then 2 + if (selectedNode.parent.data.children.length > 2) { + this.deleteNodeAndUpdateTreeView(selectedNode, tree); + } + } else { + this.deleteNodeAndUpdateTreeView(selectedNode, tree); + if (this.conditionTree[0].children.length === 1) { + this.showType = false; + } + } + } + } + + private deleteNodeAndUpdateTreeView(selectedNode: any, tree: any) { + selectedNode.parent.data.children.splice(selectedNode.index, 1); + tree.treeModel.update(); + this.onConditionChange.emit(this.conditionTree); + } + + modelChange(event) { + this.onConditionChange.emit(this.conditionTree); + } +} diff --git a/public/src/app/rule-engine/confirm-popup/confirm-popup.component.html b/public/src/app/rule-engine/confirm-popup/confirm-popup.component.html new file mode 100644 index 0000000..49c800a --- /dev/null +++ b/public/src/app/rule-engine/confirm-popup/confirm-popup.component.html @@ -0,0 +1,12 @@ +<div class="container" data-tests-id="delete-popup"> + <div class="header"> + Delete + </div> + <div class="content"> + Are you sure you want to delete? + </div> + <div class="buttons"> + <button mat-raised-button (click)="close(true)" data-tests-id="btnDelete" style="margin-right: 1rem;" color="primary">Delete</button> + <button mat-raised-button (click)="close(false)" data-tests-id="btnCancel" style="border: 1px solid #009FDB; color: #009FDB; background: #ffffff;">Cancel</button> + </div> +</div> diff --git a/public/src/app/rule-engine/confirm-popup/confirm-popup.component.scss b/public/src/app/rule-engine/confirm-popup/confirm-popup.component.scss new file mode 100644 index 0000000..2a826ff --- /dev/null +++ b/public/src/app/rule-engine/confirm-popup/confirm-popup.component.scss @@ -0,0 +1,20 @@ +.container { + display: flex; + justify-content: space-between; + margin: 0 !important; + border-top: solid 6px #ffb81c; + .header { + border-bottom: none; + } + .content { + margin: 1rem; + flex: 1; + font-weight: 400; + } + .buttons { + display: flex; + justify-content: flex-end; + border-top: solid 1px #eaeaea; + padding: 1rem; + } +} diff --git a/public/src/app/rule-engine/confirm-popup/confirm-popup.component.ts b/public/src/app/rule-engine/confirm-popup/confirm-popup.component.ts new file mode 100644 index 0000000..23b6cee --- /dev/null +++ b/public/src/app/rule-engine/confirm-popup/confirm-popup.component.ts @@ -0,0 +1,18 @@ +import { Component, Inject } from '@angular/core'; +import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material'; + +@Component({ + selector: 'app-confirm-popup', + templateUrl: './confirm-popup.component.html', + styleUrls: ['./confirm-popup.component.scss'] +}) +export class ConfirmPopupComponent { + constructor( + public dialogRef: MatDialogRef<ConfirmPopupComponent>, + @Inject(MAT_DIALOG_DATA) public data: any + ) {} + + close(flag) { + this.dialogRef.close(flag); + } +} diff --git a/public/src/app/rule-engine/from/from.component.html b/public/src/app/rule-engine/from/from.component.html new file mode 100644 index 0000000..7af653d --- /dev/null +++ b/public/src/app/rule-engine/from/from.component.html @@ -0,0 +1,70 @@ +<form #fromFrm="ngForm" novalidate> + <!-- Copy template --> + <div class="from" *ngIf="actionType === 'copy'" data-tests-id="fromComponent"> + <div class="from-conatiner"> + <div style="display: flex; align-items: center; width: 100%;" class="label"> + <span class="label" style="padding: 0 5px; width: 50px;">From</span> + <input class="input-text" name="copyFrom" required style="min-width: 190px;" (ngModelChange)="modelChange(from)" #copyFrom="ngModel" + [(ngModel)]="from.value" type="text" data-tests-id="valueInput"> + <span class="label" (click)="showRegex(from)" [ngStyle]="from.state === 'open' ? { 'color': '#009FDB'} : {'color':'gray'}" + style="padding: 0 5px; width: 50px; cursor: pointer; border: none" data-tests-id="btnFromRegex">Re/g</span> + </div> + <div [@state]="from.state" *ngIf="from.state === 'open'" style="display: flex; align-items: center; width: 80%;" class="label"> + <span class="label" style="padding: 0 3px; width: 54px; border-top: none; border-bottom: none;">regex</span> + <input class="input-text" style="min-width: 192px;" (ngModelChange)="modelChange(from)" [(ngModel)]="from.regex" type="text" + ngModel required name="RegexInput" data-tests-id="inputFromRegex"> + </div> + </div> + </div> + <!-- Map template --> + <div class="from" *ngIf="actionType === 'map'" data-tests-id="fromComponent"> + <div class="from-conatiner"> + <div style="display: flex; align-items: center; width: 100%;" class="label"> + <span class="label" style="padding: 0 5px; width: 50px;">From</span> + <input class="input-text" ngModel required name="mapFromInput" (ngModelChange)="modelChange(from)" [(ngModel)]="from.value" + type="text" data-tests-id="valueInput"> + </div> + </div> + </div> + + <!-- dateFormatter template --> + <div class="from" *ngIf="actionType === 'date formatter'" data-tests-id="fromComponent"> + <div class="from-conatiner"> + <div style="display: flex; align-items: center; width: 100%;" class="label"> + <span class="label" style="padding: 0 5px; width: 50px;">From</span> + <input class="input-text" ngModel required name="dateFormatterFromInput" (ngModelChange)="modelChange(from)" [(ngModel)]="from.value" + type="text" data-tests-id="valueInput"> + </div> + </div> + </div> + + <!-- Concat template --> + <div class="from" *ngIf="actionType === 'concat'" ngModelGroup="concat" #concatFrom="ngModelGroup"> + <div *ngFor="let input of from.values; let index = index;" data-tests-id="concatInputArrayFrom" (mouseleave)="hoveredIndex=-1" + (mouseover)="hoveredIndex=index" class="from-conatiner" style="margin-bottom:1rem; display: flex; flex-direction: column; align-items: flex-start;" + data-tests-id="fromComponent"> + <div style="display: flex; align-items: center; width: 100%;"> + <div style="display: flex; align-items: center; width: 100%;" class="label"> + <span class="label" style="padding: 0 5px; width: 50px;">From</span> + <input class="input-text" (ngModelChange)="modelChange(from)" [(ngModel)]="input.value" type="text" data-tests-id="valueInput" + ngModel required name="concat[{{index}}]"> + </div> + + <button mat-icon-button class="button-remove" [ngStyle]="hoveredIndex === index ? {'opacity':'1'} : {'opacity':'0'}" (click)="removeFromInput(index)" + *ngIf="from.values.length > 2" style="box-shadow: none; height: 24px; width: 24px; display:flex" data-tests-id="btnDelete"> + <mat-icon class="md-24">delete</mat-icon> + </button> + </div> + + </div> + <div style="display:flex; justify-content: space-between;"> + <div style="display: flex; align-items: center;"> + <button mat-mini-fab color="primary" (click)="addFromInput()" style="box-shadow: none; height: 24px; width: 24px; display:flex" + data-tests-id="btnAddInput"> + <mat-icon>add</mat-icon> + </button> + <span style="color: #009FDB; display: flex; justify-content: center; padding-left: 6px">Add input</span> + </div> + </div> + </div> +</form> diff --git a/public/src/app/rule-engine/from/from.component.scss b/public/src/app/rule-engine/from/from.component.scss new file mode 100644 index 0000000..852984d --- /dev/null +++ b/public/src/app/rule-engine/from/from.component.scss @@ -0,0 +1,63 @@ +.from { + display: flex; + flex-direction: column; + padding: 0 10px; + + .label { + border: 1px solid #d2d2d2; + height: 30px; + justify-content: center; + align-items: center; + display: flex; + } +} + +.from-select { + width: 250px; + border: none; +} + +.from-conatiner { + display: flex; + flex-direction: column; + align-items: flex-start; + width: 100%; + min-width: 350px; + + .input-text { + border: none; + flex: 1; + width: 100%; + min-width: 250px; + padding: 5px 0 5px 5px; + margin: 0; + } +} + +.button-remove { + display: flex; + justify-content: center; + color: #a7a7a7; + &:hover { + color: #009fdb; + } +} + +:host { + @mixin md-icon-size($size: 24px) { + font-size: $size; + height: $size; + width: $size; + } + + .material-icons.mat-icon { + @include md-icon-size(24px); + } + /deep/ .mat-button-wrapper { + padding: 0; + } + .mat-icon { + width: 18px; + height: 18px; + } +} diff --git a/public/src/app/rule-engine/from/from.component.ts b/public/src/app/rule-engine/from/from.component.ts new file mode 100644 index 0000000..e7c276b --- /dev/null +++ b/public/src/app/rule-engine/from/from.component.ts @@ -0,0 +1,91 @@ +import { + Component, + Input, + Output, + EventEmitter, + ViewChild +} from '@angular/core'; +// import { From } from "../model"; +import { Subject } from 'rxjs/Subject'; +import { + trigger, + state, + animate, + transition, + style, + keyframes +} from '@angular/animations'; +import { NgForm } from '@angular/forms'; + +@Component({ + selector: 'app-from', + templateUrl: './from.component.html', + styleUrls: ['./from.component.scss'], + animations: [ + trigger('state', [ + state( + 'open', + style({ + opacity: 1, + height: 'auto' + }) + ), + transition('* => open', [ + animate( + 200, + keyframes([ + style({ + opacity: 1, + height: 'auto' + }) + ]) + ) + ]), + state( + 'closed', + style({ + opacity: 0, + height: 0 + }) + ) + ]) + ] +}) +export class FromComponent { + from: any = { + value: '', + regex: '', + state: 'closed', + values: [{ value: '' }, { value: '' }] + }; + @Input() actionType; + @Output() onFromChange = new EventEmitter(); + @ViewChild('fromFrm') fromFrm: NgForm; + hoveredIndex; + // public keyUp = new BehaviorSubject<string>(null); + + showRegex(item) { + item.state = item.state === 'closed' ? 'open' : 'closed'; + if (item.state === 'closed') { + item.regex = ''; + } + } + updateMode(fromData) { + console.log(fromData); + if (fromData) { + this.from = fromData; + } + } + + constructor() {} + + modelChange(event) { + this.onFromChange.emit(event); + } + addFromInput() { + this.from.values.push({ value: '' }); + } + removeFromInput(index) { + this.from.values.splice(index, 1); + } +} diff --git a/public/src/app/rule-engine/host/exit-mode.enum.ts b/public/src/app/rule-engine/host/exit-mode.enum.ts new file mode 100644 index 0000000..784ba3b --- /dev/null +++ b/public/src/app/rule-engine/host/exit-mode.enum.ts @@ -0,0 +1,4 @@ +export enum ExitMode { + Done, + Cancel +} diff --git a/public/src/app/rule-engine/host/host-params.ts b/public/src/app/rule-engine/host/host-params.ts new file mode 100644 index 0000000..f204101 --- /dev/null +++ b/public/src/app/rule-engine/host/host-params.ts @@ -0,0 +1,8 @@ +export interface HostParams { + readonly vfcmtUuid: string; + readonly nodeName: string; + readonly nodeId: string; + readonly fieldName: string; + readonly userId: string; + readonly flowType: string; +} diff --git a/public/src/app/rule-engine/host/host.service.spec.ts b/public/src/app/rule-engine/host/host.service.spec.ts new file mode 100644 index 0000000..048be80 --- /dev/null +++ b/public/src/app/rule-engine/host/host.service.spec.ts @@ -0,0 +1,18 @@ +import { TestBed, inject } from '@angular/core/testing'; + +import { HostService } from './host.service'; + +describe('HostService', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [HostService] + }); + }); + + it( + 'should be created', + inject([HostService], (service: HostService) => { + expect(service).toBeTruthy(); + }) + ); +}); diff --git a/public/src/app/rule-engine/host/host.service.ts b/public/src/app/rule-engine/host/host.service.ts new file mode 100644 index 0000000..7918d30 --- /dev/null +++ b/public/src/app/rule-engine/host/host.service.ts @@ -0,0 +1,56 @@ +import { Injectable } from '@angular/core'; +import { HostParams } from './host-params'; +import { ExitMode } from './exit-mode.enum'; + +@Injectable() +export class HostService { + /* Public Members */ + + public static getParams(): HostParams { + return this.getQueryParamsObj(window.location.search) as HostParams; + } + + public static enterModifyRule(): void { + this.postMessage('modifyRule', null); + } + + public static exitModifyRule(): void { + this.postMessage('ruleList', null); + } + + public static disableLoader(): void { + this.postMessage('disable-loader', null); + } + + public static exit(mode: ExitMode, data: string): void { + if (mode === ExitMode.Cancel) { + this.postMessage('exit', null); + } else if (mode === ExitMode.Done) { + this.postMessage('exit', data); + } + } + + /* Private Methods */ + + private static postMessage(eventName: string, data: string): void { + window.parent.postMessage( + { + type: eventName, + data: data + }, + '*' + ); + } + + private static getQueryParamsObj(query: string): object { + return query + .substring(1) // removes '?' that always appears as prefix to the query-string + .split('&') // splits query-string to "key=value" strings + .map(p => p.split('=')) // splits each "key=value" string to [key,value] array + .reduce((res, p) => { + // converts to a dictionary (object) of params + res[p[0]] = p[1]; + return res; + }, {}); + } +} diff --git a/public/src/app/rule-engine/rule-list/rule-list.component.html b/public/src/app/rule-engine/rule-list/rule-list.component.html new file mode 100644 index 0000000..c68c706 --- /dev/null +++ b/public/src/app/rule-engine/rule-list/rule-list.component.html @@ -0,0 +1,73 @@ +<div class="container"> + <div class="header"> + <span style="font-size: 18px;">Rule Engine</span> + <div style="display:flex"> + <button mat-raised-button (click)="translateRules()" color="primary" [disabled]="store.ruleList.length === 0" style="margin-left: 20px;" + data-tests-id="btnTranslate"> + Translate + </button> + <app-bar-icons [tabName]="this.store.tabParmasForRule[0].name"></app-bar-icons> + </div> + </div> + + <div style="margin: 0rem 1rem; flex-grow: 1; overflow-y: auto;"> + + <!-- error container --> + <div *ngIf="error" style="color: white; background: red; padding: 1rem; border-radius: 5px; font-weight: bold;"> + {{ error }} + </div> + + <app-version-type-select #versionEventType [versions]="versions" [metaData]="metaData" (nodesUpdated)="handleUpdateNode($event)" + (refrashRuleList)="handlePropertyChange()"></app-version-type-select> + + <div *ngIf="targetSource && store.ruleList.length === 0" style="margin: 30px 0; display: flex; align-items: center; justify-content: center; flex-direction: column;"> + + <div style="margin: 3em 0 2em 0;"> + <div style="font-size: 1.5em;"> + Rules were not yet created + </div> + <div style="padding: 0.5em; padding-top: 1em;"> + Please create a new normalization rule + </div> + </div> + + <button mat-fab (click)="openAction()" style="background-color:#009FDB" data-tests-id="btnAddFirstRule"> + <span [innerHTML]="'plus' | feather:24"></span> + </button> + <span style="margin-top: 1rem; font-size: 14px; color: #009FDB;"> + Add First Rule + </span> + </div> + + <div *ngIf="store.ruleList.length > 0"> + <div style="padding: 10px 0;"> + Rules + </div> + <div style="display: flex; align-items: center;"> + <button mat-mini-fab color="primary" id="addMoreRule" data-tests-id="addMoreRule" style="height: 24px; width: 24px; display:flex" + (click)="openAction()"> + <mat-icon class="material-icons md-18">add</mat-icon> + </button> + <span style="color: #009FDB; display: flex; justify-content: center; padding-left: 10px">Add Rule</span> + </div> + </div> + + <div style="margin: 30px 0 10px 0;"> + + <div *ngFor="let item of store.ruleList; let index = index" data-tests-id="ruleElement" (mouseleave)="hoveredIndex=-1" (mouseover)="hoveredIndex=index" + class="item" style="display: flex;" [ngStyle]="hoveredIndex === index ? {'background-color': '#E6F6FB', 'color': '#009FDB'} : {'background-color': '#FFFFFF', 'color':'gray'}"> + <span style="width:100%; display: flex; align-items: center;"> + {{item.description}} - [{{item.uid}}] + </span> + <div style="display: flex; justify-content: flex-end;" *ngIf="index==hoveredIndex"> + <button (click)="openAction(item)" data-tests-id="editRule" class="btn-list" mat-icon-button> + <mat-icon class="md-24">mode_edit</mat-icon> + </button> + <button (click)="removeItem(item.uid)" data-tests-id="deleteRule" class="btn-list" mat-icon-button> + <mat-icon class="md-24">delete</mat-icon> + </button> + </div> + </div> + </div> + </div> +</div> diff --git a/public/src/app/rule-engine/rule-list/rule-list.component.scss b/public/src/app/rule-engine/rule-list/rule-list.component.scss new file mode 100644 index 0000000..c4aee05 --- /dev/null +++ b/public/src/app/rule-engine/rule-list/rule-list.component.scss @@ -0,0 +1,109 @@ +.container { + // margin: 1rem; + position: relative; + height: 100%; + display: flex; + flex-direction: column; + + .header { + position: relative; + display: flex; + justify-content: space-between; + align-items: center; + color: #191919; + border-bottom: 2px solid #d2d2d2; + padding-bottom: 0.5rem; + margin: 1rem; + } + + .item { + border: 1px solid #d2d2d2; + padding: 0 10px; + height: 40px; + } + + .mat-fab, + .mat-mini-fab, + .mat-raised-button { + box-shadow: none; + } +} +.my-full-screen-dialog .mat-dialog-container { + max-width: none; + width: 100vw; + height: 100vh; + padding: 0; +} + +.my-confrim-dialog .mat-dialog-container { + max-width: 600px; + width: 500px; + height: 200px; + padding: 0; +} + +.btn-list { + display: flex !important; + justify-content: center !important; + color: #d2d2d2 !important; + + &:hover { + color: #009fdb !important; + } +} + +.hr { + display: block; + margin: 10px 0 10px 0; + border-top: 1px solid rgba(0, 0, 0, 0.12); + width: 100%; +} + +.mat-fab, +.mat-mini-fab, +.mat-raised-button { + box-shadow: none; +} + +.mat-mini-fab .mat-button-wrapper { + padding: 0 !important; +} +.mat-icon { + // width: 18px; + // height: 18px; + display: flex !important; + justify-content: center !important; + align-items: center !important; +} +/* Rules for sizing the icon. */ +.material-icons.md-18 { + font-size: 18px; +} +.material-icons.md-24 { + font-size: 24px; +} +.material-icons.md-30 { + font-size: 30px; +} +.material-icons.md-36 { + font-size: 36px; +} +.material-icons.md-48 { + font-size: 48px; +} + +/* Rules for using icons as black on a light background. */ +.material-icons.md-dark { + color: rgba(0, 0, 0, 0.54); +} +.material-icons.md-dark.md-inactive { + color: rgba(0, 0, 0, 0.26); +} + +/* Rules for using icons as white on a dark background. */ +.material-icons.md-light { + color: rgba(255, 255, 255, 1); +} +.material-icons.md-light.md-inactive { + color: rgba(255, 255, 255, 0.3); +} diff --git a/public/src/app/rule-engine/rule-list/rule-list.component.ts b/public/src/app/rule-engine/rule-list/rule-list.component.ts new file mode 100644 index 0000000..45cfbd0 --- /dev/null +++ b/public/src/app/rule-engine/rule-list/rule-list.component.ts @@ -0,0 +1,197 @@ +import { Component, ViewEncapsulation, ViewChild } from '@angular/core'; +import { MatDialog } from '@angular/material'; +import { ActionListComponent } from '../action-list/action-list.component'; +import { RuleEngineApiService } from '../api/rule-engine-api.service'; +import { ConfirmPopupComponent } from '../confirm-popup/confirm-popup.component'; +import { Store } from '../../store/store'; +import { isEmpty } from 'lodash'; +import { ToastrService } from 'ngx-toastr'; +import { timer } from 'rxjs/observable/timer'; + +const primaryColor = '#009fdb'; + +@Component({ + selector: 'app-rule-list', + templateUrl: './rule-list.component.html', + styleUrls: ['./rule-list.component.scss'], + encapsulation: ViewEncapsulation.None +}) +export class RuleListComponent { + @ViewChild('versionEventType') versionType; + error: Array<string>; + // list = new Array(); + schema; + targetSource; + dialogRef; + crud; + hoveredIndex; + params; + versions; + metaData; + + private errorHandler(error: any) { + this.store.loader = false; + console.log(error); + this.error = []; + if (typeof error === 'string') { + this.error.push(error); + } else { + console.log(error.notes); + const errorFromServer = Object.values(error)[0] as any; + if (Object.keys(error)[0] === 'serviceExceptions') { + this.error = errorFromServer.map(x => x.formattedErrorMessage); + } else { + this.error = errorFromServer.formattedErrorMessage; + } + } + } + + private getListOfRules() { + this._ruleApi.getListOfRules().subscribe( + response => { + console.log('res: %o', response); + if (response && Object.keys(response).length !== 0) { + this.versionType.updateData( + response.version, + response.eventType, + true + ); + this.store.updateRuleList(Object.values(response.rules)); + this.targetSource = response.schema; + } else { + this.store.resetRuleList(); + this.versionType.updateVersionTypeFlag(false); + this.targetSource = null; + // if the the list is empty then get version and domain events + this._ruleApi.getMetaData().subscribe(data => { + console.log(data); + this.versions = data.map(x => x.version); + this.metaData = data; + }); + } + this.store.loader = false; + }, + error => { + this.errorHandler(error); + } + ); + } + + constructor( + private _ruleApi: RuleEngineApiService, + public dialog: MatDialog, + private toastr: ToastrService, + public store: Store + ) { + this.store.loader = true; + this.params = { + vfcmtUuid: this.store.mcUuid, + nodeName: this.store.tabParmasForRule[0].name, + nodeId: this.store.tabParmasForRule[0].nid, + fieldName: this.store.configurationForm[0].name, + userId: 'ym903w', // this.store.sdcParmas.userId + flowType: this.store.cdump.flowType + }; + console.log('params: %o', this.params); + this.store.loader = true; + // set api params by iframe url query + this._ruleApi.setParams(this.params); + this.getListOfRules(); + } + + handlePropertyChange() { + this.store.loader = true; + this.error = null; + this.getListOfRules(); + } + + translateRules() { + this.store.loader = true; + // send translate JSON + this._ruleApi.translate().subscribe( + data => { + this.store.loader = false; + console.log(JSON.stringify(data)); + let domElementName: string; + this.store.configurationForm.forEach(property => { + console.log('mappingTarget ', this.versionType.mappingTarget); + if (property.name === this.versionType.mappingTarget) { + property.assignment.value = JSON.stringify(data); + domElementName = property.name; + console.log(property.name); + } + }); + this.toastr.success('', 'Translate succeeded'); + this.store.expandAdvancedSetting[this.store.tabIndex] = true; + const source = timer(500); + source.subscribe(val => { + const el = document.getElementById(domElementName); + const label = el.children.item(0) as HTMLElement; + label.style.color = primaryColor; + const input = el.children.item(1) as HTMLElement; + input.style.color = primaryColor; + input.style.borderColor = primaryColor; + el.scrollIntoView(); + }); + }, + error => { + this.errorHandler(error); + } + ); + } + + handleUpdateNode(data) { + this.targetSource = data.nodes; + this.store.resetRuleList(); + } + + removeItem(uid) { + this.dialogRef = this.dialog.open(ConfirmPopupComponent, { + panelClass: 'my-confrim-dialog', + disableClose: true + }); + this.dialogRef.afterClosed().subscribe(result => { + // if the user want to delete + if (result) { + // call be api + this.store.loader = true; + this._ruleApi.deleteRule(uid).subscribe( + success => { + this.store.removeRuleFromList(uid); + // if its the last rule + if (this.store.ruleList.length === 0) { + this._ruleApi.getMetaData().subscribe(data => { + console.log(data); + this.versions = data.map(x => x.version); + this.metaData = data; + this.versionType.updateVersionTypeFlag(false); + this.targetSource = null; + }); + } + this.store.loader = false; + }, + error => { + this.store.loader = false; + this.errorHandler(error); + } + ); + } + }); + } + + openAction(item): void { + this.crud = isEmpty(item) ? 'new' : 'edit'; + this._ruleApi.passDataToEditor({ + version: this.versionType.selectedVersion, + eventType: this.versionType.selectedEvent, + targetSource: this.targetSource, + item: isEmpty(item) ? null : item, + params: this.params + }); + this.store.isLeftVisible = false; + + this._ruleApi.updateVersionLock.subscribe(() => { + this.versionType.updateVersionTypeFlag(true); + }); + } +} diff --git a/public/src/app/rule-engine/slide-panel/slide-panel.component.html b/public/src/app/rule-engine/slide-panel/slide-panel.component.html new file mode 100644 index 0000000..f0ee27e --- /dev/null +++ b/public/src/app/rule-engine/slide-panel/slide-panel.component.html @@ -0,0 +1,8 @@ +<div class="panes" [@slide]="activePane"> + <div style="height: 100%"> + <ng-content select="[leftPane]"></ng-content> + </div> + <div style="height: 100%"> + <ng-content select="[rightPane]"></ng-content> + </div> +</div> diff --git a/public/src/app/rule-engine/slide-panel/slide-panel.component.scss b/public/src/app/rule-engine/slide-panel/slide-panel.component.scss new file mode 100644 index 0000000..2c9f00a --- /dev/null +++ b/public/src/app/rule-engine/slide-panel/slide-panel.component.scss @@ -0,0 +1,15 @@ +:host { + display: block; + overflow: hidden; + height: 100%; +} + +.panes { + height: 100%; + width: 200%; + + display: flex; + div { + flex: 1; + } +} diff --git a/public/src/app/rule-engine/slide-panel/slide-panel.component.ts b/public/src/app/rule-engine/slide-panel/slide-panel.component.ts new file mode 100644 index 0000000..d7aa652 --- /dev/null +++ b/public/src/app/rule-engine/slide-panel/slide-panel.component.ts @@ -0,0 +1,27 @@ +import { Component, ChangeDetectionStrategy, Input } from '@angular/core'; +import { + animate, + state, + style, + transition, + trigger +} from '@angular/animations'; + +type PaneType = 'left' | 'right'; + +@Component({ + selector: 'app-slide-panel', + changeDetection: ChangeDetectionStrategy.OnPush, + templateUrl: './slide-panel.component.html', + styleUrls: ['./slide-panel.component.scss'], + animations: [ + trigger('slide', [ + state('left', style({ transform: 'translateX(0)' })), + state('right', style({ transform: 'translateX(-50%)' })), + transition('* => *', animate(300)) + ]) + ] +}) +export class SlidePanelComponent { + @Input() activePane: PaneType = 'left'; +} diff --git a/public/src/app/rule-engine/target/target.component.html b/public/src/app/rule-engine/target/target.component.html new file mode 100644 index 0000000..7a321ef --- /dev/null +++ b/public/src/app/rule-engine/target/target.component.html @@ -0,0 +1,28 @@ +<form #targetFrm="ngForm" novalidate class="target"> + <div class="top-select"> + <span class="label" style="border-right: none;">Target</span> + <input class="text-input" style="border-right: none;" type="text" [(ngModel)]="selectedNode.id" (ngModelChange)="inputChange()" + ngModel required name="targetInput" data-tests-id="inputTarget"> + <span class="label clickable" data-tests-id="openTargetTree" style="border-left: none;" (click)="showOption = !showOption"> + <img src="{{imgBase}}/target.svg" alt="target"> + </span> + </div> + <div class="bottom-select" *ngIf="showOption" [@toggleDropdown]> + <div class="filter-container" style="display: flex; border-bottom: 1px solid #F2F2F2;margin-bottom: 1rem; width:100%;"> + <input id="filter" #filter class="filter" (keyup)="tree.treeModel.filterNodes(filter.value)" placeholder="Search..." /> + <button mat-raised-button style="min-width: 18px; box-shadow: none; display: flex; justify-content: center;" (click)="tree.treeModel.clearFilter(); filter.value = ''"> + <mat-icon>clear</mat-icon> + </button> + </div> + + <tree-root #tree [focused]="true" class="targetTree" (event)="onEvent($event)" [nodes]="nodes" [options]="options"> + <ng-template #treeNodeTemplate let-node let-index="index"> + <span *ngIf="node.data.isRequired" class="required"></span> + <span data-tests-id="targetNode"> + {{ node.data.name }} + </span> + </ng-template> + </tree-root> + + </div> +</form> diff --git a/public/src/app/rule-engine/target/target.component.scss b/public/src/app/rule-engine/target/target.component.scss new file mode 100644 index 0000000..ed2d70e --- /dev/null +++ b/public/src/app/rule-engine/target/target.component.scss @@ -0,0 +1,99 @@ +.targetTree { + tree-viewport { + overflow: hidden; + } +} + +.conatiner { + display: flex; + flex-direction: column; + width: 100%; + height: 100%; + justify-content: space-between; + + .center-content { + display: flex; + width: 100%; + + .action-info { + background: #93cdff; + padding: 6px; + border-radius: 5px; + height: 20px; + margin: 0 10px; + } + + .regex { + max-width: 250px; + float: right; + display: flex; + align-items: center; + padding: 20px 10px; + + .label { + border: 1px solid #d2d2d2; + padding: 0 5px; + height: 30px; + justify-content: center; + align-items: center; + display: flex; + } + } + } +} +.target { + width: 100%; + .top-select { + overflow: hidden; + display: flex; + align-items: center; + justify-content: space-between; + width: 100%; + } + .label { + border: 1px solid #d2d2d2; + padding: 0 5px; + height: 30px; + justify-content: center; + align-items: center; + display: flex; + } + + .bottom-select { + border: 1px solid #ccc; + padding: 7px; + .filter-container { + padding: 5px; + .filter { + background: #fff; + color: black; + font: inherit; + border: 0; + outline: 0; + padding: 10px; + width: 100%; + } + } + } +} + +.small-padding { + padding-right: 10px; +} + +.text-input { + width: 100%; + height: 30px; + margin: 0; + padding: 0 5px; + border: 1px solid #d2d2d2; +} + +.clickable { + cursor: pointer; +} + +.required::before { + content: '*'; + color: red; +} diff --git a/public/src/app/rule-engine/target/target.component.spec.ts b/public/src/app/rule-engine/target/target.component.spec.ts new file mode 100644 index 0000000..6ddd8cd --- /dev/null +++ b/public/src/app/rule-engine/target/target.component.spec.ts @@ -0,0 +1,57 @@ +import { Component, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; +import { By } from '@angular/platform-browser'; +import { DebugElement } from '@angular/core'; +import { FormsModule } from '@angular/forms'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { MatButtonModule, MatIconModule } from '@angular/material'; +// component +import { TargetComponent } from './target.component'; + +describe('TargetComponent', () => { + let component: TargetComponent; + let fixture: ComponentFixture<TargetComponent>; + let de: DebugElement; + let el: HTMLElement; + + beforeEach( + async(() => { + TestBed.configureTestingModule({ + imports: [ + FormsModule, + BrowserAnimationsModule, + MatButtonModule, + MatIconModule + ], + providers: [], + schemas: [CUSTOM_ELEMENTS_SCHEMA], + declarations: [TargetComponent] + }).compileComponents(); + }) + ); + + beforeEach(() => { + // create component and test fixture + fixture = TestBed.createComponent(TargetComponent); + // get test component from the fixture + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should be created', () => { + expect(component).toBeTruthy(); + }); + + it('should open target tree when click on button', () => { + const openTargetElement = fixture.debugElement + .query(By.css('span[data-tests-id=openTargetTree]')) + .nativeElement.click(); + + fixture.detectChanges(); + + const treeContainer = fixture.debugElement.query( + By.css('.filter-container') + ); + expect(treeContainer).not.toBeNull(); + }); +}); diff --git a/public/src/app/rule-engine/target/target.component.ts b/public/src/app/rule-engine/target/target.component.ts new file mode 100644 index 0000000..f17cdef --- /dev/null +++ b/public/src/app/rule-engine/target/target.component.ts @@ -0,0 +1,77 @@ +import { + Component, + ViewEncapsulation, + ViewChild, + Input, + Output, + EventEmitter +} from '@angular/core'; +import { TreeModel, TreeComponent, ITreeOptions } from 'angular-tree-component'; +import { + trigger, + state, + animate, + transition, + style +} from '@angular/animations'; +import { fuzzysearch, getBranchRequierds, validation } from './target.util'; +import { environment } from '../../../environments/environment'; +import { NgForm } from '@angular/forms'; + +@Component({ + selector: 'app-target', + templateUrl: './target.component.html', + styleUrls: ['./target.component.scss'], + encapsulation: ViewEncapsulation.None, + animations: [ + trigger('toggleDropdown', [ + transition('void => *', [ + style({ opacity: 0, offset: 0, height: 0 }), + animate('300ms cubic-bezier(0.17, 0.04, 0.03, 0.94)') + ]), + transition('* => void', [ + style({ opacity: 1, offset: 1, height: 'auto' }), + animate('100ms cubic-bezier(0.17, 0.04, 0.03, 0.94)') + ]) + ]) + ] +}) +export class TargetComponent { + imgBase = environment.imagePath; + showOption = false; + selectedNode = { name: '', id: '' }; + @Input() nodes; + @Output() onTargetChange = new EventEmitter(); + @ViewChild(TreeComponent) private tree: TreeComponent; + @ViewChild('targetFrm') targetFrm: NgForm; + options: ITreeOptions = { + animateExpand: true, + animateSpeed: 30, + animateAcceleration: 1.2 + }; + + filterFn(value, treeModel: TreeModel) { + treeModel.filterNodes(node => fuzzysearch(value, node.data.name)); + } + + inputChange() { + this.onTargetChange.emit(this.selectedNode.id); + } + + updateMode(action) { + this.selectedNode = { + id: action.target, + name: '' + }; + } + + onEvent(event) { + if (event.eventName === 'activate') { + if (event.node.data.children === null) { + this.selectedNode = event.node.data; + this.onTargetChange.emit(this.selectedNode); + this.showOption = false; + } + } + } +} diff --git a/public/src/app/rule-engine/target/target.util.ts b/public/src/app/rule-engine/target/target.util.ts new file mode 100644 index 0000000..6a6df62 --- /dev/null +++ b/public/src/app/rule-engine/target/target.util.ts @@ -0,0 +1,50 @@ +export function getBranchRequierds(node, requiredArr) { + if (node.parent) { + if (node.parent.data.hasOwnProperty('requiredChildren')) { + requiredArr.push(node.parent.data.requiredChildren); + } + return getBranchRequierds(node.parent, requiredArr); + } + return requiredArr; +} + +export function validation(node, userSelection) { + const requiredArr = []; + const validationRequired = getBranchRequierds(node, requiredArr); + const nonValidationArr = []; + validationRequired.forEach(nodeRequireds => { + return nodeRequireds.forEach(levelRequired => { + if (userSelection.filter(node => node === levelRequired).length === 0) { + nonValidationArr.push(levelRequired); + } + return; + }); + }); + return nonValidationArr; +} + +export function fuzzysearch(needle, haystack) { + const haystackLC = haystack.toLowerCase(); + const needleLC = needle.toLowerCase(); + + const hlen = haystack.length; + const nlen = needleLC.length; + + if (nlen > hlen) { + return false; + } + if (nlen === hlen) { + return needleLC === haystackLC; + } + outer: for (let i = 0, j = 0; i < nlen; i++) { + const nch = needleLC.charCodeAt(i); + + while (j < hlen) { + if (haystackLC.charCodeAt(j++) === nch) { + continue outer; + } + } + return false; + } + return true; +} diff --git a/public/src/app/rule-engine/target/target.validation.spec.ts b/public/src/app/rule-engine/target/target.validation.spec.ts new file mode 100644 index 0000000..71dc083 --- /dev/null +++ b/public/src/app/rule-engine/target/target.validation.spec.ts @@ -0,0 +1,83 @@ +import { TestBed, async } from '@angular/core/testing'; +import { TreeModel, TreeComponent, ITreeOptions } from 'angular-tree-component'; +import { validation, getBranchRequierds } from './target.util'; + +const _nodes = [ + { + id: 1, + name: 'North America', + requiredChildren: ['United States'], + children: [ + { + id: 11, + name: 'United States', + requiredChildren: ['New York', 'Florida'], + children: [ + { id: 111, name: 'New York' }, + { id: 112, name: 'California' }, + { id: 113, name: 'Florida' } + ] + }, + { id: 12, name: 'Canada' } + ] + }, + { + name: 'South America', + children: [{ name: 'Argentina', children: [] }, { name: 'Brazil' }] + }, + { + name: 'Europe', + children: [ + { name: 'England' }, + { name: 'Germany' }, + { name: 'France' }, + { name: 'Italy' }, + { name: 'Spain' } + ] + } +]; + +const tree = new TreeModel(); + +describe('treeTest', () => { + beforeAll(() => { + tree.setData({ + nodes: _nodes, + options: null, + events: null + }); + }); + + it('should return node branch requireds', () => { + // console.log('root', tree.getFirstRoot().data.name); + // console.log(tree.getNodeBy((node) => node.data.name === 'California').data.uuid); + // console.log(tree.getNodeBy((node) => node.data.name === 'California').id); + // console.log(tree.getNodeById(1)); + const selectedNode = tree.getNodeBy( + node => node.data.name === 'California' + ); + const result = getBranchRequierds(selectedNode, []); + const expected = [['New York', 'Florida'], ['United States']]; + + expect(result.length).toBeGreaterThan(1); + expect(result).toEqual(expected); + }); + + it('should return empty array - success state', () => { + const userSelect = ['Florida', 'New York', 'United States']; + const selectedNode = tree.getNodeBy(node => node.data.name === 'New York'); + const result = validation(selectedNode, userSelect); + + expect(result.length).toEqual(0); + expect(result).toEqual([]); + }); + + it('should return validation array - missing required filed', () => { + const userSelect = ['New York']; + const selectedNode = tree.getNodeBy(node => node.data.name === 'New York'); + const result = validation(selectedNode, userSelect); + const expected = ['Florida', 'United States']; + + expect(result).toEqual(expected); + }); +}); diff --git a/public/src/app/rule-engine/version-type-select/version-type-select.component.html b/public/src/app/rule-engine/version-type-select/version-type-select.component.html new file mode 100644 index 0000000..79b9eae --- /dev/null +++ b/public/src/app/rule-engine/version-type-select/version-type-select.component.html @@ -0,0 +1,34 @@ +<div class="selected-event"> + + <div style="flex:1; display: flex; align-items: center;"> + + <span class="field-label required" style="margin-right: 10px;">Mapping Target</span> + <select name="mappingTarget" [(ngModel)]="mappingTarget" (ngModelChange)="onChangeMapping($event)" data-tests-id="mappingDdl" + style="height: 27px; padding: 0.3rem; margin-right: 18px;" class="field-select"> + <option [ngValue]="null" disabled>Select Mapping</option> + <option *ngFor="let target of advancedSetting" [value]="target.name" data-tests-id="templateOptions">{{target.name}}</option> + </select> + + <span class="field-label required" style="font-size: 13px; margin-right: 10px; display: flex; + align-items: center;" [ngClass]="{'required' : !readOnly}"> + Version + </span> + <select *ngIf="!readOnly" style="height: 27px; padding: 0.3rem; margin-right: 18px;" [(ngModel)]="selectedVersion" (ngModelChange)="onSelectVersion($event)" + data-tests-id="selectVersion"> + <option [ngValue]="null" disabled>Select Version</option> + <option *ngFor="let version of versions" [value]="version" data-tests-id="option">{{version}}</option> + </select> + <span *ngIf="readOnly" style="height: 27px; padding: 0.3rem; width:100px; margin-right: 18px; border: 1px solid #D2D2D2; display: flex; align-items: center; background: #F2F2F2">{{selectedVersion}}</span> + + <span class="field-label required" style="font-size: 13px; display: flex; align-items: center; width: 100px;" [ngClass]="{'required' : !readOnly}"> + Event Domain + </span> + <select *ngIf="!readOnly" style="height: 27px; padding: 0.3rem;" [(ngModel)]="selectedEvent" (ngModelChange)="onSelectEventType($event)" + data-tests-id="selectEventType"> + <option [ngValue]="null" disabled>Select Type</option> + <option *ngFor="let event of events" [value]="event" data-tests-id="option">{{event | slice:0:event.length-6}}</option> + </select> + <span *ngIf="readOnly" style="height: 27px; padding: 0.3rem; width:200px; border: 1px solid #D2D2D2; display: flex; align-items: center; background: #F2F2F2">{{selectedEvent | slice:0:selectedEvent.length-6}}</span> + </div> + +</div> diff --git a/public/src/app/rule-engine/version-type-select/version-type-select.component.scss b/public/src/app/rule-engine/version-type-select/version-type-select.component.scss new file mode 100644 index 0000000..9f7bad3 --- /dev/null +++ b/public/src/app/rule-engine/version-type-select/version-type-select.component.scss @@ -0,0 +1,46 @@ +.selected-event { + display: flex; + margin: 10px 0; + // align-items: center; + flex-direction: column; + margin-bottom: 30px; +} + +.small-padding { + padding-right: 1rem; +} + +.btn { + padding: 6px; + margin: 6px 8px 6px 8px; + min-width: 88px; + border-radius: 3px; + font-size: 14px; + text-align: center; + text-transform: uppercase; + text-decoration: none; + border: none; + outline: none; +} + +.target-field { + width: 370px; + display: flex; + align-items: center; + margin: 10px; + .field-label { + padding-right: 10px; + } + .required::before { + content: '*'; + color: red; + padding-right: 5px; + } + .field-select { + flex: 1; + width: 100%; + min-width: 250px; + padding: 5px 0 5px 5px; + margin: 0; + } +} diff --git a/public/src/app/rule-engine/version-type-select/version-type-select.component.ts b/public/src/app/rule-engine/version-type-select/version-type-select.component.ts new file mode 100644 index 0000000..b4170a5 --- /dev/null +++ b/public/src/app/rule-engine/version-type-select/version-type-select.component.ts @@ -0,0 +1,86 @@ +import { Component, Output, EventEmitter, Input } from '@angular/core'; +import { RuleEngineApiService } from '../api/rule-engine-api.service'; +import { Store } from '../../store/store'; + +@Component({ + selector: 'app-version-type-select', + templateUrl: './version-type-select.component.html', + styleUrls: ['./version-type-select.component.scss'] +}) +export class VersionTypeSelectComponent { + mappingTarget: string; + selectedEvent: String; + selectedVersion: String; + events: Array<String>; + loader: boolean; + editMode = false; + readOnly = false; + @Input() versions; + @Input() metaData; + @Output() nodesUpdated = new EventEmitter(); + @Output() refrashRuleList = new EventEmitter(); + advancedSetting; + + constructor(private _ruleApi: RuleEngineApiService, public store: Store) { + this.selectedVersion = null; + this.selectedEvent = null; + // set ddl with the first option value. + this.mappingTarget = this.store.configurationForm[0].name; + this.advancedSetting = this.store.configurationForm.filter(item => { + if ( + !( + item.hasOwnProperty('constraints') && + !item.assignment.value.includes('get_input') + ) + ) { + return item; + } + }); + } + + onChangeMapping(configurationKey) { + console.log('changing propertiy key:', configurationKey); + this._ruleApi.setFieldName(configurationKey); + this.refrashRuleList.next(); + } + + updateData(version, eventType, isList) { + this.selectedVersion = version; + this.selectedEvent = eventType; + this.readOnly = true; + } + + updateVersionTypeFlag(flag) { + this.readOnly = flag; + if (flag === false) { + this.selectedVersion = null; + this.selectedEvent = null; + } + } + + onSelectVersion(version, eventType) { + if (typeof eventType === 'undefined') { + this.selectedEvent = ''; + this.events = this.metaData + .filter(x => x.version === version) + .map(x => x.eventTypes)[0]; + if (eventType) { + this.editMode = true; + this.selectedEvent = eventType + 'Fields'; + } + } + } + + onSelectEventType(eventType) { + this.loader = true; + this._ruleApi + .getSchema(this.selectedVersion, this.selectedEvent) + .subscribe(tree => { + console.log('tree: ', tree); + this.loader = false; + this.nodesUpdated.emit({ + nodes: tree + }); + }); + } +} diff --git a/public/src/app/rule-frame/rule-frame.component.html b/public/src/app/rule-frame/rule-frame.component.html new file mode 100644 index 0000000..10f3032 --- /dev/null +++ b/public/src/app/rule-frame/rule-frame.component.html @@ -0,0 +1,19 @@ +<div style="position: relative; display: flex; justify-content: flex-end; height: 100%;"> + + <div *ngIf="!tabName.includes('map')" style="margin: 1em;"> + <app-bar-icons [tabName]="tabName"></app-bar-icons> + </div> + + <!-- rule engine --> + <div style="width: 100%;" *ngIf="tabName.includes('map')"> + <app-slide-panel [activePane]="store.isLeftVisible ? 'left' : 'right'"> + <div leftPane style="height: 100%; overflow: auto;"> + <app-rule-list></app-rule-list> + </div> + <div rightPane style="height: 100%; overflow: auto;"> + <app-action-list></app-action-list> + </div> + </app-slide-panel> + </div> + +</div> diff --git a/public/src/app/rule-frame/rule-frame.component.scss b/public/src/app/rule-frame/rule-frame.component.scss new file mode 100644 index 0000000..2a95e01 --- /dev/null +++ b/public/src/app/rule-frame/rule-frame.component.scss @@ -0,0 +1,10 @@ +.frame { + display: block; + width: 100vw; + height: 100vh; + max-width: 100%; + margin: 0; + padding: 0; + border: 0 none; + box-sizing: border-box; +} diff --git a/public/src/app/rule-frame/rule-frame.component.ts b/public/src/app/rule-frame/rule-frame.component.ts new file mode 100644 index 0000000..4d5f999 --- /dev/null +++ b/public/src/app/rule-frame/rule-frame.component.ts @@ -0,0 +1,35 @@ +import { Component, OnDestroy, Input, ViewChild } from '@angular/core'; +import { Store } from '../store/store'; +import { BarIconsComponent } from '../bar-icons/bar-icons.component'; + +@Component({ + selector: 'app-rule-frame', + templateUrl: './rule-frame.component.html', + styleUrls: ['./rule-frame.component.scss'] +}) +export class RuleFrameComponent implements OnDestroy { + expandSetting = false; + configuration; + mappingTarget: string; + showHeaderBtn = true; + @Input() tabName: string; + // @ViewChild(BarIconsComponent) barFormsRef: BarIconsComponent; + + constructor(public store: Store) { + this.store.isLeftVisible = true; + } + + ngOnDestroy() {} + + onChangeMapping(configurationKey) { + console.log('changing ifrmae entry', configurationKey); + } + + isPropertyDdl(property) { + return property.hasOwnProperty('constraints'); + } + + enableSetting() { + this.expandSetting = !this.expandSetting; + } +} diff --git a/public/src/app/store/store.ts b/public/src/app/store/store.ts new file mode 100644 index 0000000..a9f2431 --- /dev/null +++ b/public/src/app/store/store.ts @@ -0,0 +1,98 @@ +import { Injectable } from '@angular/core'; +import { observable, computed, action, toJS, reaction } from 'mobx'; +import { findIndex } from 'lodash'; + +@Injectable() +export class Store { + @observable sdcParmas; + @observable isOwner; + @observable mcUuid; + @observable cdump; + @observable tabsProperties; + @observable tabIndex = 0; + @observable isEditMode = false; + @observable loader = false; + @observable cdumpIsDirty = false; + @observable expandAdvancedSetting = []; + @observable generalflow; + @observable vfiName; + // error dialog + @observable displayErrorDialog = false; + @observable ErrorContent = []; + + // rule-engine + @observable tabParmasForRule; + @observable ruleList = new Array(); + @observable ruleEditorInitializedState; + @observable isLeftVisible; + @observable inprogress; + + @action + updateRuleInList(rule) { + console.log('current list:', toJS(this.ruleList)); + console.log('new rule', rule); + const ruleIndex = findIndex(this.ruleList, function(ruleFromList) { + console.log( + `find match rule: list - ${ruleFromList.uid}, rule - ${rule.uid}` + ); + return ruleFromList.uid === rule.uid; + }); + if (ruleIndex > -1) { + console.log('update rule'); + this.ruleList[ruleIndex] = rule; + } else { + console.log('new rule'); + this.ruleList.push(rule); + } + } + + @action + updateRuleList(listOfRules) { + this.ruleList = listOfRules; + console.log(toJS(this.ruleList)); + } + + @action + removeRuleFromList(uid) { + this.ruleList = this.ruleList.filter(item => item.uid !== uid); + } + + @action + resetRuleList() { + this.ruleList = new Array(); + } + + @action + changeStateForEditor(data) { + this.ruleEditorInitializedState = data; + } + + @action + setTabIndex(value) { + this.tabIndex = value; + } + + @action + setTabsProperties(nodes) { + this.tabsProperties = nodes.map(tabItem => { + return tabItem.properties.map(x => { + if (!x.assignment) { + x.assignment = {}; + x.assignment.value = ''; + } else if (typeof x.assignment.value === 'object') { + x.assignment.value = JSON.stringify(x.assignment.value); + } + return x; + }); + }); + nodes.map(() => { + this.expandAdvancedSetting.push(false); + }); + console.log('tabsProperties: %o', this.tabsProperties.toJS()); + } + + @computed + get configurationForm() { + return this.tabIndex >= 0 ? this.tabsProperties[this.tabIndex] : null; + } +} diff --git a/public/src/assets/.gitkeep b/public/src/assets/.gitkeep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/public/src/assets/.gitkeep diff --git a/public/src/assets/fonts/OpenSans-Bold.ttf b/public/src/assets/fonts/OpenSans-Bold.ttf Binary files differnew file mode 100644 index 0000000..7b52945 --- /dev/null +++ b/public/src/assets/fonts/OpenSans-Bold.ttf diff --git a/public/src/assets/fonts/OpenSans-BoldItalic.ttf b/public/src/assets/fonts/OpenSans-BoldItalic.ttf Binary files differnew file mode 100644 index 0000000..a670e14 --- /dev/null +++ b/public/src/assets/fonts/OpenSans-BoldItalic.ttf diff --git a/public/src/assets/fonts/OpenSans-ExtraBold.ttf b/public/src/assets/fonts/OpenSans-ExtraBold.ttf Binary files differnew file mode 100644 index 0000000..3660681 --- /dev/null +++ b/public/src/assets/fonts/OpenSans-ExtraBold.ttf diff --git a/public/src/assets/fonts/OpenSans-ExtraBoldItalic.ttf b/public/src/assets/fonts/OpenSans-ExtraBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..8c4c15d --- /dev/null +++ b/public/src/assets/fonts/OpenSans-ExtraBoldItalic.ttf diff --git a/public/src/assets/fonts/OpenSans-Italic.ttf b/public/src/assets/fonts/OpenSans-Italic.ttf Binary files differnew file mode 100644 index 0000000..e6c5414 --- /dev/null +++ b/public/src/assets/fonts/OpenSans-Italic.ttf diff --git a/public/src/assets/fonts/OpenSans-Light.ttf b/public/src/assets/fonts/OpenSans-Light.ttf Binary files differnew file mode 100644 index 0000000..563872c --- /dev/null +++ b/public/src/assets/fonts/OpenSans-Light.ttf diff --git a/public/src/assets/fonts/OpenSans-LightItalic.ttf b/public/src/assets/fonts/OpenSans-LightItalic.ttf Binary files differnew file mode 100644 index 0000000..5ebe2a2 --- /dev/null +++ b/public/src/assets/fonts/OpenSans-LightItalic.ttf diff --git a/public/src/assets/fonts/OpenSans-Regular.ttf b/public/src/assets/fonts/OpenSans-Regular.ttf Binary files differnew file mode 100644 index 0000000..2e31d02 --- /dev/null +++ b/public/src/assets/fonts/OpenSans-Regular.ttf diff --git a/public/src/assets/fonts/OpenSans-SemiBold.ttf b/public/src/assets/fonts/OpenSans-SemiBold.ttf Binary files differnew file mode 100644 index 0000000..99db86a --- /dev/null +++ b/public/src/assets/fonts/OpenSans-SemiBold.ttf diff --git a/public/src/assets/fonts/OpenSans-SemiBoldItalic.ttf b/public/src/assets/fonts/OpenSans-SemiBoldItalic.ttf Binary files differnew file mode 100644 index 0000000..8cad4e3 --- /dev/null +++ b/public/src/assets/fonts/OpenSans-SemiBoldItalic.ttf diff --git a/public/src/assets/images/Regex.svg b/public/src/assets/images/Regex.svg new file mode 100644 index 0000000..9665d32 --- /dev/null +++ b/public/src/assets/images/Regex.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/Regex</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/Regex" fill="#666666"> + <path d="M3.54146058,12.0499152 L1.86915752,12.0499152 L1.86915752,15.0314555 L1,15.0314555 L1,7.33005982 L3.55246258,7.33005982 C4.37394889,7.33005982 5.0138918,7.53359467 5.47231051,7.94067048 C5.93072921,8.34774628 6.15993512,8.92167789 6.15993512,9.66248252 C6.15993512,10.2199197 6.00957604,10.7003353 5.70885337,11.1037437 C5.40813071,11.5071522 4.99005912,11.7821993 4.45462607,11.9288933 L6.42398298,15.0314555 L5.37879356,15.0314555 L3.54146058,12.0499152 Z M1.86915752,11.2467696 L3.56346457,11.2467696 C4.09889762,11.2467696 4.5169692,11.1074124 4.81769187,10.8286939 C5.11841454,10.5499753 5.26877362,10.1649094 5.26877362,9.67348451 C5.26877362,9.18939436 5.12208184,8.81166301 4.82869387,8.54027914 C4.5353059,8.26889527 4.11356701,8.13320537 3.56346457,8.13320537 L1.86915752,8.13320537 L1.86915752,11.2467696 Z M8.08528405,12.4789929 C8.14396164,13.0731036 8.35483108,13.5425173 8.7178987,13.8872482 C9.08096631,14.231979 9.54854637,14.4043419 10.1206529,14.4043419 C10.4653838,14.4043419 10.7661019,14.3713362 11.0228164,14.3053239 C11.2795309,14.2393116 11.554578,14.1219582 11.847966,13.9532601 L12.1230158,14.5913758 C11.8076237,14.7820779 11.4867355,14.9214351 11.1603413,15.0094515 C10.8339472,15.0974679 10.4653841,15.1414755 10.054641,15.1414755 C9.48253441,15.1414755 8.98378234,15.0131201 8.55836979,14.7564057 C8.13295723,14.4996912 7.80656801,14.1494646 7.57919233,13.7057153 C7.35181665,13.261966 7.23813052,12.7540457 7.23813052,12.1819391 C7.23813052,11.5951632 7.3573176,11.0744073 7.59569532,10.619656 C7.83407305,10.1649046 8.15129403,9.81467799 8.54736779,9.56896557 C8.94344155,9.32325314 9.37984961,9.20039877 9.85660506,9.20039877 C10.3480299,9.20039877 10.7752697,9.31591855 11.1383373,9.54696158 C11.501405,9.77800461 11.781953,10.0952256 11.9799899,10.498634 C12.1780268,10.9020425 12.2770437,11.356787 12.2770437,11.8628813 C12.2770437,12.0682529 12.2697091,12.2736214 12.2550397,12.4789929 L8.08528405,12.4789929 Z M9.86760706,9.93753236 C9.3981863,9.93753236 9.00395213,10.1025606 8.68489272,10.4326221 C8.3658333,10.7626836 8.16963304,11.2064262 8.09628604,11.7638633 L11.4408922,11.7638633 L11.4408922,11.7088534 C11.4408922,11.3714572 11.3730472,11.0652381 11.2373553,10.7901869 C11.1016634,10.5151357 10.916465,10.3042662 10.6817546,10.1575722 C10.4470442,10.0108783 10.1756644,9.93753236 9.86760706,9.93753236 Z M17.183933,7 L18.0200845,7 L13.7513109,16.8357825 L12.9151594,16.8357825 L17.183933,7 Z M20.4955331,17.5179061 C19.7400591,17.5179061 19.0506077,17.3565452 18.4271583,17.0338184 L18.6471982,16.3516948 C18.9039126,16.4837194 19.1899616,16.5882373 19.5053537,16.6652516 C19.8207458,16.742266 20.1287985,16.7807725 20.4295212,16.7807725 C21.0603053,16.7807725 21.5205508,16.6340808 21.8102714,16.3406928 C22.099992,16.0473048 22.2448502,15.5852257 22.2448502,14.9544416 L22.2448502,14.3603339 C21.9514622,14.5950443 21.6599123,14.7655735 21.3701916,14.8719266 C21.080471,14.9782798 20.7522482,15.0314555 20.3855132,15.0314555 C19.9087577,15.0314555 19.4888525,14.9049339 19.1257849,14.6518867 C18.7627173,14.3988396 18.4840029,14.0522803 18.2896334,13.6121983 C18.0952638,13.1721164 17.9980805,12.6733643 17.9980805,12.1159271 C17.9980805,11.5364859 18.109933,11.0248983 18.3336413,10.581149 C18.5573497,10.1373997 18.8599015,9.7963413 19.2413058,9.55796357 C19.6227102,9.31958585 20.055451,9.20039877 20.5395411,9.20039877 C21.1849946,9.20039877 21.7717618,9.40576727 22.2998601,9.81651043 L22.3658721,9.32142071 L23.0699997,9.32142071 L23.0699997,14.8884296 C23.0699997,15.7465894 22.8517957,16.3993679 22.4153811,16.8467845 C21.9789665,17.2942012 21.3390235,17.5179061 20.4955331,17.5179061 Z M20.5725471,14.2943219 C20.8732698,14.2943219 21.1574851,14.2411462 21.4252016,14.134793 C21.6929181,14.0284399 21.9661316,13.8579107 22.2448502,13.6232003 L22.2448502,10.564646 C22.0174745,10.3666091 21.7680984,10.2125828 21.4967146,10.1025623 C21.2253307,9.99254178 20.9539509,9.93753236 20.682567,9.93753236 C20.1177952,9.93753236 19.6685516,10.1373999 19.3348228,10.537141 C19.001094,10.9368821 18.8342321,11.4631389 18.8342321,12.1159271 C18.8342321,12.7613807 18.9937594,13.2858038 19.3128188,13.6892123 C19.6318782,14.0926207 20.0517834,14.2943219 20.5725471,14.2943219 Z" id="Re/g"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/add-b.svg b/public/src/assets/images/add-b.svg new file mode 100644 index 0000000..25eb583 --- /dev/null +++ b/public/src/assets/images/add-b.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="48px" height="48px" viewBox="0 0 48 48" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/add-b</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/add-b" fill="#009FDB"> + <path d="M25,22.9614258 L25,12 L23,12 L23,22.9614258 L12,22.9614258 L12,25 L23,25 L23,37 L25,37 L25,25 L37,25 L37,22.9614258 L25,22.9614258 Z M24,48 C10.745166,48 0,37.254834 0,24 C0,10.745166 10.745166,0 24,0 C37.254834,0 48,10.745166 48,24 C48,37.254834 37.254834,48 24,48 Z" id="Combined-Shape"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/add-s.svg b/public/src/assets/images/add-s.svg new file mode 100644 index 0000000..4487f54 --- /dev/null +++ b/public/src/assets/images/add-s.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/add-s</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/add-s" fill="#009FDB"> + <path d="M12.4761905,11.5238095 L12.4761905,6.76190476 L11.5238095,6.76190476 L11.5238095,11.5238095 L6.76190476,11.5238095 L6.76190476,12.4761905 L11.5238095,12.4761905 L11.5238095,17.2380952 L12.4761905,17.2380952 L12.4761905,12.4761905 L17.2380952,12.4761905 L17.2380952,11.5238095 L12.4761905,11.5238095 Z M12,22 C6.4771525,22 2,17.5228475 2,12 C2,6.4771525 6.4771525,2 12,2 C17.5228475,2 22,6.4771525 22,12 C22,17.5228475 17.5228475,22 12,22 Z" id="Combined-Shape"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/checkbox.png b/public/src/assets/images/checkbox.png Binary files differnew file mode 100644 index 0000000..e00c535 --- /dev/null +++ b/public/src/assets/images/checkbox.png diff --git a/public/src/assets/images/close.svg b/public/src/assets/images/close.svg new file mode 100644 index 0000000..5fe4cba --- /dev/null +++ b/public/src/assets/images/close.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/close</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/close" fill="#5A5A5A"> + <path d="M20.1538462,11.8461538 L12.7692308,11.8461538 L12.7692308,4.46153846 C12.7692308,4.20769231 12.5615385,4 12.3076923,4 C12.0538462,4 11.8461538,4.20769231 11.8461538,4.46153846 L11.8461538,11.8461538 L4.46153846,11.8461538 C4.20769231,11.8461538 4,12.0538462 4,12.3076923 C4,12.5615385 4.20769231,12.7692308 4.46153846,12.7692308 L11.8461538,12.7692308 L11.8461538,20.1538462 C11.8461538,20.4076923 12.0538462,20.6153846 12.3076923,20.6153846 C12.5615385,20.6153846 12.7692308,20.4076923 12.7692308,20.1538462 L12.7692308,12.7692308 L20.1538462,12.7692308 C20.4076923,12.7692308 20.6153846,12.5615385 20.6153846,12.3076923 C20.6153846,12.0538462 20.4076923,11.8461538 20.1538462,11.8461538" id="close" transform="translate(12.307692, 12.307692) rotate(-315.000000) translate(-12.307692, -12.307692) "></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/concat copy.svg b/public/src/assets/images/concat copy.svg new file mode 100644 index 0000000..7906ae7 --- /dev/null +++ b/public/src/assets/images/concat copy.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/concat copy</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/concat-copy" fill="#979797"> + <path d="M14,14 L17.7458333,14 L17.7458333,6.25416667 L10,6.25416667 L10,10 L6.225,10 L6.225,17.775 L14,17.775 L14,14 Z M15,15 L17.8802083,15 C18.1753487,15 18.4357628,14.8914941 18.6614583,14.6744792 C18.8871539,14.4574642 19,14.2013904 19,13.90625 L19,6.11979167 C19,5.8246513 18.8871539,5.56423724 18.6614583,5.33854167 C18.4357628,5.11284609 18.1753487,5 17.8802083,5 L10.09375,5 C9.79860964,5 9.54253581,5.11284609 9.32552083,5.33854167 C9.10850586,5.56423724 9,5.8246513 9,6.11979167 L9,9 L6.09375,9 C5.79860964,9 5.54253581,9.11284609 5.32552083,9.33854167 C5.10850586,9.56423724 5,9.8246513 5,10.1197917 L5,17.90625 C5,18.2013904 5.10850586,18.4574642 5.32552083,18.6744792 C5.54253581,18.8914941 5.79860964,19 6.09375,19 L13.8802083,19 C14.1753487,19 14.4357628,18.8914941 14.6614583,18.6744792 C14.8871539,18.4574642 15,18.2013904 15,17.90625 L15,15 Z" id="Combined-Shape"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/copy.svg b/public/src/assets/images/copy.svg new file mode 100644 index 0000000..382aeca --- /dev/null +++ b/public/src/assets/images/copy.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/copy</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/copy" fill="#009FDB"> + <path d="M16.6823207,17.779975 L16.6823207,8.13076534 L9.13076534,8.13076534 L9.13076534,17.779975 L16.6823207,17.779975 Z M16.6823207,6.77535796 C17.0480674,6.77535796 17.3707802,6.90982163 17.6504688,7.17875301 C17.9301575,7.44768439 18.0699997,7.76501866 18.0699997,8.13076534 L18.0699997,17.779975 C18.0699997,18.1457217 17.9301575,18.4684345 17.6504688,18.7481231 C17.3707802,19.0278117 17.0480674,19.167654 16.6823207,19.167654 L9.13076534,19.167654 C8.76501866,19.167654 8.44230584,19.0278117 8.16261721,18.7481231 C7.88292858,18.4684345 7.74308636,18.1457217 7.74308636,17.779975 L7.74308636,8.13076534 C7.74308636,7.76501866 7.88292858,7.44768439 8.16261721,7.17875301 C8.44230584,6.90982163 8.76501866,6.77535796 9.13076534,6.77535796 L16.6823207,6.77535796 Z M14.616938,4 L14.616938,5.38767898 L6.35540738,5.38767898 L6.35540738,15.0368886 L5,15.0368886 L5,5.38767898 C5,5.0219323 5.13446367,4.69921949 5.40339505,4.41953085 C5.67232643,4.13984222 5.9896607,4 6.35540738,4 L14.616938,4 Z" id="content_copy"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/delete-b.svg b/public/src/assets/images/delete-b.svg new file mode 100644 index 0000000..0d6575c --- /dev/null +++ b/public/src/assets/images/delete-b.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/delete-b</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/delete-b" fill="#959595"> + <path d="M9,2 L9,3.979 L4,3.979 L4,7 L6.005,7 L6.005,22 L18.991,22 L18.991,7 L21,7 L21,3.979 L15.979,3.979 L15.979,2 L9,2 Z M10,4 L15,4 L15,3 L10,3 L10,4 Z M5,6 L20,6 L20,5 L5,5 L5,6 Z M7,21 L18,21 L18,7 L7,7 L7,21 Z M15,19 L16,19 L16,9 L15,9 L15,19 Z M12,19 L13,19 L13,9 L12,9 L12,19 Z M9,19 L10,19 L10,9 L9,9 L9,19 Z" id="Page-1"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/delete-s.svg b/public/src/assets/images/delete-s.svg new file mode 100644 index 0000000..a0bc142 --- /dev/null +++ b/public/src/assets/images/delete-s.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/delete-s</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/delete-s" fill="#959595"> + <path d="M10.001,5 L10.001,7.00009538 L7,7.00009538 L7.017,9 L8,9 L7.983,18.0000954 L17,18.0000954 L17,9 L18,9 L18,7.00009538 L15.001,7.00009538 L15.001,5 L10.001,5 Z M11.001,7 L14.001,7 L14.001,6 L11.001,6 L11.001,7 Z M14,16 L15,16 L14.983,10 L13.983,10 L14,16 Z M12,16 L13,16 L13,10 L11.983,10 L12,16 Z M10,16 L11,16 L10.983,10 L9.983,10 L10,16 Z" id="Page-1"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/edit.svg b/public/src/assets/images/edit.svg new file mode 100644 index 0000000..a93cd07 --- /dev/null +++ b/public/src/assets/images/edit.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/edit</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/edit" fill="#0568AE"> + <path d="M14.3676968,3 C14.34993,3.00162523 14.3322912,3.0044314 14.3148973,3.00839992 C14.1901219,3.02176437 14.0734683,3.07670988 13.9837006,3.16439835 L0.564235418,16.5154642 C0.476555486,16.6047554 0.421588128,16.7210325 0.408236985,16.8454609 L0.00264105915,20.3866253 C-0.0117307683,20.5335434 0.0329561816,20.6801411 0.126838313,20.7940604 C0.220720445,20.9079798 0.35607874,20.9798542 0.503036033,20.9938192 C0.542920833,20.998105 0.583150027,20.998105 0.623034827,20.9938192 L4.17259917,20.6026232 C4.30044091,20.5914939 4.42046286,20.5363602 4.51219576,20.4466247 L17.9220611,7.09555886 C18.0268567,6.99187563 18.0858246,6.8505817 18.0858246,6.7031628 C18.0858246,6.55574391 18.0268567,6.41444997 17.9220611,6.31076674 L14.7660928,3.17039829 C14.660086,3.06385873 14.5155836,3.00458679 14.3652968,3.00599994 L14.3652968,3.00599994 L14.3676968,3 Z M14.3760967,4.3439865 L16.7388729,6.69476289 L15.9540808,7.48435495 L13.5913046,5.13357857 L14.3760967,4.3439865 Z M12.7981125,5.91477072 L15.1608888,8.26554711 L4.31419775,19.0654386 L1.95142148,16.7134622 L12.7981125,5.91477072 Z M1.42822674,17.7646517 L3.25940834,19.5862334 L1.20142902,19.8118311 L1.42822674,17.7646517 Z M7.81936254,19.8814304 C7.51251621,19.8814304 7.26376812,20.1301785 7.26376812,20.4370248 C7.26376812,20.7438712 7.51251621,20.9926193 7.81936254,20.9926193 L23.4444056,20.9926193 C23.7512519,20.9926193 24,20.7438712 24,20.4370248 C24,20.1301785 23.7512519,19.8814304 23.4444056,19.8814304 L7.81936254,19.8814304 L7.81936254,19.8814304 Z" id="Shape"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/error404.svg b/public/src/assets/images/error404.svg new file mode 100644 index 0000000..24ccab6 --- /dev/null +++ b/public/src/assets/images/error404.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="222px" height="186px" viewBox="0 0 222 186" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/error404</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/error404"> + <image id="Page-1" x="0" y="0" width="222" height="186" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAN4AAAC6CAYAAADBAvP7AAAABGdBTUEAA1teXP8meAAAKVlJREFUeAHtfQl0XMWZbtXtVqu1WLK8r3jBw2ITIM+SAUPIOJABJyQhwxYmLLYMhCSHxLIx8JL3ztM5My+PYbFNeG8IA5ZtIBBwmDDEAyEBHIghYEkJmw0B77sto11qLd233vff7ttqtfsurb7dfbu76hzp3r5Vt5bvr+/WX39tjBWoW7Os6W9rlzWvRvF5BAK+urbpoTXLmncUKCSy2BlEwJvBtFyVFBfsdVCubk1tk7ejYfPyytpvPMI5u00V4ueuyqjMTF4ioH/t87JwFoWiFu5RhfNbmWA7QMK5CP9/l6+b/yNchcW70lsikBICSkpv5/bLorNh8+2CiU8jpPugfd1vf4wiSdLltlxzIveFTDxeueyKRznjpzEhPoK0zq6s/TqpmYWsBeREpc2HTBYs8WBEeQSku4X6dO0Nm88B+X7BufJDqJ9r80GwsgzuRqCAjSviyxDNgysaqlfhKlhD/Q9AugEYWC5xt8hk7iQCEgGJgERAIiARkAhIBCQCEgGJgCEC0oJnCE12Pe6/8ZUyxVs1Rg2pVR6PZxZT+EyF8RlCiKkwvI5BX7QK91W4+pjgxYILHxd8gHHRLwRDX5W34dqG7msr7g+pTOxjqtgbCoX2KB6lTQ22ta568rKe7JaycFOXxHOJ7Ouvec5XXnrqFzyKOgtk+qJgvBoEm4d7EM1ZB0IeAiG3cyaacP/XkKrs6e7d9WH9pmsHnE1JxmaEgCSeETIZeE5kqyiftRgjhxeiNatmnNcg2fLYpDGar3I0bbHPUrkXaP4g9PhhpG4MpzSiVWyCffetzu49L0sSpoKy9buSeNYYOR5izdLmr4Bs16HFAdH4ubiPysFpolll/iQiYioPWsP30OI24u7ZuvXzX7eKQ/onj0BU4Mm/Kt9IBoEHrm8ap5SyaxXBl6Bmz0WzUxZ9X4hQ9D7bN5x79Cygne1BBdmB/G4MBcSzdz5TfUL3k9fUEJDESw0/y7cfWNJ0huJh12M1xFIoedOjL4RbFjX623U3HNpvTEssxAHB2Xo1xJ65c0P1J67Lbo5lyHHiPbi0+QpFUatYqPu3dRsWtcfi8X/+6U9V/hL/FaqqtK1cP39zrF++3a++eds87lFuBMA/Rt/Nr5XP9WQzkkIMCYXoQwv4kAipT67YuGC70RvyuTkCjhNvzbLGG5lQKqA99XLR8xudfGuWbBkteNm3ocmUMq521q2redI8a7np+7Ob3h1b4lXugP3i+1AnJ2ilcJMqmSqsEVUUauhx2H0eCQTVh3/yxHmfpxptob3vOPGoVSsuLr6SCEbk6+/vf8HvCwqddPqz//70lzDGlF9ubW3zrVDH7gKoc7SSOUg4smsKFU0mXbV/uFIi2r84HJEBTbB0BfvJjMmV8DUu5Mh/6gRkbCfU6PuWN8x/bOSRFd6bmnycLnY8+Sj+WCLmG+moH+fx8PtQAa+I9otSJJ0aEiw0KFhwUMW4t2Ber8KKihXm9SnM4+X4Uxj6jjGEIlFGiAmCoi/GQkEVf4hjQGWD/SoL4jcW/jJvEeIo4ng/RfFHyKcly9nmUEjcJft/9tiUIvLGicSSj0Lla0uHFQ23ozL/DEWs0tBIgXBEkoG+EEgSYj6/l1WM87Hy0V5WUuHjoyf4WdWkYj5qTBErrfSxknIPKy7xsCK/h2sEBKGoJSTCDfaFRH8gxALdIdbbMcC6WgdZ29F+0X68jwU6B0R3e5B1nhhAWkGQ2YO0PBqZtfyP5J9OQMba8JH4CVZ8/GIk0RTSO2lbFqSpl6x4GJb0bNiDHP7x4NJt0z2K8iDanGu0YqRAOBCFBXpDrKTMy6aeVsHGzyjhk2aU4lqqjJ9ewnwgmLUjaMPj4sWlHj5sFD78svaRHQAhWw4GWMveXvXovl7Wsi8gju3pZj2dg6ykVCOydVLxIfSyc16Fj9Aj2MfmElWoK1auX3AgPqj8HUYgLS1erCGFWjpKSlc1Yw0uuSqEB5dtuwTK2i8A3oj6cno/LQj1j9TIKadWsDnVlcqUOeWMiFZaCT0w1iEMvZOqo76e1uGLiai3Y1C0HAiwwzu72c6mDvXwrs6wOgq1Vu8fxgS3vo20fsjuTii6t69ct+A165cKL8RwATtQ/lgVk0hHxhWKNtbgksvkW7u08XuCKw+iEpehciU1nYuMI4Pob5Gho6Tcy2adM5qfuXAMnzizjJdWDFc+KGy6HeUj1vV2BtmxvT3i47dbxZ7320WgO6gZdIrQr4wPG/te/L0+GwYfix4u1JXL19c8Gh+m0H8PR94BNGKHE4h0uiEllpC5OJxQz+qVytor6tEK/E8NJl29solZX09Ia7XGTilmc2rG8HMWjVeqJhYPq9CZIJtRdmOJRfloO9bP3t/Sou5sbBWth/vRUjLmL7Oj8sakoLd+QvwztlCsB4YunjAQk+8M3DpOPH0AvS/Qt1knnV4OIl8uDqDfNr+paO45/FFUvqVaWWySjlQ7auECXSE2ZrKfnbFwLF/wtUm8fMyQKqkPDegYZf2KPJOKqbvutkHR+NJR8fFbn4vWI32sZBT6gWgBbau+uuFFsPXtXbtul5Ovw8gOIawjLa/DEKi/Zkt5ZcWopzAK9i0ym8M+a+urTXWXWjmvj7N5F4/n8/9hIh83vUTDO5st27DC2fiht4QnDgRE8++Pie1vtojggNBaP9vkQ7tOwyyA7z87OrtuqN+0qNtG0nkdRBLPRLz3XtNU6a9gT6MN+FoypKPxs4E+lU2fW8G/fN00ZdoZo7RUcolw8bDoBDz4SRd749mD6oEdncLnpzHF+BVG8W/qvyPkE+zl/i5x/T2bqjt0n0K8SuIZSL3+G02llePZRqhdV9slHbUA/RgWoL7Q/K9NUmoWT+Iw7Wsp5DLpdIh08lEZG18+KppfOqpSq05ljNFO9eAJrjr5xK87WtjN9b+t1izeCQLm/aPhprS8L679AlaO4w+jMtkiHVU6Gvzu6wmyyRgSuPg705TZsFhSavlAOB01vSxEtIuumsqnzClT3vzVQfUIhiL8GIOkGTXm6ifUdJiE6WNWOY51It5letyFdpUtXgKJr65tvE/hyirNy8KQQqQLYmpXfyDIzrxwPL/0plOU8qoimqpjUQkTJJxDj7QWDv9gfGGvPrFf/fitFlFc4sV0NCvyoZARgwsG2e9f0VBzVw4V27GsSuLFQbl2adOPMIL8kPbYBukGMAhOcyovuHIqv/g7U7UOj94yxEWdlz919fPNXx1S//zCIUFzQH0YfDdv+QCFbu1UxY+Xr68uuBOaJPFi6LB6ybbLucfzXwCFag5mPZo7mn7lRSX78vWnKP/tHyZoWBYS6XR0dPL95ffHxRvP7FdpRo6taW4gH01CgD5+RV1Dzct6fIVwlcSLSHlNbeNs8O11aE8zrEhHahYZGIox++QSqJbzLhpXsKTTSaKTb/vWE+I1qJ796O/SJG47LR/GMg8MhtiiuzZW79Ljy/erXVtwvuOA8nGaBmZNOkyzItIVoVJdtmyWJF2kZugtPX2ELls2U6HlSwMBmh5nUXWgWcDYMr3IyzDhvHCcFSwFgQQWsK6C8K/U1B6TEodbuqC2jm3xbbOU08+rKviWLhYunXynnzeGf7V2pgI8w+Sz0KsId5qgQHKIjS+f7y0gyeeih8u2uvbdagwD/wmdfb+VikkLSmmB6mW3zlLOXjQe5jsyXlL1ki4WAXzEoEAw1vTSMfW1J/YJav3I2mnqwsaW/mAo9KU7NyxoNA2bB55JznrNgxLHFOGaa57zzCge+yuQbnb4qxvjGXerr+ReeNU0pebrk7RaJEkXB1LMTyLflL8r5/hQ8f3bO4RCW0/ErYaICY7hPfgzVoQwcyvmXLpxx45Nef1FK2hVc+GoU+8A6S6iCmC2WzM1amTBPHPhOH7R1VPDpMvAsp3Yiplr97raefF107D0aRzvx2JfM+VAxx/0u/CC8ll0Dn1eO4v2P7Wya6sR/KX34mN2WySm5mCQfe/OjfObU4s59bfX3NA0mfn4n5E3U4MK/LXJzhNnlbOrV81RyqpwNogknW0BUCvX0z4ofn3fZyqtdKfpdGYEDI/vif39ou+CuxsuOmw7oSwETKV+p7XF8/tLn4shHUEz3+MRz2UBo5OT9ImfhklHPTVjhw18WDEqyyU3TfcQ6bBk3Diw9DkZAeBVNrqIE36EI+Fp6jDhB/rHKcXM/1PTcC7wTKV+p4142HeDWrpL4/GB7j87/lmmf69Zsu1cqDSReYImy3xQBWg86oIrp4RXGOBTbVFtMl0U16en4QXcaIUG4Uh4moMYlUctycmtBUy1fqeFeGtqm28Dwe6OAc1de2h6lOVkxUSlMF1b19M1yGaeU8WrL9eNKTElkre2EdBVS8KR8CRczZwmF7Iyk5xc6Jyo344T74Gbm+ejpbt3CC+xCZ+4fx36nd27+29652ysyLwBX12c5ahXibg8oV9H2+P5y4rYhVdP4QrNupcqZhxIyf0k/AjHC6+awglXwpfMmImcJhdNPuyGB2vfPSdRmGw9c6p+O0o86mxG+nDhPSYZaw4EAt/LFkiJ0vUWFf0g0oE3bO2oktBi1rMuHsennz5KG69LFJd8liQCaMqmnzGKE66Er/nHDConxvYU7v1+kqmkLbiT9dtR4pWUlP4hpg/XRhbM+H1X0oaKjYhX3/D2HLS+37EKSqvHx04r4wu/PRn44NNr0DBaxSP9hyMQxlEwwnXMtFJOOFs78Z2w3KxDpjuEk/XbMeJB76Ut3OYPFV64YthgKD+YAu3zLYNRpZK4FPs89p4qBw32nnXhWFZehePF7dSN2AjkvSkChCfhOvf8sRrOph81UjchL+7z3WIaaQY8na7fjhAv3NmMjtUBBnHP8nXV6Nu5x92x+KVisO3b4RwZ00mF0W30hGJ27lfHO4KNexBwV07OuWS8MmqMT9ty3jhnUTldSfIzDpden3TU75QrV6SzGd2wFA3Gv4N0rjGm6CKZPWn8N2D0ma3/TnSFv3bAx1zMsC+twCpy6dKGQMVYH2YCjeU0/5VwN3Mkt1OnTPimWZh0+aWrfqdEPFrD5vWyP8QUurmvr/eemN/uucXqA5jRiszUTDrwoxSHhGB3Zw0X886/e4qWaznRcT3ryzidutJr3upp3QLIjTHIL7MunfV7xMQjCw/nCs1C0S2YbUKo17rJmKKL6b4l2ybhq7kw/Duqvuje0WsAg7s0r3A0dniWLv0IVE3ya3gT7sYuLC8csLhQm+ZnHNBRn3TX7xETD9NlaKwuakwh0mH5/m5HS+9QZEUe7IvJ+Cyz6Gi5Dy1dOa0a3xOw1LTTbxaR9LOFAOFLKibhTbgT/mYOYWeyYrHYLIyTfumu3yMi3tplTXcDCH3iM8or7gHpXnWy4E7GxQWv0eIz2UelD6vKp55ewSfMLA33OMzrgZPZK8y4IvgS3oQ74W/oonJTFhiGcdAjE/U7aeIhUzgPjkdnprjVmKLLgc4kh036fP230ZUOgzxl7qjwBrSSdEYwOfscONMenYQ7nVhr6QQ7n+RpGS6FAJmq30kRjyw8IF3UgonyudeYEgG/hCtn4PYsM1mQZa1ybDEOhQwf5yjVTDO0nPPTcZ56+ijg79MsymaxowNwVkSeZsFG7JfJ+m17J2nqbMKCSaTLijEFYynvQaX9bPeR4zc8/PLX+gldGtuZPXnic9ANJy9vmJ9QDcGko7kI6sXHFft6JHYDaO0mnTqKg3hGQRK/KJ86gsC008r4uBllWKnerm0TkShSTX60PYSHz4P/W4nCpPIs0/XbdotXUlJCpMumMWUfjB5Xnzpl4gv1S7b4iXR0j77mNyGUI0agY0ag1r8zmhANVVkzZ4+d6tfOAtdN3UbxyefOIkB40znshD8N55A8EjldfhhdqE7kn+qzTNdvW8SjtUdQMdG3013mjSkdaud1SP13+Lt8tKfiN0Q6uqdnu48cuxbXkxyd9oMm7OyTPGIekDWtpNTLJupGlRg/eZs5BCbOKOUkB0vrJuRJcnUyZ9mo35bEC0+XGVpbly1jSv2GRX3toU6a8qWRD1eNdLsOH7tSVz3jheGt6B+NpSfUxzN0goiHQVwI3jCM9Eg/AoQ/yYHkYeogT02upoHse2arfpsSLzJdBq1d1LnOmDJ2Yviwx2gOY248wjslPCnaeDt2Wp6CHaH5BHxxY16VtxlGgPAnOZA8DB1tfotJ0yRXwzBJeGSzfhsSjzqbcWvrsjozhfp1pGICV62lwzWqdpJfIryF8JyW6HnsMww1sPLKIu0MBNm/i0Umc/eEO51BQXIgeVg5zpS/swpj5Z/t+m1IvPBGLkP7o2R7ZkqlUvEswNRIRyonqZj4rZEv4ncS1pyLWSc9jHlAHXkvTjSlqUvSZR8BkgPJw8jAEs0h56dE70d4k+36nXA4AXrvo7AWXjpUpswbU4bSjt7NwATn53cdOfZdvU8Hy+aVNJyAEAlVD0xKgqpp4iBhxcMZzZSXLvsIkBxIHhrzUAGNHOZtTjfys/PcDfX7JOKFO5tD08HImFLXkP1lPnUN88+NBzVCwG/FP9d/Q3YT9PtEV+rG0ymmWBdmLOVEL8pnaUGgHHKAPARtAWgqEC4mjjQDbqnfw1TNSGczp2amWAhgjKk/mEerzUvRt5Au+wiUQQ4kD+P9AaJ5NJdrNNjwGzfV7yjxIiP3sWvrsmpMGQ7ZyH5hNzF9lk3CCKgvwaHa+HHOnXTZR4DkQPKw6uNZyTVRSdxWvzXiUaZoIxdkOFpRs21MSQRe0s/QfbN6h7oSPj99ZqXLNgLFJQqtyLJ0UERHWQaKCeDG+q0RL37tEdp6Vy/zicHU9BadcFunIXmoQy9d1hHQ1Ex7uUhKRXFj/faGl0G4z5hiD3+LUFyUQJk0DUSHanikbcUUo0x5khzMjvKK5kOTa/SX6Y1b6zdavKHpYCiB62ammKLqkKdqMlnCoSRkNDYQSI8c3Fm/qcmOrjige/T1WtcuS+8pWoifLPmmbvm6+eZNlenbEU/BAxYNnrabsTpomR07qckwKSJAcrA1e4jkat+5sn5TH6/NfhlyKyRmrpjsJzBUFtP5gUPB5F2aEbArB7tyjWTXlfVbgen2njTjmbXo0Y51mSVOFjTawwoHaMgmzwyoDPn1B1QY09H5sdJ1BOu0myW31m8vZoT8O8ytm/x+f2yTbLdctsJhG8B7ETAaP9D9qq0XUw/UahWFigm6/d22GkarqKR/igj0dQ8y1UZHDxOpbbdibq3fmlk2shdm2nYJwzSdttivWAZ3JDMnHr6stPCyu03r5Fl9Z1OsVvJ1KwRIDrQK3apfjhDmco1LyI31WxvHi8tn3vyEmnHcrDDEtFAQekvrgFkw6ZchBLpaBzV5WH4BBT+WoSylLZm8Jh4mH5kfXo9mmIjX0SKJl7YalkTEHScGNHnY6OQdTCJaVwbNa+JhCvReM9RJ/SVVs/14XziY5afWLDbpN2IEIri3H+vT5BHbLUkUJz6o+xI9z6VneU684N+shMGBQKA7yHo6B/Ghlcyzwisd/oQ74U9yIHlYOcHUz6zCuN3fRjHdXgTj/IV48DCGZDvAKMM5m7Twsq9rULTs7ZVDCsZQpt2H8Cc5aAthjVKDHEmeJFejILnyPK+JF+wsbsfark/MhEELYXs6BtnRPT1mwaRfmhE4tqeX9UIOlhPWIU9NrmnOT7qjz2vi3bOpugPN2AdmINKMeNq3//j+gNbiSW3TDC3n/XS8j+3vFbSjt2mLh+RJniRX53OS2RjzmngEpcJ4I12FSQeONthpPdKH8TxYN/WaQC9Jl34EgDfhTvh7vYY9gqj8sH6hKf2ZSn8KeU88EVJ3oF8QhNnEsKxYCMta9vaIg5/2yH5e+uvcSSkQ7oQ/ycHIafKj47pC6najMLn03LikuVQKk7wGhEp9vI9MgjAF/by+3iA78HFXRN2U1k0zvJzy05UQwp3wJzmYOaw8/ygiT7NgOeGX98T7yRPnfY49Ot6xkkYx9u0/sL1DhNVNq9DS3xEEwDPC++CODlFcYmNROWfvkDwdSTvLkeQ98QhfwYXWzzMbVij2e9ixvT3s0GfdYXXT/OObZbHlQfIRfA/t7BZkUS4uMe7fDclN3ZYHJdeKUBDEY/38Zczb3GsqNFQEb5HCdrzViom6UGqkkcUUrlQ9CV/CecfWVkG4W02M1uQHOaaarlveL5jvOvbe+CWk+0+wR6NFo1VfiR1Vhuv+xxnKlDnl4SPZpLklMVCpPEWtI+IdRmv37L98opoPIWAuC0yZkNnTy9dVfzeVZN30bmG0eGHEcZ6ewLwwk28rxEvHMn/w+glpZEljLdW1CcKZ8DaRCPkR6QaRHToPMW9cwRBv1+HjL0Jd2W0qOdDNA7Vn119axQkM6JqGlZ4pIUD4Es6EN+kgZo7kRvIzC5NrfgVDPDpnAZ/O34QFZDwVV0Efv7czxJpeOR6uDnhJOgcRiOBJ+BLOhLexi8rpBf2gGuOwueVTMMQjsagDA+vCk6aNlRtSg8iu8tm2VnEYFk5dLcotsbo3t1rfDrgSvoSzKb6kZgrRKQYGHndviUaWs4Ii3oqnFu6EqH9lBVURZlB0YXzp7f84HLZwyh3erSCz5U+b1ZLxinAlfAlnKwd2PhOWm1XI3PK3Lnlulccyt6oIPoKvKHb2iKoxCd8pLvOwnc1tYsdbn2sqJ32dpRs5Ajp+hOdnza2C8DV3kA/kFBwc/DfzcLnpW3DEW9lw3vvYpeopspaZ6ZE0tkRf6HdeOKx2fS4nT6dcvcE8wpHwVBRFGzM1ilOTiyYf9tSqJ843XV1iFIfbnxcc8TSBhNS1+Jr2oREzLj/auZJyD2s50Mu2/vqQNu5na19/t0s8C/nTcdv6/CGV8CRczSyZmlwgH0yIXpuF7GYkSeOKl5Hks5NI3YYF78HIsi6curHKCTM2K60oYh++0SLef60lonJKnTMZqenGk/e3tIgP/9giCE/C1dhF5dFAcjIOl9s+BUk8TWQD/H/js7ufVE4rEdKq6K2/Pqge+hTzOC1DW8VWYP7Ai3Db+txB1XJ1OUGjyUPs72d9kE/+uoIlXt1T1Udwft4aTbQme7KQv9cHKyf23nx1w14V20QIXXXK32rhTMkIJ8KLcCP8CEdTF5EDdvdee3fDRTm/r4pZWS2QMHs19/3e7tr1MPSerVQSM0ML+fuxbAjjeuyVx/bJIQYCxMIR6Wjo4JXH99F4qIaf2Ss6/ugCvPXn7j0/NwubD34FTbxNm67FATXqCgiSZrWYYkE9j5JRReyTdz8XrzTsk8YWk9qvawSE0yfvfC4It2jPzeC9CP79oZBaR3IxCJY3j60GU/KmoEYF+f17jx2+/Ivf60ff4qv46pp24WgsqqiIs4OfdLLBAcFnnV0J2wEemhoLjFLOz+c66V7/5QHR/NIRUVru1YZlzEpLrR1Q5EJVf7pyw4JNZmHzxQ/llY4QWLOs6QXQ7ls0aGuGCNUQ2vaddsRa8I0p/O+vn6ZQtbF1oKJZxHngR6QTMFn+8ZmD6rbfHha+Yg+j7RPNrZgoeHi/zP+sW1d9ZR7AYKsIpuqVrRjyJNBgkK1EBdlHlcCsSFSJaP1Ykc/Dmv7rCAwH+1XtTDdUukJ2GumggBMehAvhQzjZIp0QBwj/QsKvsGtLnKTX1DYuhl60GaBo05XivE/6SS0f7cl55kXj+OW3zFRolyz64heU6gmwqMUf6Aux3z2+T/146wlRVKxoLd1JgMU/oI8crCkhVb1i5Yaal+K98/m36dc9nwueqGyv/PWxnYvPva0dNQkE1MwBpr032gzXgz7fob91sSO7e9gpZ45i/jKLrbISJZyrzyKk62jpFy8+vFt8SoYUzEoxX1EeKayuWQixfMWGmqdyFYKR5lu2eAmQW13beJ/ClVWal0WfT3+dDt2YcEoJ+8rNM5XZMLrQ83zu9+lGlN0fdIjXN+5Vj+/vY2UVNnYKI2AipIOOfv+Khpq76FEm3JraphVQfk+07+5+uv6Pi4KUZv3fb/FWzCq7kSlKxYp11Q9lIh+UhiSeAdJrljavQ5tXS6oQUcggWPQxGV16O4MYcvCy6sWT+HnfnKzoA8b5RECdcLRlw7svHlGbXj4qAl1BTK3zWvfnNLSAKqxYQLShbv38ZVEAM3Czeum2pfigzkNv4JOOPV0bKMnKWaOWQHZn4COwfcX6BeszkA0tCZufqExlxz3pdJwQd1SOZxXov1yN0XUYoczJR107Ih31+bZuOigOftatksVz4swyzZyeD+TTSUfbIJLlcu977drWDVRuSyOKJtow6fApe57wzbS0O/f0PKkTja6UPpGOiEh+mcyPbPFM0L73mqZKf4W2cPZyuy0fRUeVcCAQ0oi44IrJytmLxnOqnJqfCs8cczrhqGX7AJOdt20+otK9D3thUktvz0VIx9jvRKjz+roNi9rtvedsKFItdfJRzEQ6av101dPZ1Ixjk8MJxtgwOpWmvW/wOojnJVKP8H20hRdVRj8WepI69tqT+9Tn/vVT9cM3TkRnu9ivrCaZy4AX5VMnHeWfykHloXJR+eyXI0w6VPIX+0Xg2myRLgOQ2U7C9vfKdox5GLB+yRZ/pTLqUaidN2nFs2lwCYdF3687vKvgjC+M5mcvGsfnXTR2GO5uUkN1ouli3L71c/HBlhNi34ft4I1gpeVFyVkGIoYUvLuxo3P3bfWbrs3agfOxrR21dFRGfDw0VTPTrZ4cTtBrmMn1j+9tDF7w1ykv+s49zQPyXQxpUctnT2cExYqwPTwNPZw42Mv2f9Qp9n7UBeoKXjHWx4swu4PGwfQ/m7Ga5DZ5LyJbNH28HoCF9uO3W8Xrvzyovv/qMdGCfNPZEsWlSVYX3Xqpin/pbNhcV7/jh5olMfkcOvPGNxf98GZMM5qrq5f97QPvFY8unkbk840umvzKe49lbP3fsC+vM8XL71hW1zbdjmr6AIRVBuap4e2m7ZeZBt0xMxsDzAoD8dgZ54/lc2pG86pJfh5/fkA6W8L4lq0ffdK2o31iZ2O7oInNndimQc8nTftKxkXmXiqo4Dj3TNy5oqH6F8m8n66wcjghXchmKF7McLkUnZ9HUB3naEkmo3pG8ohKqY3zDfSp2H+Es2lzK/nssyv4xJmlbNy0ElZaiYdxLhUixhONosbRx+LEwQAOa+lluz/oFHRqT3BQMJqBE24F4zJg52dUtWQ7UcDv1zXUvGrntUILc5JwCw2AkZb3waXbpmNMaDVUtKu1OEZAPu09SIAGKsgK2h/AeBiW0EycXc7GTS/l46b66Y+NnujnoycWjzSr0ffaj/Wz9mN94sShPoY/ceJArzi2u5v1dg3itB5v2EppX4mOxhu9iZAO6vLzIRGqW7l+wYGon7wZhoAk3jA4kv9Bqif6DT/Dm1Xa2yMlYCRpbeUD5j0OYDywCCu2y0cXUeun7f3iH1XEK6qKeFlVETYMQp8L5vyiEsyLxGRk3YWw+HQwoILEIRboDrKetkHW2TYo+roGsXPzILVyrLt9EMuaVObDnEof+p/JqpJ6WtGrTjjG2tAq/7RuffUjUT95kxCBIYkl9JYP7SDwwJKmM9Blux82sq+Hhx3wVooEpHRJtQyiT6hSvzCkauODdF47bT1Ip6fSnEjslBc2+ZOpR2s9ER4tKK3+pveCgyriUGE8wbkQnvB7XrybSPWkNJNyQ4Sj8m5GMqvu3FCtWQuTiqcAA0viOSj0tbXNt2Iy1N1gwKlatA6QLz57Wt9Q+0d1PeKrX+lnRKJENG3kETfafSSoY5co6cQupor7l6+vedSxuAsgIkk8h4X8s6Vvji/hJT9EW/QDVPzxWvRpIKDD2bYfnU44wbDfofpvARH4fz9Zf3GL/QhkSEJAEi9N9WD1zdvmcY9yIwD+MZocv5aMzQnXacpSCtFGp3tRM9uHBvYhLKJ7csXGBdtTiLSgX5XES7P4qf+Ho6iu54IthQV0ejQ515MwhmzINBb4HsDW9+vVEHtG9uOiUhzxjSTeiKFL7sUHrm8a5ynh1wHwm9FizEW/qywag5tUUV2VRObQh+xBfncgvxtDAfHsnc9Un4jmWd6khIAkXkrwjezlB5dtu4QL5TqQrwYt4RegikbnYqGSJz0bZmS5CL+lzzKJxoGPAFq2D0G6RsHVZ1euW/Ba1E/eOIaAJJ5jUCYf0R2LXyqeNWn85ehpX4i5ItUgYA1iKY+NyWkinkS0cGLdaN4aMWDRhMHvt/Ycbfldvp3AGoupG+4l8dwgBeSh/prnfOWlp37B6xWzQbYvQjDVWIA7D6Sc4ngWBTuMYY/tSKcJ6fw1GOS7u3t3fZjNlQNGZVxb2/Q4Dqy4inH1R3Xrap5MFG7NssYbmVB+jm0dnl/eUH1LojBueyaJ5zaJRPJz/42vlCneqjFqSK3yeDyzmMJnolWcASPHVBijx0BNrcI9zZbBpE7uF1z4cODfAGw2fXg2CENOG9TFNvTUWnGPc8bEPoy37Q2FQnsUj9KmBttaVz15WY9Lix/N1pra5jaUdTRa5BC2Z7g1fnsG2s6BK57HUZFpslvb8nXzx0RfdvGNJJ6LhSOzxtja2kasgeQNWj84jnzDSKcZqETt8oaaJ3IBN0m8XJBSgecxsknRY7Hkw5Q3auQe01q6OELmAlySeLkgJZlHFks+MjgRJLlKukjepVQlArmBQCz5tByjpYPh5Za6hvkbcqMEQ7mkDql0EoGcQYCGQ2IzC+4N+x3r5+Z7STw3S0fmLYpAvCFFUzcx8QCLkR8jv2jAHLnJya9FjmArs+kQAvGko2EFijo6jCCNKw4hLaORCEQQoOEEbOS9Hi2EdoJT7FhePCExZpkzwwlS1ZRV3NUICKY8lIh0lGkaTMeB9LfQ4DoNNVBYVxcmJnOSeDFgyFv3IUDTwDADpx0zc5bGz1qh3Grkgx+FobDuK4HMkURAIiARkAhIBCQCEgGJgERAIiARkAhIBCQCEgGJgERAIiARkAhIBCQCEgGJgERAIiARkAhIBCQCEgGJgERAIiARkAhIBCQCEgGJgERAIiARKAAE5EJYFwgZ+2Negmz8I/5K8bcFf09jh4Mgro46pONDhDfi70v468LfJqTzJq7SSQQKCwGQ4X78xbs/4UGlk0ggvrH4eyc+IfyudzIdGZdEwPUIoNJ/JQER9Efv4sYR8iEeIt1f9IgTXBe6HiyZQYmAUwiAAA8nIEHso5TJh8isSEfpPeBUmWQ89hCQK9Dt4ZSuUNSnM3ML4Pl7EGNELR+RDu//AX9fNEsEfiUW/tJbIpA/CIAYN+HPjku65UOkdlo6Pe2r8wdVWRKJgAUCqPVe/G3Va7/F1Tb5EE8ypHsN4aXmYyEr6Z1nCKDSV+Lvz/iz4yzJh0iSId2bCD90JHSeYSuLIxEwRQCV3xHySdKZwiw9JQInI5Aq+STpTsZUPpEI2EIgQr63cbXjomonAkv10hbCMpBEwAABkIjUzmTINxvhzQbH4R11b+BO9ukMsJePCxwBkCMZ8g1EaWV+I0lX4PVKFt8GAkmSz5xyQkjS2cBcBpEIaAg4RD5JOlmfJALJIpAi+STpkgVchpcI6AiMkHySdDqA8ioRGCkCIB9ZL/vxZ8f1IdCUkaYl35MISASAAEiUzDidTszoOJ8EUSIgEUgSgRGSTpIvSZxlcIlAFIEUSSfJF0VS3kgEbCLgEOkk+WziLYNJBJLt0wV0dllcZZ9P1i2JgBECIM8Y/Nmde0nr6abgL5m5nSPaRsIov/K5RCDnERgB6bQJz3jPkfV8OQ+gLIBEIFkERko6PZ0kyUf7a8qWTwdPXgsTgVRJp6MmyacjIa8SAQsEnCKdnowkn46EvEoEDBAASXz4S7StOh6f5GxvTIQ3k+nz0ZxOr0EW5WOJQP4hgAq/7CR6JX5gm3Q6SogmGfJ9V39PXjODgNxPMTM4G6VykZFHzPM/4X4xTvXpiXlmeYvwHQh0Of7esQzM2AU2wsggDiIgiecgmCOIqtvinRGRTo8zCfIlRWo9fnmVCOQkAlAHL06sWWpPk1YvjUCwUDtV+J9n9K58LhHISwRQ6f8X/uLdH/DA0d3AEB/1+ciQEuuIdHfnJbAuL5Q8EdYFAkLlPx/ZuAp/fvy9ib/noSaquDrqkA5ZLykdOhGW1FxKpxFX6TKMwP8HGVohW+VEEEEAAAAASUVORK5CYII="></image> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/partial-error.svg b/public/src/assets/images/partial-error.svg new file mode 100644 index 0000000..652075f --- /dev/null +++ b/public/src/assets/images/partial-error.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="190px" height="154px" viewBox="0 0 190 154" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/partial-error</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/partial-error"> + <image id="Page-1" x="0" y="0" width="190" height="154" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAREAAADdCAYAAACcyUb1AAAABGdBTUEAA1teXP8meAAANJxJREFUeAHtfQt8VcWd/2/OuY8kQBLeIAJKElARLQaIoEB4BpSEqq22vmpbrXX73Ha7u91PH9Ztt/vf7up269Zqte22tbbVWiHySAQJQURERKGAAkFeKu+8Se7NvWf+37lw483NPTf3cc7NOefOfD7JPWdmzsz8vnPu98785je/YSSDRCBBBB4kUr5+4/UFInuXmpvrDvKc8KOaQgFF62wV9+8famyfvHu3P5wmP52NAHO2eFK6RBA4eUP5KBfzlqgKXcKJxjJGFzFiI4j4MCI2tPuTkTeR8i7kCeK5M7g+Q5zhU1yz0yj/GOfaUdwfpUCwYUeHdnheXV0giXJlVoshIEnEYh1iZnM+qCwflsfdVzOmTOGMpoAorkJ9V4A08sysN37ZvIs4NYBcdnLGdypc2aVxbVdhde178Z+TqVZBQJKIVXrC4Ha8UVrqnjh6+DRS+CwUPYsYm4HPiw2uxrTiOPFmkMsWYrRFC7J6n1/bNqq2tt20CmXBKSPgaBJpuG7GNK7yE8X12zB87hkexPz+zjkzytubOrdevXOnI17OszcsnOJyuZbgC7gY0s5kjA3oKbWN7zgPcGI7GGnrME9a+1aL/1U5DbJGfzqWRBqunzGRKewdzMMbgxRYWFL/xo4w5H8mUkvnlv0ew/lPaURPFm987b5wmp0+j86cmTtwWP5ihdESEMYytN02I410cRYjFby86zSN1vpYoHrkyvUn0i1TPp8aAo4lkf1lZflKDtsOAYsxLD4bJpJIAiGOoNHni17Z+uvU4Mv8U/uXFnuHuYqWgDhuw1C/EkQ4MPOtsFyNQehU6tCbf1LaA8/nr18vFLoyZAgBx5KIwO/AnOlYaVA3QMgiQSQ8qFWQi31TjEBCBEL090X1W3+aIazTqYY1VlWUK0T3gDiWo/2hZdZ0CnTus7yLc1qP1Z/fn+w6+FzJmgM+58pqDckcTSIC4h5EQoTpNKmCQDTGvo5pzP9Yoxtit+L44sUjcnLYPeikezFdKYmdS8bqIYApz1n8ePw2wAK/HLpi/R69fDI+PQQcTyICnj2zpo7PcXuhH6GQcRTXtIeLNr3+zfSgM+/pszdWzHap7CvE+Meh03GbV1MWlcxpMyft0Tdb/M9Jhayx/e54EhE6kGlzyp7GEudt3dAJHQnvWlSyafub3XH9fPEgVou+VrXk45iyfAt2G9f2c3McWz10J4dJ4//tZ21PDV+5OWRh61hhMySYo0kkWokKfcIPsUx4O4QO6UisQCRCUTrcPeFz0HN8A1OW4gz1e9ZXg6lOE96Dx8918Idhf3Iy6wFJAwAnkwhrmFv2h2glag8dCUYkXZo2f9Irr7+dBoYpPSqMwYrHDP0siOM7aOPYlAqRD6WNAMikjWnsUe7nPymoqTmbdoFZWIBjSWT/nGlTVeZ6M9YqTCSR4CV6pmjj1tsz1fdidFSxvOIO7Cf5PqYtEzJVr6wnPgJ4D2Ahyx8JdDU/MnTN1pb4uWVqJAKOJZHQVGbOjO+QRvuKXnn9mUihxfW7M68e43LnfCsY0H4z8dVtb0Wnm3HfVLV4kULKf2NadYUZ5csyDUCA02ms3X3/zVb/E1IBmxiejiWRxMTPTK7mqopiTFn+A+RxU2ZqlLUYgMCuYJC+OvjFtXUGlOXoIiSJmNi9sPMYkJfDvoeVoa+jGo+JVcmizUKA01+DfvrG4LVrD5lVhd3LVe0ugFXb33zjkgq3h1ZBcSr2tEicrdpRfbWL0eVM5fd9e2LxuZx9Da/XwRS2r0eyLV2ORAzu8eaKiiHkZQ9DafoZg4uWxfUzAjCnfy3A+b1Dq2t293NTLFW9JBEDu6Np+eJPKJw9iunLSAOLlUVZCwE/FK//BsvXH0nF6/mOkSRiwAt6srx8YE5+jlh1+bwBxckibICAGJXwYOCOwlXrDtqguaY2UZJImvA2Vy6YToobvkloYppFycdthgCIpAW2JV8uqK75nc2abmhzJYmkDidrqqr4Fvx6/FBukksdRCc8iU3hz/ip7f5s3YsjSSSFt/jM0rJ8t6fw/0Ae2GUrg0RAIMD3wgr5pvyVa9/NNjwkiSTZ46dvXHi5W1X/iqXbSUk+KrM7HAExvYGn+s8Mrq59weGi9hAPO89lSBSBpsqKW9yqa6skkEQRy658WNbPVxl7vmV5xY/EtotskV6ORBLsaSzf/jOWb/8Ny7cSswQxy+pssHRtPtV8x9gtWzqcjkPoC7F/9tThjLlKFJ/SMGHr1rhes/fOmDHUlUsT/ef4e5O3bTvudIA2lJe7SvNz/hfLt19wuqxSPmMRgMJ1a0cnr3K6vxIxncHJCp5K7C6dqnn5x8U2eT0oD5aVjXR7lZtVzq7x5ilVG4hcenmdEC/sP67J966UBOKE3sy8DBi0luXmKq+23LDA0cv/PXQiCjGQArshFpEIAtE8rEphPCs2kp2oWjDSm+/diBdhaeZfP1mjUxDAUL+Iu11bmisXOtblpSAR7uOBNRqjLtFxsYgkmkAwTAv6u/w184gceRBz4w3zx+eQSxDINU55maUc/YcA3EAMIUV9qWl5xcL+a4V5NXcrCffMLh3tUVyVCqeQd3GNcGyhj61iaoef1Lzl4RGIIBBfsGvNFa/uOGxes/qv5KYbF05gKs6qYWxc/7VC1uxIBDj5iGufyK+ufdFJ8nWTiBAqFpEQV7RsIZDQ3NXtxsFH2XMcpZNeZpvI4g9q2m1OsiXpQSKiE965bupFLpdnWXhEEu4Yx49AKhdfqihKPeTNmvNsw30rPzOOgJ8HgzcVvPjS6ozXbEKFPRSrovzLNu/4gPHAll51KXy7U6cwZ5aWX4zpSy1klgTSq+NlhAkIeKAjeRZHo84zoeyMF9lrJCJsRlRyL4dRlTeyNUJHEuzyvThpy9vvR8bb/frDpbOHD3DnbYC8k+0ui2x/bwTOBQI4q6q3MzJVUShX7V+jUjSrlZi2qGBF7dbeLbdPTA8SiSYQMYXhDFqR0NIvwXG6s4jk7MKFBWqe+rJchbHPC5tMS/c2NdEbp87oPjJ39CgaN3CAbnomEsQhWsGu4Jwhq9ftykR9ZtTRPZ2JRSBdjGow/KgW5CEqF2Siur3LxHELZjQmk2XunjzZ48pzPS8JJJOoZ64uMfrY3dgUt0I3RiP9HbD8W+hyu1aLKXV/tyXV+kMo6hHIZfWvvyd0JGIaE00kQgGbaqVWeG5s0difwRJ1vhXaIttgPAKHWtuoIxDULfiywgIanZerm57hhIvdnpzVYmSc4XoNqS5EIoy8N4Z1IGIKE+S8VhBIuAahB4kmEo/qXmrXnYpiM500ZQ/3rjM/9zY16wo2NMdLpcOG6qb3U8IUdYDrd3b8TgkSYQppoT0wYQKZ+Mq2Xn4jo4lEw76ZCaWlIRLqJ9BTqra5avGnQrtxU3paPmQHBE50dNBZny9mUz2YwswZNZIUC27GhoKysqKq4mcxG27hSEECHDsNX4QOe1cg4KuORSDh9gsiUXzsBZEXj62etn17yFQ+nG71z7NVC66CZucpuZ3f6j2VXvv2NuqPQmaOHEED3SGj7PQqMelp6OgeaKpccr9JxZtSbI/VGVNqsEihF1ZitqGTSizSJNkMExBo7eqiFYeOxDxhSuhBpg8fZkKthhfpD/Dg/CErX9pseMkmFGi76UiKGDAs5f5WEkiK6NnosXegC+ltFYI5O2TASgi9efpM6G/n2Ubya5iUWzN4XKT8GcewjrBm83q2ytH+QMKiQpH6L3iBqsL38tOZCAhSONDSGlM4QSzCbiQyCP2IGJ1YMjB2UW4OPQ1F65JbifSXmSzQeMePRM5WLrweDpd+YAGsZRNMRuBAcwsFEhxduEAgFw/IM7lF6RWPkfPCxcsXfyu9Usx/2tEkIo52UBVVHCzUv/bN5vdj1tcgjMviLetGA3TN0CGWVrCG2yt+AJtuXFwavrfip6NJxOUpfBTTmEusCLxsk7EICOMysU8mkTAyN5cmWXUa01sAD1PZ09CP9K99fu92dcc4lkSali2+DQRyV7ek8sLRCLwHEkkkiGnMrJHDE8lqmTyY1kzKy1EetkyDohriyCXekzeUj/K6cvbAnmhwlLzy1qEI7IM+ROhEwgHbNKjR5w/fdn+WjRhOEwvyu+/tdAFj0KUFK2vWWq3NjiSR5qqKP4G9odSWIVsRONnRSTXHenqtGIW9MovG2HfLF3b8HvI1+6aMqKtLbNiVoc533HSmZdniSkkgGXp7LFzNcZi+RwaxY3cWrFXtHIR+zzso5yGryeAoEjlVdd0gUpWfWw1k2Z7MI3D8XE8SmYYNdwNc9jeLwka3rzZVLZqWeUT1a3QUiXho4I8hqm39Muh3k0xJBoEAlntPdXZ2P3JRXh4V21QP0i3ERxcqln2fFCczfhTVv1eOIZGzNy6+EgoeW21c6t+ud27tJzGVCbtEFNOYmTZbjemzZxi7emq+574+82Uog2NIRFXZw9idaxl2zlD/yWpiIBA5lREb7vIcMI2JFhOjkYcay8sLo+P7494RX7qWqiVV2Fu1qD8AlHWaj8BpTE3adQzJCjweKsRfZPjwgj5kDMzai/IHRSY555rRMGVQzvcg0Df6WyjbL/G+UVrqLhkzbDdWZEr6G0xZv/EIxNvaL2obBN8gH79kXHfF8MpHzxw4SGIaUzV+LOU6cBTSLSzxLuoKXJm/ev2+j+Iyf2X76UzJRUO/KAkk8y9OpmrU29ofrj96E50KC8MrBhfS9fBe5mwCEQgwN7lcYjGhX4OtRyJHZ87MLRhecBBTmVH9iqLTK8cXkxUWkjJkGLHBQ4hhtYPwhzOLQ5JzsXPW78fJ8FgREZ+trcTPniHtzGkc+Z7YfpZYEIqt/X9577DuztyhXi8tGTvGkq4OY8ljShzMWDVO0wqra940pfwECrW1TqRg2KAvSQJJoJeTzMKGDCX1kktJGTuOlNEXhYgDv3hJloLsmFrw5ibip05R8NgR0g69R9r7x0LxiRT2LhwM6W3tF9OVOaOt6Ss1EdkMy4NhOI6G+gHKqzSszCQLsu1IROxqzMtlBzGks7cZYpIdZlZ2ZfgIUq/6GKmXXU6CREwLWH4NNhyg4J6/4XO/7khFLNE+f+iw7rEPgkDGDxxoWjPtVjCOmSsreLHm9f5odwo/L/3RzN515uTSVySB9MYlmRiGLfEh4gB5KKNGJ/No6nlFnVdOCf0RVl38tWso+PaOXuXFOzdGbOOXBBIFmUoPIWZJVGxGbm1JIkIXonDlm5jKyJACAiw/n1yzZpPr6qlEUcujKRSX+iPQafDjH8Z8Xs/B0BA8Y8EzY2LKkMlIaK0qGqsWTh28cl1vRja5IbYkkUHD8+8EgdjCbbfJ/ZdU8UIh6ppdTq5rsPUiFR1HUrX1nTm4dzdpJ473yhjv3BgxzdnwwUfEMwojmyuHSI8PAkSFVOFK8fZegJocYcclXuxBYl83GRdnFQ/Vm2t6GeV86evkmnGtJQiEuEZddS/HxDneuTFNWP0RxmThPz3HzDELdngkBuafhE/hj4xmMiSv7UYijTgjDKOQKzKEj+2rEQpT97LlpFw8NnVZoLvQTp4gfvoUafCYzlvh/KfjHI55x/ItznkhGHwxb05oaiT0LKxALAcPhcp7JK5je1MP7tpJXCwBRwVhXHasvT0qVv92ihyFfAQOtn0ozAVdIWXUubPtSARbGOUo5KPXJu6Va9oMci+Cri3ZqQvIQaygaAfxd/gQaSAPsVybSmBYQVHGjie1qJiUkonEBsIMPRikrvoNMYvry7gs8qGLBwxwrll7pKBJXGO5996T5eU/yKTjIluRyOnKxZdhRaY8CUyzMyuUpR6MPtTJUxKXHyShHT2MlZK3KPjOHuIRW+kTL6R3Tt7WRkL3If6wQTJke8IKBxNvbOyVOd65MdGZvfg1uXaEVItF4yLMAr2DPHcjPmN+dWxFIi7G7o0GTd73RECsvHg/Bb3zyASNeDEqCO7eRV2v1MecXvQsPc07QVRHDhOJvxhBuDTUMy6Lzj4Nu3Odb9YeLXVi90xRvoicGSMR2yyS7p482TO2aOwx6EOGJwZl9uUS+g/PHXcTG5SAI2J8oYV9RtemjcSbeo8K+gM94Uxo15mz5Is4gEooUNuE3iUijBs4gOaOTpAkI57LqsuAdl3+qtpXMyGzbUYiY4rGLpcEov9KCPN07x2fIYJis6+gwTaja3X1eRP0vjJnMB0jTZoKN4aRYcXhI5G35MV+nRnw2C5DHwio7B7kyAiJ2GaJF++XnMrovDcKVkESIhCh0FxXQ74nf2E5AoklmvAh0uLvOQqZIaYxFzb+xXpGxp1HgBO77YPK0oycE2qLkciJqgUjMe9aIF+Q3giIfS6eu+7pcwQipiz+vz5H2rGjvQuxaEykhzLRRGHqfskguV8mke7Cj25+nja0Enn/lEj+dPLYYiSSw9VbIOT5fefpSOuwZ4VNhvfTUKLmxT9hUXuvgXy/fMxWBCK6KpJEckLTGLkak8wrzBSWEetVW5AIY8qtyYCXFXnxU+O56ZN97rgVKy++Z35v2JJtJrGNPDtmBpZzBZHIkDgCcBKw5OzChbGt/RIvps+clieRUxUVo6FQnd2nJFmWwT1nHikw4IoXAtu2hqYwwrjLbqEZ5u3hA7rFFCahXbuSZKK72aPmMTGlMTVYnkQ8Hv4JIGD5dpraS1GFK+PGYyPdnKjYnrfBXW9TV83qlC1Ne5aW+bvwVCY0jYEyNZHgni99dUfjxEi9OTrO6HvrfzkVZZnRQtu6PGGNuhzvBbYh6oXgvnfIv+J52xKIkKv5gm2IOIBbLOvGC8IgX4V5v/uW24iBYGX4CAHO+KL3ysuxscm8oP8mmldnwiWLJSrGaW7CD2RBRvfc+TBs1t/6zrFRzv/8s7YmENGNU+BsuRwGZcKwLF4QBMKmXE2593+J1FGjyH373cRVWyw6xhPLsDSYwQ8cku9dYFiBMQqyNIkMYMPmQR/ijdHurIwSFqmhrfx60vt95HsOK3pRFp562a0cL0zax/ZBIKL9bMzFNPCfv0vswiZD19Xw0jZzlpVFy3zbGLvBzEotTSIQHFtQZQgjENqRCwfFesG/+kXz97/oVd4P8Rw2Mnk/+DEx7OYNBzU3L7RqRdL/ahgS8bkw8sboa/03Mqqm3dOnj9qATeVR0T1u35159RhEGLcfh7GlPSrI4htl/CVxV2OCe/eQUKZmS+DYaJj3gx+ROqy30tUtsCo3dQRvK5jxhZzYeMN805RFCZFIw+yyW3JzlQ/GzS17bffMyUOiEfwz9FoNc8qecntyj+Hz4ej0VO6bKhdfCuGLUnnWic+IJV3d4PNR19pVuslOSzivB/kYueCnJFYQUxv3Yvz+CN8lMoQQUFVPnBcoPZASIhHYNY2CLwh8sNIc96CXIonkQSy/ls4t+yVSPyeagjwXpdek80/D2k7ahlwAUnglUy65VBfW0E7ctlbddKcl4Lwm6thUR51/26UrmvsiHGoFZ9QynEeAK3yuWVgkRCJv1G/9BY4hekY0AkxyjSCSnddPGfwgCOSuuWVPgjg+K9LwC/G3IPd9WVynG/CemCZ0um3L9POu6fCLqhOEq8LAttd0Up0ZLX7OxKJv42M/012FEqMRV8US4hcUrs5EIgmpOItvWJREUdFZEyIR2JwHt2/ceheI5I+iAEEkA9S8l+6eU/brSALRNN/8kk07TkVXksq9wmhmKs857RnhoV29XN+lbODVV3QPgHIaFmF5GC6E2wDlyCFq27ghHN3r042VG3b55F7x2RgBuCaIjaxmyJ4QiYiKLxDJnfC1GdoVKKY2YJO7RZoYgRhJIOft/dkkUXa2B/XKq6BxEr+7McK5cxR4840YCc6PUvCtcOOv7U9P645GFJxwpi5YLN5PGYBArqbOMAOIhElEVC6I5HD91jtxebi7MThPGMRys1EjEFGuMkCdLj6668jiC3XylbrSB95+M+tGIZFgqCARduwonYtDpC4xEhkwMPKxrL3mCvU/iQB9Nm7Otb/A5/junsAWW2hT/9BQWmrYbkGFM/z8yiA8oytjxuoCEdixXTctGxLCo5H2VdW64rqH4uiKK/SJWPdBJyYw5RozxErm154dmHvtEyD/z4uGQEO+B8rPv4pr/B5Mo4GudUYRCez9p4hysz2oxSUhBVQsHLQPP4Bh2ZlYSVkVJ4gksP11CjY3x5RbKFiV6TPklAbo4DiJqTFBSjMyURJhB+eWPY7M94r6BIEwH83fXv/aJ3H7rIgzmEgkiQBT5VJ9MxlhXCYDMAKJuDRO5954XRcO18TLiCOfDGz0B5Xlva3z0gQmIRI5MLfsPtAE/hA43ysIZMLWrSdCOpKNrwnvSZFE8mgoX4r/hOEaCEl/OSLFcu34mDJ2nG6ztQP7dNOyKSG0UoOlPN/mel2x1cFDEj9CQ7cUZyTkMo/h362ESIRxrV1AKEYg5KN5gkDCkM6Dau+wIBJO+P6LTBTKG05P9nNJ1ZJiPJOb7HNOyy9OjtM7gpI6OkLHWjpN5lTlEUSi7d4tXtCYRbhgIs/GXxozLdsigZXha94JkUhR/banNb+/5MiRE6WRBBLuAEEkE+pf+1SA0xXb67d+KRyf4qdc2gVwbKj+qDPkbFnnC5Mi5rZ+TExp6Fwb+bBSEzMgXbnscqkXATgY5YsfaUODK9HSire8eaCPvHxi/Wt7+8iTSLLhQiZSqdXyKMOG6zZJO/Ghblo2JoBCMAdm5MdRnV6dKSDDpjxhLi+sXbM6MAZtvbEhoZGIsVXGLw1WsRPi58iOVIalSb2gwfGQDD0RCK3SHNjfMzLiTsHILvZkJyJTFlwybvz3y3Ikgn78yAYlCzpVT0RW2GuzdHfWWIdhdydm6YUYXwSPHNKVXoHBmfR4BrURM/77ZTkSwcugb12l+4o4L0GcKaMXeEtsmwi9/NkQL0iEw3ZGLyheL1GOqa5G9aq2VDx0IgMby8sLjWyU5UgEqh9DXAkYCVJ/lMXES68TOFZnZOiJgNB1xBuhMbebCJsZZQDZDvBcbCQOViMRECXpKwOMlNzqZXl0SATn09rxHBmz4RYjETj1Jq7jX1YRLgHgKV8GYaDHDd3NaykSaVmwQCgCLNWmfnvpvDovvCARGWIiIBZetC5/7DTshJZWq+ehYUwdEROkFCOt9YX1ylFIuB/FvkYZUkAgqMV+KNuXdnugoukbIfXIl9iNpd5UrjL9JYnE5HFMLo5jJGMGvRFKzMzZFSmmNHq+V4SNCMlR3PkXgjHnKlYZV/QtrLLr+4AXviu2xGKEIpSEMvRCQNiBKHrY4DxiDofWMgABzgYbiYO1RiKMDTJSODuXxdv1tyAx6WQndtdiyhJahYmRqolRSGdnjJQsjGLc0LVua5EIFuGysEtjiszjeG9n+Yb5f4pZt10j4x0vir1fRB3n7Cqaoe3GzM65JII1OjlOv/C68LP6DoeUOCbxhr5tNipMTGXUSy7VbbEmRnZy02IIH8yIdewHdOGLm2CpkQj8LMqRyIXu0k6f1u04hjN5ZeiJgFCcqpMu7xkZcRdsPAsTJBkuIKDj+Ts1fCxFIpociXT3Ij+jTyLKGHFaqQyRCIRGIkX6nuACH7wvd/CGAeNkqOdqS5FIWEb5CaOp06cw/I5t86CMws4AeShTj9dEkIh7gr4XicC+d+VIpAdixt1IEjEOS2NLgiKQnzwZu0wQiAr/GDJ8hAAfNIjcej5YMNUJ7tgmSeQjuAy9shSJ4KgIHeMIQ2W2TWHBI4d126oUleimZVuCGIW4rp+LzTOxtR5dwhP88RNyOmPSi2EpEsEpWHINLqKjtQZ9JzuqOJRJ50sTUURWXGoYaXium6Mrq+9gAzadAS7dHNmVAGsaHXPo1HCwFInAkk6ORCL6MXj4kK6pNoPzYUU6Hw6hxbE71zPpsgjkel76ceB5yA9rz+isvcO5Tob6krAUieCXQo5EIl9t6EWC+/dFxvS4dk0t7XGfjTchhWrlx0nR2eYvdvV2ra+VW8MjXg54XmmNuE370lokwlhb2hI5rIDg7p26EqlXTKZst14VUxnvoqW6GHW8+w4pHZ1SHxKBENcUQ3+sLUUinAd0liMiEMiyyyCWJnm7DrcqCrmunZVliPQUV51+LblHj+4ZGXF3bs2L5IJCROpDIkBReFPEXdqXliIRFuRn05bIaQVg92nw7bd0pXKVTic2KF833ckJoVHIXffoihhobSVt00Y5lemFEHMuibSpQUkivTocutWtW/RdIsJmxD1/YYynnB+lli8kz7jxuoK2b6ojYd+d9WfNRCPENf2NWdF5E7i31Ejkieo6QSKxzTQTEMapWcSO3uCut3XFU6dcTcrF2eUkX4MiNeeez+kuc2vwtXru9/9HLiyDy6lMz1eHa/x4z5j07ixFIg8KAuEkRyMx+rQLw3JdB834oniWLcc2VjgjzoIgVmQ89z1ALhzUrRfaNtWTC9MZubTbGyGNM0NPP7MUiVwQV//wkN54ZE0Mb2qkwPZtuvKKnb3uRRW66U5KYFdMoZzyBboiCd8hbU8+Rm6pUI2JkRpghn7HLEciOEbzSEzJZSQFNr4Mxzr6dkKu6WUUsmR1MFYcXt1yv/mPuh7MhOjNq1aSW45CYr4F+H61FdTUGDratxyJQPKjMaWXkcTh3s9fuyYuEmJaw4Y48+gejmMfcv75u+TCubp6oQt+Qzp+85QchegABP2Q4d8vy5EIDhw+qCO/jAYCwZ1vkdZwQB8LHBXp/fSdcO80QD+PDVPEmTGeL36FPFdOidv6sw//hDxwoSB1IbFhgm1eQ+yU1GMtRyJBYvq7zlKX01FP+lf+FRsE9I0OxUjEc8fdxBxy9mzItP3Oe8i7YJHuaozo4Jb6OuI7tssVmfhve5xfoPgP6qVajkQ0JSBJRK+3LsSLJV//yufj+gxVRo0mD754bIDNRyQYgbhuv4tylt9MDBa6esEPd5Ktj/wneVVFjkL0QEI8dCL6m7HiPBcvSb9X4j1lYtrO5uA+SCoPCOkDY7ExLwBjqnhBGX0Ree+5l9hgQ48ZiVeloWlCB+L+wt9R7s23EovjyU3YhJz+3rfJG+wiVdqFxO0D7JvZGzdDComWI5F5dXUBbFU2XNAUsLH8I10YvsczQhMCiKmN9577SIlj2WlJQTGC8n7jn8hbcUNcAhEe3E898hNyHT1MbkkgfXalz6/t6TNTkhksRyKh9nOmb56ZpICOzo4vkL/6BdIOvRdXTDZwIHnv+iy5Z5fH1SnELSSDiezSCZTz0L+Td9b1cacwokln/u9XpNVvIA+mOlKZ2kcncX5iVG2t4ZtcLUkiWIbS3//eB05Zl4wNev4//4G094/FF13s+C2fT16hcLXqEjCmLK4bKyn3e/9K7qLiPgmvEQpm33N/pBxMeySBxO9+kcqJdvSdK/kcliQRjbRdyYuSvU+IM2b9f/gtaXF8sobRUS4topz7v0TuufMs5TFemTiJvN//IfbD3EdqHHP2sBzNL9VQ++M/pxyQo9SDhFHp45PT9j5ypJTsSukpkx9iPradvBiry+2XCSMtDNF8IBLPLbeSWjIp/nPiF3/OPFKv+hh1bdxwXq8CuPsjKBeNIRdWXlwzryM1weNBG//yLLX/6gnKw0qMCySCkasMCSCgKZopJGJZ/JurKt4Bh/TxbUgAuWzLAuWie9EScpXNTFhy3oh9Oa9vCZEJj2NWn3CBfWVEG9XiEnJBaarCH0oiI49QkSC600/+gjpfeF4SSF8Yx0jv7OocPWJ1naE7eEU11iWR5RW/xibue2JgIaMSQEDsofHA9yh5vQnkvpAlEKDggX0hq9igsIrFvWEBxKGMHEXKlVeRC1MpsVqkFhQmXLyGkdbJn/yYtK2vhqYwcgSSMHShjLAPOVSwoubS5J5KLLclpzOi6WC3enzcI67tFH63P3Wr4rtKigwTNbh3N3WeOE6emz5BYsqQUMA0R73sitCfIBANy6ZBrPwIXQtHWUL3knAQyk4ocJWx40gpmUgM5KEKEsG+F4a0ZEIn2nDyB98h96mTlItn09WBWKWPksEg7bw89H1Ku5hYBViWRLRAcKMSx8AoljAyricC/OwZ8v3mSXItuYHc066FIlUlHoTPp0T0Hx6VWNFEcuFPBKGeEu4IODa48dYWCk17sOU+FIReQnhbz82F4+h8YqPHEBuGTXK5eaQMHESKsJrF80kHtLMJO3Jbn3iMcrAfxnNhFSaFkpKu2mkP4MBz8aNsSrAsiRSuWncQepH38PKaMgQzBc2oQv9ud2wL459PPv/FDKeH7we9EH+HblTxjr7tamuj5r17Qv5jh3z7u+R2u41bxr37jhB2X/jt06HPJy7ch/sjGthw/0TH2+wefiTMCZYlkQvirsXnA+aIbn6pDnn5zAcqogZhwt6CE+v8H35AHoxEc7CJUMUIJBMLdU7tL4xC3iusro1vkRjRB8leWppEoFi1NYkk2xnZnF+DDqYVug/fsWOhXbgDoBB2gUSEEVkmCMTh2IvvkWnB0iTS2dL5ck5+jg9a1iSWGEzDKumCHT48ThqPWA8E4NKg7egR8n34IciDKA+6FRd0N6rQs6SiR4lVSYJxDu6vVQlCkFI2S5PIiLq6tpaqJZsh2fyUpOvnh5w6PE4X1pAn9pMnqAPEEWxuwrTFTQP6kTzC8ji0vzpaTrWYpg8R2FmaREQDMZ+rxi+SLUlEtF8G9KGmkQ9k4TtzhvwwbNPg/1SFE2U3pit5eXkhnUd/jDyyoW/w/Xlp7JYtHWbKankS6eJdz+LM9/8CCIqZQJhRtoOHx73gEqMLodcQB2gHO30U6DhHgfZ26mptI+1cG8HtJVaY1dAyrSsXylJMVxShMEVJmZ629Gr8hQgn9hcW5uG9ytxgiyV3TGk24W273lwojCk9HUOmJePsfQCVUGGInSzipRIKUQw2QoZhIk4VaUJJijRBGuKzv0I6fWSkQaD58vMuLdA+snDVK41m1mX5kYgQnjN6Fi+dLUgknc7Kd9uiO3RFDBNDJFFEXus+KBNMQQCDv1qzCUQ0PNzvpghhVKGnKipGe3PYMZRnuymNURjIciQCySKA4zLvKKiu+UOyzyWb3xZfyuE1NR9Cw7oxWeFkfolAtiKAUUhrh4+vyIT8tiARAQRAeTITgMg6JAJOQABTjGfgCrE9E7LYhkROBhr+gu3MZzIBiqxDImB3BDjvytiPrm1IpGTNAR+cRP7O7p0r2y8RMB0BTjsLqtfrn/5ucANsQyJC7mCQP2Ww/LI4iYDjEOBcezyTQtmKRIasqv0blCP1mQRI1iURsBMCmPK3aa1+01dkIjGxFYmIhgc5PRwpgLyWCEgEIhFgvx5cV9cUGWP2te1I5KfVNdXYD3DAbGBk+RIB2yHAeSCoBf4z0+22HYk8SKRhSvNIpoGS9UkErI4ADv14fkj1uiNGtPPArKtGvHPdpEHxynrnuqkXbbjkkhxbWKxGC3J05szcguEFR2BvC0eeMkgEJAICAa4FZhZUr3stXTT2zJo6Psfl+TLK6cRBck8U1287GlUm2z+7rApboGZjI9QR241EhDBiazNY96dRgslbiUD2IsDpZSMIRADoVZTQSWZw6Z2LvdZfODBneuTO0I8IBHmxO5vZkkSEoIGuxv+RxmcCCRkkAkAgqH3XKByKXtl+JKCx50AO8LF/nkj2l5VdLMrvHoHgGtOY09Qe+I0tpzNhsJoqK/5JUdi/h+/lp0QgGxHAj2kNDqZaYrTs+68ruxYuX24BkYjRBkb/fC/Otr1G1MM4naFzgZ8Xbd/ebNuRiBCk08cfBVmeFNcySASyFoEgfc8M2Us2b30tGKS/hEcksQhE1GtrEgltMOLs/5kBoCxTImAHBKC8qC54seZ1s9oqiERjtD+yfE3TVooRSDjO1iQihDjRdeB/xbkaYYHkp0QgixAIBgPav5gp78G50yuxZ+38aWsXKlJV5VPvzry6+2xW25OI2JgHNwHfMhNIWbZEwJIIcP6r0FYQkxonCETjylxRvNCBME1bG57auD0594eJxPYkIgQsrK75C3QjdeJaBolANiCAH86WzoDPFF2IwK/h+hnLwgSiMH62pdX3WNEr29bBbuSvISLhlBcmEkeQiBA62KX9vfgQ1zJIBJyOALy4PzRidd1xM+RsmFNWwhVWLsoWBNLc7P/51LfeCu3HgeHZqxoPvhAmEpc7907HkMjg1S+9BYv4jDliMaPzZJkSgYQQ4LRn3/un/yehvClkYj5qgXd0n7ADaQt2PBYmkHBRxZve2BwakTBsQdH4SVvbiYSFCn82lpcXqvne3TDFvSgcJz8lAo5CAKsIgSDNHbKqZpOZcr1RWup+cfv24INir5pO2F9c7C05cMDvKBIRssIA7RYYoD2nI7eMlgjYGwFOT+WvXHuvlYRwzHQmDGpIycoz4+U6XKf8lAhkBAHOP9CCbZZbiXQciYjO9GtdX4KJbrcxTEY6WFYiETAdAfZAJg6jSlYMR5LIsBdffh8zua8kC4bMLxGwKgL4UfwNpjErrdg+R5KIABonf/0OwP/JiqDLNkkEkkEANiEH/bztq8k8k8m8jiURASIPtD8AIol2qJJJfGVdEoH0EMBiDDHt9uErN7emV5B5TzuaRMT8UeP0GcCnu0xlHrSyZIlA+gjgMPt/LVhRuzX9kswrwdEkImAbvLJmAw42/qF5EMqSJQJmIcA31ayo+ZFZpRtVrmpUQVYu55p9DZuKJhXNYIwVW7mdsm0SgW4EOD/h89HCGQ0NLd1xFr1w/EhE4H6r2FPjozukywCLvoWyWT0REEapXLtteE3Nhz0TrHmXFSQioC+oqTkLLfcncNlhza6QrZIInEcAjob+YXD1SxvtgkfWkIjoEFizvolzSu/DuTXoJxkkAtZDQNP4rwtW1tjqJIOsIhHxyhSsrH0aFPKv1nt9ZIuyHgEc+/D+wWNftBsOjtuAl2AHsOaqJb/D4Tt3JJhfZpMImI3ArkB7YPaQdetst10j60YiF94Efqzh6OfgO/Jls98MWb5EoE8EOJ0KaIFlRhDI/lmlRe9eP+PqPuuMyPBuaekwHFA1awORKyI64ctsJRGavHu3P3AucDOQ2pUwWjKjRMBgBMRGUc60SiPO0G2YM+N21e1+160qb8E72S/Q1D5nGvvmTJ/jGuBqUJi6edycstoHUzgBImtJRLwLgvm7/J03iL0J4l4GiUCGEfDDEPJm4yxS2efR/pDtF2yi7j84t+xx3OsSSYhAmLIaefOF3Pic96nrppWI62RCVpOIAGromrpj2GVTganN+8kAJ/NKBNJEwB/U+K2F1bWGTanBFq/2bBO7T49IDs6dMdsFAgF1DAg/g1HRsbPa8SPh+0Q/s55EBFBYUjuAjwVY+j2RKHAyn0QgDQSCcE56x+DqmhVplNHr0bPtgYdgvYCTDyIDiCRqaiMIBOSxJopATsPCbdmsLceStqPSHepENiNbrk/fuPByj6qukz5as6XH+0VOPzaF3lm4cu2zZtS+e/JkT87QgX/A1OSWyPJBLo8X1W99AARyvQ6BLJz0yutvRz6T6LUkkSikmpbOL2Iez3oAMz4qSd5KBNJDgPNOjHY/mV9d+2J6BcV/+gKRPAMiEQsH3QFE8jx+IBfj3R4YjsQU5jSOW1k08dVtOC0htSBJJAZuZysXjlOZug6dkLSSKUZxMkoiAO6gc5zx5YUratZlAg49IulZNz8T6NIWpkMgojxJIj1R7b47VVEx2ptDtYDoyu5IeSERSAEBsYwb1ILLsIz7SgqPp/zIeSIZ9EcYVd7UuxBjCESUKxWrvdENxYgdlFqgfY40SNMBSEYnhACmEEeCAX59pglENE7YQmH087OYDeVsPUYgKelAosuTJBKNSMS98Ix2tOHoUrwIv42IlpcSgYQQwBRmh5+0mWYeuh2vIcIKFQdxvxAzD6NbYZAmCCbt2UjaBcRsoPMiWXNlxYMYFn5XWOQ4TzwpkdEIYJv4al9z520j6urajC47kfJCBELKGryuIUOy0DPYwo73t8fAAStFjxbXvyacQKe8s71HgYk0LkvzcHiP/z7mtncJBVmWYiDFThABfFUfqVmxtqpfCSTCEjXUbE6NwSBdh/e3OlIMhdGXD8699qeIS/nHUZJIJKJ9XAs3AvD3MAsdIc3k+8AqG5Mx7W3Hj/2nC6rXfiPkTa8fQNg/d8ZMDDZWM2IF3dWDQPDeLirZvPW1zjOtn8CQI3qJ+SvpEEnK7NPdwCy8aK6oGEJeehpDxSVZKL4UOQYCIJADQQrcMmTl+p0xkjMStW/W9I+pbqWuB4EQb9KCtLD4la3bw40IrdoMG/QXfPmXhePOf/KfTNi49R97xvV9J0cifWPUK4dwtfjIypobsXnqISQGe2WQEdmFAM5+1lp80/uTQATgqkt9qC8CEfnEqk3n6dZbQHyrxH134PQP0KWM7b5P8EKSSIJARWd7EGfZCD1JgAfnYnh4ODpd3mcBApx8XNO+mr+y5qbBdXVNFpA4wjM8b+IBvihyBBLZvhCRnGm7GUSCTXjnA2fMDx/RneH7RD8liSSKlE6+IStf2hxsD1wNPckfdbLIaCciwGlngLpmFFTXimXSlFc2jITGx7u+BeW/eA/XwhJ1XtHm19+IV/4FIrkJjX8EZLKJk/bpkk07TsV7Jlaa1InEQiXFOCwD3wXzvf/GkHJIikXIx6yOgDjWkujhE10N3ytZc8Bn9eZmon2SRAxG+UTVgpG55P4ZFsw+aXDRsrh+RgC/8m9h+fbz4tSAfm6KpaqXJGJSd7RULalC0T8HmYwxqQpZbOYQ6ID/j4d2NPv/c15dnRiJyBCBgCSRCDCMvjy7cGGBmqs8hKXgv4OlYEpOcI1ukywvOQSgK1jLAoGv5a9evy+5J7MntySRDPT1meULrnBx139Ju5IMgG1QFVA27sP+/a/B691ag4p0bDGSRDLYtS3LFldyhT0MMinOYLWyqiQQgN6jCZvWfni04djPxOpFEo9mbVZJIhnu+jdKS93FY4Z+FkTyHaziJG3Yk+HmZk11mLa0Y2vlo9QW+En++vVnskZwAwSVJGIAiKkUsX9psXeEp/h+/Op9G8rXUamUIZ8xAAG4LMTU5fFOCvx45Mr10lF3CpBKEkkBNCMf+aCyNG8gG/YAZ/Q1OTIxEtn4ZcE48BzI+6mAv/M/zh8bEj+/TNVHQJKIPjYZTRHTnJIxQ24jpnwTZPKxjFaeTZXhyEpMXR47Fzj36Og1m5K2zswmqBKVVZJIokhlMF/T8oqFmOZ8DXqTpag2dKJZBqt3ZFVQmG6HodgvGlt9v7+0ri7p/SGOBMUgoSSJGASkGcWcWbx4rCuHPgd/MZ8DoYwzow4nl4kpSyte8Ge0oPZE4ara7q3wTpa5P2STJNIfqCdZ558xGqlYtqiCFOUzIJRlWEXIS7KIbMquYT9cvabR0/5W3x/7y7tYNgEuScRmvX188eIBuTlUyUiB8yy+FJawOTYTwfjmQskBcn0Vyuk/+zv5s8JTv/GVyBL1EJAkooeMDeLPLC3LV9WCpUxlSxhnN2K1YbgNmm1IEy+srtTBqnRNoJOvGFpbe9SQgmUhSSMgSSRpyKz5wIM4Q+jvKxeUEnMtwepOBVo5DaTitWZrU2qVmKbs4Rp7iVNwbWNrV71UkKaEo+EPSRIxHFJrFCiM2UYqE0o1hc2GDmUWCOU6kMtQa7QuoVZ0YJSxDSOOTWj7Frgf3GwR72EJNT6bMkkSyaLevnDG8BScijZF2KJgCjSFGMd5w8zdbzBAnwG3fEdAGLtAdjuhEH07oAV37WoP7Jfb7vutV5KqWJJIUnA5L/OG8nLX1FxlPFM8xVzl42CfcjGUteND+hVOo0Eyw4izQnzBByUrPWwzcHATOwPngTDq4qfFNZSfH+KlO4p6DgWC2sHmdv8BOS1JFllr5ZckYq3+sGxrQmQzIDAowDx5Lq54maoqPMi7zzYJKNTu0jQ4+tWC8Pfbcko7fk66D7RsdxrasP8PdfAGoLBSg7EAAAAASUVORK5CYII="></image> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/settings.svg b/public/src/assets/images/settings.svg new file mode 100644 index 0000000..8d60b5a --- /dev/null +++ b/public/src/assets/images/settings.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/settings</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/settings" fill="#999999"> + <path d="M12,15.4042105 C10.1203158,15.4042105 8.59505263,13.8804211 8.59505263,12 C8.59505263,10.1210526 10.1203158,8.59652632 12,8.59652632 C13.8796842,8.59652632 15.4049474,10.1210526 15.4049474,12 C15.4049474,13.8804211 13.8796842,15.4042105 12,15.4042105 L12,15.4042105 Z M19,13.2835789 L19,10.7178947 L17.432,10.4548421 C17.3111579,10.0318947 17.1438947,9.62884211 16.9338947,9.25231579 L17.8571579,7.95768421 L16.0430526,6.14357895 L14.7476842,7.06684211 C14.3718947,6.85684211 13.9688421,6.68884211 13.5458947,6.56873684 L13.2828421,5 L10.7171579,5 L10.4541053,6.56873684 C10.0311579,6.68884211 9.62884211,6.85684211 9.25231579,7.06684211 L7.95694737,6.14357895 L6.14284211,7.95768421 L7.06610526,9.25231579 C6.85610526,9.62884211 6.68884211,10.0311579 6.568,10.4548421 L5,10.7178947 L5,13.2835789 L6.568,13.5466316 C6.68884211,13.9695789 6.85610526,14.3718947 7.06610526,14.7484211 L6.14284211,16.0430526 L7.95694737,17.8578947 L9.25231579,16.9346316 C9.62884211,17.1446316 10.0311579,17.3118947 10.4541053,17.432 L10.7171579,19.0007368 L13.2835789,19.0007368 L13.5458947,17.432 C13.9688421,17.3118947 14.3718947,17.1446316 14.7476842,16.9346316 L16.0430526,17.8578947 L17.8578947,16.0437895 L16.9346316,14.7491579 C17.1446316,14.3726316 17.3118947,13.9695789 17.4327368,13.5466316 L19,13.2835789 Z" id="Fill-1-Copy-15"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/assets/images/target.svg b/public/src/assets/images/target.svg new file mode 100644 index 0000000..d7199ec --- /dev/null +++ b/public/src/assets/images/target.svg @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> + <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch --> + <title>icon/target</title> + <desc>Created with Sketch.</desc> + <defs></defs> + <g id="Symbols" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd"> + <g id="icon/target" fill="#979797"> + <path d="M7,8 L18,8 L18,9 L7,9 L7,8 Z M7,12 L18,12 L18,13 L7,13 L7,12 Z M7,16 L18,16 L18,17 L7,17 L7,16 Z" id="Combined-Shape"></path> + </g> + </g> +</svg>
\ No newline at end of file diff --git a/public/src/environments/environment.prod.ts b/public/src/environments/environment.prod.ts new file mode 100644 index 0000000..bc3ac4b --- /dev/null +++ b/public/src/environments/environment.prod.ts @@ -0,0 +1,5 @@ +export const environment = { + production: true, + apiBaseUrl: 'dcae/dcaeProxy', + imagePath: 'dcae_fe/assets/images' +}; diff --git a/public/src/environments/environment.ts b/public/src/environments/environment.ts new file mode 100644 index 0000000..7a68ddd --- /dev/null +++ b/public/src/environments/environment.ts @@ -0,0 +1,10 @@ +// The file contents for the current environment will overwrite these during build. +// The build system defaults to the dev environment which uses `environment.ts`, but if you do +// `ng build --env=prod` then `environment.prod.ts` will be used instead. +// The list of which env maps to which file can be found in `.angular-cli.json`. + +export const environment = { + production: false, + apiBaseUrl: 'http://localhost:8446', + imagePath: './assets/images' +}; diff --git a/public/src/favicon.ico b/public/src/favicon.ico Binary files differnew file mode 100644 index 0000000..8081c7c --- /dev/null +++ b/public/src/favicon.ico diff --git a/public/src/index.html b/public/src/index.html new file mode 100644 index 0000000..4821f7e --- /dev/null +++ b/public/src/index.html @@ -0,0 +1,17 @@ +<!doctype html> +<html lang="en"> + +<head> + <meta charset="utf-8"> + <title>DcaeFe</title> + <base href="/"> + + <meta name="viewport" content="width=device-width, initial-scale=1"> + <link rel="icon" type="image/x-icon" href="favicon.ico"> +</head> + +<body> + <app-root></app-root> +</body> + +</html> diff --git a/public/src/jestGlobalMocks.ts b/public/src/jestGlobalMocks.ts new file mode 100644 index 0000000..e93276f --- /dev/null +++ b/public/src/jestGlobalMocks.ts @@ -0,0 +1,33 @@ +global['CSS'] = null; + +const mock = () => { + let storage = {}; + return { + getItem: key => (key in storage ? storage[key] : null), + setItem: (key, value) => (storage[key] = value || ''), + removeItem: key => delete storage[key], + clear: () => (storage = {}) + }; +}; + +Object.defineProperty(window, 'localStorage', { value: mock() }); +Object.defineProperty(window, 'sessionStorage', { value: mock() }); +Object.defineProperty(document, 'doctype', { + value: '<!DOCTYPE html>' +}); +Object.defineProperty(window, 'getComputedStyle', { + value: () => { + return { + display: 'none', + appearance: ['-webkit-appearance'] + }; + } +}); +Object.defineProperty(document.body.style, 'transform', { + value: () => { + return { + enumerable: true, + configurable: true + }; + } +}); diff --git a/public/src/main.ts b/public/src/main.ts new file mode 100644 index 0000000..91ec6da --- /dev/null +++ b/public/src/main.ts @@ -0,0 +1,12 @@ +import { enableProdMode } from '@angular/core'; +import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; + +import { AppModule } from './app/app.module'; +import { environment } from './environments/environment'; + +if (environment.production) { + enableProdMode(); +} + +platformBrowserDynamic().bootstrapModule(AppModule) + .catch(err => console.log(err)); diff --git a/public/src/polyfills.ts b/public/src/polyfills.ts new file mode 100644 index 0000000..d68672f --- /dev/null +++ b/public/src/polyfills.ts @@ -0,0 +1,66 @@ +/** + * This file includes polyfills needed by Angular and is loaded before the app. + * You can add your own extra polyfills to this file. + * + * This file is divided into 2 sections: + * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. + * 2. Application imports. Files imported after ZoneJS that should be loaded before your main + * file. + * + * The current setup is for so-called "evergreen" browsers; the last versions of browsers that + * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), + * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. + * + * Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html + */ + +/*************************************************************************************************** + * BROWSER POLYFILLS + */ + +/** IE9, IE10 and IE11 requires all of the following polyfills. **/ +// import 'core-js/es6/symbol'; +// import 'core-js/es6/object'; +// import 'core-js/es6/function'; +// import 'core-js/es6/parse-int'; +// import 'core-js/es6/parse-float'; +// import 'core-js/es6/number'; +// import 'core-js/es6/math'; +// import 'core-js/es6/string'; +// import 'core-js/es6/date'; +// import 'core-js/es6/array'; +// import 'core-js/es6/regexp'; +// import 'core-js/es6/map'; +// import 'core-js/es6/weak-map'; +// import 'core-js/es6/set'; + +/** IE10 and IE11 requires the following for NgClass support on SVG elements */ +// import 'classlist.js'; // Run `npm install --save classlist.js`. + +/** IE10 and IE11 requires the following for the Reflect API. */ +// import 'core-js/es6/reflect'; + + +/** Evergreen browsers require these. **/ +// Used for reflect-metadata in JIT. If you use AOT (and only Angular decorators), you can remove. +import 'core-js/es7/reflect'; + + +/** + * Required to support Web Animations `@angular/platform-browser/animations`. + * Needed for: All but Chrome, Firefox and Opera. http://caniuse.com/#feat=web-animation + **/ +// import 'web-animations-js'; // Run `npm install --save web-animations-js`. + + + +/*************************************************************************************************** + * Zone JS is required by default for Angular itself. + */ +import 'zone.js/dist/zone'; // Included with Angular CLI. + + + +/*************************************************************************************************** + * APPLICATION IMPORTS + */ diff --git a/public/src/setupJest.ts b/public/src/setupJest.ts new file mode 100644 index 0000000..1d3bd02 --- /dev/null +++ b/public/src/setupJest.ts @@ -0,0 +1,2 @@ +import 'jest-preset-angular'; +import './jestGlobalMocks'; diff --git a/public/src/stories/button.stories.ts b/public/src/stories/button.stories.ts new file mode 100644 index 0000000..80411e8 --- /dev/null +++ b/public/src/stories/button.stories.ts @@ -0,0 +1,33 @@ +import { storiesOf } from '@storybook/angular'; +import { action } from '@storybook/addon-actions'; +import { boolean, text } from '@storybook/addon-knobs/angular'; +import { MatButtonModule, MatIconModule } from '@angular/material'; + +storiesOf('Button', module) + .add('Basic', () => ({ + template: ` + <div style="margin:2em;"> + <button mat-raised-button color="primary" (click)="onClick($event)">primary</button> + <button mat-raised-button color="primary" [disabled]="disabled">disabled</button> + <button mat-raised-button class="btn-secondry"> {{ btnText }} </button> + </div> + `, + props: { + disabled: boolean('disabled', true), + btnText: text('btnText', 'secondry'), + onClick: action('click') + }, + moduleMetadata: { + imports: [MatButtonModule] + } + })) + .add('Round', () => ({ + template: ` + <button mat-mini-fab style="background-color:#009FDB"> + <mat-icon class="material-icons">add</mat-icon> + </button> + `, + moduleMetadata: { + imports: [MatButtonModule, MatIconModule] + } + })); diff --git a/public/src/stories/diagram.stories.ts b/public/src/stories/diagram.stories.ts new file mode 100644 index 0000000..00dd922 --- /dev/null +++ b/public/src/stories/diagram.stories.ts @@ -0,0 +1,22 @@ +import { storiesOf } from '@storybook/angular'; +import { NO_ERRORS_SCHEMA } from '@angular/core'; +import { DiagramComponent } from '../app/diagram/diagram.component'; +import { array } from '@storybook/addon-knobs/angular'; + +storiesOf('Diagram', module).add('simple', () => ({ + component: DiagramComponent, + moduleMetadata: { + imports: [], + schemas: [NO_ERRORS_SCHEMA], + declarations: [], + providers: [] + }, + props: { + list: array('list', [ + { source: 'node1dsvsdsvd', target: 'node2' }, + { source: 'node3', target: 'node4' }, + { source: 'node5', target: 'nodedsvsds6' }, + { source: 'node7', target: 'node8' } + ]) + } +})); diff --git a/public/src/stories/index.ts b/public/src/stories/index.ts new file mode 100644 index 0000000..5c1c18f --- /dev/null +++ b/public/src/stories/index.ts @@ -0,0 +1 @@ +declare module '*.md'; diff --git a/public/src/stories/loader.stories.ts b/public/src/stories/loader.stories.ts new file mode 100644 index 0000000..38d6f90 --- /dev/null +++ b/public/src/stories/loader.stories.ts @@ -0,0 +1,6 @@ +import { storiesOf } from '@storybook/angular'; +import { LoaderComponent } from '../app/loader/loader.component'; + +storiesOf('Loader', module).add('simple loader', () => ({ + component: LoaderComponent +})); diff --git a/public/src/stories/sdc-dropdown.stories.ts b/public/src/stories/sdc-dropdown.stories.ts new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/public/src/stories/sdc-dropdown.stories.ts diff --git a/public/src/stories/select-autocomplete.stories.ts b/public/src/stories/select-autocomplete.stories.ts new file mode 100644 index 0000000..104f0b1 --- /dev/null +++ b/public/src/stories/select-autocomplete.stories.ts @@ -0,0 +1,25 @@ +import { storiesOf } from '@storybook/angular'; +import { action } from '@storybook/addon-actions'; +import { boolean, text, array } from '@storybook/addon-knobs/angular'; +import { NgSelectModule } from '@ng-select/ng-select'; + +storiesOf('select-autocomplete', module).add('select', () => ({ + template: ` + <ng-select [items]="cities" + bindLabel="name" + bindValue="id" + placeholder="Select city" + [(ngModel)]="selectedCityId"> + </ng-select> + `, + props: { + cities: array('cities', [ + { id: 1, name: 'Vilnius' }, + { id: 2, name: 'Kaunas' }, + { id: 3, name: 'PabradÄ—' } + ]) + }, + moduleMetadata: { + imports: [NgSelectModule] + } +})); diff --git a/public/src/stories/treeSelect.stories.ts b/public/src/stories/treeSelect.stories.ts new file mode 100644 index 0000000..9d34c6b --- /dev/null +++ b/public/src/stories/treeSelect.stories.ts @@ -0,0 +1,40 @@ +import { storiesOf } from '@storybook/angular'; +import { TreeModule } from 'angular-tree-component'; +import { MatButtonModule, MatIconModule } from '@angular/material'; +import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; +import { TargetComponent } from '../app/rule-engine/target/target.component'; + +storiesOf('Target', module).add('target component', () => ({ + component: TargetComponent, + moduleMetadata: { + imports: [ + TreeModule, + MatButtonModule, + MatIconModule, + BrowserAnimationsModule + ] + }, + props: { + nodes: [ + { + name: 'commonEventHeader', + children: [ + { + name: 'domain', + children: null, + isRequired: true, + requiredChildren: null, + id: 'event.commonEventHeader.domain' + }, + { + name: 'eventId', + children: null, + isRequired: true, + requiredChildren: null, + id: 'event.commonEventHeader.eventId' + } + ] + } + ] + } +})); diff --git a/public/src/styles.css b/public/src/styles.css new file mode 100644 index 0000000..4b1d433 --- /dev/null +++ b/public/src/styles.css @@ -0,0 +1,76 @@ +/* You can add global styles to this file, and also import other style files */ +@import '@angular/material/prebuilt-themes/indigo-pink.css'; + +@font-face { + font-family: 'Open Sans'; + src: url('./assets/fonts/OpenSans-SemiBold.ttf') format('ttf'); +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; + /* font-family: 'Open Sans', sans-serif; + font-size: 13px; */ +} + +html, +body, +app-root, +app-home { + height: 100%; + font-family: 'Open Sans', sans-serif; + font-size: 13px; + /* height: 100vh; */ +} + +div, +span { + font-weight: 400; +} + +div .field-label, +span .field-label, +div .field-label > span { + font-weight: 600; +} + +/* form input validation border */ +textarea.ng-touched.ng-invalid:not(form),input.ng-touched.ng-invalid:not(form) { + border: 1px solid #cf2a2a !important; +} + +/** reset button **/ +.mat-fab.mat-primary, +.mat-mini-fab.mat-primary, +.mat-raised-button.mat-primary { + background-color: #009fdb; +} + +.mat-fab, +.mat-mini-fab, +.mat-raised-button { + box-shadow: none !important; +} + +.btn-secondry { + border: 1px solid #009fdb !important; + color: #009fdb !important; + background: #ffffff !important; + box-shadow: none !important; +} + +/* Astrix required */ +.required::before { + content: '*'; + color: red; + margin-right: 3px; +} + +/** overide dialog **/ +.ui-dialog { + border-top: solid 6px #cf2a2a; +} +.ui-dialog-titlebar { + background: white; +} diff --git a/public/src/test.ts b/public/src/test.ts new file mode 100644 index 0000000..1631789 --- /dev/null +++ b/public/src/test.ts @@ -0,0 +1,20 @@ +// This file is required by karma.conf.js and loads recursively all the .spec and framework files + +import 'zone.js/dist/zone-testing'; +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +declare const require: any; + +// First, initialize the Angular testing environment. +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); +// Then we find all the tests. +const context = require.context('./', true, /\.spec\.ts$/); +// And load the modules. +context.keys().map(context); diff --git a/public/src/tsconfig.app.json b/public/src/tsconfig.app.json new file mode 100644 index 0000000..5ed576b --- /dev/null +++ b/public/src/tsconfig.app.json @@ -0,0 +1,10 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/app", + "baseUrl": "./", + "module": "es2015", + "types": ["node"] + }, + "exclude": ["test.ts", "**/*.spec.ts"] +} diff --git a/public/src/tsconfig.spec.json b/public/src/tsconfig.spec.json new file mode 100644 index 0000000..63d89ff --- /dev/null +++ b/public/src/tsconfig.spec.json @@ -0,0 +1,20 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "../out-tsc/spec", + "baseUrl": "./", + "module": "commonjs", + "target": "es5", + "types": [ + "jasmine", + "node" + ] + }, + "files": [ + "test.ts" + ], + "include": [ + "**/*.spec.ts", + "**/*.d.ts" + ] +} diff --git a/public/src/typings.d.ts b/public/src/typings.d.ts new file mode 100644 index 0000000..ef5c7bd --- /dev/null +++ b/public/src/typings.d.ts @@ -0,0 +1,5 @@ +/* SystemJS module definition */ +declare var module: NodeModule; +interface NodeModule { + id: string; +} diff --git a/public/src/wallabyTest.ts b/public/src/wallabyTest.ts new file mode 100644 index 0000000..a0a2899 --- /dev/null +++ b/public/src/wallabyTest.ts @@ -0,0 +1,14 @@ +import './polyfills'; + +import 'zone.js/dist/zone-testing'; + +import { getTestBed } from '@angular/core/testing'; +import { + BrowserDynamicTestingModule, + platformBrowserDynamicTesting +} from '@angular/platform-browser-dynamic/testing'; + +getTestBed().initTestEnvironment( + BrowserDynamicTestingModule, + platformBrowserDynamicTesting() +); diff --git a/public/test-report.xml b/public/test-report.xml new file mode 100644 index 0000000..2b8cdde --- /dev/null +++ b/public/test-report.xml @@ -0,0 +1,140 @@ +<?xml version="1.0" encoding="UTF-8"?> +<testExecutions version="1"> + <file path="C:\Users\ym903w\project\dcae-fe\public\src\app\general\general.component.spec.ts"> + <testCase name="GeneralComponent should sort vfcmt by A to Z" duration="6"/> + <testCase name="GeneralComponent should group vfcmt by name" duration="1"/> + <testCase name="GeneralComponent should version array be sorted in group" duration="1"/> + </file> + <file path="C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\target\target.component.spec.ts"> + <testCase name="TargetComponent should be created" duration="702"> + <failure message="Error: The animation trigger "toggleDropdown" has failed to build due to the following errors:"><![CDATA[Error: The animation trigger "toggleDropdown" has failed to build due to the following errors: + - The provided animation property "offset" is not a supported CSS property for animations + - The provided animation property "offset" is not a supported CSS property for animations + at InjectableAnimationEngine.Object.<anonymous>.AnimationEngine.registerTrigger (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\animations\esm5\browser\src\render\animation_engine_next.js:50:14) + at C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\platform-browser\bundles\platform-browser-animations.umd.js:322:33 + at Array.forEach (<anonymous>) + at AnimationRendererFactory.Object.<anonymous>.AnimationRendererFactory.createRenderer (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\platform-browser\bundles\platform-browser-animations.umd.js:321:27) + at DebugRendererFactory2.Object.<anonymous>.DebugRendererFactory2.createRenderer (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\services.js:898:42) + at createComponentView (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:13672:56) + at callWithDebugContext (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\services.js:864:6) + at Object.debugCreateComponentView [as createComponentView] (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:14409:12) + at createViewNodes (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\view.js:296:36) + at createRootView (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:13655:5) + at callWithDebugContext (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\services.js:864:6) + at Object.debugCreateRootView [as createRootView] (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:14363:12) + at ComponentFactory_.Object.<anonymous>.ComponentFactory_.create (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\refs.js:121:44) + at initComponent (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\testing\src\test_bed.js:566:24) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:388:26) + at ProxyZoneSpec.Object.<anonymous>.ProxyZoneSpec.onInvoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\proxy.js:79:39) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:387:32) + at Object.onInvoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\zone\ng_zone.js:594:10) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:387:32) + at Zone.Object.<anonymous>.Zone.run (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:138:43) + at NgZone.Object.<anonymous>.NgZone.run (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:4589:69) + at TestBed.Object.<anonymous>.TestBed.createComponent (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\testing\src\test_bed.js:569:6) + at Function.Object.<anonymous>.TestBed.createComponent (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core-testing.umd.js:866:29) + at C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\target\target.component.spec.ts:35:23 + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:388:26) + at ProxyZoneSpec.Object.<anonymous>.ProxyZoneSpec.onInvoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\proxy.js:79:39) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:387:32) + at Zone.Object.<anonymous>.Zone.run (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:138:43) + at Object.testBody.length (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-zone-patch\index.js:50:27) + at Object.asyncFn (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\jasmine_async.js:51:37) + at resolve (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:52:12) + at new Promise (<anonymous>) + at mapper (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:39:19) + at promise.then (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:73:82) + at <anonymous>]]></failure> + <failure message="Error: expect(received).toBeTruthy()"><![CDATA[Error: expect(received).toBeTruthy() + +Expected value to be truthy, instead received + undefined + at C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\target\target.component.spec.ts:42:23 + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:388:26) + at ProxyZoneSpec.Object.<anonymous>.ProxyZoneSpec.onInvoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\proxy.js:79:39) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:387:32) + at Zone.Object.<anonymous>.Zone.run (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:138:43) + at Object.testBody.length (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-zone-patch\index.js:50:27) + at Object.asyncFn (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\jasmine_async.js:82:37) + at resolve (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:52:12) + at new Promise (<anonymous>) + at mapper (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:39:19) + at promise.then (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:73:82) + at <anonymous>]]></failure> + </testCase> + <testCase name="TargetComponent should open target tree when click on button" duration="132"> + <failure message="Error: The animation trigger "toggleDropdown" has failed to build due to the following errors:"><![CDATA[Error: The animation trigger "toggleDropdown" has failed to build due to the following errors: + - The provided animation property "offset" is not a supported CSS property for animations + - The provided animation property "offset" is not a supported CSS property for animations + at InjectableAnimationEngine.Object.<anonymous>.AnimationEngine.registerTrigger (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\animations\esm5\browser\src\render\animation_engine_next.js:50:14) + at C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\platform-browser\bundles\platform-browser-animations.umd.js:322:33 + at Array.forEach (<anonymous>) + at AnimationRendererFactory.Object.<anonymous>.AnimationRendererFactory.createRenderer (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\platform-browser\bundles\platform-browser-animations.umd.js:321:27) + at DebugRendererFactory2.Object.<anonymous>.DebugRendererFactory2.createRenderer (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\services.js:898:42) + at createComponentView (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:13672:56) + at callWithDebugContext (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\services.js:864:6) + at Object.debugCreateComponentView [as createComponentView] (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:14409:12) + at createViewNodes (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\view.js:296:36) + at createRootView (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:13655:5) + at callWithDebugContext (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\services.js:864:6) + at Object.debugCreateRootView [as createRootView] (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:14363:12) + at ComponentFactory_.Object.<anonymous>.ComponentFactory_.create (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\view\refs.js:121:44) + at initComponent (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\testing\src\test_bed.js:566:24) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:388:26) + at ProxyZoneSpec.Object.<anonymous>.ProxyZoneSpec.onInvoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\proxy.js:79:39) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:387:32) + at Object.onInvoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\src\zone\ng_zone.js:594:10) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:387:32) + at Zone.Object.<anonymous>.Zone.run (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:138:43) + at NgZone.Object.<anonymous>.NgZone.run (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core.umd.js:4589:69) + at TestBed.Object.<anonymous>.TestBed.createComponent (C:\Users\ym903w\project\dcae-fe\public\node_modules\packages\core\esm5\testing\src\test_bed.js:569:6) + at Function.Object.<anonymous>.TestBed.createComponent (C:\Users\ym903w\project\dcae-fe\public\node_modules\@angular\core\bundles\core-testing.umd.js:866:29) + at C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\target\target.component.spec.ts:35:23 + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:388:26) + at ProxyZoneSpec.Object.<anonymous>.ProxyZoneSpec.onInvoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\proxy.js:79:39) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:387:32) + at Zone.Object.<anonymous>.Zone.run (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:138:43) + at Object.testBody.length (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-zone-patch\index.js:50:27) + at Object.asyncFn (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\jasmine_async.js:51:37) + at resolve (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:52:12) + at new Promise (<anonymous>) + at mapper (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:39:19) + at promise.then (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:73:82) + at <anonymous>]]></failure> + <failure message="TypeError: Cannot read property 'debugElement' of undefined"><![CDATA[TypeError: Cannot read property 'debugElement' of undefined + at C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\target\target.component.spec.ts:46:39 + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:388:26) + at ProxyZoneSpec.Object.<anonymous>.ProxyZoneSpec.onInvoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\proxy.js:79:39) + at ZoneDelegate.Object.<anonymous>.ZoneDelegate.invoke (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:387:32) + at Zone.Object.<anonymous>.Zone.run (C:\Users\ym903w\project\dcae-fe\public\node_modules\zone.js\dist\zone.js:138:43) + at Object.testBody.length (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-zone-patch\index.js:50:27) + at Object.asyncFn (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\jasmine_async.js:82:37) + at resolve (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:52:12) + at new Promise (<anonymous>) + at mapper (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:39:19) + at promise.then (C:\Users\ym903w\project\dcae-fe\public\node_modules\jest-jasmine2\build\queue_runner.js:73:82) + at <anonymous>]]></failure> + </testCase> + </file> + <file path="C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\api\rule-engine-api.service.spec.ts"> + <testCase name="RuleEngineApiService should be created" duration="57"/> + </file> + <file path="C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\condition\condition.component.spec.ts"> + <testCase name="Condition Component should be created" duration="225"/> + </file> + <file path="C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\target\target.validation.spec.ts"> + <testCase name="treeTest should return node branch requireds" duration="3"/> + <testCase name="treeTest should return empty array - success state" duration="1"/> + <testCase name="treeTest should return validation array - missing required filed" duration="0"/> + </file> + <file path="C:\Users\ym903w\project\dcae-fe\public\src\app\loader\loader.component.spec.ts"> + <testCase name="LoaderComponent should create" duration="94"/> + </file> + <file path="C:\Users\ym903w\project\dcae-fe\public\src\app\api\rest-api.service.spec.ts"> + <testCase name="RestApiService should be created" duration="19"/> + <testCase name="RestApiService should genrate deffrent uuid each time for request id" duration="1"/> + </file> + <file path="C:\Users\ym903w\project\dcae-fe\public\src\app\rule-engine\host\host.service.spec.ts"> + <testCase name="HostService should be created" duration="14"/> + </file> +</testExecutions>
\ No newline at end of file diff --git a/public/tsconfig.json b/public/tsconfig.json new file mode 100644 index 0000000..be76f06 --- /dev/null +++ b/public/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "outDir": "./dist/out-tsc", + "sourceMap": true, + "declaration": false, + "moduleResolution": "node", + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "target": "es5", + "typeRoots": ["node_modules/@types"], + "lib": ["es2017", "dom"] + }, + "exclude": ["wallabyTest.ts"] +} diff --git a/public/tslint.json b/public/tslint.json new file mode 100644 index 0000000..a2e30ef --- /dev/null +++ b/public/tslint.json @@ -0,0 +1,144 @@ +{ + "rulesDirectory": [ + "node_modules/codelyzer" + ], + "rules": { + "arrow-return-shorthand": true, + "callable-types": true, + "class-name": true, + "comment-format": [ + true, + "check-space" + ], + "curly": true, + "deprecation": { + "severity": "warn" + }, + "eofline": true, + "forin": true, + "import-blacklist": [ + true, + "rxjs", + "rxjs/Rx" + ], + "import-spacing": true, + "indent": [ + true, + "spaces" + ], + "interface-over-type-literal": true, + "label-position": true, + "max-line-length": [ + true, + 140 + ], + "member-access": false, + "member-ordering": [ + true, + { + "order": [ + "static-field", + "instance-field", + "static-method", + "instance-method" + ] + } + ], + "no-arg": true, + "no-bitwise": true, + "no-console": [ + true, + "debug", + "info", + "time", + "timeEnd", + "trace" + ], + "no-construct": true, + "no-debugger": true, + "no-duplicate-super": true, + "no-empty": false, + "no-empty-interface": true, + "no-eval": true, + "no-inferrable-types": [ + true, + "ignore-params" + ], + "no-misused-new": true, + "no-non-null-assertion": true, + "no-shadowed-variable": true, + "no-string-literal": false, + "no-string-throw": true, + "no-switch-case-fall-through": true, + "no-trailing-whitespace": true, + "no-unnecessary-initializer": true, + "no-unused-expression": true, + "no-use-before-declare": true, + "no-var-keyword": true, + "object-literal-sort-keys": false, + "one-line": [ + true, + "check-open-brace", + "check-catch", + "check-else", + "check-whitespace" + ], + "prefer-const": true, + "quotemark": [ + true, + "single" + ], + "radix": true, + "semicolon": [ + true, + "always" + ], + "triple-equals": [ + true, + "allow-null-check" + ], + "typedef-whitespace": [ + true, + { + "call-signature": "nospace", + "index-signature": "nospace", + "parameter": "nospace", + "property-declaration": "nospace", + "variable-declaration": "nospace" + } + ], + "typeof-compare": true, + "unified-signatures": true, + "variable-name": false, + "whitespace": [ + true, + "check-branch", + "check-decl", + "check-operator", + "check-separator", + "check-type" + ], + "directive-selector": [ + true, + "attribute", + "app", + "camelCase" + ], + "component-selector": [ + true, + "element", + "app", + "kebab-case" + ], + "no-output-on-prefix": true, + "use-input-property-decorator": true, + "use-output-property-decorator": true, + "use-host-property-decorator": true, + "no-input-rename": true, + "no-output-rename": true, + "use-life-cycle-interface": true, + "use-pipe-transform-interface": true, + "component-class-suffix": true, + "directive-class-suffix": true + } +} diff --git a/public/wallaby.jasmine.js b/public/wallaby.jasmine.js new file mode 100644 index 0000000..0140e87 --- /dev/null +++ b/public/wallaby.jasmine.js @@ -0,0 +1,96 @@ +var wallabyWebpack = require('wallaby-webpack'); +var path = require('path'); + +var compilerOptions = Object.assign( + require('./tsconfig.json').compilerOptions, + require('./src/tsconfig.spec.json').compilerOptions +); + +compilerOptions.module = 'CommonJs'; + +module.exports = function(wallaby) { + var webpackPostprocessor = wallabyWebpack({ + entryPatterns: ['src/wallabyTest.js', 'src/**/*spec.js'], + + module: { + rules: [ + { test: /\.css$/, loader: ['raw-loader', 'css-loader'] }, + { test: /\.html$/, loader: 'raw-loader' }, + { + test: /\.ts$/, + loader: '@ngtools/webpack', + include: /node_modules/, + query: { tsConfigPath: 'tsconfig.json' } + }, + { + test: /\.js$/, + loader: 'angular2-template-loader', + exclude: /node_modules/ + }, + { test: /\.json$/, loader: 'json-loader' }, + { test: /\.styl$/, loaders: ['raw-loader', 'stylus-loader'] }, + { test: /\.less$/, loaders: ['raw-loader', 'less-loader'] }, + { test: /\.scss$|\.sass$/, loaders: ['raw-loader', 'sass-loader'] }, + { test: /\.(jpg|png)$/, loader: 'url-loader?limit=128000' } + ] + }, + + resolve: { + extensions: ['.js', '.ts'], + modules: [ + path.join(wallaby.projectCacheDir, 'src/app'), + path.join(wallaby.projectCacheDir, 'src'), + 'node_modules' + ] + }, + node: { + fs: 'empty', + net: 'empty', + tls: 'empty', + dns: 'empty' + } + }); + + return { + files: [ + { + pattern: 'src/**/*.+(ts|css|less|scss|sass|styl|html|json|svg)', + load: false + }, + { pattern: 'src/**/*.d.ts', ignore: true }, + { pattern: 'src/**/*spec.ts', ignore: true } + ], + + tests: [ + { pattern: 'src/**/*spec.ts', load: false }, + { pattern: 'src/**/*e2e-spec.ts', ignore: true } + ], + + testFramework: 'jasmine', + + compilers: { + '**/*.ts': wallaby.compilers.typeScript(compilerOptions) + }, + + middleware: function(app, express) { + var path = require('path'); + app.use( + '/favicon.ico', + express.static(path.join(__dirname, 'src/favicon.ico')) + ); + app.use('/assets', express.static(path.join(__dirname, 'src/assets'))); + }, + + env: { + kind: 'electron' + }, + + postprocessor: webpackPostprocessor, + + setup: function() { + window.__moduleBundler.loadTests(); + }, + + debug: true + }; +}; diff --git a/public/wallaby.js b/public/wallaby.js new file mode 100644 index 0000000..4e5f2d3 --- /dev/null +++ b/public/wallaby.js @@ -0,0 +1,123 @@ +var wallabyWebpack = require('wallaby-webpack'); +var path = require('path'); + +var compilerOptions = Object.assign( + require('./tsconfig.json').compilerOptions, + require('./src/tsconfig.spec.json').compilerOptions +); + +compilerOptions.module = 'CommonJs'; + +module.exports = function(wallaby) { + var webpackPostprocessor = wallabyWebpack({ + entryPatterns: ['src/wallabyTest.js', 'src/**/*spec.js'], + + module: { + rules: [ + { test: /\.css$/, loader: ['raw-loader', 'css-loader'] }, + { test: /\.html$/, loader: 'raw-loader' }, + { + test: /\.ts$/, + loader: '@ngtools/webpack', + include: /node_modules/, + query: { tsConfigPath: 'tsconfig.json' } + }, + { + test: /\.js$/, + loader: 'angular2-template-loader', + exclude: /node_modules/ + }, + { test: /\.json$/, loader: 'json-loader' }, + { test: /\.styl$/, loaders: ['raw-loader', 'stylus-loader'] }, + { test: /\.less$/, loaders: ['raw-loader', 'less-loader'] }, + { test: /\.scss$|\.sass$/, loaders: ['raw-loader', 'sass-loader'] }, + { test: /\.(jpg|png)$/, loader: 'url-loader?limit=128000' } + ] + }, + + resolve: { + extensions: ['.js', '.ts'], + modules: [ + path.join(wallaby.projectCacheDir, 'src/app'), + path.join(wallaby.projectCacheDir, 'src'), + 'node_modules' + ] + }, + node: { + fs: 'empty', + net: 'empty', + tls: 'empty', + dns: 'empty' + } + }); + + return { + files: [ + 'src/setupJest.ts', + 'src/**/*.ts', + '!src/**/*.spec.ts', + '!src/**/*.d.ts', + 'src/**/*.json' + ], + + tests: ['src/**/*.spec.ts'], + + testFramework: 'jest', + + compilers: { + '**/*.ts': wallaby.compilers.typeScript(compilerOptions) + }, + + env: { + type: 'node', + runner: 'node', + kind: 'chrome' + }, + + setup: function(wallaby) { + //Use the configured jest file for testing + const jestConfig = { + mapCoverage: true, + globals: { + __TS_CONFIG__: { + target: 'es6', + module: 'commonjs', + moduleResolution: 'node' + }, + 'ts-jest': { + tsConfigFile: 'src/tsconfig.spec.json' + }, + __TRANSFORM_HTML__: true + }, + testRegex: '(/__tests__/.*|\\.(test|spec))\\.(ts|js)$', + setupTestFrameworkScriptFile: '<rootDir>/src/setupJest.ts', + transform: { + '^.+\\.(ts|html)$': + '<rootDir>/node_modules/jest-preset-angular/preprocessor.js' + }, + transformIgnorePatterns: ['node_modules/(?!@ngrx)'], + collectCoverageFrom: [ + 'src/app/module/**/*.{ts}', + '!src/app/*.{ts}', + '!src/app/**/*.{js}', + '!src/app/environment/*.{ts}', + '!src/app/language/*.{ts}', + '!src/app/**/*.module.{ts}', + '!src/app/**/*.interface.{ts}', + '!src/app/**/*.state.{ts}', + '!src/app/**/*.entity.{ts}' + ], + moduleFileExtensions: ['ts', 'tsx', 'js', 'json'], + testPathIgnorePatterns: ['/node_modules/', '/dist/', 'src/app/*.{js}'], + testResultsProcessor: 'jest-sonar-reporter', + moduleNameMapper: { + 'app/(.*)': '<rootDir>/src/app/$1', + '@common/(.*)': '<rootDir>/src/app/common/$1' + } + }; + wallaby.testFramework.configure(jestConfig); + }, + + debug: true + }; +}; diff --git a/public/yarn-error.log b/public/yarn-error.log new file mode 100644 index 0000000..2cf1df9 --- /dev/null +++ b/public/yarn-error.log @@ -0,0 +1,11569 @@ +Arguments: + C:\Program Files\nodejs\node.exe C:\Program Files (x86)\Yarn\bin\yarn.js add sdc-ui --save + +PATH: + C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\cygdrive\c\Users\ym903w\.local\bin;C:\OCaml\bin;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\RSA SecurID Token Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\ProgramData\chocolatey\bin;C:\Program Files\Java\jdk1.8.0_131\bin;C:\Program Files\PuTTY;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\tools\go\bin;C:\Go\bin;C:\HashiCorp\Vagrant\bin;C:\Program Files\Git\cmd;C:\ProgramData\nvm;C:\Program Files\nodejs;C:\Program Files\nodejs;C:\Android\android-sdk\tools;C:\Android\android-sdk\platform-tools;C:\Program Files (x86)\GtkSharp\2.12\bin;C:\Program Files\dotnet;C:\ProgramData\chocolatey\lib\Elixir\bin;C:\Program Files\Rust stable GNU 1.23\bin;C:\Program Files (x86)\Yarn\bin;C:\Program Files\PostgreSQL\9.6\data\bin;C:\Users\ym903w\.cargo\bin;C:\Program Files (x86)\Elm Platform\0.18\bin;C:\Python35\Scripts;C:\Python35;C:\Program Files\Oracle\VirtualBox;C:\Program Files\MongoDB\Server\3.2\bin;C:\Program Files\Docker Toolbox;C:\Users\ym903w\.babun;C:\Program Files\Microsoft VS Code Insiders\bin;C:\Program Files\kdiff3;C:\Users\ym903w\AppData\Roaming\Dashlane\5.2.0.12122\bin\Firefox_Extension\{442718d9-475e-452a-b3e1-fb1ee16b8e9f}\components;C:\Users\ym903w\AppData\Roaming\Dashlane\5.2.0.12122\ucrt;C:\Users\ym903w\AppData\Roaming\npm;C:\Users\ym903w\AppData\Local\Programs\Fiddler;C:\Users\ym903w\.rustup\toolchains\stable-x86_64-pc-windows-msvc\bin;C:\Users\ym903w\AppData\Local\Yarn\bin;C:\Users\ym903w\AppData\Roaming\Dashlane\5.9.0.17744\bin\Firefox_Extension\{442718d9-475e-452a-b3e1-fb1ee16b8e9f}\components;C:\Users\ym903w\AppData\Roaming\Dashlane\5.9.0.17744\ucrt + +Yarn version: + 1.3.2 + +Node version: + 8.7.0 + +Platform: + win32 x64 + +npm manifest: + { + "name": "dcae-fe", + "version": "0.0.0", + "license": "MIT", + "scripts": { + "ng": "ng", + "start": "ng serve", + "build": "ng build --prod --deploy-url=/dcae", + "test": "ng test", + "test:jest": "jest --watch", + "test:ci": "jest --runInBand", + "test:coverage": "jest --coverage", + "lint": "ng lint", + "e2e": "ng e2e", + "cy:run": "cypress run", + "cy:open": "cypress open", + "cy:report": "cypress run --reporter mochawesome", + "war-local": "npm run build && cd dist && jar -cvf rule_engine.war *", + "war-remote": "mvn clean install", + "storybook": "start-storybook -p 9001 -c .storybook", + "build-storybook": "build-storybook" + }, + "jest": { + "preset": "jest-preset-angular", + "roots": ["<rootDir>/src"], + "setupTestFrameworkScriptFile": "<rootDir>/src/setupJest.ts", + "globals": { + "ts-jest": { + "tsConfigFile": "src/tsconfig.spec.json" + }, + "__TRANSFORM_HTML__": true + } + }, + "private": true, + "dependencies": { + "@angular/animations": "^5.1.0", + "@angular/cdk": "^5.1.1", + "@angular/common": "^5.1.0", + "@angular/compiler": "^5.1.0", + "@angular/core": "^5.1.0", + "@angular/forms": "^5.1.0", + "@angular/http": "^5.1.0", + "@angular/material": "5.1.1", + "@angular/platform-browser": "^5.1.0", + "@angular/platform-browser-dynamic": "^5.1.0", + "@angular/router": "^5.1.0", + "@bahmutov/add-typescript-to-cypress": "^2.0.0", + "@ng-select/ng-select": "^0.26.2", + "angular-tree-component": "^7.0.1", + "core-js": "^2.4.1", + "feather-icons": "^4.5.0", + "font-awesome": "^4.7.0", + "material-design-icons": "^3.0.1", + "mobx": "^3.4.1", + "mobx-angular": "^2.0.1", + "ngx-toastr": "^8.2.1", + "papaparse": "^4.3.6", + "pretty-checkbox": "3.0.3", + "primeng": "^5.0.2", + "ramda": "^0.25.0", + "rxjs": "^5.5.6", + "uuid": "^3.2.1", + "zone.js": "^0.8.19" + }, + "devDependencies": { + "@angular/cli": "^1.7.3", + "@angular/compiler-cli": "^5.1.0", + "@angular/language-service": "^5.1.0", + "@storybook/addon-actions": "3.4.0-alpha.9", + "@storybook/addon-knobs": "3.4.0-alpha.9", + "@storybook/addon-links": "3.4.0-alpha.9", + "@storybook/addon-notes": "3.4.0-alpha.9", + "@storybook/addon-options": "3.4.0-alpha.9", + "@storybook/addons": "3.4.0-alpha.9", + "@storybook/angular": "^3.4.0-alpha.9", + "@types/jasmine": "~2.8.3", + "@types/jasminewd2": "~2.0.2", + "@types/jest": "^22.2.0", + "@types/node": "^9.4.6", + "angular2-template-loader": "^0.6.2", + "babel-core": "^6.26.0", + "codelyzer": "^4.0.1", + "cypress": "1.4.2", + "electron": "^1.8.3", + "jasmine-core": "~2.8.0", + "jasmine-spec-reporter": "~4.2.1", + "jest": "^22.4.2", + "jest-preset-angular": "^5.2.1", + "jest-sonar-reporter": "^1.3.0", + "karma": "~2.0.0", + "karma-chrome-launcher": "~2.2.0", + "karma-cli": "~1.0.1", + "karma-coverage-istanbul-reporter": "^1.2.1", + "karma-jasmine": "~1.1.0", + "karma-jasmine-html-reporter": "^0.2.2", + "mocha": "^5.0.0", + "mocha-rp-reporter": "^1.0.12", + "mochawesome": "^3.0.2", + "protractor": "~5.1.2", + "ts-node": "~3.2.0", + "tslint": "~5.9.1", + "typescript": "~2.5.3", + "wallaby-webpack": "^3.9.5" + } + } + +yarn manifest: + No manifest + +Lockfile: + # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. + # yarn lockfile v1 + + + "@angular-devkit/build-optimizer@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@angular-devkit/build-optimizer/-/build-optimizer-0.3.2.tgz#77d4d1e4fcd09575f0200e2d6d21c1a3f995096f" + dependencies: + loader-utils "^1.1.0" + source-map "^0.5.6" + typescript "~2.6.2" + webpack-sources "^1.0.1" + + "@angular-devkit/core@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-0.3.2.tgz#b6fd6aa2e4f4ac3c39478198ba91a53d4c0f88d5" + dependencies: + ajv "~5.5.1" + chokidar "^1.7.0" + rxjs "^5.5.6" + source-map "^0.5.6" + + "@angular-devkit/schematics@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-0.3.2.tgz#09a2268fad61f4f956f42db87913b8748c512a78" + dependencies: + "@ngtools/json-schema" "^1.1.0" + rxjs "^5.5.6" + + "@angular/animations@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-5.2.0.tgz#a3ce02c01b074f0de7c2c23c1f08b4a00f0bec5f" + dependencies: + tslib "^1.7.1" + + "@angular/cdk@^5.1.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@angular/cdk/-/cdk-5.1.1.tgz#a278b44ec02145a4691aa466dde06a1ae8c0fe88" + dependencies: + tslib "^1.7.1" + + "@angular/cli@^1.7.3": + version "1.7.3" + resolved "https://registry.yarnpkg.com/@angular/cli/-/cli-1.7.3.tgz#ac917b69240bb1b340421e9f985135890e0d53b4" + dependencies: + "@angular-devkit/build-optimizer" "0.3.2" + "@angular-devkit/core" "0.3.2" + "@angular-devkit/schematics" "0.3.2" + "@ngtools/json-schema" "1.2.0" + "@ngtools/webpack" "1.10.2" + "@schematics/angular" "0.3.2" + "@schematics/package-update" "0.3.2" + ajv "^6.1.1" + autoprefixer "^7.2.3" + cache-loader "^1.2.0" + chalk "~2.2.0" + circular-dependency-plugin "^4.2.1" + clean-css "^4.1.11" + common-tags "^1.3.1" + copy-webpack-plugin "~4.4.1" + core-object "^3.1.0" + denodeify "^1.2.1" + ember-cli-string-utils "^1.0.0" + extract-text-webpack-plugin "^3.0.2" + file-loader "^1.1.5" + fs-extra "^4.0.0" + glob "^7.0.3" + html-webpack-plugin "^2.29.0" + istanbul-instrumenter-loader "^3.0.0" + karma-source-map-support "^1.2.0" + less "^2.7.2" + less-loader "^4.0.5" + license-webpack-plugin "^1.0.0" + loader-utils "1.1.0" + lodash "^4.11.1" + memory-fs "^0.4.1" + minimatch "^3.0.4" + node-modules-path "^1.0.0" + nopt "^4.0.1" + opn "~5.1.0" + portfinder "~1.0.12" + postcss "^6.0.16" + postcss-import "^11.0.0" + postcss-loader "^2.0.10" + postcss-url "^7.1.2" + raw-loader "^0.5.1" + resolve "^1.1.7" + rxjs "^5.5.6" + sass-loader "^6.0.6" + semver "^5.1.0" + silent-error "^1.0.0" + source-map-support "^0.4.1" + style-loader "^0.19.1" + stylus "^0.54.5" + stylus-loader "^3.0.1" + uglifyjs-webpack-plugin "^1.1.8" + url-loader "^0.6.2" + webpack "~3.11.0" + webpack-dev-middleware "~1.12.0" + webpack-dev-server "~2.11.0" + webpack-merge "^4.1.0" + webpack-sources "^1.0.0" + webpack-subresource-integrity "^1.0.1" + optionalDependencies: + node-sass "^4.7.2" + + "@angular/common@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/common/-/common-5.2.0.tgz#d184fb90763da1d1bab1f6c4f41dd80c79e47506" + dependencies: + tslib "^1.7.1" + + "@angular/compiler-cli@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-5.2.0.tgz#336b6d0127c69f25637cbcd82a4b76de6f3a2cce" + dependencies: + chokidar "^1.4.2" + minimist "^1.2.0" + reflect-metadata "^0.1.2" + tsickle "^0.26.0" + + "@angular/compiler@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-5.2.0.tgz#3798795b97e60b47fdc0a150e062dedb4ac39467" + dependencies: + tslib "^1.7.1" + + "@angular/core@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/core/-/core-5.2.0.tgz#f91bf83de3e0defd621adcc007c25d7cd5a85af1" + dependencies: + tslib "^1.7.1" + + "@angular/forms@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-5.2.0.tgz#b5fb6b9ba97334bca0e3202d7fee6b9162cbc824" + dependencies: + tslib "^1.7.1" + + "@angular/http@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/http/-/http-5.2.0.tgz#ebffff97e6c7baa3609a2d68e982bf990b1c72dc" + dependencies: + tslib "^1.7.1" + + "@angular/language-service@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/language-service/-/language-service-5.2.0.tgz#c8fab0ca8cbd79dafc96fad844ae69e9038b69ad" + + "@angular/material@5.1.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@angular/material/-/material-5.1.1.tgz#fafbd6bd98f2521ac5e3e2b2f720214386e3f31d" + dependencies: + tslib "^1.7.1" + + "@angular/platform-browser-dynamic@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.0.tgz#6d3e074363606b559c3319d2433d1c08ccaefbad" + dependencies: + tslib "^1.7.1" + + "@angular/platform-browser@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-5.2.0.tgz#89cbc8abf54171ecf3dd9a40970b4982eecc9f73" + dependencies: + tslib "^1.7.1" + + "@angular/router@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/router/-/router-5.2.0.tgz#0a43f1c6add592c9cb0b9846fc157fc5b23ee73d" + dependencies: + tslib "^1.7.1" + + "@babel/code-frame@^7.0.0-beta.35": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.40.tgz#37e2b0cf7c56026b4b21d3927cadf81adec32ac6" + dependencies: + "@babel/highlight" "7.0.0-beta.40" + + "@babel/highlight@7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.40.tgz#b43d67d76bf46e1d10d227f68cddcd263786b255" + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^3.0.0" + + "@bahmutov/add-typescript-to-cypress@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@bahmutov/add-typescript-to-cypress/-/add-typescript-to-cypress-2.0.0.tgz#5458b630d1d9d309b10941df8757bb59a5db2abf" + dependencies: + "@cypress/webpack-preprocessor" "1.1.3" + am-i-a-dependency "1.1.2" + chalk "2.3.0" + debug "3.1.0" + shelljs "0.8.0" + terminal-banner "1.1.0" + ts-loader "3.2.0" + + "@cypress/listr-verbose-renderer@0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@cypress/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#a77492f4b11dcc7c446a34b3e28721afd33c642a" + dependencies: + chalk "^1.1.3" + cli-cursor "^1.0.2" + date-fns "^1.27.2" + figures "^1.7.0" + + "@cypress/webpack-preprocessor@1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@cypress/webpack-preprocessor/-/webpack-preprocessor-1.1.3.tgz#ee216893714c6e89a171ff4a6ffa03893c308c78" + dependencies: + babel-core "6.26.0" + babel-loader "7.1.2" + babel-preset-env "1.6.0" + babel-preset-react "6.24.1" + bluebird "3.5.0" + debug "3.1.0" + lodash.clonedeep "4.5.0" + webpack "3.6.0" + + "@cypress/xvfb@1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@cypress/xvfb/-/xvfb-1.1.3.tgz#6294a7d1feb751f12302248f2089fc534c4acb7f" + dependencies: + lodash.once "^4.1.1" + + "@ng-select/ng-select@^0.26.2": + version "0.26.2" + resolved "https://registry.yarnpkg.com/@ng-select/ng-select/-/ng-select-0.26.2.tgz#4e3bbf3743294b7435868af48b1f4dd593ca4c58" + dependencies: + tslib "^1.7.1" + + "@ngtools/json-schema@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@ngtools/json-schema/-/json-schema-1.2.0.tgz#06e5ecd29e9a37d260a447dd873ea2becd228c4f" + + "@ngtools/json-schema@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@ngtools/json-schema/-/json-schema-1.1.0.tgz#c3a0c544d62392acc2813a42c8a0dc6f58f86922" + + "@ngtools/webpack@1.10.2": + version "1.10.2" + resolved "https://registry.yarnpkg.com/@ngtools/webpack/-/webpack-1.10.2.tgz#373705fd19992b36e996203480b1d412e942c8d6" + dependencies: + chalk "~2.2.0" + enhanced-resolve "^3.1.0" + loader-utils "^1.0.2" + magic-string "^0.22.3" + semver "^5.3.0" + source-map "^0.5.6" + tree-kill "^1.0.0" + webpack-sources "^1.1.0" + + "@schematics/angular@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-0.3.2.tgz#be209a032a3e4577992d94fbaa14bd4bfde485e2" + dependencies: + typescript "~2.6.2" + + "@schematics/package-update@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@schematics/package-update/-/package-update-0.3.2.tgz#c5a299ceba8b9e56f3e1f804f86f07664ec6e01c" + dependencies: + rxjs "^5.5.6" + semver "^5.3.0" + semver-intersect "^1.1.2" + + "@storybook/addon-actions@3.4.0-alpha.9", "@storybook/addon-actions@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-3.4.0-alpha.9.tgz#1016751ed00aa043a0b228a8e7e9b370712f4a61" + dependencies: + "@storybook/components" "^3.4.0-alpha.9" + deep-equal "^1.0.1" + glamorous "^4.11.6" + global "^4.3.2" + make-error "^1.3.4" + prop-types "^15.6.0" + react-inspector "^2.2.2" + uuid "^3.2.1" + + "@storybook/addon-knobs@3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-knobs/-/addon-knobs-3.4.0-alpha.9.tgz#7e316eb6055718033b240fc3bae20c7f9533f0e8" + dependencies: + "@storybook/components" "^3.4.0-alpha.9" + babel-runtime "^6.26.0" + deep-equal "^1.0.1" + global "^4.3.2" + insert-css "^2.0.0" + lodash.debounce "^4.0.8" + moment "^2.20.1" + prop-types "^15.6.0" + react-color "^2.11.4" + react-datetime "^2.14.0" + react-textarea-autosize "^5.2.1" + util-deprecate "^1.0.2" + + "@storybook/addon-links@3.4.0-alpha.9", "@storybook/addon-links@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-3.4.0-alpha.9.tgz#cfa0c571cbb2d6da614fe25269e014d88dceaae5" + dependencies: + "@storybook/components" "^3.4.0-alpha.9" + global "^4.3.2" + prop-types "^15.5.10" + + "@storybook/addon-notes@3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-notes/-/addon-notes-3.4.0-alpha.9.tgz#767bdd8ea044ea29b4215286bfa9c09d3ed1aa57" + dependencies: + babel-runtime "^6.26.0" + marked "^0.3.16" + prop-types "^15.6.0" + util-deprecate "^1.0.2" + optionalDependencies: + "@types/react" "^16.0.20" + + "@storybook/addon-options@3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-options/-/addon-options-3.4.0-alpha.9.tgz#453a642442c3770eb77be11593f8b925e62841ec" + + "@storybook/addons@3.4.0-alpha.9", "@storybook/addons@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-3.4.0-alpha.9.tgz#7701a8a42e6016ae07430e4576b5277cef489f43" + + "@storybook/angular@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/angular/-/angular-3.4.0-alpha.9.tgz#40305a4bf13873a383c9c6c123864f0f8b27cac5" + dependencies: + "@storybook/addon-actions" "^3.4.0-alpha.9" + "@storybook/addon-links" "^3.4.0-alpha.9" + "@storybook/addons" "^3.4.0-alpha.9" + "@storybook/channel-postmessage" "^3.4.0-alpha.9" + "@storybook/core" "^3.4.0-alpha.9" + "@storybook/node-logger" "^3.4.0-alpha.9" + "@storybook/ui" "^3.4.0-alpha.9" + airbnb-js-shims "^1.4.1" + angular2-template-loader "^0.6.2" + autoprefixer "^7.2.6" + babel-core "^6.26.0" + babel-loader "^7.0.0" + babel-plugin-macros "^2.1.0" + babel-plugin-react-docgen "^1.8.2" + babel-preset-env "^1.6.0" + babel-preset-react "^6.24.1" + babel-preset-react-app "^3.1.1" + babel-preset-stage-0 "^6.24.1" + babel-runtime "^6.23.0" + case-sensitive-paths-webpack-plugin "^2.0.0" + common-tags "^1.7.2" + configstore "^3.1.0" + core-js "^2.4.1" + cross-env "^5.1.1" + css-loader "^0.28.9" + dotenv-webpack "^1.5.4" + express "^4.15.3" + file-loader "^1.1.8" + find-cache-dir "^1.0.0" + global "^4.3.2" + html-loader "^0.5.5" + html-webpack-plugin "^2.30.1" + json-loader "^0.5.4" + json-stringify-safe "^5.0.1" + json5 "^0.5.1" + lodash.pick "^4.4.0" + markdown-loader "^2.0.2" + node-sass "^4.7.2" + postcss-flexbugs-fixes "^3.3.0" + postcss-loader "^2.1.0" + prop-types "^15.5.10" + qs "^6.5.1" + raw-loader "^0.5.1" + react "^16.0.0" + react-dev-utils "^5.0.0" + react-dom "^16.0.0" + react-modal "^3.3.1" + redux "^3.6.0" + request "^2.81.0" + rxjs "^5.4.2" + sass-loader "^6.0.6" + style-loader "^0.20.2" + ts-loader "^3.5.0" + uglifyjs-webpack-plugin "^1.2.0" + url-loader "^0.6.2" + util-deprecate "^1.0.2" + webpack "^3.11.0" + zone.js "^0.8.20" + + "@storybook/channel-postmessage@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-3.4.0-alpha.9.tgz#effa7f240b2d4e41b21d5a4c82b8a3cbbd43a1b2" + dependencies: + "@storybook/channels" "^3.4.0-alpha.9" + global "^4.3.2" + json-stringify-safe "^5.0.1" + + "@storybook/channels@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-3.4.0-alpha.9.tgz#953eeb38c657be6eb2b6ee7b1d7637e038fc5ddf" + + "@storybook/client-logger@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-3.4.0-alpha.9.tgz#10704a010ec2643937d098202c894f3c392ebfbe" + + "@storybook/components@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-3.4.0-alpha.9.tgz#dc313e9f788780c6eca16c69e30186021466fd20" + dependencies: + glamor "^2.20.40" + glamorous "^4.11.6" + prop-types "^15.6.0" + + "@storybook/core@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/core/-/core-3.4.0-alpha.9.tgz#b80f640b1d482cd4fd49a47cd3ad9e3e9e8e89a3" + dependencies: + "@storybook/addons" "^3.4.0-alpha.9" + "@storybook/channel-postmessage" "^3.4.0-alpha.9" + "@storybook/client-logger" "^3.4.0-alpha.9" + "@storybook/node-logger" "^3.4.0-alpha.9" + "@storybook/ui" "^3.4.0-alpha.9" + autoprefixer "^7.2.6" + babel-runtime "^6.26.0" + chalk "^2.3.1" + commander "^2.14.1" + css-loader "^0.28.9" + dotenv "^5.0.0" + events "^1.1.1" + express "^4.16.2" + file-loader "^1.1.8" + global "^4.3.2" + json-loader "^0.5.7" + postcss-flexbugs-fixes "^3.2.0" + postcss-loader "^2.1.0" + prop-types "^15.5.10" + qs "^6.5.1" + react "^16.0.0" + react-dom "^16.0.0" + serve-favicon "^2.4.5" + shelljs "^0.8.1" + style-loader "^0.20.2" + url-loader "^0.6.2" + webpack "^3.11.0" + webpack-dev-middleware "^1.12.2" + webpack-hot-middleware "^2.21.0" + + "@storybook/mantra-core@^1.7.2": + version "1.7.2" + resolved "https://registry.yarnpkg.com/@storybook/mantra-core/-/mantra-core-1.7.2.tgz#e10c7faca29769e97131e0e0308ef7cfb655b70c" + dependencies: + "@storybook/react-komposer" "^2.0.1" + "@storybook/react-simple-di" "^1.2.1" + babel-runtime "6.x.x" + + "@storybook/node-logger@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-3.4.0-alpha.9.tgz#edb5813f51a9c5c8487988b3e7582aa4d841ad25" + dependencies: + chalk "^2.3.1" + npmlog "^4.1.2" + + "@storybook/podda@^1.2.3": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@storybook/podda/-/podda-1.2.3.tgz#53c4a1a3f8c7bbd5755dff5c34576fd1af9d38ba" + dependencies: + babel-runtime "^6.11.6" + immutable "^3.8.1" + + "@storybook/react-komposer@^2.0.1", "@storybook/react-komposer@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@storybook/react-komposer/-/react-komposer-2.0.3.tgz#f9e12a9586b2ce95c24c137eabb8b71527ddb369" + dependencies: + "@storybook/react-stubber" "^1.0.0" + babel-runtime "^6.11.6" + hoist-non-react-statics "^1.2.0" + lodash.pick "^4.4.0" + shallowequal "^0.2.2" + + "@storybook/react-simple-di@^1.2.1": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@storybook/react-simple-di/-/react-simple-di-1.3.0.tgz#13116d89a2f42898716a7f8c4095b47415526371" + dependencies: + babel-runtime "6.x.x" + create-react-class "^15.6.2" + hoist-non-react-statics "1.x.x" + prop-types "^15.6.0" + + "@storybook/react-stubber@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@storybook/react-stubber/-/react-stubber-1.0.1.tgz#8c312c2658b9eeafce470e1c39e4193f0b5bf9b1" + dependencies: + babel-runtime "^6.5.0" + + "@storybook/ui@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-3.4.0-alpha.9.tgz#0d507003c95eb7e3db5d6725c98bc9c9db445728" + dependencies: + "@storybook/components" "^3.4.0-alpha.9" + "@storybook/mantra-core" "^1.7.2" + "@storybook/podda" "^1.2.3" + "@storybook/react-komposer" "^2.0.3" + babel-runtime "^6.26.0" + deep-equal "^1.0.1" + events "^1.1.1" + fuse.js "^3.2.0" + global "^4.3.2" + json-stringify-safe "^5.0.1" + keycode "^2.1.9" + lodash.debounce "^4.0.8" + lodash.pick "^4.4.0" + lodash.sortby "^4.7.0" + prop-types "^15.6.0" + qs "^6.5.1" + react-fuzzy "^0.5.2" + react-icons "^2.2.7" + react-inspector "^2.2.2" + react-modal "^3.3.1" + react-split-pane "^0.1.77" + react-treebeard "^2.1.0" + redux "^3.7.2" + + "@types/blob-util@1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@types/blob-util/-/blob-util-1.3.3.tgz#adba644ae34f88e1dd9a5864c66ad651caaf628a" + + "@types/bluebird@3.5.18": + version "3.5.18" + resolved "https://registry.yarnpkg.com/@types/bluebird/-/bluebird-3.5.18.tgz#6a60435d4663e290f3709898a4f75014f279c4d6" + + "@types/chai-jquery@1.1.35": + version "1.1.35" + resolved "https://registry.yarnpkg.com/@types/chai-jquery/-/chai-jquery-1.1.35.tgz#9a8f0a39ec0851b2768a8f8c764158c2a2568d04" + dependencies: + "@types/chai" "*" + "@types/jquery" "*" + + "@types/chai@*": + version "4.1.2" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.1.2.tgz#f1af664769cfb50af805431c407425ed619daa21" + + "@types/chai@4.0.8": + version "4.0.8" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.0.8.tgz#d27600e9ba2f371e08695d90a0fe0408d89c7be7" + + "@types/jasmine@*", "@types/jasmine@~2.8.3": + version "2.8.4" + resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.8.4.tgz#5528fb5e53f1b27594f81f18debb7eab8dc532cb" + + "@types/jasminewd2@~2.0.2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/jasminewd2/-/jasminewd2-2.0.3.tgz#0d2886b0cbdae4c0eeba55e30792f584bf040a95" + dependencies: + "@types/jasmine" "*" + + "@types/jest@^22.1.3", "@types/jest@^22.2.0": + version "22.2.0" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-22.2.0.tgz#55ce83139f7ad1b48b414c3927746614c6963c0f" + + "@types/jquery@*": + version "3.3.0" + resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.3.0.tgz#6316ac20a1a13c5d521a2dc661befc7184f73f5b" + + "@types/jquery@3.2.16": + version "3.2.16" + resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.2.16.tgz#04419c404a3194350e7d3f339a90e72c88db3111" + + "@types/lodash@4.14.87": + version "4.14.87" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.87.tgz#55f92183b048c2c64402afe472f8333f4e319a6b" + + "@types/minimatch@3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.1.tgz#b683eb60be358304ef146f5775db4c0e3696a550" + + "@types/mocha@2.2.44": + version "2.2.44" + resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-2.2.44.tgz#1d4a798e53f35212fd5ad4d04050620171cd5b5e" + + "@types/node@^6.0.46": + version "6.0.96" + resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.96.tgz#7bf0bf40d6ce51e93762cc47d010c8cc5ebb2179" + + "@types/node@^8.0.24": + version "8.9.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-8.9.5.tgz#162b864bc70be077e6db212b322754917929e976" + + "@types/node@^9.4.6": + version "9.4.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-9.4.6.tgz#d8176d864ee48753d053783e4e463aec86b8d82e" + + "@types/q@^0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.32.tgz#bd284e57c84f1325da702babfc82a5328190c0c5" + + "@types/react@^16.0.20": + version "16.0.40" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.0.40.tgz#caabc2296886f40b67f6fc80f0f3464476461df9" + + "@types/selenium-webdriver@^2.53.35", "@types/selenium-webdriver@~2.53.39": + version "2.53.43" + resolved "https://registry.yarnpkg.com/@types/selenium-webdriver/-/selenium-webdriver-2.53.43.tgz#2de3d718819bc20165754c4a59afb7e9833f6707" + + "@types/sinon-chai@2.7.29": + version "2.7.29" + resolved "https://registry.yarnpkg.com/@types/sinon-chai/-/sinon-chai-2.7.29.tgz#4db01497e2dd1908b2bd30d1782f456353f5f723" + dependencies: + "@types/chai" "*" + "@types/sinon" "*" + + "@types/sinon@*": + version "4.1.3" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-4.1.3.tgz#2ee25e0e302f31e78a945650a60029e08878eaf8" + + "@types/sinon@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-4.0.0.tgz#9a93ffa4ee1329e85166278a5ed99f81dc4c8362" + + JSONStream@^1.0.3: + version "1.3.2" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.2.tgz#c102371b6ec3a7cf3b847ca00c20bb0fce4c6dea" + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + + abab@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" + + abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + + accepts@1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca" + dependencies: + mime-types "~2.1.11" + negotiator "0.6.1" + + accepts@~1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f" + dependencies: + mime-types "~2.1.16" + negotiator "0.6.1" + + acorn-dynamic-import@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz#c752bd210bef679501b6c6cb7fc84f8f47158cc4" + dependencies: + acorn "^4.0.3" + + acorn-globals@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.1.0.tgz#ab716025dbe17c54d3ef81d32ece2b2d99fe2538" + dependencies: + acorn "^5.0.0" + + acorn@^4.0.3: + version "4.0.13" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" + + acorn@^5.0.0, acorn@^5.2.1: + version "5.3.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.3.0.tgz#7446d39459c54fb49a80e6ee6478149b940ec822" + + acorn@^5.3.0: + version "5.5.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.5.3.tgz#f473dd47e0277a08e28e9bec5aeeb04751f0b8c9" + + address@1.0.3, address@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/address/-/address-1.0.3.tgz#b5f50631f8d6cec8bd20c963963afb55e06cbce9" + + addressparser@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" + + adm-zip@0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.4.tgz#a61ed5ae6905c3aea58b3a657d25033091052736" + + adm-zip@^0.4.7: + version "0.4.7" + resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.7.tgz#8606c2cbf1c426ce8c8ec00174447fd49b6eafc1" + + after@0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" + + agent-base@2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-2.1.1.tgz#d6de10d5af6132d5bd692427d46fc538539094c7" + dependencies: + extend "~3.0.0" + semver "~5.0.1" + + airbnb-js-shims@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/airbnb-js-shims/-/airbnb-js-shims-1.4.1.tgz#cc3e8eb8d35877f9d0fdc6583e26b0ee75b98ad0" + dependencies: + array-includes "^3.0.3" + array.prototype.flatmap "^1.2.0" + array.prototype.flatten "^1.2.0" + es5-shim "^4.5.10" + es6-shim "^0.35.3" + function.prototype.name "^1.1.0" + object.entries "^1.0.4" + object.getownpropertydescriptors "^2.0.3" + object.values "^1.0.4" + promise.prototype.finally "^3.1.0" + string.prototype.padend "^3.0.0" + string.prototype.padstart "^3.0.0" + + ajv-keywords@^2.0.0, ajv-keywords@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" + + ajv-keywords@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.1.0.tgz#ac2b27939c543e95d2c06e7f7f5c27be4aa543be" + + ajv@^4.9.1: + version "4.11.8" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" + dependencies: + co "^4.6.0" + json-stable-stringify "^1.0.1" + + ajv@^5.0.0, ajv@^5.1.0, ajv@^5.1.5, ajv@~5.5.1: + version "5.5.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" + dependencies: + co "^4.6.0" + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + + ajv@^6.1.0, ajv@^6.1.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.2.1.tgz#28a6abc493a2abe0fb4c8507acaedb43fa550671" + dependencies: + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + + align-text@^0.1.1, align-text@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" + dependencies: + kind-of "^3.0.2" + longest "^1.0.1" + repeat-string "^1.5.2" + + alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" + + am-i-a-dependency@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/am-i-a-dependency/-/am-i-a-dependency-1.1.2.tgz#f9d3422304d6f642f821e4c407565035f6167f1f" + + amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + + angular-tree-component@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/angular-tree-component/-/angular-tree-component-7.0.1.tgz#fc8d0e72d8c34b87131a3ba2bd32ad20945689ac" + dependencies: + lodash "4.17.4" + mobx ">=3" + mobx-angular ">=1" + + angular2-template-loader@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/angular2-template-loader/-/angular2-template-loader-0.6.2.tgz#c0d44e90fff0fac95e8b23f043acda7fd1c51d7c" + dependencies: + loader-utils "^0.2.15" + + ansi-escapes@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" + + ansi-escapes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" + + ansi-html@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" + + ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + + ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + + ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + + ansi-styles@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" + dependencies: + color-convert "^1.9.0" + + ansi-styles@^3.2.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + dependencies: + color-convert "^1.9.0" + + anymatch@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" + dependencies: + micromatch "^2.1.5" + normalize-path "^2.0.0" + + anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + + app-root-path@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-2.0.1.tgz#cd62dcf8e4fd5a417efc664d2e5b10653c651b46" + + append-transform@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" + dependencies: + default-require-extensions "^1.0.0" + + aproba@^1.0.3, aproba@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + + are-we-there-yet@~1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + + argparse@^1.0.7: + version "1.0.9" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" + dependencies: + sprintf-js "~1.0.2" + + arr-diff@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" + dependencies: + arr-flatten "^1.0.1" + + arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + + arr-flatten@^1.0.1, arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + + arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + + array-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" + + array-filter@~0.0.0: + version "0.0.1" + resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" + + array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + + array-find@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-find/-/array-find-1.0.0.tgz#6c8e286d11ed768327f8e62ecee87353ca3e78b8" + + array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + + array-flatten@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.1.tgz#426bb9da84090c1838d812c8150af20a8331e296" + + array-includes@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.7.0" + + array-map@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" + + array-reduce@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" + + array-slice@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-0.2.3.tgz#dd3cfb80ed7973a75117cdac69b0b99ec86186f5" + + array-union@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + dependencies: + array-uniq "^1.0.1" + + array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + + array-unique@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" + + array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + + array.prototype.flatmap@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.1.tgz#3103cd4826ef90019c9b0a4839b2535fa6faf4e9" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.10.0" + function-bind "^1.1.1" + + array.prototype.flatten@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/array.prototype.flatten/-/array.prototype.flatten-1.2.1.tgz#a77ae1b64524ce373b137fade324d12040d3c680" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.10.0" + function-bind "^1.1.1" + + arraybuffer.slice@~0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675" + + arrify@^1.0.0, arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + + asap@~2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + + asn1.js@^4.0.0: + version "4.9.2" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.2.tgz#8117ef4f7ed87cd8f89044b5bff97ac243a16c9a" + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + + asn1@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" + + assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + + assert-plus@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" + + assert@^1.1.1, assert@^1.4.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" + dependencies: + util "0.10.3" + + assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + + ast-types@0.10.1, ast-types@0.x.x: + version "0.10.1" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.10.1.tgz#f52fca9715579a14f841d67d7f8d25432ab6a3dd" + + ast-types@0.9.6: + version "0.9.6" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" + + astral-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" + + astw@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/astw/-/astw-2.2.0.tgz#7bd41784d32493987aeb239b6b4e1c57a873b917" + dependencies: + acorn "^4.0.3" + + async-each@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" + + async-foreach@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" + + async-limiter@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" + + async@2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4" + dependencies: + lodash "^4.14.0" + + async@^1.4.0, async@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" + + async@^2.1.2, async@^2.1.4, async@^2.4.1: + version "2.6.0" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" + dependencies: + lodash "^4.14.0" + + async@~2.1.2: + version "2.1.5" + resolved "https://registry.yarnpkg.com/async/-/async-2.1.5.tgz#e587c68580994ac67fc56ff86d3ac56bdbe810bc" + dependencies: + lodash "^4.14.0" + + asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + + atob@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.0.3.tgz#19c7a760473774468f20b2d2d03372ad7d4cbf5d" + + autoprefixer@^6.3.1: + version "6.7.7" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014" + dependencies: + browserslist "^1.7.6" + caniuse-db "^1.0.30000634" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^5.2.16" + postcss-value-parser "^3.2.3" + + autoprefixer@^7.2.3: + version "7.2.5" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.2.5.tgz#04ccbd0c6a61131b6d13f53d371926092952d192" + dependencies: + browserslist "^2.11.1" + caniuse-lite "^1.0.30000791" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^6.0.16" + postcss-value-parser "^3.2.3" + + autoprefixer@^7.2.6: + version "7.2.6" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.2.6.tgz#256672f86f7c735da849c4f07d008abb056067dc" + dependencies: + browserslist "^2.11.3" + caniuse-lite "^1.0.30000805" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^6.0.17" + postcss-value-parser "^3.2.3" + + aws-sign2@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" + + aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + + aws4@^1.2.1, aws4@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" + + axios@^0.15.3: + version "0.15.3" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.15.3.tgz#2c9d638b2e191a08ea1d6cc988eadd6ba5bdc053" + dependencies: + follow-redirects "1.0.0" + + babel-code-frame@6.26.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + dependencies: + chalk "^1.1.3" + esutils "^2.0.2" + js-tokens "^3.0.2" + + babel-core@6.26.0, babel-core@^6.0.0, babel-core@^6.24.1, babel-core@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" + dependencies: + babel-code-frame "^6.26.0" + babel-generator "^6.26.0" + babel-helpers "^6.24.1" + babel-messages "^6.23.0" + babel-register "^6.26.0" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + convert-source-map "^1.5.0" + debug "^2.6.8" + json5 "^0.5.1" + lodash "^4.17.4" + minimatch "^3.0.4" + path-is-absolute "^1.0.1" + private "^0.1.7" + slash "^1.0.0" + source-map "^0.5.6" + + babel-generator@^6.18.0, babel-generator@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" + dependencies: + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + detect-indent "^4.0.0" + jsesc "^1.3.0" + lodash "^4.17.4" + source-map "^0.5.6" + trim-right "^1.0.1" + + babel-helper-bindify-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" + dependencies: + babel-helper-explode-assignable-expression "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-helper-builder-react-jsx@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz#39ff8313b75c8b65dceff1f31d383e0ff2a408a0" + dependencies: + babel-runtime "^6.26.0" + babel-types "^6.26.0" + esutils "^2.0.2" + + babel-helper-call-delegate@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" + dependencies: + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-helper-define-map@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" + + babel-helper-explode-assignable-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-helper-explode-class@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" + dependencies: + babel-helper-bindify-decorators "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-helper-function-name@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" + dependencies: + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-helper-get-function-arity@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-helper-hoist-variables@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-helper-optimise-call-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-helper-regex@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" + dependencies: + babel-runtime "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" + + babel-helper-remap-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-helper-replace-supers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" + dependencies: + babel-helper-optimise-call-expression "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-helpers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + + babel-jest@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-22.4.1.tgz#ff53ebca45957347f27ff4666a31499fbb4c4ddd" + dependencies: + babel-plugin-istanbul "^4.1.5" + babel-preset-jest "^22.4.1" + + babel-loader@7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-7.1.2.tgz#f6cbe122710f1aa2af4d881c6d5b54358ca24126" + dependencies: + find-cache-dir "^1.0.0" + loader-utils "^1.0.2" + mkdirp "^0.5.1" + + babel-loader@^7.0.0: + version "7.1.3" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-7.1.3.tgz#ff5b440da716e9153abb946251a9ab7670037b16" + dependencies: + find-cache-dir "^1.0.0" + loader-utils "^1.0.2" + mkdirp "^0.5.1" + + babel-messages@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-check-es2015-constants@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-dynamic-import-node@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-1.1.0.tgz#bd1d88ac7aaf98df4917c384373b04d971a2b37a" + dependencies: + babel-plugin-syntax-dynamic-import "^6.18.0" + babel-template "^6.26.0" + babel-types "^6.26.0" + + babel-plugin-istanbul@^4.1.4, babel-plugin-istanbul@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.5.tgz#6760cdd977f411d3e175bb064f2bc327d99b2b6e" + dependencies: + find-up "^2.1.0" + istanbul-lib-instrument "^1.7.5" + test-exclude "^4.1.1" + + babel-plugin-jest-hoist@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-22.4.1.tgz#d712fe5da8b6965f3191dacddbefdbdf4fb66d63" + + babel-plugin-macros@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.2.0.tgz#31fc16748d6480697a517f692dc4421cb7bff0cc" + dependencies: + cosmiconfig "^4.0.0" + + babel-plugin-react-docgen@^1.8.2: + version "1.8.3" + resolved "https://registry.yarnpkg.com/babel-plugin-react-docgen/-/babel-plugin-react-docgen-1.8.3.tgz#bdb0fe41f72eaa9444fe7872866d2f372afd72bb" + dependencies: + babel-types "^6.24.1" + lodash "^4.17.0" + react-docgen "^2.20.0" + + babel-plugin-syntax-async-functions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" + + babel-plugin-syntax-async-generators@^6.5.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" + + babel-plugin-syntax-class-constructor-call@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416" + + babel-plugin-syntax-class-properties@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" + + babel-plugin-syntax-decorators@^6.13.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" + + babel-plugin-syntax-do-expressions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz#5747756139aa26d390d09410b03744ba07e4796d" + + babel-plugin-syntax-dynamic-import@6.18.0, babel-plugin-syntax-dynamic-import@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" + + babel-plugin-syntax-exponentiation-operator@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" + + babel-plugin-syntax-export-extensions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721" + + babel-plugin-syntax-flow@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" + + babel-plugin-syntax-function-bind@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz#48c495f177bdf31a981e732f55adc0bdd2601f46" + + babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" + + babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest-spread@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" + + babel-plugin-syntax-trailing-function-commas@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" + + babel-plugin-transform-async-generator-functions@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-generators "^6.5.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-async-to-generator@^6.22.0, babel-plugin-transform-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-functions "^6.8.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-class-constructor-call@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz#80dc285505ac067dcb8d6c65e2f6f11ab7765ef9" + dependencies: + babel-plugin-syntax-class-constructor-call "^6.18.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + + babel-plugin-transform-class-properties@6.24.1, babel-plugin-transform-class-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" + dependencies: + babel-helper-function-name "^6.24.1" + babel-plugin-syntax-class-properties "^6.8.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + + babel-plugin-transform-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" + dependencies: + babel-helper-explode-class "^6.24.1" + babel-plugin-syntax-decorators "^6.13.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-types "^6.24.1" + + babel-plugin-transform-do-expressions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz#28ccaf92812d949c2cd1281f690c8fdc468ae9bb" + dependencies: + babel-plugin-syntax-do-expressions "^6.8.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-arrow-functions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-block-scoping@^6.23.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" + dependencies: + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" + + babel-plugin-transform-es2015-classes@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" + dependencies: + babel-helper-define-map "^6.24.1" + babel-helper-function-name "^6.24.1" + babel-helper-optimise-call-expression "^6.24.1" + babel-helper-replace-supers "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-plugin-transform-es2015-computed-properties@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + + babel-plugin-transform-es2015-destructuring@6.23.0, babel-plugin-transform-es2015-destructuring@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-duplicate-keys@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-plugin-transform-es2015-for-of@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-function-name@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-plugin-transform-es2015-literals@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" + dependencies: + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + + babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" + dependencies: + babel-plugin-transform-strict-mode "^6.24.1" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-types "^6.26.0" + + babel-plugin-transform-es2015-modules-systemjs@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" + dependencies: + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + + babel-plugin-transform-es2015-modules-umd@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" + dependencies: + babel-plugin-transform-es2015-modules-amd "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + + babel-plugin-transform-es2015-object-super@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" + dependencies: + babel-helper-replace-supers "^6.24.1" + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-parameters@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" + dependencies: + babel-helper-call-delegate "^6.24.1" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + + babel-plugin-transform-es2015-shorthand-properties@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-plugin-transform-es2015-spread@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-sticky-regex@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" + dependencies: + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-plugin-transform-es2015-template-literals@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-typeof-symbol@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-es2015-unicode-regex@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" + dependencies: + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + regexpu-core "^2.0.0" + + babel-plugin-transform-exponentiation-operator@^6.22.0, babel-plugin-transform-exponentiation-operator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" + dependencies: + babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" + babel-plugin-syntax-exponentiation-operator "^6.8.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-export-extensions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653" + dependencies: + babel-plugin-syntax-export-extensions "^6.8.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-flow-strip-types@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf" + dependencies: + babel-plugin-syntax-flow "^6.18.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-function-bind@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz#c6fb8e96ac296a310b8cf8ea401462407ddf6a97" + dependencies: + babel-plugin-syntax-function-bind "^6.8.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-object-rest-spread@6.26.0, babel-plugin-transform-object-rest-spread@^6.22.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" + dependencies: + babel-plugin-syntax-object-rest-spread "^6.8.0" + babel-runtime "^6.26.0" + + babel-plugin-transform-react-constant-elements@6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-constant-elements/-/babel-plugin-transform-react-constant-elements-6.23.0.tgz#2f119bf4d2cdd45eb9baaae574053c604f6147dd" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-react-display-name@^6.23.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz#67e2bf1f1e9c93ab08db96792e05392bf2cc28d1" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-react-jsx-self@6.22.0, babel-plugin-transform-react-jsx-self@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz#df6d80a9da2612a121e6ddd7558bcbecf06e636e" + dependencies: + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-react-jsx-source@6.22.0, babel-plugin-transform-react-jsx-source@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6" + dependencies: + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-react-jsx@6.24.1, babel-plugin-transform-react-jsx@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz#840a028e7df460dfc3a2d29f0c0d91f6376e66a3" + dependencies: + babel-helper-builder-react-jsx "^6.24.1" + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" + + babel-plugin-transform-regenerator@6.26.0, babel-plugin-transform-regenerator@^6.22.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" + dependencies: + regenerator-transform "^0.10.0" + + babel-plugin-transform-runtime@6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz#88490d446502ea9b8e7efb0fe09ec4d99479b1ee" + dependencies: + babel-runtime "^6.22.0" + + babel-plugin-transform-strict-mode@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + + babel-preset-env@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4" + dependencies: + babel-plugin-check-es2015-constants "^6.22.0" + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-to-generator "^6.22.0" + babel-plugin-transform-es2015-arrow-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoping "^6.23.0" + babel-plugin-transform-es2015-classes "^6.23.0" + babel-plugin-transform-es2015-computed-properties "^6.22.0" + babel-plugin-transform-es2015-destructuring "^6.23.0" + babel-plugin-transform-es2015-duplicate-keys "^6.22.0" + babel-plugin-transform-es2015-for-of "^6.23.0" + babel-plugin-transform-es2015-function-name "^6.22.0" + babel-plugin-transform-es2015-literals "^6.22.0" + babel-plugin-transform-es2015-modules-amd "^6.22.0" + babel-plugin-transform-es2015-modules-commonjs "^6.23.0" + babel-plugin-transform-es2015-modules-systemjs "^6.23.0" + babel-plugin-transform-es2015-modules-umd "^6.23.0" + babel-plugin-transform-es2015-object-super "^6.22.0" + babel-plugin-transform-es2015-parameters "^6.23.0" + babel-plugin-transform-es2015-shorthand-properties "^6.22.0" + babel-plugin-transform-es2015-spread "^6.22.0" + babel-plugin-transform-es2015-sticky-regex "^6.22.0" + babel-plugin-transform-es2015-template-literals "^6.22.0" + babel-plugin-transform-es2015-typeof-symbol "^6.23.0" + babel-plugin-transform-es2015-unicode-regex "^6.22.0" + babel-plugin-transform-exponentiation-operator "^6.22.0" + babel-plugin-transform-regenerator "^6.22.0" + browserslist "^2.1.2" + invariant "^2.2.2" + semver "^5.3.0" + + babel-preset-env@1.6.1, babel-preset-env@^1.6.0: + version "1.6.1" + resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.1.tgz#a18b564cc9b9afdf4aae57ae3c1b0d99188e6f48" + dependencies: + babel-plugin-check-es2015-constants "^6.22.0" + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-to-generator "^6.22.0" + babel-plugin-transform-es2015-arrow-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoping "^6.23.0" + babel-plugin-transform-es2015-classes "^6.23.0" + babel-plugin-transform-es2015-computed-properties "^6.22.0" + babel-plugin-transform-es2015-destructuring "^6.23.0" + babel-plugin-transform-es2015-duplicate-keys "^6.22.0" + babel-plugin-transform-es2015-for-of "^6.23.0" + babel-plugin-transform-es2015-function-name "^6.22.0" + babel-plugin-transform-es2015-literals "^6.22.0" + babel-plugin-transform-es2015-modules-amd "^6.22.0" + babel-plugin-transform-es2015-modules-commonjs "^6.23.0" + babel-plugin-transform-es2015-modules-systemjs "^6.23.0" + babel-plugin-transform-es2015-modules-umd "^6.23.0" + babel-plugin-transform-es2015-object-super "^6.22.0" + babel-plugin-transform-es2015-parameters "^6.23.0" + babel-plugin-transform-es2015-shorthand-properties "^6.22.0" + babel-plugin-transform-es2015-spread "^6.22.0" + babel-plugin-transform-es2015-sticky-regex "^6.22.0" + babel-plugin-transform-es2015-template-literals "^6.22.0" + babel-plugin-transform-es2015-typeof-symbol "^6.23.0" + babel-plugin-transform-es2015-unicode-regex "^6.22.0" + babel-plugin-transform-exponentiation-operator "^6.22.0" + babel-plugin-transform-regenerator "^6.22.0" + browserslist "^2.1.2" + invariant "^2.2.2" + semver "^5.3.0" + + babel-preset-flow@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz#e71218887085ae9a24b5be4169affb599816c49d" + dependencies: + babel-plugin-transform-flow-strip-types "^6.22.0" + + babel-preset-jest@^22.4.0, babel-preset-jest@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-22.4.1.tgz#efa2e5f5334242a9457a068452d7d09735db172a" + dependencies: + babel-plugin-jest-hoist "^22.4.1" + babel-plugin-syntax-object-rest-spread "^6.13.0" + + babel-preset-react-app@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-3.1.1.tgz#d3f06a79742f0e89d7afcb72e282d9809c850920" + dependencies: + babel-plugin-dynamic-import-node "1.1.0" + babel-plugin-syntax-dynamic-import "6.18.0" + babel-plugin-transform-class-properties "6.24.1" + babel-plugin-transform-es2015-destructuring "6.23.0" + babel-plugin-transform-object-rest-spread "6.26.0" + babel-plugin-transform-react-constant-elements "6.23.0" + babel-plugin-transform-react-jsx "6.24.1" + babel-plugin-transform-react-jsx-self "6.22.0" + babel-plugin-transform-react-jsx-source "6.22.0" + babel-plugin-transform-regenerator "6.26.0" + babel-plugin-transform-runtime "6.23.0" + babel-preset-env "1.6.1" + babel-preset-react "6.24.1" + + babel-preset-react@6.24.1, babel-preset-react@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.24.1.tgz#ba69dfaea45fc3ec639b6a4ecea6e17702c91380" + dependencies: + babel-plugin-syntax-jsx "^6.3.13" + babel-plugin-transform-react-display-name "^6.23.0" + babel-plugin-transform-react-jsx "^6.24.1" + babel-plugin-transform-react-jsx-self "^6.22.0" + babel-plugin-transform-react-jsx-source "^6.22.0" + babel-preset-flow "^6.23.0" + + babel-preset-stage-0@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz#5642d15042f91384d7e5af8bc88b1db95b039e6a" + dependencies: + babel-plugin-transform-do-expressions "^6.22.0" + babel-plugin-transform-function-bind "^6.22.0" + babel-preset-stage-1 "^6.24.1" + + babel-preset-stage-1@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz#7692cd7dcd6849907e6ae4a0a85589cfb9e2bfb0" + dependencies: + babel-plugin-transform-class-constructor-call "^6.24.1" + babel-plugin-transform-export-extensions "^6.22.0" + babel-preset-stage-2 "^6.24.1" + + babel-preset-stage-2@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" + dependencies: + babel-plugin-syntax-dynamic-import "^6.18.0" + babel-plugin-transform-class-properties "^6.24.1" + babel-plugin-transform-decorators "^6.24.1" + babel-preset-stage-3 "^6.24.1" + + babel-preset-stage-3@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" + dependencies: + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-generator-functions "^6.24.1" + babel-plugin-transform-async-to-generator "^6.24.1" + babel-plugin-transform-exponentiation-operator "^6.24.1" + babel-plugin-transform-object-rest-spread "^6.22.0" + + babel-register@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" + dependencies: + babel-core "^6.26.0" + babel-runtime "^6.26.0" + core-js "^2.5.0" + home-or-tmp "^2.0.0" + lodash "^4.17.4" + mkdirp "^0.5.1" + source-map-support "^0.4.15" + + babel-runtime@6.x.x, babel-runtime@^6.11.6, babel-runtime@^6.18.0, babel-runtime@^6.20.0, babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.0, babel-runtime@^6.5.0, babel-runtime@^6.9.2: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + + babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" + dependencies: + babel-runtime "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + lodash "^4.17.4" + + babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" + dependencies: + babel-code-frame "^6.26.0" + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + debug "^2.6.8" + globals "^9.18.0" + invariant "^2.2.2" + lodash "^4.17.4" + + babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + dependencies: + babel-runtime "^6.26.0" + esutils "^2.0.2" + lodash "^4.17.4" + to-fast-properties "^1.0.3" + + babylon@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + + babylon@~5.8.3: + version "5.8.38" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-5.8.38.tgz#ec9b120b11bf6ccd4173a18bf217e60b79859ffd" + + backo2@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" + + balanced-match@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" + + balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + + base64-arraybuffer@0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" + + base64-js@^1.0.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886" + + base64id@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base64id/-/base64id-1.0.0.tgz#47688cb99bb6804f0e06d3e763b1c32e57d8e6b6" + + base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + + batch@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + + bcrypt-pbkdf@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + dependencies: + tweetnacl "^0.14.3" + + better-assert@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/better-assert/-/better-assert-1.0.2.tgz#40866b9e1b9e0b55b481894311e68faffaebc522" + dependencies: + callsite "1.0.0" + + big.js@^3.1.3: + version "3.2.0" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" + + binary-extensions@^1.0.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205" + + bindings@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.2.1.tgz#14ad6113812d2d37d72e67b4cacb4bb726505f11" + + bl@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.1.2.tgz#fdca871a99713aa00d19e3bbba41c44787a65398" + dependencies: + readable-stream "~2.0.5" + + blob@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.4.tgz#bcf13052ca54463f30f9fc7e95b9a47630a94921" + + block-stream@*: + version "0.0.9" + resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + dependencies: + inherits "~2.0.0" + + blocking-proxy@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/blocking-proxy/-/blocking-proxy-0.0.5.tgz#462905e0dcfbea970f41aa37223dda9c07b1912b" + dependencies: + minimist "^1.2.0" + + bluebird@3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" + + bluebird@^3.3.0, bluebird@^3.4.7, bluebird@^3.5.0, bluebird@^3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" + + bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: + version "4.11.8" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" + + body-parser@1.18.2, body-parser@^1.16.1: + version "1.18.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" + dependencies: + bytes "3.0.0" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.1" + http-errors "~1.6.2" + iconv-lite "0.4.19" + on-finished "~2.3.0" + qs "6.5.1" + raw-body "2.3.2" + type-is "~1.6.15" + + bonjour@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" + dependencies: + array-flatten "^2.1.0" + deep-equal "^1.0.1" + dns-equal "^1.0.0" + dns-txt "^2.0.2" + multicast-dns "^6.0.1" + multicast-dns-service-types "^1.1.0" + + boolbase@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + + boom@2.x.x: + version "2.10.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" + dependencies: + hoek "2.x.x" + + boom@4.x.x: + version "4.3.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" + dependencies: + hoek "4.x.x" + + boom@5.x.x: + version "5.2.0" + resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" + dependencies: + hoek "4.x.x" + + bowser@^1.0.0, bowser@^1.7.3: + version "1.9.2" + resolved "https://registry.yarnpkg.com/bowser/-/bowser-1.9.2.tgz#d66fc868ca5f4ba895bee1363c343fe7b37d3394" + + brace-expansion@^1.0.0, brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + + braces@^0.1.2: + version "0.1.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-0.1.5.tgz#c085711085291d8b75fdd74eab0f8597280711e6" + dependencies: + expand-range "^0.1.0" + + braces@^1.8.2: + version "1.8.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" + dependencies: + expand-range "^1.8.1" + preserve "^0.2.0" + repeat-element "^1.1.2" + + braces@^2.3.0, braces@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.1.tgz#7086c913b4e5a08dbe37ac0ee6a2500c4ba691bb" + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + define-property "^1.0.0" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + kind-of "^6.0.2" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + + brcast@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/brcast/-/brcast-3.0.1.tgz#6256a8349b20de9eed44257a9b24d71493cd48dd" + + brorand@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + + browser-pack@^6.0.1: + version "6.0.3" + resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-6.0.3.tgz#91ca96518583ef580ab063a309de62e407767a39" + dependencies: + JSONStream "^1.0.3" + combine-source-map "~0.8.0" + defined "^1.0.0" + safe-buffer "^5.1.1" + through2 "^2.0.0" + umd "^3.0.0" + + browser-process-hrtime@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.2.tgz#425d68a58d3447f02a04aa894187fce8af8b7b8e" + + browser-resolve@^1.11.0, browser-resolve@^1.11.2, browser-resolve@^1.7.0: + version "1.11.2" + resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce" + dependencies: + resolve "1.1.7" + + browser-stdout@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" + + browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.1.1" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.1.1.tgz#38b7ab55edb806ff2dcda1a7f1620773a477c49f" + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + + browserify-cipher@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a" + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + + browserify-des@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd" + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + + browserify-rsa@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" + dependencies: + bn.js "^4.1.0" + randombytes "^2.0.1" + + browserify-sign@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" + dependencies: + bn.js "^4.1.1" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.2" + elliptic "^6.0.0" + inherits "^2.0.1" + parse-asn1 "^5.0.0" + + browserify-zlib@^0.2.0, browserify-zlib@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" + dependencies: + pako "~1.0.5" + + browserify@^14.5.0: + version "14.5.0" + resolved "https://registry.yarnpkg.com/browserify/-/browserify-14.5.0.tgz#0bbbce521acd6e4d1d54d8e9365008efb85a9cc5" + dependencies: + JSONStream "^1.0.3" + assert "^1.4.0" + browser-pack "^6.0.1" + browser-resolve "^1.11.0" + browserify-zlib "~0.2.0" + buffer "^5.0.2" + cached-path-relative "^1.0.0" + concat-stream "~1.5.1" + console-browserify "^1.1.0" + constants-browserify "~1.0.0" + crypto-browserify "^3.0.0" + defined "^1.0.0" + deps-sort "^2.0.0" + domain-browser "~1.1.0" + duplexer2 "~0.1.2" + events "~1.1.0" + glob "^7.1.0" + has "^1.0.0" + htmlescape "^1.1.0" + https-browserify "^1.0.0" + inherits "~2.0.1" + insert-module-globals "^7.0.0" + labeled-stream-splicer "^2.0.0" + module-deps "^4.0.8" + os-browserify "~0.3.0" + parents "^1.0.1" + path-browserify "~0.0.0" + process "~0.11.0" + punycode "^1.3.2" + querystring-es3 "~0.2.0" + read-only-stream "^2.0.0" + readable-stream "^2.0.2" + resolve "^1.1.4" + shasum "^1.0.0" + shell-quote "^1.6.1" + stream-browserify "^2.0.0" + stream-http "^2.0.0" + string_decoder "~1.0.0" + subarg "^1.0.0" + syntax-error "^1.1.1" + through2 "^2.0.0" + timers-browserify "^1.0.1" + tty-browserify "~0.0.0" + url "~0.11.0" + util "~0.10.1" + vm-browserify "~0.0.1" + xtend "^4.0.0" + + browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6: + version "1.7.7" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9" + dependencies: + caniuse-db "^1.0.30000639" + electron-to-chromium "^1.2.7" + + browserslist@^2.1.2, browserslist@^2.11.1, browserslist@^2.11.3: + version "2.11.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.11.3.tgz#fe36167aed1bbcde4827ebfe71347a2cc70b99b2" + dependencies: + caniuse-lite "^1.0.30000792" + electron-to-chromium "^1.3.30" + + bser@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" + dependencies: + node-int64 "^0.4.0" + + buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + + buffer-indexof@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" + + buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + + buffer@^4.3.0: + version "4.9.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + + buffer@^5.0.2: + version "5.0.8" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.0.8.tgz#84daa52e7cf2fa8ce4195bc5cf0f7809e0930b24" + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + + buildmail@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/buildmail/-/buildmail-4.0.1.tgz#877f7738b78729871c9a105e3b837d2be11a7a72" + dependencies: + addressparser "1.0.1" + libbase64 "0.1.0" + libmime "3.0.0" + libqp "1.1.0" + nodemailer-fetch "1.6.0" + nodemailer-shared "1.1.0" + punycode "1.4.1" + + builtin-modules@^1.0.0, builtin-modules@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" + + builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + + bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + + cacache@^10.0.1: + version "10.0.2" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.2.tgz#105a93a162bbedf3a25da42e1939ed99ffb145f8" + dependencies: + bluebird "^3.5.0" + chownr "^1.0.1" + glob "^7.1.2" + graceful-fs "^4.1.11" + lru-cache "^4.1.1" + mississippi "^1.3.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.1" + ssri "^5.0.0" + unique-filename "^1.1.0" + y18n "^3.2.1" + + cacache@^10.0.4: + version "10.0.4" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" + dependencies: + bluebird "^3.5.1" + chownr "^1.0.1" + glob "^7.1.2" + graceful-fs "^4.1.11" + lru-cache "^4.1.1" + mississippi "^2.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.2" + ssri "^5.2.4" + unique-filename "^1.1.0" + y18n "^4.0.0" + + cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + + cache-loader@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-1.2.2.tgz#6d5c38ded959a09cc5d58190ab5af6f73bd353f5" + dependencies: + loader-utils "^1.1.0" + mkdirp "^0.5.1" + neo-async "^2.5.0" + schema-utils "^0.4.2" + + cached-path-relative@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cached-path-relative/-/cached-path-relative-1.0.1.tgz#d09c4b52800aa4c078e2dd81a869aac90d2e54e7" + + callsite@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" + + callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + + camel-case@3.0.x: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" + dependencies: + no-case "^2.2.0" + upper-case "^1.1.1" + + camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + + camelcase@^1.0.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" + + camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + + camelcase@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" + + camelcase@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + + caniuse-api@^1.5.2: + version "1.6.1" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c" + dependencies: + browserslist "^1.3.6" + caniuse-db "^1.0.30000529" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" + + caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: + version "1.0.30000792" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000792.tgz#a7dac6dc9f5181b675fd69e5cb06fefb523157f8" + + caniuse-lite@^1.0.30000791, caniuse-lite@^1.0.30000792: + version "1.0.30000792" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000792.tgz#d0cea981f8118f3961471afbb43c9a1e5bbf0332" + + caniuse-lite@^1.0.30000805: + version "1.0.30000813" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000813.tgz#7b25e27fdfb8d133f3c932b01f77452140fcc6c9" + + case-sensitive-paths-webpack-plugin@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.1.1.tgz#3d29ced8c1f124bf6f53846fb3f5894731fdc909" + + caseless@~0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" + + caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + + center-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" + dependencies: + align-text "^0.1.3" + lazy-cache "^1.0.3" + + chain-function@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/chain-function/-/chain-function-1.0.0.tgz#0d4ab37e7e18ead0bdc47b920764118ce58733dc" + + chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + + chalk@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + + chalk@2.3.0, chalk@^2.0.0, chalk@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + + chalk@^2.0.1, chalk@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.2.tgz#250dc96b07491bfd601e648d66ddf5f60c7a5c65" + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + + chalk@~2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.2.2.tgz#4403f5cf18f35c05f51fbdf152bf588f956cf7cb" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + + chardet@^0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" + + check-more-types@2.24.0: + version "2.24.0" + resolved "https://registry.yarnpkg.com/check-more-types/-/check-more-types-2.24.0.tgz#1420ffb10fd444dcfc79b43891bbfffd32a84600" + + chokidar@^1.4.1, chokidar@^1.4.2, chokidar@^1.6.0, chokidar@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" + dependencies: + anymatch "^1.3.0" + async-each "^1.0.0" + glob-parent "^2.0.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^2.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + optionalDependencies: + fsevents "^1.0.0" + + chokidar@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.2.tgz#4dc65139eeb2714977735b6a35d06e97b494dfd7" + dependencies: + anymatch "^2.0.0" + async-each "^1.0.0" + braces "^2.3.0" + glob-parent "^3.1.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^4.0.0" + normalize-path "^2.1.1" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + upath "^1.0.0" + optionalDependencies: + fsevents "^1.0.0" + + chownr@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" + + ci-info@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.2.tgz#03561259db48d0474c8bdc90f5b47b068b6bbfb4" + + cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + + circular-dependency-plugin@^4.2.1: + version "4.4.0" + resolved "https://registry.yarnpkg.com/circular-dependency-plugin/-/circular-dependency-plugin-4.4.0.tgz#f8a1a746a3f6c8e57f4dae9b54d991cd2a582f5d" + + circular-json@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.4.0.tgz#c448ea998b7fe31ecf472ec29c6b608e2e2a62fd" + + clap@^1.0.9: + version "1.2.3" + resolved "https://registry.yarnpkg.com/clap/-/clap-1.2.3.tgz#4f36745b32008492557f46412d66d50cb99bce51" + dependencies: + chalk "^1.1.3" + + class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + + classnames@^2.2.5: + version "2.2.5" + resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.5.tgz#fb3801d453467649ef3603c7d61a02bd129bde6d" + + clean-css@4.1.x: + version "4.1.9" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.1.9.tgz#35cee8ae7687a49b98034f70de00c4edd3826301" + dependencies: + source-map "0.5.x" + + clean-css@^4.1.11: + version "4.1.11" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.1.11.tgz#2ecdf145aba38f54740f26cefd0ff3e03e125d6a" + dependencies: + source-map "0.5.x" + + cli-cursor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" + dependencies: + restore-cursor "^1.0.1" + + cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + dependencies: + restore-cursor "^2.0.0" + + cli-spinners@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c" + + cli-truncate@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" + dependencies: + slice-ansi "0.0.4" + string-width "^1.0.1" + + cli-width@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" + + cliui@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" + dependencies: + center-align "^0.1.1" + right-align "^0.1.1" + wordwrap "0.0.2" + + cliui@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi "^2.0.0" + + cliui@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.0.0.tgz#743d4650e05f36d1ed2575b59638d87322bfbbcc" + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrap-ansi "^2.0.0" + + clone-deep@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" + dependencies: + for-own "^1.0.0" + is-plain-object "^2.0.4" + kind-of "^6.0.0" + shallow-clone "^1.0.0" + + clone@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.3.tgz#298d7e2231660f40c003c2ed3140decf3f53085f" + + clone@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb" + + co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + + co@~3.0.6: + version "3.0.6" + resolved "https://registry.yarnpkg.com/co/-/co-3.0.6.tgz#1445f226c5eb956138e68c9ac30167ea7d2e6bda" + + coa@~1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.4.tgz#a9ef153660d6a86a8bdec0289a5c684d217432fd" + dependencies: + q "^1.1.2" + + code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + + codelyzer@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/codelyzer/-/codelyzer-4.0.2.tgz#d5e2390b97d95e73a7b1e6f0cf03e16cbf35b06f" + dependencies: + app-root-path "^2.0.1" + css-selector-tokenizer "^0.7.0" + cssauron "^1.4.0" + semver-dsl "^1.0.1" + source-map "^0.5.6" + sprintf-js "^1.0.3" + + collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + + color-convert@^1.3.0, color-convert@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" + dependencies: + color-name "^1.1.1" + + color-name@^1.0.0, color-name@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + + color-string@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-0.3.0.tgz#27d46fb67025c5c2fa25993bfbf579e47841b991" + dependencies: + color-name "^1.0.0" + + color@^0.11.0: + version "0.11.4" + resolved "https://registry.yarnpkg.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764" + dependencies: + clone "^1.0.2" + color-convert "^1.3.0" + color-string "^0.3.0" + + colormin@^1.0.5: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colormin/-/colormin-1.1.2.tgz#ea2f7420a72b96881a38aae59ec124a6f7298133" + dependencies: + color "^0.11.0" + css-color-names "0.0.4" + has "^1.0.1" + + colors@1.1.2, colors@^1.1.0, colors@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" + + combine-lists@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/combine-lists/-/combine-lists-1.0.1.tgz#458c07e09e0d900fc28b70a3fec2dacd1d2cb7f6" + dependencies: + lodash "^4.5.0" + + combine-source-map@~0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.7.2.tgz#0870312856b307a87cc4ac486f3a9a62aeccc09e" + dependencies: + convert-source-map "~1.1.0" + inline-source-map "~0.6.0" + lodash.memoize "~3.0.3" + source-map "~0.5.3" + + combine-source-map@~0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.8.0.tgz#a58d0df042c186fcf822a8e8015f5450d2d79a8b" + dependencies: + convert-source-map "~1.1.0" + inline-source-map "~0.6.0" + lodash.memoize "~3.0.3" + source-map "~0.5.3" + + combined-stream@^1.0.5, combined-stream@~1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" + dependencies: + delayed-stream "~1.0.0" + + commander@2.11.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" + + commander@2.12.x: + version "2.12.2" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555" + + commander@2.14.x, commander@^2.14.1: + version "2.14.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.14.1.tgz#2235123e37af8ca3c65df45b026dbd357b01b9aa" + + commander@2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" + dependencies: + graceful-readlink ">= 1.0.0" + + commander@^2.12.1, commander@^2.9.0, commander@~2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" + + common-tags@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.4.0.tgz#1187be4f3d4cf0c0427d43f74eef1f73501614c0" + dependencies: + babel-runtime "^6.18.0" + + common-tags@^1.3.1, common-tags@^1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.7.2.tgz#24d9768c63d253a56ecff93845b44b4df1d52771" + dependencies: + babel-runtime "^6.26.0" + + commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + + component-bind@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" + + component-emitter@1.2.1, component-emitter@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" + + component-inherit@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143" + + compressible@~2.0.11: + version "2.0.12" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.12.tgz#c59a5c99db76767e9876500e271ef63b3493bd66" + dependencies: + mime-db ">= 1.30.0 < 2" + + compression@^1.5.2: + version "1.7.1" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.1.tgz#eff2603efc2e22cf86f35d2eb93589f9875373db" + dependencies: + accepts "~1.3.4" + bytes "3.0.0" + compressible "~2.0.11" + debug "2.6.9" + on-headers "~1.0.1" + safe-buffer "5.1.1" + vary "~1.1.2" + + concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + + concat-stream@1.6.0, concat-stream@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" + dependencies: + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + + concat-stream@~1.5.0, concat-stream@~1.5.1: + version "1.5.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.5.2.tgz#708978624d856af41a5a741defdd261da752c266" + dependencies: + inherits "~2.0.1" + readable-stream "~2.0.0" + typedarray "~0.0.5" + + configstore@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.1.tgz#094ee662ab83fad9917678de114faaea8fcdca90" + dependencies: + dot-prop "^4.1.0" + graceful-fs "^4.1.2" + make-dir "^1.0.0" + unique-string "^1.0.0" + write-file-atomic "^2.0.0" + xdg-basedir "^3.0.0" + + connect-history-api-fallback@^1.3.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" + + connect@^3.6.0: + version "3.6.5" + resolved "https://registry.yarnpkg.com/connect/-/connect-3.6.5.tgz#fb8dde7ba0763877d0ec9df9dac0b4b40e72c7da" + dependencies: + debug "2.6.9" + finalhandler "1.0.6" + parseurl "~1.3.2" + utils-merge "1.0.1" + + console-browserify@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" + dependencies: + date-now "^0.1.4" + + console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + + constants-browserify@^1.0.0, constants-browserify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + + content-disposition@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" + + content-type-parser@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7" + + content-type@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + + convert-source-map@^1.4.0, convert-source-map@^1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" + + convert-source-map@~1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.1.3.tgz#4829c877e9fe49b3161f3bf3673888e204699860" + + cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + + cookie@0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" + + copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + dependencies: + aproba "^1.1.1" + fs-write-stream-atomic "^1.0.8" + iferr "^0.1.5" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.0" + + copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + + copy-webpack-plugin@~4.4.1: + version "4.4.3" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.4.3.tgz#65d56fb9e1936b39e129f9aa2aec097ce1fd44be" + dependencies: + cacache "^10.0.1" + find-cache-dir "^1.0.0" + globby "^7.1.1" + is-glob "^4.0.0" + loader-utils "^1.1.0" + minimatch "^3.0.4" + p-limit "^1.0.0" + serialize-javascript "^1.4.0" + + core-js@^1.0.0: + version "1.2.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" + + core-js@^2.2.0, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: + version "2.5.3" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.3.tgz#8acc38345824f16d8365b7c9b4259168e8ed603e" + + core-object@^3.1.0: + version "3.1.5" + resolved "https://registry.yarnpkg.com/core-object/-/core-object-3.1.5.tgz#fa627b87502adc98045e44678e9a8ec3b9c0d2a9" + dependencies: + chalk "^2.0.0" + + core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + + cosmiconfig@^2.1.0, cosmiconfig@^2.1.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.2.2.tgz#6173cebd56fac042c1f4390edf7af6c07c7cb892" + dependencies: + is-directory "^0.3.1" + js-yaml "^3.4.3" + minimist "^1.2.0" + object-assign "^4.1.0" + os-homedir "^1.0.1" + parse-json "^2.2.0" + require-from-string "^1.1.0" + + cosmiconfig@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-4.0.0.tgz#760391549580bbd2df1e562bc177b13c290972dc" + dependencies: + is-directory "^0.3.1" + js-yaml "^3.9.0" + parse-json "^4.0.0" + require-from-string "^2.0.1" + + cpx@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/cpx/-/cpx-1.5.0.tgz#185be018511d87270dedccc293171e37655ab88f" + dependencies: + babel-runtime "^6.9.2" + chokidar "^1.6.0" + duplexer "^0.1.1" + glob "^7.0.5" + glob2base "^0.0.12" + minimatch "^3.0.2" + mkdirp "^0.5.1" + resolve "^1.1.7" + safe-buffer "^5.0.1" + shell-quote "^1.6.1" + subarg "^1.0.0" + + create-ecdh@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" + dependencies: + bn.js "^4.1.0" + elliptic "^6.0.0" + + create-hash@^1.1.0, create-hash@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + ripemd160 "^2.0.0" + sha.js "^2.4.0" + + create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: + version "1.1.6" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + + create-react-class@^15.5.2, create-react-class@^15.6.2: + version "15.6.3" + resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.6.3.tgz#2d73237fb3f970ae6ebe011a9e66f46dbca80036" + dependencies: + fbjs "^0.8.9" + loose-envify "^1.3.1" + object-assign "^4.1.1" + + cross-env@^5.1.1: + version "5.1.3" + resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-5.1.3.tgz#f8ae18faac87692b0a8b4d2f7000d4ec3a85dfd7" + dependencies: + cross-spawn "^5.1.0" + is-windows "^1.0.0" + + cross-spawn@5.1.0, cross-spawn@^5.0.1, cross-spawn@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + + cross-spawn@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" + dependencies: + lru-cache "^4.0.1" + which "^1.2.9" + + cryptiles@2.x.x: + version "2.0.5" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" + dependencies: + boom "2.x.x" + + cryptiles@3.x.x: + version "3.1.2" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" + dependencies: + boom "5.x.x" + + crypto-browserify@^3.0.0, crypto-browserify@^3.11.0: + version "3.12.0" + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" + dependencies: + browserify-cipher "^1.0.0" + browserify-sign "^4.0.0" + create-ecdh "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.0" + diffie-hellman "^5.0.0" + inherits "^2.0.1" + pbkdf2 "^3.0.3" + public-encrypt "^4.0.0" + randombytes "^2.0.0" + randomfill "^1.0.3" + + 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" + + css-color-names@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" + + css-in-js-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/css-in-js-utils/-/css-in-js-utils-2.0.0.tgz#5af1dd70f4b06b331f48d22a3d86e0786c0b9435" + dependencies: + hyphenate-style-name "^1.0.2" + + css-loader@^0.28.9: + version "0.28.10" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.28.10.tgz#40282e79230f7bcb4e483efa631d670b735ebf42" + dependencies: + babel-code-frame "^6.26.0" + css-selector-tokenizer "^0.7.0" + cssnano "^3.10.0" + icss-utils "^2.1.0" + loader-utils "^1.0.2" + lodash.camelcase "^4.3.0" + object-assign "^4.1.1" + postcss "^5.0.6" + postcss-modules-extract-imports "^1.2.0" + postcss-modules-local-by-default "^1.2.0" + postcss-modules-scope "^1.1.0" + postcss-modules-values "^1.3.0" + postcss-value-parser "^3.3.0" + source-list-map "^2.0.0" + + css-parse@1.7.x: + version "1.7.0" + resolved "https://registry.yarnpkg.com/css-parse/-/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b" + + css-select@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" + dependencies: + boolbase "~1.0.0" + css-what "2.1" + domutils "1.5.1" + nth-check "~1.0.1" + + css-selector-tokenizer@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86" + dependencies: + cssesc "^0.1.0" + fastparse "^1.1.1" + regexpu-core "^1.0.0" + + css-what@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" + + cssauron@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/cssauron/-/cssauron-1.4.0.tgz#a6602dff7e04a8306dc0db9a551e92e8b5662ad8" + dependencies: + through X.X.X + + cssesc@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" + + cssnano@^3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38" + dependencies: + autoprefixer "^6.3.1" + decamelize "^1.1.2" + defined "^1.0.0" + has "^1.0.1" + object-assign "^4.0.1" + postcss "^5.0.14" + postcss-calc "^5.2.0" + postcss-colormin "^2.1.8" + postcss-convert-values "^2.3.4" + postcss-discard-comments "^2.0.4" + postcss-discard-duplicates "^2.0.1" + postcss-discard-empty "^2.0.1" + postcss-discard-overridden "^0.1.1" + postcss-discard-unused "^2.2.1" + postcss-filter-plugins "^2.0.0" + postcss-merge-idents "^2.1.5" + postcss-merge-longhand "^2.0.1" + postcss-merge-rules "^2.0.3" + postcss-minify-font-values "^1.0.2" + postcss-minify-gradients "^1.0.1" + postcss-minify-params "^1.0.4" + postcss-minify-selectors "^2.0.4" + postcss-normalize-charset "^1.1.0" + postcss-normalize-url "^3.0.7" + postcss-ordered-values "^2.1.0" + postcss-reduce-idents "^2.2.2" + postcss-reduce-initial "^1.0.0" + postcss-reduce-transforms "^1.0.3" + postcss-svgo "^2.1.1" + postcss-unique-selectors "^2.0.2" + postcss-value-parser "^3.2.3" + postcss-zindex "^2.0.1" + + csso@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85" + dependencies: + clap "^1.0.9" + source-map "^0.5.3" + + cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": + version "0.3.2" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b" + + "cssstyle@>= 0.2.37 < 0.3.0": + version "0.2.37" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54" + dependencies: + cssom "0.3.x" + + cuint@latest: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cuint/-/cuint-0.2.2.tgz#408086d409550c2631155619e9fa7bcadc3b991b" + + currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + dependencies: + array-find-index "^1.0.1" + + custom-event@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.1.tgz#5d02a46850adf1b4a317946a3928fccb5bfd0425" + + cyclist@~0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" + + cypress@1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/cypress/-/cypress-1.4.2.tgz#d957d631617aa87e64a7eae71502f2e175076638" + dependencies: + "@cypress/listr-verbose-renderer" "0.4.1" + "@cypress/xvfb" "1.1.3" + "@types/blob-util" "1.3.3" + "@types/bluebird" "3.5.18" + "@types/chai" "4.0.8" + "@types/chai-jquery" "1.1.35" + "@types/jquery" "3.2.16" + "@types/lodash" "4.14.87" + "@types/minimatch" "3.0.1" + "@types/mocha" "2.2.44" + "@types/sinon" "4.0.0" + "@types/sinon-chai" "2.7.29" + bluebird "3.5.0" + chalk "2.1.0" + check-more-types "2.24.0" + commander "2.11.0" + common-tags "1.4.0" + debug "3.1.0" + extract-zip "1.6.6" + fs-extra "4.0.1" + getos "2.8.4" + glob "7.1.2" + is-ci "1.0.10" + is-installed-globally "0.1.0" + lazy-ass "1.6.0" + listr "0.12.0" + lodash "4.17.4" + minimist "1.2.0" + progress "1.1.8" + ramda "0.24.1" + request "2.81.0" + request-progress "0.3.1" + supports-color "5.1.0" + tmp "0.0.31" + url "0.11.0" + yauzl "2.8.0" + + d@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" + dependencies: + es5-ext "^0.10.9" + + dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + dependencies: + assert-plus "^1.0.0" + + data-uri-to-buffer@1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz#77163ea9c20d8641b4707e8f18abdf9a78f34835" + + date-fns@^1.27.2: + version "1.29.0" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6" + + date-format@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/date-format/-/date-format-1.2.0.tgz#615e828e233dd1ab9bb9ae0950e0ceccfa6ecad8" + + date-now@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" + + dateformat@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" + + deasync@^0.1.8: + version "0.1.12" + resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.12.tgz#0159492a4133ab301d6c778cf01e74e63b10e549" + dependencies: + bindings "~1.2.1" + nan "^2.0.7" + + debug@*, debug@3.1.0, debug@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + dependencies: + ms "2.0.0" + + debug@2, debug@2.6.9, debug@^2.1.3, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8, debug@~2.6.4, debug@~2.6.6, debug@~2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + dependencies: + ms "2.0.0" + + debug@2.6.8: + version "2.6.8" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" + dependencies: + ms "2.0.0" + + debug@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" + dependencies: + ms "0.7.1" + + decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + + decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + + deep-equal@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + + deep-extend@~0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" + + deep-is@~0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + + default-require-extensions@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" + dependencies: + strip-bom "^2.0.0" + + define-properties@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" + dependencies: + foreach "^2.0.5" + object-keys "^1.0.8" + + define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + dependencies: + is-descriptor "^0.1.0" + + define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + dependencies: + is-descriptor "^1.0.0" + + define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + + defined@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" + + degenerator@~1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-1.0.4.tgz#fcf490a37ece266464d9cc431ab98c5819ced095" + dependencies: + ast-types "0.x.x" + escodegen "1.x.x" + esprima "3.x.x" + + del@^2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" + dependencies: + globby "^5.0.0" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + rimraf "^2.2.8" + + del@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" + dependencies: + globby "^6.1.0" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + p-map "^1.1.1" + pify "^3.0.0" + rimraf "^2.2.8" + + delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + + delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + + denodeify@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/denodeify/-/denodeify-1.2.1.tgz#3a36287f5034e699e7577901052c2e6c94251631" + + depd@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" + + depd@~1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + + deps-sort@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-2.0.0.tgz#091724902e84658260eb910748cccd1af6e21fb5" + dependencies: + JSONStream "^1.0.3" + shasum "^1.0.0" + subarg "^1.0.0" + through2 "^2.0.0" + + des.js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + + destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + + detect-indent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" + dependencies: + repeating "^2.0.0" + + detect-libc@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + + detect-newline@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" + + detect-node@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" + + detect-port-alt@1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.5.tgz#a1aa8fc805a4a5df9b905b7ddc7eed036bcce889" + dependencies: + address "^1.0.1" + debug "^2.6.0" + + detective@^4.0.0: + version "4.7.1" + resolved "https://registry.yarnpkg.com/detective/-/detective-4.7.1.tgz#0eca7314338442febb6d65da54c10bb1c82b246e" + dependencies: + acorn "^5.2.1" + defined "^1.0.0" + + di@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c" + + diff@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" + + diff@3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" + + diff@^3.1.0, diff@^3.2.0, diff@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.4.0.tgz#b1d85507daf3964828de54b37d0d73ba67dda56c" + + diffie-hellman@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e" + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + + dir-glob@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" + dependencies: + arrify "^1.0.1" + path-type "^3.0.0" + + dns-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" + + dns-packet@^1.0.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" + dependencies: + ip "^1.1.0" + safe-buffer "^5.0.1" + + dns-txt@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" + dependencies: + buffer-indexof "^1.0.0" + + doctrine@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + dependencies: + esutils "^2.0.2" + + dom-converter@~0.1: + version "0.1.4" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.1.4.tgz#a45ef5727b890c9bffe6d7c876e7b19cb0e17f3b" + dependencies: + utila "~0.3" + + dom-helpers@^3.2.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-3.3.1.tgz#fc1a4e15ffdf60ddde03a480a9c0fece821dd4a6" + + dom-serialize@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/dom-serialize/-/dom-serialize-2.2.1.tgz#562ae8999f44be5ea3076f5419dcd59eb43ac95b" + dependencies: + custom-event "~1.0.0" + ent "~2.2.0" + extend "^3.0.0" + void-elements "^2.0.0" + + dom-serializer@0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" + dependencies: + domelementtype "~1.1.1" + entities "~1.1.1" + + dom-walk@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" + + domain-browser@^1.1.1, domain-browser@~1.1.0: + version "1.1.7" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" + + domelementtype@1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" + + domelementtype@~1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" + + domexception@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" + dependencies: + webidl-conversions "^4.0.2" + + domhandler@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" + dependencies: + domelementtype "1" + + domutils@1.1: + version "1.1.6" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" + dependencies: + domelementtype "1" + + domutils@1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" + dependencies: + dom-serializer "0" + domelementtype "1" + + dot-prop@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" + dependencies: + is-obj "^1.0.0" + + dotenv-webpack@^1.5.4: + version "1.5.5" + resolved "https://registry.yarnpkg.com/dotenv-webpack/-/dotenv-webpack-1.5.5.tgz#3441094f04d304b6119e6b72524e62fb3252f5f2" + dependencies: + dotenv "^5.0.1" + + dotenv@^5.0.0, dotenv@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-5.0.1.tgz#a5317459bd3d79ab88cff6e44057a6a3fbb1fcef" + + double-ended-queue@^2.1.0-0: + version "2.1.0-0" + resolved "https://registry.yarnpkg.com/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz#103d3527fd31528f40188130c841efdd78264e5c" + + duplexer2@^0.1.2, duplexer2@~0.1.0, duplexer2@~0.1.2: + version "0.1.4" + resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" + dependencies: + readable-stream "^2.0.2" + + duplexer@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" + + duplexify@^3.4.2, duplexify@^3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.3.tgz#8b5818800df92fd0125b27ab896491912858243e" + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + + ecc-jsbn@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" + dependencies: + jsbn "~0.1.0" + + ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + + ejs@^2.5.7: + version "2.5.7" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.7.tgz#cc872c168880ae3c7189762fd5ffc00896c9518a" + + electron-download@^3.0.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/electron-download/-/electron-download-3.3.0.tgz#2cfd54d6966c019c4d49ad65fbe65cc9cdef68c8" + dependencies: + debug "^2.2.0" + fs-extra "^0.30.0" + home-path "^1.0.1" + minimist "^1.2.0" + nugget "^2.0.0" + path-exists "^2.1.0" + rc "^1.1.2" + semver "^5.3.0" + sumchecker "^1.2.0" + + electron-releases@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/electron-releases/-/electron-releases-2.1.0.tgz#c5614bf811f176ce3c836e368a0625782341fd4e" + + electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.30: + version "1.3.30" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.30.tgz#9666f532a64586651fc56a72513692e820d06a80" + dependencies: + electron-releases "^2.1.0" + + electron@^1.8.3: + version "1.8.3" + resolved "https://registry.yarnpkg.com/electron/-/electron-1.8.3.tgz#001416ea3a25ce594e317cb5531bc41eadd22f7f" + dependencies: + "@types/node" "^8.0.24" + electron-download "^3.0.1" + extract-zip "^1.0.3" + + elegant-spinner@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" + + elliptic@^6.0.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + + ember-cli-string-utils@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ember-cli-string-utils/-/ember-cli-string-utils-1.1.0.tgz#39b677fc2805f55173735376fcef278eaa4452a1" + + emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" + + encodeurl@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" + + encoding@^0.1.11: + version "0.1.12" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + dependencies: + iconv-lite "~0.4.13" + + end-of-stream@^1.0.0, end-of-stream@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" + dependencies: + once "^1.4.0" + + engine.io-client@~3.1.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.1.4.tgz#4fcf1370b47163bd2ce9be2733972430350d4ea1" + dependencies: + component-emitter "1.2.1" + component-inherit "0.0.3" + debug "~2.6.9" + engine.io-parser "~2.1.1" + has-cors "1.1.0" + indexof "0.0.1" + parseqs "0.0.5" + parseuri "0.0.5" + ws "~3.3.1" + xmlhttprequest-ssl "~1.5.4" + yeast "0.1.2" + + engine.io-parser@~2.1.0, engine.io-parser@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.1.2.tgz#4c0f4cff79aaeecbbdcfdea66a823c6085409196" + dependencies: + after "0.8.2" + arraybuffer.slice "~0.0.7" + base64-arraybuffer "0.1.5" + blob "0.0.4" + has-binary2 "~1.0.2" + + engine.io@~3.1.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-3.1.4.tgz#3d0211b70a552ce841ffc7da8627b301a9a4162e" + dependencies: + accepts "1.3.3" + base64id "1.0.0" + cookie "0.3.1" + debug "~2.6.9" + engine.io-parser "~2.1.0" + ws "~3.3.1" + optionalDependencies: + uws "~0.14.4" + + enhanced-resolve@^3.0.0, enhanced-resolve@^3.1.0, enhanced-resolve@^3.4.0: + version "3.4.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e" + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.4.0" + object-assign "^4.0.1" + tapable "^0.2.7" + + ent@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" + + entities@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" + + errno@^0.1.1, errno@^0.1.3, errno@^0.1.4: + version "0.1.6" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.6.tgz#c386ce8a6283f14fc09563b71560908c9bf53026" + dependencies: + prr "~1.0.1" + + error-ex@^1.2.0, error-ex@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" + dependencies: + is-arrayish "^0.2.1" + + es-abstract@^1.10.0, es-abstract@^1.4.3, es-abstract@^1.5.1, es-abstract@^1.6.1, es-abstract@^1.7.0, es-abstract@^1.9.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.10.0.tgz#1ecb36c197842a00d8ee4c2dfd8646bb97d60864" + dependencies: + es-to-primitive "^1.1.1" + function-bind "^1.1.1" + has "^1.0.1" + is-callable "^1.1.3" + is-regex "^1.0.4" + + es-to-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" + dependencies: + is-callable "^1.1.1" + is-date-object "^1.0.1" + is-symbol "^1.0.1" + + es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: + version "0.10.37" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.37.tgz#0ee741d148b80069ba27d020393756af257defc3" + dependencies: + es6-iterator "~2.0.1" + es6-symbol "~3.1.1" + + es5-shim@^4.5.10: + version "4.5.10" + resolved "https://registry.yarnpkg.com/es5-shim/-/es5-shim-4.5.10.tgz#b7e17ef4df2a145b821f1497b50c25cf94026205" + + es6-iterator@^2.0.1, es6-iterator@~2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" + dependencies: + d "1" + es5-ext "^0.10.35" + es6-symbol "^3.1.1" + + es6-map@^0.1.3: + version "0.1.5" + resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" + dependencies: + d "1" + es5-ext "~0.10.14" + es6-iterator "~2.0.1" + es6-set "~0.1.5" + es6-symbol "~3.1.1" + event-emitter "~0.3.5" + + es6-promise@^4.0.5: + version "4.2.4" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.4.tgz#dc4221c2b16518760bd8c39a52d8f356fc00ed29" + + es6-set@~0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" + dependencies: + d "1" + es5-ext "~0.10.14" + es6-iterator "~2.0.1" + es6-symbol "3.1.1" + event-emitter "~0.3.5" + + es6-shim@^0.35.3: + version "0.35.3" + resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.3.tgz#9bfb7363feffff87a6cdb6cd93e405ec3c4b6f26" + + es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" + dependencies: + d "1" + es5-ext "~0.10.14" + + es6-templates@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/es6-templates/-/es6-templates-0.2.3.tgz#5cb9ac9fb1ded6eb1239342b81d792bbb4078ee4" + dependencies: + recast "~0.11.12" + through "~2.3.6" + + es6-weak-map@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" + dependencies: + d "1" + es5-ext "^0.10.14" + es6-iterator "^2.0.1" + es6-symbol "^3.1.1" + + escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + + escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + + escodegen@1.x.x: + version "1.9.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852" + dependencies: + esprima "^3.1.3" + estraverse "^4.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.5.6" + + escodegen@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.1.tgz#dbae17ef96c8e4bedb1356f4504fa4cc2f7cb7e2" + dependencies: + esprima "^3.1.3" + estraverse "^4.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + + escope@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" + dependencies: + es6-map "^0.1.3" + es6-weak-map "^2.0.1" + esrecurse "^4.1.0" + estraverse "^4.1.1" + + esprima@3.x.x, esprima@^3.1.3, esprima@~3.1.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + + esprima@^2.6.0: + version "2.7.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" + + esprima@^4.0.0, esprima@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" + + esrecurse@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" + dependencies: + estraverse "^4.1.0" + object-assign "^4.0.1" + + estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" + + esutils@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" + + etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + + event-emitter@~0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" + dependencies: + d "1" + es5-ext "~0.10.14" + + eventemitter3@1.x.x: + version "1.2.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" + + events@^1.0.0, events@^1.1.1, events@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" + + eventsource@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" + dependencies: + original ">=0.0.5" + + evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + + exec-sh@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.1.tgz#163b98a6e89e6b65b47c2a28d215bc1f63989c38" + dependencies: + merge "^1.1.3" + + execa@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + + exenv@^1.2.0, exenv@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d" + + exit-hook@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" + + exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + + expand-braces@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/expand-braces/-/expand-braces-0.1.2.tgz#488b1d1d2451cb3d3a6b192cfc030f44c5855fea" + dependencies: + array-slice "^0.2.3" + array-unique "^0.2.1" + braces "^0.1.2" + + expand-brackets@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" + dependencies: + is-posix-bracket "^0.1.0" + + expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + + expand-range@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-0.1.1.tgz#4cb8eda0993ca56fa4f41fc42f3cbb4ccadff044" + dependencies: + is-number "^0.1.1" + repeat-string "^0.2.2" + + expand-range@^1.8.1: + version "1.8.2" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" + dependencies: + fill-range "^2.1.0" + + expand-tilde@^2.0.0, expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + dependencies: + homedir-polyfill "^1.0.1" + + expect@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-22.4.0.tgz#371edf1ae15b83b5bf5ec34b42f1584660a36c16" + dependencies: + ansi-styles "^3.2.0" + jest-diff "^22.4.0" + jest-get-type "^22.1.0" + jest-matcher-utils "^22.4.0" + jest-message-util "^22.4.0" + jest-regex-util "^22.1.0" + + express@^4.15.3, express@^4.16.2: + version "4.16.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c" + dependencies: + accepts "~1.3.4" + array-flatten "1.1.1" + body-parser "1.18.2" + content-disposition "0.5.2" + content-type "~1.0.4" + cookie "0.3.1" + cookie-signature "1.0.6" + debug "2.6.9" + depd "~1.1.1" + encodeurl "~1.0.1" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "1.1.0" + fresh "0.5.2" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "~2.3.0" + parseurl "~1.3.2" + path-to-regexp "0.1.7" + proxy-addr "~2.0.2" + qs "6.5.1" + range-parser "~1.2.0" + safe-buffer "5.1.1" + send "0.16.1" + serve-static "1.13.1" + setprototypeof "1.1.0" + statuses "~1.3.1" + type-is "~1.6.15" + utils-merge "1.0.1" + vary "~1.1.2" + + extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + dependencies: + is-extendable "^0.1.0" + + extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + + extend@3, 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" + + external-editor@^2.0.4: + version "2.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48" + dependencies: + chardet "^0.4.0" + iconv-lite "^0.4.17" + tmp "^0.0.33" + + extglob@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" + dependencies: + is-extglob "^1.0.0" + + extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + + extract-text-webpack-plugin@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz#5f043eaa02f9750a9258b78c0a6e0dc1408fb2f7" + dependencies: + async "^2.4.1" + loader-utils "^1.1.0" + schema-utils "^0.3.0" + webpack-sources "^1.0.1" + + extract-zip@1.6.6, extract-zip@^1.0.3: + version "1.6.6" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.6.tgz#1290ede8d20d0872b429fd3f351ca128ec5ef85c" + dependencies: + concat-stream "1.6.0" + debug "2.6.9" + mkdirp "0.5.0" + yauzl "2.4.1" + + extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + + extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + + fast-deep-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" + + fast-json-stable-stringify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + + fast-levenshtein@~2.0.4: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + + fast-memoize@^2.2.7: + version "2.3.0" + resolved "https://registry.yarnpkg.com/fast-memoize/-/fast-memoize-2.3.0.tgz#d7f81dc864489f582e30538923c423d85887af32" + + fastparse@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8" + + faye-websocket@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + dependencies: + websocket-driver ">=0.5.1" + + faye-websocket@~0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" + dependencies: + websocket-driver ">=0.5.1" + + fb-watchman@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" + dependencies: + bser "^2.0.0" + + fbjs@^0.8.12, fbjs@^0.8.16, fbjs@^0.8.9: + version "0.8.16" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" + dependencies: + core-js "^1.0.0" + isomorphic-fetch "^2.1.1" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.9" + + fd-slicer@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65" + dependencies: + pend "~1.2.0" + + feather-icons@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/feather-icons/-/feather-icons-4.5.0.tgz#5c0a38fe4633e88a14cc8d7aa822e2591828027d" + dependencies: + classnames "^2.2.5" + + figures@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" + dependencies: + escape-string-regexp "^1.0.5" + object-assign "^4.1.0" + + figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + dependencies: + escape-string-regexp "^1.0.5" + + file-loader@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.6.tgz#7b9a8f2c58f00a77fddf49e940f7ac978a3ea0e8" + dependencies: + loader-utils "^1.0.2" + schema-utils "^0.3.0" + + file-loader@^1.1.8: + version "1.1.11" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.11.tgz#6fe886449b0f2a936e43cabaac0cdbfb369506f8" + dependencies: + loader-utils "^1.0.2" + schema-utils "^0.4.5" + + file-uri-to-path@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + + filename-regex@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" + + fileset@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" + dependencies: + glob "^7.0.3" + minimatch "^3.0.3" + + filesize@3.5.11: + version "3.5.11" + resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.5.11.tgz#1919326749433bb3cf77368bd158caabcc19e9ee" + + fill-range@^2.1.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" + dependencies: + is-number "^2.1.0" + isobject "^2.0.0" + randomatic "^1.1.3" + repeat-element "^1.1.2" + repeat-string "^1.5.2" + + fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + + finalhandler@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.6.tgz#007aea33d1a4d3e42017f624848ad58d212f814f" + dependencies: + debug "2.6.9" + encodeurl "~1.0.1" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.3.1" + unpipe "~1.0.0" + + finalhandler@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" + dependencies: + debug "2.6.9" + encodeurl "~1.0.1" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.3.1" + unpipe "~1.0.0" + + find-cache-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" + dependencies: + commondir "^1.0.1" + make-dir "^1.0.0" + pkg-dir "^2.0.0" + + find-index@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" + + find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + + find-up@^2.0.0, find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + dependencies: + locate-path "^2.0.0" + + flatten@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" + + flush-write-stream@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.2.tgz#c81b90d8746766f1a609a46809946c45dd8ae417" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.4" + + follow-redirects@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.0.0.tgz#8e34298cbd2e176f254effec75a1c78cc849fd37" + dependencies: + debug "^2.2.0" + + font-awesome@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133" + + for-in@^0.1.3: + version "0.1.8" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" + + for-in@^1.0.1, for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + + for-own@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" + dependencies: + for-in "^1.0.1" + + for-own@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" + dependencies: + for-in "^1.0.1" + + foreach@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" + + 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.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.0.0.tgz#6f0aebadcc5da16c13e1ecc11137d85f9b883b25" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.11" + + form-data@~2.1.1: + version "2.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + + form-data@~2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + + forwarded@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" + + fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + dependencies: + map-cache "^0.2.2" + + fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + + from2@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + + fs-access@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fs-access/-/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a" + dependencies: + null-check "^1.0.0" + + fs-extra@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.1.tgz#7fc0c6c8957f983f57f306a24e5b9ddd8d0dd880" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^3.0.0" + universalify "^0.1.0" + + fs-extra@4.0.3, fs-extra@^4.0.0, fs-extra@^4.0.2: + version "4.0.3" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + + fs-extra@^0.30.0: + version "0.30.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + klaw "^1.0.0" + path-is-absolute "^1.0.0" + rimraf "^2.2.8" + + fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + + fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + + fsevents@^1.0.0, fsevents@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8" + dependencies: + nan "^2.3.0" + node-pre-gyp "^0.6.39" + + fstream-ignore@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" + dependencies: + fstream "^1.0.0" + inherits "2" + minimatch "^3.0.0" + + fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + dependencies: + graceful-fs "^4.1.2" + inherits "~2.0.0" + mkdirp ">=0.5 0" + rimraf "2" + + fsu@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/fsu/-/fsu-1.0.4.tgz#586a8fbd8d19acdf330cecbcf17d641e9c370ba0" + + ftp@~0.3.10: + version "0.3.10" + resolved "https://registry.yarnpkg.com/ftp/-/ftp-0.3.10.tgz#9197d861ad8142f3e63d5a83bfe4c59f7330885d" + dependencies: + readable-stream "1.1.x" + xregexp "2.0.0" + + function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + + function.prototype.name@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327" + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + is-callable "^1.1.3" + + fuse.js@^3.0.1, fuse.js@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/fuse.js/-/fuse.js-3.2.0.tgz#f0448e8069855bf2a3e683cdc1d320e7e2a07ef4" + + gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + dependencies: + aproba "^1.0.3" + console-control-strings "^1.0.0" + has-unicode "^2.0.0" + object-assign "^4.1.0" + signal-exit "^3.0.0" + string-width "^1.0.1" + strip-ansi "^3.0.1" + wide-align "^1.1.0" + + gaze@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105" + dependencies: + globule "^1.0.0" + + generate-function@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" + + generate-object-property@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" + dependencies: + is-property "^1.0.0" + + get-caller-file@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" + + get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + + get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + + get-uri@2: + version "2.0.1" + resolved "https://registry.yarnpkg.com/get-uri/-/get-uri-2.0.1.tgz#dbdcacacd8c608a38316869368117697a1631c59" + dependencies: + data-uri-to-buffer "1" + debug "2" + extend "3" + file-uri-to-path "1" + ftp "~0.3.10" + readable-stream "2" + + get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + + getos@2.8.4: + version "2.8.4" + resolved "https://registry.yarnpkg.com/getos/-/getos-2.8.4.tgz#7b8603d3619c28e38cb0fe7a4f63c3acb80d5163" + dependencies: + async "2.1.4" + + getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + dependencies: + assert-plus "^1.0.0" + + glamor@^2.20.40: + version "2.20.40" + resolved "https://registry.yarnpkg.com/glamor/-/glamor-2.20.40.tgz#f606660357b7cf18dface731ad1a2cfa93817f05" + dependencies: + fbjs "^0.8.12" + inline-style-prefixer "^3.0.6" + object-assign "^4.1.1" + prop-types "^15.5.10" + through "^2.3.8" + + glamorous@^4.11.6: + version "4.12.0" + resolved "https://registry.yarnpkg.com/glamorous/-/glamorous-4.12.0.tgz#47b864326ca37e1f1ea6d523b3d23402f6657af1" + dependencies: + brcast "^3.0.0" + fast-memoize "^2.2.7" + html-tag-names "^1.1.1" + is-function "^1.0.1" + is-plain-object "^2.0.4" + react-html-attributes "^1.3.0" + svg-tag-names "^1.1.0" + + glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + dependencies: + glob-parent "^2.0.0" + is-glob "^2.0.0" + + glob-parent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" + dependencies: + is-glob "^2.0.0" + + glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + + glob2base@^0.0.12: + version "0.0.12" + resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" + dependencies: + find-index "^0.1.1" + + glob@7.0.x: + version "7.0.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.2" + once "^1.3.0" + path-is-absolute "^1.0.0" + + glob@7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.2" + once "^1.3.0" + path-is-absolute "^1.0.0" + + glob@7.1.2, glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.0.6, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + + glob@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + + global-dirs@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" + dependencies: + ini "^1.3.4" + + global-modules@1.0.0, global-modules@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" + dependencies: + global-prefix "^1.0.1" + is-windows "^1.0.1" + resolve-dir "^1.0.0" + + global-prefix@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" + dependencies: + expand-tilde "^2.0.2" + homedir-polyfill "^1.0.1" + ini "^1.3.4" + is-windows "^1.0.1" + which "^1.2.14" + + global@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" + dependencies: + min-document "^2.19.0" + process "~0.5.1" + + globals@^9.18.0: + version "9.18.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" + + globby@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" + dependencies: + array-union "^1.0.1" + arrify "^1.0.0" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + + globby@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + + globby@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" + dependencies: + array-union "^1.0.1" + dir-glob "^2.0.0" + glob "^7.1.2" + ignore "^3.3.5" + pify "^3.0.0" + slash "^1.0.0" + + globule@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09" + dependencies: + glob "~7.1.1" + lodash "~4.17.4" + minimatch "~3.0.2" + + graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9: + version "4.1.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + + "graceful-readlink@>= 1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" + + growl@1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" + + growl@1.9.2: + version "1.9.2" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.9.2.tgz#0ea7743715db8d8de2c5ede1775e1b45ac85c02f" + + growly@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + + gzip-size@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-3.0.0.tgz#546188e9bdc337f673772f81660464b389dce520" + dependencies: + duplexer "^0.1.1" + + handle-thing@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" + + handlebars@^4.0.3: + version "4.0.11" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.11.tgz#630a35dfe0294bc281edae6ffc5d329fc7982dcc" + dependencies: + async "^1.4.0" + optimist "^0.6.1" + source-map "^0.4.4" + optionalDependencies: + uglify-js "^2.6" + + har-schema@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + + har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + + har-validator@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" + dependencies: + chalk "^1.1.1" + commander "^2.9.0" + is-my-json-valid "^2.12.4" + pinkie-promise "^2.0.0" + + har-validator@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" + dependencies: + ajv "^4.9.1" + har-schema "^1.0.5" + + har-validator@~5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" + dependencies: + ajv "^5.1.0" + har-schema "^2.0.0" + + has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + dependencies: + ansi-regex "^2.0.0" + + has-binary2@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-binary2/-/has-binary2-1.0.2.tgz#e83dba49f0b9be4d026d27365350d9f03f54be98" + dependencies: + isarray "2.0.1" + + has-cors@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" + + has-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" + + has-flag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + + has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + + has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + + has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + + has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + + has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + + has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + + has@^1.0.0, has@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" + dependencies: + function-bind "^1.0.2" + + hash-base@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" + dependencies: + inherits "^2.0.1" + + hash-base@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + + hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.0" + + hawk@3.1.3, hawk@~3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" + dependencies: + boom "2.x.x" + cryptiles "2.x.x" + hoek "2.x.x" + sntp "1.x.x" + + hawk@~6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" + dependencies: + boom "4.x.x" + cryptiles "3.x.x" + hoek "4.x.x" + sntp "2.x.x" + + he@1.1.1, he@1.1.x: + version "1.1.1" + resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" + + hipchat-notifier@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/hipchat-notifier/-/hipchat-notifier-1.1.0.tgz#b6d249755437c191082367799d3ba9a0f23b231e" + dependencies: + lodash "^4.0.0" + request "^2.0.0" + + hmac-drbg@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + + hoek@2.x.x: + version "2.16.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" + + hoek@4.x.x: + version "4.2.0" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" + + hoist-non-react-statics@1.x.x, hoist-non-react-statics@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz#aa448cf0986d55cc40773b17174b7dd066cb7cfb" + + home-or-tmp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.1" + + home-path@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/home-path/-/home-path-1.0.5.tgz#788b29815b12d53bacf575648476e6f9041d133f" + + homedir-polyfill@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" + dependencies: + parse-passwd "^1.0.0" + + hosted-git-info@^2.1.4: + version "2.5.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" + + hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + readable-stream "^2.0.1" + wbuf "^1.1.0" + + html-comment-regex@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e" + + html-element-attributes@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/html-element-attributes/-/html-element-attributes-1.3.0.tgz#f06ebdfce22de979db82020265cac541fb17d4fc" + + html-encoding-sniffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" + dependencies: + whatwg-encoding "^1.0.1" + + html-entities@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" + + html-loader@^0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/html-loader/-/html-loader-0.5.5.tgz#6356dbeb0c49756d8ebd5ca327f16ff06ab5faea" + dependencies: + es6-templates "^0.2.3" + fastparse "^1.1.1" + html-minifier "^3.5.8" + loader-utils "^1.1.0" + object-assign "^4.1.1" + + html-minifier@^3.2.3: + version "3.5.8" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.8.tgz#5ccdb1f73a0d654e6090147511f6e6b2ee312700" + dependencies: + camel-case "3.0.x" + clean-css "4.1.x" + commander "2.12.x" + he "1.1.x" + ncname "1.0.x" + param-case "2.1.x" + relateurl "0.2.x" + uglify-js "3.3.x" + + html-minifier@^3.5.8: + version "3.5.10" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.10.tgz#8522c772c388db81aa5c26f62033302d906ea1c7" + dependencies: + camel-case "3.0.x" + clean-css "4.1.x" + commander "2.14.x" + he "1.1.x" + ncname "1.0.x" + param-case "2.1.x" + relateurl "0.2.x" + uglify-js "3.3.x" + + html-tag-names@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/html-tag-names/-/html-tag-names-1.1.2.tgz#f65168964c5a9c82675efda882875dcb2a875c22" + + html-webpack-plugin@^2.29.0, html-webpack-plugin@^2.30.1: + version "2.30.1" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.30.1.tgz#7f9c421b7ea91ec460f56527d78df484ee7537d5" + dependencies: + bluebird "^3.4.7" + html-minifier "^3.2.3" + loader-utils "^0.2.16" + lodash "^4.17.3" + pretty-error "^2.0.2" + toposort "^1.0.0" + + htmlescape@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351" + + htmlparser2@~3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" + dependencies: + domelementtype "1" + domhandler "2.1" + domutils "1.1" + readable-stream "1.0" + + http-deceiver@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + + http-errors@1.6.2, http-errors@~1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" + dependencies: + depd "1.1.1" + inherits "2.0.3" + setprototypeof "1.0.3" + statuses ">= 1.3.1 < 2" + + http-parser-js@>=0.4.0: + version "0.4.9" + resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.9.tgz#ea1a04fb64adff0242e9974f297dd4c3cad271e1" + + http-proxy-agent@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-1.0.0.tgz#cc1ce38e453bf984a0f7702d2dd59c73d081284a" + dependencies: + agent-base "2" + debug "2" + extend "3" + + http-proxy-middleware@~0.17.4: + version "0.17.4" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz#642e8848851d66f09d4f124912846dbaeb41b833" + dependencies: + http-proxy "^1.16.2" + is-glob "^3.1.0" + lodash "^4.17.2" + micromatch "^2.3.11" + + http-proxy@^1.13.0, http-proxy@^1.16.2: + version "1.16.2" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742" + dependencies: + eventemitter3 "1.x.x" + requires-port "1.x.x" + + http-signature@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" + dependencies: + assert-plus "^0.2.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + + http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + + httpntlm@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/httpntlm/-/httpntlm-1.6.1.tgz#ad01527143a2e8773cfae6a96f58656bb52a34b2" + dependencies: + httpreq ">=0.4.22" + underscore "~1.7.0" + + httpreq@>=0.4.22: + version "0.4.24" + resolved "https://registry.yarnpkg.com/httpreq/-/httpreq-0.4.24.tgz#4335ffd82cd969668a39465c929ac61d6393627f" + + https-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" + + https-proxy-agent@1, https-proxy-agent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz#35f7da6c48ce4ddbfa264891ac593ee5ff8671e6" + dependencies: + agent-base "2" + debug "2" + extend "3" + + hyphenate-style-name@^1.0.1, hyphenate-style-name@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.2.tgz#31160a36930adaf1fc04c6074f7eb41465d4ec4b" + + iconv-lite@0.4.15: + version "0.4.15" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" + + iconv-lite@0.4.19, iconv-lite@^0.4.17, iconv-lite@~0.4.13: + version "0.4.19" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" + + icss-replace-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" + + icss-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" + dependencies: + postcss "^6.0.1" + + ieee754@^1.1.4: + version "1.1.8" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" + + iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + + ignore@^3.3.5: + version "3.3.7" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" + + image-size@~0.5.0: + version "0.5.5" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" + + immutable@^3.8.1: + version "3.8.2" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz#c2439951455bb39913daf281376f1530e104adf3" + + import-local@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" + dependencies: + pkg-dir "^2.0.0" + resolve-cwd "^2.0.0" + + imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + + in-publish@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" + + indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + dependencies: + repeating "^2.0.0" + + indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + + indexes-of@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" + + indexof@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" + + inflection@~1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.10.0.tgz#5bffcb1197ad3e81050f8e17e21668087ee9eb2f" + + inflection@~1.3.0: + version "1.3.8" + resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.3.8.tgz#cbd160da9f75b14c3cc63578d4f396784bf3014e" + + inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + dependencies: + once "^1.3.0" + wrappy "1" + + inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + + inherits@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + + ini@^1.3.4, ini@~1.3.0: + version "1.3.5" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + + inline-source-map@~0.6.0: + version "0.6.2" + resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.6.2.tgz#f9393471c18a79d1724f863fa38b586370ade2a5" + dependencies: + source-map "~0.5.3" + + inline-style-prefixer@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-2.0.5.tgz#c153c7e88fd84fef5c602e95a8168b2770671fe7" + dependencies: + bowser "^1.0.0" + hyphenate-style-name "^1.0.1" + + inline-style-prefixer@^3.0.6: + version "3.0.8" + resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-3.0.8.tgz#8551b8e5b4d573244e66a34b04f7d32076a2b534" + dependencies: + bowser "^1.7.3" + css-in-js-utils "^2.0.0" + + inquirer@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" + dependencies: + ansi-escapes "^3.0.0" + chalk "^2.0.0" + cli-cursor "^2.1.0" + cli-width "^2.0.0" + external-editor "^2.0.4" + figures "^2.0.0" + lodash "^4.3.0" + mute-stream "0.0.7" + run-async "^2.2.0" + rx-lite "^4.0.8" + rx-lite-aggregates "^4.0.8" + string-width "^2.1.0" + strip-ansi "^4.0.0" + through "^2.3.6" + + insert-css@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/insert-css/-/insert-css-2.0.0.tgz#eb5d1097b7542f4c79ea3060d3aee07d053880f4" + + insert-module-globals@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/insert-module-globals/-/insert-module-globals-7.0.1.tgz#c03bf4e01cb086d5b5e5ace8ad0afe7889d638c3" + dependencies: + JSONStream "^1.0.3" + combine-source-map "~0.7.1" + concat-stream "~1.5.1" + is-buffer "^1.1.0" + lexical-scope "^1.2.0" + process "~0.11.0" + through2 "^2.0.0" + xtend "^4.0.0" + + internal-ip@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-1.2.0.tgz#ae9fbf93b984878785d50a8de1b356956058cf5c" + dependencies: + meow "^3.3.0" + + interpret@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" + + invariant@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" + dependencies: + loose-envify "^1.0.0" + + invert-kv@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + + ip@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.0.1.tgz#c7e356cdea225ae71b36d70f2e71a92ba4e42590" + + ip@^1.1.0, ip@^1.1.2, ip@^1.1.4, ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + + ipaddr.js@1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0" + + is-absolute-url@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" + + is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + dependencies: + kind-of "^3.0.2" + + is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + dependencies: + kind-of "^6.0.0" + + is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + + is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + dependencies: + binary-extensions "^1.0.0" + + is-buffer@^1.1.0, is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + + is-builtin-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" + dependencies: + builtin-modules "^1.0.0" + + is-callable@^1.1.1, is-callable@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" + + is-ci@1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" + dependencies: + ci-info "^1.0.0" + + is-ci@^1.0.10: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.1.0.tgz#247e4162e7860cebbdaf30b774d6b0ac7dcfe7a5" + dependencies: + ci-info "^1.0.0" + + is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + dependencies: + kind-of "^3.0.2" + + is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + dependencies: + kind-of "^6.0.0" + + is-date-object@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" + + is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + + is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + + is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + + is-dom@^1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/is-dom/-/is-dom-1.0.9.tgz#483832d52972073de12b9fe3f60320870da8370d" + + is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + + is-equal-shallow@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" + dependencies: + is-primitive "^2.0.0" + + is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + + is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + dependencies: + is-plain-object "^2.0.4" + + is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + + is-extglob@^2.1.0, is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + + is-finite@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" + dependencies: + number-is-nan "^1.0.0" + + is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + dependencies: + number-is-nan "^1.0.0" + + is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + + is-function@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" + + is-generator-fn@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" + + is-glob@^2.0.0, is-glob@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" + dependencies: + is-extglob "^1.0.0" + + is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + dependencies: + is-extglob "^2.1.0" + + is-glob@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" + dependencies: + is-extglob "^2.1.1" + + is-installed-globally@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80" + dependencies: + global-dirs "^0.1.0" + is-path-inside "^1.0.0" + + is-my-json-valid@^2.12.4: + version "2.17.1" + resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.1.tgz#3da98914a70a22f0a8563ef1511a246c6fc55471" + dependencies: + generate-function "^2.0.0" + generate-object-property "^1.1.0" + jsonpointer "^4.0.0" + xtend "^4.0.0" + + is-number@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-0.1.1.tgz#69a7af116963d47206ec9bd9b48a14216f1e3806" + + is-number@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" + dependencies: + kind-of "^3.0.2" + + is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + dependencies: + kind-of "^3.0.2" + + is-number@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" + + is-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" + + is-odd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" + dependencies: + is-number "^4.0.0" + + is-path-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" + + is-path-in-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" + dependencies: + is-path-inside "^1.0.0" + + is-path-inside@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" + dependencies: + path-is-inside "^1.0.1" + + is-plain-obj@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + + is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + dependencies: + isobject "^3.0.1" + + is-posix-bracket@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" + + is-primitive@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" + + is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" + + is-property@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" + + is-regex@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" + dependencies: + has "^1.0.1" + + is-root@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-root/-/is-root-1.0.0.tgz#07b6c233bc394cd9d02ba15c966bd6660d6342d5" + + is-stream@^1.0.1, is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + + is-svg@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9" + dependencies: + html-comment-regex "^1.1.0" + + is-symbol@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" + + is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + + is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + + is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + + is-wsl@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" + + isarray@0.0.1, isarray@~0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + + isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + + isarray@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" + + isbinaryfile@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.2.tgz#4a3e974ec0cba9004d3fc6cde7209ea69368a621" + + isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + + isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + dependencies: + isarray "1.0.0" + + isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + + isomorphic-fetch@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" + dependencies: + node-fetch "^1.0.1" + whatwg-fetch ">=0.10.0" + + isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + + istanbul-api@^1.1.14: + version "1.2.1" + resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.2.1.tgz#0c60a0515eb11c7d65c6b50bba2c6e999acd8620" + dependencies: + async "^2.1.4" + fileset "^2.0.2" + istanbul-lib-coverage "^1.1.1" + istanbul-lib-hook "^1.1.0" + istanbul-lib-instrument "^1.9.1" + istanbul-lib-report "^1.1.2" + istanbul-lib-source-maps "^1.2.2" + istanbul-reports "^1.1.3" + js-yaml "^3.7.0" + mkdirp "^0.5.1" + once "^1.4.0" + + istanbul-instrumenter-loader@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-3.0.0.tgz#9f553923b22360bac95e617aaba01add1f7db0b2" + dependencies: + convert-source-map "^1.5.0" + istanbul-lib-instrument "^1.7.3" + loader-utils "^1.1.0" + schema-utils "^0.3.0" + + istanbul-lib-coverage@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da" + + istanbul-lib-coverage@^1.1.2, istanbul-lib-coverage@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.0.tgz#f7d8f2e42b97e37fe796114cb0f9d68b5e3a4341" + + istanbul-lib-hook@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.1.0.tgz#8538d970372cb3716d53e55523dd54b557a8d89b" + dependencies: + append-transform "^0.4.0" + + istanbul-lib-instrument@^1.7.3, istanbul-lib-instrument@^1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.9.1.tgz#250b30b3531e5d3251299fdd64b0b2c9db6b558e" + dependencies: + babel-generator "^6.18.0" + babel-template "^6.16.0" + babel-traverse "^6.18.0" + babel-types "^6.18.0" + babylon "^6.18.0" + istanbul-lib-coverage "^1.1.1" + semver "^5.3.0" + + istanbul-lib-instrument@^1.7.5, istanbul-lib-instrument@^1.8.0: + version "1.10.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.1.tgz#724b4b6caceba8692d3f1f9d0727e279c401af7b" + dependencies: + babel-generator "^6.18.0" + babel-template "^6.16.0" + babel-traverse "^6.18.0" + babel-types "^6.18.0" + babylon "^6.18.0" + istanbul-lib-coverage "^1.2.0" + semver "^5.3.0" + + istanbul-lib-report@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.2.tgz#922be27c13b9511b979bd1587359f69798c1d425" + dependencies: + istanbul-lib-coverage "^1.1.1" + mkdirp "^0.5.1" + path-parse "^1.0.5" + supports-color "^3.1.2" + + istanbul-lib-source-maps@^1.2.1: + version "1.2.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.3.tgz#20fb54b14e14b3fb6edb6aca3571fd2143db44e6" + dependencies: + debug "^3.1.0" + istanbul-lib-coverage "^1.1.2" + mkdirp "^0.5.1" + rimraf "^2.6.1" + source-map "^0.5.3" + + istanbul-lib-source-maps@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.2.tgz#750578602435f28a0c04ee6d7d9e0f2960e62c1c" + dependencies: + debug "^3.1.0" + istanbul-lib-coverage "^1.1.1" + mkdirp "^0.5.1" + rimraf "^2.6.1" + source-map "^0.5.3" + + istanbul-reports@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.3.tgz#3b9e1e8defb6d18b1d425da8e8b32c5a163f2d10" + dependencies: + handlebars "^4.0.3" + + jasmine-core@~2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.8.0.tgz#bcc979ae1f9fd05701e45e52e65d3a5d63f1a24e" + + jasmine-spec-reporter@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz#1d632aec0341670ad324f92ba84b4b32b35e9e22" + dependencies: + colors "1.1.2" + + jasmine@^2.5.3: + version "2.8.0" + resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-2.8.0.tgz#6b089c0a11576b1f16df11b80146d91d4e8b8a3e" + dependencies: + exit "^0.1.2" + glob "^7.0.6" + jasmine-core "~2.8.0" + + jasminewd2@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/jasminewd2/-/jasminewd2-2.2.0.tgz#e37cf0b17f199cce23bea71b2039395246b4ec4e" + + jest-changed-files@^22.2.0: + version "22.2.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-22.2.0.tgz#517610c4a8ca0925bdc88b0ca53bd678aa8d019e" + dependencies: + throat "^4.0.0" + + jest-cli@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-22.4.2.tgz#e6546dc651e13d164481aa3e76e53ac4f4edab06" + dependencies: + ansi-escapes "^3.0.0" + chalk "^2.0.1" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.1.11" + import-local "^1.0.0" + is-ci "^1.0.10" + istanbul-api "^1.1.14" + istanbul-lib-coverage "^1.1.1" + istanbul-lib-instrument "^1.8.0" + istanbul-lib-source-maps "^1.2.1" + jest-changed-files "^22.2.0" + jest-config "^22.4.2" + jest-environment-jsdom "^22.4.1" + jest-get-type "^22.1.0" + jest-haste-map "^22.4.2" + jest-message-util "^22.4.0" + jest-regex-util "^22.1.0" + jest-resolve-dependencies "^22.1.0" + jest-runner "^22.4.2" + jest-runtime "^22.4.2" + jest-snapshot "^22.4.0" + jest-util "^22.4.1" + jest-validate "^22.4.2" + jest-worker "^22.2.2" + micromatch "^2.3.11" + node-notifier "^5.2.1" + realpath-native "^1.0.0" + rimraf "^2.5.4" + slash "^1.0.0" + string-length "^2.0.0" + strip-ansi "^4.0.0" + which "^1.2.12" + yargs "^10.0.3" + + jest-config@^22.4.0, jest-config@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-22.4.2.tgz#580ba5819bf81a5e48f4fd470e8b81834f45c855" + dependencies: + chalk "^2.0.1" + glob "^7.1.1" + jest-environment-jsdom "^22.4.1" + jest-environment-node "^22.4.1" + jest-get-type "^22.1.0" + jest-jasmine2 "^22.4.2" + jest-regex-util "^22.1.0" + jest-resolve "^22.4.2" + jest-util "^22.4.1" + jest-validate "^22.4.2" + pretty-format "^22.4.0" + + jest-diff@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-22.4.0.tgz#384c2b78519ca44ca126382df53f134289232525" + dependencies: + chalk "^2.0.1" + diff "^3.2.0" + jest-get-type "^22.1.0" + pretty-format "^22.4.0" + + jest-docblock@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-22.4.0.tgz#dbf1877e2550070cfc4d9b07a55775a0483159b8" + dependencies: + detect-newline "^2.1.0" + + jest-environment-jsdom@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-22.4.1.tgz#754f408872441740100d3917e5ec40c74de6447f" + dependencies: + jest-mock "^22.2.0" + jest-util "^22.4.1" + jsdom "^11.5.1" + + jest-environment-node@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-22.4.1.tgz#418850eb654596b8d6e36c2021cbedbc23df8e16" + dependencies: + jest-mock "^22.2.0" + jest-util "^22.4.1" + + jest-get-type@^22.1.0: + version "22.1.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.1.0.tgz#4e90af298ed6181edc85d2da500dbd2753e0d5a9" + + jest-haste-map@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-22.4.2.tgz#a90178e66146d4378bb076345a949071f3b015b4" + dependencies: + fb-watchman "^2.0.0" + graceful-fs "^4.1.11" + jest-docblock "^22.4.0" + jest-serializer "^22.4.0" + jest-worker "^22.2.2" + micromatch "^2.3.11" + sane "^2.0.0" + + jest-jasmine2@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-22.4.2.tgz#dfd3d259579ed6f52510d8f1ab692808f0d40691" + dependencies: + chalk "^2.0.1" + co "^4.6.0" + expect "^22.4.0" + graceful-fs "^4.1.11" + is-generator-fn "^1.0.0" + jest-diff "^22.4.0" + jest-matcher-utils "^22.4.0" + jest-message-util "^22.4.0" + jest-snapshot "^22.4.0" + jest-util "^22.4.1" + source-map-support "^0.5.0" + + jest-leak-detector@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-22.4.0.tgz#64da77f05b001c96d2062226e079f89989c4aa2f" + dependencies: + pretty-format "^22.4.0" + + jest-matcher-utils@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-22.4.0.tgz#d55f5faf2270462736bdf7c7485ee931c9d4b6a1" + dependencies: + chalk "^2.0.1" + jest-get-type "^22.1.0" + pretty-format "^22.4.0" + + jest-message-util@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-22.4.0.tgz#e3d861df16d2fee60cb2bc8feac2188a42579642" + dependencies: + "@babel/code-frame" "^7.0.0-beta.35" + chalk "^2.0.1" + micromatch "^2.3.11" + slash "^1.0.0" + stack-utils "^1.0.1" + + jest-mock@^22.2.0: + version "22.2.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-22.2.0.tgz#444b3f9488a7473adae09bc8a77294afded397a7" + + jest-preset-angular@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/jest-preset-angular/-/jest-preset-angular-5.2.1.tgz#b93611145bf2ef373c1ffe80d8870af0e91f7b64" + dependencies: + "@types/jest" "^22.1.3" + jest-zone-patch "^0.0.8" + ts-jest "^22.4.1" + + jest-regex-util@^22.1.0: + version "22.1.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-22.1.0.tgz#5daf2fe270074b6da63e5d85f1c9acc866768f53" + + jest-resolve-dependencies@^22.1.0: + version "22.1.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-22.1.0.tgz#340e4139fb13315cd43abc054e6c06136be51e31" + dependencies: + jest-regex-util "^22.1.0" + + jest-resolve@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-22.4.2.tgz#25d88aa4147462c9c1c6a1ba16250d3794c24d00" + dependencies: + browser-resolve "^1.11.2" + chalk "^2.0.1" + + jest-runner@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-22.4.2.tgz#19390ea9d99f768973e16f95a1efa351c0017e87" + dependencies: + exit "^0.1.2" + jest-config "^22.4.2" + jest-docblock "^22.4.0" + jest-haste-map "^22.4.2" + jest-jasmine2 "^22.4.2" + jest-leak-detector "^22.4.0" + jest-message-util "^22.4.0" + jest-runtime "^22.4.2" + jest-util "^22.4.1" + jest-worker "^22.2.2" + throat "^4.0.0" + + jest-runtime@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-22.4.2.tgz#0de0444f65ce15ee4f2e0055133fc7c17b9168f3" + dependencies: + babel-core "^6.0.0" + babel-jest "^22.4.1" + babel-plugin-istanbul "^4.1.5" + chalk "^2.0.1" + convert-source-map "^1.4.0" + exit "^0.1.2" + graceful-fs "^4.1.11" + jest-config "^22.4.2" + jest-haste-map "^22.4.2" + jest-regex-util "^22.1.0" + jest-resolve "^22.4.2" + jest-util "^22.4.1" + jest-validate "^22.4.2" + json-stable-stringify "^1.0.1" + micromatch "^2.3.11" + realpath-native "^1.0.0" + slash "^1.0.0" + strip-bom "3.0.0" + write-file-atomic "^2.1.0" + yargs "^10.0.3" + + jest-serializer@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-22.4.0.tgz#b5d145b98c4b0d2c20ab686609adbb81fe23b566" + + jest-snapshot@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-22.4.0.tgz#03d3ce63f8fa7352388afc6a3c8b5ccc3a180ed7" + dependencies: + chalk "^2.0.1" + jest-diff "^22.4.0" + jest-matcher-utils "^22.4.0" + mkdirp "^0.5.1" + natural-compare "^1.4.0" + pretty-format "^22.4.0" + + jest-sonar-reporter@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jest-sonar-reporter/-/jest-sonar-reporter-1.3.0.tgz#dd05b57a40d19cc8c8b1e5598acf632dbaafbb85" + dependencies: + xml "^1.0.1" + + jest-util@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-22.4.1.tgz#dd17c3bdb067f8e90591563ec0c42bf847dc249f" + dependencies: + callsites "^2.0.0" + chalk "^2.0.1" + graceful-fs "^4.1.11" + is-ci "^1.0.10" + jest-message-util "^22.4.0" + mkdirp "^0.5.1" + source-map "^0.6.0" + + jest-validate@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-22.4.2.tgz#e789a4e056173bf97fe797a2df2d52105c57d4f4" + dependencies: + chalk "^2.0.1" + jest-config "^22.4.2" + jest-get-type "^22.1.0" + leven "^2.1.0" + pretty-format "^22.4.0" + + jest-worker@^22.2.2: + version "22.2.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-22.2.2.tgz#c1f5dc39976884b81f68ec50cb8532b2cbab3390" + dependencies: + merge-stream "^1.0.1" + + jest-zone-patch@^0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/jest-zone-patch/-/jest-zone-patch-0.0.8.tgz#90fa3b5b60e95ad3e624dd2c3eb59bb1dcabd371" + + jest@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest/-/jest-22.4.2.tgz#34012834a49bf1bdd3bc783850ab44e4499afc20" + dependencies: + import-local "^1.0.0" + jest-cli "^22.4.2" + + js-base64@^2.1.8, js-base64@^2.1.9: + version "2.4.0" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.0.tgz#9e566fee624751a1d720c966cd6226d29d4025aa" + + js-tokens@^3.0.0, js-tokens@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + + js-yaml@^3.4.3, js-yaml@^3.7.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc" + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + + js-yaml@^3.9.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.11.0.tgz#597c1a8bd57152f26d622ce4117851a51f5ebaef" + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + + js-yaml@~3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" + dependencies: + argparse "^1.0.7" + esprima "^2.6.0" + + jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + + jsdom@^11.5.1: + version "11.6.2" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.6.2.tgz#25d1ef332d48adf77fc5221fe2619967923f16bb" + dependencies: + abab "^1.0.4" + acorn "^5.3.0" + acorn-globals "^4.1.0" + array-equal "^1.0.0" + browser-process-hrtime "^0.1.2" + content-type-parser "^1.0.2" + cssom ">= 0.3.2 < 0.4.0" + cssstyle ">= 0.2.37 < 0.3.0" + domexception "^1.0.0" + escodegen "^1.9.0" + html-encoding-sniffer "^1.0.2" + left-pad "^1.2.0" + nwmatcher "^1.4.3" + parse5 "4.0.0" + pn "^1.1.0" + request "^2.83.0" + request-promise-native "^1.0.5" + sax "^1.2.4" + symbol-tree "^3.2.2" + tough-cookie "^2.3.3" + w3c-hr-time "^1.0.1" + webidl-conversions "^4.0.2" + whatwg-encoding "^1.0.3" + whatwg-url "^6.4.0" + ws "^4.0.0" + xml-name-validator "^3.0.0" + + jsesc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" + + jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + + json-loader@^0.5.4, json-loader@^0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d" + + json-parse-better-errors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz#50183cd1b2d25275de069e9e71b467ac9eab973a" + + json-schema-traverse@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" + + json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + + json-stable-stringify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" + dependencies: + jsonify "~0.0.0" + + json-stable-stringify@~0.0.0: + version "0.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz#611c23e814db375527df851193db59dd2af27f45" + dependencies: + jsonify "~0.0.0" + + json-stringify-safe@5.0.x, json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + + json3@3.3.2, json3@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" + + json5@^0.5.0, json5@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + + jsonfile@^2.1.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" + optionalDependencies: + graceful-fs "^4.1.6" + + jsonfile@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66" + optionalDependencies: + graceful-fs "^4.1.6" + + jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + optionalDependencies: + graceful-fs "^4.1.6" + + jsonify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + + jsonparse@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + + jsonpointer@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" + + jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + + karma-chrome-launcher@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz#cf1b9d07136cc18fe239327d24654c3dbc368acf" + dependencies: + fs-access "^1.0.0" + which "^1.2.1" + + karma-cli@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/karma-cli/-/karma-cli-1.0.1.tgz#ae6c3c58a313a1d00b45164c455b9b86ce17f960" + dependencies: + resolve "^1.1.6" + + karma-coverage-istanbul-reporter@^1.2.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-1.3.3.tgz#daf26051d5a0daa5838a4ce81aa4a41724bdf36b" + dependencies: + istanbul-api "^1.1.14" + minimatch "^3.0.4" + + karma-jasmine-html-reporter@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz#48a8e5ef18807617ee2b5e33c1194c35b439524c" + dependencies: + karma-jasmine "^1.0.2" + + karma-jasmine@^1.0.2, karma-jasmine@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/karma-jasmine/-/karma-jasmine-1.1.1.tgz#6fe840e75a11600c9d91e84b33c458e1c46a3529" + + karma-source-map-support@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/karma-source-map-support/-/karma-source-map-support-1.2.0.tgz#1bf81e7bb4b089627ab352ec4179e117c406a540" + dependencies: + source-map-support "^0.4.1" + + karma@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/karma/-/karma-2.0.0.tgz#a02698dd7f0f05ff5eb66ab8f65582490b512e58" + dependencies: + bluebird "^3.3.0" + body-parser "^1.16.1" + browserify "^14.5.0" + chokidar "^1.4.1" + colors "^1.1.0" + combine-lists "^1.0.0" + connect "^3.6.0" + core-js "^2.2.0" + di "^0.0.1" + dom-serialize "^2.2.0" + expand-braces "^0.1.1" + glob "^7.1.1" + graceful-fs "^4.1.2" + http-proxy "^1.13.0" + isbinaryfile "^3.0.0" + lodash "^4.17.4" + log4js "^2.3.9" + mime "^1.3.4" + minimatch "^3.0.2" + optimist "^0.6.1" + qjobs "^1.1.4" + range-parser "^1.2.0" + rimraf "^2.6.0" + safe-buffer "^5.0.1" + socket.io "2.0.4" + source-map "^0.6.1" + tmp "0.0.33" + useragent "^2.1.12" + + keycode@^2.1.9: + version "2.1.9" + resolved "https://registry.yarnpkg.com/keycode/-/keycode-2.1.9.tgz#964a23c54e4889405b4861a5c9f0480d45141dfa" + + killable@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.0.tgz#da8b84bd47de5395878f95d64d02f2449fe05e6b" + + kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + + kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + dependencies: + is-buffer "^1.1.5" + + kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + + kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + + klaw@^1.0.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" + optionalDependencies: + graceful-fs "^4.1.9" + + labeled-stream-splicer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz#a52e1d138024c00b86b1c0c91f677918b8ae0a59" + dependencies: + inherits "^2.0.1" + isarray "~0.0.1" + stream-splicer "^2.0.0" + + lazy-ass@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/lazy-ass/-/lazy-ass-1.6.0.tgz#7999655e8646c17f089fdd187d150d3324d54513" + + lazy-cache@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" + + lazy-cache@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264" + dependencies: + set-getter "^0.1.0" + + lcid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + dependencies: + invert-kv "^1.0.0" + + left-pad@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.2.0.tgz#d30a73c6b8201d8f7d8e7956ba9616087a68e0ee" + + less-loader@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/less-loader/-/less-loader-4.0.5.tgz#ae155a7406cac6acd293d785587fcff0f478c4dd" + dependencies: + clone "^2.1.1" + loader-utils "^1.1.0" + pify "^2.3.0" + + less@^2.7.2: + version "2.7.3" + resolved "https://registry.yarnpkg.com/less/-/less-2.7.3.tgz#cc1260f51c900a9ec0d91fb6998139e02507b63b" + optionalDependencies: + errno "^0.1.1" + graceful-fs "^4.1.2" + image-size "~0.5.0" + mime "^1.2.11" + mkdirp "^0.5.0" + promise "^7.1.1" + request "2.81.0" + source-map "^0.5.3" + + leven@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" + + levn@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + + lexical-scope@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/lexical-scope/-/lexical-scope-1.2.0.tgz#fcea5edc704a4b3a8796cdca419c3a0afaf22df4" + dependencies: + astw "^2.0.0" + + libbase64@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/libbase64/-/libbase64-0.1.0.tgz#62351a839563ac5ff5bd26f12f60e9830bb751e6" + + libmime@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/libmime/-/libmime-3.0.0.tgz#51a1a9e7448ecbd32cda54421675bb21bc093da6" + dependencies: + iconv-lite "0.4.15" + libbase64 "0.1.0" + libqp "1.1.0" + + libqp@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/libqp/-/libqp-1.1.0.tgz#f5e6e06ad74b794fb5b5b66988bf728ef1dedbe8" + + license-webpack-plugin@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-1.1.1.tgz#76b2cedccc78f139fd7877e576f756cfc141b8c2" + dependencies: + ejs "^2.5.7" + + listr-silent-renderer@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" + + listr-update-renderer@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz#ca80e1779b4e70266807e8eed1ad6abe398550f9" + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + elegant-spinner "^1.0.1" + figures "^1.7.0" + indent-string "^3.0.0" + log-symbols "^1.0.2" + log-update "^1.0.2" + strip-ansi "^3.0.1" + + listr-verbose-renderer@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#8206f4cf6d52ddc5827e5fd14989e0e965933a35" + dependencies: + chalk "^1.1.3" + cli-cursor "^1.0.2" + date-fns "^1.27.2" + figures "^1.7.0" + + listr@0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/listr/-/listr-0.12.0.tgz#6bce2c0f5603fa49580ea17cd6a00cc0e5fa451a" + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + figures "^1.7.0" + indent-string "^2.1.0" + is-promise "^2.1.0" + is-stream "^1.1.0" + listr-silent-renderer "^1.1.1" + listr-update-renderer "^0.2.0" + listr-verbose-renderer "^0.4.0" + log-symbols "^1.0.2" + log-update "^1.0.2" + ora "^0.2.3" + p-map "^1.1.1" + rxjs "^5.0.0-beta.11" + stream-to-observable "^0.1.0" + strip-ansi "^3.0.1" + + load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + + load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + + loader-runner@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" + + loader-utils@1.1.0, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + + loader-utils@^0.2.15, loader-utils@^0.2.16: + version "0.2.17" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + object-assign "^4.0.1" + + locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + + lodash-es@^4.2.1: + version "4.17.5" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.5.tgz#9fc6e737b1c4d151d8f9cae2247305d552ce748f" + + lodash._baseassign@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" + dependencies: + lodash._basecopy "^3.0.0" + lodash.keys "^3.0.0" + + lodash._basecopy@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" + + lodash._basecreate@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz#1bc661614daa7fc311b7d03bf16806a0213cf821" + + lodash._getnative@^3.0.0: + version "3.9.1" + resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" + + lodash._isiterateecall@^3.0.0: + version "3.0.9" + resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" + + lodash.assign@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" + + lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + + lodash.clonedeep@4.5.0, lodash.clonedeep@^4.3.2, lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + + lodash.create@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7" + dependencies: + lodash._baseassign "^3.0.0" + lodash._basecreate "^3.0.0" + lodash._isiterateecall "^3.0.0" + + lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + + lodash.isarguments@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + + lodash.isarray@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" + + lodash.isfunction@^3.0.8: + version "3.0.9" + resolved "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz#06de25df4db327ac931981d1bdb067e5af68d051" + + lodash.keys@^3.0.0, lodash.keys@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" + dependencies: + lodash._getnative "^3.0.0" + lodash.isarguments "^3.0.0" + lodash.isarray "^3.0.0" + + lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + + lodash.memoize@~3.0.3: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-3.0.4.tgz#2dcbd2c287cbc0a55cc42328bd0c736150d53e3f" + + lodash.mergewith@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55" + + lodash.once@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + + lodash.pick@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" + + lodash.sortby@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" + + lodash.tail@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" + + lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + + lodash@4.17.4, lodash@^4.0.0, lodash@^4.11.1, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.3.0, lodash@^4.5.0, lodash@~4.17.4: + version "4.17.4" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" + + lodash@^3.10.1, lodash@^3.5.0: + version "3.10.1" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" + + lodash@^4.0.1, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.17.0, lodash@^4.2.1: + version "4.17.5" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" + + log-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" + dependencies: + chalk "^1.0.0" + + log-update@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1" + dependencies: + ansi-escapes "^1.0.0" + cli-cursor "^1.0.2" + + log4js@^2.3.9: + version "2.4.1" + resolved "https://registry.yarnpkg.com/log4js/-/log4js-2.4.1.tgz#b0c4e88133e0e3056afdc6f91f7f377576158778" + dependencies: + circular-json "^0.4.0" + date-format "^1.2.0" + debug "^3.1.0" + semver "^5.3.0" + streamroller "^0.7.0" + optionalDependencies: + axios "^0.15.3" + hipchat-notifier "^1.1.0" + loggly "^1.1.0" + mailgun-js "^0.7.0" + nodemailer "^2.5.0" + redis "^2.7.1" + slack-node "~0.2.0" + + loggly@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/loggly/-/loggly-1.1.1.tgz#0a0fc1d3fa3a5ec44fdc7b897beba2a4695cebee" + dependencies: + json-stringify-safe "5.0.x" + request "2.75.x" + timespan "2.3.x" + + loglevel@^1.4.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" + + longest@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" + + loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" + dependencies: + js-tokens "^3.0.0" + + loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + + lower-case@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" + + lru-cache@2.2.x: + version "2.2.4" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.2.4.tgz#6c658619becf14031d0d0b594b16042ce4dc063d" + + lru-cache@^4.0.1, lru-cache@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + + lru-cache@~2.6.5: + version "2.6.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.6.5.tgz#e56d6354148ede8d7707b58d143220fd08df0fd5" + + macaddress@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12" + + magic-string@^0.22.3: + version "0.22.4" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.22.4.tgz#31039b4e40366395618c1d6cf8193c53917475ff" + dependencies: + vlq "^0.2.1" + + mailcomposer@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/mailcomposer/-/mailcomposer-4.0.1.tgz#0e1c44b2a07cf740ee17dc149ba009f19cadfeb4" + dependencies: + buildmail "4.0.1" + libmime "3.0.0" + + mailgun-js@^0.7.0: + version "0.7.15" + resolved "https://registry.yarnpkg.com/mailgun-js/-/mailgun-js-0.7.15.tgz#ee366a20dac64c3c15c03d6c1b3e0ed795252abb" + dependencies: + async "~2.1.2" + debug "~2.2.0" + form-data "~2.1.1" + inflection "~1.10.0" + is-stream "^1.1.0" + path-proxy "~1.0.0" + proxy-agent "~2.0.0" + q "~1.4.0" + tsscmp "~1.0.0" + + make-dir@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.1.0.tgz#19b4369fe48c116f53c2af95ad102c0e39e85d51" + dependencies: + pify "^3.0.0" + + make-error@^1.1.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.2.tgz#8762ffad2444dd8ff1f7c819629fa28e24fea1c4" + + make-error@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.4.tgz#19978ed575f9e9545d2ff8c13e33b5d18a67d535" + + makeerror@1.0.x: + version "1.0.11" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" + dependencies: + tmpl "1.0.x" + + map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + + map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + + map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + dependencies: + object-visit "^1.0.0" + + markdown-loader@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/markdown-loader/-/markdown-loader-2.0.2.tgz#1cdcf11307658cd611046d7db34c2fe80542af7c" + dependencies: + loader-utils "^1.1.0" + marked "^0.3.9" + + marked@^0.3.16, marked@^0.3.9: + version "0.3.17" + resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.17.tgz#607f06668b3c6b1246b28f13da76116ac1aa2d2b" + + material-colors@^1.2.1: + version "1.2.5" + resolved "https://registry.yarnpkg.com/material-colors/-/material-colors-1.2.5.tgz#5292593e6754cb1bcc2b98030e4e0d6a3afc9ea1" + + material-design-icons@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/material-design-icons/-/material-design-icons-3.0.1.tgz#9a71c48747218ebca51e51a66da682038cdcb7bf" + + math-expression-evaluator@^1.2.14: + version "1.2.17" + resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz#de819fdbcd84dccd8fae59c6aeb79615b9d266ac" + + md5.js@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz#e9bdbde94a20a5ac18b04340fc5764d5b09d901d" + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + + media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + + mem@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" + dependencies: + mimic-fn "^1.0.0" + + memory-fs@^0.4.0, memory-fs@^0.4.1, memory-fs@~0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + + meow@^3.1.0, meow@^3.3.0, meow@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + + merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + + merge-stream@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" + dependencies: + readable-stream "^2.0.1" + + merge@^1.1.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" + + methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + + micromatch@^2.1.5, micromatch@^2.3.11: + version "2.3.11" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" + dependencies: + arr-diff "^2.0.0" + array-unique "^0.2.1" + braces "^1.8.2" + expand-brackets "^0.1.4" + extglob "^0.3.1" + filename-regex "^2.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.1" + kind-of "^3.0.2" + normalize-path "^2.0.1" + object.omit "^2.0.0" + parse-glob "^3.0.4" + regex-cache "^0.4.2" + + micromatch@^3.1.4, micromatch@^3.1.8: + version "3.1.9" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.9.tgz#15dc93175ae39e52e93087847096effc73efcf89" + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + + miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + + "mime-db@>= 1.30.0 < 2": + version "1.32.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.32.0.tgz#485b3848b01a3cda5f968b4882c0771e58e09414" + + mime-db@~1.30.0: + version "1.30.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" + + mime-db@~1.33.0: + version "1.33.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" + + mime-types@^2.1.11, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.17: + version "2.1.17" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" + dependencies: + mime-db "~1.30.0" + + mime-types@^2.1.12, mime-types@~2.1.7: + version "2.1.18" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" + dependencies: + mime-db "~1.33.0" + + mime@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" + + mime@^1.2.11, mime@^1.3.4, mime@^1.4.1, mime@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + + mimic-fn@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" + + min-document@^2.19.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" + dependencies: + dom-walk "^0.1.0" + + minimalistic-assert@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" + + minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + + "minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + dependencies: + brace-expansion "^1.1.7" + + minimatch@3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" + dependencies: + brace-expansion "^1.0.0" + + minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + + minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + + minimist@~0.0.1: + version "0.0.10" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" + + mississippi@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-1.3.0.tgz#d201583eb12327e3c5c1642a404a9cacf94e34f5" + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^1.0.0" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + + mississippi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^2.0.1" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + + mixin-deep@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + + mixin-object@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" + dependencies: + for-in "^0.1.3" + is-extendable "^0.1.1" + + mkdirp@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.0.tgz#1d73076a6df986cd9344e15e71fcc05a4c9abf12" + dependencies: + minimist "0.0.8" + + mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + dependencies: + minimist "0.0.8" + + mobx-angular@>=1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/mobx-angular/-/mobx-angular-2.1.1.tgz#d5e36539acb200186dd5a1170806b4776b9a8b88" + + mobx-angular@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mobx-angular/-/mobx-angular-2.0.1.tgz#2638d091618080693bbed02c5df8cd714b52c167" + + mobx@>=3: + version "3.5.1" + resolved "https://registry.yarnpkg.com/mobx/-/mobx-3.5.1.tgz#8e682ec535cf44e04005b9e37e2df66acc975a42" + + mobx@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/mobx/-/mobx-3.4.1.tgz#37abe5ee882d401828d9f26c6c1a2f47614bbbef" + + mocha-rp-reporter@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/mocha-rp-reporter/-/mocha-rp-reporter-1.0.12.tgz#408d2660d3f3e58f9762f6005e92bd1f9839b30e" + dependencies: + mocha "^3.2.0" + sync-rest-client "^1.0.3" + + mocha@^3.2.0: + version "3.5.3" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.5.3.tgz#1e0480fe36d2da5858d1eb6acc38418b26eaa20d" + dependencies: + browser-stdout "1.3.0" + commander "2.9.0" + debug "2.6.8" + diff "3.2.0" + escape-string-regexp "1.0.5" + glob "7.1.1" + growl "1.9.2" + he "1.1.1" + json3 "3.3.2" + lodash.create "3.1.1" + mkdirp "0.5.1" + supports-color "3.1.2" + + mocha@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-5.0.0.tgz#cccac988b0bc5477119cba0e43de7af6d6ad8f4e" + dependencies: + browser-stdout "1.3.0" + commander "2.11.0" + debug "3.1.0" + diff "3.3.1" + escape-string-regexp "1.0.5" + glob "7.1.2" + growl "1.10.3" + he "1.1.1" + mkdirp "0.5.1" + supports-color "4.4.0" + + mochawesome-report-generator@^3.0.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/mochawesome-report-generator/-/mochawesome-report-generator-3.1.1.tgz#4008aef2cd57c2af9ff2905ed6480d5804d86965" + dependencies: + chalk "^2.3.0" + dateformat "^3.0.2" + fs-extra "^4.0.2" + fsu "^1.0.2" + lodash.isfunction "^3.0.8" + opener "^1.4.2" + prop-types "^15.5.8" + react "^16.0.0" + react-dom "^16.0.0" + tcomb "^3.2.17" + tcomb-validation "^3.3.0" + validator "^9.1.2" + yargs "^10.0.3" + + mochawesome@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/mochawesome/-/mochawesome-3.0.2.tgz#6884a8bb85c1d5033fe1d2e278ee309f433e750d" + dependencies: + babel-runtime "^6.20.0" + chalk "^2.3.0" + diff "^3.4.0" + json-stringify-safe "^5.0.1" + lodash "^4.17.3" + mochawesome-report-generator "^3.0.1" + strip-ansi "^4.0.0" + uuid "^3.0.1" + + module-deps@^4.0.8: + version "4.1.1" + resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-4.1.1.tgz#23215833f1da13fd606ccb8087b44852dcb821fd" + dependencies: + JSONStream "^1.0.3" + browser-resolve "^1.7.0" + cached-path-relative "^1.0.0" + concat-stream "~1.5.0" + defined "^1.0.0" + detective "^4.0.0" + duplexer2 "^0.1.2" + inherits "^2.0.1" + parents "^1.0.0" + readable-stream "^2.0.2" + resolve "^1.1.3" + stream-combiner2 "^1.1.1" + subarg "^1.0.0" + through2 "^2.0.0" + xtend "^4.0.0" + + moment@^2.20.1: + version "2.21.0" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.21.0.tgz#2a114b51d2a6ec9e6d83cf803f838a878d8a023a" + + move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + dependencies: + aproba "^1.1.1" + copy-concurrently "^1.0.0" + fs-write-stream-atomic "^1.0.8" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.3" + + ms@0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" + + ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + + multicast-dns-service-types@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" + + multicast-dns@^6.0.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.1.tgz#c5035defa9219d30640558a49298067352098060" + dependencies: + dns-packet "^1.0.1" + thunky "^0.1.0" + + mute-stream@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" + + nan@^2.0.7: + version "2.9.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.9.2.tgz#f564d75f5f8f36a6d9456cca7a6c4fe488ab7866" + + nan@^2.3.0, nan@^2.3.2: + version "2.8.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" + + nanomatch@^1.2.9: + version "1.2.9" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.9.tgz#879f7150cb2dab7a471259066c104eee6e0fa7c2" + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-odd "^2.0.0" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + + natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + + ncname@1.0.x: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ncname/-/ncname-1.0.0.tgz#5b57ad18b1ca092864ef62b0b1ed8194f383b71c" + dependencies: + xml-char-classes "^1.0.0" + + negotiator@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" + + neo-async@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.5.0.tgz#76b1c823130cca26acfbaccc8fbaf0a2fa33b18f" + + netmask@~1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/netmask/-/netmask-1.0.6.tgz#20297e89d86f6f6400f250d9f4f6b4c1945fcd35" + + ngx-toastr@^8.2.1: + version "8.2.1" + resolved "https://registry.yarnpkg.com/ngx-toastr/-/ngx-toastr-8.2.1.tgz#86cffec666a9dadde5f8a37f2a8fe2ab527b3dde" + dependencies: + tslib "^1.7.1" + + no-case@^2.2.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" + dependencies: + lower-case "^1.1.1" + + node-dir@^0.1.10: + version "0.1.17" + resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" + dependencies: + minimatch "^3.0.2" + + node-fetch@^1.0.1: + version "1.7.3" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" + dependencies: + encoding "^0.1.11" + is-stream "^1.0.1" + + node-forge@0.6.33: + version "0.6.33" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.6.33.tgz#463811879f573d45155ad6a9f43dc296e8e85ebc" + + node-gyp@^3.3.1: + version "3.6.2" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.2.tgz#9bfbe54562286284838e750eac05295853fa1c60" + dependencies: + fstream "^1.0.0" + glob "^7.0.3" + graceful-fs "^4.1.2" + minimatch "^3.0.2" + mkdirp "^0.5.0" + nopt "2 || 3" + npmlog "0 || 1 || 2 || 3 || 4" + osenv "0" + request "2" + rimraf "2" + semver "~5.3.0" + tar "^2.0.0" + which "1" + + node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + + node-libs-browser@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" + dependencies: + assert "^1.1.1" + browserify-zlib "^0.2.0" + buffer "^4.3.0" + console-browserify "^1.1.0" + constants-browserify "^1.0.0" + crypto-browserify "^3.11.0" + domain-browser "^1.1.1" + events "^1.0.0" + https-browserify "^1.0.0" + os-browserify "^0.3.0" + path-browserify "0.0.0" + process "^0.11.10" + punycode "^1.2.4" + querystring-es3 "^0.2.0" + readable-stream "^2.3.3" + stream-browserify "^2.0.1" + stream-http "^2.7.2" + string_decoder "^1.0.0" + timers-browserify "^2.0.4" + tty-browserify "0.0.0" + url "^0.11.0" + util "^0.10.3" + vm-browserify "0.0.4" + + node-modules-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/node-modules-path/-/node-modules-path-1.0.1.tgz#40096b08ce7ad0ea14680863af449c7c75a5d1c8" + + node-notifier@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.2.1.tgz#fa313dd08f5517db0e2502e5758d664ac69f9dea" + dependencies: + growly "^1.3.0" + semver "^5.4.1" + shellwords "^0.1.1" + which "^1.3.0" + + node-pre-gyp@^0.6.39: + version "0.6.39" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" + dependencies: + detect-libc "^1.0.2" + hawk "3.1.3" + mkdirp "^0.5.1" + nopt "^4.0.1" + npmlog "^4.0.2" + rc "^1.1.7" + request "2.81.0" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^2.2.1" + tar-pack "^3.4.0" + + node-sass@^4.7.2: + version "4.7.2" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.7.2.tgz#9366778ba1469eb01438a9e8592f4262bcb6794e" + dependencies: + async-foreach "^0.1.3" + chalk "^1.1.1" + cross-spawn "^3.0.0" + gaze "^1.0.0" + get-stdin "^4.0.1" + glob "^7.0.3" + in-publish "^2.0.0" + lodash.assign "^4.2.0" + lodash.clonedeep "^4.3.2" + lodash.mergewith "^4.6.0" + meow "^3.7.0" + mkdirp "^0.5.1" + nan "^2.3.2" + node-gyp "^3.3.1" + npmlog "^4.0.0" + request "~2.79.0" + sass-graph "^2.2.4" + stdout-stream "^1.4.0" + "true-case-path" "^1.0.2" + + node-uuid@~1.4.7: + version "1.4.8" + resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" + + nodemailer-direct-transport@3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/nodemailer-direct-transport/-/nodemailer-direct-transport-3.3.2.tgz#e96fafb90358560947e569017d97e60738a50a86" + dependencies: + nodemailer-shared "1.1.0" + smtp-connection "2.12.0" + + nodemailer-fetch@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/nodemailer-fetch/-/nodemailer-fetch-1.6.0.tgz#79c4908a1c0f5f375b73fe888da9828f6dc963a4" + + nodemailer-shared@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/nodemailer-shared/-/nodemailer-shared-1.1.0.tgz#cf5994e2fd268d00f5cf0fa767a08169edb07ec0" + dependencies: + nodemailer-fetch "1.6.0" + + nodemailer-smtp-pool@2.8.2: + version "2.8.2" + resolved "https://registry.yarnpkg.com/nodemailer-smtp-pool/-/nodemailer-smtp-pool-2.8.2.tgz#2eb94d6cf85780b1b4725ce853b9cbd5e8da8c72" + dependencies: + nodemailer-shared "1.1.0" + nodemailer-wellknown "0.1.10" + smtp-connection "2.12.0" + + nodemailer-smtp-transport@2.7.2: + version "2.7.2" + resolved "https://registry.yarnpkg.com/nodemailer-smtp-transport/-/nodemailer-smtp-transport-2.7.2.tgz#03d71c76314f14ac7dbc7bf033a6a6d16d67fb77" + dependencies: + nodemailer-shared "1.1.0" + nodemailer-wellknown "0.1.10" + smtp-connection "2.12.0" + + nodemailer-wellknown@0.1.10: + version "0.1.10" + resolved "https://registry.yarnpkg.com/nodemailer-wellknown/-/nodemailer-wellknown-0.1.10.tgz#586db8101db30cb4438eb546737a41aad0cf13d5" + + nodemailer@^2.5.0: + version "2.7.2" + resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-2.7.2.tgz#f242e649aeeae39b6c7ed740ef7b061c404d30f9" + dependencies: + libmime "3.0.0" + mailcomposer "4.0.1" + nodemailer-direct-transport "3.3.2" + nodemailer-shared "1.1.0" + nodemailer-smtp-pool "2.8.2" + nodemailer-smtp-transport "2.7.2" + socks "1.1.9" + + "nopt@2 || 3": + version "3.0.6" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" + dependencies: + abbrev "1" + + nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + dependencies: + abbrev "1" + osenv "^0.1.4" + + normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: + version "2.4.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" + dependencies: + hosted-git-info "^2.1.4" + is-builtin-module "^1.0.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + + normalize-path@^2.0.0, normalize-path@^2.0.1, normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + dependencies: + remove-trailing-separator "^1.0.1" + + normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + + normalize-url@^1.4.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" + dependencies: + object-assign "^4.0.1" + prepend-http "^1.0.0" + query-string "^4.1.0" + sort-keys "^1.0.0" + + npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + dependencies: + path-key "^2.0.0" + + "npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2, npmlog@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + + nth-check@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" + dependencies: + boolbase "~1.0.0" + + nugget@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/nugget/-/nugget-2.0.1.tgz#201095a487e1ad36081b3432fa3cada4f8d071b0" + dependencies: + debug "^2.1.3" + minimist "^1.1.0" + pretty-bytes "^1.0.2" + progress-stream "^1.1.0" + request "^2.45.0" + single-line-log "^1.1.2" + throttleit "0.0.2" + + null-check@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" + + num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + + number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + + nwmatcher@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.3.tgz#64348e3b3d80f035b40ac11563d278f8b72db89c" + + oauth-sign@~0.8.1, oauth-sign@~0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" + + object-assign@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" + + object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + + object-component@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/object-component/-/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291" + + object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + + object-keys@^1.0.8: + version "1.0.11" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" + + object-keys@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" + + object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + dependencies: + isobject "^3.0.0" + + object.entries@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.6.1" + function-bind "^1.1.0" + has "^1.0.1" + + object.getownpropertydescriptors@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.1" + + object.omit@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" + dependencies: + for-own "^0.1.4" + is-extendable "^0.1.1" + + object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + dependencies: + isobject "^3.0.1" + + object.values@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.6.1" + function-bind "^1.1.0" + has "^1.0.1" + + obuf@^1.0.0, obuf@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e" + + on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + dependencies: + ee-first "1.1.1" + + on-headers@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" + + once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + + onetime@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" + + onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + dependencies: + mimic-fn "^1.0.0" + + opener@^1.4.2: + version "1.4.3" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.3.tgz#5c6da2c5d7e5831e8ffa3964950f8d6674ac90b8" + + opn@5.2.0, opn@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/opn/-/opn-5.2.0.tgz#71fdf934d6827d676cecbea1531f95d354641225" + dependencies: + is-wsl "^1.1.0" + + opn@~5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/opn/-/opn-5.1.0.tgz#72ce2306a17dbea58ff1041853352b4a8fc77519" + dependencies: + is-wsl "^1.1.0" + + optimist@^0.6.1, optimist@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" + dependencies: + minimist "~0.0.1" + wordwrap "~0.0.2" + + optionator@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.4" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + wordwrap "~1.0.0" + + options@>=0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" + + ora@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4" + dependencies: + chalk "^1.1.1" + cli-cursor "^1.0.2" + cli-spinners "^0.1.2" + object-assign "^4.0.1" + + original@>=0.0.5: + version "1.0.0" + resolved "https://registry.yarnpkg.com/original/-/original-1.0.0.tgz#9147f93fa1696d04be61e01bd50baeaca656bd3b" + dependencies: + url-parse "1.0.x" + + os-browserify@^0.3.0, os-browserify@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" + + os-homedir@^1.0.0, os-homedir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + + os-locale@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + dependencies: + lcid "^1.0.0" + + os-locale@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" + dependencies: + execa "^0.7.0" + lcid "^1.0.0" + mem "^1.1.0" + + os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + + osenv@0, osenv@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + + p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + + p-limit@^1.0.0, p-limit@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c" + dependencies: + p-try "^1.0.0" + + p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + dependencies: + p-limit "^1.1.0" + + p-map@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" + + p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + + pac-proxy-agent@1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pac-proxy-agent/-/pac-proxy-agent-1.1.0.tgz#34a385dfdf61d2f0ecace08858c745d3e791fd4d" + dependencies: + agent-base "2" + debug "2" + extend "3" + get-uri "2" + http-proxy-agent "1" + https-proxy-agent "1" + pac-resolver "~2.0.0" + raw-body "2" + socks-proxy-agent "2" + + pac-resolver@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pac-resolver/-/pac-resolver-2.0.0.tgz#99b88d2f193fbdeefc1c9a529c1f3260ab5277cd" + dependencies: + co "~3.0.6" + degenerator "~1.0.2" + ip "1.0.1" + netmask "~1.0.4" + thunkify "~2.1.1" + + pako@~1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" + + papaparse@^4.3.6: + version "4.3.6" + resolved "https://registry.yarnpkg.com/papaparse/-/papaparse-4.3.6.tgz#9566eda0ecab13afcb740a62381c699f486cb145" + + parallel-transform@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" + dependencies: + cyclist "~0.2.2" + inherits "^2.0.3" + readable-stream "^2.1.5" + + param-case@2.1.x: + version "2.1.1" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" + dependencies: + no-case "^2.2.0" + + parents@^1.0.0, parents@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parents/-/parents-1.0.1.tgz#fedd4d2bf193a77745fe71e371d73c3307d9c751" + dependencies: + path-platform "~0.11.15" + + parse-asn1@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" + dependencies: + asn1.js "^4.0.0" + browserify-aes "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.0" + pbkdf2 "^3.0.3" + + parse-glob@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" + dependencies: + glob-base "^0.3.0" + is-dotfile "^1.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.0" + + parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + dependencies: + error-ex "^1.2.0" + + parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + + parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + + parse5@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" + + parseqs@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d" + dependencies: + better-assert "~1.0.0" + + parseuri@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a" + dependencies: + better-assert "~1.0.0" + + parseurl@~1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" + + pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + + path-browserify@0.0.0, path-browserify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" + + path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + + path-exists@^2.0.0, path-exists@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + dependencies: + pinkie-promise "^2.0.0" + + path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + + path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + + path-is-inside@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + + path-key@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + + path-parse@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" + + path-platform@~0.11.15: + version "0.11.15" + resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2" + + path-proxy@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/path-proxy/-/path-proxy-1.0.0.tgz#18e8a36859fc9d2f1a53b48dee138543c020de5e" + dependencies: + inflection "~1.3.0" + + path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + + path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + + path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + dependencies: + pify "^2.0.0" + + path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + dependencies: + pify "^3.0.0" + + pbkdf2@^3.0.3: + version "3.0.14" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.14.tgz#a35e13c64799b06ce15320f459c230e68e73bade" + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + + pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + + performance-now@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + + performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + + pify@^2.0.0, pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + + pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + + pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + dependencies: + pinkie "^2.0.0" + + pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + + pkg-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + dependencies: + find-up "^2.1.0" + + pn@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" + + portfinder@^1.0.9, portfinder@~1.0.12: + version "1.0.13" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.13.tgz#bb32ecd87c27104ae6ee44b5a3ccbf0ebb1aede9" + dependencies: + async "^1.5.2" + debug "^2.2.0" + mkdirp "0.5.x" + + posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + + postcss-calc@^5.2.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e" + dependencies: + postcss "^5.0.2" + postcss-message-helpers "^2.0.0" + reduce-css-calc "^1.2.6" + + postcss-colormin@^2.1.8: + version "2.2.2" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b" + dependencies: + colormin "^1.0.5" + postcss "^5.0.13" + postcss-value-parser "^3.2.3" + + postcss-convert-values@^2.3.4: + version "2.6.1" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d" + dependencies: + postcss "^5.0.11" + postcss-value-parser "^3.1.2" + + postcss-discard-comments@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz#befe89fafd5b3dace5ccce51b76b81514be00e3d" + dependencies: + postcss "^5.0.14" + + postcss-discard-duplicates@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz#b9abf27b88ac188158a5eb12abcae20263b91932" + dependencies: + postcss "^5.0.4" + + postcss-discard-empty@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz#d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5" + dependencies: + postcss "^5.0.14" + + postcss-discard-overridden@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz#8b1eaf554f686fb288cd874c55667b0aa3668d58" + dependencies: + postcss "^5.0.16" + + postcss-discard-unused@^2.2.1: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433" + dependencies: + postcss "^5.0.14" + uniqs "^2.0.0" + + postcss-filter-plugins@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz#6d85862534d735ac420e4a85806e1f5d4286d84c" + dependencies: + postcss "^5.0.4" + uniqid "^4.0.0" + + postcss-flexbugs-fixes@^3.2.0, postcss-flexbugs-fixes@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-3.3.0.tgz#e00849b536063749da50a0d410ba5d9ee65e27b8" + dependencies: + postcss "^6.0.1" + + postcss-import@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-11.0.0.tgz#a962e2df82d3bc5a6da6a386841747204f41ef5b" + dependencies: + postcss "^6.0.1" + postcss-value-parser "^3.2.3" + read-cache "^1.0.0" + resolve "^1.1.7" + + postcss-load-config@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a" + dependencies: + cosmiconfig "^2.1.0" + object-assign "^4.1.0" + postcss-load-options "^1.2.0" + postcss-load-plugins "^2.3.0" + + postcss-load-options@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c" + dependencies: + cosmiconfig "^2.1.0" + object-assign "^4.1.0" + + postcss-load-plugins@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92" + dependencies: + cosmiconfig "^2.1.1" + object-assign "^4.1.0" + + postcss-loader@^2.0.10: + version "2.0.10" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.0.10.tgz#090db0540140bd56a7a7f717c41bc29aeef4c674" + dependencies: + loader-utils "^1.1.0" + postcss "^6.0.0" + postcss-load-config "^1.2.0" + schema-utils "^0.3.0" + + postcss-loader@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.1.1.tgz#208935af3b1d65e1abb1a870a912dd12e7b36895" + dependencies: + loader-utils "^1.1.0" + postcss "^6.0.0" + postcss-load-config "^1.2.0" + schema-utils "^0.4.0" + + postcss-merge-idents@^2.1.5: + version "2.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270" + dependencies: + has "^1.0.1" + postcss "^5.0.10" + postcss-value-parser "^3.1.1" + + postcss-merge-longhand@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658" + dependencies: + postcss "^5.0.4" + + postcss-merge-rules@^2.0.3: + version "2.1.2" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz#d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721" + dependencies: + browserslist "^1.5.2" + caniuse-api "^1.5.2" + postcss "^5.0.4" + postcss-selector-parser "^2.2.2" + vendors "^1.0.0" + + postcss-message-helpers@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz#a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e" + + postcss-minify-font-values@^1.0.2: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz#4b58edb56641eba7c8474ab3526cafd7bbdecb69" + dependencies: + object-assign "^4.0.1" + postcss "^5.0.4" + postcss-value-parser "^3.0.2" + + postcss-minify-gradients@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz#5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1" + dependencies: + postcss "^5.0.12" + postcss-value-parser "^3.3.0" + + postcss-minify-params@^1.0.4: + version "1.2.2" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz#ad2ce071373b943b3d930a3fa59a358c28d6f1f3" + dependencies: + alphanum-sort "^1.0.1" + postcss "^5.0.2" + postcss-value-parser "^3.0.2" + uniqs "^2.0.0" + + postcss-minify-selectors@^2.0.4: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz#b2c6a98c0072cf91b932d1a496508114311735bf" + dependencies: + alphanum-sort "^1.0.2" + has "^1.0.1" + postcss "^5.0.14" + postcss-selector-parser "^2.0.0" + + postcss-modules-extract-imports@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz#66140ecece38ef06bf0d3e355d69bf59d141ea85" + dependencies: + postcss "^6.0.1" + + postcss-modules-local-by-default@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + + postcss-modules-scope@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + + postcss-modules-values@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" + dependencies: + icss-replace-symbols "^1.1.0" + postcss "^6.0.1" + + postcss-normalize-charset@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz#ef9ee71212d7fe759c78ed162f61ed62b5cb93f1" + dependencies: + postcss "^5.0.5" + + postcss-normalize-url@^3.0.7: + version "3.0.8" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz#108f74b3f2fcdaf891a2ffa3ea4592279fc78222" + dependencies: + is-absolute-url "^2.0.0" + normalize-url "^1.4.0" + postcss "^5.0.14" + postcss-value-parser "^3.2.3" + + postcss-ordered-values@^2.1.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz#eec6c2a67b6c412a8db2042e77fe8da43f95c11d" + dependencies: + postcss "^5.0.4" + postcss-value-parser "^3.0.1" + + postcss-reduce-idents@^2.2.2: + version "2.4.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz#c2c6d20cc958284f6abfbe63f7609bf409059ad3" + dependencies: + postcss "^5.0.4" + postcss-value-parser "^3.0.2" + + postcss-reduce-initial@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz#68f80695f045d08263a879ad240df8dd64f644ea" + dependencies: + postcss "^5.0.4" + + postcss-reduce-transforms@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz#ff76f4d8212437b31c298a42d2e1444025771ae1" + dependencies: + has "^1.0.1" + postcss "^5.0.8" + postcss-value-parser "^3.0.1" + + postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.2: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90" + dependencies: + flatten "^1.0.2" + indexes-of "^1.0.1" + uniq "^1.0.1" + + postcss-svgo@^2.1.1: + version "2.1.6" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d" + dependencies: + is-svg "^2.0.0" + postcss "^5.0.14" + postcss-value-parser "^3.2.3" + svgo "^0.7.0" + + postcss-unique-selectors@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz#981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d" + dependencies: + alphanum-sort "^1.0.1" + postcss "^5.0.4" + uniqs "^2.0.0" + + postcss-url@^7.1.2: + version "7.3.0" + resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-7.3.0.tgz#cf2f45e06743cf43cfea25309f81cbc003dc783f" + dependencies: + mime "^1.4.1" + minimatch "^3.0.4" + mkdirp "^0.5.0" + postcss "^6.0.1" + xxhashjs "^0.2.1" + + postcss-value-parser@^3.0.1, postcss-value-parser@^3.0.2, postcss-value-parser@^3.1.1, postcss-value-parser@^3.1.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" + + postcss-zindex@^2.0.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.2.0.tgz#d2109ddc055b91af67fc4cb3b025946639d2af22" + dependencies: + has "^1.0.1" + postcss "^5.0.4" + uniqs "^2.0.0" + + postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.16: + version "5.2.18" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz#badfa1497d46244f6390f58b319830d9107853c5" + dependencies: + chalk "^1.1.3" + js-base64 "^2.1.9" + source-map "^0.5.6" + supports-color "^3.2.3" + + postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.16: + version "6.0.16" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.16.tgz#112e2fe2a6d2109be0957687243170ea5589e146" + dependencies: + chalk "^2.3.0" + source-map "^0.6.1" + supports-color "^5.1.0" + + postcss@^6.0.17: + version "6.0.19" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.19.tgz#76a78386f670b9d9494a655bf23ac012effd1555" + dependencies: + chalk "^2.3.1" + source-map "^0.6.1" + supports-color "^5.2.0" + + prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + + prepend-http@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + + preserve@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + + pretty-bytes@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-1.0.4.tgz#0a22e8210609ad35542f8c8d5d2159aff0751c84" + dependencies: + get-stdin "^4.0.1" + meow "^3.1.0" + + pretty-checkbox@3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/pretty-checkbox/-/pretty-checkbox-3.0.3.tgz#d49c8013a8fc08ee0c2d6ebde453464bfdbc428e" + + pretty-error@^2.0.2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" + dependencies: + renderkid "^2.0.1" + utila "~0.4" + + pretty-format@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-22.4.0.tgz#237b1f7e1c50ed03bc65c03ccc29d7c8bb7beb94" + dependencies: + ansi-regex "^3.0.0" + ansi-styles "^3.2.0" + + primeng@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/primeng/-/primeng-5.0.2.tgz#05c4a4502efd4c3bc5d506aa01ae8eb30f9764db" + + private@^0.1.6, private@^0.1.7, private@~0.1.5: + version "0.1.8" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" + + process-nextick-args@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" + + process-nextick-args@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" + + process@^0.11.10, process@~0.11.0: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + + process@~0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" + + progress-stream@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/progress-stream/-/progress-stream-1.2.0.tgz#2cd3cfea33ba3a89c9c121ec3347abe9ab125f77" + dependencies: + speedometer "~0.1.2" + through2 "~0.2.3" + + progress@1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" + + promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + + promise.prototype.finally@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.0.tgz#66f161b1643636e50e7cf201dc1b84a857f3864e" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.9.0" + function-bind "^1.1.1" + + promise@^7.1.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + dependencies: + asap "~2.0.3" + + prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.6, prop-types@^15.5.7, prop-types@^15.5.9: + version "15.6.1" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.1.tgz#36644453564255ddda391191fb3a125cbdf654ca" + dependencies: + fbjs "^0.8.16" + loose-envify "^1.3.1" + object-assign "^4.1.1" + + prop-types@^15.5.8, prop-types@^15.6.0: + version "15.6.0" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.0.tgz#ceaf083022fc46b4a35f69e13ef75aed0d639856" + dependencies: + fbjs "^0.8.16" + loose-envify "^1.3.1" + object-assign "^4.1.1" + + protractor@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/protractor/-/protractor-5.1.2.tgz#9b221741709a4c62d5cd53c6aadd54a71137e95f" + dependencies: + "@types/node" "^6.0.46" + "@types/q" "^0.0.32" + "@types/selenium-webdriver" "~2.53.39" + blocking-proxy "0.0.5" + chalk "^1.1.3" + glob "^7.0.3" + jasmine "^2.5.3" + jasminewd2 "^2.1.0" + optimist "~0.6.0" + q "1.4.1" + saucelabs "~1.3.0" + selenium-webdriver "3.0.1" + source-map-support "~0.4.0" + webdriver-js-extender "^1.0.0" + webdriver-manager "^12.0.6" + + proxy-addr@~2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.2.tgz#6571504f47bb988ec8180253f85dd7e14952bdec" + dependencies: + forwarded "~0.1.2" + ipaddr.js "1.5.2" + + proxy-agent@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-2.0.0.tgz#57eb5347aa805d74ec681cb25649dba39c933499" + dependencies: + agent-base "2" + debug "2" + extend "3" + http-proxy-agent "1" + https-proxy-agent "1" + lru-cache "~2.6.5" + pac-proxy-agent "1" + socks-proxy-agent "2" + + prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + + pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + + public-encrypt@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6" + dependencies: + bn.js "^4.1.0" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + parse-asn1 "^5.0.0" + randombytes "^2.0.1" + + pump@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + + pump@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.0.tgz#7946da1c8d622b098e2ceb2d3476582470829c9d" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + + pump@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + + pumpify@^1.3.3: + version "1.3.6" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.3.6.tgz#00d40e5ded0a3bf1e0788b1c0cf426a42882ab64" + dependencies: + duplexify "^3.5.3" + inherits "^2.0.3" + pump "^2.0.0" + + punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + + punycode@1.4.1, punycode@^1.2.4, punycode@^1.3.2, punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + + punycode@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d" + + q@1.4.1, q@~1.4.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.4.1.tgz#55705bcd93c5f3673530c2c2cbc0c2b3addc286e" + + q@^1.1.2, q@^1.4.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + + qjobs@^1.1.4: + version "1.1.5" + resolved "https://registry.yarnpkg.com/qjobs/-/qjobs-1.1.5.tgz#659de9f2cf8dcc27a1481276f205377272382e73" + + qs@6.5.1, qs@^6.5.1, qs@~6.5.1: + version "6.5.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" + + qs@~6.2.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.3.tgz#1cfcb25c10a9b2b483053ff39f5dfc9233908cfe" + + qs@~6.3.0: + version "6.3.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" + + qs@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" + + query-string@^4.1.0: + version "4.3.4" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" + dependencies: + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + + querystring-es3@^0.2.0, querystring-es3@~0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + + querystring@0.2.0, querystring@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + + querystringify@0.0.x: + version "0.0.4" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c" + + querystringify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb" + + radium@^0.19.0: + version "0.19.6" + resolved "https://registry.yarnpkg.com/radium/-/radium-0.19.6.tgz#b86721d08dbd303b061a4ae2ebb06cc6e335ae72" + dependencies: + array-find "^1.0.0" + exenv "^1.2.1" + inline-style-prefixer "^2.0.5" + prop-types "^15.5.8" + + ramda@0.24.1: + version "0.24.1" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.24.1.tgz#c3b7755197f35b8dc3502228262c4c91ddb6b857" + + ramda@^0.25.0: + version "0.25.0" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.25.0.tgz#8fdf68231cffa90bc2f9460390a0cb74a29b29a9" + + randomatic@^1.1.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + + randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" + dependencies: + safe-buffer "^5.1.0" + + randomfill@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.3.tgz#b96b7df587f01dd91726c418f30553b1418e3d62" + dependencies: + randombytes "^2.0.5" + safe-buffer "^5.1.0" + + range-parser@^1.0.3, range-parser@^1.2.0, range-parser@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" + + raw-body@2, raw-body@2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" + dependencies: + bytes "3.0.0" + http-errors "1.6.2" + iconv-lite "0.4.19" + unpipe "1.0.0" + + raw-loader@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" + + rc@^1.1.2: + version "1.2.5" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.5.tgz#275cd687f6e3b36cc756baa26dfee80a790301fd" + dependencies: + deep-extend "~0.4.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + + rc@^1.1.7: + version "1.2.3" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.3.tgz#51575a900f8dd68381c710b4712c2154c3e2035b" + dependencies: + deep-extend "~0.4.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + + react-color@^2.11.4: + version "2.14.0" + resolved "https://registry.yarnpkg.com/react-color/-/react-color-2.14.0.tgz#5828a11c034aa0939befbd888a066ee37d8c3cc2" + dependencies: + lodash "^4.0.1" + material-colors "^1.2.1" + prop-types "^15.5.10" + reactcss "^1.2.0" + tinycolor2 "^1.4.1" + + react-datetime@^2.14.0: + version "2.14.0" + resolved "https://registry.yarnpkg.com/react-datetime/-/react-datetime-2.14.0.tgz#c7859c5b765275d7980f1cca27c03a727ff9ccef" + dependencies: + create-react-class "^15.5.2" + object-assign "^3.0.0" + prop-types "^15.5.7" + react-onclickoutside "^6.5.0" + + react-dev-utils@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-5.0.0.tgz#425ac7c9c40c2603bc4f7ab8836c1406e96bb473" + dependencies: + address "1.0.3" + babel-code-frame "6.26.0" + chalk "1.1.3" + cross-spawn "5.1.0" + detect-port-alt "1.1.5" + escape-string-regexp "1.0.5" + filesize "3.5.11" + global-modules "1.0.0" + gzip-size "3.0.0" + inquirer "3.3.0" + is-root "1.0.0" + opn "5.2.0" + react-error-overlay "^4.0.0" + recursive-readdir "2.2.1" + shell-quote "1.6.1" + sockjs-client "1.1.4" + strip-ansi "3.0.1" + text-table "0.2.0" + + react-docgen@^2.20.0: + version "2.20.1" + resolved "https://registry.yarnpkg.com/react-docgen/-/react-docgen-2.20.1.tgz#29c3a1216066f513958abb1a43678860bbd51c7f" + dependencies: + async "^2.1.4" + babel-runtime "^6.9.2" + babylon "~5.8.3" + commander "^2.9.0" + doctrine "^2.0.0" + node-dir "^0.1.10" + recast "^0.12.6" + + react-dom@^16.0.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.2.0.tgz#69003178601c0ca19b709b33a83369fe6124c044" + dependencies: + fbjs "^0.8.16" + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.0" + + react-error-overlay@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-4.0.0.tgz#d198408a85b4070937a98667f500c832f86bd5d4" + + react-fuzzy@^0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/react-fuzzy/-/react-fuzzy-0.5.2.tgz#fc13bf6f0b785e5fefe908724efebec4935eaefe" + dependencies: + babel-runtime "^6.23.0" + classnames "^2.2.5" + fuse.js "^3.0.1" + prop-types "^15.5.9" + + react-html-attributes@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/react-html-attributes/-/react-html-attributes-1.4.1.tgz#97b5ec710da68833598c8be6f89ac436216840a5" + dependencies: + html-element-attributes "^1.0.0" + + react-icon-base@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/react-icon-base/-/react-icon-base-2.1.0.tgz#a196e33fdf1e7aaa1fda3aefbb68bdad9e82a79d" + + react-icons@^2.2.7: + version "2.2.7" + resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-2.2.7.tgz#d7860826b258557510dac10680abea5ca23cf650" + dependencies: + react-icon-base "2.1.0" + + react-inspector@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-2.2.2.tgz#c04f5248fa92ab6c23e37960e725fb7f48c34d05" + dependencies: + babel-runtime "^6.26.0" + is-dom "^1.0.9" + + react-modal@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/react-modal/-/react-modal-3.3.1.tgz#7355db196482da0c7fa1cbecccf2bdd9bc366b14" + dependencies: + exenv "^1.2.0" + prop-types "^15.5.10" + warning "^3.0.0" + + react-onclickoutside@^6.5.0: + version "6.7.1" + resolved "https://registry.yarnpkg.com/react-onclickoutside/-/react-onclickoutside-6.7.1.tgz#6a5b5b8b4eae6b776259712c89c8a2b36b17be93" + + react-split-pane@^0.1.77: + version "0.1.77" + resolved "https://registry.yarnpkg.com/react-split-pane/-/react-split-pane-0.1.77.tgz#f0c8cd18d076bbac900248dcf6dbcec02d5340db" + dependencies: + inline-style-prefixer "^3.0.6" + prop-types "^15.5.10" + react-style-proptype "^3.0.0" + + react-style-proptype@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/react-style-proptype/-/react-style-proptype-3.2.0.tgz#be5de15358b890d83aecfaf6634cc033aa2b1483" + dependencies: + prop-types "^15.5.4" + + react-textarea-autosize@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-5.2.1.tgz#2b78f9067180f41b08ac59f78f1581abadd61e54" + dependencies: + prop-types "^15.6.0" + + react-transition-group@^1.1.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-1.2.1.tgz#e11f72b257f921b213229a774df46612346c7ca6" + dependencies: + chain-function "^1.0.0" + dom-helpers "^3.2.0" + loose-envify "^1.3.1" + prop-types "^15.5.6" + warning "^3.0.0" + + react-treebeard@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/react-treebeard/-/react-treebeard-2.1.0.tgz#fbd5cf51089b6f09a9b18350ab3bddf736e57800" + dependencies: + babel-runtime "^6.23.0" + deep-equal "^1.0.1" + prop-types "^15.5.8" + radium "^0.19.0" + shallowequal "^0.2.2" + velocity-react "^1.3.1" + + react@^16.0.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.2.0.tgz#a31bd2dab89bff65d42134fa187f24d054c273ba" + dependencies: + fbjs "^0.8.16" + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.0" + + reactcss@^1.2.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/reactcss/-/reactcss-1.2.3.tgz#c00013875e557b1cf0dfd9a368a1c3dab3b548dd" + dependencies: + lodash "^4.0.1" + + read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + dependencies: + pify "^2.3.0" + + read-only-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-2.0.0.tgz#2724fd6a8113d73764ac288d4386270c1dbf17f0" + dependencies: + readable-stream "^2.0.2" + + read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + + read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + + read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + + read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + + "readable-stream@1 || 2", readable-stream@2, readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.9, readable-stream@^2.3.0, readable-stream@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + safe-buffer "~5.1.1" + string_decoder "~1.0.3" + util-deprecate "~1.0.1" + + readable-stream@1.0: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + + readable-stream@1.1.x, readable-stream@~1.1.9: + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + + readable-stream@^2.2.2: + version "2.3.4" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071" + 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" + + readable-stream@~2.0.0, readable-stream@~2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + string_decoder "~0.10.x" + 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" + dependencies: + graceful-fs "^4.1.2" + minimatch "^3.0.2" + readable-stream "^2.0.2" + set-immediate-shim "^1.0.1" + + realpath-native@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.0.tgz#7885721a83b43bd5327609f0ddecb2482305fdf0" + dependencies: + util.promisify "^1.0.0" + + recast@^0.12.6: + version "0.12.9" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.12.9.tgz#e8e52bdb9691af462ccbd7c15d5a5113647a15f1" + dependencies: + ast-types "0.10.1" + core-js "^2.4.1" + esprima "~4.0.0" + private "~0.1.5" + source-map "~0.6.1" + + recast@~0.11.12: + version "0.11.23" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3" + dependencies: + ast-types "0.9.6" + esprima "~3.1.0" + private "~0.1.5" + source-map "~0.5.0" + + rechoir@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" + dependencies: + resolve "^1.1.6" + + recursive-readdir@2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.1.tgz#90ef231d0778c5ce093c9a48d74e5c5422d13a99" + dependencies: + minimatch "3.0.3" + + redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + + redis-commands@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/redis-commands/-/redis-commands-1.3.1.tgz#81d826f45fa9c8b2011f4cd7a0fe597d241d442b" + + redis-parser@^2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/redis-parser/-/redis-parser-2.6.0.tgz#52ed09dacac108f1a631c07e9b69941e7a19504b" + + redis@^2.7.1: + version "2.8.0" + resolved "https://registry.yarnpkg.com/redis/-/redis-2.8.0.tgz#202288e3f58c49f6079d97af7a10e1303ae14b02" + dependencies: + double-ended-queue "^2.1.0-0" + redis-commands "^1.2.0" + redis-parser "^2.6.0" + + reduce-css-calc@^1.2.6: + version "1.3.0" + resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716" + dependencies: + balanced-match "^0.4.2" + math-expression-evaluator "^1.2.14" + reduce-function-call "^1.0.1" + + reduce-function-call@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.2.tgz#5a200bf92e0e37751752fe45b0ab330fd4b6be99" + dependencies: + balanced-match "^0.4.2" + + redux@^3.6.0, redux@^3.7.2: + version "3.7.2" + resolved "https://registry.yarnpkg.com/redux/-/redux-3.7.2.tgz#06b73123215901d25d065be342eb026bc1c8537b" + dependencies: + lodash "^4.2.1" + lodash-es "^4.2.1" + loose-envify "^1.1.0" + symbol-observable "^1.0.3" + + reflect-metadata@^0.1.2: + version "0.1.10" + resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.10.tgz#b4f83704416acad89988c9b15635d47e03b9344a" + + regenerate@^1.2.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" + + regenerator-runtime@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + + regenerator-transform@^0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" + dependencies: + babel-runtime "^6.18.0" + babel-types "^6.19.0" + private "^0.1.6" + + regex-cache@^0.4.2: + version "0.4.4" + resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" + dependencies: + is-equal-shallow "^0.1.3" + + regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + + regexpu-core@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + + regexpu-core@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + + regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + + regjsparser@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" + dependencies: + jsesc "~0.5.0" + + relateurl@0.2.x: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + + remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + + renderkid@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.1.tgz#898cabfc8bede4b7b91135a3ffd323e58c0db319" + dependencies: + css-select "^1.1.0" + dom-converter "~0.1" + htmlparser2 "~3.3.0" + strip-ansi "^3.0.0" + utila "~0.3" + + repeat-element@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" + + repeat-string@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-0.2.2.tgz#c7a8d3236068362059a7e4651fc6884e8b1fb4ae" + + repeat-string@^1.5.2, repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + + repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + dependencies: + is-finite "^1.0.0" + + request-progress@0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-0.3.1.tgz#0721c105d8a96ac6b2ce8b2c89ae2d5ecfcf6b3a" + dependencies: + throttleit "~0.0.2" + + request-promise-core@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6" + dependencies: + lodash "^4.13.1" + + request-promise-native@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5" + dependencies: + request-promise-core "1.1.1" + stealthy-require "^1.1.0" + tough-cookie ">=2.3.3" + + request@2, request@^2.0.0, request@^2.45.0, request@^2.74.0, request@^2.75.0, request@^2.78.0, request@^2.81.0, request@^2.83.0: + version "2.83.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356" + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.6.0" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.1" + forever-agent "~0.6.1" + form-data "~2.3.1" + har-validator "~5.0.3" + hawk "~6.0.2" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.17" + oauth-sign "~0.8.2" + performance-now "^2.1.0" + qs "~6.5.1" + safe-buffer "^5.1.1" + stringstream "~0.0.5" + tough-cookie "~2.3.3" + tunnel-agent "^0.6.0" + uuid "^3.1.0" + + request@2.75.x: + version "2.75.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.75.0.tgz#d2b8268a286da13eaa5d01adf5d18cc90f657d93" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + bl "~1.1.2" + caseless "~0.11.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.0.0" + har-validator "~2.0.6" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + node-uuid "~1.4.7" + oauth-sign "~0.8.1" + qs "~6.2.0" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "~0.4.1" + + request@2.81.0: + version "2.81.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~4.2.1" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + performance-now "^0.2.0" + qs "~6.4.0" + safe-buffer "^5.0.1" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "^0.6.0" + uuid "^3.0.0" + + request@~2.79.0: + version "2.79.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.11.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~2.0.6" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + qs "~6.3.0" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "~0.4.1" + uuid "^3.0.0" + + requestretry@^1.2.2: + version "1.12.2" + resolved "https://registry.yarnpkg.com/requestretry/-/requestretry-1.12.2.tgz#13ce38a4ce4e809f3c9ec6d4ca3b7b9ba4acf26c" + dependencies: + extend "^3.0.0" + lodash "^4.15.0" + request "^2.74.0" + when "^3.7.7" + + require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + + require-from-string@^1.1.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" + + require-from-string@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.1.tgz#c545233e9d7da6616e9d59adfb39fc9f588676ff" + + require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" + + requires-port@1.0.x, requires-port@1.x.x, requires-port@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + + resolve-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" + dependencies: + resolve-from "^3.0.0" + + resolve-dir@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" + dependencies: + expand-tilde "^2.0.0" + global-modules "^1.0.0" + + resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + + resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + + resolve@1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" + + resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.1.7, resolve@^1.3.2: + version "1.5.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36" + dependencies: + path-parse "^1.0.5" + + restore-cursor@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" + dependencies: + exit-hook "^1.0.0" + onetime "^1.0.0" + + restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + + ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + + right-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" + dependencies: + align-text "^0.1.1" + + rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.2, rimraf@^2.5.4, rimraf@^2.6.0, rimraf@^2.6.1, rimraf@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" + dependencies: + glob "^7.0.5" + + ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" + dependencies: + hash-base "^2.0.0" + inherits "^2.0.1" + + run-async@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" + dependencies: + is-promise "^2.1.0" + + run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + dependencies: + aproba "^1.1.1" + + rx-lite-aggregates@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" + dependencies: + rx-lite "*" + + rx-lite@*, rx-lite@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" + + rxjs@^5.0.0-beta.11, rxjs@^5.4.2, rxjs@^5.5.6: + version "5.5.6" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.6.tgz#e31fb96d6fd2ff1fd84bcea8ae9c02d007179c02" + dependencies: + symbol-observable "1.0.1" + + safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + + safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + dependencies: + ret "~0.1.10" + + sane@^2.0.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/sane/-/sane-2.4.1.tgz#29f991208cf28636720efdc584293e7fd66663a5" + dependencies: + anymatch "^1.3.0" + exec-sh "^0.2.0" + fb-watchman "^2.0.0" + minimatch "^3.0.2" + minimist "^1.1.1" + walker "~1.0.5" + watch "~0.18.0" + optionalDependencies: + fsevents "^1.1.1" + + sass-graph@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" + dependencies: + glob "^7.0.0" + lodash "^4.0.0" + scss-tokenizer "^0.2.3" + yargs "^7.0.0" + + sass-loader@^6.0.6: + version "6.0.7" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-6.0.7.tgz#dd2fdb3e7eeff4a53f35ba6ac408715488353d00" + dependencies: + clone-deep "^2.0.1" + loader-utils "^1.0.1" + lodash.tail "^4.1.1" + neo-async "^2.5.0" + pify "^3.0.0" + + saucelabs@~1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/saucelabs/-/saucelabs-1.3.0.tgz#d240e8009df7fa87306ec4578a69ba3b5c424fee" + dependencies: + https-proxy-agent "^1.0.0" + + sax@0.5.x: + version "0.5.8" + resolved "https://registry.yarnpkg.com/sax/-/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1" + + sax@0.6.x: + version "0.6.1" + resolved "https://registry.yarnpkg.com/sax/-/sax-0.6.1.tgz#563b19c7c1de892e09bfc4f2fc30e3c27f0952b9" + + sax@>=0.6.0, sax@^1.2.4, sax@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + + schema-utils@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf" + dependencies: + ajv "^5.0.0" + + schema-utils@^0.4.0, schema-utils@^0.4.3, schema-utils@^0.4.5: + version "0.4.5" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e" + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + + schema-utils@^0.4.2: + version "0.4.3" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.3.tgz#e2a594d3395834d5e15da22b48be13517859458e" + dependencies: + ajv "^5.0.0" + ajv-keywords "^2.1.0" + + scss-tokenizer@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" + dependencies: + js-base64 "^2.1.8" + source-map "^0.4.2" + + select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + + selenium-webdriver@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-3.0.1.tgz#a2dea5da4a97f6672e89e7ca7276cefa365147a7" + dependencies: + adm-zip "^0.4.7" + rimraf "^2.5.4" + tmp "0.0.30" + xml2js "^0.4.17" + + selenium-webdriver@^2.53.2: + version "2.53.3" + resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-2.53.3.tgz#d29ff5a957dff1a1b49dc457756e4e4bfbdce085" + dependencies: + adm-zip "0.4.4" + rimraf "^2.2.8" + tmp "0.0.24" + ws "^1.0.1" + xml2js "0.4.4" + + selfsigned@^1.9.1: + version "1.10.1" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.1.tgz#bf8cb7b83256c4551e31347c6311778db99eec52" + dependencies: + node-forge "0.6.33" + + semver-dsl@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/semver-dsl/-/semver-dsl-1.0.1.tgz#d3678de5555e8a61f629eed025366ae5f27340a0" + dependencies: + semver "^5.3.0" + + semver-intersect@^1.1.2: + version "1.3.1" + resolved "https://registry.yarnpkg.com/semver-intersect/-/semver-intersect-1.3.1.tgz#8fa84a9e1028bd239e4530d1a3e181e698d884ba" + dependencies: + semver "^5.0.0" + + "semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0: + version "5.4.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" + + semver@^5.0.0, semver@^5.0.1, semver@^5.4.1: + version "5.5.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" + + semver@~5.0.1: + version "5.0.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.0.3.tgz#77466de589cd5d3c95f138aa78bc569a3cb5d27a" + + semver@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" + + send@0.16.1: + version "0.16.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3" + dependencies: + debug "2.6.9" + depd "~1.1.1" + destroy "~1.0.4" + encodeurl "~1.0.1" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.6.2" + mime "1.4.1" + ms "2.0.0" + on-finished "~2.3.0" + range-parser "~1.2.0" + statuses "~1.3.1" + + serialize-javascript@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.4.0.tgz#7c958514db6ac2443a8abc062dc9f7886a7f6005" + + serve-favicon@^2.4.5: + version "2.4.5" + resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.4.5.tgz#49d9a46863153a9240691c893d2b0e7d85d6d436" + dependencies: + etag "~1.8.1" + fresh "0.5.2" + ms "2.0.0" + parseurl "~1.3.2" + safe-buffer "5.1.1" + + serve-index@^1.7.2: + version "1.9.1" + resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" + dependencies: + accepts "~1.3.4" + batch "0.6.1" + debug "2.6.9" + escape-html "~1.0.3" + http-errors "~1.6.2" + mime-types "~2.1.17" + parseurl "~1.3.2" + + serve-static@1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.1.tgz#4c57d53404a761d8f2e7c1e8a18a47dbf278a719" + dependencies: + encodeurl "~1.0.1" + escape-html "~1.0.3" + parseurl "~1.3.2" + send "0.16.1" + + set-blocking@^2.0.0, set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + + set-getter@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.0.tgz#d769c182c9d5a51f409145f2fba82e5e86e80376" + dependencies: + to-object-path "^0.3.0" + + set-immediate-shim@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" + + set-value@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.1" + to-object-path "^0.3.0" + + set-value@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + + setimmediate@^1.0.4, setimmediate@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + + setprototypeof@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" + + setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + + sha.js@^2.4.0, sha.js@^2.4.8, sha.js@~2.4.4: + version "2.4.9" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.9.tgz#98f64880474b74f4a38b8da9d3c0f2d104633e7d" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + + shallow-clone@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" + dependencies: + is-extendable "^0.1.1" + kind-of "^5.0.0" + mixin-object "^2.0.1" + + shallowequal@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-0.2.2.tgz#1e32fd5bcab6ad688a4812cb0cc04efc75c7014e" + dependencies: + lodash.keys "^3.1.2" + + shasum@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/shasum/-/shasum-1.0.2.tgz#e7012310d8f417f4deb5712150e5678b87ae565f" + dependencies: + json-stable-stringify "~0.0.0" + sha.js "~2.4.4" + + shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + dependencies: + shebang-regex "^1.0.0" + + shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + + shell-quote@1.6.1, shell-quote@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" + dependencies: + array-filter "~0.0.0" + array-map "~0.0.0" + array-reduce "~0.0.0" + jsonify "~0.0.0" + + shelljs@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.0.tgz#12f561c52ec5d0d3315af15616c011a18ff80d59" + dependencies: + glob "^7.0.0" + interpret "^1.0.0" + rechoir "^0.6.2" + + shelljs@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.1.tgz#729e038c413a2254c4078b95ed46e0397154a9f1" + dependencies: + glob "^7.0.0" + interpret "^1.0.0" + rechoir "^0.6.2" + + shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + + signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + + silent-error@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/silent-error/-/silent-error-1.1.0.tgz#2209706f1c850a9f1d10d0d840918b46f26e1bc9" + dependencies: + debug "^2.2.0" + + single-line-log@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/single-line-log/-/single-line-log-1.1.2.tgz#c2f83f273a3e1a16edb0995661da0ed5ef033364" + dependencies: + string-width "^1.0.1" + + slack-node@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/slack-node/-/slack-node-0.2.0.tgz#de4b8dddaa8b793f61dbd2938104fdabf37dfa30" + dependencies: + requestretry "^1.2.2" + + slash@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" + + slice-ansi@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" + + smart-buffer@^1.0.13, smart-buffer@^1.0.4: + version "1.1.15" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-1.1.15.tgz#7f114b5b65fab3e2a35aa775bb12f0d1c649bf16" + + smtp-connection@2.12.0: + version "2.12.0" + resolved "https://registry.yarnpkg.com/smtp-connection/-/smtp-connection-2.12.0.tgz#d76ef9127cb23c2259edb1e8349c2e8d5e2d74c1" + dependencies: + httpntlm "1.6.1" + nodemailer-shared "1.1.0" + + snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + + snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + dependencies: + kind-of "^3.2.0" + + snapdragon@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.1.tgz#e12b5487faded3e3dea0ac91e9400bf75b401370" + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^2.0.0" + + sntp@1.x.x: + version "1.0.9" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" + dependencies: + hoek "2.x.x" + + sntp@2.x.x: + version "2.1.0" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8" + dependencies: + hoek "4.x.x" + + socket.io-adapter@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz#2a805e8a14d6372124dd9159ad4502f8cb07f06b" + + socket.io-client@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-2.0.4.tgz#0918a552406dc5e540b380dcd97afc4a64332f8e" + dependencies: + backo2 "1.0.2" + base64-arraybuffer "0.1.5" + component-bind "1.0.0" + component-emitter "1.2.1" + debug "~2.6.4" + engine.io-client "~3.1.0" + has-cors "1.1.0" + indexof "0.0.1" + object-component "0.0.3" + parseqs "0.0.5" + parseuri "0.0.5" + socket.io-parser "~3.1.1" + to-array "0.1.4" + + socket.io-parser@~3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.1.2.tgz#dbc2282151fc4faebbe40aeedc0772eba619f7f2" + dependencies: + component-emitter "1.2.1" + debug "~2.6.4" + has-binary2 "~1.0.2" + isarray "2.0.1" + + socket.io@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-2.0.4.tgz#c1a4590ceff87ecf13c72652f046f716b29e6014" + dependencies: + debug "~2.6.6" + engine.io "~3.1.0" + socket.io-adapter "~1.1.0" + socket.io-client "2.0.4" + socket.io-parser "~3.1.1" + + sockjs-client@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.4.tgz#5babe386b775e4cf14e7520911452654016c8b12" + dependencies: + debug "^2.6.6" + eventsource "0.1.6" + faye-websocket "~0.11.0" + inherits "^2.0.1" + json3 "^3.3.2" + url-parse "^1.1.8" + + sockjs@0.3.19: + version "0.3.19" + resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" + dependencies: + faye-websocket "^0.10.0" + uuid "^3.0.1" + + socks-proxy-agent@2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-2.1.1.tgz#86ebb07193258637870e13b7bd99f26c663df3d3" + dependencies: + agent-base "2" + extend "3" + socks "~1.1.5" + + socks@1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/socks/-/socks-1.1.9.tgz#628d7e4d04912435445ac0b6e459376cb3e6d691" + dependencies: + ip "^1.1.2" + smart-buffer "^1.0.4" + + socks@~1.1.5: + version "1.1.10" + resolved "https://registry.yarnpkg.com/socks/-/socks-1.1.10.tgz#5b8b7fc7c8f341c53ed056e929b7bf4de8ba7b5a" + dependencies: + ip "^1.1.4" + smart-buffer "^1.0.13" + + sort-keys@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" + dependencies: + is-plain-obj "^1.0.0" + + source-list-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" + + source-list-map@~0.1.7: + version "0.1.8" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" + + source-map-resolve@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.1.tgz#7ad0f593f2281598e854df80f19aae4b92d7a11a" + dependencies: + atob "^2.0.0" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + + source-map-support@^0.4.0, source-map-support@^0.4.1, source-map-support@^0.4.15, source-map-support@^0.4.2, source-map-support@~0.4.0: + version "0.4.18" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" + dependencies: + source-map "^0.5.6" + + source-map-support@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.3.tgz#2b3d5fff298cfa4d1afd7d4352d569e9a0158e76" + dependencies: + source-map "^0.6.0" + + source-map-url@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" + + source-map@0.1.x: + version "0.1.43" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + dependencies: + amdefine ">=0.0.4" + + source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.0, source-map@~0.5.1, source-map@~0.5.3, source-map@~0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + + source-map@^0.4.2, source-map@^0.4.4, source-map@~0.4.1: + version "0.4.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" + dependencies: + amdefine ">=0.0.4" + + source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + + spdx-correct@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" + dependencies: + spdx-license-ids "^1.0.2" + + spdx-expression-parse@~1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" + + spdx-license-ids@^1.0.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" + + spdy-transport@^2.0.18: + version "2.0.20" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.0.20.tgz#735e72054c486b2354fe89e702256004a39ace4d" + dependencies: + debug "^2.6.8" + detect-node "^2.0.3" + hpack.js "^2.1.6" + obuf "^1.1.1" + readable-stream "^2.2.9" + safe-buffer "^5.0.1" + wbuf "^1.7.2" + + spdy@^3.4.1: + version "3.4.7" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" + dependencies: + debug "^2.6.8" + handle-thing "^1.2.5" + http-deceiver "^1.2.7" + safe-buffer "^5.0.1" + select-hose "^2.0.0" + spdy-transport "^2.0.18" + + speedometer@~0.1.2: + version "0.1.4" + resolved "https://registry.yarnpkg.com/speedometer/-/speedometer-0.1.4.tgz#9876dbd2a169d3115402d48e6ea6329c8816a50d" + + split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + dependencies: + extend-shallow "^3.0.0" + + sprintf-js@^1.0.3: + version "1.1.1" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.1.tgz#36be78320afe5801f6cea3ee78b6e5aab940ea0c" + + sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + + sshpk@^1.7.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + dashdash "^1.12.0" + getpass "^0.1.1" + optionalDependencies: + bcrypt-pbkdf "^1.0.0" + ecc-jsbn "~0.1.1" + jsbn "~0.1.0" + tweetnacl "~0.14.0" + + ssri@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.0.0.tgz#13c19390b606c821f2a10d02b351c1729b94d8cf" + dependencies: + safe-buffer "^5.1.0" + + ssri@^5.2.4: + version "5.3.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.3.0.tgz#ba3872c9c6d33a0704a7d71ff045e5ec48999d06" + dependencies: + safe-buffer "^5.1.1" + + stack-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620" + + static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + + "statuses@>= 1.3.1 < 2": + version "1.4.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" + + statuses@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" + + stdout-stream@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b" + dependencies: + readable-stream "^2.0.1" + + stealthy-require@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" + + stream-browserify@^2.0.0, stream-browserify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" + dependencies: + inherits "~2.0.1" + readable-stream "^2.0.2" + + stream-combiner2@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz#fb4d8a1420ea362764e21ad4780397bebcb41cbe" + dependencies: + duplexer2 "~0.1.0" + readable-stream "^2.0.2" + + stream-each@^1.1.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.2.tgz#8e8c463f91da8991778765873fe4d960d8f616bd" + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + + stream-http@^2.0.0, stream-http@^2.7.2: + version "2.8.0" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.0.tgz#fd86546dac9b1c91aff8fc5d287b98fafb41bc10" + dependencies: + builtin-status-codes "^3.0.0" + inherits "^2.0.1" + readable-stream "^2.3.3" + to-arraybuffer "^1.0.0" + xtend "^4.0.0" + + stream-shift@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" + + stream-splicer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/stream-splicer/-/stream-splicer-2.0.0.tgz#1b63be438a133e4b671cc1935197600175910d83" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.2" + + stream-to-observable@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.1.0.tgz#45bf1d9f2d7dc09bed81f1c307c430e68b84cffe" + + streamroller@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/streamroller/-/streamroller-0.7.0.tgz#a1d1b7cf83d39afb0d63049a5acbf93493bdf64b" + dependencies: + date-format "^1.2.0" + debug "^3.1.0" + mkdirp "^0.5.1" + readable-stream "^2.3.0" + + strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + + string-length@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" + dependencies: + astral-regex "^1.0.0" + strip-ansi "^4.0.0" + + string-width@^1.0.1, string-width@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + + string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + + string.prototype.padend@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.4.3" + function-bind "^1.0.2" + + string.prototype.padstart@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/string.prototype.padstart/-/string.prototype.padstart-3.0.0.tgz#5bcfad39f4649bb2d031292e19bcf0b510d4b242" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.4.3" + function-bind "^1.0.2" + + string_decoder@^1.0.0, string_decoder@~1.0.0, string_decoder@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" + dependencies: + safe-buffer "~5.1.0" + + string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + + stringstream@~0.0.4, stringstream@~0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" + + strip-ansi@3.0.1, strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + dependencies: + ansi-regex "^2.0.0" + + strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + dependencies: + ansi-regex "^3.0.0" + + strip-bom@3.0.0, strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + + strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + dependencies: + is-utf8 "^0.2.0" + + strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + + strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + dependencies: + get-stdin "^4.0.1" + + strip-json-comments@^2.0.0, strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + + style-loader@^0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.19.1.tgz#591ffc80bcefe268b77c5d9ebc0505d772619f85" + dependencies: + loader-utils "^1.0.2" + schema-utils "^0.3.0" + + style-loader@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.20.2.tgz#851b373c187890331776e9cde359eea9c95ecd00" + dependencies: + loader-utils "^1.1.0" + schema-utils "^0.4.3" + + stylus-loader@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/stylus-loader/-/stylus-loader-3.0.1.tgz#77f4b34fd030d25b2617bcf5513db5b0730c4089" + dependencies: + loader-utils "^1.0.2" + lodash.clonedeep "^4.5.0" + when "~3.6.x" + + stylus@^0.54.5: + version "0.54.5" + resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.5.tgz#42b9560931ca7090ce8515a798ba9e6aa3d6dc79" + dependencies: + css-parse "1.7.x" + debug "*" + glob "7.0.x" + mkdirp "0.5.x" + sax "0.5.x" + source-map "0.1.x" + + subarg@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2" + dependencies: + minimist "^1.1.0" + + sumchecker@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/sumchecker/-/sumchecker-1.3.1.tgz#79bb3b4456dd04f18ebdbc0d703a1d1daec5105d" + dependencies: + debug "^2.2.0" + es6-promise "^4.0.5" + + supports-color@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" + dependencies: + has-flag "^1.0.0" + + supports-color@4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" + dependencies: + has-flag "^2.0.0" + + supports-color@5.1.0, supports-color@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.1.0.tgz#058a021d1b619f7ddf3980d712ea3590ce7de3d5" + dependencies: + has-flag "^2.0.0" + + supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + + supports-color@^3.1.2, supports-color@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" + dependencies: + has-flag "^1.0.0" + + supports-color@^4.0.0, supports-color@^4.2.1: + version "4.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" + dependencies: + has-flag "^2.0.0" + + supports-color@^5.2.0, supports-color@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.3.0.tgz#5b24ac15db80fa927cf5227a4a33fd3c4c7676c0" + dependencies: + has-flag "^3.0.0" + + svg-tag-names@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/svg-tag-names/-/svg-tag-names-1.1.1.tgz#9641b29ef71025ee094c7043f7cdde7d99fbd50a" + + svgo@^0.7.0: + version "0.7.2" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" + dependencies: + coa "~1.0.1" + colors "~1.1.2" + csso "~2.3.1" + js-yaml "~3.7.0" + mkdirp "~0.5.1" + sax "~1.2.1" + whet.extend "~0.9.9" + + symbol-observable@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" + + symbol-observable@^1.0.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" + + symbol-tree@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" + + sync-rest-client@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sync-rest-client/-/sync-rest-client-1.0.3.tgz#a36273679a9c22a18733bdafd91d659f90d46dcf" + dependencies: + deasync "^0.1.8" + request "^2.75.0" + wait-sync "^1.0.1" + + syntax-error@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.3.0.tgz#1ed9266c4d40be75dc55bf9bb1cb77062bb96ca1" + dependencies: + acorn "^4.0.3" + + tapable@^0.2.7: + version "0.2.8" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.8.tgz#99372a5c999bf2df160afc0d74bed4f47948cd22" + + tar-pack@^3.4.0: + version "3.4.1" + resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" + dependencies: + debug "^2.2.0" + fstream "^1.0.10" + fstream-ignore "^1.0.5" + once "^1.3.3" + readable-stream "^2.1.4" + rimraf "^2.5.1" + tar "^2.2.1" + uid-number "^0.0.6" + + tar@^2.0.0, tar@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" + dependencies: + block-stream "*" + fstream "^1.0.2" + inherits "2" + + tcomb-validation@^3.3.0: + version "3.4.1" + resolved "https://registry.yarnpkg.com/tcomb-validation/-/tcomb-validation-3.4.1.tgz#a7696ec176ce56a081d9e019f8b732a5a8894b65" + dependencies: + tcomb "^3.0.0" + + tcomb@^3.0.0, tcomb@^3.2.17: + version "3.2.24" + resolved "https://registry.yarnpkg.com/tcomb/-/tcomb-3.2.24.tgz#7f427053cc393b5997c4c3d859ca20411180887b" + + terminal-banner@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/terminal-banner/-/terminal-banner-1.1.0.tgz#ef81ce7d9d7e541a81d09eb2c0257c3d5463c3ea" + + test-exclude@^4.1.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.1.tgz#dfa222f03480bca69207ca728b37d74b45f724fa" + dependencies: + arrify "^1.0.1" + micromatch "^3.1.8" + object-assign "^4.1.0" + read-pkg-up "^1.0.1" + require-main-filename "^1.0.1" + + text-table@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + + throat@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" + + throttleit@0.0.2, throttleit@~0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-0.0.2.tgz#cfedf88e60c00dd9697b61fdd2a8343a9b680eaf" + + through2@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" + dependencies: + readable-stream "^2.1.5" + xtend "~4.0.1" + + through2@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/through2/-/through2-0.2.3.tgz#eb3284da4ea311b6cc8ace3653748a52abf25a3f" + dependencies: + readable-stream "~1.1.9" + xtend "~2.1.1" + + "through@>=2.2.7 <3", through@X.X.X, through@^2.3.6, through@^2.3.8, through@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + + thunkify@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/thunkify/-/thunkify-2.1.2.tgz#faa0e9d230c51acc95ca13a361ac05ca7e04553d" + + thunky@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/thunky/-/thunky-0.1.0.tgz#bf30146824e2b6e67b0f2d7a4ac8beb26908684e" + + time-stamp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-2.0.0.tgz#95c6a44530e15ba8d6f4a3ecb8c3a3fac46da357" + + timers-browserify@^1.0.1: + version "1.4.2" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-1.4.2.tgz#c9c58b575be8407375cb5e2462dacee74359f41d" + dependencies: + process "~0.11.0" + + timers-browserify@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.4.tgz#96ca53f4b794a5e7c0e1bd7cc88a372298fa01e6" + dependencies: + setimmediate "^1.0.4" + + timespan@2.3.x: + version "2.3.0" + resolved "https://registry.yarnpkg.com/timespan/-/timespan-2.3.0.tgz#4902ce040bd13d845c8f59b27e9d59bad6f39929" + + tinycolor2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8" + + tmp@0.0.24: + version "0.0.24" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.24.tgz#d6a5e198d14a9835cc6f2d7c3d9e302428c8cf12" + + tmp@0.0.30: + version "0.0.30" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.30.tgz#72419d4a8be7d6ce75148fd8b324e593a711c2ed" + dependencies: + os-tmpdir "~1.0.1" + + tmp@0.0.31: + version "0.0.31" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7" + dependencies: + os-tmpdir "~1.0.1" + + tmp@0.0.33, tmp@0.0.x, tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + dependencies: + os-tmpdir "~1.0.2" + + tmpl@1.0.x: + version "1.0.4" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" + + to-array@0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890" + + to-arraybuffer@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + + to-fast-properties@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" + + to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + dependencies: + kind-of "^3.0.2" + + to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + + to-regex@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + + toposort@^1.0.0: + version "1.0.6" + resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.6.tgz#c31748e55d210effc00fdcdc7d6e68d7d7bb9cec" + + tough-cookie@>=2.3.3, tough-cookie@^2.3.3: + version "2.3.4" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" + dependencies: + punycode "^1.4.1" + + tough-cookie@~2.3.0, tough-cookie@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" + dependencies: + punycode "^1.4.1" + + tr46@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" + dependencies: + punycode "^2.1.0" + + tree-kill@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.0.tgz#5846786237b4239014f05db156b643212d4c6f36" + + trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + + trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + + "true-case-path@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.2.tgz#7ec91130924766c7f573be3020c34f8fdfd00d62" + dependencies: + glob "^6.0.4" + + ts-jest@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-22.4.1.tgz#69defb2042d689cff9b4244365ef638ecd35f706" + dependencies: + babel-core "^6.24.1" + babel-plugin-istanbul "^4.1.4" + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-preset-jest "^22.4.0" + cpx "^1.5.0" + fs-extra "4.0.3" + jest-config "^22.4.0" + pkg-dir "^2.0.0" + yargs "^11.0.0" + + ts-loader@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-3.2.0.tgz#23211922179b81f7448754b7fdfca45b8374a15a" + dependencies: + chalk "^2.3.0" + enhanced-resolve "^3.0.0" + loader-utils "^1.0.2" + semver "^5.0.1" + + ts-loader@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-3.5.0.tgz#151d004dcddb4cf8e381a3bf9d6b74c2d957a9c0" + dependencies: + chalk "^2.3.0" + enhanced-resolve "^3.0.0" + loader-utils "^1.0.2" + micromatch "^3.1.4" + semver "^5.0.1" + + ts-node@~3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-3.2.2.tgz#bbd28e38af4aaa3e96076c466e1b220197c1a3ce" + dependencies: + arrify "^1.0.0" + chalk "^2.0.0" + diff "^3.1.0" + make-error "^1.1.1" + minimist "^1.2.0" + mkdirp "^0.5.1" + source-map-support "^0.4.0" + tsconfig "^6.0.0" + v8flags "^3.0.0" + yn "^2.0.0" + + tsconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-6.0.0.tgz#6b0e8376003d7af1864f8df8f89dd0059ffcd032" + dependencies: + strip-bom "^3.0.0" + strip-json-comments "^2.0.0" + + tsickle@^0.26.0: + version "0.26.0" + resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.26.0.tgz#40b30a2dd6abcb33b182e37596674bd1cfe4039c" + dependencies: + minimist "^1.2.0" + mkdirp "^0.5.1" + source-map "^0.5.6" + source-map-support "^0.4.2" + + tslib@^1.7.1, tslib@^1.8.0, tslib@^1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.8.1.tgz#6946af2d1d651a7b1863b531d6e5afa41aa44eac" + + tslint@~5.9.1: + version "5.9.1" + resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.9.1.tgz#1255f87a3ff57eb0b0e1f0e610a8b4748046c9ae" + dependencies: + babel-code-frame "^6.22.0" + builtin-modules "^1.1.1" + chalk "^2.3.0" + commander "^2.12.1" + diff "^3.2.0" + glob "^7.1.1" + js-yaml "^3.7.0" + minimatch "^3.0.4" + resolve "^1.3.2" + semver "^5.3.0" + tslib "^1.8.0" + tsutils "^2.12.1" + + tsscmp@~1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.5.tgz#7dc4a33af71581ab4337da91d85ca5427ebd9a97" + + tsutils@^2.12.1: + version "2.18.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.18.0.tgz#f97385709d348169002c12f6f5fd42c1df13b250" + dependencies: + tslib "^1.8.1" + + tty-browserify@0.0.0, tty-browserify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + + tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + dependencies: + safe-buffer "^5.0.1" + + tunnel-agent@~0.4.1: + version "0.4.3" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" + + tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + + type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + dependencies: + prelude-ls "~1.1.2" + + type-is@~1.6.15: + version "1.6.15" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" + dependencies: + media-typer "0.3.0" + mime-types "~2.1.15" + + typedarray@^0.0.6, typedarray@~0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + + typescript@~2.5.3: + version "2.5.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.5.3.tgz#df3dcdc38f3beb800d4bc322646b04a3f6ca7f0d" + + typescript@~2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.6.2.tgz#3c5b6fd7f6de0914269027f03c0946758f7673a4" + + ua-parser-js@^0.7.9: + version "0.7.17" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.17.tgz#e9ec5f9498b9ec910e7ae3ac626a805c4d09ecac" + + uglify-es@^3.3.4: + version "3.3.7" + resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.7.tgz#d1249af668666aba7cb1163e277455be9eb393cf" + dependencies: + commander "~2.13.0" + source-map "~0.6.1" + + uglify-js@3.3.x: + version "3.3.7" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.3.7.tgz#28463e7c7451f89061d2b235e30925bf5625e14d" + dependencies: + commander "~2.13.0" + source-map "~0.6.1" + + uglify-js@^2.6, uglify-js@^2.8.29: + version "2.8.29" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" + dependencies: + source-map "~0.5.1" + yargs "~3.10.0" + optionalDependencies: + uglify-to-browserify "~1.0.0" + + uglify-to-browserify@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" + + uglifyjs-webpack-plugin@^0.4.6: + version "0.4.6" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz#b951f4abb6bd617e66f63eb891498e391763e309" + dependencies: + source-map "^0.5.6" + uglify-js "^2.8.29" + webpack-sources "^1.0.1" + + uglifyjs-webpack-plugin@^1.1.8: + version "1.2.3" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.3.tgz#bf23197b37a8fc953fecfbcbab66e506f9a0ae72" + dependencies: + cacache "^10.0.4" + find-cache-dir "^1.0.0" + schema-utils "^0.4.5" + serialize-javascript "^1.4.0" + source-map "^0.6.1" + uglify-es "^3.3.4" + webpack-sources "^1.1.0" + worker-farm "^1.5.2" + + uglifyjs-webpack-plugin@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.2.tgz#e7516d4367afdb715c3847841eb46f94c45ca2b9" + dependencies: + cacache "^10.0.1" + find-cache-dir "^1.0.0" + schema-utils "^0.4.2" + serialize-javascript "^1.4.0" + source-map "^0.6.1" + uglify-es "^3.3.4" + webpack-sources "^1.1.0" + worker-farm "^1.5.2" + + uid-number@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" + + ultron@1.0.x: + version "1.0.2" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" + + ultron@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" + + umd@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.1.tgz#8ae556e11011f63c2596708a8837259f01b3d60e" + + underscore@~1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" + + union-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^0.4.3" + + uniq@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" + + uniqid@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1" + dependencies: + macaddress "^0.2.8" + + uniqs@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" + + unique-filename@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" + dependencies: + unique-slug "^2.0.0" + + unique-slug@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" + dependencies: + imurmurhash "^0.1.4" + + unique-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" + dependencies: + crypto-random-string "^1.0.0" + + universalify@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7" + + unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + + unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + + upath@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/upath/-/upath-1.0.4.tgz#ee2321ba0a786c50973db043a50b7bcba822361d" + + upper-case@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" + + urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + + url-loader@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.6.2.tgz#a007a7109620e9d988d14bce677a1decb9a993f7" + dependencies: + loader-utils "^1.0.2" + mime "^1.4.1" + schema-utils "^0.3.0" + + url-parse@1.0.x: + version "1.0.5" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b" + dependencies: + querystringify "0.0.x" + requires-port "1.0.x" + + url-parse@^1.1.8: + version "1.2.0" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.2.0.tgz#3a19e8aaa6d023ddd27dcc44cb4fc8f7fec23986" + dependencies: + querystringify "~1.0.0" + requires-port "~1.0.0" + + url@0.11.0, url@^0.11.0, url@~0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + dependencies: + punycode "1.3.2" + querystring "0.2.0" + + use@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/use/-/use-2.0.2.tgz#ae28a0d72f93bf22422a18a2e379993112dec8e8" + dependencies: + define-property "^0.2.5" + isobject "^3.0.0" + lazy-cache "^2.0.2" + + useragent@^2.1.12: + version "2.2.1" + resolved "https://registry.yarnpkg.com/useragent/-/useragent-2.2.1.tgz#cf593ef4f2d175875e8bb658ea92e18a4fd06d8e" + dependencies: + lru-cache "2.2.x" + tmp "0.0.x" + + util-deprecate@^1.0.2, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + + util.promisify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + dependencies: + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" + + util@0.10.3, util@^0.10.3, util@~0.10.1: + version "0.10.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + dependencies: + inherits "2.0.1" + + utila@~0.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.3.3.tgz#d7e8e7d7e309107092b05f8d9688824d633a4226" + + utila@~0.4: + version "0.4.0" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + + utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + + uuid@^3.0.0, uuid@^3.0.1, uuid@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" + + uuid@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" + + uws@~0.14.4: + version "0.14.5" + resolved "https://registry.yarnpkg.com/uws/-/uws-0.14.5.tgz#67aaf33c46b2a587a5f6666d00f7691328f149dc" + + v8flags@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.0.1.tgz#dce8fc379c17d9f2c9e9ed78d89ce00052b1b76b" + dependencies: + homedir-polyfill "^1.0.1" + + validate-npm-package-license@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" + dependencies: + spdx-correct "~1.0.0" + spdx-expression-parse "~1.0.0" + + validator@^9.1.2: + version "9.4.0" + resolved "https://registry.yarnpkg.com/validator/-/validator-9.4.0.tgz#c503ef88f7e6b8fb7688599267b309482d81ae60" + + vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + + velocity-animate@^1.4.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/velocity-animate/-/velocity-animate-1.5.1.tgz#606837047bab8fbfb59a636d1d82ecc3f7bd71a6" + + velocity-react@^1.3.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/velocity-react/-/velocity-react-1.3.3.tgz#d6d47276cfc8be2a75623879b20140ac58c1b82b" + dependencies: + lodash "^3.10.1" + prop-types "^15.5.8" + react-transition-group "^1.1.2" + velocity-animate "^1.4.0" + + vendors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22" + + verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + + vlq@^0.2.1: + version "0.2.3" + resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" + + vm-browserify@0.0.4, vm-browserify@~0.0.1: + version "0.0.4" + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" + dependencies: + indexof "0.0.1" + + void-elements@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" + + w3c-hr-time@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" + dependencies: + browser-process-hrtime "^0.1.2" + + wait-sync@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wait-sync/-/wait-sync-1.0.1.tgz#c98038819ecf7b4eb20d5b576cdb99b3a864d555" + dependencies: + deasync "^0.1.8" + + walker@~1.0.5: + version "1.0.7" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" + dependencies: + makeerror "1.0.x" + + wallaby-webpack@^3.9.5: + version "3.9.5" + resolved "https://registry.yarnpkg.com/wallaby-webpack/-/wallaby-webpack-3.9.5.tgz#b67eaec3a1fd13921ced7087c712b5314a57363f" + dependencies: + graceful-fs "^4.1.3" + lodash "^3.5.0" + minimatch "3.0.3" + + warning@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c" + dependencies: + loose-envify "^1.0.0" + + watch@~0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986" + dependencies: + exec-sh "^0.2.0" + minimist "^1.2.0" + + watchpack@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.4.0.tgz#4a1472bcbb952bd0a9bb4036801f954dfb39faac" + dependencies: + async "^2.1.2" + chokidar "^1.7.0" + graceful-fs "^4.1.2" + + wbuf@^1.1.0, wbuf@^1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.2.tgz#d697b99f1f59512df2751be42769c1580b5801fe" + dependencies: + minimalistic-assert "^1.0.0" + + webdriver-js-extender@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/webdriver-js-extender/-/webdriver-js-extender-1.0.0.tgz#81c533a9e33d5bfb597b4e63e2cdb25b54777515" + dependencies: + "@types/selenium-webdriver" "^2.53.35" + selenium-webdriver "^2.53.2" + + webdriver-manager@^12.0.6: + version "12.0.6" + resolved "https://registry.yarnpkg.com/webdriver-manager/-/webdriver-manager-12.0.6.tgz#3df1a481977010b4cbf8c9d85c7a577828c0e70b" + dependencies: + adm-zip "^0.4.7" + chalk "^1.1.1" + del "^2.2.0" + glob "^7.0.3" + ini "^1.3.4" + minimist "^1.2.0" + q "^1.4.1" + request "^2.78.0" + rimraf "^2.5.2" + semver "^5.3.0" + xml2js "^0.4.17" + + webidl-conversions@^4.0.1, webidl-conversions@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" + + webpack-core@^0.6.8: + version "0.6.9" + resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.9.tgz#fc571588c8558da77be9efb6debdc5a3b172bdc2" + dependencies: + source-list-map "~0.1.7" + source-map "~0.4.1" + + webpack-dev-middleware@1.12.2, webpack-dev-middleware@^1.12.2, webpack-dev-middleware@~1.12.0: + version "1.12.2" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz#f8fc1120ce3b4fc5680ceecb43d777966b21105e" + dependencies: + memory-fs "~0.4.1" + mime "^1.5.0" + path-is-absolute "^1.0.0" + range-parser "^1.0.3" + time-stamp "^2.0.0" + + webpack-dev-server@~2.11.0: + version "2.11.2" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-2.11.2.tgz#1f4f4c78bf1895378f376815910812daf79a216f" + dependencies: + ansi-html "0.0.7" + array-includes "^3.0.3" + bonjour "^3.5.0" + chokidar "^2.0.0" + compression "^1.5.2" + connect-history-api-fallback "^1.3.0" + debug "^3.1.0" + del "^3.0.0" + express "^4.16.2" + html-entities "^1.2.0" + http-proxy-middleware "~0.17.4" + import-local "^1.0.0" + internal-ip "1.2.0" + ip "^1.1.5" + killable "^1.0.0" + loglevel "^1.4.1" + opn "^5.1.0" + portfinder "^1.0.9" + selfsigned "^1.9.1" + serve-index "^1.7.2" + sockjs "0.3.19" + sockjs-client "1.1.4" + spdy "^3.4.1" + strip-ansi "^3.0.0" + supports-color "^5.1.0" + webpack-dev-middleware "1.12.2" + yargs "6.6.0" + + webpack-hot-middleware@^2.21.0: + version "2.21.2" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.21.2.tgz#2e2aa65563b8b32546b67e53b5a9667dcd80f327" + dependencies: + ansi-html "0.0.7" + html-entities "^1.2.0" + querystring "^0.2.0" + strip-ansi "^3.0.0" + + webpack-merge@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.1.1.tgz#f1197a0a973e69c6fbeeb6d658219aa8c0c13555" + dependencies: + lodash "^4.17.4" + + webpack-sources@^1.0.0, webpack-sources@^1.0.1, webpack-sources@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.1.0.tgz#a101ebae59d6507354d71d8013950a3a8b7a5a54" + dependencies: + source-list-map "^2.0.0" + source-map "~0.6.1" + + webpack-subresource-integrity@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/webpack-subresource-integrity/-/webpack-subresource-integrity-1.0.3.tgz#c0606d40090b070cde428bec8df3603216e472eb" + dependencies: + webpack-core "^0.6.8" + + webpack@3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.6.0.tgz#a89a929fbee205d35a4fa2cc487be9cbec8898bc" + dependencies: + acorn "^5.0.0" + acorn-dynamic-import "^2.0.0" + ajv "^5.1.5" + ajv-keywords "^2.0.0" + async "^2.1.2" + enhanced-resolve "^3.4.0" + escope "^3.6.0" + interpret "^1.0.0" + json-loader "^0.5.4" + json5 "^0.5.1" + loader-runner "^2.3.0" + loader-utils "^1.1.0" + memory-fs "~0.4.1" + mkdirp "~0.5.0" + node-libs-browser "^2.0.0" + source-map "^0.5.3" + supports-color "^4.2.1" + tapable "^0.2.7" + uglifyjs-webpack-plugin "^0.4.6" + watchpack "^1.4.0" + webpack-sources "^1.0.1" + yargs "^8.0.2" + + webpack@^3.11.0, webpack@~3.11.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.11.0.tgz#77da451b1d7b4b117adaf41a1a93b5742f24d894" + dependencies: + acorn "^5.0.0" + acorn-dynamic-import "^2.0.0" + ajv "^6.1.0" + ajv-keywords "^3.1.0" + async "^2.1.2" + enhanced-resolve "^3.4.0" + escope "^3.6.0" + interpret "^1.0.0" + json-loader "^0.5.4" + json5 "^0.5.1" + loader-runner "^2.3.0" + loader-utils "^1.1.0" + memory-fs "~0.4.1" + mkdirp "~0.5.0" + node-libs-browser "^2.0.0" + source-map "^0.5.3" + supports-color "^4.2.1" + tapable "^0.2.7" + uglifyjs-webpack-plugin "^0.4.6" + watchpack "^1.4.0" + webpack-sources "^1.0.1" + yargs "^8.0.2" + + websocket-driver@>=0.5.1: + version "0.7.0" + resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" + dependencies: + http-parser-js ">=0.4.0" + websocket-extensions ">=0.1.1" + + websocket-extensions@>=0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" + + whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3" + dependencies: + iconv-lite "0.4.19" + + whatwg-fetch@>=0.10.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" + + whatwg-url@^6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.4.0.tgz#08fdf2b9e872783a7a1f6216260a1d66cc722e08" + dependencies: + lodash.sortby "^4.7.0" + tr46 "^1.0.0" + webidl-conversions "^4.0.1" + + when@^3.7.7: + version "3.7.8" + resolved "https://registry.yarnpkg.com/when/-/when-3.7.8.tgz#c7130b6a7ea04693e842cdc9e7a1f2aa39a39f82" + + when@~3.6.x: + version "3.6.4" + resolved "https://registry.yarnpkg.com/when/-/when-3.6.4.tgz#473b517ec159e2b85005497a13983f095412e34e" + + whet.extend@~0.9.9: + version "0.9.9" + resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1" + + which-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" + + which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + + which@1, which@^1.2.1, which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" + dependencies: + isexe "^2.0.0" + + wide-align@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + dependencies: + string-width "^1.0.2" + + window-size@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" + + wordwrap@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" + + wordwrap@~0.0.2: + version "0.0.3" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" + + wordwrap@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + + worker-farm@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.5.2.tgz#32b312e5dc3d5d45d79ef44acc2587491cd729ae" + dependencies: + errno "^0.1.4" + xtend "^4.0.1" + + wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + + wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + + write-file-atomic@^2.0.0, write-file-atomic@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + + ws@^1.0.1: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.5.tgz#cbd9e6e75e09fc5d2c90015f21f0c40875e0dd51" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + + ws@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-4.1.0.tgz#a979b5d7d4da68bf54efe0408967c324869a7289" + dependencies: + async-limiter "~1.0.0" + safe-buffer "~5.1.0" + + ws@~3.3.1: + version "3.3.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" + dependencies: + async-limiter "~1.0.0" + safe-buffer "~5.1.0" + ultron "~1.1.0" + + xdg-basedir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" + + xml-char-classes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d" + + xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + + xml2js@0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.4.tgz#3111010003008ae19240eba17497b57c729c555d" + dependencies: + sax "0.6.x" + xmlbuilder ">=1.0.0" + + xml2js@^0.4.17: + version "0.4.19" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" + dependencies: + sax ">=0.6.0" + xmlbuilder "~9.0.1" + + xml@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5" + + xmlbuilder@>=1.0.0, xmlbuilder@~9.0.1: + version "9.0.4" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.4.tgz#519cb4ca686d005a8420d3496f3f0caeecca580f" + + xmlhttprequest-ssl@~1.5.4: + version "1.5.5" + resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e" + + xregexp@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" + + xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + + xtend@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" + dependencies: + object-keys "~0.4.0" + + xxhashjs@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/xxhashjs/-/xxhashjs-0.2.1.tgz#9bbe9be896142976dfa34c061b2d068c43d30de0" + dependencies: + cuint latest + + y18n@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" + + y18n@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + + yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + + yargs-parser@^4.2.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c" + dependencies: + camelcase "^3.0.0" + + yargs-parser@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" + dependencies: + camelcase "^3.0.0" + + yargs-parser@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" + dependencies: + camelcase "^4.1.0" + + yargs-parser@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-8.1.0.tgz#f1376a33b6629a5d063782944da732631e966950" + dependencies: + camelcase "^4.1.0" + + yargs-parser@^9.0.2: + version "9.0.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" + dependencies: + camelcase "^4.1.0" + + yargs@6.6.0: + version "6.6.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" + dependencies: + camelcase "^3.0.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^1.4.0" + read-pkg-up "^1.0.1" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^1.0.2" + which-module "^1.0.0" + y18n "^3.2.1" + yargs-parser "^4.2.0" + + yargs@^10.0.3: + version "10.1.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-10.1.2.tgz#454d074c2b16a51a43e2fb7807e4f9de69ccb5c5" + dependencies: + cliui "^4.0.0" + decamelize "^1.1.1" + find-up "^2.1.0" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^8.1.0" + + yargs@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.0.0.tgz#c052931006c5eee74610e5fc0354bedfd08a201b" + dependencies: + cliui "^4.0.0" + decamelize "^1.1.1" + find-up "^2.1.0" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^9.0.2" + + yargs@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" + dependencies: + camelcase "^3.0.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^1.4.0" + read-pkg-up "^1.0.1" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^1.0.2" + which-module "^1.0.0" + y18n "^3.2.1" + yargs-parser "^5.0.0" + + yargs@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360" + dependencies: + camelcase "^4.1.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + read-pkg-up "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^7.0.0" + + yargs@~3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" + dependencies: + camelcase "^1.0.2" + cliui "^2.1.0" + decamelize "^1.0.0" + window-size "0.1.0" + + yauzl@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005" + dependencies: + fd-slicer "~1.0.1" + + yauzl@2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.8.0.tgz#79450aff22b2a9c5a41ef54e02db907ccfbf9ee2" + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.0.1" + + yeast@0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" + + yn@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yn/-/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a" + + zone.js@^0.8.19, zone.js@^0.8.20: + version "0.8.20" + resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.8.20.tgz#a218c48db09464b19ff6fc8f0d4bb5b1046e185d" + +Trace: + Error: connect ETIMEDOUT 104.16.62.173:443 + at Object._errnoException (util.js:1021:11) + at _exceptionWithHostPort (util.js:1043:20) + at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1175:14) diff --git a/public/yarn.lock b/public/yarn.lock new file mode 100644 index 0000000..df0e3b2 --- /dev/null +++ b/public/yarn.lock @@ -0,0 +1,11886 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@angular-devkit/build-optimizer@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@angular-devkit/build-optimizer/-/build-optimizer-0.3.2.tgz#77d4d1e4fcd09575f0200e2d6d21c1a3f995096f" + dependencies: + loader-utils "^1.1.0" + source-map "^0.5.6" + typescript "~2.6.2" + webpack-sources "^1.0.1" + +"@angular-devkit/core@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-0.3.2.tgz#b6fd6aa2e4f4ac3c39478198ba91a53d4c0f88d5" + dependencies: + ajv "~5.5.1" + chokidar "^1.7.0" + rxjs "^5.5.6" + source-map "^0.5.6" + +"@angular-devkit/schematics@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-0.3.2.tgz#09a2268fad61f4f956f42db87913b8748c512a78" + dependencies: + "@ngtools/json-schema" "^1.1.0" + rxjs "^5.5.6" + +"@angular/animations@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-5.2.0.tgz#a3ce02c01b074f0de7c2c23c1f08b4a00f0bec5f" + dependencies: + tslib "^1.7.1" + +"@angular/cdk@^5.1.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@angular/cdk/-/cdk-5.1.1.tgz#a278b44ec02145a4691aa466dde06a1ae8c0fe88" + dependencies: + tslib "^1.7.1" + +"@angular/cli@^1.7.3": + version "1.7.3" + resolved "https://registry.yarnpkg.com/@angular/cli/-/cli-1.7.3.tgz#ac917b69240bb1b340421e9f985135890e0d53b4" + dependencies: + "@angular-devkit/build-optimizer" "0.3.2" + "@angular-devkit/core" "0.3.2" + "@angular-devkit/schematics" "0.3.2" + "@ngtools/json-schema" "1.2.0" + "@ngtools/webpack" "1.10.2" + "@schematics/angular" "0.3.2" + "@schematics/package-update" "0.3.2" + ajv "^6.1.1" + autoprefixer "^7.2.3" + cache-loader "^1.2.0" + chalk "~2.2.0" + circular-dependency-plugin "^4.2.1" + clean-css "^4.1.11" + common-tags "^1.3.1" + copy-webpack-plugin "~4.4.1" + core-object "^3.1.0" + denodeify "^1.2.1" + ember-cli-string-utils "^1.0.0" + extract-text-webpack-plugin "^3.0.2" + file-loader "^1.1.5" + fs-extra "^4.0.0" + glob "^7.0.3" + html-webpack-plugin "^2.29.0" + istanbul-instrumenter-loader "^3.0.0" + karma-source-map-support "^1.2.0" + less "^2.7.2" + less-loader "^4.0.5" + license-webpack-plugin "^1.0.0" + loader-utils "1.1.0" + lodash "^4.11.1" + memory-fs "^0.4.1" + minimatch "^3.0.4" + node-modules-path "^1.0.0" + nopt "^4.0.1" + opn "~5.1.0" + portfinder "~1.0.12" + postcss "^6.0.16" + postcss-import "^11.0.0" + postcss-loader "^2.0.10" + postcss-url "^7.1.2" + raw-loader "^0.5.1" + resolve "^1.1.7" + rxjs "^5.5.6" + sass-loader "^6.0.6" + semver "^5.1.0" + silent-error "^1.0.0" + source-map-support "^0.4.1" + style-loader "^0.19.1" + stylus "^0.54.5" + stylus-loader "^3.0.1" + uglifyjs-webpack-plugin "^1.1.8" + url-loader "^0.6.2" + webpack "~3.11.0" + webpack-dev-middleware "~1.12.0" + webpack-dev-server "~2.11.0" + webpack-merge "^4.1.0" + webpack-sources "^1.0.0" + webpack-subresource-integrity "^1.0.1" + optionalDependencies: + node-sass "^4.7.2" + +"@angular/common@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/common/-/common-5.2.0.tgz#d184fb90763da1d1bab1f6c4f41dd80c79e47506" + dependencies: + tslib "^1.7.1" + +"@angular/compiler-cli@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-5.2.0.tgz#336b6d0127c69f25637cbcd82a4b76de6f3a2cce" + dependencies: + chokidar "^1.4.2" + minimist "^1.2.0" + reflect-metadata "^0.1.2" + tsickle "^0.26.0" + +"@angular/compiler@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-5.2.0.tgz#3798795b97e60b47fdc0a150e062dedb4ac39467" + dependencies: + tslib "^1.7.1" + +"@angular/core@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/core/-/core-5.2.0.tgz#f91bf83de3e0defd621adcc007c25d7cd5a85af1" + dependencies: + tslib "^1.7.1" + +"@angular/forms@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-5.2.0.tgz#b5fb6b9ba97334bca0e3202d7fee6b9162cbc824" + dependencies: + tslib "^1.7.1" + +"@angular/http@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/http/-/http-5.2.0.tgz#ebffff97e6c7baa3609a2d68e982bf990b1c72dc" + dependencies: + tslib "^1.7.1" + +"@angular/language-service@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/language-service/-/language-service-5.2.0.tgz#c8fab0ca8cbd79dafc96fad844ae69e9038b69ad" + +"@angular/material@5.1.1": + version "5.1.1" + resolved "https://registry.yarnpkg.com/@angular/material/-/material-5.1.1.tgz#fafbd6bd98f2521ac5e3e2b2f720214386e3f31d" + dependencies: + tslib "^1.7.1" + +"@angular/platform-browser-dynamic@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.0.tgz#6d3e074363606b559c3319d2433d1c08ccaefbad" + dependencies: + tslib "^1.7.1" + +"@angular/platform-browser@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-5.2.0.tgz#89cbc8abf54171ecf3dd9a40970b4982eecc9f73" + dependencies: + tslib "^1.7.1" + +"@angular/router@^5.1.0": + version "5.2.0" + resolved "https://registry.yarnpkg.com/@angular/router/-/router-5.2.0.tgz#0a43f1c6add592c9cb0b9846fc157fc5b23ee73d" + dependencies: + tslib "^1.7.1" + +"@babel/code-frame@^7.0.0-beta.35": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.40.tgz#37e2b0cf7c56026b4b21d3927cadf81adec32ac6" + dependencies: + "@babel/highlight" "7.0.0-beta.40" + +"@babel/highlight@7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.40.tgz#b43d67d76bf46e1d10d227f68cddcd263786b255" + dependencies: + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^3.0.0" + +"@bahmutov/add-typescript-to-cypress@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@bahmutov/add-typescript-to-cypress/-/add-typescript-to-cypress-2.0.0.tgz#5458b630d1d9d309b10941df8757bb59a5db2abf" + dependencies: + "@cypress/webpack-preprocessor" "1.1.3" + am-i-a-dependency "1.1.2" + chalk "2.3.0" + debug "3.1.0" + shelljs "0.8.0" + terminal-banner "1.1.0" + ts-loader "3.2.0" + +"@cypress/listr-verbose-renderer@0.4.1": + version "0.4.1" + resolved "https://registry.yarnpkg.com/@cypress/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#a77492f4b11dcc7c446a34b3e28721afd33c642a" + dependencies: + chalk "^1.1.3" + cli-cursor "^1.0.2" + date-fns "^1.27.2" + figures "^1.7.0" + +"@cypress/webpack-preprocessor@1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@cypress/webpack-preprocessor/-/webpack-preprocessor-1.1.3.tgz#ee216893714c6e89a171ff4a6ffa03893c308c78" + dependencies: + babel-core "6.26.0" + babel-loader "7.1.2" + babel-preset-env "1.6.0" + babel-preset-react "6.24.1" + bluebird "3.5.0" + debug "3.1.0" + lodash.clonedeep "4.5.0" + webpack "3.6.0" + +"@cypress/xvfb@1.1.3": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@cypress/xvfb/-/xvfb-1.1.3.tgz#6294a7d1feb751f12302248f2089fc534c4acb7f" + dependencies: + lodash.once "^4.1.1" + +"@ng-select/ng-select@^0.26.2": + version "0.26.2" + resolved "https://registry.yarnpkg.com/@ng-select/ng-select/-/ng-select-0.26.2.tgz#4e3bbf3743294b7435868af48b1f4dd593ca4c58" + dependencies: + tslib "^1.7.1" + +"@ngtools/json-schema@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@ngtools/json-schema/-/json-schema-1.2.0.tgz#06e5ecd29e9a37d260a447dd873ea2becd228c4f" + +"@ngtools/json-schema@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@ngtools/json-schema/-/json-schema-1.1.0.tgz#c3a0c544d62392acc2813a42c8a0dc6f58f86922" + +"@ngtools/webpack@1.10.2": + version "1.10.2" + resolved "https://registry.yarnpkg.com/@ngtools/webpack/-/webpack-1.10.2.tgz#373705fd19992b36e996203480b1d412e942c8d6" + dependencies: + chalk "~2.2.0" + enhanced-resolve "^3.1.0" + loader-utils "^1.0.2" + magic-string "^0.22.3" + semver "^5.3.0" + source-map "^0.5.6" + tree-kill "^1.0.0" + webpack-sources "^1.1.0" + +"@schematics/angular@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-0.3.2.tgz#be209a032a3e4577992d94fbaa14bd4bfde485e2" + dependencies: + typescript "~2.6.2" + +"@schematics/package-update@0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@schematics/package-update/-/package-update-0.3.2.tgz#c5a299ceba8b9e56f3e1f804f86f07664ec6e01c" + dependencies: + rxjs "^5.5.6" + semver "^5.3.0" + semver-intersect "^1.1.2" + +"@storybook/addon-actions@3.4.0-alpha.9", "@storybook/addon-actions@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-actions/-/addon-actions-3.4.0-alpha.9.tgz#1016751ed00aa043a0b228a8e7e9b370712f4a61" + dependencies: + "@storybook/components" "^3.4.0-alpha.9" + deep-equal "^1.0.1" + glamorous "^4.11.6" + global "^4.3.2" + make-error "^1.3.4" + prop-types "^15.6.0" + react-inspector "^2.2.2" + uuid "^3.2.1" + +"@storybook/addon-knobs@3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-knobs/-/addon-knobs-3.4.0-alpha.9.tgz#7e316eb6055718033b240fc3bae20c7f9533f0e8" + dependencies: + "@storybook/components" "^3.4.0-alpha.9" + babel-runtime "^6.26.0" + deep-equal "^1.0.1" + global "^4.3.2" + insert-css "^2.0.0" + lodash.debounce "^4.0.8" + moment "^2.20.1" + prop-types "^15.6.0" + react-color "^2.11.4" + react-datetime "^2.14.0" + react-textarea-autosize "^5.2.1" + util-deprecate "^1.0.2" + +"@storybook/addon-links@3.4.0-alpha.9", "@storybook/addon-links@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-links/-/addon-links-3.4.0-alpha.9.tgz#cfa0c571cbb2d6da614fe25269e014d88dceaae5" + dependencies: + "@storybook/components" "^3.4.0-alpha.9" + global "^4.3.2" + prop-types "^15.5.10" + +"@storybook/addon-notes@3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-notes/-/addon-notes-3.4.0-alpha.9.tgz#767bdd8ea044ea29b4215286bfa9c09d3ed1aa57" + dependencies: + babel-runtime "^6.26.0" + marked "^0.3.16" + prop-types "^15.6.0" + util-deprecate "^1.0.2" + optionalDependencies: + "@types/react" "^16.0.20" + +"@storybook/addon-options@3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addon-options/-/addon-options-3.4.0-alpha.9.tgz#453a642442c3770eb77be11593f8b925e62841ec" + +"@storybook/addons@3.4.0-alpha.9", "@storybook/addons@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/addons/-/addons-3.4.0-alpha.9.tgz#7701a8a42e6016ae07430e4576b5277cef489f43" + +"@storybook/angular@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/angular/-/angular-3.4.0-alpha.9.tgz#40305a4bf13873a383c9c6c123864f0f8b27cac5" + dependencies: + "@storybook/addon-actions" "^3.4.0-alpha.9" + "@storybook/addon-links" "^3.4.0-alpha.9" + "@storybook/addons" "^3.4.0-alpha.9" + "@storybook/channel-postmessage" "^3.4.0-alpha.9" + "@storybook/core" "^3.4.0-alpha.9" + "@storybook/node-logger" "^3.4.0-alpha.9" + "@storybook/ui" "^3.4.0-alpha.9" + airbnb-js-shims "^1.4.1" + angular2-template-loader "^0.6.2" + autoprefixer "^7.2.6" + babel-core "^6.26.0" + babel-loader "^7.0.0" + babel-plugin-macros "^2.1.0" + babel-plugin-react-docgen "^1.8.2" + babel-preset-env "^1.6.0" + babel-preset-react "^6.24.1" + babel-preset-react-app "^3.1.1" + babel-preset-stage-0 "^6.24.1" + babel-runtime "^6.23.0" + case-sensitive-paths-webpack-plugin "^2.0.0" + common-tags "^1.7.2" + configstore "^3.1.0" + core-js "^2.4.1" + cross-env "^5.1.1" + css-loader "^0.28.9" + dotenv-webpack "^1.5.4" + express "^4.15.3" + file-loader "^1.1.8" + find-cache-dir "^1.0.0" + global "^4.3.2" + html-loader "^0.5.5" + html-webpack-plugin "^2.30.1" + json-loader "^0.5.4" + json-stringify-safe "^5.0.1" + json5 "^0.5.1" + lodash.pick "^4.4.0" + markdown-loader "^2.0.2" + node-sass "^4.7.2" + postcss-flexbugs-fixes "^3.3.0" + postcss-loader "^2.1.0" + prop-types "^15.5.10" + qs "^6.5.1" + raw-loader "^0.5.1" + react "^16.0.0" + react-dev-utils "^5.0.0" + react-dom "^16.0.0" + react-modal "^3.3.1" + redux "^3.6.0" + request "^2.81.0" + rxjs "^5.4.2" + sass-loader "^6.0.6" + style-loader "^0.20.2" + ts-loader "^3.5.0" + uglifyjs-webpack-plugin "^1.2.0" + url-loader "^0.6.2" + util-deprecate "^1.0.2" + webpack "^3.11.0" + zone.js "^0.8.20" + +"@storybook/channel-postmessage@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/channel-postmessage/-/channel-postmessage-3.4.0-alpha.9.tgz#effa7f240b2d4e41b21d5a4c82b8a3cbbd43a1b2" + dependencies: + "@storybook/channels" "^3.4.0-alpha.9" + global "^4.3.2" + json-stringify-safe "^5.0.1" + +"@storybook/channels@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/channels/-/channels-3.4.0-alpha.9.tgz#953eeb38c657be6eb2b6ee7b1d7637e038fc5ddf" + +"@storybook/client-logger@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/client-logger/-/client-logger-3.4.0-alpha.9.tgz#10704a010ec2643937d098202c894f3c392ebfbe" + +"@storybook/components@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/components/-/components-3.4.0-alpha.9.tgz#dc313e9f788780c6eca16c69e30186021466fd20" + dependencies: + glamor "^2.20.40" + glamorous "^4.11.6" + prop-types "^15.6.0" + +"@storybook/core@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/core/-/core-3.4.0-alpha.9.tgz#b80f640b1d482cd4fd49a47cd3ad9e3e9e8e89a3" + dependencies: + "@storybook/addons" "^3.4.0-alpha.9" + "@storybook/channel-postmessage" "^3.4.0-alpha.9" + "@storybook/client-logger" "^3.4.0-alpha.9" + "@storybook/node-logger" "^3.4.0-alpha.9" + "@storybook/ui" "^3.4.0-alpha.9" + autoprefixer "^7.2.6" + babel-runtime "^6.26.0" + chalk "^2.3.1" + commander "^2.14.1" + css-loader "^0.28.9" + dotenv "^5.0.0" + events "^1.1.1" + express "^4.16.2" + file-loader "^1.1.8" + global "^4.3.2" + json-loader "^0.5.7" + postcss-flexbugs-fixes "^3.2.0" + postcss-loader "^2.1.0" + prop-types "^15.5.10" + qs "^6.5.1" + react "^16.0.0" + react-dom "^16.0.0" + serve-favicon "^2.4.5" + shelljs "^0.8.1" + style-loader "^0.20.2" + url-loader "^0.6.2" + webpack "^3.11.0" + webpack-dev-middleware "^1.12.2" + webpack-hot-middleware "^2.21.0" + +"@storybook/mantra-core@^1.7.2": + version "1.7.2" + resolved "https://registry.yarnpkg.com/@storybook/mantra-core/-/mantra-core-1.7.2.tgz#e10c7faca29769e97131e0e0308ef7cfb655b70c" + dependencies: + "@storybook/react-komposer" "^2.0.1" + "@storybook/react-simple-di" "^1.2.1" + babel-runtime "6.x.x" + +"@storybook/node-logger@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/node-logger/-/node-logger-3.4.0-alpha.9.tgz#edb5813f51a9c5c8487988b3e7582aa4d841ad25" + dependencies: + chalk "^2.3.1" + npmlog "^4.1.2" + +"@storybook/podda@^1.2.3": + version "1.2.3" + resolved "https://registry.yarnpkg.com/@storybook/podda/-/podda-1.2.3.tgz#53c4a1a3f8c7bbd5755dff5c34576fd1af9d38ba" + dependencies: + babel-runtime "^6.11.6" + immutable "^3.8.1" + +"@storybook/react-komposer@^2.0.1", "@storybook/react-komposer@^2.0.3": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@storybook/react-komposer/-/react-komposer-2.0.3.tgz#f9e12a9586b2ce95c24c137eabb8b71527ddb369" + dependencies: + "@storybook/react-stubber" "^1.0.0" + babel-runtime "^6.11.6" + hoist-non-react-statics "^1.2.0" + lodash.pick "^4.4.0" + shallowequal "^0.2.2" + +"@storybook/react-simple-di@^1.2.1": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@storybook/react-simple-di/-/react-simple-di-1.3.0.tgz#13116d89a2f42898716a7f8c4095b47415526371" + dependencies: + babel-runtime "6.x.x" + create-react-class "^15.6.2" + hoist-non-react-statics "1.x.x" + prop-types "^15.6.0" + +"@storybook/react-stubber@^1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@storybook/react-stubber/-/react-stubber-1.0.1.tgz#8c312c2658b9eeafce470e1c39e4193f0b5bf9b1" + dependencies: + babel-runtime "^6.5.0" + +"@storybook/ui@^3.4.0-alpha.9": + version "3.4.0-alpha.9" + resolved "https://registry.yarnpkg.com/@storybook/ui/-/ui-3.4.0-alpha.9.tgz#0d507003c95eb7e3db5d6725c98bc9c9db445728" + dependencies: + "@storybook/components" "^3.4.0-alpha.9" + "@storybook/mantra-core" "^1.7.2" + "@storybook/podda" "^1.2.3" + "@storybook/react-komposer" "^2.0.3" + babel-runtime "^6.26.0" + deep-equal "^1.0.1" + events "^1.1.1" + fuse.js "^3.2.0" + global "^4.3.2" + json-stringify-safe "^5.0.1" + keycode "^2.1.9" + lodash.debounce "^4.0.8" + lodash.pick "^4.4.0" + lodash.sortby "^4.7.0" + prop-types "^15.6.0" + qs "^6.5.1" + react-fuzzy "^0.5.2" + react-icons "^2.2.7" + react-inspector "^2.2.2" + react-modal "^3.3.1" + react-split-pane "^0.1.77" + react-treebeard "^2.1.0" + redux "^3.7.2" + +"@types/blob-util@1.3.3": + version "1.3.3" + resolved "https://registry.yarnpkg.com/@types/blob-util/-/blob-util-1.3.3.tgz#adba644ae34f88e1dd9a5864c66ad651caaf628a" + +"@types/bluebird@3.5.18": + version "3.5.18" + resolved "https://registry.yarnpkg.com/@types/bluebird/-/bluebird-3.5.18.tgz#6a60435d4663e290f3709898a4f75014f279c4d6" + +"@types/chai-jquery@1.1.35": + version "1.1.35" + resolved "https://registry.yarnpkg.com/@types/chai-jquery/-/chai-jquery-1.1.35.tgz#9a8f0a39ec0851b2768a8f8c764158c2a2568d04" + dependencies: + "@types/chai" "*" + "@types/jquery" "*" + +"@types/chai@*": + version "4.1.2" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.1.2.tgz#f1af664769cfb50af805431c407425ed619daa21" + +"@types/chai@4.0.8": + version "4.0.8" + resolved "https://registry.yarnpkg.com/@types/chai/-/chai-4.0.8.tgz#d27600e9ba2f371e08695d90a0fe0408d89c7be7" + +"@types/jasmine@*", "@types/jasmine@~2.8.3": + version "2.8.4" + resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.8.4.tgz#5528fb5e53f1b27594f81f18debb7eab8dc532cb" + +"@types/jasminewd2@~2.0.2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/jasminewd2/-/jasminewd2-2.0.3.tgz#0d2886b0cbdae4c0eeba55e30792f584bf040a95" + dependencies: + "@types/jasmine" "*" + +"@types/jest@^22.1.3", "@types/jest@^22.2.0": + version "22.2.0" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-22.2.0.tgz#55ce83139f7ad1b48b414c3927746614c6963c0f" + +"@types/jquery@*": + version "3.3.0" + resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.3.0.tgz#6316ac20a1a13c5d521a2dc661befc7184f73f5b" + +"@types/jquery@3.2.16": + version "3.2.16" + resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.2.16.tgz#04419c404a3194350e7d3f339a90e72c88db3111" + +"@types/lodash@4.14.87": + version "4.14.87" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.87.tgz#55f92183b048c2c64402afe472f8333f4e319a6b" + +"@types/minimatch@3.0.1": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.1.tgz#b683eb60be358304ef146f5775db4c0e3696a550" + +"@types/mocha@2.2.44": + version "2.2.44" + resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-2.2.44.tgz#1d4a798e53f35212fd5ad4d04050620171cd5b5e" + +"@types/node@^6.0.46": + version "6.0.96" + resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.96.tgz#7bf0bf40d6ce51e93762cc47d010c8cc5ebb2179" + +"@types/node@^8.0.24": + version "8.9.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-8.9.5.tgz#162b864bc70be077e6db212b322754917929e976" + +"@types/node@^9.4.6": + version "9.4.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-9.4.6.tgz#d8176d864ee48753d053783e4e463aec86b8d82e" + +"@types/q@^0.0.32": + version "0.0.32" + resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.32.tgz#bd284e57c84f1325da702babfc82a5328190c0c5" + +"@types/react@^16.0.20": + version "16.0.40" + resolved "https://registry.yarnpkg.com/@types/react/-/react-16.0.40.tgz#caabc2296886f40b67f6fc80f0f3464476461df9" + +"@types/selenium-webdriver@^2.53.35", "@types/selenium-webdriver@~2.53.39": + version "2.53.43" + resolved "https://registry.yarnpkg.com/@types/selenium-webdriver/-/selenium-webdriver-2.53.43.tgz#2de3d718819bc20165754c4a59afb7e9833f6707" + +"@types/sinon-chai@2.7.29": + version "2.7.29" + resolved "https://registry.yarnpkg.com/@types/sinon-chai/-/sinon-chai-2.7.29.tgz#4db01497e2dd1908b2bd30d1782f456353f5f723" + dependencies: + "@types/chai" "*" + "@types/sinon" "*" + +"@types/sinon@*": + version "4.1.3" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-4.1.3.tgz#2ee25e0e302f31e78a945650a60029e08878eaf8" + +"@types/sinon@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/sinon/-/sinon-4.0.0.tgz#9a93ffa4ee1329e85166278a5ed99f81dc4c8362" + +JSONStream@^1.0.3: + version "1.3.2" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.2.tgz#c102371b6ec3a7cf3b847ca00c20bb0fce4c6dea" + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + +abab@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" + +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + +accepts@1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca" + dependencies: + mime-types "~2.1.11" + negotiator "0.6.1" + +accepts@~1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.4.tgz#86246758c7dd6d21a6474ff084a4740ec05eb21f" + dependencies: + mime-types "~2.1.16" + negotiator "0.6.1" + +acorn-dynamic-import@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz#c752bd210bef679501b6c6cb7fc84f8f47158cc4" + dependencies: + acorn "^4.0.3" + +acorn-globals@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.1.0.tgz#ab716025dbe17c54d3ef81d32ece2b2d99fe2538" + dependencies: + acorn "^5.0.0" + +acorn@^4.0.3: + version "4.0.13" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" + +acorn@^5.0.0, acorn@^5.2.1: + version "5.3.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.3.0.tgz#7446d39459c54fb49a80e6ee6478149b940ec822" + +acorn@^5.3.0: + version "5.5.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.5.3.tgz#f473dd47e0277a08e28e9bec5aeeb04751f0b8c9" + +address@1.0.3, address@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/address/-/address-1.0.3.tgz#b5f50631f8d6cec8bd20c963963afb55e06cbce9" + +addressparser@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/addressparser/-/addressparser-1.0.1.tgz#47afbe1a2a9262191db6838e4fd1d39b40821746" + +adm-zip@0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.4.tgz#a61ed5ae6905c3aea58b3a657d25033091052736" + +adm-zip@^0.4.7: + version "0.4.7" + resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.7.tgz#8606c2cbf1c426ce8c8ec00174447fd49b6eafc1" + +after@0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" + +agent-base@2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-2.1.1.tgz#d6de10d5af6132d5bd692427d46fc538539094c7" + dependencies: + extend "~3.0.0" + semver "~5.0.1" + +airbnb-js-shims@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/airbnb-js-shims/-/airbnb-js-shims-1.4.1.tgz#cc3e8eb8d35877f9d0fdc6583e26b0ee75b98ad0" + dependencies: + array-includes "^3.0.3" + array.prototype.flatmap "^1.2.0" + array.prototype.flatten "^1.2.0" + es5-shim "^4.5.10" + es6-shim "^0.35.3" + function.prototype.name "^1.1.0" + object.entries "^1.0.4" + object.getownpropertydescriptors "^2.0.3" + object.values "^1.0.4" + promise.prototype.finally "^3.1.0" + string.prototype.padend "^3.0.0" + string.prototype.padstart "^3.0.0" + +ajv-keywords@^2.0.0, ajv-keywords@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" + +ajv-keywords@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.1.0.tgz#ac2b27939c543e95d2c06e7f7f5c27be4aa543be" + +ajv@^4.9.1: + version "4.11.8" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" + dependencies: + co "^4.6.0" + json-stable-stringify "^1.0.1" + +ajv@^5.0.0, ajv@^5.1.0, ajv@^5.1.5, ajv@~5.5.1: + version "5.5.2" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" + dependencies: + co "^4.6.0" + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + +ajv@^6.1.0, ajv@^6.1.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.2.1.tgz#28a6abc493a2abe0fb4c8507acaedb43fa550671" + dependencies: + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + +align-text@^0.1.1, align-text@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" + dependencies: + kind-of "^3.0.2" + longest "^1.0.1" + repeat-string "^1.5.2" + +alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" + +am-i-a-dependency@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/am-i-a-dependency/-/am-i-a-dependency-1.1.2.tgz#f9d3422304d6f642f821e4c407565035f6167f1f" + +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + +angular-tree-component@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/angular-tree-component/-/angular-tree-component-7.0.1.tgz#fc8d0e72d8c34b87131a3ba2bd32ad20945689ac" + dependencies: + lodash "4.17.4" + mobx ">=3" + mobx-angular ">=1" + +angular2-template-loader@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/angular2-template-loader/-/angular2-template-loader-0.6.2.tgz#c0d44e90fff0fac95e8b23f043acda7fd1c51d7c" + dependencies: + loader-utils "^0.2.15" + +ansi-escapes@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" + +ansi-escapes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.0.0.tgz#ec3e8b4e9f8064fc02c3ac9b65f1c275bda8ef92" + +ansi-html@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + +ansi-styles@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" + dependencies: + color-convert "^1.9.0" + +ansi-styles@^3.2.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + dependencies: + color-convert "^1.9.0" + +any-observable@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/any-observable/-/any-observable-0.2.0.tgz#c67870058003579009083f54ac0abafb5c33d242" + +anymatch@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" + dependencies: + micromatch "^2.1.5" + normalize-path "^2.0.0" + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +app-root-path@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-2.0.1.tgz#cd62dcf8e4fd5a417efc664d2e5b10653c651b46" + +append-transform@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" + dependencies: + default-require-extensions "^1.0.0" + +aproba@^1.0.3, aproba@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + +are-we-there-yet@~1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +argparse@^1.0.7: + version "1.0.9" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" + dependencies: + sprintf-js "~1.0.2" + +arr-diff@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" + dependencies: + arr-flatten "^1.0.1" + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + +arr-flatten@^1.0.1, arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + +array-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" + +array-filter@~0.0.0: + version "0.0.1" + resolved "https://registry.yarnpkg.com/array-filter/-/array-filter-0.0.1.tgz#7da8cf2e26628ed732803581fd21f67cacd2eeec" + +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + +array-find@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-find/-/array-find-1.0.0.tgz#6c8e286d11ed768327f8e62ecee87353ca3e78b8" + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + +array-flatten@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-2.1.1.tgz#426bb9da84090c1838d812c8150af20a8331e296" + +array-includes@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.3.tgz#184b48f62d92d7452bb31b323165c7f8bd02266d" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.7.0" + +array-map@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/array-map/-/array-map-0.0.0.tgz#88a2bab73d1cf7bcd5c1b118a003f66f665fa662" + +array-reduce@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/array-reduce/-/array-reduce-0.0.0.tgz#173899d3ffd1c7d9383e4479525dbe278cab5f2b" + +array-slice@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/array-slice/-/array-slice-0.2.3.tgz#dd3cfb80ed7973a75117cdac69b0b99ec86186f5" + +array-union@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + dependencies: + array-uniq "^1.0.1" + +array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + +array-unique@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + +array.prototype.flatmap@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.1.tgz#3103cd4826ef90019c9b0a4839b2535fa6faf4e9" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.10.0" + function-bind "^1.1.1" + +array.prototype.flatten@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/array.prototype.flatten/-/array.prototype.flatten-1.2.1.tgz#a77ae1b64524ce373b137fade324d12040d3c680" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.10.0" + function-bind "^1.1.1" + +arraybuffer.slice@~0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz#3bbc4275dd584cc1b10809b89d4e8b63a69e7675" + +arrify@^1.0.0, arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + +asap@~2.0.3: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + +asn1.js@^4.0.0: + version "4.9.2" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.2.tgz#8117ef4f7ed87cd8f89044b5bff97ac243a16c9a" + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +asn1@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + +assert-plus@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" + +assert@^1.1.1, assert@^1.4.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" + dependencies: + util "0.10.3" + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + +ast-types@0.10.1, ast-types@0.x.x: + version "0.10.1" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.10.1.tgz#f52fca9715579a14f841d67d7f8d25432ab6a3dd" + +ast-types@0.9.6: + version "0.9.6" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" + +astral-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9" + +astw@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/astw/-/astw-2.2.0.tgz#7bd41784d32493987aeb239b6b4e1c57a873b917" + dependencies: + acorn "^4.0.3" + +async-each@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" + +async-foreach@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" + +async-limiter@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" + +async@2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/async/-/async-2.1.4.tgz#2d2160c7788032e4dd6cbe2502f1f9a2c8f6cde4" + dependencies: + lodash "^4.14.0" + +async@^1.4.0, async@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" + +async@^2.1.2, async@^2.1.4, async@^2.4.1: + version "2.6.0" + resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4" + dependencies: + lodash "^4.14.0" + +async@~2.1.2: + version "2.1.5" + resolved "https://registry.yarnpkg.com/async/-/async-2.1.5.tgz#e587c68580994ac67fc56ff86d3ac56bdbe810bc" + dependencies: + lodash "^4.14.0" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + +atob@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.0.3.tgz#19c7a760473774468f20b2d2d03372ad7d4cbf5d" + +autoprefixer@^6.3.1: + version "6.7.7" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014" + dependencies: + browserslist "^1.7.6" + caniuse-db "^1.0.30000634" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^5.2.16" + postcss-value-parser "^3.2.3" + +autoprefixer@^7.2.3: + version "7.2.5" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.2.5.tgz#04ccbd0c6a61131b6d13f53d371926092952d192" + dependencies: + browserslist "^2.11.1" + caniuse-lite "^1.0.30000791" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^6.0.16" + postcss-value-parser "^3.2.3" + +autoprefixer@^7.2.6: + version "7.2.6" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.2.6.tgz#256672f86f7c735da849c4f07d008abb056067dc" + dependencies: + browserslist "^2.11.3" + caniuse-lite "^1.0.30000805" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^6.0.17" + postcss-value-parser "^3.2.3" + +aws-sign2@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + +aws4@^1.2.1, aws4@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" + +axios@^0.15.3: + version "0.15.3" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.15.3.tgz#2c9d638b2e191a08ea1d6cc988eadd6ba5bdc053" + dependencies: + follow-redirects "1.0.0" + +babel-code-frame@6.26.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" + dependencies: + chalk "^1.1.3" + esutils "^2.0.2" + js-tokens "^3.0.2" + +babel-core@6.26.0, babel-core@^6.0.0, babel-core@^6.24.1, babel-core@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8" + dependencies: + babel-code-frame "^6.26.0" + babel-generator "^6.26.0" + babel-helpers "^6.24.1" + babel-messages "^6.23.0" + babel-register "^6.26.0" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + convert-source-map "^1.5.0" + debug "^2.6.8" + json5 "^0.5.1" + lodash "^4.17.4" + minimatch "^3.0.4" + path-is-absolute "^1.0.1" + private "^0.1.7" + slash "^1.0.0" + source-map "^0.5.6" + +babel-generator@^6.18.0, babel-generator@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" + dependencies: + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + detect-indent "^4.0.0" + jsesc "^1.3.0" + lodash "^4.17.4" + source-map "^0.5.6" + trim-right "^1.0.1" + +babel-helper-bindify-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" + dependencies: + babel-helper-explode-assignable-expression "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-builder-react-jsx@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz#39ff8313b75c8b65dceff1f31d383e0ff2a408a0" + dependencies: + babel-runtime "^6.26.0" + babel-types "^6.26.0" + esutils "^2.0.2" + +babel-helper-call-delegate@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" + dependencies: + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-define-map@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz#a5f56dab41a25f97ecb498c7ebaca9819f95be5f" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" + +babel-helper-explode-assignable-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-explode-class@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" + dependencies: + babel-helper-bindify-decorators "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-function-name@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" + dependencies: + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-get-function-arity@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-hoist-variables@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-optimise-call-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-regex@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz#325c59f902f82f24b74faceed0363954f6495e72" + dependencies: + babel-runtime "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" + +babel-helper-remap-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-replace-supers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" + dependencies: + babel-helper-optimise-call-expression "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helpers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-jest@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-22.4.1.tgz#ff53ebca45957347f27ff4666a31499fbb4c4ddd" + dependencies: + babel-plugin-istanbul "^4.1.5" + babel-preset-jest "^22.4.1" + +babel-loader@7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-7.1.2.tgz#f6cbe122710f1aa2af4d881c6d5b54358ca24126" + dependencies: + find-cache-dir "^1.0.0" + loader-utils "^1.0.2" + mkdirp "^0.5.1" + +babel-loader@^7.0.0: + version "7.1.3" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-7.1.3.tgz#ff5b440da716e9153abb946251a9ab7670037b16" + dependencies: + find-cache-dir "^1.0.0" + loader-utils "^1.0.2" + mkdirp "^0.5.1" + +babel-messages@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-check-es2015-constants@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-dynamic-import-node@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-1.1.0.tgz#bd1d88ac7aaf98df4917c384373b04d971a2b37a" + dependencies: + babel-plugin-syntax-dynamic-import "^6.18.0" + babel-template "^6.26.0" + babel-types "^6.26.0" + +babel-plugin-istanbul@^4.1.4, babel-plugin-istanbul@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.5.tgz#6760cdd977f411d3e175bb064f2bc327d99b2b6e" + dependencies: + find-up "^2.1.0" + istanbul-lib-instrument "^1.7.5" + test-exclude "^4.1.1" + +babel-plugin-jest-hoist@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-22.4.1.tgz#d712fe5da8b6965f3191dacddbefdbdf4fb66d63" + +babel-plugin-macros@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.2.0.tgz#31fc16748d6480697a517f692dc4421cb7bff0cc" + dependencies: + cosmiconfig "^4.0.0" + +babel-plugin-react-docgen@^1.8.2: + version "1.8.3" + resolved "https://registry.yarnpkg.com/babel-plugin-react-docgen/-/babel-plugin-react-docgen-1.8.3.tgz#bdb0fe41f72eaa9444fe7872866d2f372afd72bb" + dependencies: + babel-types "^6.24.1" + lodash "^4.17.0" + react-docgen "^2.20.0" + +babel-plugin-syntax-async-functions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" + +babel-plugin-syntax-async-generators@^6.5.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" + +babel-plugin-syntax-class-constructor-call@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416" + +babel-plugin-syntax-class-properties@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" + +babel-plugin-syntax-decorators@^6.13.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" + +babel-plugin-syntax-do-expressions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz#5747756139aa26d390d09410b03744ba07e4796d" + +babel-plugin-syntax-dynamic-import@6.18.0, babel-plugin-syntax-dynamic-import@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" + +babel-plugin-syntax-exponentiation-operator@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" + +babel-plugin-syntax-export-extensions@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721" + +babel-plugin-syntax-flow@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d" + +babel-plugin-syntax-function-bind@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz#48c495f177bdf31a981e732f55adc0bdd2601f46" + +babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" + +babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest-spread@^6.8.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" + +babel-plugin-syntax-trailing-function-commas@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" + +babel-plugin-transform-async-generator-functions@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-generators "^6.5.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-async-to-generator@^6.22.0, babel-plugin-transform-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-functions "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-class-constructor-call@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz#80dc285505ac067dcb8d6c65e2f6f11ab7765ef9" + dependencies: + babel-plugin-syntax-class-constructor-call "^6.18.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-class-properties@6.24.1, babel-plugin-transform-class-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" + dependencies: + babel-helper-function-name "^6.24.1" + babel-plugin-syntax-class-properties "^6.8.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" + dependencies: + babel-helper-explode-class "^6.24.1" + babel-plugin-syntax-decorators "^6.13.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-types "^6.24.1" + +babel-plugin-transform-do-expressions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz#28ccaf92812d949c2cd1281f690c8fdc468ae9bb" + dependencies: + babel-plugin-syntax-do-expressions "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-arrow-functions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-block-scoping@^6.23.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz#d70f5299c1308d05c12f463813b0a09e73b1895f" + dependencies: + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + lodash "^4.17.4" + +babel-plugin-transform-es2015-classes@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" + dependencies: + babel-helper-define-map "^6.24.1" + babel-helper-function-name "^6.24.1" + babel-helper-optimise-call-expression "^6.24.1" + babel-helper-replace-supers "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-computed-properties@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-es2015-destructuring@6.23.0, babel-plugin-transform-es2015-destructuring@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-duplicate-keys@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-for-of@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-function-name@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-literals@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-modules-amd@^6.22.0, babel-plugin-transform-es2015-modules-amd@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" + dependencies: + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-es2015-modules-commonjs@^6.23.0, babel-plugin-transform-es2015-modules-commonjs@^6.24.1: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.0.tgz#0d8394029b7dc6abe1a97ef181e00758dd2e5d8a" + dependencies: + babel-plugin-transform-strict-mode "^6.24.1" + babel-runtime "^6.26.0" + babel-template "^6.26.0" + babel-types "^6.26.0" + +babel-plugin-transform-es2015-modules-systemjs@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" + dependencies: + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-es2015-modules-umd@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" + dependencies: + babel-plugin-transform-es2015-modules-amd "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-es2015-object-super@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" + dependencies: + babel-helper-replace-supers "^6.24.1" + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-parameters@^6.23.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" + dependencies: + babel-helper-call-delegate "^6.24.1" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-shorthand-properties@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-spread@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-sticky-regex@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" + dependencies: + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-template-literals@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-typeof-symbol@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-unicode-regex@^6.22.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" + dependencies: + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + regexpu-core "^2.0.0" + +babel-plugin-transform-exponentiation-operator@^6.22.0, babel-plugin-transform-exponentiation-operator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" + dependencies: + babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" + babel-plugin-syntax-exponentiation-operator "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-export-extensions@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653" + dependencies: + babel-plugin-syntax-export-extensions "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-flow-strip-types@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf" + dependencies: + babel-plugin-syntax-flow "^6.18.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-function-bind@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz#c6fb8e96ac296a310b8cf8ea401462407ddf6a97" + dependencies: + babel-plugin-syntax-function-bind "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-object-rest-spread@6.26.0, babel-plugin-transform-object-rest-spread@^6.22.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz#0f36692d50fef6b7e2d4b3ac1478137a963b7b06" + dependencies: + babel-plugin-syntax-object-rest-spread "^6.8.0" + babel-runtime "^6.26.0" + +babel-plugin-transform-react-constant-elements@6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-constant-elements/-/babel-plugin-transform-react-constant-elements-6.23.0.tgz#2f119bf4d2cdd45eb9baaae574053c604f6147dd" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-react-display-name@^6.23.0: + version "6.25.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz#67e2bf1f1e9c93ab08db96792e05392bf2cc28d1" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-react-jsx-self@6.22.0, babel-plugin-transform-react-jsx-self@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz#df6d80a9da2612a121e6ddd7558bcbecf06e636e" + dependencies: + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-react-jsx-source@6.22.0, babel-plugin-transform-react-jsx-source@^6.22.0: + version "6.22.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz#66ac12153f5cd2d17b3c19268f4bf0197f44ecd6" + dependencies: + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-react-jsx@6.24.1, babel-plugin-transform-react-jsx@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz#840a028e7df460dfc3a2d29f0c0d91f6376e66a3" + dependencies: + babel-helper-builder-react-jsx "^6.24.1" + babel-plugin-syntax-jsx "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-regenerator@6.26.0, babel-plugin-transform-regenerator@^6.22.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz#e0703696fbde27f0a3efcacf8b4dca2f7b3a8f2f" + dependencies: + regenerator-transform "^0.10.0" + +babel-plugin-transform-runtime@6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-runtime/-/babel-plugin-transform-runtime-6.23.0.tgz#88490d446502ea9b8e7efb0fe09ec4d99479b1ee" + dependencies: + babel-runtime "^6.22.0" + +babel-plugin-transform-strict-mode@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-preset-env@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4" + dependencies: + babel-plugin-check-es2015-constants "^6.22.0" + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-to-generator "^6.22.0" + babel-plugin-transform-es2015-arrow-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoping "^6.23.0" + babel-plugin-transform-es2015-classes "^6.23.0" + babel-plugin-transform-es2015-computed-properties "^6.22.0" + babel-plugin-transform-es2015-destructuring "^6.23.0" + babel-plugin-transform-es2015-duplicate-keys "^6.22.0" + babel-plugin-transform-es2015-for-of "^6.23.0" + babel-plugin-transform-es2015-function-name "^6.22.0" + babel-plugin-transform-es2015-literals "^6.22.0" + babel-plugin-transform-es2015-modules-amd "^6.22.0" + babel-plugin-transform-es2015-modules-commonjs "^6.23.0" + babel-plugin-transform-es2015-modules-systemjs "^6.23.0" + babel-plugin-transform-es2015-modules-umd "^6.23.0" + babel-plugin-transform-es2015-object-super "^6.22.0" + babel-plugin-transform-es2015-parameters "^6.23.0" + babel-plugin-transform-es2015-shorthand-properties "^6.22.0" + babel-plugin-transform-es2015-spread "^6.22.0" + babel-plugin-transform-es2015-sticky-regex "^6.22.0" + babel-plugin-transform-es2015-template-literals "^6.22.0" + babel-plugin-transform-es2015-typeof-symbol "^6.23.0" + babel-plugin-transform-es2015-unicode-regex "^6.22.0" + babel-plugin-transform-exponentiation-operator "^6.22.0" + babel-plugin-transform-regenerator "^6.22.0" + browserslist "^2.1.2" + invariant "^2.2.2" + semver "^5.3.0" + +babel-preset-env@1.6.1, babel-preset-env@^1.6.0: + version "1.6.1" + resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.1.tgz#a18b564cc9b9afdf4aae57ae3c1b0d99188e6f48" + dependencies: + babel-plugin-check-es2015-constants "^6.22.0" + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-to-generator "^6.22.0" + babel-plugin-transform-es2015-arrow-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" + babel-plugin-transform-es2015-block-scoping "^6.23.0" + babel-plugin-transform-es2015-classes "^6.23.0" + babel-plugin-transform-es2015-computed-properties "^6.22.0" + babel-plugin-transform-es2015-destructuring "^6.23.0" + babel-plugin-transform-es2015-duplicate-keys "^6.22.0" + babel-plugin-transform-es2015-for-of "^6.23.0" + babel-plugin-transform-es2015-function-name "^6.22.0" + babel-plugin-transform-es2015-literals "^6.22.0" + babel-plugin-transform-es2015-modules-amd "^6.22.0" + babel-plugin-transform-es2015-modules-commonjs "^6.23.0" + babel-plugin-transform-es2015-modules-systemjs "^6.23.0" + babel-plugin-transform-es2015-modules-umd "^6.23.0" + babel-plugin-transform-es2015-object-super "^6.22.0" + babel-plugin-transform-es2015-parameters "^6.23.0" + babel-plugin-transform-es2015-shorthand-properties "^6.22.0" + babel-plugin-transform-es2015-spread "^6.22.0" + babel-plugin-transform-es2015-sticky-regex "^6.22.0" + babel-plugin-transform-es2015-template-literals "^6.22.0" + babel-plugin-transform-es2015-typeof-symbol "^6.23.0" + babel-plugin-transform-es2015-unicode-regex "^6.22.0" + babel-plugin-transform-exponentiation-operator "^6.22.0" + babel-plugin-transform-regenerator "^6.22.0" + browserslist "^2.1.2" + invariant "^2.2.2" + semver "^5.3.0" + +babel-preset-flow@^6.23.0: + version "6.23.0" + resolved "https://registry.yarnpkg.com/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz#e71218887085ae9a24b5be4169affb599816c49d" + dependencies: + babel-plugin-transform-flow-strip-types "^6.22.0" + +babel-preset-jest@^22.4.0, babel-preset-jest@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-22.4.1.tgz#efa2e5f5334242a9457a068452d7d09735db172a" + dependencies: + babel-plugin-jest-hoist "^22.4.1" + babel-plugin-syntax-object-rest-spread "^6.13.0" + +babel-preset-react-app@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/babel-preset-react-app/-/babel-preset-react-app-3.1.1.tgz#d3f06a79742f0e89d7afcb72e282d9809c850920" + dependencies: + babel-plugin-dynamic-import-node "1.1.0" + babel-plugin-syntax-dynamic-import "6.18.0" + babel-plugin-transform-class-properties "6.24.1" + babel-plugin-transform-es2015-destructuring "6.23.0" + babel-plugin-transform-object-rest-spread "6.26.0" + babel-plugin-transform-react-constant-elements "6.23.0" + babel-plugin-transform-react-jsx "6.24.1" + babel-plugin-transform-react-jsx-self "6.22.0" + babel-plugin-transform-react-jsx-source "6.22.0" + babel-plugin-transform-regenerator "6.26.0" + babel-plugin-transform-runtime "6.23.0" + babel-preset-env "1.6.1" + babel-preset-react "6.24.1" + +babel-preset-react@6.24.1, babel-preset-react@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.24.1.tgz#ba69dfaea45fc3ec639b6a4ecea6e17702c91380" + dependencies: + babel-plugin-syntax-jsx "^6.3.13" + babel-plugin-transform-react-display-name "^6.23.0" + babel-plugin-transform-react-jsx "^6.24.1" + babel-plugin-transform-react-jsx-self "^6.22.0" + babel-plugin-transform-react-jsx-source "^6.22.0" + babel-preset-flow "^6.23.0" + +babel-preset-stage-0@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz#5642d15042f91384d7e5af8bc88b1db95b039e6a" + dependencies: + babel-plugin-transform-do-expressions "^6.22.0" + babel-plugin-transform-function-bind "^6.22.0" + babel-preset-stage-1 "^6.24.1" + +babel-preset-stage-1@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz#7692cd7dcd6849907e6ae4a0a85589cfb9e2bfb0" + dependencies: + babel-plugin-transform-class-constructor-call "^6.24.1" + babel-plugin-transform-export-extensions "^6.22.0" + babel-preset-stage-2 "^6.24.1" + +babel-preset-stage-2@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" + dependencies: + babel-plugin-syntax-dynamic-import "^6.18.0" + babel-plugin-transform-class-properties "^6.24.1" + babel-plugin-transform-decorators "^6.24.1" + babel-preset-stage-3 "^6.24.1" + +babel-preset-stage-3@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" + dependencies: + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-generator-functions "^6.24.1" + babel-plugin-transform-async-to-generator "^6.24.1" + babel-plugin-transform-exponentiation-operator "^6.24.1" + babel-plugin-transform-object-rest-spread "^6.22.0" + +babel-register@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.26.0.tgz#6ed021173e2fcb486d7acb45c6009a856f647071" + dependencies: + babel-core "^6.26.0" + babel-runtime "^6.26.0" + core-js "^2.5.0" + home-or-tmp "^2.0.0" + lodash "^4.17.4" + mkdirp "^0.5.1" + source-map-support "^0.4.15" + +babel-runtime@6.x.x, babel-runtime@^6.11.6, babel-runtime@^6.18.0, babel-runtime@^6.20.0, babel-runtime@^6.22.0, babel-runtime@^6.23.0, babel-runtime@^6.26.0, babel-runtime@^6.5.0, babel-runtime@^6.9.2: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + +babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02" + dependencies: + babel-runtime "^6.26.0" + babel-traverse "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + lodash "^4.17.4" + +babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee" + dependencies: + babel-code-frame "^6.26.0" + babel-messages "^6.23.0" + babel-runtime "^6.26.0" + babel-types "^6.26.0" + babylon "^6.18.0" + debug "^2.6.8" + globals "^9.18.0" + invariant "^2.2.2" + lodash "^4.17.4" + +babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0: + version "6.26.0" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497" + dependencies: + babel-runtime "^6.26.0" + esutils "^2.0.2" + lodash "^4.17.4" + to-fast-properties "^1.0.3" + +babylon@^6.18.0: + version "6.18.0" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" + +babylon@~5.8.3: + version "5.8.38" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-5.8.38.tgz#ec9b120b11bf6ccd4173a18bf217e60b79859ffd" + +backo2@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" + +balanced-match@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" + +base-64@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/base-64/-/base-64-0.1.0.tgz#780a99c84e7d600260361511c4877613bf24f6bb" + +base64-arraybuffer@0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz#73926771923b5a19747ad666aa5cd4bf9c6e9ce8" + +base64-js@^1.0.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886" + +base64id@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base64id/-/base64id-1.0.0.tgz#47688cb99bb6804f0e06d3e763b1c32e57d8e6b6" + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + +batch@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" + +bcrypt-pbkdf@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + dependencies: + tweetnacl "^0.14.3" + +better-assert@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/better-assert/-/better-assert-1.0.2.tgz#40866b9e1b9e0b55b481894311e68faffaebc522" + dependencies: + callsite "1.0.0" + +big.js@^3.1.3: + version "3.2.0" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.2.0.tgz#a5fc298b81b9e0dca2e458824784b65c52ba588e" + +binary-extensions@^1.0.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205" + +bindings@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.2.1.tgz#14ad6113812d2d37d72e67b4cacb4bb726505f11" + +bl@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.1.2.tgz#fdca871a99713aa00d19e3bbba41c44787a65398" + dependencies: + readable-stream "~2.0.5" + +blob@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.4.tgz#bcf13052ca54463f30f9fc7e95b9a47630a94921" + +block-stream@*: + version "0.0.9" + resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" + dependencies: + inherits "~2.0.0" + +blocking-proxy@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/blocking-proxy/-/blocking-proxy-0.0.5.tgz#462905e0dcfbea970f41aa37223dda9c07b1912b" + dependencies: + minimist "^1.2.0" + +bluebird@3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" + +bluebird@^3.3.0, bluebird@^3.4.7, bluebird@^3.5.0, bluebird@^3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9" + +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: + version "4.11.8" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" + +body-parser@1.18.2, body-parser@^1.16.1: + version "1.18.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" + dependencies: + bytes "3.0.0" + content-type "~1.0.4" + debug "2.6.9" + depd "~1.1.1" + http-errors "~1.6.2" + iconv-lite "0.4.19" + on-finished "~2.3.0" + qs "6.5.1" + raw-body "2.3.2" + type-is "~1.6.15" + +bonjour@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/bonjour/-/bonjour-3.5.0.tgz#8e890a183d8ee9a2393b3844c691a42bcf7bc9f5" + dependencies: + array-flatten "^2.1.0" + deep-equal "^1.0.1" + dns-equal "^1.0.0" + dns-txt "^2.0.2" + multicast-dns "^6.0.1" + multicast-dns-service-types "^1.1.0" + +boolbase@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" + +boom@2.x.x: + version "2.10.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" + dependencies: + hoek "2.x.x" + +boom@4.x.x: + version "4.3.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-4.3.1.tgz#4f8a3005cb4a7e3889f749030fd25b96e01d2e31" + dependencies: + hoek "4.x.x" + +boom@5.x.x: + version "5.2.0" + resolved "https://registry.yarnpkg.com/boom/-/boom-5.2.0.tgz#5dd9da6ee3a5f302077436290cb717d3f4a54e02" + dependencies: + hoek "4.x.x" + +bowser@^1.0.0, bowser@^1.7.3: + version "1.9.2" + resolved "https://registry.yarnpkg.com/bowser/-/bowser-1.9.2.tgz#d66fc868ca5f4ba895bee1363c343fe7b37d3394" + +brace-expansion@^1.0.0, brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^0.1.2: + version "0.1.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-0.1.5.tgz#c085711085291d8b75fdd74eab0f8597280711e6" + dependencies: + expand-range "^0.1.0" + +braces@^1.8.2: + version "1.8.5" + resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" + dependencies: + expand-range "^1.8.1" + preserve "^0.2.0" + repeat-element "^1.1.2" + +braces@^2.3.0, braces@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.1.tgz#7086c913b4e5a08dbe37ac0ee6a2500c4ba691bb" + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + define-property "^1.0.0" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + kind-of "^6.0.2" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +brcast@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/brcast/-/brcast-3.0.1.tgz#6256a8349b20de9eed44257a9b24d71493cd48dd" + +brorand@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + +browser-pack@^6.0.1: + version "6.0.3" + resolved "https://registry.yarnpkg.com/browser-pack/-/browser-pack-6.0.3.tgz#91ca96518583ef580ab063a309de62e407767a39" + dependencies: + JSONStream "^1.0.3" + combine-source-map "~0.8.0" + defined "^1.0.0" + safe-buffer "^5.1.1" + through2 "^2.0.0" + umd "^3.0.0" + +browser-process-hrtime@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.2.tgz#425d68a58d3447f02a04aa894187fce8af8b7b8e" + +browser-resolve@^1.11.0, browser-resolve@^1.11.2, browser-resolve@^1.7.0: + version "1.11.2" + resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce" + dependencies: + resolve "1.1.7" + +browser-stdout@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" + +browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.1.1" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.1.1.tgz#38b7ab55edb806ff2dcda1a7f1620773a477c49f" + dependencies: + buffer-xor "^1.0.3" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.3" + inherits "^2.0.1" + safe-buffer "^5.0.1" + +browserify-cipher@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a" + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + +browserify-des@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd" + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + +browserify-rsa@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" + dependencies: + bn.js "^4.1.0" + randombytes "^2.0.1" + +browserify-sign@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" + dependencies: + bn.js "^4.1.1" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.2" + elliptic "^6.0.0" + inherits "^2.0.1" + parse-asn1 "^5.0.0" + +browserify-zlib@^0.2.0, browserify-zlib@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.2.0.tgz#2869459d9aa3be245fe8fe2ca1f46e2e7f54d73f" + dependencies: + pako "~1.0.5" + +browserify@^14.5.0: + version "14.5.0" + resolved "https://registry.yarnpkg.com/browserify/-/browserify-14.5.0.tgz#0bbbce521acd6e4d1d54d8e9365008efb85a9cc5" + dependencies: + JSONStream "^1.0.3" + assert "^1.4.0" + browser-pack "^6.0.1" + browser-resolve "^1.11.0" + browserify-zlib "~0.2.0" + buffer "^5.0.2" + cached-path-relative "^1.0.0" + concat-stream "~1.5.1" + console-browserify "^1.1.0" + constants-browserify "~1.0.0" + crypto-browserify "^3.0.0" + defined "^1.0.0" + deps-sort "^2.0.0" + domain-browser "~1.1.0" + duplexer2 "~0.1.2" + events "~1.1.0" + glob "^7.1.0" + has "^1.0.0" + htmlescape "^1.1.0" + https-browserify "^1.0.0" + inherits "~2.0.1" + insert-module-globals "^7.0.0" + labeled-stream-splicer "^2.0.0" + module-deps "^4.0.8" + os-browserify "~0.3.0" + parents "^1.0.1" + path-browserify "~0.0.0" + process "~0.11.0" + punycode "^1.3.2" + querystring-es3 "~0.2.0" + read-only-stream "^2.0.0" + readable-stream "^2.0.2" + resolve "^1.1.4" + shasum "^1.0.0" + shell-quote "^1.6.1" + stream-browserify "^2.0.0" + stream-http "^2.0.0" + string_decoder "~1.0.0" + subarg "^1.0.0" + syntax-error "^1.1.1" + through2 "^2.0.0" + timers-browserify "^1.0.1" + tty-browserify "~0.0.0" + url "~0.11.0" + util "~0.10.1" + vm-browserify "~0.0.1" + xtend "^4.0.0" + +browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6: + version "1.7.7" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9" + dependencies: + caniuse-db "^1.0.30000639" + electron-to-chromium "^1.2.7" + +browserslist@^2.1.2, browserslist@^2.11.1, browserslist@^2.11.3: + version "2.11.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.11.3.tgz#fe36167aed1bbcde4827ebfe71347a2cc70b99b2" + dependencies: + caniuse-lite "^1.0.30000792" + electron-to-chromium "^1.3.30" + +bser@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719" + dependencies: + node-int64 "^0.4.0" + +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + +buffer-indexof@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c" + +buffer-xor@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + +buffer@^4.3.0: + version "4.9.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + +buffer@^5.0.2: + version "5.0.8" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.0.8.tgz#84daa52e7cf2fa8ce4195bc5cf0f7809e0930b24" + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + +buildmail@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/buildmail/-/buildmail-4.0.1.tgz#877f7738b78729871c9a105e3b837d2be11a7a72" + dependencies: + addressparser "1.0.1" + libbase64 "0.1.0" + libmime "3.0.0" + libqp "1.1.0" + nodemailer-fetch "1.6.0" + nodemailer-shared "1.1.0" + punycode "1.4.1" + +builtin-modules@^1.0.0, builtin-modules@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" + +builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + +cacache@^10.0.1: + version "10.0.2" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.2.tgz#105a93a162bbedf3a25da42e1939ed99ffb145f8" + dependencies: + bluebird "^3.5.0" + chownr "^1.0.1" + glob "^7.1.2" + graceful-fs "^4.1.11" + lru-cache "^4.1.1" + mississippi "^1.3.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.1" + ssri "^5.0.0" + unique-filename "^1.1.0" + y18n "^3.2.1" + +cacache@^10.0.4: + version "10.0.4" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" + dependencies: + bluebird "^3.5.1" + chownr "^1.0.1" + glob "^7.1.2" + graceful-fs "^4.1.11" + lru-cache "^4.1.1" + mississippi "^2.0.0" + mkdirp "^0.5.1" + move-concurrently "^1.0.1" + promise-inflight "^1.0.1" + rimraf "^2.6.2" + ssri "^5.2.4" + unique-filename "^1.1.0" + y18n "^4.0.0" + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + +cache-loader@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/cache-loader/-/cache-loader-1.2.2.tgz#6d5c38ded959a09cc5d58190ab5af6f73bd353f5" + dependencies: + loader-utils "^1.1.0" + mkdirp "^0.5.1" + neo-async "^2.5.0" + schema-utils "^0.4.2" + +cached-path-relative@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cached-path-relative/-/cached-path-relative-1.0.1.tgz#d09c4b52800aa4c078e2dd81a869aac90d2e54e7" + +callsite@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/callsite/-/callsite-1.0.0.tgz#280398e5d664bd74038b6f0905153e6e8af1bc20" + +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + +camel-case@3.0.x: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" + dependencies: + no-case "^2.2.0" + upper-case "^1.1.1" + +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase@^1.0.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" + +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + +camelcase@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" + +camelcase@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + +caniuse-api@^1.5.2: + version "1.6.1" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c" + dependencies: + browserslist "^1.3.6" + caniuse-db "^1.0.30000529" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" + +caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: + version "1.0.30000792" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000792.tgz#a7dac6dc9f5181b675fd69e5cb06fefb523157f8" + +caniuse-lite@^1.0.30000791, caniuse-lite@^1.0.30000792: + version "1.0.30000792" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000792.tgz#d0cea981f8118f3961471afbb43c9a1e5bbf0332" + +caniuse-lite@^1.0.30000805: + version "1.0.30000813" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000813.tgz#7b25e27fdfb8d133f3c932b01f77452140fcc6c9" + +case-sensitive-paths-webpack-plugin@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.1.1.tgz#3d29ced8c1f124bf6f53846fb3f5894731fdc909" + +caseless@~0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + +center-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" + dependencies: + align-text "^0.1.3" + lazy-cache "^1.0.3" + +chain-function@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/chain-function/-/chain-function-1.0.0.tgz#0d4ab37e7e18ead0bdc47b920764118ce58733dc" + +chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + +chalk@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.1.0.tgz#ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + +chalk@2.3.0, chalk@^2.0.0, chalk@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + +chalk@^2.0.1, chalk@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.2.tgz#250dc96b07491bfd601e648d66ddf5f60c7a5c65" + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@~2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.2.2.tgz#4403f5cf18f35c05f51fbdf152bf588f956cf7cb" + dependencies: + ansi-styles "^3.1.0" + escape-string-regexp "^1.0.5" + supports-color "^4.0.0" + +chardet@^0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2" + +check-more-types@2.24.0: + version "2.24.0" + resolved "https://registry.yarnpkg.com/check-more-types/-/check-more-types-2.24.0.tgz#1420ffb10fd444dcfc79b43891bbfffd32a84600" + +chokidar@^1.4.1, chokidar@^1.4.2, chokidar@^1.6.0, chokidar@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" + dependencies: + anymatch "^1.3.0" + async-each "^1.0.0" + glob-parent "^2.0.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^2.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + optionalDependencies: + fsevents "^1.0.0" + +chokidar@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.0.2.tgz#4dc65139eeb2714977735b6a35d06e97b494dfd7" + dependencies: + anymatch "^2.0.0" + async-each "^1.0.0" + braces "^2.3.0" + glob-parent "^3.1.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^4.0.0" + normalize-path "^2.1.1" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + upath "^1.0.0" + optionalDependencies: + fsevents "^1.0.0" + +chownr@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.0.1.tgz#e2a75042a9551908bebd25b8523d5f9769d79181" + +ci-info@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.2.tgz#03561259db48d0474c8bdc90f5b47b068b6bbfb4" + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +circular-dependency-plugin@^4.2.1: + version "4.4.0" + resolved "https://registry.yarnpkg.com/circular-dependency-plugin/-/circular-dependency-plugin-4.4.0.tgz#f8a1a746a3f6c8e57f4dae9b54d991cd2a582f5d" + +circular-json@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.4.0.tgz#c448ea998b7fe31ecf472ec29c6b608e2e2a62fd" + +clap@^1.0.9: + version "1.2.3" + resolved "https://registry.yarnpkg.com/clap/-/clap-1.2.3.tgz#4f36745b32008492557f46412d66d50cb99bce51" + dependencies: + chalk "^1.1.3" + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +classnames@^2.2.5: + version "2.2.5" + resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.5.tgz#fb3801d453467649ef3603c7d61a02bd129bde6d" + +clean-css@4.1.x: + version "4.1.9" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.1.9.tgz#35cee8ae7687a49b98034f70de00c4edd3826301" + dependencies: + source-map "0.5.x" + +clean-css@^4.1.11: + version "4.1.11" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.1.11.tgz#2ecdf145aba38f54740f26cefd0ff3e03e125d6a" + dependencies: + source-map "0.5.x" + +cli-cursor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" + dependencies: + restore-cursor "^1.0.1" + +cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + dependencies: + restore-cursor "^2.0.0" + +cli-spinners@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-0.1.2.tgz#bb764d88e185fb9e1e6a2a1f19772318f605e31c" + +cli-truncate@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz#9f15cfbb0705005369216c626ac7d05ab90dd574" + dependencies: + slice-ansi "0.0.4" + string-width "^1.0.1" + +cli-width@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.0.tgz#ff19ede8a9a5e579324147b0c11f0fbcbabed639" + +cliui@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" + dependencies: + center-align "^0.1.1" + right-align "^0.1.1" + wordwrap "0.0.2" + +cliui@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi "^2.0.0" + +cliui@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.0.0.tgz#743d4650e05f36d1ed2575b59638d87322bfbbcc" + dependencies: + string-width "^2.1.1" + strip-ansi "^4.0.0" + wrap-ansi "^2.0.0" + +clone-deep@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" + dependencies: + for-own "^1.0.0" + is-plain-object "^2.0.4" + kind-of "^6.0.0" + shallow-clone "^1.0.0" + +clone@2.1.1, clone@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb" + +clone@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.3.tgz#298d7e2231660f40c003c2ed3140decf3f53085f" + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + +co@~3.0.6: + version "3.0.6" + resolved "https://registry.yarnpkg.com/co/-/co-3.0.6.tgz#1445f226c5eb956138e68c9ac30167ea7d2e6bda" + +coa@~1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.4.tgz#a9ef153660d6a86a8bdec0289a5c684d217432fd" + dependencies: + q "^1.1.2" + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + +codelyzer@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/codelyzer/-/codelyzer-4.0.2.tgz#d5e2390b97d95e73a7b1e6f0cf03e16cbf35b06f" + dependencies: + app-root-path "^2.0.1" + css-selector-tokenizer "^0.7.0" + cssauron "^1.4.0" + semver-dsl "^1.0.1" + source-map "^0.5.6" + sprintf-js "^1.0.3" + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.3.0, color-convert@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.1.tgz#c1261107aeb2f294ebffec9ed9ecad529a6097ed" + dependencies: + color-name "^1.1.1" + +color-name@^1.0.0, color-name@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + +color-string@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-0.3.0.tgz#27d46fb67025c5c2fa25993bfbf579e47841b991" + dependencies: + color-name "^1.0.0" + +color@^0.11.0: + version "0.11.4" + resolved "https://registry.yarnpkg.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764" + dependencies: + clone "^1.0.2" + color-convert "^1.3.0" + color-string "^0.3.0" + +colormin@^1.0.5: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colormin/-/colormin-1.1.2.tgz#ea2f7420a72b96881a38aae59ec124a6f7298133" + dependencies: + color "^0.11.0" + css-color-names "0.0.4" + has "^1.0.1" + +colors@1.1.2, colors@^1.1.0, colors@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" + +combine-lists@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/combine-lists/-/combine-lists-1.0.1.tgz#458c07e09e0d900fc28b70a3fec2dacd1d2cb7f6" + dependencies: + lodash "^4.5.0" + +combine-source-map@~0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.7.2.tgz#0870312856b307a87cc4ac486f3a9a62aeccc09e" + dependencies: + convert-source-map "~1.1.0" + inline-source-map "~0.6.0" + lodash.memoize "~3.0.3" + source-map "~0.5.3" + +combine-source-map@~0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/combine-source-map/-/combine-source-map-0.8.0.tgz#a58d0df042c186fcf822a8e8015f5450d2d79a8b" + dependencies: + convert-source-map "~1.1.0" + inline-source-map "~0.6.0" + lodash.memoize "~3.0.3" + source-map "~0.5.3" + +combined-stream@^1.0.5, combined-stream@~1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.6.tgz#723e7df6e801ac5613113a7e445a9b69cb632818" + dependencies: + delayed-stream "~1.0.0" + +commander@2.11.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" + +commander@2.12.x: + version "2.12.2" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555" + +commander@2.14.x, commander@^2.14.1: + version "2.14.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.14.1.tgz#2235123e37af8ca3c65df45b026dbd357b01b9aa" + +commander@2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" + dependencies: + graceful-readlink ">= 1.0.0" + +commander@^2.12.1, commander@^2.9.0, commander@~2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" + +common-tags@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.4.0.tgz#1187be4f3d4cf0c0427d43f74eef1f73501614c0" + dependencies: + babel-runtime "^6.18.0" + +common-tags@^1.3.1, common-tags@^1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.7.2.tgz#24d9768c63d253a56ecff93845b44b4df1d52771" + dependencies: + babel-runtime "^6.26.0" + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + +component-bind@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/component-bind/-/component-bind-1.0.0.tgz#00c608ab7dcd93897c0009651b1d3a8e1e73bbd1" + +component-emitter@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.0.tgz#ccd113a86388d06482d03de3fc7df98526ba8efe" + +component-emitter@1.2.1, component-emitter@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" + +component-inherit@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/component-inherit/-/component-inherit-0.0.3.tgz#645fc4adf58b72b649d5cae65135619db26ff143" + +compressible@~2.0.11: + version "2.0.12" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.12.tgz#c59a5c99db76767e9876500e271ef63b3493bd66" + dependencies: + mime-db ">= 1.30.0 < 2" + +compression@^1.5.2: + version "1.7.1" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.1.tgz#eff2603efc2e22cf86f35d2eb93589f9875373db" + dependencies: + accepts "~1.3.4" + bytes "3.0.0" + compressible "~2.0.11" + debug "2.6.9" + on-headers "~1.0.1" + safe-buffer "5.1.1" + vary "~1.1.2" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + +concat-stream@1.6.0, concat-stream@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" + dependencies: + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +concat-stream@~1.5.0, concat-stream@~1.5.1: + version "1.5.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.5.2.tgz#708978624d856af41a5a741defdd261da752c266" + dependencies: + inherits "~2.0.1" + readable-stream "~2.0.0" + typedarray "~0.0.5" + +configstore@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.1.tgz#094ee662ab83fad9917678de114faaea8fcdca90" + dependencies: + dot-prop "^4.1.0" + graceful-fs "^4.1.2" + make-dir "^1.0.0" + unique-string "^1.0.0" + write-file-atomic "^2.0.0" + xdg-basedir "^3.0.0" + +connect-history-api-fallback@^1.3.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz#b06873934bc5e344fef611a196a6faae0aee015a" + +connect@^3.6.0: + version "3.6.5" + resolved "https://registry.yarnpkg.com/connect/-/connect-3.6.5.tgz#fb8dde7ba0763877d0ec9df9dac0b4b40e72c7da" + dependencies: + debug "2.6.9" + finalhandler "1.0.6" + parseurl "~1.3.2" + utils-merge "1.0.1" + +console-browserify@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" + dependencies: + date-now "^0.1.4" + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + +constants-browserify@^1.0.0, constants-browserify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + +content-disposition@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" + +content-type-parser@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7" + +content-type@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + +convert-source-map@^1.4.0, convert-source-map@^1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5" + +convert-source-map@~1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.1.3.tgz#4829c877e9fe49b3161f3bf3673888e204699860" + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + +cookie@0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" + +copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + dependencies: + aproba "^1.1.1" + fs-write-stream-atomic "^1.0.8" + iferr "^0.1.5" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.0" + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + +copy-webpack-plugin@~4.4.1: + version "4.4.3" + resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.4.3.tgz#65d56fb9e1936b39e129f9aa2aec097ce1fd44be" + dependencies: + cacache "^10.0.1" + find-cache-dir "^1.0.0" + globby "^7.1.1" + is-glob "^4.0.0" + loader-utils "^1.1.0" + minimatch "^3.0.4" + p-limit "^1.0.0" + serialize-javascript "^1.4.0" + +core-js@^1.0.0: + version "1.2.7" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" + +core-js@^2.2.0, core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: + version "2.5.3" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.3.tgz#8acc38345824f16d8365b7c9b4259168e8ed603e" + +core-object@^3.1.0: + version "3.1.5" + resolved "https://registry.yarnpkg.com/core-object/-/core-object-3.1.5.tgz#fa627b87502adc98045e44678e9a8ec3b9c0d2a9" + dependencies: + chalk "^2.0.0" + +core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + +cosmiconfig@^2.1.0, cosmiconfig@^2.1.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.2.2.tgz#6173cebd56fac042c1f4390edf7af6c07c7cb892" + dependencies: + is-directory "^0.3.1" + js-yaml "^3.4.3" + minimist "^1.2.0" + object-assign "^4.1.0" + os-homedir "^1.0.1" + parse-json "^2.2.0" + require-from-string "^1.1.0" + +cosmiconfig@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-4.0.0.tgz#760391549580bbd2df1e562bc177b13c290972dc" + dependencies: + is-directory "^0.3.1" + js-yaml "^3.9.0" + parse-json "^4.0.0" + require-from-string "^2.0.1" + +cpx@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/cpx/-/cpx-1.5.0.tgz#185be018511d87270dedccc293171e37655ab88f" + dependencies: + babel-runtime "^6.9.2" + chokidar "^1.6.0" + duplexer "^0.1.1" + glob "^7.0.5" + glob2base "^0.0.12" + minimatch "^3.0.2" + mkdirp "^0.5.1" + resolve "^1.1.7" + safe-buffer "^5.0.1" + shell-quote "^1.6.1" + subarg "^1.0.0" + +create-ecdh@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" + dependencies: + bn.js "^4.1.0" + elliptic "^6.0.0" + +create-hash@^1.1.0, create-hash@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + ripemd160 "^2.0.0" + sha.js "^2.4.0" + +create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: + version "1.1.6" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +create-react-class@^15.5.2, create-react-class@^15.6.2: + version "15.6.3" + resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.6.3.tgz#2d73237fb3f970ae6ebe011a9e66f46dbca80036" + dependencies: + fbjs "^0.8.9" + loose-envify "^1.3.1" + object-assign "^4.1.1" + +cross-env@^5.1.1: + version "5.1.3" + resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-5.1.3.tgz#f8ae18faac87692b0a8b4d2f7000d4ec3a85dfd7" + dependencies: + cross-spawn "^5.1.0" + is-windows "^1.0.0" + +cross-spawn@5.1.0, cross-spawn@^5.0.1, cross-spawn@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" + dependencies: + lru-cache "^4.0.1" + which "^1.2.9" + +cryptiles@2.x.x: + version "2.0.5" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" + dependencies: + boom "2.x.x" + +cryptiles@3.x.x: + version "3.1.2" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-3.1.2.tgz#a89fbb220f5ce25ec56e8c4aa8a4fd7b5b0d29fe" + dependencies: + boom "5.x.x" + +crypto-browserify@^3.0.0, crypto-browserify@^3.11.0: + version "3.12.0" + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz#396cf9f3137f03e4b8e532c58f698254e00f80ec" + dependencies: + browserify-cipher "^1.0.0" + browserify-sign "^4.0.0" + create-ecdh "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.0" + diffie-hellman "^5.0.0" + inherits "^2.0.1" + pbkdf2 "^3.0.3" + public-encrypt "^4.0.0" + randombytes "^2.0.0" + randomfill "^1.0.3" + +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" + +css-color-names@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" + +css-in-js-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/css-in-js-utils/-/css-in-js-utils-2.0.0.tgz#5af1dd70f4b06b331f48d22a3d86e0786c0b9435" + dependencies: + hyphenate-style-name "^1.0.2" + +css-loader@^0.28.9: + version "0.28.10" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.28.10.tgz#40282e79230f7bcb4e483efa631d670b735ebf42" + dependencies: + babel-code-frame "^6.26.0" + css-selector-tokenizer "^0.7.0" + cssnano "^3.10.0" + icss-utils "^2.1.0" + loader-utils "^1.0.2" + lodash.camelcase "^4.3.0" + object-assign "^4.1.1" + postcss "^5.0.6" + postcss-modules-extract-imports "^1.2.0" + postcss-modules-local-by-default "^1.2.0" + postcss-modules-scope "^1.1.0" + postcss-modules-values "^1.3.0" + postcss-value-parser "^3.3.0" + source-list-map "^2.0.0" + +css-parse@1.7.x: + version "1.7.0" + resolved "https://registry.yarnpkg.com/css-parse/-/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b" + +css-select@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" + dependencies: + boolbase "~1.0.0" + css-what "2.1" + domutils "1.5.1" + nth-check "~1.0.1" + +css-selector-tokenizer@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86" + dependencies: + cssesc "^0.1.0" + fastparse "^1.1.1" + regexpu-core "^1.0.0" + +css-what@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" + +cssauron@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/cssauron/-/cssauron-1.4.0.tgz#a6602dff7e04a8306dc0db9a551e92e8b5662ad8" + dependencies: + through X.X.X + +cssesc@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" + +cssnano@^3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38" + dependencies: + autoprefixer "^6.3.1" + decamelize "^1.1.2" + defined "^1.0.0" + has "^1.0.1" + object-assign "^4.0.1" + postcss "^5.0.14" + postcss-calc "^5.2.0" + postcss-colormin "^2.1.8" + postcss-convert-values "^2.3.4" + postcss-discard-comments "^2.0.4" + postcss-discard-duplicates "^2.0.1" + postcss-discard-empty "^2.0.1" + postcss-discard-overridden "^0.1.1" + postcss-discard-unused "^2.2.1" + postcss-filter-plugins "^2.0.0" + postcss-merge-idents "^2.1.5" + postcss-merge-longhand "^2.0.1" + postcss-merge-rules "^2.0.3" + postcss-minify-font-values "^1.0.2" + postcss-minify-gradients "^1.0.1" + postcss-minify-params "^1.0.4" + postcss-minify-selectors "^2.0.4" + postcss-normalize-charset "^1.1.0" + postcss-normalize-url "^3.0.7" + postcss-ordered-values "^2.1.0" + postcss-reduce-idents "^2.2.2" + postcss-reduce-initial "^1.0.0" + postcss-reduce-transforms "^1.0.3" + postcss-svgo "^2.1.1" + postcss-unique-selectors "^2.0.2" + postcss-value-parser "^3.2.3" + postcss-zindex "^2.0.1" + +csso@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85" + dependencies: + clap "^1.0.9" + source-map "^0.5.3" + +cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0": + version "0.3.2" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b" + +"cssstyle@>= 0.2.37 < 0.3.0": + version "0.2.37" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54" + dependencies: + cssom "0.3.x" + +cuint@latest: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cuint/-/cuint-0.2.2.tgz#408086d409550c2631155619e9fa7bcadc3b991b" + +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + dependencies: + array-find-index "^1.0.1" + +custom-event@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/custom-event/-/custom-event-1.0.1.tgz#5d02a46850adf1b4a317946a3928fccb5bfd0425" + +cyclist@~0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-0.2.2.tgz#1b33792e11e914a2fd6d6ed6447464444e5fa640" + +cypress@1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/cypress/-/cypress-1.4.2.tgz#d957d631617aa87e64a7eae71502f2e175076638" + dependencies: + "@cypress/listr-verbose-renderer" "0.4.1" + "@cypress/xvfb" "1.1.3" + "@types/blob-util" "1.3.3" + "@types/bluebird" "3.5.18" + "@types/chai" "4.0.8" + "@types/chai-jquery" "1.1.35" + "@types/jquery" "3.2.16" + "@types/lodash" "4.14.87" + "@types/minimatch" "3.0.1" + "@types/mocha" "2.2.44" + "@types/sinon" "4.0.0" + "@types/sinon-chai" "2.7.29" + bluebird "3.5.0" + chalk "2.1.0" + check-more-types "2.24.0" + commander "2.11.0" + common-tags "1.4.0" + debug "3.1.0" + extract-zip "1.6.6" + fs-extra "4.0.1" + getos "2.8.4" + glob "7.1.2" + is-ci "1.0.10" + is-installed-globally "0.1.0" + lazy-ass "1.6.0" + listr "0.12.0" + lodash "4.17.4" + minimist "1.2.0" + progress "1.1.8" + ramda "0.24.1" + request "2.81.0" + request-progress "0.3.1" + supports-color "5.1.0" + tmp "0.0.31" + url "0.11.0" + yauzl "2.8.0" + +d@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" + dependencies: + es5-ext "^0.10.9" + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + dependencies: + assert-plus "^1.0.0" + +data-uri-to-buffer@1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz#77163ea9c20d8641b4707e8f18abdf9a78f34835" + +date-fns@^1.27.2: + version "1.29.0" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6" + +date-format@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/date-format/-/date-format-1.2.0.tgz#615e828e233dd1ab9bb9ae0950e0ceccfa6ecad8" + +date-now@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" + +dateformat@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" + +deasync@^0.1.8: + version "0.1.12" + resolved "https://registry.yarnpkg.com/deasync/-/deasync-0.1.12.tgz#0159492a4133ab301d6c778cf01e74e63b10e549" + dependencies: + bindings "~1.2.1" + nan "^2.0.7" + +debug@*, debug@3.1.0, debug@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + dependencies: + ms "2.0.0" + +debug@2, debug@2.6.9, debug@^2.1.3, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8, debug@~2.6.4, debug@~2.6.6, debug@~2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + dependencies: + ms "2.0.0" + +debug@2.6.8: + version "2.6.8" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" + dependencies: + ms "2.0.0" + +debug@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" + dependencies: + ms "0.7.1" + +decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + +decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + +dedent@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + +deep-equal@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + +deep-extend@~0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" + +deep-is@~0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + +default-require-extensions@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" + dependencies: + strip-bom "^2.0.0" + +define-properties@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" + dependencies: + foreach "^2.0.5" + object-keys "^1.0.8" + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +defined@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" + +degenerator@~1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/degenerator/-/degenerator-1.0.4.tgz#fcf490a37ece266464d9cc431ab98c5819ced095" + dependencies: + ast-types "0.x.x" + escodegen "1.x.x" + esprima "3.x.x" + +del@^2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" + dependencies: + globby "^5.0.0" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + rimraf "^2.2.8" + +del@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/del/-/del-3.0.0.tgz#53ecf699ffcbcb39637691ab13baf160819766e5" + dependencies: + globby "^6.1.0" + is-path-cwd "^1.0.0" + is-path-in-cwd "^1.0.0" + p-map "^1.1.1" + pify "^3.0.0" + rimraf "^2.2.8" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + +denodeify@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/denodeify/-/denodeify-1.2.1.tgz#3a36287f5034e699e7577901052c2e6c94251631" + +depd@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" + +depd@~1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + +deps-sort@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/deps-sort/-/deps-sort-2.0.0.tgz#091724902e84658260eb910748cccd1af6e21fb5" + dependencies: + JSONStream "^1.0.3" + shasum "^1.0.0" + subarg "^1.0.0" + through2 "^2.0.0" + +des.js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + +detect-indent@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" + dependencies: + repeating "^2.0.0" + +detect-libc@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" + +detect-newline@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" + +detect-node@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127" + +detect-port-alt@1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/detect-port-alt/-/detect-port-alt-1.1.5.tgz#a1aa8fc805a4a5df9b905b7ddc7eed036bcce889" + dependencies: + address "^1.0.1" + debug "^2.6.0" + +detective@^4.0.0: + version "4.7.1" + resolved "https://registry.yarnpkg.com/detective/-/detective-4.7.1.tgz#0eca7314338442febb6d65da54c10bb1c82b246e" + dependencies: + acorn "^5.2.1" + defined "^1.0.0" + +di@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c" + +diff@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" + +diff@3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75" + +diff@^3.1.0, diff@^3.2.0, diff@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/diff/-/diff-3.4.0.tgz#b1d85507daf3964828de54b37d0d73ba67dda56c" + +diffie-hellman@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e" + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + +dir-glob@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.0.0.tgz#0b205d2b6aef98238ca286598a8204d29d0a0034" + dependencies: + arrify "^1.0.1" + path-type "^3.0.0" + +dns-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d" + +dns-packet@^1.0.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-1.3.1.tgz#12aa426981075be500b910eedcd0b47dd7deda5a" + dependencies: + ip "^1.1.0" + safe-buffer "^5.0.1" + +dns-txt@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/dns-txt/-/dns-txt-2.0.2.tgz#b91d806f5d27188e4ab3e7d107d881a1cc4642b6" + dependencies: + buffer-indexof "^1.0.0" + +doctrine@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + dependencies: + esutils "^2.0.2" + +dom-converter@~0.1: + version "0.1.4" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.1.4.tgz#a45ef5727b890c9bffe6d7c876e7b19cb0e17f3b" + dependencies: + utila "~0.3" + +dom-helpers@^3.2.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-3.3.1.tgz#fc1a4e15ffdf60ddde03a480a9c0fece821dd4a6" + +dom-serialize@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/dom-serialize/-/dom-serialize-2.2.1.tgz#562ae8999f44be5ea3076f5419dcd59eb43ac95b" + dependencies: + custom-event "~1.0.0" + ent "~2.2.0" + extend "^3.0.0" + void-elements "^2.0.0" + +dom-serializer@0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" + dependencies: + domelementtype "~1.1.1" + entities "~1.1.1" + +dom-walk@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" + +domain-browser@^1.1.1, domain-browser@~1.1.0: + version "1.1.7" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" + +domelementtype@1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" + +domelementtype@~1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" + +domexception@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" + dependencies: + webidl-conversions "^4.0.2" + +domhandler@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" + dependencies: + domelementtype "1" + +domutils@1.1: + version "1.1.6" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" + dependencies: + domelementtype "1" + +domutils@1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" + dependencies: + dom-serializer "0" + domelementtype "1" + +dot-prop@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.0.tgz#1f19e0c2e1aa0e32797c49799f2837ac6af69c57" + dependencies: + is-obj "^1.0.0" + +dotenv-webpack@^1.5.4: + version "1.5.5" + resolved "https://registry.yarnpkg.com/dotenv-webpack/-/dotenv-webpack-1.5.5.tgz#3441094f04d304b6119e6b72524e62fb3252f5f2" + dependencies: + dotenv "^5.0.1" + +dotenv@^5.0.0, dotenv@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-5.0.1.tgz#a5317459bd3d79ab88cff6e44057a6a3fbb1fcef" + +double-ended-queue@^2.1.0-0: + version "2.1.0-0" + resolved "https://registry.yarnpkg.com/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz#103d3527fd31528f40188130c841efdd78264e5c" + +duplexer2@^0.1.2, duplexer2@~0.1.0, duplexer2@~0.1.2: + version "0.1.4" + resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" + dependencies: + readable-stream "^2.0.2" + +duplexer@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.1.tgz#ace6ff808c1ce66b57d1ebf97977acb02334cfc1" + +duplexify@^3.4.2, duplexify@^3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.3.tgz#8b5818800df92fd0125b27ab896491912858243e" + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + +ecc-jsbn@~0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" + dependencies: + jsbn "~0.1.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + +ejs@^2.5.7: + version "2.5.7" + resolved "https://registry.yarnpkg.com/ejs/-/ejs-2.5.7.tgz#cc872c168880ae3c7189762fd5ffc00896c9518a" + +electron-download@^3.0.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/electron-download/-/electron-download-3.3.0.tgz#2cfd54d6966c019c4d49ad65fbe65cc9cdef68c8" + dependencies: + debug "^2.2.0" + fs-extra "^0.30.0" + home-path "^1.0.1" + minimist "^1.2.0" + nugget "^2.0.0" + path-exists "^2.1.0" + rc "^1.1.2" + semver "^5.3.0" + sumchecker "^1.2.0" + +electron-releases@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/electron-releases/-/electron-releases-2.1.0.tgz#c5614bf811f176ce3c836e368a0625782341fd4e" + +electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.30: + version "1.3.30" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.30.tgz#9666f532a64586651fc56a72513692e820d06a80" + dependencies: + electron-releases "^2.1.0" + +electron@^1.8.3: + version "1.8.3" + resolved "https://registry.yarnpkg.com/electron/-/electron-1.8.3.tgz#001416ea3a25ce594e317cb5531bc41eadd22f7f" + dependencies: + "@types/node" "^8.0.24" + electron-download "^3.0.1" + extract-zip "^1.0.3" + +elegant-spinner@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" + +elliptic@^6.0.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + +ember-cli-string-utils@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/ember-cli-string-utils/-/ember-cli-string-utils-1.1.0.tgz#39b677fc2805f55173735376fcef278eaa4452a1" + +emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" + +encodeurl@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" + +encoding@^0.1.11: + version "0.1.12" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb" + dependencies: + iconv-lite "~0.4.13" + +end-of-stream@^1.0.0, end-of-stream@^1.1.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43" + dependencies: + once "^1.4.0" + +engine.io-client@~3.1.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-3.1.4.tgz#4fcf1370b47163bd2ce9be2733972430350d4ea1" + dependencies: + component-emitter "1.2.1" + component-inherit "0.0.3" + debug "~2.6.9" + engine.io-parser "~2.1.1" + has-cors "1.1.0" + indexof "0.0.1" + parseqs "0.0.5" + parseuri "0.0.5" + ws "~3.3.1" + xmlhttprequest-ssl "~1.5.4" + yeast "0.1.2" + +engine.io-parser@~2.1.0, engine.io-parser@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-2.1.2.tgz#4c0f4cff79aaeecbbdcfdea66a823c6085409196" + dependencies: + after "0.8.2" + arraybuffer.slice "~0.0.7" + base64-arraybuffer "0.1.5" + blob "0.0.4" + has-binary2 "~1.0.2" + +engine.io@~3.1.0: + version "3.1.4" + resolved "https://registry.yarnpkg.com/engine.io/-/engine.io-3.1.4.tgz#3d0211b70a552ce841ffc7da8627b301a9a4162e" + dependencies: + accepts "1.3.3" + base64id "1.0.0" + cookie "0.3.1" + debug "~2.6.9" + engine.io-parser "~2.1.0" + ws "~3.3.1" + optionalDependencies: + uws "~0.14.4" + +enhanced-resolve@^3.0.0, enhanced-resolve@^3.1.0, enhanced-resolve@^3.4.0: + version "3.4.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.4.1.tgz#0421e339fd71419b3da13d129b3979040230476e" + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.4.0" + object-assign "^4.0.1" + tapable "^0.2.7" + +ent@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/ent/-/ent-2.2.0.tgz#e964219325a21d05f44466a2f686ed6ce5f5dd1d" + +entities@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" + +errno@^0.1.1, errno@^0.1.3, errno@^0.1.4: + version "0.1.6" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.6.tgz#c386ce8a6283f14fc09563b71560908c9bf53026" + dependencies: + prr "~1.0.1" + +error-ex@^1.2.0, error-ex@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" + dependencies: + is-arrayish "^0.2.1" + +es-abstract@^1.10.0, es-abstract@^1.4.3, es-abstract@^1.5.1, es-abstract@^1.6.1, es-abstract@^1.7.0, es-abstract@^1.9.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.10.0.tgz#1ecb36c197842a00d8ee4c2dfd8646bb97d60864" + dependencies: + es-to-primitive "^1.1.1" + function-bind "^1.1.1" + has "^1.0.1" + is-callable "^1.1.3" + is-regex "^1.0.4" + +es-to-primitive@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" + dependencies: + is-callable "^1.1.1" + is-date-object "^1.0.1" + is-symbol "^1.0.1" + +es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: + version "0.10.37" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.37.tgz#0ee741d148b80069ba27d020393756af257defc3" + dependencies: + es6-iterator "~2.0.1" + es6-symbol "~3.1.1" + +es5-shim@^4.5.10: + version "4.5.10" + resolved "https://registry.yarnpkg.com/es5-shim/-/es5-shim-4.5.10.tgz#b7e17ef4df2a145b821f1497b50c25cf94026205" + +es6-iterator@^2.0.1, es6-iterator@~2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" + dependencies: + d "1" + es5-ext "^0.10.35" + es6-symbol "^3.1.1" + +es6-map@^0.1.3: + version "0.1.5" + resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" + dependencies: + d "1" + es5-ext "~0.10.14" + es6-iterator "~2.0.1" + es6-set "~0.1.5" + es6-symbol "~3.1.1" + event-emitter "~0.3.5" + +es6-promise@^4.0.5: + version "4.2.4" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.4.tgz#dc4221c2b16518760bd8c39a52d8f356fc00ed29" + +es6-set@~0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" + dependencies: + d "1" + es5-ext "~0.10.14" + es6-iterator "~2.0.1" + es6-symbol "3.1.1" + event-emitter "~0.3.5" + +es6-shim@^0.35.3: + version "0.35.3" + resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.3.tgz#9bfb7363feffff87a6cdb6cd93e405ec3c4b6f26" + +es6-symbol@3.1.1, es6-symbol@^3.1.1, es6-symbol@~3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" + dependencies: + d "1" + es5-ext "~0.10.14" + +es6-templates@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/es6-templates/-/es6-templates-0.2.3.tgz#5cb9ac9fb1ded6eb1239342b81d792bbb4078ee4" + dependencies: + recast "~0.11.12" + through "~2.3.6" + +es6-weak-map@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" + dependencies: + d "1" + es5-ext "^0.10.14" + es6-iterator "^2.0.1" + es6-symbol "^3.1.1" + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + +escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + +escodegen@1.x.x: + version "1.9.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852" + dependencies: + esprima "^3.1.3" + estraverse "^4.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.5.6" + +escodegen@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.1.tgz#dbae17ef96c8e4bedb1356f4504fa4cc2f7cb7e2" + dependencies: + esprima "^3.1.3" + estraverse "^4.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + +escope@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" + dependencies: + es6-map "^0.1.3" + es6-weak-map "^2.0.1" + esrecurse "^4.1.0" + estraverse "^4.1.1" + +esprima@3.x.x, esprima@^3.1.3, esprima@~3.1.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + +esprima@^2.6.0: + version "2.7.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" + +esprima@^4.0.0, esprima@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804" + +esrecurse@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.2.0.tgz#fa9568d98d3823f9a41d91e902dcab9ea6e5b163" + dependencies: + estraverse "^4.1.0" + object-assign "^4.0.1" + +estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" + +esutils@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + +event-emitter@~0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" + dependencies: + d "1" + es5-ext "~0.10.14" + +eventemitter3@1.x.x: + version "1.2.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" + +events@^1.0.0, events@^1.1.1, events@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" + +eventsource@0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-0.1.6.tgz#0acede849ed7dd1ccc32c811bb11b944d4f29232" + dependencies: + original ">=0.0.5" + +evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz#7fcbdb198dc71959432efe13842684e0525acb02" + dependencies: + md5.js "^1.3.4" + safe-buffer "^5.1.1" + +exec-sh@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.1.tgz#163b98a6e89e6b65b47c2a28d215bc1f63989c38" + dependencies: + merge "^1.1.3" + +execa@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +execa@^0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.8.0.tgz#d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da" + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +execa@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.9.0.tgz#adb7ce62cf985071f60580deb4a88b9e34712d01" + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +exenv@^1.2.0, exenv@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d" + +exit-hook@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" + +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + +expand-braces@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/expand-braces/-/expand-braces-0.1.2.tgz#488b1d1d2451cb3d3a6b192cfc030f44c5855fea" + dependencies: + array-slice "^0.2.3" + array-unique "^0.2.1" + braces "^0.1.2" + +expand-brackets@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" + dependencies: + is-posix-bracket "^0.1.0" + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +expand-range@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-0.1.1.tgz#4cb8eda0993ca56fa4f41fc42f3cbb4ccadff044" + dependencies: + is-number "^0.1.1" + repeat-string "^0.2.2" + +expand-range@^1.8.1: + version "1.8.2" + resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" + dependencies: + fill-range "^2.1.0" + +expand-tilde@^2.0.0, expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" + dependencies: + homedir-polyfill "^1.0.1" + +expect@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-22.4.0.tgz#371edf1ae15b83b5bf5ec34b42f1584660a36c16" + dependencies: + ansi-styles "^3.2.0" + jest-diff "^22.4.0" + jest-get-type "^22.1.0" + jest-matcher-utils "^22.4.0" + jest-message-util "^22.4.0" + jest-regex-util "^22.1.0" + +expect@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/expect/-/expect-22.4.3.tgz#d5a29d0a0e1fb2153557caef2674d4547e914674" + dependencies: + ansi-styles "^3.2.0" + jest-diff "^22.4.3" + jest-get-type "^22.4.3" + jest-matcher-utils "^22.4.3" + jest-message-util "^22.4.3" + jest-regex-util "^22.4.3" + +express@^4.15.3, express@^4.16.2: + version "4.16.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c" + dependencies: + accepts "~1.3.4" + array-flatten "1.1.1" + body-parser "1.18.2" + content-disposition "0.5.2" + content-type "~1.0.4" + cookie "0.3.1" + cookie-signature "1.0.6" + debug "2.6.9" + depd "~1.1.1" + encodeurl "~1.0.1" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "1.1.0" + fresh "0.5.2" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "~2.3.0" + parseurl "~1.3.2" + path-to-regexp "0.1.7" + proxy-addr "~2.0.2" + qs "6.5.1" + range-parser "~1.2.0" + safe-buffer "5.1.1" + send "0.16.1" + serve-static "1.13.1" + setprototypeof "1.1.0" + statuses "~1.3.1" + type-is "~1.6.15" + utils-merge "1.0.1" + vary "~1.1.2" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extend@3, 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" + +external-editor@^2.0.4: + version "2.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-2.1.0.tgz#3d026a21b7f95b5726387d4200ac160d372c3b48" + dependencies: + chardet "^0.4.0" + iconv-lite "^0.4.17" + tmp "^0.0.33" + +extglob@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" + dependencies: + is-extglob "^1.0.0" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extract-text-webpack-plugin@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-3.0.2.tgz#5f043eaa02f9750a9258b78c0a6e0dc1408fb2f7" + dependencies: + async "^2.4.1" + loader-utils "^1.1.0" + schema-utils "^0.3.0" + webpack-sources "^1.0.1" + +extract-zip@1.6.6, extract-zip@^1.0.3: + version "1.6.6" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.6.6.tgz#1290ede8d20d0872b429fd3f351ca128ec5ef85c" + dependencies: + concat-stream "1.6.0" + debug "2.6.9" + mkdirp "0.5.0" + yauzl "2.4.1" + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + +extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + +fast-deep-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz#96256a3bc975595eb36d82e9929d060d893439ff" + +fast-json-stable-stringify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2" + +fast-levenshtein@~2.0.4: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + +fast-memoize@^2.2.7: + version "2.3.0" + resolved "https://registry.yarnpkg.com/fast-memoize/-/fast-memoize-2.3.0.tgz#d7f81dc864489f582e30538923c423d85887af32" + +fastparse@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8" + +faye-websocket@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.10.0.tgz#4e492f8d04dfb6f89003507f6edbf2d501e7c6f4" + dependencies: + websocket-driver ">=0.5.1" + +faye-websocket@~0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.1.tgz#f0efe18c4f56e4f40afc7e06c719fd5ee6188f38" + dependencies: + websocket-driver ">=0.5.1" + +fb-watchman@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58" + dependencies: + bser "^2.0.0" + +fbjs@^0.8.12, fbjs@^0.8.16, fbjs@^0.8.9: + version "0.8.16" + resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db" + dependencies: + core-js "^1.0.0" + isomorphic-fetch "^2.1.1" + loose-envify "^1.0.0" + object-assign "^4.1.0" + promise "^7.1.1" + setimmediate "^1.0.5" + ua-parser-js "^0.7.9" + +fd-slicer@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.0.1.tgz#8b5bcbd9ec327c5041bf9ab023fd6750f1177e65" + dependencies: + pend "~1.2.0" + +feather-icons@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/feather-icons/-/feather-icons-4.5.0.tgz#5c0a38fe4633e88a14cc8d7aa822e2591828027d" + dependencies: + classnames "^2.2.5" + +figures@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" + dependencies: + escape-string-regexp "^1.0.5" + object-assign "^4.1.0" + +figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + dependencies: + escape-string-regexp "^1.0.5" + +file-loader@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.6.tgz#7b9a8f2c58f00a77fddf49e940f7ac978a3ea0e8" + dependencies: + loader-utils "^1.0.2" + schema-utils "^0.3.0" + +file-loader@^1.1.8: + version "1.1.11" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.11.tgz#6fe886449b0f2a936e43cabaac0cdbfb369506f8" + dependencies: + loader-utils "^1.0.2" + schema-utils "^0.4.5" + +file-uri-to-path@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + +filename-regex@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" + +fileset@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0" + dependencies: + glob "^7.0.3" + minimatch "^3.0.3" + +filesize@3.5.11: + version "3.5.11" + resolved "https://registry.yarnpkg.com/filesize/-/filesize-3.5.11.tgz#1919326749433bb3cf77368bd158caabcc19e9ee" + +fill-range@^2.1.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" + dependencies: + is-number "^2.1.0" + isobject "^2.0.0" + randomatic "^1.1.3" + repeat-element "^1.1.2" + repeat-string "^1.5.2" + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +finalhandler@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.6.tgz#007aea33d1a4d3e42017f624848ad58d212f814f" + dependencies: + debug "2.6.9" + encodeurl "~1.0.1" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.3.1" + unpipe "~1.0.0" + +finalhandler@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.0.tgz#ce0b6855b45853e791b2fcc680046d88253dd7f5" + dependencies: + debug "2.6.9" + encodeurl "~1.0.1" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.3.1" + unpipe "~1.0.0" + +find-cache-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-1.0.0.tgz#9288e3e9e3cc3748717d39eade17cf71fc30ee6f" + dependencies: + commondir "^1.0.1" + make-dir "^1.0.0" + pkg-dir "^2.0.0" + +find-index@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" + +find-parent-dir@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/find-parent-dir/-/find-parent-dir-0.3.0.tgz#33c44b429ab2b2f0646299c5f9f718f376ff8d54" + +find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + +find-up@^2.0.0, find-up@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + dependencies: + locate-path "^2.0.0" + +flatten@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" + +flush-write-stream@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.0.2.tgz#c81b90d8746766f1a609a46809946c45dd8ae417" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.4" + +follow-redirects@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.0.0.tgz#8e34298cbd2e176f254effec75a1c78cc849fd37" + dependencies: + debug "^2.2.0" + +font-awesome@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133" + +for-in@^0.1.3: + version "0.1.8" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" + +for-in@^1.0.1, for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + +for-own@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" + dependencies: + for-in "^1.0.1" + +for-own@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-1.0.0.tgz#c63332f415cedc4b04dbfe70cf836494c53cb44b" + dependencies: + for-in "^1.0.1" + +foreach@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" + +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.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.0.0.tgz#6f0aebadcc5da16c13e1ecc11137d85f9b883b25" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.11" + +form-data@~2.1.1: + version "2.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + +form-data@~2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + +forwarded@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.2.tgz#98c23dab1175657b8c0573e8ceccd91b0ff18c84" + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + dependencies: + map-cache "^0.2.2" + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + +from2@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +fs-access@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/fs-access/-/fs-access-1.0.1.tgz#d6a87f262271cefebec30c553407fb995da8777a" + dependencies: + null-check "^1.0.0" + +fs-extra@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.1.tgz#7fc0c6c8957f983f57f306a24e5b9ddd8d0dd880" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^3.0.0" + universalify "^0.1.0" + +fs-extra@4.0.3, fs-extra@^4.0.0, fs-extra@^4.0.2: + version "4.0.3" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-4.0.3.tgz#0d852122e5bc5beb453fb028e9c0c9bf36340c94" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-extra@^0.30.0: + version "0.30.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-0.30.0.tgz#f233ffcc08d4da7d432daa449776989db1df93f0" + dependencies: + graceful-fs "^4.1.2" + jsonfile "^2.1.0" + klaw "^1.0.0" + path-is-absolute "^1.0.0" + rimraf "^2.2.8" + +fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + +fsevents@^1.0.0, fsevents@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8" + dependencies: + nan "^2.3.0" + node-pre-gyp "^0.6.39" + +fstream-ignore@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" + dependencies: + fstream "^1.0.0" + inherits "2" + minimatch "^3.0.0" + +fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + dependencies: + graceful-fs "^4.1.2" + inherits "~2.0.0" + mkdirp ">=0.5 0" + rimraf "2" + +fsu@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/fsu/-/fsu-1.0.4.tgz#586a8fbd8d19acdf330cecbcf17d641e9c370ba0" + +ftp@~0.3.10: + version "0.3.10" + resolved "https://registry.yarnpkg.com/ftp/-/ftp-0.3.10.tgz#9197d861ad8142f3e63d5a83bfe4c59f7330885d" + dependencies: + readable-stream "1.1.x" + xregexp "2.0.0" + +function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + +function.prototype.name@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327" + dependencies: + define-properties "^1.1.2" + function-bind "^1.1.1" + is-callable "^1.1.3" + +fuse.js@^3.0.1, fuse.js@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/fuse.js/-/fuse.js-3.2.0.tgz#f0448e8069855bf2a3e683cdc1d320e7e2a07ef4" + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + dependencies: + aproba "^1.0.3" + console-control-strings "^1.0.0" + has-unicode "^2.0.0" + object-assign "^4.1.0" + signal-exit "^3.0.0" + string-width "^1.0.1" + strip-ansi "^3.0.1" + wide-align "^1.1.0" + +gaze@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105" + dependencies: + globule "^1.0.0" + +generate-function@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" + +generate-object-property@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" + dependencies: + is-property "^1.0.0" + +get-caller-file@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" + +get-own-enumerable-property-symbols@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-2.0.1.tgz#5c4ad87f2834c4b9b4e84549dc1e0650fb38c24b" + +get-params@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/get-params/-/get-params-0.1.2.tgz#bae0dfaba588a0c60d7834c0d8dc2ff60eeef2fe" + +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + +get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + +get-uri@2: + version "2.0.1" + resolved "https://registry.yarnpkg.com/get-uri/-/get-uri-2.0.1.tgz#dbdcacacd8c608a38316869368117697a1631c59" + dependencies: + data-uri-to-buffer "1" + debug "2" + extend "3" + file-uri-to-path "1" + ftp "~0.3.10" + readable-stream "2" + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + +getos@2.8.4: + version "2.8.4" + resolved "https://registry.yarnpkg.com/getos/-/getos-2.8.4.tgz#7b8603d3619c28e38cb0fe7a4f63c3acb80d5163" + dependencies: + async "2.1.4" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + dependencies: + assert-plus "^1.0.0" + +glamor@^2.20.40: + version "2.20.40" + resolved "https://registry.yarnpkg.com/glamor/-/glamor-2.20.40.tgz#f606660357b7cf18dface731ad1a2cfa93817f05" + dependencies: + fbjs "^0.8.12" + inline-style-prefixer "^3.0.6" + object-assign "^4.1.1" + prop-types "^15.5.10" + through "^2.3.8" + +glamorous@^4.11.6: + version "4.12.0" + resolved "https://registry.yarnpkg.com/glamorous/-/glamorous-4.12.0.tgz#47b864326ca37e1f1ea6d523b3d23402f6657af1" + dependencies: + brcast "^3.0.0" + fast-memoize "^2.2.7" + html-tag-names "^1.1.1" + is-function "^1.0.1" + is-plain-object "^2.0.4" + react-html-attributes "^1.3.0" + svg-tag-names "^1.1.0" + +glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + dependencies: + glob-parent "^2.0.0" + is-glob "^2.0.0" + +glob-parent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" + dependencies: + is-glob "^2.0.0" + +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + +glob2base@^0.0.12: + version "0.0.12" + resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" + dependencies: + find-index "^0.1.1" + +glob@7.0.x: + version "7.0.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.2" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.2" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@7.1.2, glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.0.6, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + +global-dirs@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" + dependencies: + ini "^1.3.4" + +global-modules@1.0.0, global-modules@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" + dependencies: + global-prefix "^1.0.1" + is-windows "^1.0.1" + resolve-dir "^1.0.0" + +global-prefix@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" + dependencies: + expand-tilde "^2.0.2" + homedir-polyfill "^1.0.1" + ini "^1.3.4" + is-windows "^1.0.1" + which "^1.2.14" + +global@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/global/-/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f" + dependencies: + min-document "^2.19.0" + process "~0.5.1" + +globals@^9.18.0: + version "9.18.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a" + +globby@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" + dependencies: + array-union "^1.0.1" + arrify "^1.0.0" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +globby@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-6.1.0.tgz#f5a6d70e8395e21c858fb0489d64df02424d506c" + dependencies: + array-union "^1.0.1" + glob "^7.0.3" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +globby@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/globby/-/globby-7.1.1.tgz#fb2ccff9401f8600945dfada97440cca972b8680" + dependencies: + array-union "^1.0.1" + dir-glob "^2.0.0" + glob "^7.1.2" + ignore "^3.3.5" + pify "^3.0.0" + slash "^1.0.0" + +globule@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09" + dependencies: + glob "~7.1.1" + lodash "~4.17.4" + minimatch "~3.0.2" + +graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.1.9: + version "4.1.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + +"graceful-readlink@>= 1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" + +growl@1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f" + +growl@1.9.2: + version "1.9.2" + resolved "https://registry.yarnpkg.com/growl/-/growl-1.9.2.tgz#0ea7743715db8d8de2c5ede1775e1b45ac85c02f" + +growly@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + +gzip-size@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-3.0.0.tgz#546188e9bdc337f673772f81660464b389dce520" + dependencies: + duplexer "^0.1.1" + +handle-thing@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4" + +handlebars@^4.0.3: + version "4.0.11" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.11.tgz#630a35dfe0294bc281edae6ffc5d329fc7982dcc" + dependencies: + async "^1.4.0" + optimist "^0.6.1" + source-map "^0.4.4" + optionalDependencies: + uglify-js "^2.6" + +har-schema@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + +har-validator@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" + dependencies: + chalk "^1.1.1" + commander "^2.9.0" + is-my-json-valid "^2.12.4" + pinkie-promise "^2.0.0" + +har-validator@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" + dependencies: + ajv "^4.9.1" + har-schema "^1.0.5" + +har-validator@~5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.0.3.tgz#ba402c266194f15956ef15e0fcf242993f6a7dfd" + dependencies: + ajv "^5.1.0" + har-schema "^2.0.0" + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + dependencies: + ansi-regex "^2.0.0" + +has-binary2@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-binary2/-/has-binary2-1.0.2.tgz#e83dba49f0b9be4d026d27365350d9f03f54be98" + dependencies: + isarray "2.0.1" + +has-cors@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" + +has-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" + +has-flag@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51" + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +has@^1.0.0, has@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" + dependencies: + function-bind "^1.0.2" + +hash-base@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" + dependencies: + inherits "^2.0.1" + +hash-base@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-3.0.4.tgz#5fc8686847ecd73499403319a6b0a3f3f6ae4918" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.3.tgz#340dedbe6290187151c1ea1d777a3448935df846" + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.0" + +hawk@3.1.3, hawk@~3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" + dependencies: + boom "2.x.x" + cryptiles "2.x.x" + hoek "2.x.x" + sntp "1.x.x" + +hawk@~6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-6.0.2.tgz#af4d914eb065f9b5ce4d9d11c1cb2126eecc3038" + dependencies: + boom "4.x.x" + cryptiles "3.x.x" + hoek "4.x.x" + sntp "2.x.x" + +he@1.1.1, he@1.1.x: + version "1.1.1" + resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" + +hipchat-notifier@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/hipchat-notifier/-/hipchat-notifier-1.1.0.tgz#b6d249755437c191082367799d3ba9a0f23b231e" + dependencies: + lodash "^4.0.0" + request "^2.0.0" + +hmac-drbg@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hoek@2.x.x: + version "2.16.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" + +hoek@4.x.x: + version "4.2.0" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" + +hoist-non-react-statics@1.x.x, hoist-non-react-statics@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz#aa448cf0986d55cc40773b17174b7dd066cb7cfb" + +home-or-tmp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.1" + +home-path@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/home-path/-/home-path-1.0.5.tgz#788b29815b12d53bacf575648476e6f9041d133f" + +homedir-polyfill@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz#4c2bbc8a758998feebf5ed68580f76d46768b4bc" + dependencies: + parse-passwd "^1.0.0" + +hosted-git-info@^2.1.4: + version "2.5.0" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.5.0.tgz#6d60e34b3abbc8313062c3b798ef8d901a07af3c" + +hpack.js@^2.1.6: + version "2.1.6" + resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2" + dependencies: + inherits "^2.0.1" + obuf "^1.0.0" + readable-stream "^2.0.1" + wbuf "^1.1.0" + +html-comment-regex@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e" + +html-element-attributes@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/html-element-attributes/-/html-element-attributes-1.3.0.tgz#f06ebdfce22de979db82020265cac541fb17d4fc" + +html-encoding-sniffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" + dependencies: + whatwg-encoding "^1.0.1" + +html-entities@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" + +html-loader@^0.5.5: + version "0.5.5" + resolved "https://registry.yarnpkg.com/html-loader/-/html-loader-0.5.5.tgz#6356dbeb0c49756d8ebd5ca327f16ff06ab5faea" + dependencies: + es6-templates "^0.2.3" + fastparse "^1.1.1" + html-minifier "^3.5.8" + loader-utils "^1.1.0" + object-assign "^4.1.1" + +html-minifier@^3.2.3: + version "3.5.8" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.8.tgz#5ccdb1f73a0d654e6090147511f6e6b2ee312700" + dependencies: + camel-case "3.0.x" + clean-css "4.1.x" + commander "2.12.x" + he "1.1.x" + ncname "1.0.x" + param-case "2.1.x" + relateurl "0.2.x" + uglify-js "3.3.x" + +html-minifier@^3.5.8: + version "3.5.10" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.10.tgz#8522c772c388db81aa5c26f62033302d906ea1c7" + dependencies: + camel-case "3.0.x" + clean-css "4.1.x" + commander "2.14.x" + he "1.1.x" + ncname "1.0.x" + param-case "2.1.x" + relateurl "0.2.x" + uglify-js "3.3.x" + +html-tag-names@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/html-tag-names/-/html-tag-names-1.1.2.tgz#f65168964c5a9c82675efda882875dcb2a875c22" + +html-webpack-plugin@^2.29.0, html-webpack-plugin@^2.30.1: + version "2.30.1" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.30.1.tgz#7f9c421b7ea91ec460f56527d78df484ee7537d5" + dependencies: + bluebird "^3.4.7" + html-minifier "^3.2.3" + loader-utils "^0.2.16" + lodash "^4.17.3" + pretty-error "^2.0.2" + toposort "^1.0.0" + +htmlescape@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351" + +htmlparser2@~3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" + dependencies: + domelementtype "1" + domhandler "2.1" + domutils "1.1" + readable-stream "1.0" + +http-deceiver@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" + +http-errors@1.6.2, http-errors@~1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" + dependencies: + depd "1.1.1" + inherits "2.0.3" + setprototypeof "1.0.3" + statuses ">= 1.3.1 < 2" + +http-parser-js@>=0.4.0: + version "0.4.9" + resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.4.9.tgz#ea1a04fb64adff0242e9974f297dd4c3cad271e1" + +http-proxy-agent@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-1.0.0.tgz#cc1ce38e453bf984a0f7702d2dd59c73d081284a" + dependencies: + agent-base "2" + debug "2" + extend "3" + +http-proxy-middleware@~0.17.4: + version "0.17.4" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz#642e8848851d66f09d4f124912846dbaeb41b833" + dependencies: + http-proxy "^1.16.2" + is-glob "^3.1.0" + lodash "^4.17.2" + micromatch "^2.3.11" + +http-proxy@^1.13.0, http-proxy@^1.16.2: + version "1.16.2" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742" + dependencies: + eventemitter3 "1.x.x" + requires-port "1.x.x" + +http-signature@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" + dependencies: + assert-plus "^0.2.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +httpntlm@1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/httpntlm/-/httpntlm-1.6.1.tgz#ad01527143a2e8773cfae6a96f58656bb52a34b2" + dependencies: + httpreq ">=0.4.22" + underscore "~1.7.0" + +httpreq@>=0.4.22: + version "0.4.24" + resolved "https://registry.yarnpkg.com/httpreq/-/httpreq-0.4.24.tgz#4335ffd82cd969668a39465c929ac61d6393627f" + +https-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" + +https-proxy-agent@1, https-proxy-agent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz#35f7da6c48ce4ddbfa264891ac593ee5ff8671e6" + dependencies: + agent-base "2" + debug "2" + extend "3" + +husky@^0.14.3: + version "0.14.3" + resolved "https://registry.yarnpkg.com/husky/-/husky-0.14.3.tgz#c69ed74e2d2779769a17ba8399b54ce0b63c12c3" + dependencies: + is-ci "^1.0.10" + normalize-path "^1.0.0" + strip-indent "^2.0.0" + +hyphenate-style-name@^1.0.1, hyphenate-style-name@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.2.tgz#31160a36930adaf1fc04c6074f7eb41465d4ec4b" + +iconv-lite@0.4.15: + version "0.4.15" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" + +iconv-lite@0.4.19, iconv-lite@^0.4.17, iconv-lite@~0.4.13: + version "0.4.19" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" + +icss-replace-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" + +icss-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-2.1.0.tgz#83f0a0ec378bf3246178b6c2ad9136f135b1c962" + dependencies: + postcss "^6.0.1" + +ieee754@^1.1.4: + version "1.1.8" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" + +iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + +ignore@^3.3.5, ignore@^3.3.7: + version "3.3.7" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.7.tgz#612289bfb3c220e186a58118618d5be8c1bab021" + +image-size@~0.5.0: + version "0.5.5" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" + +immutable@^3.8.1: + version "3.8.2" + resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.2.tgz#c2439951455bb39913daf281376f1530e104adf3" + +import-local@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc" + dependencies: + pkg-dir "^2.0.0" + resolve-cwd "^2.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + +in-publish@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" + +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + dependencies: + repeating "^2.0.0" + +indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + +indexes-of@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" + +indexof@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" + +inflection@~1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.10.0.tgz#5bffcb1197ad3e81050f8e17e21668087ee9eb2f" + +inflection@~1.3.0: + version "1.3.8" + resolved "https://registry.yarnpkg.com/inflection/-/inflection-1.3.8.tgz#cbd160da9f75b14c3cc63578d4f396784bf3014e" + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + +inherits@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + +ini@^1.3.4, ini@~1.3.0: + version "1.3.5" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" + +inline-source-map@~0.6.0: + version "0.6.2" + resolved "https://registry.yarnpkg.com/inline-source-map/-/inline-source-map-0.6.2.tgz#f9393471c18a79d1724f863fa38b586370ade2a5" + dependencies: + source-map "~0.5.3" + +inline-style-prefixer@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-2.0.5.tgz#c153c7e88fd84fef5c602e95a8168b2770671fe7" + dependencies: + bowser "^1.0.0" + hyphenate-style-name "^1.0.1" + +inline-style-prefixer@^3.0.6: + version "3.0.8" + resolved "https://registry.yarnpkg.com/inline-style-prefixer/-/inline-style-prefixer-3.0.8.tgz#8551b8e5b4d573244e66a34b04f7d32076a2b534" + dependencies: + bowser "^1.7.3" + css-in-js-utils "^2.0.0" + +inquirer@3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz#9dd2f2ad765dcab1ff0443b491442a20ba227dc9" + dependencies: + ansi-escapes "^3.0.0" + chalk "^2.0.0" + cli-cursor "^2.1.0" + cli-width "^2.0.0" + external-editor "^2.0.4" + figures "^2.0.0" + lodash "^4.3.0" + mute-stream "0.0.7" + run-async "^2.2.0" + rx-lite "^4.0.8" + rx-lite-aggregates "^4.0.8" + string-width "^2.1.0" + strip-ansi "^4.0.0" + through "^2.3.6" + +insert-css@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/insert-css/-/insert-css-2.0.0.tgz#eb5d1097b7542f4c79ea3060d3aee07d053880f4" + +insert-module-globals@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/insert-module-globals/-/insert-module-globals-7.0.1.tgz#c03bf4e01cb086d5b5e5ace8ad0afe7889d638c3" + dependencies: + JSONStream "^1.0.3" + combine-source-map "~0.7.1" + concat-stream "~1.5.1" + is-buffer "^1.1.0" + lexical-scope "^1.2.0" + process "~0.11.0" + through2 "^2.0.0" + xtend "^4.0.0" + +internal-ip@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/internal-ip/-/internal-ip-1.2.0.tgz#ae9fbf93b984878785d50a8de1b356956058cf5c" + dependencies: + meow "^3.3.0" + +interpret@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" + +invariant@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" + dependencies: + loose-envify "^1.0.0" + +invert-kv@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + +ip@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.0.1.tgz#c7e356cdea225ae71b36d70f2e71a92ba4e42590" + +ip@^1.1.0, ip@^1.1.2, ip@^1.1.4, ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + +ipaddr.js@1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0" + +is-absolute-url@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + dependencies: + kind-of "^6.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + dependencies: + binary-extensions "^1.0.0" + +is-buffer@^1.1.0, is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + +is-builtin-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" + dependencies: + builtin-modules "^1.0.0" + +is-callable@^1.1.1, is-callable@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" + +is-ci@1.0.10: + version "1.0.10" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" + dependencies: + ci-info "^1.0.0" + +is-ci@^1.0.10: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.1.0.tgz#247e4162e7860cebbdaf30b774d6b0ac7dcfe7a5" + dependencies: + ci-info "^1.0.0" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + dependencies: + kind-of "^6.0.0" + +is-date-object@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + +is-dom@^1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/is-dom/-/is-dom-1.0.9.tgz#483832d52972073de12b9fe3f60320870da8370d" + +is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + +is-equal-shallow@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" + dependencies: + is-primitive "^2.0.0" + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + +is-extglob@^2.1.0, is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + +is-finite@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + +is-function@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" + +is-generator-fn@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a" + +is-glob@^2.0.0, is-glob@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" + dependencies: + is-extglob "^1.0.0" + +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + dependencies: + is-extglob "^2.1.0" + +is-glob@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.0.tgz#9521c76845cc2610a85203ddf080a958c2ffabc0" + dependencies: + is-extglob "^2.1.1" + +is-installed-globally@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80" + dependencies: + global-dirs "^0.1.0" + is-path-inside "^1.0.0" + +is-my-json-valid@^2.12.4: + version "2.17.1" + resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.1.tgz#3da98914a70a22f0a8563ef1511a246c6fc55471" + dependencies: + generate-function "^2.0.0" + generate-object-property "^1.1.0" + jsonpointer "^4.0.0" + xtend "^4.0.0" + +is-number@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-0.1.1.tgz#69a7af116963d47206ec9bd9b48a14216f1e3806" + +is-number@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" + dependencies: + kind-of "^3.0.2" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + dependencies: + kind-of "^3.0.2" + +is-number@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" + +is-obj@^1.0.0, is-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" + +is-observable@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/is-observable/-/is-observable-0.2.0.tgz#b361311d83c6e5d726cabf5e250b0237106f5ae2" + dependencies: + symbol-observable "^0.2.2" + +is-odd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" + dependencies: + is-number "^4.0.0" + +is-path-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" + +is-path-in-cwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" + dependencies: + is-path-inside "^1.0.0" + +is-path-inside@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" + dependencies: + path-is-inside "^1.0.1" + +is-plain-obj@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + +is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + dependencies: + isobject "^3.0.1" + +is-posix-bracket@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" + +is-primitive@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" + +is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa" + +is-property@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" + +is-regex@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" + dependencies: + has "^1.0.1" + +is-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" + +is-root@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-root/-/is-root-1.0.0.tgz#07b6c233bc394cd9d02ba15c966bd6660d6342d5" + +is-stream@^1.0.1, is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + +is-svg@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9" + dependencies: + html-comment-regex "^1.1.0" + +is-symbol@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" + +is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + +is-windows@^1.0.0, is-windows@^1.0.1, is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + +is-wsl@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-1.1.0.tgz#1f16e4aa22b04d1336b66188a66af3c600c3a66d" + +isarray@0.0.1, isarray@~0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + +isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + +isarray@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" + +isbinaryfile@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/isbinaryfile/-/isbinaryfile-3.0.2.tgz#4a3e974ec0cba9004d3fc6cde7209ea69368a621" + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + +isomorphic-fetch@^2.1.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" + dependencies: + node-fetch "^1.0.1" + whatwg-fetch ">=0.10.0" + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + +istanbul-api@^1.1.14: + version "1.2.1" + resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.2.1.tgz#0c60a0515eb11c7d65c6b50bba2c6e999acd8620" + dependencies: + async "^2.1.4" + fileset "^2.0.2" + istanbul-lib-coverage "^1.1.1" + istanbul-lib-hook "^1.1.0" + istanbul-lib-instrument "^1.9.1" + istanbul-lib-report "^1.1.2" + istanbul-lib-source-maps "^1.2.2" + istanbul-reports "^1.1.3" + js-yaml "^3.7.0" + mkdirp "^0.5.1" + once "^1.4.0" + +istanbul-instrumenter-loader@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-instrumenter-loader/-/istanbul-instrumenter-loader-3.0.0.tgz#9f553923b22360bac95e617aaba01add1f7db0b2" + dependencies: + convert-source-map "^1.5.0" + istanbul-lib-instrument "^1.7.3" + loader-utils "^1.1.0" + schema-utils "^0.3.0" + +istanbul-lib-coverage@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da" + +istanbul-lib-coverage@^1.1.2, istanbul-lib-coverage@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.0.tgz#f7d8f2e42b97e37fe796114cb0f9d68b5e3a4341" + +istanbul-lib-hook@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.1.0.tgz#8538d970372cb3716d53e55523dd54b557a8d89b" + dependencies: + append-transform "^0.4.0" + +istanbul-lib-instrument@^1.7.3, istanbul-lib-instrument@^1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.9.1.tgz#250b30b3531e5d3251299fdd64b0b2c9db6b558e" + dependencies: + babel-generator "^6.18.0" + babel-template "^6.16.0" + babel-traverse "^6.18.0" + babel-types "^6.18.0" + babylon "^6.18.0" + istanbul-lib-coverage "^1.1.1" + semver "^5.3.0" + +istanbul-lib-instrument@^1.7.5, istanbul-lib-instrument@^1.8.0: + version "1.10.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.1.tgz#724b4b6caceba8692d3f1f9d0727e279c401af7b" + dependencies: + babel-generator "^6.18.0" + babel-template "^6.16.0" + babel-traverse "^6.18.0" + babel-types "^6.18.0" + babylon "^6.18.0" + istanbul-lib-coverage "^1.2.0" + semver "^5.3.0" + +istanbul-lib-report@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.2.tgz#922be27c13b9511b979bd1587359f69798c1d425" + dependencies: + istanbul-lib-coverage "^1.1.1" + mkdirp "^0.5.1" + path-parse "^1.0.5" + supports-color "^3.1.2" + +istanbul-lib-source-maps@^1.2.1: + version "1.2.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.3.tgz#20fb54b14e14b3fb6edb6aca3571fd2143db44e6" + dependencies: + debug "^3.1.0" + istanbul-lib-coverage "^1.1.2" + mkdirp "^0.5.1" + rimraf "^2.6.1" + source-map "^0.5.3" + +istanbul-lib-source-maps@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.2.tgz#750578602435f28a0c04ee6d7d9e0f2960e62c1c" + dependencies: + debug "^3.1.0" + istanbul-lib-coverage "^1.1.1" + mkdirp "^0.5.1" + rimraf "^2.6.1" + source-map "^0.5.3" + +istanbul-reports@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.3.tgz#3b9e1e8defb6d18b1d425da8e8b32c5a163f2d10" + dependencies: + handlebars "^4.0.3" + +jasmine-core@~2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.8.0.tgz#bcc979ae1f9fd05701e45e52e65d3a5d63f1a24e" + +jasmine-spec-reporter@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz#1d632aec0341670ad324f92ba84b4b32b35e9e22" + dependencies: + colors "1.1.2" + +jasmine@^2.5.3: + version "2.8.0" + resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-2.8.0.tgz#6b089c0a11576b1f16df11b80146d91d4e8b8a3e" + dependencies: + exit "^0.1.2" + glob "^7.0.6" + jasmine-core "~2.8.0" + +jasminewd2@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/jasminewd2/-/jasminewd2-2.2.0.tgz#e37cf0b17f199cce23bea71b2039395246b4ec4e" + +jest-changed-files@^22.2.0: + version "22.2.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-22.2.0.tgz#517610c4a8ca0925bdc88b0ca53bd678aa8d019e" + dependencies: + throat "^4.0.0" + +jest-cli@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-22.4.2.tgz#e6546dc651e13d164481aa3e76e53ac4f4edab06" + dependencies: + ansi-escapes "^3.0.0" + chalk "^2.0.1" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.1.11" + import-local "^1.0.0" + is-ci "^1.0.10" + istanbul-api "^1.1.14" + istanbul-lib-coverage "^1.1.1" + istanbul-lib-instrument "^1.8.0" + istanbul-lib-source-maps "^1.2.1" + jest-changed-files "^22.2.0" + jest-config "^22.4.2" + jest-environment-jsdom "^22.4.1" + jest-get-type "^22.1.0" + jest-haste-map "^22.4.2" + jest-message-util "^22.4.0" + jest-regex-util "^22.1.0" + jest-resolve-dependencies "^22.1.0" + jest-runner "^22.4.2" + jest-runtime "^22.4.2" + jest-snapshot "^22.4.0" + jest-util "^22.4.1" + jest-validate "^22.4.2" + jest-worker "^22.2.2" + micromatch "^2.3.11" + node-notifier "^5.2.1" + realpath-native "^1.0.0" + rimraf "^2.5.4" + slash "^1.0.0" + string-length "^2.0.0" + strip-ansi "^4.0.0" + which "^1.2.12" + yargs "^10.0.3" + +jest-config@^22.4.0, jest-config@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-22.4.2.tgz#580ba5819bf81a5e48f4fd470e8b81834f45c855" + dependencies: + chalk "^2.0.1" + glob "^7.1.1" + jest-environment-jsdom "^22.4.1" + jest-environment-node "^22.4.1" + jest-get-type "^22.1.0" + jest-jasmine2 "^22.4.2" + jest-regex-util "^22.1.0" + jest-resolve "^22.4.2" + jest-util "^22.4.1" + jest-validate "^22.4.2" + pretty-format "^22.4.0" + +jest-config@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-22.4.3.tgz#0e9d57db267839ea31309119b41dc2fa31b76403" + dependencies: + chalk "^2.0.1" + glob "^7.1.1" + jest-environment-jsdom "^22.4.3" + jest-environment-node "^22.4.3" + jest-get-type "^22.4.3" + jest-jasmine2 "^22.4.3" + jest-regex-util "^22.4.3" + jest-resolve "^22.4.3" + jest-util "^22.4.3" + jest-validate "^22.4.3" + pretty-format "^22.4.3" + +jest-diff@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-22.4.0.tgz#384c2b78519ca44ca126382df53f134289232525" + dependencies: + chalk "^2.0.1" + diff "^3.2.0" + jest-get-type "^22.1.0" + pretty-format "^22.4.0" + +jest-diff@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-22.4.3.tgz#e18cc3feff0aeef159d02310f2686d4065378030" + dependencies: + chalk "^2.0.1" + diff "^3.2.0" + jest-get-type "^22.4.3" + pretty-format "^22.4.3" + +jest-docblock@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-22.4.0.tgz#dbf1877e2550070cfc4d9b07a55775a0483159b8" + dependencies: + detect-newline "^2.1.0" + +jest-environment-jsdom@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-22.4.1.tgz#754f408872441740100d3917e5ec40c74de6447f" + dependencies: + jest-mock "^22.2.0" + jest-util "^22.4.1" + jsdom "^11.5.1" + +jest-environment-jsdom@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-22.4.3.tgz#d67daa4155e33516aecdd35afd82d4abf0fa8a1e" + dependencies: + jest-mock "^22.4.3" + jest-util "^22.4.3" + jsdom "^11.5.1" + +jest-environment-node@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-22.4.1.tgz#418850eb654596b8d6e36c2021cbedbc23df8e16" + dependencies: + jest-mock "^22.2.0" + jest-util "^22.4.1" + +jest-environment-node@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-22.4.3.tgz#54c4eaa374c83dd52a9da8759be14ebe1d0b9129" + dependencies: + jest-mock "^22.4.3" + jest-util "^22.4.3" + +jest-get-type@^22.1.0: + version "22.1.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.1.0.tgz#4e90af298ed6181edc85d2da500dbd2753e0d5a9" + +jest-get-type@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.4.3.tgz#e3a8504d8479342dd4420236b322869f18900ce4" + +jest-haste-map@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-22.4.2.tgz#a90178e66146d4378bb076345a949071f3b015b4" + dependencies: + fb-watchman "^2.0.0" + graceful-fs "^4.1.11" + jest-docblock "^22.4.0" + jest-serializer "^22.4.0" + jest-worker "^22.2.2" + micromatch "^2.3.11" + sane "^2.0.0" + +jest-jasmine2@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-22.4.2.tgz#dfd3d259579ed6f52510d8f1ab692808f0d40691" + dependencies: + chalk "^2.0.1" + co "^4.6.0" + expect "^22.4.0" + graceful-fs "^4.1.11" + is-generator-fn "^1.0.0" + jest-diff "^22.4.0" + jest-matcher-utils "^22.4.0" + jest-message-util "^22.4.0" + jest-snapshot "^22.4.0" + jest-util "^22.4.1" + source-map-support "^0.5.0" + +jest-jasmine2@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-22.4.3.tgz#4daf64cd14c793da9db34a7c7b8dcfe52a745965" + dependencies: + chalk "^2.0.1" + co "^4.6.0" + expect "^22.4.3" + graceful-fs "^4.1.11" + is-generator-fn "^1.0.0" + jest-diff "^22.4.3" + jest-matcher-utils "^22.4.3" + jest-message-util "^22.4.3" + jest-snapshot "^22.4.3" + jest-util "^22.4.3" + source-map-support "^0.5.0" + +jest-leak-detector@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-22.4.0.tgz#64da77f05b001c96d2062226e079f89989c4aa2f" + dependencies: + pretty-format "^22.4.0" + +jest-matcher-utils@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-22.4.0.tgz#d55f5faf2270462736bdf7c7485ee931c9d4b6a1" + dependencies: + chalk "^2.0.1" + jest-get-type "^22.1.0" + pretty-format "^22.4.0" + +jest-matcher-utils@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-22.4.3.tgz#4632fe428ebc73ebc194d3c7b65d37b161f710ff" + dependencies: + chalk "^2.0.1" + jest-get-type "^22.4.3" + pretty-format "^22.4.3" + +jest-message-util@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-22.4.0.tgz#e3d861df16d2fee60cb2bc8feac2188a42579642" + dependencies: + "@babel/code-frame" "^7.0.0-beta.35" + chalk "^2.0.1" + micromatch "^2.3.11" + slash "^1.0.0" + stack-utils "^1.0.1" + +jest-message-util@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-22.4.3.tgz#cf3d38aafe4befddbfc455e57d65d5239e399eb7" + dependencies: + "@babel/code-frame" "^7.0.0-beta.35" + chalk "^2.0.1" + micromatch "^2.3.11" + slash "^1.0.0" + stack-utils "^1.0.1" + +jest-mock@^22.2.0: + version "22.2.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-22.2.0.tgz#444b3f9488a7473adae09bc8a77294afded397a7" + +jest-mock@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-22.4.3.tgz#f63ba2f07a1511772cdc7979733397df770aabc7" + +jest-preset-angular@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/jest-preset-angular/-/jest-preset-angular-5.2.1.tgz#b93611145bf2ef373c1ffe80d8870af0e91f7b64" + dependencies: + "@types/jest" "^22.1.3" + jest-zone-patch "^0.0.8" + ts-jest "^22.4.1" + +jest-regex-util@^22.1.0: + version "22.1.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-22.1.0.tgz#5daf2fe270074b6da63e5d85f1c9acc866768f53" + +jest-regex-util@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-22.4.3.tgz#a826eb191cdf22502198c5401a1fc04de9cef5af" + +jest-resolve-dependencies@^22.1.0: + version "22.1.0" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-22.1.0.tgz#340e4139fb13315cd43abc054e6c06136be51e31" + dependencies: + jest-regex-util "^22.1.0" + +jest-resolve@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-22.4.2.tgz#25d88aa4147462c9c1c6a1ba16250d3794c24d00" + dependencies: + browser-resolve "^1.11.2" + chalk "^2.0.1" + +jest-resolve@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-22.4.3.tgz#0ce9d438c8438229aa9b916968ec6b05c1abb4ea" + dependencies: + browser-resolve "^1.11.2" + chalk "^2.0.1" + +jest-runner@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-22.4.2.tgz#19390ea9d99f768973e16f95a1efa351c0017e87" + dependencies: + exit "^0.1.2" + jest-config "^22.4.2" + jest-docblock "^22.4.0" + jest-haste-map "^22.4.2" + jest-jasmine2 "^22.4.2" + jest-leak-detector "^22.4.0" + jest-message-util "^22.4.0" + jest-runtime "^22.4.2" + jest-util "^22.4.1" + jest-worker "^22.2.2" + throat "^4.0.0" + +jest-runtime@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-22.4.2.tgz#0de0444f65ce15ee4f2e0055133fc7c17b9168f3" + dependencies: + babel-core "^6.0.0" + babel-jest "^22.4.1" + babel-plugin-istanbul "^4.1.5" + chalk "^2.0.1" + convert-source-map "^1.4.0" + exit "^0.1.2" + graceful-fs "^4.1.11" + jest-config "^22.4.2" + jest-haste-map "^22.4.2" + jest-regex-util "^22.1.0" + jest-resolve "^22.4.2" + jest-util "^22.4.1" + jest-validate "^22.4.2" + json-stable-stringify "^1.0.1" + micromatch "^2.3.11" + realpath-native "^1.0.0" + slash "^1.0.0" + strip-bom "3.0.0" + write-file-atomic "^2.1.0" + yargs "^10.0.3" + +jest-serializer@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-22.4.0.tgz#b5d145b98c4b0d2c20ab686609adbb81fe23b566" + +jest-snapshot@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-22.4.0.tgz#03d3ce63f8fa7352388afc6a3c8b5ccc3a180ed7" + dependencies: + chalk "^2.0.1" + jest-diff "^22.4.0" + jest-matcher-utils "^22.4.0" + mkdirp "^0.5.1" + natural-compare "^1.4.0" + pretty-format "^22.4.0" + +jest-snapshot@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-22.4.3.tgz#b5c9b42846ffb9faccb76b841315ba67887362d2" + dependencies: + chalk "^2.0.1" + jest-diff "^22.4.3" + jest-matcher-utils "^22.4.3" + mkdirp "^0.5.1" + natural-compare "^1.4.0" + pretty-format "^22.4.3" + +jest-sonar-reporter@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jest-sonar-reporter/-/jest-sonar-reporter-1.3.0.tgz#dd05b57a40d19cc8c8b1e5598acf632dbaafbb85" + dependencies: + xml "^1.0.1" + +jest-util@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-22.4.1.tgz#dd17c3bdb067f8e90591563ec0c42bf847dc249f" + dependencies: + callsites "^2.0.0" + chalk "^2.0.1" + graceful-fs "^4.1.11" + is-ci "^1.0.10" + jest-message-util "^22.4.0" + mkdirp "^0.5.1" + source-map "^0.6.0" + +jest-util@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-22.4.3.tgz#c70fec8eec487c37b10b0809dc064a7ecf6aafac" + dependencies: + callsites "^2.0.0" + chalk "^2.0.1" + graceful-fs "^4.1.11" + is-ci "^1.0.10" + jest-message-util "^22.4.3" + mkdirp "^0.5.1" + source-map "^0.6.0" + +jest-validate@^22.4.0, jest-validate@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-22.4.3.tgz#0780954a5a7daaeec8d3c10834b9280865976b30" + dependencies: + chalk "^2.0.1" + jest-config "^22.4.3" + jest-get-type "^22.4.3" + leven "^2.1.0" + pretty-format "^22.4.3" + +jest-validate@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-22.4.2.tgz#e789a4e056173bf97fe797a2df2d52105c57d4f4" + dependencies: + chalk "^2.0.1" + jest-config "^22.4.2" + jest-get-type "^22.1.0" + leven "^2.1.0" + pretty-format "^22.4.0" + +jest-worker@^22.2.2: + version "22.2.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-22.2.2.tgz#c1f5dc39976884b81f68ec50cb8532b2cbab3390" + dependencies: + merge-stream "^1.0.1" + +jest-zone-patch@^0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/jest-zone-patch/-/jest-zone-patch-0.0.8.tgz#90fa3b5b60e95ad3e624dd2c3eb59bb1dcabd371" + +jest@^22.4.2: + version "22.4.2" + resolved "https://registry.yarnpkg.com/jest/-/jest-22.4.2.tgz#34012834a49bf1bdd3bc783850ab44e4499afc20" + dependencies: + import-local "^1.0.0" + jest-cli "^22.4.2" + +js-base64@^2.1.8, js-base64@^2.1.9: + version "2.4.0" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.0.tgz#9e566fee624751a1d720c966cd6226d29d4025aa" + +js-tokens@^3.0.0, js-tokens@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b" + +js-yaml@^3.4.3, js-yaml@^3.7.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc" + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@^3.9.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.11.0.tgz#597c1a8bd57152f26d622ce4117851a51f5ebaef" + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@~3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" + dependencies: + argparse "^1.0.7" + esprima "^2.6.0" + +jsan@^3.1.3, jsan@^3.1.5, jsan@^3.1.9: + version "3.1.9" + resolved "https://registry.yarnpkg.com/jsan/-/jsan-3.1.9.tgz#2705676c1058f0a7d9ac266ad036a5769cfa7c96" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + +jsdom@^11.5.1: + version "11.6.2" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.6.2.tgz#25d1ef332d48adf77fc5221fe2619967923f16bb" + dependencies: + abab "^1.0.4" + acorn "^5.3.0" + acorn-globals "^4.1.0" + array-equal "^1.0.0" + browser-process-hrtime "^0.1.2" + content-type-parser "^1.0.2" + cssom ">= 0.3.2 < 0.4.0" + cssstyle ">= 0.2.37 < 0.3.0" + domexception "^1.0.0" + escodegen "^1.9.0" + html-encoding-sniffer "^1.0.2" + left-pad "^1.2.0" + nwmatcher "^1.4.3" + parse5 "4.0.0" + pn "^1.1.0" + request "^2.83.0" + request-promise-native "^1.0.5" + sax "^1.2.4" + symbol-tree "^3.2.2" + tough-cookie "^2.3.3" + w3c-hr-time "^1.0.1" + webidl-conversions "^4.0.2" + whatwg-encoding "^1.0.3" + whatwg-url "^6.4.0" + ws "^4.0.0" + xml-name-validator "^3.0.0" + +jsesc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + +json-loader@^0.5.4, json-loader@^0.5.7: + version "0.5.7" + resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d" + +json-parse-better-errors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz#50183cd1b2d25275de069e9e71b467ac9eab973a" + +json-schema-traverse@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340" + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + +json-stable-stringify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" + dependencies: + jsonify "~0.0.0" + +json-stable-stringify@~0.0.0: + version "0.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-0.0.1.tgz#611c23e814db375527df851193db59dd2af27f45" + dependencies: + jsonify "~0.0.0" + +json-stringify-safe@5.0.x, json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + +json3@3.3.2, json3@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" + +json5@^0.5.0, json5@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + +jsonfile@^2.1.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonfile@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-3.0.1.tgz#a5ecc6f65f53f662c4415c7675a0331d0992ec66" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + +jsonparse@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + +jsonpointer@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +karma-chrome-launcher@~2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz#cf1b9d07136cc18fe239327d24654c3dbc368acf" + dependencies: + fs-access "^1.0.0" + which "^1.2.1" + +karma-cli@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/karma-cli/-/karma-cli-1.0.1.tgz#ae6c3c58a313a1d00b45164c455b9b86ce17f960" + dependencies: + resolve "^1.1.6" + +karma-coverage-istanbul-reporter@^1.2.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-1.3.3.tgz#daf26051d5a0daa5838a4ce81aa4a41724bdf36b" + dependencies: + istanbul-api "^1.1.14" + minimatch "^3.0.4" + +karma-jasmine-html-reporter@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz#48a8e5ef18807617ee2b5e33c1194c35b439524c" + dependencies: + karma-jasmine "^1.0.2" + +karma-jasmine@^1.0.2, karma-jasmine@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/karma-jasmine/-/karma-jasmine-1.1.1.tgz#6fe840e75a11600c9d91e84b33c458e1c46a3529" + +karma-source-map-support@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/karma-source-map-support/-/karma-source-map-support-1.2.0.tgz#1bf81e7bb4b089627ab352ec4179e117c406a540" + dependencies: + source-map-support "^0.4.1" + +karma@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/karma/-/karma-2.0.0.tgz#a02698dd7f0f05ff5eb66ab8f65582490b512e58" + dependencies: + bluebird "^3.3.0" + body-parser "^1.16.1" + browserify "^14.5.0" + chokidar "^1.4.1" + colors "^1.1.0" + combine-lists "^1.0.0" + connect "^3.6.0" + core-js "^2.2.0" + di "^0.0.1" + dom-serialize "^2.2.0" + expand-braces "^0.1.1" + glob "^7.1.1" + graceful-fs "^4.1.2" + http-proxy "^1.13.0" + isbinaryfile "^3.0.0" + lodash "^4.17.4" + log4js "^2.3.9" + mime "^1.3.4" + minimatch "^3.0.2" + optimist "^0.6.1" + qjobs "^1.1.4" + range-parser "^1.2.0" + rimraf "^2.6.0" + safe-buffer "^5.0.1" + socket.io "2.0.4" + source-map "^0.6.1" + tmp "0.0.33" + useragent "^2.1.12" + +keycode@^2.1.9: + version "2.1.9" + resolved "https://registry.yarnpkg.com/keycode/-/keycode-2.1.9.tgz#964a23c54e4889405b4861a5c9f0480d45141dfa" + +killable@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.0.tgz#da8b84bd47de5395878f95d64d02f2449fe05e6b" + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + +kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.2.tgz#01146b36a6218e64e58f3a8d66de5d7fc6f6d051" + +klaw@^1.0.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/klaw/-/klaw-1.3.1.tgz#4088433b46b3b1ba259d78785d8e96f73ba02439" + optionalDependencies: + graceful-fs "^4.1.9" + +labeled-stream-splicer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/labeled-stream-splicer/-/labeled-stream-splicer-2.0.0.tgz#a52e1d138024c00b86b1c0c91f677918b8ae0a59" + dependencies: + inherits "^2.0.1" + isarray "~0.0.1" + stream-splicer "^2.0.0" + +lazy-ass@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/lazy-ass/-/lazy-ass-1.6.0.tgz#7999655e8646c17f089fdd187d150d3324d54513" + +lazy-cache@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" + +lazy-cache@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-2.0.2.tgz#b9190a4f913354694840859f8a8f7084d8822264" + dependencies: + set-getter "^0.1.0" + +lcid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + dependencies: + invert-kv "^1.0.0" + +left-pad@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.2.0.tgz#d30a73c6b8201d8f7d8e7956ba9616087a68e0ee" + +less-loader@^4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/less-loader/-/less-loader-4.0.5.tgz#ae155a7406cac6acd293d785587fcff0f478c4dd" + dependencies: + clone "^2.1.1" + loader-utils "^1.1.0" + pify "^2.3.0" + +less@^2.7.2: + version "2.7.3" + resolved "https://registry.yarnpkg.com/less/-/less-2.7.3.tgz#cc1260f51c900a9ec0d91fb6998139e02507b63b" + optionalDependencies: + errno "^0.1.1" + graceful-fs "^4.1.2" + image-size "~0.5.0" + mime "^1.2.11" + mkdirp "^0.5.0" + promise "^7.1.1" + request "2.81.0" + source-map "^0.5.3" + +leven@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" + +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + +lexical-scope@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/lexical-scope/-/lexical-scope-1.2.0.tgz#fcea5edc704a4b3a8796cdca419c3a0afaf22df4" + dependencies: + astw "^2.0.0" + +libbase64@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/libbase64/-/libbase64-0.1.0.tgz#62351a839563ac5ff5bd26f12f60e9830bb751e6" + +libmime@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/libmime/-/libmime-3.0.0.tgz#51a1a9e7448ecbd32cda54421675bb21bc093da6" + dependencies: + iconv-lite "0.4.15" + libbase64 "0.1.0" + libqp "1.1.0" + +libqp@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/libqp/-/libqp-1.1.0.tgz#f5e6e06ad74b794fb5b5b66988bf728ef1dedbe8" + +license-webpack-plugin@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-1.1.1.tgz#76b2cedccc78f139fd7877e576f756cfc141b8c2" + dependencies: + ejs "^2.5.7" + +linked-list@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/linked-list/-/linked-list-0.1.0.tgz#798b0ff97d1b92a4fd08480f55aea4e9d49d37bf" + +lint-staged@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-7.0.0.tgz#57926c63201e7bd38ca0576d74391efa699b4a9d" + dependencies: + app-root-path "^2.0.1" + chalk "^2.3.1" + commander "^2.14.1" + cosmiconfig "^4.0.0" + debug "^3.1.0" + dedent "^0.7.0" + execa "^0.9.0" + find-parent-dir "^0.3.0" + is-glob "^4.0.0" + jest-validate "^22.4.0" + listr "^0.13.0" + lodash "^4.17.5" + log-symbols "^2.2.0" + micromatch "^3.1.8" + npm-which "^3.0.1" + p-map "^1.1.1" + path-is-inside "^1.0.2" + pify "^3.0.0" + please-upgrade-node "^3.0.1" + staged-git-files "1.1.0" + stringify-object "^3.2.2" + +listr-silent-renderer@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz#924b5a3757153770bf1a8e3fbf74b8bbf3f9242e" + +listr-update-renderer@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz#ca80e1779b4e70266807e8eed1ad6abe398550f9" + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + elegant-spinner "^1.0.1" + figures "^1.7.0" + indent-string "^3.0.0" + log-symbols "^1.0.2" + log-update "^1.0.2" + strip-ansi "^3.0.1" + +listr-update-renderer@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.4.0.tgz#344d980da2ca2e8b145ba305908f32ae3f4cc8a7" + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + elegant-spinner "^1.0.1" + figures "^1.7.0" + indent-string "^3.0.0" + log-symbols "^1.0.2" + log-update "^1.0.2" + strip-ansi "^3.0.1" + +listr-verbose-renderer@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz#8206f4cf6d52ddc5827e5fd14989e0e965933a35" + dependencies: + chalk "^1.1.3" + cli-cursor "^1.0.2" + date-fns "^1.27.2" + figures "^1.7.0" + +listr@0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/listr/-/listr-0.12.0.tgz#6bce2c0f5603fa49580ea17cd6a00cc0e5fa451a" + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + figures "^1.7.0" + indent-string "^2.1.0" + is-promise "^2.1.0" + is-stream "^1.1.0" + listr-silent-renderer "^1.1.1" + listr-update-renderer "^0.2.0" + listr-verbose-renderer "^0.4.0" + log-symbols "^1.0.2" + log-update "^1.0.2" + ora "^0.2.3" + p-map "^1.1.1" + rxjs "^5.0.0-beta.11" + stream-to-observable "^0.1.0" + strip-ansi "^3.0.1" + +listr@^0.13.0: + version "0.13.0" + resolved "https://registry.yarnpkg.com/listr/-/listr-0.13.0.tgz#20bb0ba30bae660ee84cc0503df4be3d5623887d" + dependencies: + chalk "^1.1.3" + cli-truncate "^0.2.1" + figures "^1.7.0" + indent-string "^2.1.0" + is-observable "^0.2.0" + is-promise "^2.1.0" + is-stream "^1.1.0" + listr-silent-renderer "^1.1.1" + listr-update-renderer "^0.4.0" + listr-verbose-renderer "^0.4.0" + log-symbols "^1.0.2" + log-update "^1.0.2" + ora "^0.2.3" + p-map "^1.1.1" + rxjs "^5.4.2" + stream-to-observable "^0.2.0" + strip-ansi "^3.0.1" + +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + +load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + +loader-runner@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" + +loader-utils@1.1.0, loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + +loader-utils@^0.2.15, loader-utils@^0.2.16: + version "0.2.17" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + object-assign "^4.0.1" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +lodash-es@^4.2.1: + version "4.17.5" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.5.tgz#9fc6e737b1c4d151d8f9cae2247305d552ce748f" + +lodash._baseassign@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" + dependencies: + lodash._basecopy "^3.0.0" + lodash.keys "^3.0.0" + +lodash._basecopy@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" + +lodash._basecreate@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz#1bc661614daa7fc311b7d03bf16806a0213cf821" + +lodash._getnative@^3.0.0: + version "3.9.1" + resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" + +lodash._isiterateecall@^3.0.0: + version "3.0.9" + resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" + +lodash.assign@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" + +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + +lodash.clonedeep@4.5.0, lodash.clonedeep@^4.3.2, lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + +lodash.create@3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7" + dependencies: + lodash._baseassign "^3.0.0" + lodash._basecreate "^3.0.0" + lodash._isiterateecall "^3.0.0" + +lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + +lodash.isarguments@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" + +lodash.isarray@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" + +lodash.isfunction@^3.0.8: + version "3.0.9" + resolved "https://registry.yarnpkg.com/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz#06de25df4db327ac931981d1bdb067e5af68d051" + +lodash.keys@^3.0.0, lodash.keys@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" + dependencies: + lodash._getnative "^3.0.0" + lodash.isarguments "^3.0.0" + lodash.isarray "^3.0.0" + +lodash.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + +lodash.memoize@~3.0.3: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-3.0.4.tgz#2dcbd2c287cbc0a55cc42328bd0c736150d53e3f" + +lodash.mergewith@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55" + +lodash.once@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + +lodash.pick@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" + +lodash.sortby@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" + +lodash.tail@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" + +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + +lodash@4.17.4, lodash@^4.0.0, lodash@^4.11.1, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.3.0, lodash@^4.5.0, lodash@~4.17.4: + version "4.17.4" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" + +lodash@^3.10.1, lodash@^3.5.0: + version "3.10.1" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6" + +lodash@^4.0.1, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.17.0, lodash@^4.17.5, lodash@^4.2.1: + version "4.17.5" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" + +log-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" + dependencies: + chalk "^1.0.0" + +log-symbols@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" + dependencies: + chalk "^2.0.1" + +log-update@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-1.0.2.tgz#19929f64c4093d2d2e7075a1dad8af59c296b8d1" + dependencies: + ansi-escapes "^1.0.0" + cli-cursor "^1.0.2" + +log4js@^2.3.9: + version "2.4.1" + resolved "https://registry.yarnpkg.com/log4js/-/log4js-2.4.1.tgz#b0c4e88133e0e3056afdc6f91f7f377576158778" + dependencies: + circular-json "^0.4.0" + date-format "^1.2.0" + debug "^3.1.0" + semver "^5.3.0" + streamroller "^0.7.0" + optionalDependencies: + axios "^0.15.3" + hipchat-notifier "^1.1.0" + loggly "^1.1.0" + mailgun-js "^0.7.0" + nodemailer "^2.5.0" + redis "^2.7.1" + slack-node "~0.2.0" + +loggly@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/loggly/-/loggly-1.1.1.tgz#0a0fc1d3fa3a5ec44fdc7b897beba2a4695cebee" + dependencies: + json-stringify-safe "5.0.x" + request "2.75.x" + timespan "2.3.x" + +loglevel@^1.4.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/loglevel/-/loglevel-1.6.1.tgz#e0fc95133b6ef276cdc8887cdaf24aa6f156f8fa" + +longest@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" + +loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" + dependencies: + js-tokens "^3.0.0" + +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lower-case@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" + +lru-cache@2.2.x: + version "2.2.4" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.2.4.tgz#6c658619becf14031d0d0b594b16042ce4dc063d" + +lru-cache@^4.0.1, lru-cache@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +lru-cache@~2.6.5: + version "2.6.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.6.5.tgz#e56d6354148ede8d7707b58d143220fd08df0fd5" + +macaddress@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12" + +magic-string@^0.22.3: + version "0.22.4" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.22.4.tgz#31039b4e40366395618c1d6cf8193c53917475ff" + dependencies: + vlq "^0.2.1" + +mailcomposer@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/mailcomposer/-/mailcomposer-4.0.1.tgz#0e1c44b2a07cf740ee17dc149ba009f19cadfeb4" + dependencies: + buildmail "4.0.1" + libmime "3.0.0" + +mailgun-js@^0.7.0: + version "0.7.15" + resolved "https://registry.yarnpkg.com/mailgun-js/-/mailgun-js-0.7.15.tgz#ee366a20dac64c3c15c03d6c1b3e0ed795252abb" + dependencies: + async "~2.1.2" + debug "~2.2.0" + form-data "~2.1.1" + inflection "~1.10.0" + is-stream "^1.1.0" + path-proxy "~1.0.0" + proxy-agent "~2.0.0" + q "~1.4.0" + tsscmp "~1.0.0" + +make-dir@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.1.0.tgz#19b4369fe48c116f53c2af95ad102c0e39e85d51" + dependencies: + pify "^3.0.0" + +make-error@^1.1.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.2.tgz#8762ffad2444dd8ff1f7c819629fa28e24fea1c4" + +make-error@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.4.tgz#19978ed575f9e9545d2ff8c13e33b5d18a67d535" + +makeerror@1.0.x: + version "1.0.11" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c" + dependencies: + tmpl "1.0.x" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + dependencies: + object-visit "^1.0.0" + +markdown-loader@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/markdown-loader/-/markdown-loader-2.0.2.tgz#1cdcf11307658cd611046d7db34c2fe80542af7c" + dependencies: + loader-utils "^1.1.0" + marked "^0.3.9" + +marked@^0.3.16, marked@^0.3.9: + version "0.3.17" + resolved "https://registry.yarnpkg.com/marked/-/marked-0.3.17.tgz#607f06668b3c6b1246b28f13da76116ac1aa2d2b" + +material-colors@^1.2.1: + version "1.2.5" + resolved "https://registry.yarnpkg.com/material-colors/-/material-colors-1.2.5.tgz#5292593e6754cb1bcc2b98030e4e0d6a3afc9ea1" + +material-design-icons@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/material-design-icons/-/material-design-icons-3.0.1.tgz#9a71c48747218ebca51e51a66da682038cdcb7bf" + +math-expression-evaluator@^1.2.14: + version "1.2.17" + resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz#de819fdbcd84dccd8fae59c6aeb79615b9d266ac" + +md5.js@^1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/md5.js/-/md5.js-1.3.4.tgz#e9bdbde94a20a5ac18b04340fc5764d5b09d901d" + dependencies: + hash-base "^3.0.0" + inherits "^2.0.1" + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + +mem@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" + dependencies: + mimic-fn "^1.0.0" + +memory-fs@^0.4.0, memory-fs@^0.4.1, memory-fs@~0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +meow@^3.1.0, meow@^3.3.0, meow@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + +merge-stream@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1" + dependencies: + readable-stream "^2.0.1" + +merge@^1.1.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da" + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + +micromatch@^2.1.5, micromatch@^2.3.11: + version "2.3.11" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" + dependencies: + arr-diff "^2.0.0" + array-unique "^0.2.1" + braces "^1.8.2" + expand-brackets "^0.1.4" + extglob "^0.3.1" + filename-regex "^2.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.1" + kind-of "^3.0.2" + normalize-path "^2.0.1" + object.omit "^2.0.0" + parse-glob "^3.0.4" + regex-cache "^0.4.2" + +micromatch@^3.1.4, micromatch@^3.1.8: + version "3.1.9" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.9.tgz#15dc93175ae39e52e93087847096effc73efcf89" + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +miller-rabin@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.1.tgz#f080351c865b0dc562a8462966daa53543c78a4d" + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +"mime-db@>= 1.30.0 < 2": + version "1.32.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.32.0.tgz#485b3848b01a3cda5f968b4882c0771e58e09414" + +mime-db@~1.30.0: + version "1.30.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" + +mime-db@~1.33.0: + version "1.33.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" + +mime-types@^2.1.11, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.17: + version "2.1.17" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" + dependencies: + mime-db "~1.30.0" + +mime-types@^2.1.12, mime-types@~2.1.7: + version "2.1.18" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" + dependencies: + mime-db "~1.33.0" + +mime@1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.4.1.tgz#121f9ebc49e3766f311a76e1fa1c8003c4b03aa6" + +mime@^1.2.11, mime@^1.3.4, mime@^1.4.1, mime@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + +mimic-fn@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" + +min-document@^2.19.0: + version "2.19.0" + resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" + dependencies: + dom-walk "^0.1.0" + +minimalistic-assert@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" + +minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + +"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + dependencies: + brace-expansion "^1.1.7" + +minimatch@3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" + dependencies: + brace-expansion "^1.0.0" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + +minimist@1.2.0, minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + +minimist@~0.0.1: + version "0.0.10" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" + +mississippi@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-1.3.0.tgz#d201583eb12327e3c5c1642a404a9cacf94e34f5" + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^1.0.0" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + +mississippi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" + dependencies: + concat-stream "^1.5.0" + duplexify "^3.4.2" + end-of-stream "^1.1.0" + flush-write-stream "^1.0.0" + from2 "^2.1.0" + parallel-transform "^1.1.0" + pump "^2.0.1" + pumpify "^1.3.3" + stream-each "^1.1.0" + through2 "^2.0.0" + +mixin-deep@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.1.tgz#a49e7268dce1a0d9698e45326c5626df3543d0fe" + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mixin-object@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" + dependencies: + for-in "^0.1.3" + is-extendable "^0.1.1" + +mkdirp@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.0.tgz#1d73076a6df986cd9344e15e71fcc05a4c9abf12" + dependencies: + minimist "0.0.8" + +mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" + dependencies: + minimist "0.0.8" + +mobx-angular@>=1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/mobx-angular/-/mobx-angular-2.1.1.tgz#d5e36539acb200186dd5a1170806b4776b9a8b88" + +mobx-angular@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/mobx-angular/-/mobx-angular-3.0.1.tgz#881379acea563c0767550d1f7801ab3434449bb1" + +mobx-devtools-mst@^0.9.14: + version "0.9.14" + resolved "https://registry.yarnpkg.com/mobx-devtools-mst/-/mobx-devtools-mst-0.9.14.tgz#e203ebf686331f9ff016336599b81b1796d10339" + +mobx-remotedev@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/mobx-remotedev/-/mobx-remotedev-0.2.8.tgz#6146abcd65a9ce41f09e872ed038fc3892f99c48" + dependencies: + jsan "^3.1.9" + remotedev "^0.2.7" + remotedev-utils "^0.1.4" + +mobx@>=3: + version "3.5.1" + resolved "https://registry.yarnpkg.com/mobx/-/mobx-3.5.1.tgz#8e682ec535cf44e04005b9e37e2df66acc975a42" + +mobx@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/mobx/-/mobx-4.1.0.tgz#e4a9679cdafbe215b20e32ef93a7031845b3f1af" + +mocha-rp-reporter@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/mocha-rp-reporter/-/mocha-rp-reporter-1.0.12.tgz#408d2660d3f3e58f9762f6005e92bd1f9839b30e" + dependencies: + mocha "^3.2.0" + sync-rest-client "^1.0.3" + +mocha@^3.2.0: + version "3.5.3" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.5.3.tgz#1e0480fe36d2da5858d1eb6acc38418b26eaa20d" + dependencies: + browser-stdout "1.3.0" + commander "2.9.0" + debug "2.6.8" + diff "3.2.0" + escape-string-regexp "1.0.5" + glob "7.1.1" + growl "1.9.2" + he "1.1.1" + json3 "3.3.2" + lodash.create "3.1.1" + mkdirp "0.5.1" + supports-color "3.1.2" + +mocha@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-5.0.0.tgz#cccac988b0bc5477119cba0e43de7af6d6ad8f4e" + dependencies: + browser-stdout "1.3.0" + commander "2.11.0" + debug "3.1.0" + diff "3.3.1" + escape-string-regexp "1.0.5" + glob "7.1.2" + growl "1.10.3" + he "1.1.1" + mkdirp "0.5.1" + supports-color "4.4.0" + +mochawesome-report-generator@^3.0.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/mochawesome-report-generator/-/mochawesome-report-generator-3.1.1.tgz#4008aef2cd57c2af9ff2905ed6480d5804d86965" + dependencies: + chalk "^2.3.0" + dateformat "^3.0.2" + fs-extra "^4.0.2" + fsu "^1.0.2" + lodash.isfunction "^3.0.8" + opener "^1.4.2" + prop-types "^15.5.8" + react "^16.0.0" + react-dom "^16.0.0" + tcomb "^3.2.17" + tcomb-validation "^3.3.0" + validator "^9.1.2" + yargs "^10.0.3" + +mochawesome@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/mochawesome/-/mochawesome-3.0.2.tgz#6884a8bb85c1d5033fe1d2e278ee309f433e750d" + dependencies: + babel-runtime "^6.20.0" + chalk "^2.3.0" + diff "^3.4.0" + json-stringify-safe "^5.0.1" + lodash "^4.17.3" + mochawesome-report-generator "^3.0.1" + strip-ansi "^4.0.0" + uuid "^3.0.1" + +module-deps@^4.0.8: + version "4.1.1" + resolved "https://registry.yarnpkg.com/module-deps/-/module-deps-4.1.1.tgz#23215833f1da13fd606ccb8087b44852dcb821fd" + dependencies: + JSONStream "^1.0.3" + browser-resolve "^1.7.0" + cached-path-relative "^1.0.0" + concat-stream "~1.5.0" + defined "^1.0.0" + detective "^4.0.0" + duplexer2 "^0.1.2" + inherits "^2.0.1" + parents "^1.0.0" + readable-stream "^2.0.2" + resolve "^1.1.3" + stream-combiner2 "^1.1.1" + subarg "^1.0.0" + through2 "^2.0.0" + xtend "^4.0.0" + +moment@^2.20.1: + version "2.21.0" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.21.0.tgz#2a114b51d2a6ec9e6d83cf803f838a878d8a023a" + +move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + dependencies: + aproba "^1.1.1" + copy-concurrently "^1.0.0" + fs-write-stream-atomic "^1.0.8" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.3" + +mri@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mri/-/mri-1.1.0.tgz#5c0a3f29c8ccffbbb1ec941dcec09d71fa32f36a" + +ms@0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + +multicast-dns-service-types@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz#899f11d9686e5e05cb91b35d5f0e63b773cfc901" + +multicast-dns@^6.0.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-6.2.1.tgz#c5035defa9219d30640558a49298067352098060" + dependencies: + dns-packet "^1.0.1" + thunky "^0.1.0" + +mute-stream@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" + +nan@^2.0.7: + version "2.9.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.9.2.tgz#f564d75f5f8f36a6d9456cca7a6c4fe488ab7866" + +nan@^2.3.0, nan@^2.3.2: + version "2.8.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" + +nanomatch@^1.2.9: + version "1.2.9" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.9.tgz#879f7150cb2dab7a471259066c104eee6e0fa7c2" + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-odd "^2.0.0" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + +ncname@1.0.x: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ncname/-/ncname-1.0.0.tgz#5b57ad18b1ca092864ef62b0b1ed8194f383b71c" + dependencies: + xml-char-classes "^1.0.0" + +negotiator@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" + +neo-async@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.5.0.tgz#76b1c823130cca26acfbaccc8fbaf0a2fa33b18f" + +netmask@~1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/netmask/-/netmask-1.0.6.tgz#20297e89d86f6f6400f250d9f4f6b4c1945fcd35" + +ngx-toastr@^8.2.1: + version "8.2.1" + resolved "https://registry.yarnpkg.com/ngx-toastr/-/ngx-toastr-8.2.1.tgz#86cffec666a9dadde5f8a37f2a8fe2ab527b3dde" + dependencies: + tslib "^1.7.1" + +no-case@^2.2.0: + version "2.3.2" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.2.tgz#60b813396be39b3f1288a4c1ed5d1e7d28b464ac" + dependencies: + lower-case "^1.1.1" + +node-dir@^0.1.10: + version "0.1.17" + resolved "https://registry.yarnpkg.com/node-dir/-/node-dir-0.1.17.tgz#5f5665d93351335caabef8f1c554516cf5f1e4e5" + dependencies: + minimatch "^3.0.2" + +node-fetch@^1.0.1: + version "1.7.3" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef" + dependencies: + encoding "^0.1.11" + is-stream "^1.0.1" + +node-forge@0.6.33: + version "0.6.33" + resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.6.33.tgz#463811879f573d45155ad6a9f43dc296e8e85ebc" + +node-gyp@^3.3.1: + version "3.6.2" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.2.tgz#9bfbe54562286284838e750eac05295853fa1c60" + dependencies: + fstream "^1.0.0" + glob "^7.0.3" + graceful-fs "^4.1.2" + minimatch "^3.0.2" + mkdirp "^0.5.0" + nopt "2 || 3" + npmlog "0 || 1 || 2 || 3 || 4" + osenv "0" + request "2" + rimraf "2" + semver "~5.3.0" + tar "^2.0.0" + which "1" + +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + +node-libs-browser@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.1.0.tgz#5f94263d404f6e44767d726901fff05478d600df" + dependencies: + assert "^1.1.1" + browserify-zlib "^0.2.0" + buffer "^4.3.0" + console-browserify "^1.1.0" + constants-browserify "^1.0.0" + crypto-browserify "^3.11.0" + domain-browser "^1.1.1" + events "^1.0.0" + https-browserify "^1.0.0" + os-browserify "^0.3.0" + path-browserify "0.0.0" + process "^0.11.10" + punycode "^1.2.4" + querystring-es3 "^0.2.0" + readable-stream "^2.3.3" + stream-browserify "^2.0.1" + stream-http "^2.7.2" + string_decoder "^1.0.0" + timers-browserify "^2.0.4" + tty-browserify "0.0.0" + url "^0.11.0" + util "^0.10.3" + vm-browserify "0.0.4" + +node-modules-path@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/node-modules-path/-/node-modules-path-1.0.1.tgz#40096b08ce7ad0ea14680863af449c7c75a5d1c8" + +node-notifier@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.2.1.tgz#fa313dd08f5517db0e2502e5758d664ac69f9dea" + dependencies: + growly "^1.3.0" + semver "^5.4.1" + shellwords "^0.1.1" + which "^1.3.0" + +node-pre-gyp@^0.6.39: + version "0.6.39" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" + dependencies: + detect-libc "^1.0.2" + hawk "3.1.3" + mkdirp "^0.5.1" + nopt "^4.0.1" + npmlog "^4.0.2" + rc "^1.1.7" + request "2.81.0" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^2.2.1" + tar-pack "^3.4.0" + +node-sass@^4.7.2: + version "4.7.2" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.7.2.tgz#9366778ba1469eb01438a9e8592f4262bcb6794e" + dependencies: + async-foreach "^0.1.3" + chalk "^1.1.1" + cross-spawn "^3.0.0" + gaze "^1.0.0" + get-stdin "^4.0.1" + glob "^7.0.3" + in-publish "^2.0.0" + lodash.assign "^4.2.0" + lodash.clonedeep "^4.3.2" + lodash.mergewith "^4.6.0" + meow "^3.7.0" + mkdirp "^0.5.1" + nan "^2.3.2" + node-gyp "^3.3.1" + npmlog "^4.0.0" + request "~2.79.0" + sass-graph "^2.2.4" + stdout-stream "^1.4.0" + "true-case-path" "^1.0.2" + +node-uuid@~1.4.7: + version "1.4.8" + resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907" + +nodemailer-direct-transport@3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/nodemailer-direct-transport/-/nodemailer-direct-transport-3.3.2.tgz#e96fafb90358560947e569017d97e60738a50a86" + dependencies: + nodemailer-shared "1.1.0" + smtp-connection "2.12.0" + +nodemailer-fetch@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/nodemailer-fetch/-/nodemailer-fetch-1.6.0.tgz#79c4908a1c0f5f375b73fe888da9828f6dc963a4" + +nodemailer-shared@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/nodemailer-shared/-/nodemailer-shared-1.1.0.tgz#cf5994e2fd268d00f5cf0fa767a08169edb07ec0" + dependencies: + nodemailer-fetch "1.6.0" + +nodemailer-smtp-pool@2.8.2: + version "2.8.2" + resolved "https://registry.yarnpkg.com/nodemailer-smtp-pool/-/nodemailer-smtp-pool-2.8.2.tgz#2eb94d6cf85780b1b4725ce853b9cbd5e8da8c72" + dependencies: + nodemailer-shared "1.1.0" + nodemailer-wellknown "0.1.10" + smtp-connection "2.12.0" + +nodemailer-smtp-transport@2.7.2: + version "2.7.2" + resolved "https://registry.yarnpkg.com/nodemailer-smtp-transport/-/nodemailer-smtp-transport-2.7.2.tgz#03d71c76314f14ac7dbc7bf033a6a6d16d67fb77" + dependencies: + nodemailer-shared "1.1.0" + nodemailer-wellknown "0.1.10" + smtp-connection "2.12.0" + +nodemailer-wellknown@0.1.10: + version "0.1.10" + resolved "https://registry.yarnpkg.com/nodemailer-wellknown/-/nodemailer-wellknown-0.1.10.tgz#586db8101db30cb4438eb546737a41aad0cf13d5" + +nodemailer@^2.5.0: + version "2.7.2" + resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-2.7.2.tgz#f242e649aeeae39b6c7ed740ef7b061c404d30f9" + dependencies: + libmime "3.0.0" + mailcomposer "4.0.1" + nodemailer-direct-transport "3.3.2" + nodemailer-shared "1.1.0" + nodemailer-smtp-pool "2.8.2" + nodemailer-smtp-transport "2.7.2" + socks "1.1.9" + +"nopt@2 || 3": + version "3.0.6" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" + dependencies: + abbrev "1" + +nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + dependencies: + abbrev "1" + osenv "^0.1.4" + +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: + version "2.4.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.4.0.tgz#12f95a307d58352075a04907b84ac8be98ac012f" + dependencies: + hosted-git-info "^2.1.4" + is-builtin-module "^1.0.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-1.0.0.tgz#32d0e472f91ff345701c15a8311018d3b0a90379" + +normalize-path@^2.0.0, normalize-path@^2.0.1, normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + +normalize-url@^1.4.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" + dependencies: + object-assign "^4.0.1" + prepend-http "^1.0.0" + query-string "^4.1.0" + sort-keys "^1.0.0" + +npm-path@^2.0.2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/npm-path/-/npm-path-2.0.4.tgz#c641347a5ff9d6a09e4d9bce5580c4f505278e64" + dependencies: + which "^1.2.10" + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + dependencies: + path-key "^2.0.0" + +npm-which@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/npm-which/-/npm-which-3.0.1.tgz#9225f26ec3a285c209cae67c3b11a6b4ab7140aa" + dependencies: + commander "^2.9.0" + npm-path "^2.0.2" + which "^1.2.10" + +"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2, npmlog@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +nth-check@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" + dependencies: + boolbase "~1.0.0" + +nugget@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/nugget/-/nugget-2.0.1.tgz#201095a487e1ad36081b3432fa3cada4f8d071b0" + dependencies: + debug "^2.1.3" + minimist "^1.1.0" + pretty-bytes "^1.0.2" + progress-stream "^1.1.0" + request "^2.45.0" + single-line-log "^1.1.2" + throttleit "0.0.2" + +null-check@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd" + +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + +nwmatcher@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.3.tgz#64348e3b3d80f035b40ac11563d278f8b72db89c" + +oauth-sign@~0.8.1, oauth-sign@~0.8.2: + version "0.8.2" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" + +object-assign@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" + +object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + +object-component@0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/object-component/-/object-component-0.0.3.tgz#f0c69aa50efc95b866c186f400a33769cb2f1291" + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-keys@^1.0.8: + version "1.0.11" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" + +object-keys@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + dependencies: + isobject "^3.0.0" + +object.entries@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.6.1" + function-bind "^1.1.0" + has "^1.0.1" + +object.getownpropertydescriptors@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.1" + +object.omit@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" + dependencies: + for-own "^0.1.4" + is-extendable "^0.1.1" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + dependencies: + isobject "^3.0.1" + +object.values@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.6.1" + function-bind "^1.1.0" + has "^1.0.1" + +obuf@^1.0.0, obuf@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e" + +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + dependencies: + ee-first "1.1.1" + +on-headers@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7" + +once@^1.3.0, once@^1.3.1, once@^1.3.3, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +onetime@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" + +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + dependencies: + mimic-fn "^1.0.0" + +opener@^1.4.2: + version "1.4.3" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.4.3.tgz#5c6da2c5d7e5831e8ffa3964950f8d6674ac90b8" + +opn@5.2.0, opn@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/opn/-/opn-5.2.0.tgz#71fdf934d6827d676cecbea1531f95d354641225" + dependencies: + is-wsl "^1.1.0" + +opn@~5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/opn/-/opn-5.1.0.tgz#72ce2306a17dbea58ff1041853352b4a8fc77519" + dependencies: + is-wsl "^1.1.0" + +optimist@^0.6.1, optimist@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" + dependencies: + minimist "~0.0.1" + wordwrap "~0.0.2" + +optionator@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.4" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + wordwrap "~1.0.0" + +options@>=0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" + +ora@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/ora/-/ora-0.2.3.tgz#37527d220adcd53c39b73571d754156d5db657a4" + dependencies: + chalk "^1.1.1" + cli-cursor "^1.0.2" + cli-spinners "^0.1.2" + object-assign "^4.0.1" + +original@>=0.0.5: + version "1.0.0" + resolved "https://registry.yarnpkg.com/original/-/original-1.0.0.tgz#9147f93fa1696d04be61e01bd50baeaca656bd3b" + dependencies: + url-parse "1.0.x" + +os-browserify@^0.3.0, os-browserify@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" + +os-homedir@^1.0.0, os-homedir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + +os-locale@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + dependencies: + lcid "^1.0.0" + +os-locale@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" + dependencies: + execa "^0.7.0" + lcid "^1.0.0" + mem "^1.1.0" + +os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + +osenv@0, osenv@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + +p-limit@^1.0.0, p-limit@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.2.0.tgz#0e92b6bedcb59f022c13d0f1949dc82d15909f1c" + dependencies: + p-try "^1.0.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + dependencies: + p-limit "^1.1.0" + +p-map@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-1.2.0.tgz#e4e94f311eabbc8633a1e79908165fca26241b6b" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + +pac-proxy-agent@1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pac-proxy-agent/-/pac-proxy-agent-1.1.0.tgz#34a385dfdf61d2f0ecace08858c745d3e791fd4d" + dependencies: + agent-base "2" + debug "2" + extend "3" + get-uri "2" + http-proxy-agent "1" + https-proxy-agent "1" + pac-resolver "~2.0.0" + raw-body "2" + socks-proxy-agent "2" + +pac-resolver@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pac-resolver/-/pac-resolver-2.0.0.tgz#99b88d2f193fbdeefc1c9a529c1f3260ab5277cd" + dependencies: + co "~3.0.6" + degenerator "~1.0.2" + ip "1.0.1" + netmask "~1.0.4" + thunkify "~2.1.1" + +pako@~1.0.5: + version "1.0.6" + resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" + +papaparse@^4.3.6: + version "4.3.6" + resolved "https://registry.yarnpkg.com/papaparse/-/papaparse-4.3.6.tgz#9566eda0ecab13afcb740a62381c699f486cb145" + +parallel-transform@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.1.0.tgz#d410f065b05da23081fcd10f28854c29bda33b06" + dependencies: + cyclist "~0.2.2" + inherits "^2.0.3" + readable-stream "^2.1.5" + +param-case@2.1.x: + version "2.1.1" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" + dependencies: + no-case "^2.2.0" + +parents@^1.0.0, parents@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parents/-/parents-1.0.1.tgz#fedd4d2bf193a77745fe71e371d73c3307d9c751" + dependencies: + path-platform "~0.11.15" + +parse-asn1@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" + dependencies: + asn1.js "^4.0.0" + browserify-aes "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.0" + pbkdf2 "^3.0.3" + +parse-glob@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" + dependencies: + glob-base "^0.3.0" + is-dotfile "^1.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.0" + +parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + dependencies: + error-ex "^1.2.0" + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" + +parse5@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" + +parseqs@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.5.tgz#d5208a3738e46766e291ba2ea173684921a8b89d" + dependencies: + better-assert "~1.0.0" + +parseuri@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.5.tgz#80204a50d4dbb779bfdc6ebe2778d90e4bce320a" + dependencies: + better-assert "~1.0.0" + +parseurl@~1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3" + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + +path-browserify@0.0.0, path-browserify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" + +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + +path-exists@^2.0.0, path-exists@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + dependencies: + pinkie-promise "^2.0.0" + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + +path-is-absolute@^1.0.0, path-is-absolute@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + +path-is-inside@^1.0.1, path-is-inside@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + +path-key@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + +path-parse@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" + +path-platform@~0.11.15: + version "0.11.15" + resolved "https://registry.yarnpkg.com/path-platform/-/path-platform-0.11.15.tgz#e864217f74c36850f0852b78dc7bf7d4a5721bf2" + +path-proxy@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/path-proxy/-/path-proxy-1.0.0.tgz#18e8a36859fc9d2f1a53b48dee138543c020de5e" + dependencies: + inflection "~1.3.0" + +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + dependencies: + pify "^2.0.0" + +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + dependencies: + pify "^3.0.0" + +pbkdf2@^3.0.3: + version "3.0.14" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.14.tgz#a35e13c64799b06ce15320f459c230e68e73bade" + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + +performance-now@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + +pify@^2.0.0, pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + +pkg-dir@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-2.0.0.tgz#f6d5d1109e19d63edf428e0bd57e12777615334b" + dependencies: + find-up "^2.1.0" + +please-upgrade-node@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.0.1.tgz#0a681f2c18915e5433a5ca2cd94e0b8206a782db" + +pn@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" + +portfinder@^1.0.9, portfinder@~1.0.12: + version "1.0.13" + resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.13.tgz#bb32ecd87c27104ae6ee44b5a3ccbf0ebb1aede9" + dependencies: + async "^1.5.2" + debug "^2.2.0" + mkdirp "0.5.x" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + +postcss-calc@^5.2.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e" + dependencies: + postcss "^5.0.2" + postcss-message-helpers "^2.0.0" + reduce-css-calc "^1.2.6" + +postcss-colormin@^2.1.8: + version "2.2.2" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b" + dependencies: + colormin "^1.0.5" + postcss "^5.0.13" + postcss-value-parser "^3.2.3" + +postcss-convert-values@^2.3.4: + version "2.6.1" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d" + dependencies: + postcss "^5.0.11" + postcss-value-parser "^3.1.2" + +postcss-discard-comments@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz#befe89fafd5b3dace5ccce51b76b81514be00e3d" + dependencies: + postcss "^5.0.14" + +postcss-discard-duplicates@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz#b9abf27b88ac188158a5eb12abcae20263b91932" + dependencies: + postcss "^5.0.4" + +postcss-discard-empty@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz#d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5" + dependencies: + postcss "^5.0.14" + +postcss-discard-overridden@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz#8b1eaf554f686fb288cd874c55667b0aa3668d58" + dependencies: + postcss "^5.0.16" + +postcss-discard-unused@^2.2.1: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433" + dependencies: + postcss "^5.0.14" + uniqs "^2.0.0" + +postcss-filter-plugins@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz#6d85862534d735ac420e4a85806e1f5d4286d84c" + dependencies: + postcss "^5.0.4" + uniqid "^4.0.0" + +postcss-flexbugs-fixes@^3.2.0, postcss-flexbugs-fixes@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-3.3.0.tgz#e00849b536063749da50a0d410ba5d9ee65e27b8" + dependencies: + postcss "^6.0.1" + +postcss-import@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-11.0.0.tgz#a962e2df82d3bc5a6da6a386841747204f41ef5b" + dependencies: + postcss "^6.0.1" + postcss-value-parser "^3.2.3" + read-cache "^1.0.0" + resolve "^1.1.7" + +postcss-load-config@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a" + dependencies: + cosmiconfig "^2.1.0" + object-assign "^4.1.0" + postcss-load-options "^1.2.0" + postcss-load-plugins "^2.3.0" + +postcss-load-options@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c" + dependencies: + cosmiconfig "^2.1.0" + object-assign "^4.1.0" + +postcss-load-plugins@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92" + dependencies: + cosmiconfig "^2.1.1" + object-assign "^4.1.0" + +postcss-loader@^2.0.10: + version "2.0.10" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.0.10.tgz#090db0540140bd56a7a7f717c41bc29aeef4c674" + dependencies: + loader-utils "^1.1.0" + postcss "^6.0.0" + postcss-load-config "^1.2.0" + schema-utils "^0.3.0" + +postcss-loader@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-2.1.1.tgz#208935af3b1d65e1abb1a870a912dd12e7b36895" + dependencies: + loader-utils "^1.1.0" + postcss "^6.0.0" + postcss-load-config "^1.2.0" + schema-utils "^0.4.0" + +postcss-merge-idents@^2.1.5: + version "2.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270" + dependencies: + has "^1.0.1" + postcss "^5.0.10" + postcss-value-parser "^3.1.1" + +postcss-merge-longhand@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658" + dependencies: + postcss "^5.0.4" + +postcss-merge-rules@^2.0.3: + version "2.1.2" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz#d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721" + dependencies: + browserslist "^1.5.2" + caniuse-api "^1.5.2" + postcss "^5.0.4" + postcss-selector-parser "^2.2.2" + vendors "^1.0.0" + +postcss-message-helpers@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz#a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e" + +postcss-minify-font-values@^1.0.2: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz#4b58edb56641eba7c8474ab3526cafd7bbdecb69" + dependencies: + object-assign "^4.0.1" + postcss "^5.0.4" + postcss-value-parser "^3.0.2" + +postcss-minify-gradients@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz#5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1" + dependencies: + postcss "^5.0.12" + postcss-value-parser "^3.3.0" + +postcss-minify-params@^1.0.4: + version "1.2.2" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz#ad2ce071373b943b3d930a3fa59a358c28d6f1f3" + dependencies: + alphanum-sort "^1.0.1" + postcss "^5.0.2" + postcss-value-parser "^3.0.2" + uniqs "^2.0.0" + +postcss-minify-selectors@^2.0.4: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz#b2c6a98c0072cf91b932d1a496508114311735bf" + dependencies: + alphanum-sort "^1.0.2" + has "^1.0.1" + postcss "^5.0.14" + postcss-selector-parser "^2.0.0" + +postcss-modules-extract-imports@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz#66140ecece38ef06bf0d3e355d69bf59d141ea85" + dependencies: + postcss "^6.0.1" + +postcss-modules-local-by-default@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + +postcss-modules-scope@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + +postcss-modules-values@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" + dependencies: + icss-replace-symbols "^1.1.0" + postcss "^6.0.1" + +postcss-normalize-charset@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz#ef9ee71212d7fe759c78ed162f61ed62b5cb93f1" + dependencies: + postcss "^5.0.5" + +postcss-normalize-url@^3.0.7: + version "3.0.8" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz#108f74b3f2fcdaf891a2ffa3ea4592279fc78222" + dependencies: + is-absolute-url "^2.0.0" + normalize-url "^1.4.0" + postcss "^5.0.14" + postcss-value-parser "^3.2.3" + +postcss-ordered-values@^2.1.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz#eec6c2a67b6c412a8db2042e77fe8da43f95c11d" + dependencies: + postcss "^5.0.4" + postcss-value-parser "^3.0.1" + +postcss-reduce-idents@^2.2.2: + version "2.4.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz#c2c6d20cc958284f6abfbe63f7609bf409059ad3" + dependencies: + postcss "^5.0.4" + postcss-value-parser "^3.0.2" + +postcss-reduce-initial@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz#68f80695f045d08263a879ad240df8dd64f644ea" + dependencies: + postcss "^5.0.4" + +postcss-reduce-transforms@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz#ff76f4d8212437b31c298a42d2e1444025771ae1" + dependencies: + has "^1.0.1" + postcss "^5.0.8" + postcss-value-parser "^3.0.1" + +postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.2: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90" + dependencies: + flatten "^1.0.2" + indexes-of "^1.0.1" + uniq "^1.0.1" + +postcss-svgo@^2.1.1: + version "2.1.6" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d" + dependencies: + is-svg "^2.0.0" + postcss "^5.0.14" + postcss-value-parser "^3.2.3" + svgo "^0.7.0" + +postcss-unique-selectors@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz#981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d" + dependencies: + alphanum-sort "^1.0.1" + postcss "^5.0.4" + uniqs "^2.0.0" + +postcss-url@^7.1.2: + version "7.3.0" + resolved "https://registry.yarnpkg.com/postcss-url/-/postcss-url-7.3.0.tgz#cf2f45e06743cf43cfea25309f81cbc003dc783f" + dependencies: + mime "^1.4.1" + minimatch "^3.0.4" + mkdirp "^0.5.0" + postcss "^6.0.1" + xxhashjs "^0.2.1" + +postcss-value-parser@^3.0.1, postcss-value-parser@^3.0.2, postcss-value-parser@^3.1.1, postcss-value-parser@^3.1.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" + +postcss-zindex@^2.0.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.2.0.tgz#d2109ddc055b91af67fc4cb3b025946639d2af22" + dependencies: + has "^1.0.1" + postcss "^5.0.4" + uniqs "^2.0.0" + +postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.16: + version "5.2.18" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz#badfa1497d46244f6390f58b319830d9107853c5" + dependencies: + chalk "^1.1.3" + js-base64 "^2.1.9" + source-map "^0.5.6" + supports-color "^3.2.3" + +postcss@^6.0.0, postcss@^6.0.1, postcss@^6.0.16: + version "6.0.16" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.16.tgz#112e2fe2a6d2109be0957687243170ea5589e146" + dependencies: + chalk "^2.3.0" + source-map "^0.6.1" + supports-color "^5.1.0" + +postcss@^6.0.17: + version "6.0.19" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.19.tgz#76a78386f670b9d9494a655bf23ac012effd1555" + dependencies: + chalk "^2.3.1" + source-map "^0.6.1" + supports-color "^5.2.0" + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + +prepend-http@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + +preserve@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + +prettier@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.11.1.tgz#61e43fc4cd44e68f2b0dfc2c38cd4bb0fccdcc75" + +pretty-bytes@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/pretty-bytes/-/pretty-bytes-1.0.4.tgz#0a22e8210609ad35542f8c8d5d2159aff0751c84" + dependencies: + get-stdin "^4.0.1" + meow "^3.1.0" + +pretty-checkbox@3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/pretty-checkbox/-/pretty-checkbox-3.0.3.tgz#d49c8013a8fc08ee0c2d6ebde453464bfdbc428e" + +pretty-error@^2.0.2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.1.tgz#5f4f87c8f91e5ae3f3ba87ab4cf5e03b1a17f1a3" + dependencies: + renderkid "^2.0.1" + utila "~0.4" + +pretty-format@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-22.4.0.tgz#237b1f7e1c50ed03bc65c03ccc29d7c8bb7beb94" + dependencies: + ansi-regex "^3.0.0" + ansi-styles "^3.2.0" + +pretty-format@^22.4.3: + version "22.4.3" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-22.4.3.tgz#f873d780839a9c02e9664c8a082e9ee79eaac16f" + dependencies: + ansi-regex "^3.0.0" + ansi-styles "^3.2.0" + +pretty-quick@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/pretty-quick/-/pretty-quick-1.4.1.tgz#9d41f778d2d4d940ec603d1293a0998e84c4722c" + dependencies: + chalk "^2.3.0" + execa "^0.8.0" + find-up "^2.1.0" + ignore "^3.3.7" + mri "^1.1.0" + +primeng@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/primeng/-/primeng-5.0.2.tgz#05c4a4502efd4c3bc5d506aa01ae8eb30f9764db" + +private@^0.1.6, private@^0.1.7, private@~0.1.5: + version "0.1.8" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" + +process-nextick-args@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" + +process-nextick-args@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" + +process@^0.11.10, process@~0.11.0: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + +process@~0.5.1: + version "0.5.2" + resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" + +progress-stream@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/progress-stream/-/progress-stream-1.2.0.tgz#2cd3cfea33ba3a89c9c121ec3347abe9ab125f77" + dependencies: + speedometer "~0.1.2" + through2 "~0.2.3" + +progress@1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + +promise.prototype.finally@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/promise.prototype.finally/-/promise.prototype.finally-3.1.0.tgz#66f161b1643636e50e7cf201dc1b84a857f3864e" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.9.0" + function-bind "^1.1.1" + +promise@^7.1.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + dependencies: + asap "~2.0.3" + +prop-types@^15.5.10, prop-types@^15.5.4, prop-types@^15.5.6, prop-types@^15.5.7, prop-types@^15.5.9: + version "15.6.1" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.1.tgz#36644453564255ddda391191fb3a125cbdf654ca" + dependencies: + fbjs "^0.8.16" + loose-envify "^1.3.1" + object-assign "^4.1.1" + +prop-types@^15.5.8, prop-types@^15.6.0: + version "15.6.0" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.6.0.tgz#ceaf083022fc46b4a35f69e13ef75aed0d639856" + dependencies: + fbjs "^0.8.16" + loose-envify "^1.3.1" + object-assign "^4.1.1" + +protractor@~5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/protractor/-/protractor-5.1.2.tgz#9b221741709a4c62d5cd53c6aadd54a71137e95f" + dependencies: + "@types/node" "^6.0.46" + "@types/q" "^0.0.32" + "@types/selenium-webdriver" "~2.53.39" + blocking-proxy "0.0.5" + chalk "^1.1.3" + glob "^7.0.3" + jasmine "^2.5.3" + jasminewd2 "^2.1.0" + optimist "~0.6.0" + q "1.4.1" + saucelabs "~1.3.0" + selenium-webdriver "3.0.1" + source-map-support "~0.4.0" + webdriver-js-extender "^1.0.0" + webdriver-manager "^12.0.6" + +proxy-addr@~2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.2.tgz#6571504f47bb988ec8180253f85dd7e14952bdec" + dependencies: + forwarded "~0.1.2" + ipaddr.js "1.5.2" + +proxy-agent@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-2.0.0.tgz#57eb5347aa805d74ec681cb25649dba39c933499" + dependencies: + agent-base "2" + debug "2" + extend "3" + http-proxy-agent "1" + https-proxy-agent "1" + lru-cache "~2.6.5" + pac-proxy-agent "1" + socks-proxy-agent "2" + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + +public-encrypt@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6" + dependencies: + bn.js "^4.1.0" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + parse-asn1 "^5.0.0" + randombytes "^2.0.1" + +pump@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.0.tgz#7946da1c8d622b098e2ceb2d3476582470829c9d" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pump@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pumpify@^1.3.3: + version "1.3.6" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.3.6.tgz#00d40e5ded0a3bf1e0788b1c0cf426a42882ab64" + dependencies: + duplexify "^3.5.3" + inherits "^2.0.3" + pump "^2.0.0" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + +punycode@1.4.1, punycode@^1.2.4, punycode@^1.3.2, punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + +punycode@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d" + +q@1.4.1, q@~1.4.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.4.1.tgz#55705bcd93c5f3673530c2c2cbc0c2b3addc286e" + +q@^1.1.2, q@^1.4.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + +qjobs@^1.1.4: + version "1.1.5" + resolved "https://registry.yarnpkg.com/qjobs/-/qjobs-1.1.5.tgz#659de9f2cf8dcc27a1481276f205377272382e73" + +qs@6.5.1, qs@^6.5.1, qs@~6.5.1: + version "6.5.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" + +qs@~6.2.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.2.3.tgz#1cfcb25c10a9b2b483053ff39f5dfc9233908cfe" + +qs@~6.3.0: + version "6.3.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c" + +qs@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" + +query-string@^4.1.0: + version "4.3.4" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" + dependencies: + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + +querystring-es3@^0.2.0, querystring-es3@~0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + +querystring@0.2.0, querystring@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + +querystringify@0.0.x: + version "0.0.4" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-0.0.4.tgz#0cf7f84f9463ff0ae51c4c4b142d95be37724d9c" + +querystringify@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb" + +radium@^0.19.0: + version "0.19.6" + resolved "https://registry.yarnpkg.com/radium/-/radium-0.19.6.tgz#b86721d08dbd303b061a4ae2ebb06cc6e335ae72" + dependencies: + array-find "^1.0.0" + exenv "^1.2.1" + inline-style-prefixer "^2.0.5" + prop-types "^15.5.8" + +ramda@0.24.1: + version "0.24.1" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.24.1.tgz#c3b7755197f35b8dc3502228262c4c91ddb6b857" + +ramda@^0.25.0: + version "0.25.0" + resolved "https://registry.yarnpkg.com/ramda/-/ramda-0.25.0.tgz#8fdf68231cffa90bc2f9460390a0cb74a29b29a9" + +randomatic@^1.1.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c" + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" + dependencies: + safe-buffer "^5.1.0" + +randomfill@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.3.tgz#b96b7df587f01dd91726c418f30553b1418e3d62" + dependencies: + randombytes "^2.0.5" + safe-buffer "^5.1.0" + +range-parser@^1.0.3, range-parser@^1.2.0, range-parser@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" + +raw-body@2, raw-body@2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" + dependencies: + bytes "3.0.0" + http-errors "1.6.2" + iconv-lite "0.4.19" + unpipe "1.0.0" + +raw-loader@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" + +rc@^1.1.2: + version "1.2.5" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.5.tgz#275cd687f6e3b36cc756baa26dfee80a790301fd" + dependencies: + deep-extend "~0.4.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +rc@^1.1.7: + version "1.2.3" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.3.tgz#51575a900f8dd68381c710b4712c2154c3e2035b" + dependencies: + deep-extend "~0.4.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +react-color@^2.11.4: + version "2.14.0" + resolved "https://registry.yarnpkg.com/react-color/-/react-color-2.14.0.tgz#5828a11c034aa0939befbd888a066ee37d8c3cc2" + dependencies: + lodash "^4.0.1" + material-colors "^1.2.1" + prop-types "^15.5.10" + reactcss "^1.2.0" + tinycolor2 "^1.4.1" + +react-datetime@^2.14.0: + version "2.14.0" + resolved "https://registry.yarnpkg.com/react-datetime/-/react-datetime-2.14.0.tgz#c7859c5b765275d7980f1cca27c03a727ff9ccef" + dependencies: + create-react-class "^15.5.2" + object-assign "^3.0.0" + prop-types "^15.5.7" + react-onclickoutside "^6.5.0" + +react-dev-utils@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-5.0.0.tgz#425ac7c9c40c2603bc4f7ab8836c1406e96bb473" + dependencies: + address "1.0.3" + babel-code-frame "6.26.0" + chalk "1.1.3" + cross-spawn "5.1.0" + detect-port-alt "1.1.5" + escape-string-regexp "1.0.5" + filesize "3.5.11" + global-modules "1.0.0" + gzip-size "3.0.0" + inquirer "3.3.0" + is-root "1.0.0" + opn "5.2.0" + react-error-overlay "^4.0.0" + recursive-readdir "2.2.1" + shell-quote "1.6.1" + sockjs-client "1.1.4" + strip-ansi "3.0.1" + text-table "0.2.0" + +react-docgen@^2.20.0: + version "2.20.1" + resolved "https://registry.yarnpkg.com/react-docgen/-/react-docgen-2.20.1.tgz#29c3a1216066f513958abb1a43678860bbd51c7f" + dependencies: + async "^2.1.4" + babel-runtime "^6.9.2" + babylon "~5.8.3" + commander "^2.9.0" + doctrine "^2.0.0" + node-dir "^0.1.10" + recast "^0.12.6" + +react-dom@^16.0.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.2.0.tgz#69003178601c0ca19b709b33a83369fe6124c044" + dependencies: + fbjs "^0.8.16" + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.0" + +react-error-overlay@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-4.0.0.tgz#d198408a85b4070937a98667f500c832f86bd5d4" + +react-fuzzy@^0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/react-fuzzy/-/react-fuzzy-0.5.2.tgz#fc13bf6f0b785e5fefe908724efebec4935eaefe" + dependencies: + babel-runtime "^6.23.0" + classnames "^2.2.5" + fuse.js "^3.0.1" + prop-types "^15.5.9" + +react-html-attributes@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/react-html-attributes/-/react-html-attributes-1.4.1.tgz#97b5ec710da68833598c8be6f89ac436216840a5" + dependencies: + html-element-attributes "^1.0.0" + +react-icon-base@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/react-icon-base/-/react-icon-base-2.1.0.tgz#a196e33fdf1e7aaa1fda3aefbb68bdad9e82a79d" + +react-icons@^2.2.7: + version "2.2.7" + resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-2.2.7.tgz#d7860826b258557510dac10680abea5ca23cf650" + dependencies: + react-icon-base "2.1.0" + +react-inspector@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/react-inspector/-/react-inspector-2.2.2.tgz#c04f5248fa92ab6c23e37960e725fb7f48c34d05" + dependencies: + babel-runtime "^6.26.0" + is-dom "^1.0.9" + +react-modal@^3.3.1: + version "3.3.1" + resolved "https://registry.yarnpkg.com/react-modal/-/react-modal-3.3.1.tgz#7355db196482da0c7fa1cbecccf2bdd9bc366b14" + dependencies: + exenv "^1.2.0" + prop-types "^15.5.10" + warning "^3.0.0" + +react-onclickoutside@^6.5.0: + version "6.7.1" + resolved "https://registry.yarnpkg.com/react-onclickoutside/-/react-onclickoutside-6.7.1.tgz#6a5b5b8b4eae6b776259712c89c8a2b36b17be93" + +react-split-pane@^0.1.77: + version "0.1.77" + resolved "https://registry.yarnpkg.com/react-split-pane/-/react-split-pane-0.1.77.tgz#f0c8cd18d076bbac900248dcf6dbcec02d5340db" + dependencies: + inline-style-prefixer "^3.0.6" + prop-types "^15.5.10" + react-style-proptype "^3.0.0" + +react-style-proptype@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/react-style-proptype/-/react-style-proptype-3.2.0.tgz#be5de15358b890d83aecfaf6634cc033aa2b1483" + dependencies: + prop-types "^15.5.4" + +react-textarea-autosize@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-5.2.1.tgz#2b78f9067180f41b08ac59f78f1581abadd61e54" + dependencies: + prop-types "^15.6.0" + +react-transition-group@^1.1.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-1.2.1.tgz#e11f72b257f921b213229a774df46612346c7ca6" + dependencies: + chain-function "^1.0.0" + dom-helpers "^3.2.0" + loose-envify "^1.3.1" + prop-types "^15.5.6" + warning "^3.0.0" + +react-treebeard@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/react-treebeard/-/react-treebeard-2.1.0.tgz#fbd5cf51089b6f09a9b18350ab3bddf736e57800" + dependencies: + babel-runtime "^6.23.0" + deep-equal "^1.0.1" + prop-types "^15.5.8" + radium "^0.19.0" + shallowequal "^0.2.2" + velocity-react "^1.3.1" + +react@^16.0.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/react/-/react-16.2.0.tgz#a31bd2dab89bff65d42134fa187f24d054c273ba" + dependencies: + fbjs "^0.8.16" + loose-envify "^1.1.0" + object-assign "^4.1.1" + prop-types "^15.6.0" + +reactcss@^1.2.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/reactcss/-/reactcss-1.2.3.tgz#c00013875e557b1cf0dfd9a368a1c3dab3b548dd" + dependencies: + lodash "^4.0.1" + +read-cache@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774" + dependencies: + pify "^2.3.0" + +read-only-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-only-stream/-/read-only-stream-2.0.0.tgz#2724fd6a8113d73764ac288d4386270c1dbf17f0" + dependencies: + readable-stream "^2.0.2" + +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + +read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + +read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + +read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + +"readable-stream@1 || 2", readable-stream@2, readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.9, readable-stream@^2.3.0, readable-stream@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.3" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + safe-buffer "~5.1.1" + string_decoder "~1.0.3" + util-deprecate "~1.0.1" + +readable-stream@1.0: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@1.1.x, readable-stream@~1.1.9: + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@^2.2.2: + version "2.3.4" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071" + 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" + +readable-stream@~2.0.0, readable-stream@~2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + string_decoder "~0.10.x" + 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" + dependencies: + graceful-fs "^4.1.2" + minimatch "^3.0.2" + readable-stream "^2.0.2" + set-immediate-shim "^1.0.1" + +realpath-native@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.0.tgz#7885721a83b43bd5327609f0ddecb2482305fdf0" + dependencies: + util.promisify "^1.0.0" + +recast@^0.12.6: + version "0.12.9" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.12.9.tgz#e8e52bdb9691af462ccbd7c15d5a5113647a15f1" + dependencies: + ast-types "0.10.1" + core-js "^2.4.1" + esprima "~4.0.0" + private "~0.1.5" + source-map "~0.6.1" + +recast@~0.11.12: + version "0.11.23" + resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3" + dependencies: + ast-types "0.9.6" + esprima "~3.1.0" + private "~0.1.5" + source-map "~0.5.0" + +rechoir@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" + dependencies: + resolve "^1.1.6" + +recursive-readdir@2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/recursive-readdir/-/recursive-readdir-2.2.1.tgz#90ef231d0778c5ce093c9a48d74e5c5422d13a99" + dependencies: + minimatch "3.0.3" + +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + +redis-commands@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/redis-commands/-/redis-commands-1.3.1.tgz#81d826f45fa9c8b2011f4cd7a0fe597d241d442b" + +redis-parser@^2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/redis-parser/-/redis-parser-2.6.0.tgz#52ed09dacac108f1a631c07e9b69941e7a19504b" + +redis@^2.7.1: + version "2.8.0" + resolved "https://registry.yarnpkg.com/redis/-/redis-2.8.0.tgz#202288e3f58c49f6079d97af7a10e1303ae14b02" + dependencies: + double-ended-queue "^2.1.0-0" + redis-commands "^1.2.0" + redis-parser "^2.6.0" + +reduce-css-calc@^1.2.6: + version "1.3.0" + resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716" + dependencies: + balanced-match "^0.4.2" + math-expression-evaluator "^1.2.14" + reduce-function-call "^1.0.1" + +reduce-function-call@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.2.tgz#5a200bf92e0e37751752fe45b0ab330fd4b6be99" + dependencies: + balanced-match "^0.4.2" + +redux@^3.6.0, redux@^3.7.2: + version "3.7.2" + resolved "https://registry.yarnpkg.com/redux/-/redux-3.7.2.tgz#06b73123215901d25d065be342eb026bc1c8537b" + dependencies: + lodash "^4.2.1" + lodash-es "^4.2.1" + loose-envify "^1.1.0" + symbol-observable "^1.0.3" + +reflect-metadata@^0.1.2: + version "0.1.10" + resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.10.tgz#b4f83704416acad89988c9b15635d47e03b9344a" + +regenerate@^1.2.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.3.tgz#0c336d3980553d755c39b586ae3b20aa49c82b7f" + +regenerator-runtime@^0.11.0: + version "0.11.1" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + +regenerator-transform@^0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.10.1.tgz#1e4996837231da8b7f3cf4114d71b5691a0680dd" + dependencies: + babel-runtime "^6.18.0" + babel-types "^6.19.0" + private "^0.1.6" + +regex-cache@^0.4.2: + version "0.4.4" + resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" + dependencies: + is-equal-shallow "^0.1.3" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regexpu-core@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + +regexpu-core@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + +regjsgen@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" + +regjsparser@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" + dependencies: + jsesc "~0.5.0" + +relateurl@0.2.x: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + +remotedev-serialize@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/remotedev-serialize/-/remotedev-serialize-0.1.1.tgz#0f598000b7dd7515d67f9b51a61d211e18ce9554" + dependencies: + jsan "^3.1.9" + +remotedev-utils@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/remotedev-utils/-/remotedev-utils-0.1.4.tgz#643700819a943678073c75eb185e81d96620b348" + dependencies: + get-params "^0.1.2" + jsan "^3.1.5" + lodash "^4.0.0" + remotedev-serialize "^0.1.0" + shortid "^2.2.6" + +remotedev@^0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/remotedev/-/remotedev-0.2.7.tgz#85ef370b52eb5721bd3e869d681dc7027d527ee3" + dependencies: + jsan "^3.1.3" + querystring "^0.2.0" + rn-host-detect "^1.0.1" + socketcluster-client "^5.0.0" + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + +renderkid@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.1.tgz#898cabfc8bede4b7b91135a3ffd323e58c0db319" + dependencies: + css-select "^1.1.0" + dom-converter "~0.1" + htmlparser2 "~3.3.0" + strip-ansi "^3.0.0" + utila "~0.3" + +repeat-element@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" + +repeat-string@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-0.2.2.tgz#c7a8d3236068362059a7e4651fc6884e8b1fb4ae" + +repeat-string@^1.5.2, repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + dependencies: + is-finite "^1.0.0" + +request-progress@0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/request-progress/-/request-progress-0.3.1.tgz#0721c105d8a96ac6b2ce8b2c89ae2d5ecfcf6b3a" + dependencies: + throttleit "~0.0.2" + +request-promise-core@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6" + dependencies: + lodash "^4.13.1" + +request-promise-native@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5" + dependencies: + request-promise-core "1.1.1" + stealthy-require "^1.1.0" + tough-cookie ">=2.3.3" + +request@2, request@^2.0.0, request@^2.45.0, request@^2.74.0, request@^2.75.0, request@^2.78.0, request@^2.81.0, request@^2.83.0: + version "2.83.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356" + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.6.0" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.1" + forever-agent "~0.6.1" + form-data "~2.3.1" + har-validator "~5.0.3" + hawk "~6.0.2" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.17" + oauth-sign "~0.8.2" + performance-now "^2.1.0" + qs "~6.5.1" + safe-buffer "^5.1.1" + stringstream "~0.0.5" + tough-cookie "~2.3.3" + tunnel-agent "^0.6.0" + uuid "^3.1.0" + +request@2.75.x: + version "2.75.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.75.0.tgz#d2b8268a286da13eaa5d01adf5d18cc90f657d93" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + bl "~1.1.2" + caseless "~0.11.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.0.0" + har-validator "~2.0.6" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + node-uuid "~1.4.7" + oauth-sign "~0.8.1" + qs "~6.2.0" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "~0.4.1" + +request@2.81.0: + version "2.81.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~4.2.1" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + performance-now "^0.2.0" + qs "~6.4.0" + safe-buffer "^5.0.1" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "^0.6.0" + uuid "^3.0.0" + +request@~2.79.0: + version "2.79.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.11.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~2.0.6" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + qs "~6.3.0" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "~0.4.1" + uuid "^3.0.0" + +requestretry@^1.2.2: + version "1.12.2" + resolved "https://registry.yarnpkg.com/requestretry/-/requestretry-1.12.2.tgz#13ce38a4ce4e809f3c9ec6d4ca3b7b9ba4acf26c" + dependencies: + extend "^3.0.0" + lodash "^4.15.0" + request "^2.74.0" + when "^3.7.7" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + +require-from-string@^1.1.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" + +require-from-string@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.1.tgz#c545233e9d7da6616e9d59adfb39fc9f588676ff" + +require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" + +requires-port@1.0.x, requires-port@1.x.x, requires-port@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + +resolve-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" + dependencies: + resolve-from "^3.0.0" + +resolve-dir@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" + dependencies: + expand-tilde "^2.0.0" + global-modules "^1.0.0" + +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + +resolve@1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" + +resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.1.7, resolve@^1.3.2: + version "1.5.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36" + dependencies: + path-parse "^1.0.5" + +restore-cursor@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" + dependencies: + exit-hook "^1.0.0" + onetime "^1.0.0" + +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + +right-align@^0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" + dependencies: + align-text "^0.1.1" + +rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.2, rimraf@^2.5.4, rimraf@^2.6.0, rimraf@^2.6.1, rimraf@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" + dependencies: + glob "^7.0.5" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" + dependencies: + hash-base "^2.0.0" + inherits "^2.0.1" + +rn-host-detect@^1.0.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/rn-host-detect/-/rn-host-detect-1.1.3.tgz#242d76e2fa485c48d751416e65b7cce596969e91" + +run-async@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" + dependencies: + is-promise "^2.1.0" + +run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + dependencies: + aproba "^1.1.1" + +rx-lite-aggregates@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz#753b87a89a11c95467c4ac1626c4efc4e05c67be" + dependencies: + rx-lite "*" + +rx-lite@*, rx-lite@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" + +rxjs@^5.0.0-beta.11, rxjs@^5.4.2, rxjs@^5.5.6: + version "5.5.6" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.6.tgz#e31fb96d6fd2ff1fd84bcea8ae9c02d007179c02" + dependencies: + symbol-observable "1.0.1" + +safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" + +safe-buffer@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + dependencies: + ret "~0.1.10" + +sane@^2.0.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/sane/-/sane-2.4.1.tgz#29f991208cf28636720efdc584293e7fd66663a5" + dependencies: + anymatch "^1.3.0" + exec-sh "^0.2.0" + fb-watchman "^2.0.0" + minimatch "^3.0.2" + minimist "^1.1.1" + walker "~1.0.5" + watch "~0.18.0" + optionalDependencies: + fsevents "^1.1.1" + +sass-graph@^2.2.4: + version "2.2.4" + resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" + dependencies: + glob "^7.0.0" + lodash "^4.0.0" + scss-tokenizer "^0.2.3" + yargs "^7.0.0" + +sass-loader@^6.0.6: + version "6.0.7" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-6.0.7.tgz#dd2fdb3e7eeff4a53f35ba6ac408715488353d00" + dependencies: + clone-deep "^2.0.1" + loader-utils "^1.0.1" + lodash.tail "^4.1.1" + neo-async "^2.5.0" + pify "^3.0.0" + +saucelabs@~1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/saucelabs/-/saucelabs-1.3.0.tgz#d240e8009df7fa87306ec4578a69ba3b5c424fee" + dependencies: + https-proxy-agent "^1.0.0" + +sax@0.5.x: + version "0.5.8" + resolved "https://registry.yarnpkg.com/sax/-/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1" + +sax@0.6.x: + version "0.6.1" + resolved "https://registry.yarnpkg.com/sax/-/sax-0.6.1.tgz#563b19c7c1de892e09bfc4f2fc30e3c27f0952b9" + +sax@>=0.6.0, sax@^1.2.4, sax@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + +sc-channel@~1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/sc-channel/-/sc-channel-1.0.6.tgz#b38bd47a993e78290fbc53467867f6b2a0a08639" + dependencies: + sc-emitter "1.x.x" + +sc-emitter@1.x.x, sc-emitter@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/sc-emitter/-/sc-emitter-1.1.0.tgz#ef119d4222f4c64f887b486964ef11116cdd0e75" + dependencies: + component-emitter "1.2.0" + +sc-errors@~1.3.0: + version "1.3.3" + resolved "https://registry.yarnpkg.com/sc-errors/-/sc-errors-1.3.3.tgz#c00bc4c766a970cc8d5937d08cd58e931d7dae05" + +sc-formatter@~3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/sc-formatter/-/sc-formatter-3.0.2.tgz#9abdb14e71873ce7157714d3002477bbdb33c4e6" + +schema-utils@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.3.0.tgz#f5877222ce3e931edae039f17eb3716e7137f8cf" + dependencies: + ajv "^5.0.0" + +schema-utils@^0.4.0, schema-utils@^0.4.3, schema-utils@^0.4.5: + version "0.4.5" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e" + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + +schema-utils@^0.4.2: + version "0.4.3" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.3.tgz#e2a594d3395834d5e15da22b48be13517859458e" + dependencies: + ajv "^5.0.0" + ajv-keywords "^2.1.0" + +scss-tokenizer@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" + dependencies: + js-base64 "^2.1.8" + source-map "^0.4.2" + +select-hose@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca" + +selenium-webdriver@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-3.0.1.tgz#a2dea5da4a97f6672e89e7ca7276cefa365147a7" + dependencies: + adm-zip "^0.4.7" + rimraf "^2.5.4" + tmp "0.0.30" + xml2js "^0.4.17" + +selenium-webdriver@^2.53.2: + version "2.53.3" + resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-2.53.3.tgz#d29ff5a957dff1a1b49dc457756e4e4bfbdce085" + dependencies: + adm-zip "0.4.4" + rimraf "^2.2.8" + tmp "0.0.24" + ws "^1.0.1" + xml2js "0.4.4" + +selfsigned@^1.9.1: + version "1.10.1" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-1.10.1.tgz#bf8cb7b83256c4551e31347c6311778db99eec52" + dependencies: + node-forge "0.6.33" + +semver-dsl@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/semver-dsl/-/semver-dsl-1.0.1.tgz#d3678de5555e8a61f629eed025366ae5f27340a0" + dependencies: + semver "^5.3.0" + +semver-intersect@^1.1.2: + version "1.3.1" + resolved "https://registry.yarnpkg.com/semver-intersect/-/semver-intersect-1.3.1.tgz#8fa84a9e1028bd239e4530d1a3e181e698d884ba" + dependencies: + semver "^5.0.0" + +"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0: + version "5.4.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" + +semver@^5.0.0, semver@^5.0.1, semver@^5.4.1: + version "5.5.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" + +semver@~5.0.1: + version "5.0.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.0.3.tgz#77466de589cd5d3c95f138aa78bc569a3cb5d27a" + +semver@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" + +send@0.16.1: + version "0.16.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3" + dependencies: + debug "2.6.9" + depd "~1.1.1" + destroy "~1.0.4" + encodeurl "~1.0.1" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.6.2" + mime "1.4.1" + ms "2.0.0" + on-finished "~2.3.0" + range-parser "~1.2.0" + statuses "~1.3.1" + +serialize-javascript@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-1.4.0.tgz#7c958514db6ac2443a8abc062dc9f7886a7f6005" + +serve-favicon@^2.4.5: + version "2.4.5" + resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.4.5.tgz#49d9a46863153a9240691c893d2b0e7d85d6d436" + dependencies: + etag "~1.8.1" + fresh "0.5.2" + ms "2.0.0" + parseurl "~1.3.2" + safe-buffer "5.1.1" + +serve-index@^1.7.2: + version "1.9.1" + resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" + dependencies: + accepts "~1.3.4" + batch "0.6.1" + debug "2.6.9" + escape-html "~1.0.3" + http-errors "~1.6.2" + mime-types "~2.1.17" + parseurl "~1.3.2" + +serve-static@1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.13.1.tgz#4c57d53404a761d8f2e7c1e8a18a47dbf278a719" + dependencies: + encodeurl "~1.0.1" + escape-html "~1.0.3" + parseurl "~1.3.2" + send "0.16.1" + +set-blocking@^2.0.0, set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + +set-getter@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/set-getter/-/set-getter-0.1.0.tgz#d769c182c9d5a51f409145f2fba82e5e86e80376" + dependencies: + to-object-path "^0.3.0" + +set-immediate-shim@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" + +set-value@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-0.4.3.tgz#7db08f9d3d22dc7f78e53af3c3bf4666ecdfccf1" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.1" + to-object-path "^0.3.0" + +set-value@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.0.tgz#71ae4a88f0feefbbf52d1ea604f3fb315ebb6274" + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +setimmediate@^1.0.4, setimmediate@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + +setprototypeof@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" + +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" + +sha.js@^2.4.0, sha.js@^2.4.8, sha.js@~2.4.4: + version "2.4.9" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.9.tgz#98f64880474b74f4a38b8da9d3c0f2d104633e7d" + dependencies: + inherits "^2.0.1" + safe-buffer "^5.0.1" + +shallow-clone@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" + dependencies: + is-extendable "^0.1.1" + kind-of "^5.0.0" + mixin-object "^2.0.1" + +shallowequal@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-0.2.2.tgz#1e32fd5bcab6ad688a4812cb0cc04efc75c7014e" + dependencies: + lodash.keys "^3.1.2" + +shasum@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/shasum/-/shasum-1.0.2.tgz#e7012310d8f417f4deb5712150e5678b87ae565f" + dependencies: + json-stable-stringify "~0.0.0" + sha.js "~2.4.4" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + +shell-quote@1.6.1, shell-quote@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.6.1.tgz#f4781949cce402697127430ea3b3c5476f481767" + dependencies: + array-filter "~0.0.0" + array-map "~0.0.0" + array-reduce "~0.0.0" + jsonify "~0.0.0" + +shelljs@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.0.tgz#12f561c52ec5d0d3315af15616c011a18ff80d59" + dependencies: + glob "^7.0.0" + interpret "^1.0.0" + rechoir "^0.6.2" + +shelljs@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.8.1.tgz#729e038c413a2254c4078b95ed46e0397154a9f1" + dependencies: + glob "^7.0.0" + interpret "^1.0.0" + rechoir "^0.6.2" + +shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + +shortid@^2.2.6: + version "2.2.8" + resolved "https://registry.yarnpkg.com/shortid/-/shortid-2.2.8.tgz#033b117d6a2e975804f6f0969dbe7d3d0b355131" + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + +silent-error@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/silent-error/-/silent-error-1.1.0.tgz#2209706f1c850a9f1d10d0d840918b46f26e1bc9" + dependencies: + debug "^2.2.0" + +single-line-log@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/single-line-log/-/single-line-log-1.1.2.tgz#c2f83f273a3e1a16edb0995661da0ed5ef033364" + dependencies: + string-width "^1.0.1" + +slack-node@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/slack-node/-/slack-node-0.2.0.tgz#de4b8dddaa8b793f61dbd2938104fdabf37dfa30" + dependencies: + requestretry "^1.2.2" + +slash@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" + +slice-ansi@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" + +smart-buffer@^1.0.13, smart-buffer@^1.0.4: + version "1.1.15" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-1.1.15.tgz#7f114b5b65fab3e2a35aa775bb12f0d1c649bf16" + +smtp-connection@2.12.0: + version "2.12.0" + resolved "https://registry.yarnpkg.com/smtp-connection/-/smtp-connection-2.12.0.tgz#d76ef9127cb23c2259edb1e8349c2e8d5e2d74c1" + dependencies: + httpntlm "1.6.1" + nodemailer-shared "1.1.0" + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.1.tgz#e12b5487faded3e3dea0ac91e9400bf75b401370" + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^2.0.0" + +sntp@1.x.x: + version "1.0.9" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" + dependencies: + hoek "2.x.x" + +sntp@2.x.x: + version "2.1.0" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-2.1.0.tgz#2c6cec14fedc2222739caf9b5c3d85d1cc5a2cc8" + dependencies: + hoek "4.x.x" + +socket.io-adapter@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz#2a805e8a14d6372124dd9159ad4502f8cb07f06b" + +socket.io-client@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-2.0.4.tgz#0918a552406dc5e540b380dcd97afc4a64332f8e" + dependencies: + backo2 "1.0.2" + base64-arraybuffer "0.1.5" + component-bind "1.0.0" + component-emitter "1.2.1" + debug "~2.6.4" + engine.io-client "~3.1.0" + has-cors "1.1.0" + indexof "0.0.1" + object-component "0.0.3" + parseqs "0.0.5" + parseuri "0.0.5" + socket.io-parser "~3.1.1" + to-array "0.1.4" + +socket.io-parser@~3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-3.1.2.tgz#dbc2282151fc4faebbe40aeedc0772eba619f7f2" + dependencies: + component-emitter "1.2.1" + debug "~2.6.4" + has-binary2 "~1.0.2" + isarray "2.0.1" + +socket.io@2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/socket.io/-/socket.io-2.0.4.tgz#c1a4590ceff87ecf13c72652f046f716b29e6014" + dependencies: + debug "~2.6.6" + engine.io "~3.1.0" + socket.io-adapter "~1.1.0" + socket.io-client "2.0.4" + socket.io-parser "~3.1.1" + +socketcluster-client@^5.0.0: + version "5.5.2" + resolved "https://registry.yarnpkg.com/socketcluster-client/-/socketcluster-client-5.5.2.tgz#9d4369e0e722ff7e55e5422c2d44f5afe1aff128" + dependencies: + base-64 "0.1.0" + clone "2.1.1" + linked-list "0.1.0" + querystring "0.2.0" + sc-channel "~1.0.6" + sc-emitter "~1.1.0" + sc-errors "~1.3.0" + sc-formatter "~3.0.0" + ws "3.0.0" + +sockjs-client@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/sockjs-client/-/sockjs-client-1.1.4.tgz#5babe386b775e4cf14e7520911452654016c8b12" + dependencies: + debug "^2.6.6" + eventsource "0.1.6" + faye-websocket "~0.11.0" + inherits "^2.0.1" + json3 "^3.3.2" + url-parse "^1.1.8" + +sockjs@0.3.19: + version "0.3.19" + resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.19.tgz#d976bbe800af7bd20ae08598d582393508993c0d" + dependencies: + faye-websocket "^0.10.0" + uuid "^3.0.1" + +socks-proxy-agent@2: + version "2.1.1" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-2.1.1.tgz#86ebb07193258637870e13b7bd99f26c663df3d3" + dependencies: + agent-base "2" + extend "3" + socks "~1.1.5" + +socks@1.1.9: + version "1.1.9" + resolved "https://registry.yarnpkg.com/socks/-/socks-1.1.9.tgz#628d7e4d04912435445ac0b6e459376cb3e6d691" + dependencies: + ip "^1.1.2" + smart-buffer "^1.0.4" + +socks@~1.1.5: + version "1.1.10" + resolved "https://registry.yarnpkg.com/socks/-/socks-1.1.10.tgz#5b8b7fc7c8f341c53ed056e929b7bf4de8ba7b5a" + dependencies: + ip "^1.1.4" + smart-buffer "^1.0.13" + +sort-keys@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" + dependencies: + is-plain-obj "^1.0.0" + +source-list-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.0.tgz#aaa47403f7b245a92fbc97ea08f250d6087ed085" + +source-list-map@~0.1.7: + version "0.1.8" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" + +source-map-resolve@^0.5.0: + version "0.5.1" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.1.tgz#7ad0f593f2281598e854df80f19aae4b92d7a11a" + dependencies: + atob "^2.0.0" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-support@^0.4.0, source-map-support@^0.4.1, source-map-support@^0.4.15, source-map-support@^0.4.2, source-map-support@~0.4.0: + version "0.4.18" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.18.tgz#0286a6de8be42641338594e97ccea75f0a2c585f" + dependencies: + source-map "^0.5.6" + +source-map-support@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.3.tgz#2b3d5fff298cfa4d1afd7d4352d569e9a0158e76" + dependencies: + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" + +source-map@0.1.x: + version "0.1.43" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + dependencies: + amdefine ">=0.0.4" + +source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.0, source-map@~0.5.1, source-map@~0.5.3, source-map@~0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + +source-map@^0.4.2, source-map@^0.4.4, source-map@~0.4.1: + version "0.4.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" + dependencies: + amdefine ">=0.0.4" + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + +spdx-correct@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" + dependencies: + spdx-license-ids "^1.0.2" + +spdx-expression-parse@~1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" + +spdx-license-ids@^1.0.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" + +spdy-transport@^2.0.18: + version "2.0.20" + resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.0.20.tgz#735e72054c486b2354fe89e702256004a39ace4d" + dependencies: + debug "^2.6.8" + detect-node "^2.0.3" + hpack.js "^2.1.6" + obuf "^1.1.1" + readable-stream "^2.2.9" + safe-buffer "^5.0.1" + wbuf "^1.7.2" + +spdy@^3.4.1: + version "3.4.7" + resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc" + dependencies: + debug "^2.6.8" + handle-thing "^1.2.5" + http-deceiver "^1.2.7" + safe-buffer "^5.0.1" + select-hose "^2.0.0" + spdy-transport "^2.0.18" + +speedometer@~0.1.2: + version "0.1.4" + resolved "https://registry.yarnpkg.com/speedometer/-/speedometer-0.1.4.tgz#9876dbd2a169d3115402d48e6ea6329c8816a50d" + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + dependencies: + extend-shallow "^3.0.0" + +sprintf-js@^1.0.3: + version "1.1.1" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.1.tgz#36be78320afe5801f6cea3ee78b6e5aab940ea0c" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + +sshpk@^1.7.0: + version "1.13.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.1.tgz#512df6da6287144316dc4c18fe1cf1d940739be3" + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + dashdash "^1.12.0" + getpass "^0.1.1" + optionalDependencies: + bcrypt-pbkdf "^1.0.0" + ecc-jsbn "~0.1.1" + jsbn "~0.1.0" + tweetnacl "~0.14.0" + +ssri@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.0.0.tgz#13c19390b606c821f2a10d02b351c1729b94d8cf" + dependencies: + safe-buffer "^5.1.0" + +ssri@^5.2.4: + version "5.3.0" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.3.0.tgz#ba3872c9c6d33a0704a7d71ff045e5ec48999d06" + dependencies: + safe-buffer "^5.1.1" + +stack-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620" + +staged-git-files@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/staged-git-files/-/staged-git-files-1.1.0.tgz#1a9bb131c1885601023c7aaddd3d54c22142c526" + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +"statuses@>= 1.3.1 < 2": + version "1.4.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.4.0.tgz#bb73d446da2796106efcc1b601a253d6c46bd087" + +statuses@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" + +stdout-stream@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b" + dependencies: + readable-stream "^2.0.1" + +stealthy-require@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" + +stream-browserify@^2.0.0, stream-browserify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" + dependencies: + inherits "~2.0.1" + readable-stream "^2.0.2" + +stream-combiner2@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stream-combiner2/-/stream-combiner2-1.1.1.tgz#fb4d8a1420ea362764e21ad4780397bebcb41cbe" + dependencies: + duplexer2 "~0.1.0" + readable-stream "^2.0.2" + +stream-each@^1.1.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.2.tgz#8e8c463f91da8991778765873fe4d960d8f616bd" + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + +stream-http@^2.0.0, stream-http@^2.7.2: + version "2.8.0" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.0.tgz#fd86546dac9b1c91aff8fc5d287b98fafb41bc10" + dependencies: + builtin-status-codes "^3.0.0" + inherits "^2.0.1" + readable-stream "^2.3.3" + to-arraybuffer "^1.0.0" + xtend "^4.0.0" + +stream-shift@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" + +stream-splicer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/stream-splicer/-/stream-splicer-2.0.0.tgz#1b63be438a133e4b671cc1935197600175910d83" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.2" + +stream-to-observable@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.1.0.tgz#45bf1d9f2d7dc09bed81f1c307c430e68b84cffe" + +stream-to-observable@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/stream-to-observable/-/stream-to-observable-0.2.0.tgz#59d6ea393d87c2c0ddac10aa0d561bc6ba6f0e10" + dependencies: + any-observable "^0.2.0" + +streamroller@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/streamroller/-/streamroller-0.7.0.tgz#a1d1b7cf83d39afb0d63049a5acbf93493bdf64b" + dependencies: + date-format "^1.2.0" + debug "^3.1.0" + mkdirp "^0.5.1" + readable-stream "^2.3.0" + +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + +string-length@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed" + dependencies: + astral-regex "^1.0.0" + strip-ansi "^4.0.0" + +string-width@^1.0.1, string-width@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string.prototype.padend@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.4.3" + function-bind "^1.0.2" + +string.prototype.padstart@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/string.prototype.padstart/-/string.prototype.padstart-3.0.0.tgz#5bcfad39f4649bb2d031292e19bcf0b510d4b242" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.4.3" + function-bind "^1.0.2" + +string_decoder@^1.0.0, string_decoder@~1.0.0, string_decoder@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.3.tgz#0fc67d7c141825de94282dd536bec6b9bce860ab" + dependencies: + safe-buffer "~5.1.0" + +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + +stringify-object@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.2.2.tgz#9853052e5a88fb605a44cd27445aa257ad7ffbcd" + dependencies: + get-own-enumerable-property-symbols "^2.0.1" + is-obj "^1.0.1" + is-regexp "^1.0.0" + +stringstream@~0.0.4, stringstream@~0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" + +strip-ansi@3.0.1, strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + dependencies: + ansi-regex "^3.0.0" + +strip-bom@3.0.0, strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + dependencies: + is-utf8 "^0.2.0" + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + dependencies: + get-stdin "^4.0.1" + +strip-indent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" + +strip-json-comments@^2.0.0, strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + +style-loader@^0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.19.1.tgz#591ffc80bcefe268b77c5d9ebc0505d772619f85" + dependencies: + loader-utils "^1.0.2" + schema-utils "^0.3.0" + +style-loader@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.20.2.tgz#851b373c187890331776e9cde359eea9c95ecd00" + dependencies: + loader-utils "^1.1.0" + schema-utils "^0.4.3" + +stylus-loader@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/stylus-loader/-/stylus-loader-3.0.1.tgz#77f4b34fd030d25b2617bcf5513db5b0730c4089" + dependencies: + loader-utils "^1.0.2" + lodash.clonedeep "^4.5.0" + when "~3.6.x" + +stylus@^0.54.5: + version "0.54.5" + resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.5.tgz#42b9560931ca7090ce8515a798ba9e6aa3d6dc79" + dependencies: + css-parse "1.7.x" + debug "*" + glob "7.0.x" + mkdirp "0.5.x" + sax "0.5.x" + source-map "0.1.x" + +subarg@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/subarg/-/subarg-1.0.0.tgz#f62cf17581e996b48fc965699f54c06ae268b8d2" + dependencies: + minimist "^1.1.0" + +sumchecker@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/sumchecker/-/sumchecker-1.3.1.tgz#79bb3b4456dd04f18ebdbc0d703a1d1daec5105d" + dependencies: + debug "^2.2.0" + es6-promise "^4.0.5" + +supports-color@3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" + dependencies: + has-flag "^1.0.0" + +supports-color@4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e" + dependencies: + has-flag "^2.0.0" + +supports-color@5.1.0, supports-color@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.1.0.tgz#058a021d1b619f7ddf3980d712ea3590ce7de3d5" + dependencies: + has-flag "^2.0.0" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + +supports-color@^3.1.2, supports-color@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" + dependencies: + has-flag "^1.0.0" + +supports-color@^4.0.0, supports-color@^4.2.1: + version "4.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" + dependencies: + has-flag "^2.0.0" + +supports-color@^5.2.0, supports-color@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.3.0.tgz#5b24ac15db80fa927cf5227a4a33fd3c4c7676c0" + dependencies: + has-flag "^3.0.0" + +svg-tag-names@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/svg-tag-names/-/svg-tag-names-1.1.1.tgz#9641b29ef71025ee094c7043f7cdde7d99fbd50a" + +svgo@^0.7.0: + version "0.7.2" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" + dependencies: + coa "~1.0.1" + colors "~1.1.2" + csso "~2.3.1" + js-yaml "~3.7.0" + mkdirp "~0.5.1" + sax "~1.2.1" + whet.extend "~0.9.9" + +symbol-observable@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz#8340fc4702c3122df5d22288f88283f513d3fdd4" + +symbol-observable@^0.2.2: + version "0.2.4" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-0.2.4.tgz#95a83db26186d6af7e7a18dbd9760a2f86d08f40" + +symbol-observable@^1.0.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" + +symbol-tree@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" + +sync-rest-client@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sync-rest-client/-/sync-rest-client-1.0.3.tgz#a36273679a9c22a18733bdafd91d659f90d46dcf" + dependencies: + deasync "^0.1.8" + request "^2.75.0" + wait-sync "^1.0.1" + +syntax-error@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/syntax-error/-/syntax-error-1.3.0.tgz#1ed9266c4d40be75dc55bf9bb1cb77062bb96ca1" + dependencies: + acorn "^4.0.3" + +tapable@^0.2.7: + version "0.2.8" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.8.tgz#99372a5c999bf2df160afc0d74bed4f47948cd22" + +tar-pack@^3.4.0: + version "3.4.1" + resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" + dependencies: + debug "^2.2.0" + fstream "^1.0.10" + fstream-ignore "^1.0.5" + once "^1.3.3" + readable-stream "^2.1.4" + rimraf "^2.5.1" + tar "^2.2.1" + uid-number "^0.0.6" + +tar@^2.0.0, tar@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" + dependencies: + block-stream "*" + fstream "^1.0.2" + inherits "2" + +tcomb-validation@^3.3.0: + version "3.4.1" + resolved "https://registry.yarnpkg.com/tcomb-validation/-/tcomb-validation-3.4.1.tgz#a7696ec176ce56a081d9e019f8b732a5a8894b65" + dependencies: + tcomb "^3.0.0" + +tcomb@^3.0.0, tcomb@^3.2.17: + version "3.2.24" + resolved "https://registry.yarnpkg.com/tcomb/-/tcomb-3.2.24.tgz#7f427053cc393b5997c4c3d859ca20411180887b" + +terminal-banner@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/terminal-banner/-/terminal-banner-1.1.0.tgz#ef81ce7d9d7e541a81d09eb2c0257c3d5463c3ea" + +test-exclude@^4.1.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.1.tgz#dfa222f03480bca69207ca728b37d74b45f724fa" + dependencies: + arrify "^1.0.1" + micromatch "^3.1.8" + object-assign "^4.1.0" + read-pkg-up "^1.0.1" + require-main-filename "^1.0.1" + +text-table@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + +throat@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a" + +throttleit@0.0.2, throttleit@~0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-0.0.2.tgz#cfedf88e60c00dd9697b61fdd2a8343a9b680eaf" + +through2@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" + dependencies: + readable-stream "^2.1.5" + xtend "~4.0.1" + +through2@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/through2/-/through2-0.2.3.tgz#eb3284da4ea311b6cc8ace3653748a52abf25a3f" + dependencies: + readable-stream "~1.1.9" + xtend "~2.1.1" + +"through@>=2.2.7 <3", through@X.X.X, through@^2.3.6, through@^2.3.8, through@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + +thunkify@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/thunkify/-/thunkify-2.1.2.tgz#faa0e9d230c51acc95ca13a361ac05ca7e04553d" + +thunky@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/thunky/-/thunky-0.1.0.tgz#bf30146824e2b6e67b0f2d7a4ac8beb26908684e" + +time-stamp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-2.0.0.tgz#95c6a44530e15ba8d6f4a3ecb8c3a3fac46da357" + +timers-browserify@^1.0.1: + version "1.4.2" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-1.4.2.tgz#c9c58b575be8407375cb5e2462dacee74359f41d" + dependencies: + process "~0.11.0" + +timers-browserify@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.4.tgz#96ca53f4b794a5e7c0e1bd7cc88a372298fa01e6" + dependencies: + setimmediate "^1.0.4" + +timespan@2.3.x: + version "2.3.0" + resolved "https://registry.yarnpkg.com/timespan/-/timespan-2.3.0.tgz#4902ce040bd13d845c8f59b27e9d59bad6f39929" + +tinycolor2@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8" + +tmp@0.0.24: + version "0.0.24" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.24.tgz#d6a5e198d14a9835cc6f2d7c3d9e302428c8cf12" + +tmp@0.0.30: + version "0.0.30" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.30.tgz#72419d4a8be7d6ce75148fd8b324e593a711c2ed" + dependencies: + os-tmpdir "~1.0.1" + +tmp@0.0.31: + version "0.0.31" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.31.tgz#8f38ab9438e17315e5dbd8b3657e8bfb277ae4a7" + dependencies: + os-tmpdir "~1.0.1" + +tmp@0.0.33, tmp@0.0.x, tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + dependencies: + os-tmpdir "~1.0.2" + +tmpl@1.0.x: + version "1.0.4" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1" + +to-array@0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/to-array/-/to-array-0.1.4.tgz#17e6c11f73dd4f3d74cda7a4ff3238e9ad9bf890" + +to-arraybuffer@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + +to-fast-properties@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +toposort@^1.0.0: + version "1.0.6" + resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.6.tgz#c31748e55d210effc00fdcdc7d6e68d7d7bb9cec" + +tough-cookie@>=2.3.3, tough-cookie@^2.3.3: + version "2.3.4" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" + dependencies: + punycode "^1.4.1" + +tough-cookie@~2.3.0, tough-cookie@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561" + dependencies: + punycode "^1.4.1" + +tr46@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" + dependencies: + punycode "^2.1.0" + +tree-kill@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.0.tgz#5846786237b4239014f05db156b643212d4c6f36" + +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + +"true-case-path@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.2.tgz#7ec91130924766c7f573be3020c34f8fdfd00d62" + dependencies: + glob "^6.0.4" + +ts-jest@^22.4.1: + version "22.4.1" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-22.4.1.tgz#69defb2042d689cff9b4244365ef638ecd35f706" + dependencies: + babel-core "^6.24.1" + babel-plugin-istanbul "^4.1.4" + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-preset-jest "^22.4.0" + cpx "^1.5.0" + fs-extra "4.0.3" + jest-config "^22.4.0" + pkg-dir "^2.0.0" + yargs "^11.0.0" + +ts-loader@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-3.2.0.tgz#23211922179b81f7448754b7fdfca45b8374a15a" + dependencies: + chalk "^2.3.0" + enhanced-resolve "^3.0.0" + loader-utils "^1.0.2" + semver "^5.0.1" + +ts-loader@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-3.5.0.tgz#151d004dcddb4cf8e381a3bf9d6b74c2d957a9c0" + dependencies: + chalk "^2.3.0" + enhanced-resolve "^3.0.0" + loader-utils "^1.0.2" + micromatch "^3.1.4" + semver "^5.0.1" + +ts-node@~3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-3.2.2.tgz#bbd28e38af4aaa3e96076c466e1b220197c1a3ce" + dependencies: + arrify "^1.0.0" + chalk "^2.0.0" + diff "^3.1.0" + make-error "^1.1.1" + minimist "^1.2.0" + mkdirp "^0.5.1" + source-map-support "^0.4.0" + tsconfig "^6.0.0" + v8flags "^3.0.0" + yn "^2.0.0" + +tsconfig@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-6.0.0.tgz#6b0e8376003d7af1864f8df8f89dd0059ffcd032" + dependencies: + strip-bom "^3.0.0" + strip-json-comments "^2.0.0" + +tsickle@^0.26.0: + version "0.26.0" + resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.26.0.tgz#40b30a2dd6abcb33b182e37596674bd1cfe4039c" + dependencies: + minimist "^1.2.0" + mkdirp "^0.5.1" + source-map "^0.5.6" + source-map-support "^0.4.2" + +tslib@^1.7.1, tslib@^1.8.0, tslib@^1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.8.1.tgz#6946af2d1d651a7b1863b531d6e5afa41aa44eac" + +tslint-config-prettier@^1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/tslint-config-prettier/-/tslint-config-prettier-1.10.0.tgz#5063c413d43de4f6988c73727f65ecfc239054ec" + +tslint@~5.9.1: + version "5.9.1" + resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.9.1.tgz#1255f87a3ff57eb0b0e1f0e610a8b4748046c9ae" + dependencies: + babel-code-frame "^6.22.0" + builtin-modules "^1.1.1" + chalk "^2.3.0" + commander "^2.12.1" + diff "^3.2.0" + glob "^7.1.1" + js-yaml "^3.7.0" + minimatch "^3.0.4" + resolve "^1.3.2" + semver "^5.3.0" + tslib "^1.8.0" + tsutils "^2.12.1" + +tsscmp@~1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.5.tgz#7dc4a33af71581ab4337da91d85ca5427ebd9a97" + +tsutils@^2.12.1: + version "2.18.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.18.0.tgz#f97385709d348169002c12f6f5fd42c1df13b250" + dependencies: + tslib "^1.8.1" + +tty-browserify@0.0.0, tty-browserify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + dependencies: + safe-buffer "^5.0.1" + +tunnel-agent@~0.4.1: + version "0.4.3" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + dependencies: + prelude-ls "~1.1.2" + +type-is@~1.6.15: + version "1.6.15" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" + dependencies: + media-typer "0.3.0" + mime-types "~2.1.15" + +typedarray@^0.0.6, typedarray@~0.0.5: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + +typescript@~2.5.3: + version "2.5.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.5.3.tgz#df3dcdc38f3beb800d4bc322646b04a3f6ca7f0d" + +typescript@~2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.6.2.tgz#3c5b6fd7f6de0914269027f03c0946758f7673a4" + +ua-parser-js@^0.7.9: + version "0.7.17" + resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.17.tgz#e9ec5f9498b9ec910e7ae3ac626a805c4d09ecac" + +uglify-es@^3.3.4: + version "3.3.7" + resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.7.tgz#d1249af668666aba7cb1163e277455be9eb393cf" + dependencies: + commander "~2.13.0" + source-map "~0.6.1" + +uglify-js@3.3.x: + version "3.3.7" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.3.7.tgz#28463e7c7451f89061d2b235e30925bf5625e14d" + dependencies: + commander "~2.13.0" + source-map "~0.6.1" + +uglify-js@^2.6, uglify-js@^2.8.29: + version "2.8.29" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd" + dependencies: + source-map "~0.5.1" + yargs "~3.10.0" + optionalDependencies: + uglify-to-browserify "~1.0.0" + +uglify-to-browserify@~1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" + +uglifyjs-webpack-plugin@^0.4.6: + version "0.4.6" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-0.4.6.tgz#b951f4abb6bd617e66f63eb891498e391763e309" + dependencies: + source-map "^0.5.6" + uglify-js "^2.8.29" + webpack-sources "^1.0.1" + +uglifyjs-webpack-plugin@^1.1.8: + version "1.2.3" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.3.tgz#bf23197b37a8fc953fecfbcbab66e506f9a0ae72" + dependencies: + cacache "^10.0.4" + find-cache-dir "^1.0.0" + schema-utils "^0.4.5" + serialize-javascript "^1.4.0" + source-map "^0.6.1" + uglify-es "^3.3.4" + webpack-sources "^1.1.0" + worker-farm "^1.5.2" + +uglifyjs-webpack-plugin@^1.2.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.2.tgz#e7516d4367afdb715c3847841eb46f94c45ca2b9" + dependencies: + cacache "^10.0.1" + find-cache-dir "^1.0.0" + schema-utils "^0.4.2" + serialize-javascript "^1.4.0" + source-map "^0.6.1" + uglify-es "^3.3.4" + webpack-sources "^1.1.0" + worker-farm "^1.5.2" + +uid-number@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" + +ultron@1.0.x: + version "1.0.2" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" + +ultron@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" + +umd@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/umd/-/umd-3.0.1.tgz#8ae556e11011f63c2596708a8837259f01b3d60e" + +underscore@~1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.7.0.tgz#6bbaf0877500d36be34ecaa584e0db9fef035209" + +union-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.0.tgz#5c71c34cb5bad5dcebe3ea0cd08207ba5aa1aea4" + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^0.4.3" + +uniq@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" + +uniqid@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1" + dependencies: + macaddress "^0.2.8" + +uniqs@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" + +unique-filename@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.0.tgz#d05f2fe4032560871f30e93cbe735eea201514f3" + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.0.tgz#db6676e7c7cc0629878ff196097c78855ae9f4ab" + dependencies: + imurmurhash "^0.1.4" + +unique-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" + dependencies: + crypto-random-string "^1.0.0" + +universalify@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.1.tgz#fa71badd4437af4c148841e3b3b165f9e9e590b7" + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +upath@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/upath/-/upath-1.0.4.tgz#ee2321ba0a786c50973db043a50b7bcba822361d" + +upper-case@^1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + +url-loader@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.6.2.tgz#a007a7109620e9d988d14bce677a1decb9a993f7" + dependencies: + loader-utils "^1.0.2" + mime "^1.4.1" + schema-utils "^0.3.0" + +url-parse@1.0.x: + version "1.0.5" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b" + dependencies: + querystringify "0.0.x" + requires-port "1.0.x" + +url-parse@^1.1.8: + version "1.2.0" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.2.0.tgz#3a19e8aaa6d023ddd27dcc44cb4fc8f7fec23986" + dependencies: + querystringify "~1.0.0" + requires-port "~1.0.0" + +url@0.11.0, url@^0.11.0, url@~0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +use@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/use/-/use-2.0.2.tgz#ae28a0d72f93bf22422a18a2e379993112dec8e8" + dependencies: + define-property "^0.2.5" + isobject "^3.0.0" + lazy-cache "^2.0.2" + +useragent@^2.1.12: + version "2.2.1" + resolved "https://registry.yarnpkg.com/useragent/-/useragent-2.2.1.tgz#cf593ef4f2d175875e8bb658ea92e18a4fd06d8e" + dependencies: + lru-cache "2.2.x" + tmp "0.0.x" + +util-deprecate@^1.0.2, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + +util.promisify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030" + dependencies: + define-properties "^1.1.2" + object.getownpropertydescriptors "^2.0.3" + +util@0.10.3, util@^0.10.3, util@~0.10.1: + version "0.10.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + dependencies: + inherits "2.0.1" + +utila@~0.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.3.3.tgz#d7e8e7d7e309107092b05f8d9688824d633a4226" + +utila@~0.4: + version "0.4.0" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + +uuid@^3.0.0, uuid@^3.0.1, uuid@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" + +uuid@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" + +uws@~0.14.4: + version "0.14.5" + resolved "https://registry.yarnpkg.com/uws/-/uws-0.14.5.tgz#67aaf33c46b2a587a5f6666d00f7691328f149dc" + +v8flags@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.0.1.tgz#dce8fc379c17d9f2c9e9ed78d89ce00052b1b76b" + dependencies: + homedir-polyfill "^1.0.1" + +validate-npm-package-license@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" + dependencies: + spdx-correct "~1.0.0" + spdx-expression-parse "~1.0.0" + +validator@^9.1.2: + version "9.4.0" + resolved "https://registry.yarnpkg.com/validator/-/validator-9.4.0.tgz#c503ef88f7e6b8fb7688599267b309482d81ae60" + +vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + +velocity-animate@^1.4.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/velocity-animate/-/velocity-animate-1.5.1.tgz#606837047bab8fbfb59a636d1d82ecc3f7bd71a6" + +velocity-react@^1.3.1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/velocity-react/-/velocity-react-1.3.3.tgz#d6d47276cfc8be2a75623879b20140ac58c1b82b" + dependencies: + lodash "^3.10.1" + prop-types "^15.5.8" + react-transition-group "^1.1.2" + velocity-animate "^1.4.0" + +vendors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22" + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +vlq@^0.2.1: + version "0.2.3" + resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.3.tgz#8f3e4328cf63b1540c0d67e1b2778386f8975b26" + +vm-browserify@0.0.4, vm-browserify@~0.0.1: + version "0.0.4" + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" + dependencies: + indexof "0.0.1" + +void-elements@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" + +w3c-hr-time@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" + dependencies: + browser-process-hrtime "^0.1.2" + +wait-sync@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wait-sync/-/wait-sync-1.0.1.tgz#c98038819ecf7b4eb20d5b576cdb99b3a864d555" + dependencies: + deasync "^0.1.8" + +walker@~1.0.5: + version "1.0.7" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb" + dependencies: + makeerror "1.0.x" + +wallaby-webpack@^3.9.5: + version "3.9.5" + resolved "https://registry.yarnpkg.com/wallaby-webpack/-/wallaby-webpack-3.9.5.tgz#b67eaec3a1fd13921ced7087c712b5314a57363f" + dependencies: + graceful-fs "^4.1.3" + lodash "^3.5.0" + minimatch "3.0.3" + +warning@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c" + dependencies: + loose-envify "^1.0.0" + +watch@~0.18.0: + version "0.18.0" + resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986" + dependencies: + exec-sh "^0.2.0" + minimist "^1.2.0" + +watchpack@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.4.0.tgz#4a1472bcbb952bd0a9bb4036801f954dfb39faac" + dependencies: + async "^2.1.2" + chokidar "^1.7.0" + graceful-fs "^4.1.2" + +wbuf@^1.1.0, wbuf@^1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.2.tgz#d697b99f1f59512df2751be42769c1580b5801fe" + dependencies: + minimalistic-assert "^1.0.0" + +webdriver-js-extender@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/webdriver-js-extender/-/webdriver-js-extender-1.0.0.tgz#81c533a9e33d5bfb597b4e63e2cdb25b54777515" + dependencies: + "@types/selenium-webdriver" "^2.53.35" + selenium-webdriver "^2.53.2" + +webdriver-manager@^12.0.6: + version "12.0.6" + resolved "https://registry.yarnpkg.com/webdriver-manager/-/webdriver-manager-12.0.6.tgz#3df1a481977010b4cbf8c9d85c7a577828c0e70b" + dependencies: + adm-zip "^0.4.7" + chalk "^1.1.1" + del "^2.2.0" + glob "^7.0.3" + ini "^1.3.4" + minimist "^1.2.0" + q "^1.4.1" + request "^2.78.0" + rimraf "^2.5.2" + semver "^5.3.0" + xml2js "^0.4.17" + +webidl-conversions@^4.0.1, webidl-conversions@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" + +webpack-core@^0.6.8: + version "0.6.9" + resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.9.tgz#fc571588c8558da77be9efb6debdc5a3b172bdc2" + dependencies: + source-list-map "~0.1.7" + source-map "~0.4.1" + +webpack-dev-middleware@1.12.2, webpack-dev-middleware@^1.12.2, webpack-dev-middleware@~1.12.0: + version "1.12.2" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz#f8fc1120ce3b4fc5680ceecb43d777966b21105e" + dependencies: + memory-fs "~0.4.1" + mime "^1.5.0" + path-is-absolute "^1.0.0" + range-parser "^1.0.3" + time-stamp "^2.0.0" + +webpack-dev-server@~2.11.0: + version "2.11.2" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-2.11.2.tgz#1f4f4c78bf1895378f376815910812daf79a216f" + dependencies: + ansi-html "0.0.7" + array-includes "^3.0.3" + bonjour "^3.5.0" + chokidar "^2.0.0" + compression "^1.5.2" + connect-history-api-fallback "^1.3.0" + debug "^3.1.0" + del "^3.0.0" + express "^4.16.2" + html-entities "^1.2.0" + http-proxy-middleware "~0.17.4" + import-local "^1.0.0" + internal-ip "1.2.0" + ip "^1.1.5" + killable "^1.0.0" + loglevel "^1.4.1" + opn "^5.1.0" + portfinder "^1.0.9" + selfsigned "^1.9.1" + serve-index "^1.7.2" + sockjs "0.3.19" + sockjs-client "1.1.4" + spdy "^3.4.1" + strip-ansi "^3.0.0" + supports-color "^5.1.0" + webpack-dev-middleware "1.12.2" + yargs "6.6.0" + +webpack-hot-middleware@^2.21.0: + version "2.21.2" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.21.2.tgz#2e2aa65563b8b32546b67e53b5a9667dcd80f327" + dependencies: + ansi-html "0.0.7" + html-entities "^1.2.0" + querystring "^0.2.0" + strip-ansi "^3.0.0" + +webpack-merge@^4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.1.1.tgz#f1197a0a973e69c6fbeeb6d658219aa8c0c13555" + dependencies: + lodash "^4.17.4" + +webpack-sources@^1.0.0, webpack-sources@^1.0.1, webpack-sources@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.1.0.tgz#a101ebae59d6507354d71d8013950a3a8b7a5a54" + dependencies: + source-list-map "^2.0.0" + source-map "~0.6.1" + +webpack-subresource-integrity@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/webpack-subresource-integrity/-/webpack-subresource-integrity-1.0.3.tgz#c0606d40090b070cde428bec8df3603216e472eb" + dependencies: + webpack-core "^0.6.8" + +webpack@3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.6.0.tgz#a89a929fbee205d35a4fa2cc487be9cbec8898bc" + dependencies: + acorn "^5.0.0" + acorn-dynamic-import "^2.0.0" + ajv "^5.1.5" + ajv-keywords "^2.0.0" + async "^2.1.2" + enhanced-resolve "^3.4.0" + escope "^3.6.0" + interpret "^1.0.0" + json-loader "^0.5.4" + json5 "^0.5.1" + loader-runner "^2.3.0" + loader-utils "^1.1.0" + memory-fs "~0.4.1" + mkdirp "~0.5.0" + node-libs-browser "^2.0.0" + source-map "^0.5.3" + supports-color "^4.2.1" + tapable "^0.2.7" + uglifyjs-webpack-plugin "^0.4.6" + watchpack "^1.4.0" + webpack-sources "^1.0.1" + yargs "^8.0.2" + +webpack@^3.11.0, webpack@~3.11.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.11.0.tgz#77da451b1d7b4b117adaf41a1a93b5742f24d894" + dependencies: + acorn "^5.0.0" + acorn-dynamic-import "^2.0.0" + ajv "^6.1.0" + ajv-keywords "^3.1.0" + async "^2.1.2" + enhanced-resolve "^3.4.0" + escope "^3.6.0" + interpret "^1.0.0" + json-loader "^0.5.4" + json5 "^0.5.1" + loader-runner "^2.3.0" + loader-utils "^1.1.0" + memory-fs "~0.4.1" + mkdirp "~0.5.0" + node-libs-browser "^2.0.0" + source-map "^0.5.3" + supports-color "^4.2.1" + tapable "^0.2.7" + uglifyjs-webpack-plugin "^0.4.6" + watchpack "^1.4.0" + webpack-sources "^1.0.1" + yargs "^8.0.2" + +websocket-driver@>=0.5.1: + version "0.7.0" + resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.0.tgz#0caf9d2d755d93aee049d4bdd0d3fe2cca2a24eb" + dependencies: + http-parser-js ">=0.4.0" + websocket-extensions ">=0.1.1" + +websocket-extensions@>=0.1.1: + version "0.1.3" + resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" + +whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3" + dependencies: + iconv-lite "0.4.19" + +whatwg-fetch@>=0.10.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" + +whatwg-url@^6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.4.0.tgz#08fdf2b9e872783a7a1f6216260a1d66cc722e08" + dependencies: + lodash.sortby "^4.7.0" + tr46 "^1.0.0" + webidl-conversions "^4.0.1" + +when@^3.7.7: + version "3.7.8" + resolved "https://registry.yarnpkg.com/when/-/when-3.7.8.tgz#c7130b6a7ea04693e842cdc9e7a1f2aa39a39f82" + +when@~3.6.x: + version "3.6.4" + resolved "https://registry.yarnpkg.com/when/-/when-3.6.4.tgz#473b517ec159e2b85005497a13983f095412e34e" + +whet.extend@~0.9.9: + version "0.9.9" + resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1" + +which-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" + +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + +which@1, which@^1.2.1, which@^1.2.10, which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" + dependencies: + isexe "^2.0.0" + +wide-align@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + dependencies: + string-width "^1.0.2" + +window-size@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" + +wordwrap@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" + +wordwrap@~0.0.2: + version "0.0.3" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" + +wordwrap@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + +worker-farm@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.5.2.tgz#32b312e5dc3d5d45d79ef44acc2587491cd729ae" + dependencies: + errno "^0.1.4" + xtend "^4.0.1" + +wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + +write-file-atomic@^2.0.0, write-file-atomic@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab" + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + +ws@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-3.0.0.tgz#98ddb00056c8390cb751e7788788497f99103b6c" + dependencies: + safe-buffer "~5.0.1" + ultron "~1.1.0" + +ws@^1.0.1: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.5.tgz#cbd9e6e75e09fc5d2c90015f21f0c40875e0dd51" + dependencies: + options ">=0.0.5" + ultron "1.0.x" + +ws@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-4.1.0.tgz#a979b5d7d4da68bf54efe0408967c324869a7289" + dependencies: + async-limiter "~1.0.0" + safe-buffer "~5.1.0" + +ws@~3.3.1: + version "3.3.3" + resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" + dependencies: + async-limiter "~1.0.0" + safe-buffer "~5.1.0" + ultron "~1.1.0" + +xdg-basedir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" + +xml-char-classes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d" + +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + +xml2js@0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.4.tgz#3111010003008ae19240eba17497b57c729c555d" + dependencies: + sax "0.6.x" + xmlbuilder ">=1.0.0" + +xml2js@^0.4.17: + version "0.4.19" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" + dependencies: + sax ">=0.6.0" + xmlbuilder "~9.0.1" + +xml@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5" + +xmlbuilder@>=1.0.0, xmlbuilder@~9.0.1: + version "9.0.4" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.4.tgz#519cb4ca686d005a8420d3496f3f0caeecca580f" + +xmlhttprequest-ssl@~1.5.4: + version "1.5.5" + resolved "https://registry.yarnpkg.com/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz#c2876b06168aadc40e57d97e81191ac8f4398b3e" + +xregexp@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/xregexp/-/xregexp-2.0.0.tgz#52a63e56ca0b84a7f3a5f3d61872f126ad7a5943" + +xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + +xtend@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" + dependencies: + object-keys "~0.4.0" + +xxhashjs@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/xxhashjs/-/xxhashjs-0.2.1.tgz#9bbe9be896142976dfa34c061b2d068c43d30de0" + dependencies: + cuint latest + +y18n@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" + +y18n@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + +yargs-parser@^4.2.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c" + dependencies: + camelcase "^3.0.0" + +yargs-parser@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" + dependencies: + camelcase "^3.0.0" + +yargs-parser@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" + dependencies: + camelcase "^4.1.0" + +yargs-parser@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-8.1.0.tgz#f1376a33b6629a5d063782944da732631e966950" + dependencies: + camelcase "^4.1.0" + +yargs-parser@^9.0.2: + version "9.0.2" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-9.0.2.tgz#9ccf6a43460fe4ed40a9bb68f48d43b8a68cc077" + dependencies: + camelcase "^4.1.0" + +yargs@6.6.0: + version "6.6.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" + dependencies: + camelcase "^3.0.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^1.4.0" + read-pkg-up "^1.0.1" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^1.0.2" + which-module "^1.0.0" + y18n "^3.2.1" + yargs-parser "^4.2.0" + +yargs@^10.0.3: + version "10.1.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-10.1.2.tgz#454d074c2b16a51a43e2fb7807e4f9de69ccb5c5" + dependencies: + cliui "^4.0.0" + decamelize "^1.1.1" + find-up "^2.1.0" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^8.1.0" + +yargs@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-11.0.0.tgz#c052931006c5eee74610e5fc0354bedfd08a201b" + dependencies: + cliui "^4.0.0" + decamelize "^1.1.1" + find-up "^2.1.0" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^9.0.2" + +yargs@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" + dependencies: + camelcase "^3.0.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^1.4.0" + read-pkg-up "^1.0.1" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^1.0.2" + which-module "^1.0.0" + y18n "^3.2.1" + yargs-parser "^5.0.0" + +yargs@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360" + dependencies: + camelcase "^4.1.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + read-pkg-up "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^7.0.0" + +yargs@~3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" + dependencies: + camelcase "^1.0.2" + cliui "^2.1.0" + decamelize "^1.0.0" + window-size "0.1.0" + +yauzl@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.4.1.tgz#9528f442dab1b2284e58b4379bb194e22e0c4005" + dependencies: + fd-slicer "~1.0.1" + +yauzl@2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.8.0.tgz#79450aff22b2a9c5a41ef54e02db907ccfbf9ee2" + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.0.1" + +yeast@0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" + +yn@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/yn/-/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a" + +zone.js@^0.8.19, zone.js@^0.8.20: + version "0.8.20" + resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.8.20.tgz#a218c48db09464b19ff6fc8f0d4bb5b1046e185d" |