├── .dockerignore
├── .eslintignore
├── .eslintrc.js
├── .github
└── ISSUE_TEMPLATE
│ ├── bug_report.md
│ ├── feature_request.md
│ └── question.md
├── .gitignore
├── .idea
├── inspectionProfiles
│ └── Project_Default.xml
├── misc.xml
├── modules.xml
├── streamsheets.iml
└── vcs.xml
├── .prettierrc.yml
├── .travis.yml
├── .vscode
├── launch.json
└── settings.json
├── .yarnrc
├── CONTRIBUTING.md
├── LICENSE
├── README.md
├── assets
├── title.png
└── video.png
├── deployment
├── apply-upgrade.sh
├── rpi
│ └── installer
│ │ ├── Dockerfile.rpi
│ │ ├── build-installer.sh
│ │ ├── docker-compose
│ │ └── docker-compose.prod.yml
│ │ ├── install.sh
│ │ ├── start.sh
│ │ ├── stop.sh
│ │ └── update.sh
├── single
│ ├── Dockerfile
│ ├── Dockerfile.rpi
│ ├── README.md
│ ├── build.sh
│ ├── clear.sh
│ ├── init.json
│ ├── installer-rpi
│ │ ├── Dockerfile
│ │ ├── build-installer.sh
│ │ ├── docker-compose
│ │ │ ├── docker-compose.dev.yml
│ │ │ └── docker-compose.prod.yml
│ │ ├── install.sh
│ │ └── scripts
│ │ │ ├── start.dev.sh
│ │ │ ├── start.sh
│ │ │ ├── stop.dev.sh
│ │ │ ├── stop.sh
│ │ │ ├── update.dev.sh
│ │ │ └── update.sh
│ ├── installer
│ │ ├── Dockerfile
│ │ ├── build-installer.sh
│ │ ├── install.sh
│ │ ├── linux
│ │ │ ├── start.dev.sh
│ │ │ ├── start.sh
│ │ │ ├── stop.dev.sh
│ │ │ ├── stop.sh
│ │ │ ├── update.dev.sh
│ │ │ └── update.sh
│ │ ├── macos
│ │ │ ├── start.dev.sh
│ │ │ ├── start.sh
│ │ │ ├── stop.dev.sh
│ │ │ ├── stop.sh
│ │ │ ├── update.dev.sh
│ │ │ └── update.sh
│ │ └── win
│ │ │ ├── start.bat
│ │ │ ├── start.dev.bat
│ │ │ ├── stop.bat
│ │ │ ├── stop.dev.bat
│ │ │ ├── update.bat
│ │ │ └── update.dev.bat
│ ├── mongodb
│ │ └── mongod.conf
│ ├── mosquitto-default-credentials
│ │ └── pw.txt
│ ├── mosquitto-default
│ │ └── mosquitto.conf
│ ├── mosquitto
│ │ ├── mosquitto.conf
│ │ └── pw.txt
│ ├── nginx
│ │ └── nginx.conf
│ ├── redis
│ │ └── redis.conf
│ ├── services
│ │ ├── gateway
│ │ │ └── start.js
│ │ ├── service-graphs
│ │ │ └── start.js
│ │ ├── service-machines
│ │ │ └── start.js
│ │ ├── service-streams
│ │ │ └── start.js
│ │ └── webui
│ │ │ └── start.js
│ ├── start-all.sh
│ ├── start.sh
│ ├── streamsheets.env
│ ├── streamsheets.sh
│ ├── supervisord.conf
│ ├── supervisord.rpi.conf
│ └── wait-for-database.sh
├── slim
│ ├── build.sh
│ └── start.sh
└── standard
│ ├── installer
│ ├── .dockerignore
│ ├── .gitignore
│ ├── Dockerfile
│ ├── README.md
│ ├── build-installer.sh
│ ├── install.sh
│ └── services
│ │ ├── README.md
│ │ ├── docker-compose
│ │ ├── config
│ │ │ └── init.json
│ │ ├── docker-compose.dev.avro-schema-registry.yml
│ │ ├── docker-compose.dev.database-seed.yml
│ │ ├── docker-compose.dev.database-ui.yml
│ │ ├── docker-compose.dev.debug.yml
│ │ ├── docker-compose.dev.ext.yml
│ │ ├── docker-compose.dev.hivemq.yml
│ │ ├── docker-compose.dev.integration.tests.yml
│ │ ├── docker-compose.dev.kafka.yml
│ │ ├── docker-compose.dev.ldap.yml
│ │ ├── docker-compose.dev.logging.yml
│ │ ├── docker-compose.dev.logspout.yml
│ │ ├── docker-compose.dev.mongodb.yml
│ │ ├── docker-compose.dev.mosquitto.yml
│ │ ├── docker-compose.dev.node-red.yml
│ │ ├── docker-compose.dev.yml
│ │ ├── docker-compose.prod.yml
│ │ ├── license
│ │ │ └── .gitignore
│ │ ├── mosquitto-internal
│ │ │ ├── mosquitto.conf
│ │ │ └── pw.txt
│ │ ├── mosquitto
│ │ │ ├── mosquitto.conf
│ │ │ └── pw.txt
│ │ ├── nginx
│ │ │ └── nginx.conf
│ │ └── service-streams
│ │ │ └── config.json
│ │ └── scripts
│ │ ├── linux
│ │ ├── migrate.sh
│ │ ├── start.dev.sh
│ │ └── start.sh
│ │ ├── macos
│ │ ├── migrate.sh
│ │ ├── start.dev.sh
│ │ └── start.sh
│ │ └── win
│ │ ├── migrate.bat
│ │ ├── start.bat
│ │ └── start.dev.bat
│ └── intergration-tests-setup
│ └── start-integration-tests-setup.sh
├── notes
└── roadmap
│ └── README.md
├── package.json
├── packages
├── commons
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── clone.js
│ │ ├── convert.js
│ │ ├── functions.js
│ │ ├── jsonpath.js
│ │ ├── memoize.js
│ │ ├── moduleResolver.js
│ │ ├── proc.js
│ │ ├── requireFile.js
│ │ ├── serialnumber.js
│ │ └── sleep.js
│ └── test
│ │ ├── convert.test.js
│ │ ├── jest.config.js
│ │ ├── jsonpath.test.js
│ │ └── serialnumber.test.js
├── error-codes
│ ├── .eslintignore
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── ErrorInfo.js
│ │ ├── Errors.js
│ │ ├── FunctionErrors.js
│ │ ├── HttpErrors.js
│ │ ├── LocalizedError.js
│ │ ├── codes.js
│ │ └── i18n
│ │ │ ├── de.js
│ │ │ ├── en.js
│ │ │ └── index.js
│ └── test
│ │ └── src
│ │ ├── Errors.test.js
│ │ └── HttpErrors.test.js
├── eslint-config
│ ├── index.js
│ ├── package.json
│ └── react.js
├── functions
│ ├── README.md
│ ├── help
│ │ └── index.js
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── codepages
│ │ │ ├── UniCodeMapper.js
│ │ │ ├── cp1252.js
│ │ │ ├── errors
│ │ │ │ └── code.js
│ │ │ └── index.js
│ │ ├── factory
│ │ │ ├── FunctionFactory.js
│ │ │ └── streamfunc.js
│ │ ├── function-type.ts
│ │ ├── functions
│ │ │ ├── crypto
│ │ │ │ ├── crypto.js
│ │ │ │ ├── help.js
│ │ │ │ └── index.js
│ │ │ ├── database
│ │ │ │ ├── ConditionRange.js
│ │ │ │ ├── database.js
│ │ │ │ ├── help.js
│ │ │ │ └── index.js
│ │ │ ├── date.ts
│ │ │ ├── date
│ │ │ │ ├── date.js
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ ├── mstoserial.js
│ │ │ │ └── serialtoms.js
│ │ │ ├── drawing
│ │ │ │ ├── bar.js
│ │ │ │ ├── help.js
│ │ │ │ └── index.js
│ │ │ ├── engineering.ts
│ │ │ ├── engineering
│ │ │ │ ├── buffer.js
│ │ │ │ ├── engineering.js
│ │ │ │ ├── help.js
│ │ │ │ └── index.js
│ │ │ ├── http
│ │ │ │ ├── help.js
│ │ │ │ ├── http.js
│ │ │ │ ├── index.js
│ │ │ │ └── utils.js
│ │ │ ├── index.js
│ │ │ ├── info
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ └── info.js
│ │ │ ├── information.ts
│ │ │ ├── logical.ts
│ │ │ ├── logical
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ └── logical.js
│ │ │ ├── lookup.ts
│ │ │ ├── lookup
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ └── lookup.js
│ │ │ ├── math
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ ├── math.js
│ │ │ │ └── sum.js
│ │ │ ├── maths.ts
│ │ │ ├── olap
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ └── olap.js
│ │ │ ├── parse
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ ├── parse.js
│ │ │ │ └── utils.js
│ │ │ ├── stack.ts
│ │ │ ├── stack
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ ├── stack.js
│ │ │ │ ├── stackhelper.js
│ │ │ │ ├── stackupdater.js
│ │ │ │ └── stackupsert.js
│ │ │ ├── statistic.ts
│ │ │ ├── statistical
│ │ │ │ ├── help.js
│ │ │ │ ├── ifs.js
│ │ │ │ ├── index.js
│ │ │ │ ├── max.js
│ │ │ │ ├── min.js
│ │ │ │ └── statistical.js
│ │ │ ├── streams
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ ├── kafkacommand.js
│ │ │ │ ├── kafkaquery.js
│ │ │ │ ├── produce.js
│ │ │ │ ├── request.js
│ │ │ │ └── respond.js
│ │ │ ├── streamsheet
│ │ │ │ ├── array.js
│ │ │ │ ├── await.js
│ │ │ │ ├── calc.js
│ │ │ │ ├── clearcells.js
│ │ │ │ ├── colors.js
│ │ │ │ ├── continueAt.js
│ │ │ │ ├── counters.js
│ │ │ │ ├── delete.js
│ │ │ │ ├── deletecells.js
│ │ │ │ ├── detectchange.js
│ │ │ │ ├── dictionary.js
│ │ │ │ ├── execute.js
│ │ │ │ ├── feedinbox.js
│ │ │ │ ├── goto.js
│ │ │ │ ├── help.js
│ │ │ │ ├── inbox.js
│ │ │ │ ├── inboxdata.js
│ │ │ │ ├── inboxjson.js
│ │ │ │ ├── inboxmetadata.js
│ │ │ │ ├── index.js
│ │ │ │ ├── json.js
│ │ │ │ ├── jsonrange.js
│ │ │ │ ├── jsonvalue.js
│ │ │ │ ├── loop.js
│ │ │ │ ├── outbox.js
│ │ │ │ ├── outboxdata.js
│ │ │ │ ├── outboxgetids.js
│ │ │ │ ├── outboxjson.js
│ │ │ │ ├── range.js
│ │ │ │ ├── read.js
│ │ │ │ ├── refresh.js
│ │ │ │ ├── return.js
│ │ │ │ ├── select.js
│ │ │ │ ├── setcycletime.js
│ │ │ │ ├── setphase.js
│ │ │ │ ├── sleep.js
│ │ │ │ ├── subtree.js
│ │ │ │ ├── table.js
│ │ │ │ ├── triggerstep.js
│ │ │ │ ├── values.js
│ │ │ │ └── write.js
│ │ │ ├── text.ts
│ │ │ ├── text
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ ├── split.js
│ │ │ │ └── text.js
│ │ │ ├── timeseries
│ │ │ │ ├── aggregations.js
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ ├── stateListener.js
│ │ │ │ ├── timeaggregate.js
│ │ │ │ ├── timequery.js
│ │ │ │ ├── timestore.js
│ │ │ │ ├── transform.js
│ │ │ │ ├── utils.js
│ │ │ │ └── whereparser.js
│ │ │ └── url
│ │ │ │ ├── help.js
│ │ │ │ ├── index.js
│ │ │ │ └── url.js
│ │ ├── logger.js
│ │ ├── utils
│ │ │ ├── AsyncRequest.js
│ │ │ ├── Criterion.js
│ │ │ ├── aggregations.js
│ │ │ ├── arrayspread.js
│ │ │ ├── calculate.js
│ │ │ ├── criteria.js
│ │ │ ├── date.js
│ │ │ ├── httprequest.js
│ │ │ ├── inboxread.js
│ │ │ ├── index.js
│ │ │ ├── jsonbuilder.js
│ │ │ ├── jsonflatten.js
│ │ │ ├── messages.js
│ │ │ ├── publishinternal.js
│ │ │ ├── response.js
│ │ │ ├── runner.js
│ │ │ ├── sheet.js
│ │ │ ├── terms.js
│ │ │ ├── types.js
│ │ │ ├── validation.js
│ │ │ ├── values.js
│ │ │ └── wildcards.js
│ │ └── wip
│ │ │ ├── function-type.1.ts
│ │ │ ├── function-type.2.ts
│ │ │ ├── function-type.3.ts
│ │ │ ├── function-type.4.ts
│ │ │ ├── function-type.5.ts
│ │ │ ├── function-type.6.ts
│ │ │ ├── function-type.7.ts
│ │ │ ├── logial.1.ts
│ │ │ ├── logial.2.ts
│ │ │ └── logical.3.ts
│ └── test
│ │ ├── _data
│ │ ├── messages.json
│ │ └── sheets.json
│ │ ├── crypto
│ │ └── crypto.test.js
│ │ ├── database
│ │ └── database.test.js
│ │ ├── date
│ │ ├── date.test.js
│ │ └── mstoserial.test.js
│ │ ├── engineering
│ │ └── engineering.test.js
│ │ ├── error.test.js
│ │ ├── info
│ │ └── info.test.js
│ │ ├── jest.config.js
│ │ ├── logical
│ │ └── logical.test.js
│ │ ├── lookup
│ │ └── lookup.test.js
│ │ ├── machine
│ │ └── FunctionsWithStreamSheetTrigger.test.js
│ │ ├── math
│ │ ├── math.test.js
│ │ └── sum.test.js
│ │ ├── setup.js
│ │ ├── stack
│ │ └── stack.test.js
│ │ ├── statistical
│ │ ├── ifs.test.js
│ │ ├── max.test.js
│ │ ├── min.test.js
│ │ └── statistical.test.js
│ │ ├── streamsheet
│ │ ├── array.test.js
│ │ ├── await.test.js
│ │ ├── calc.test.js
│ │ ├── clearcells.test.js
│ │ ├── colors.test.js
│ │ ├── continue.test.js
│ │ ├── copyvalues.test.js
│ │ ├── counters.test.js
│ │ ├── delete.test.js
│ │ ├── deletecells.test.js
│ │ ├── detectchange.test.js
│ │ ├── dictionary.test.js
│ │ ├── execute.test.js
│ │ ├── feedinbox.test.js
│ │ ├── getcycletime.test.js
│ │ ├── goto.test.js
│ │ ├── inboxdata.test.js
│ │ ├── inboxjson.test.js
│ │ ├── inboxmetadata.test.js
│ │ ├── json.test.js
│ │ ├── jsonrange.test.js
│ │ ├── jsonvalue.test.js
│ │ ├── loop.test.js
│ │ ├── movevalues.test.js
│ │ ├── outboxdata.test.js
│ │ ├── outboxgetids.test.js
│ │ ├── outboxjson.test.js
│ │ ├── outboxmetadata.test.js
│ │ ├── produce.test.js
│ │ ├── range.test.js
│ │ ├── read.test.js
│ │ ├── requests.test.js
│ │ ├── return.test.js
│ │ ├── setcycletime.test.js
│ │ ├── setphase.test.js
│ │ ├── setvalue.test.js
│ │ ├── sleep.test.js
│ │ ├── subtree.test.js
│ │ ├── swapvalues.test.js
│ │ ├── table
│ │ │ ├── tableget.test.js
│ │ │ ├── tableordercolumn.test.js
│ │ │ └── tableupdate.test.js
│ │ ├── time
│ │ │ ├── timequery.test.js
│ │ │ ├── timestore.test.js
│ │ │ └── utils.js
│ │ ├── timeaggregate.test.js
│ │ ├── triggerstep.test.js
│ │ └── write.test.js
│ │ ├── text
│ │ ├── split.test.js
│ │ └── text.test.js
│ │ ├── utilities.js
│ │ └── utils
│ │ ├── AsyncRequest.test.js
│ │ ├── Criterion.test.js
│ │ ├── aggregations.test.js
│ │ ├── jsonbuilder.test.js
│ │ ├── runFunction.test.js
│ │ ├── types.test.js
│ │ └── wildcards.test.js
├── gateway-client-node
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ └── client
│ │ │ └── node
│ │ │ └── NodeGatewayClient.js
│ └── test
│ │ └── client
│ │ ├── config
│ │ └── config.json
│ │ ├── helper
│ │ └── helper.js
│ │ └── node
│ │ └── NodeGatewayClient.test.js
├── gateway-client-proxy
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── karma.conf.js
│ ├── package.json
│ ├── src
│ │ └── client
│ │ │ └── proxy
│ │ │ ├── GatewayClientWorker.js
│ │ │ └── WebWorkerGatewayClientProxy.js
│ └── webpack.config.js
├── gateway-client
│ ├── .eslintignore
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── karma.conf.js
│ ├── package.json
│ ├── src
│ │ ├── client
│ │ │ ├── apis
│ │ │ │ ├── GatewayAPI.js
│ │ │ │ ├── HTTPGatewayAPI.js
│ │ │ │ └── WebSocketGatewayAPI.js
│ │ │ ├── base
│ │ │ │ └── BaseGatewayClient.js
│ │ │ ├── constants
│ │ │ │ └── ErrorCodes.js
│ │ │ └── web
│ │ │ │ └── WebGatewayClient.js
│ │ └── requests
│ │ │ ├── Request.js
│ │ │ ├── http
│ │ │ ├── HTTPRequest.js
│ │ │ └── HTTPRequests.js
│ │ │ └── sockets
│ │ │ ├── WebSocketRequest.js
│ │ │ └── WebSocketRequests.js
│ ├── test
│ │ ├── .eslintrc.json
│ │ ├── client
│ │ │ ├── base
│ │ │ │ └── BaseGatewayClient.test.js
│ │ │ ├── config
│ │ │ │ └── config.json
│ │ │ ├── helper
│ │ │ │ ├── graph.json
│ │ │ │ ├── helper.js
│ │ │ │ └── tests.js
│ │ │ └── web
│ │ │ │ └── WebGatewayClient.test.js
│ │ └── requests
│ │ │ ├── Request.test.js
│ │ │ └── http
│ │ │ └── HTTPRequest.test.js
│ └── webpack.config.js
├── gateway-plugins
│ └── webhook-server
│ │ ├── .gitignore
│ │ ├── index.js
│ │ ├── package.json
│ │ └── src
│ │ ├── WebhookServer.js
│ │ ├── WebhookServerApi.js
│ │ ├── WebhookServerGraphQL.js
│ │ ├── WebhookServerMiddleware.js
│ │ └── WebhookServerRepository.js
├── gateway
│ ├── .eslintignore
│ ├── .eslintrc.js
│ ├── .gitignore
│ ├── Dockerfile
│ ├── README.md
│ ├── config
│ │ ├── config-development.json
│ │ ├── config-production.json
│ │ └── init.json
│ ├── examples
│ │ └── init.js
│ ├── index.ts
│ ├── meta.json
│ ├── package.json
│ ├── public
│ │ └── .gitignore
│ ├── src
│ │ ├── Auth.ts
│ │ ├── authorization.ts
│ │ ├── common.d.ts
│ │ ├── config.js
│ │ ├── context.ts
│ │ ├── errors
│ │ │ ├── AuthError.js
│ │ │ ├── ErrorCodes.js
│ │ │ ├── InputError.js
│ │ │ ├── InternalError.js
│ │ │ ├── MongoError.js
│ │ │ └── index.js
│ │ ├── export-import
│ │ │ ├── ExportApi.ts
│ │ │ ├── ImportApi.ts
│ │ │ ├── index.ts
│ │ │ └── types.ts
│ │ ├── glue.ts
│ │ ├── graphql
│ │ │ ├── GraphQLServer.js
│ │ │ ├── Payload.ts
│ │ │ └── resolvers.js
│ │ ├── initializer.js
│ │ ├── machine
│ │ │ ├── MachineApi.ts
│ │ │ ├── MachineServiceProxy.ts
│ │ │ ├── index.ts
│ │ │ └── types.ts
│ │ ├── rest
│ │ │ ├── APIRouter.js
│ │ │ ├── APIRouterRepositoryServer.js
│ │ │ ├── DefaultApp.js
│ │ │ ├── error
│ │ │ │ └── Error.js
│ │ │ ├── routes
│ │ │ │ ├── AuthRoutes.js
│ │ │ │ ├── BackupRestoreRoutes.js
│ │ │ │ ├── ConfigRoutes.js
│ │ │ │ ├── ErrorRoutes.js
│ │ │ │ ├── IndexRoutes.js
│ │ │ │ ├── MetaInformationRoutes.js
│ │ │ │ ├── NewsletterRoutes.js
│ │ │ │ └── SetupRoutes.js
│ │ │ └── start.ts
│ │ ├── services
│ │ │ └── gateway
│ │ │ │ ├── GatewayService.js
│ │ │ │ ├── MachineServiceMessageRouter.js
│ │ │ │ └── RoundRobinMap.js
│ │ ├── stream
│ │ │ ├── Stream.ts
│ │ │ ├── StreamApi.ts
│ │ │ ├── StreamRepositoryProxy.ts
│ │ │ ├── index.ts
│ │ │ └── types.d.ts
│ │ ├── streamsheets.d.ts
│ │ ├── user
│ │ │ ├── Document.ts
│ │ │ ├── Functional.ts
│ │ │ ├── UserApi.ts
│ │ │ ├── UserRepository.ts
│ │ │ ├── index.ts
│ │ │ └── types.d.ts
│ │ ├── utils
│ │ │ ├── Migration.js
│ │ │ ├── index.js
│ │ │ └── logger.js
│ │ └── ws
│ │ │ ├── ProxyConnection.ts
│ │ │ ├── RedisConnection.ts
│ │ │ ├── ServerConnection.ts
│ │ │ ├── SocketServer.ts
│ │ │ ├── StreamWSProxy.ts
│ │ │ ├── interceptors
│ │ │ ├── GraphServerInterceptor.js
│ │ │ ├── Interceptor.js
│ │ │ ├── InterceptorChain.js
│ │ │ ├── MachineServerInterceptor.js
│ │ │ └── UserPersistence.js
│ │ │ └── messages
│ │ │ └── Messages.js
│ ├── start.js
│ ├── test
│ │ ├── .eslintrc.json
│ │ ├── config
│ │ │ └── config.js
│ │ ├── glue.test.ts
│ │ ├── helper
│ │ │ ├── BeforeHook.js
│ │ │ └── Utils.js
│ │ ├── routes
│ │ │ └── IndexRoutes.test.js
│ │ ├── tsconfig.json
│ │ └── ws
│ │ │ └── InterceptorChain.test.js
│ ├── tsconfig-base.json
│ ├── tsconfig.json
│ └── webpack.config.js
├── http-client
│ ├── index.js
│ ├── package.json
│ └── src
│ │ └── HTTPClient.js
├── idgenerator
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ └── src
│ │ └── generators
│ │ └── IdGenerator.js
├── jsg-core
│ ├── .babelrc
│ ├── .eslintignore
│ ├── .eslintrc.js
│ ├── .gitignore
│ ├── README.md
│ ├── example-websocket
│ │ └── node-graph.js
│ ├── gettingstarted
│ │ ├── index.html
│ │ ├── index.js
│ │ ├── indexd.html
│ │ └── indexd.js
│ ├── gulpfile.js
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── JSG.js
│ │ ├── ObjectFactory.js
│ │ ├── commons
│ │ │ ├── Arrays.js
│ │ │ ├── Dictionary.js
│ │ │ ├── ImagePool.js
│ │ │ ├── JSONReader.js
│ │ │ ├── JSONWriter.js
│ │ │ ├── Math.js
│ │ │ ├── Numbers.js
│ │ │ ├── Reader.js
│ │ │ ├── StableDictionary.js
│ │ │ ├── Strings.js
│ │ │ ├── Writer.js
│ │ │ └── XML.js
│ │ ├── geometry
│ │ │ ├── BoundingBox.js
│ │ │ ├── CoordinateSystem.js
│ │ │ ├── MathUtils.js
│ │ │ ├── Matrix.js
│ │ │ ├── MetricCoordinateSystem.js
│ │ │ ├── Point.js
│ │ │ ├── PointList.js
│ │ │ └── Rectangle.js
│ │ ├── graph
│ │ │ ├── BezierCoordinate.js
│ │ │ ├── BezierCoordinateProxy.js
│ │ │ ├── Coordinate.js
│ │ │ ├── CoordinateProxy.js
│ │ │ ├── GraphUtils.js
│ │ │ ├── Pin.js
│ │ │ ├── PortCoordinateProxy.js
│ │ │ ├── ReshapeCoordinate.js
│ │ │ ├── Size.js
│ │ │ ├── attr
│ │ │ │ ├── Attribute.js
│ │ │ │ ├── AttributeList.js
│ │ │ │ ├── AttributeRegistry.js
│ │ │ │ ├── AttributeUtils.js
│ │ │ │ ├── BooleanAttribute.js
│ │ │ │ ├── CellAttributes.js
│ │ │ │ ├── CellFormatAttributes.js
│ │ │ │ ├── CellTextFormatAttributes.js
│ │ │ │ ├── ConstAttribute.js
│ │ │ │ ├── ConstAttributeList.js
│ │ │ │ ├── EdgeAttributes.js
│ │ │ │ ├── EventAttributes.js
│ │ │ │ ├── FormatAttributes.js
│ │ │ │ ├── HeaderAttributes.js
│ │ │ │ ├── ItemAttributes.js
│ │ │ │ ├── LayoutAttributes.js
│ │ │ │ ├── LayoutCellAttributes.js
│ │ │ │ ├── MachineContainerAttributes.js
│ │ │ │ ├── NumberAttribute.js
│ │ │ │ ├── ObjectAttribute.js
│ │ │ │ ├── StreamSheetContainerAttributes.js
│ │ │ │ ├── StringAttribute.js
│ │ │ │ ├── Template.js
│ │ │ │ ├── TemplateStore.js
│ │ │ │ ├── TextFormatAttributes.js
│ │ │ │ ├── TextNodeAttributes.js
│ │ │ │ ├── TreeItemAttributes.js
│ │ │ │ └── WorksheetAttributes.js
│ │ │ ├── command
│ │ │ │ ├── AbstractGroupUngroupCommand.js
│ │ │ │ ├── AbstractItemCommand.js
│ │ │ │ ├── AbstractItemCommandProxy.js
│ │ │ │ ├── AddAttributeCommand.js
│ │ │ │ ├── AddGraphCellCommand.js
│ │ │ │ ├── AddImageCommand.js
│ │ │ │ ├── AddItemCommand.js
│ │ │ │ ├── AddLabelCommand.js
│ │ │ │ ├── AddLayoutSectionCommand.js
│ │ │ │ ├── AddPortCommand.js
│ │ │ │ ├── AddSheetNameCommand.js
│ │ │ │ ├── AddTreeItemCommand.js
│ │ │ │ ├── AlignItemsCommand.js
│ │ │ │ ├── AttachCommand.js
│ │ │ │ ├── CellAttributesCommand.js
│ │ │ │ ├── ChangeAttributeCommand.js
│ │ │ │ ├── ChangeItemOrderCommand.js
│ │ │ │ ├── ChangeParentCommand.js
│ │ │ │ ├── CollapseItemCommand.js
│ │ │ │ ├── Command.js
│ │ │ │ ├── CommandFactory.js
│ │ │ │ ├── CommandProxy.js
│ │ │ │ ├── CommandStack.js
│ │ │ │ ├── CompoundCommand.js
│ │ │ │ ├── CreateHeaderLevelsFromRangeCommand.js
│ │ │ │ ├── DeleteCellContentCommand.js
│ │ │ │ ├── DeleteCellsCommand.js
│ │ │ │ ├── DeleteEdgeCommand.js
│ │ │ │ ├── DeleteGraphCellCommand.js
│ │ │ │ ├── DeleteItemCommand.js
│ │ │ │ ├── DeleteLayoutSectionCommand.js
│ │ │ │ ├── DeleteNodeCommand.js
│ │ │ │ ├── DeletePortCommand.js
│ │ │ │ ├── DeleteSheetNameCommand.js
│ │ │ │ ├── DeleteTreeItemCommand.js
│ │ │ │ ├── DetachCommand.js
│ │ │ │ ├── DropItemCommand.js
│ │ │ │ ├── ExecuteFunctionCommand.js
│ │ │ │ ├── FormatCellsCommand.js
│ │ │ │ ├── FormatItemCommand.js
│ │ │ │ ├── GroupCreator.js
│ │ │ │ ├── GroupItemsCommand.js
│ │ │ │ ├── InsertCellsCommand.js
│ │ │ │ ├── InsertShapeCoordinateAtCommand.js
│ │ │ │ ├── InternalDeleteItemCommand.js
│ │ │ │ ├── InternalDetachCommand.js
│ │ │ │ ├── InternalMoveItemCommand.js
│ │ │ │ ├── InternalResizeItemCommand.js
│ │ │ │ ├── InternalRotateItemCommand.js
│ │ │ │ ├── LoadMachineCommand.js
│ │ │ │ ├── MarkCellValuesCommand.js
│ │ │ │ ├── MoveEdgeCommand.js
│ │ │ │ ├── MoveItemCommand.js
│ │ │ │ ├── MoveNodeCommand.js
│ │ │ │ ├── NoOpCommand.js
│ │ │ │ ├── PasteCellsFromClipboardCommand.js
│ │ │ │ ├── PasteItemsCommand.js
│ │ │ │ ├── PasteTreeItemCommand.js
│ │ │ │ ├── RemoveAttributeCommand.js
│ │ │ │ ├── RemoveSelectionCommand.js
│ │ │ │ ├── RemoveShapeCoordinateAtCommand.js
│ │ │ │ ├── ReplaceSubItemCommand.js
│ │ │ │ ├── ReshapeItemCommand.js
│ │ │ │ ├── ResizeEdgeCommand.js
│ │ │ │ ├── ResizeGroupCommand.js
│ │ │ │ ├── ResizeItemCommand.js
│ │ │ │ ├── ResizeNodeCommand.js
│ │ │ │ ├── RotateEdgeCommand.js
│ │ │ │ ├── RotateItemCommand.js
│ │ │ │ ├── RotateNodeCommand.js
│ │ │ │ ├── SetAttributeAtPathCommand.js
│ │ │ │ ├── SetAttributesMapCommand.js
│ │ │ │ ├── SetBezierLineShapePointCommand.js
│ │ │ │ ├── SetBezierShapePointsCommand.js
│ │ │ │ ├── SetCellDataCommand.js
│ │ │ │ ├── SetCellLevelsCommand.js
│ │ │ │ ├── SetCellsCommand.js
│ │ │ │ ├── SetChartFormulaCommand.js
│ │ │ │ ├── SetGraphCellCommand.js
│ │ │ │ ├── SetHeaderSectionLevelCommand.js
│ │ │ │ ├── SetHeaderSectionOutlineFlagCommand.js
│ │ │ │ ├── SetHeaderSectionSizeCommand.js
│ │ │ │ ├── SetLayoutCommand.js
│ │ │ │ ├── SetLayoutSectionCommand.js
│ │ │ │ ├── SetLayoutSettingCommand.js
│ │ │ │ ├── SetLineCoordinateAtCommand.js
│ │ │ │ ├── SetLinePointAtCommand.js
│ │ │ │ ├── SetLineShapePointsCommand.js
│ │ │ │ ├── SetLinkCommand.js
│ │ │ │ ├── SetMachineCommand.js
│ │ │ │ ├── SetNameCommand.js
│ │ │ │ ├── SetPinCommand.js
│ │ │ │ ├── SetPlotDataCommand.js
│ │ │ │ ├── SetPointSourceCommand.js
│ │ │ │ ├── SetSelectionCommand.js
│ │ │ │ ├── SetShapeCommand.js
│ │ │ │ ├── SetShapePointsCommand.js
│ │ │ │ ├── SetSheetCellsCommand.js
│ │ │ │ ├── SetSheetNameCommand.js
│ │ │ │ ├── SetSizeCommand.js
│ │ │ │ ├── SetTextCommand.js
│ │ │ │ ├── SetTextSizeModeCommand.js
│ │ │ │ ├── SetTreeDataCommand.js
│ │ │ │ ├── SetTreeItemCheckedFlagCommand.js
│ │ │ │ ├── SetTreeItemDataCommand.js
│ │ │ │ ├── SetTreeItemDepthCommand.js
│ │ │ │ ├── SetTreeItemDisabledCommand.js
│ │ │ │ ├── SetTreeItemExpandFlagCommand.js
│ │ │ │ ├── SetTreeItemShowDepthCommand.js
│ │ │ │ ├── SetTreeShowDepthCommand.js
│ │ │ │ ├── ShapePointsMap.js
│ │ │ │ ├── SheetCommandFactory.js
│ │ │ │ ├── SizeItemsCommand.js
│ │ │ │ ├── TextFormatCellsCommand.js
│ │ │ │ ├── TextFormatItemCommand.js
│ │ │ │ ├── TranslateItemsCommand.js
│ │ │ │ ├── UnGroupItemsCommand.js
│ │ │ │ ├── UpdateNamesCommands.js
│ │ │ │ ├── UpdateTreeItemCommand.js
│ │ │ │ ├── ZoomChartCommand.js
│ │ │ │ ├── server
│ │ │ │ │ ├── CompoundRequestCommand.js
│ │ │ │ │ ├── DeleteCellsCommand.js
│ │ │ │ │ ├── PasteCellsCommand.js
│ │ │ │ │ ├── RequestCommand.js
│ │ │ │ │ ├── ServerCommandFactory.js
│ │ │ │ │ ├── SetCellLevelsCommand.js
│ │ │ │ │ ├── SetCellsCommand.js
│ │ │ │ │ └── SetCellsPropertiesCommand.js
│ │ │ │ └── utils
│ │ │ │ │ ├── cellrange.js
│ │ │ │ │ ├── cells.js
│ │ │ │ │ ├── copycells.js
│ │ │ │ │ ├── expression.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── json.js
│ │ │ │ │ └── sheet.js
│ │ │ ├── expr
│ │ │ │ ├── AttributeExpression.js
│ │ │ │ ├── BooleanConstraint.js
│ │ │ │ ├── BooleanExpression.js
│ │ │ │ ├── ConstExpression.js
│ │ │ │ ├── ConstraintRegistry.js
│ │ │ │ ├── Expression.js
│ │ │ │ ├── ExpressionConstraint.js
│ │ │ │ ├── ExpressionHelper.js
│ │ │ │ ├── ExpressionProxy.js
│ │ │ │ ├── ExpressionRegistry.js
│ │ │ │ ├── MapExpression.js
│ │ │ │ ├── MapExpressionUpperCase.js
│ │ │ │ ├── NumberConstraint.js
│ │ │ │ ├── NumberExpression.js
│ │ │ │ ├── NumberRangeConstraint.js
│ │ │ │ ├── ObjectConstraint.js
│ │ │ │ ├── ObjectExpression.js
│ │ │ │ ├── RangeConstraint.js
│ │ │ │ ├── SheetReference.js
│ │ │ │ ├── StringConstraint.js
│ │ │ │ └── StringExpression.js
│ │ │ ├── model
│ │ │ │ ├── ButtonNode.js
│ │ │ │ ├── CaptionNode.js
│ │ │ │ ├── Cell.js
│ │ │ │ ├── CellRange.js
│ │ │ │ ├── CellsNode.js
│ │ │ │ ├── ColumnHeaderNode.js
│ │ │ │ ├── ContentNode.js
│ │ │ │ ├── DataProvider.js
│ │ │ │ ├── Edge.js
│ │ │ │ ├── Graph.js
│ │ │ │ ├── GraphItem.js
│ │ │ │ ├── GraphItemFactory.js
│ │ │ │ ├── Group.js
│ │ │ │ ├── HeaderNode.js
│ │ │ │ ├── HeaderSection.js
│ │ │ │ ├── IdUpdater.js
│ │ │ │ ├── InboxContainer.js
│ │ │ │ ├── Layer.js
│ │ │ │ ├── LayoutCell.js
│ │ │ │ ├── LayoutNode.js
│ │ │ │ ├── LayoutSection.js
│ │ │ │ ├── LineConnection.js
│ │ │ │ ├── LineNode.js
│ │ │ │ ├── MachineContainer.js
│ │ │ │ ├── MachineGraph.js
│ │ │ │ ├── MessageContainer.js
│ │ │ │ ├── Model.js
│ │ │ │ ├── Node.js
│ │ │ │ ├── OutboxContainer.js
│ │ │ │ ├── Paragraph.js
│ │ │ │ ├── Path.js
│ │ │ │ ├── Port.js
│ │ │ │ ├── PortMapper.js
│ │ │ │ ├── RowHeaderNode.js
│ │ │ │ ├── ScrollbarNode.js
│ │ │ │ ├── Section.js
│ │ │ │ ├── Selection.js
│ │ │ │ ├── ShapeBuilder.js
│ │ │ │ ├── SheetButtonNode.js
│ │ │ │ ├── SheetCheckboxNode.js
│ │ │ │ ├── SheetHeaderNode.js
│ │ │ │ ├── SheetKnobNode.js
│ │ │ │ ├── SheetName.js
│ │ │ │ ├── SheetSliderNode.js
│ │ │ │ ├── SplitterNode.js
│ │ │ │ ├── State.js
│ │ │ │ ├── StreamSheet.js
│ │ │ │ ├── StreamSheetContainer.js
│ │ │ │ ├── StreamSheetWrapper.js
│ │ │ │ ├── StreamSheetsContainer.js
│ │ │ │ ├── TextNode.js
│ │ │ │ ├── TreeItem.js
│ │ │ │ ├── TreeItemsNode.js
│ │ │ │ ├── TreeNode.js
│ │ │ │ ├── WorksheetNode.js
│ │ │ │ ├── chart
│ │ │ │ │ ├── Chart.js
│ │ │ │ │ ├── ChartAxis.js
│ │ │ │ │ ├── ChartDataLabel.js
│ │ │ │ │ ├── ChartElement.js
│ │ │ │ │ ├── ChartFormat.js
│ │ │ │ │ ├── ChartMap.js
│ │ │ │ │ ├── ChartMarker.js
│ │ │ │ │ ├── ChartPoint.js
│ │ │ │ │ ├── ChartRect.js
│ │ │ │ │ ├── ChartSeries.js
│ │ │ │ │ └── ChartTitle.js
│ │ │ │ ├── events
│ │ │ │ │ ├── AttributeChangeEvent.js
│ │ │ │ │ ├── AttributeListener.js
│ │ │ │ │ ├── EdgeListener.js
│ │ │ │ │ ├── Event.js
│ │ │ │ │ ├── EventDispatcher.js
│ │ │ │ │ ├── EventListener.js
│ │ │ │ │ ├── FormatListener.js
│ │ │ │ │ ├── GraphItemListener.js
│ │ │ │ │ ├── NodeEvent.js
│ │ │ │ │ ├── PortListener.js
│ │ │ │ │ ├── ShapeEvent.js
│ │ │ │ │ └── ShapeListener.js
│ │ │ │ ├── settings
│ │ │ │ │ ├── AbstractSettings.js
│ │ │ │ │ ├── CustomSetting.js
│ │ │ │ │ ├── GraphSettings.js
│ │ │ │ │ └── GraphSettingsEvent.js
│ │ │ │ ├── shapes
│ │ │ │ │ ├── BBoxShape.js
│ │ │ │ │ ├── BezierLineShape.js
│ │ │ │ │ ├── BezierShape.js
│ │ │ │ │ ├── EllipseShape.js
│ │ │ │ │ ├── LineShape.js
│ │ │ │ │ ├── OrthoLineShape.js
│ │ │ │ │ ├── PathShape.js
│ │ │ │ │ ├── PolygonShape.js
│ │ │ │ │ ├── RectangleShape.js
│ │ │ │ │ ├── Shape.js
│ │ │ │ │ └── ShapeFactory.js
│ │ │ │ └── utils
│ │ │ │ │ ├── dataprovider.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── map.js
│ │ │ │ │ └── properties.js
│ │ │ ├── notifications
│ │ │ │ ├── Notification.js
│ │ │ │ └── NotificationCenter.js
│ │ │ ├── parser
│ │ │ │ ├── AttributeReference.js
│ │ │ │ ├── GraphParser.js
│ │ │ │ ├── GraphParserContext.js
│ │ │ │ ├── GraphReference.js
│ │ │ │ └── ReferenceFactory.js
│ │ │ └── properties
│ │ │ │ ├── GraphItemProperties.js
│ │ │ │ ├── IndexProperty.js
│ │ │ │ ├── Properties.js
│ │ │ │ ├── PropertiesProvider.js
│ │ │ │ └── Property.js
│ │ └── layout
│ │ │ ├── EdgeLayout.js
│ │ │ ├── GraphLayout.js
│ │ │ ├── GridLayout.js
│ │ │ ├── Layout.js
│ │ │ ├── LayoutFactory.js
│ │ │ ├── Line.js
│ │ │ ├── MatrixLayout.js
│ │ │ ├── OrthogonalLayout.js
│ │ │ ├── Settings.js
│ │ │ └── SettingsRegistry.js
│ ├── test
│ │ ├── GraphParser.test.js
│ │ ├── ObjectFactory.test.js
│ │ └── Settings.test.js
│ └── webpack.config.js
├── jsg-ui
│ ├── .babelrc
│ ├── .eslintignore
│ ├── .eslintrc.js
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── scripts
│ │ └── concatenate.js
│ ├── src
│ │ ├── JSGGlobals.js
│ │ ├── graph
│ │ │ ├── controller
│ │ │ │ ├── ConnectionController.js
│ │ │ │ ├── ContentNodeController.js
│ │ │ │ ├── GraphController.js
│ │ │ │ ├── GraphControllerFactory.js
│ │ │ │ ├── GraphItemController.js
│ │ │ │ ├── GroupController.js
│ │ │ │ ├── ModelController.js
│ │ │ │ ├── NodeController.js
│ │ │ │ ├── PortController.js
│ │ │ │ └── RootController.js
│ │ │ ├── feedback
│ │ │ │ ├── CellFeedbackView.js
│ │ │ │ ├── CellSelectionFeedbackView.js
│ │ │ │ ├── ChartDragFeedbackView.js
│ │ │ │ ├── ChartInfoFeedbackView.js
│ │ │ │ ├── ChartSelectionFeedbackView.js
│ │ │ │ ├── EdgeFeedback.js
│ │ │ │ ├── Feedback.js
│ │ │ │ ├── FeedbackView.js
│ │ │ │ ├── MoveFeedbackView.js
│ │ │ │ ├── OrthoEdgeFeedback.js
│ │ │ │ ├── PortFeedback.js
│ │ │ │ └── TreeFeedbackView.js
│ │ │ ├── interaction
│ │ │ │ ├── AbstractInteraction.js
│ │ │ │ ├── ActionHandle.js
│ │ │ │ ├── BezierEdgeHelper.js
│ │ │ │ ├── ButtonActivator.js
│ │ │ │ ├── CaptionActivator.js
│ │ │ │ ├── CreateBezierEdgeInteraction.js
│ │ │ │ ├── CreateBezierInteraction.js
│ │ │ │ ├── CreateEdgeActivator.js
│ │ │ │ ├── CreateEdgeInteraction.js
│ │ │ │ ├── CreateItemInteraction.js
│ │ │ │ ├── CreateNodeInteraction.js
│ │ │ │ ├── CreateOrthoEdgeInteraction.js
│ │ │ │ ├── CreatePolyLineInteraction.js
│ │ │ │ ├── DefaultKeyHandler.js
│ │ │ │ ├── Delegate.js
│ │ │ │ ├── DragDropActivator.js
│ │ │ │ ├── DragDropInteraction.js
│ │ │ │ ├── DropDelegate.js
│ │ │ │ ├── EditBezierShapeInteraction.js
│ │ │ │ ├── EditCellInteraction.js
│ │ │ │ ├── EditLineShapeInteraction.js
│ │ │ │ ├── EditShapeInteraction.js
│ │ │ │ ├── EditTextActivator.js
│ │ │ │ ├── EditTextInteraction.js
│ │ │ │ ├── EditTreeInteraction.js
│ │ │ │ ├── FormatPainterInteraction.js
│ │ │ │ ├── GraphInteraction.js
│ │ │ │ ├── Highlighter.js
│ │ │ │ ├── ImageDropActivator.js
│ │ │ │ ├── Interaction.js
│ │ │ │ ├── InteractionActivator.js
│ │ │ │ ├── InteractionDispatcher.js
│ │ │ │ ├── InteractionHandler.js
│ │ │ │ ├── InteractionUtils.js
│ │ │ │ ├── LayoutNodeActivator.js
│ │ │ │ ├── LayoutNodeInteraction.js
│ │ │ │ ├── LinkActivator.js
│ │ │ │ ├── MarqueeActivator.js
│ │ │ │ ├── MarqueeInteraction.js
│ │ │ │ ├── MoveActivator.js
│ │ │ │ ├── MoveAlignHelper.js
│ │ │ │ ├── MoveDelegate.js
│ │ │ │ ├── MoveInteraction.js
│ │ │ │ ├── PanActivator.js
│ │ │ │ ├── PanInteraction.js
│ │ │ │ ├── PinchActivator.js
│ │ │ │ ├── PinchInteraction.js
│ │ │ │ ├── ReadOnlyInteraction.js
│ │ │ │ ├── ReshapeActivator.js
│ │ │ │ ├── ReshapeInteraction.js
│ │ │ │ ├── ResizeActivator.js
│ │ │ │ ├── ResizeBezierEdgeInteraction.js
│ │ │ │ ├── ResizeEdgeInteraction.js
│ │ │ │ ├── ResizeEditEdgeActivator.js
│ │ │ │ ├── ResizeEditEdgeInteraction.js
│ │ │ │ ├── ResizeEditOrthoEdgeInteraction.js
│ │ │ │ ├── ResizeInteraction.js
│ │ │ │ ├── ResizeLineNodeInteraction.js
│ │ │ │ ├── ResizeOrthoEdgeInteraction.js
│ │ │ │ ├── RotateActivator.js
│ │ │ │ ├── RotateInteraction.js
│ │ │ │ ├── SelectionVerifier.js
│ │ │ │ ├── SheetActivator.js
│ │ │ │ ├── SheetGraphItemEventActivator.js
│ │ │ │ ├── SheetGraphItemEventInteraction.js
│ │ │ │ ├── SheetInteraction.js
│ │ │ │ ├── SheetPlotActivator.js
│ │ │ │ ├── SheetPlotInteraction.js
│ │ │ │ ├── SnapHelper.js
│ │ │ │ ├── SplitterActivator.js
│ │ │ │ ├── SplitterInteraction.js
│ │ │ │ ├── StreamSheetContainerResizeActivator.js
│ │ │ │ ├── Tooltip.js
│ │ │ │ ├── TooltipActivator.js
│ │ │ │ ├── TreeActivator.js
│ │ │ │ ├── TreeInteraction.js
│ │ │ │ ├── ViewActivator.js
│ │ │ │ ├── ViewInteraction.js
│ │ │ │ └── ZoomInteraction.js
│ │ │ └── view
│ │ │ │ ├── BBoxView.js
│ │ │ │ ├── ButtonView.js
│ │ │ │ ├── CaptionView.js
│ │ │ │ ├── CellEditor.js
│ │ │ │ ├── CellInfoView.js
│ │ │ │ ├── CellsView.js
│ │ │ │ ├── ColumnHeaderView.js
│ │ │ │ ├── ContentNodeView.js
│ │ │ │ ├── ContentPaneView.js
│ │ │ │ ├── EdgeView.js
│ │ │ │ ├── EditBezierShapeView.js
│ │ │ │ ├── EditLineShapeView.js
│ │ │ │ ├── EditShapeView.js
│ │ │ │ ├── FloatingToolbar.js
│ │ │ │ ├── GraphItemView.js
│ │ │ │ ├── GraphView.js
│ │ │ │ ├── GroupView.js
│ │ │ │ ├── HeaderView.js
│ │ │ │ ├── LayerId.js
│ │ │ │ ├── LayoutCellView.js
│ │ │ │ ├── LayoutView.js
│ │ │ │ ├── MarqueeFeedbackView.js
│ │ │ │ ├── NodeView.js
│ │ │ │ ├── PortView.js
│ │ │ │ ├── PositionFeedbackView.js
│ │ │ │ ├── RowHeaderView.js
│ │ │ │ ├── ScrollbarView.js
│ │ │ │ ├── SelectionFeedbackView.js
│ │ │ │ ├── SelectionProvider.js
│ │ │ │ ├── ShapeMarker.js
│ │ │ │ ├── SheetButtonView.js
│ │ │ │ ├── SheetCheckboxView.js
│ │ │ │ ├── SheetHeaderView.js
│ │ │ │ ├── SheetKnobView.js
│ │ │ │ ├── SheetSliderView.js
│ │ │ │ ├── SnapFeedbackView.js
│ │ │ │ ├── StreamSheetContainerView.js
│ │ │ │ ├── StreamSheetView.js
│ │ │ │ ├── StreamSheetWrapperView.js
│ │ │ │ ├── TextView.js
│ │ │ │ ├── TreeItemsView.js
│ │ │ │ ├── WorksheetHitCode.js
│ │ │ │ ├── WorksheetView.js
│ │ │ │ ├── selection
│ │ │ │ ├── BBoxSelectionHandler.js
│ │ │ │ ├── GroupSelectionHandler.js
│ │ │ │ ├── LineNodeSelectionHandler.js
│ │ │ │ ├── LineSelectionHandler.js
│ │ │ │ ├── Marker.js
│ │ │ │ ├── NodeSelectionHandler.js
│ │ │ │ ├── OrthoLineSelectionHandler.js
│ │ │ │ ├── RotationMarker.js
│ │ │ │ ├── SelectionHandle.js
│ │ │ │ ├── SelectionHandler.js
│ │ │ │ ├── SelectionHandlerFactory.js
│ │ │ │ ├── SelectionStyle.js
│ │ │ │ ├── SelectionView.js
│ │ │ │ ├── Styles.js
│ │ │ │ └── TextSelectionHandler.js
│ │ │ │ └── shapes
│ │ │ │ ├── BezierLineShapeRenderer.js
│ │ │ │ ├── BezierShapeRenderer.js
│ │ │ │ ├── DefaultShapeRenderer.js
│ │ │ │ ├── EllipseShapeRenderer.js
│ │ │ │ ├── LineShapeRenderer.js
│ │ │ │ ├── PathShapeRenderer.js
│ │ │ │ ├── PolygonShapeRenderer.js
│ │ │ │ ├── RectangleShapeRenderer.js
│ │ │ │ └── ShapeRenderer.js
│ │ ├── res
│ │ │ ├── columnsize.cur
│ │ │ ├── columnsize.png
│ │ │ ├── cross.cur
│ │ │ ├── cross.png
│ │ │ ├── css
│ │ │ │ └── jsg.css
│ │ │ ├── deny.cur
│ │ │ ├── deny.png
│ │ │ ├── i18n
│ │ │ │ ├── de.json
│ │ │ │ └── en.json
│ │ │ ├── images
│ │ │ │ ├── arrowdown.png
│ │ │ │ ├── arrowleft.png
│ │ │ │ ├── arrowright.png
│ │ │ │ ├── arrowup.png
│ │ │ │ ├── bold.png
│ │ │ │ ├── bullets.png
│ │ │ │ ├── centeralign.png
│ │ │ │ ├── collapsed.png
│ │ │ │ ├── expanded.png
│ │ │ │ ├── fontcolor.png
│ │ │ │ ├── fontsizedown.png
│ │ │ │ ├── fontsizeup.png
│ │ │ │ ├── italic.png
│ │ │ │ ├── leftalign.png
│ │ │ │ ├── notavailable.png
│ │ │ │ ├── numbered.png
│ │ │ │ ├── rightalign.png
│ │ │ │ ├── treechecked.png
│ │ │ │ ├── treeunchecked.png
│ │ │ │ └── underline.png
│ │ │ ├── rotate.cur
│ │ │ ├── rotate.png
│ │ │ ├── rowsize.cur
│ │ │ ├── rowsize.png
│ │ │ ├── sheet.cur
│ │ │ ├── sheet.png
│ │ │ ├── sheetcolumn.cur
│ │ │ ├── sheetcolumn.png
│ │ │ ├── sheetrow.cur
│ │ │ ├── sheetrow.png
│ │ │ ├── splith.cur
│ │ │ ├── splith.png
│ │ │ ├── splitv.cur
│ │ │ ├── splitv.png
│ │ │ └── svg
│ │ │ │ ├── arrowdown.svg
│ │ │ │ ├── arrowleft.svg
│ │ │ │ ├── arrowright.svg
│ │ │ │ ├── arrowup.svg
│ │ │ │ ├── checked.svg
│ │ │ │ ├── delete.svg
│ │ │ │ ├── edge.svg
│ │ │ │ ├── filter.svg
│ │ │ │ ├── hvedge.svg
│ │ │ │ ├── laneaddafter.svg
│ │ │ │ ├── laneaddbefore.svg
│ │ │ │ ├── lanesplit_2.svg
│ │ │ │ ├── lanesplit_3.svg
│ │ │ │ ├── unchecked.svg
│ │ │ │ ├── vlaneaddafter.svg
│ │ │ │ ├── vlaneaddbefore.svg
│ │ │ │ ├── vlanesplit_2.svg
│ │ │ │ └── vlanesplit_3.svg
│ │ └── ui
│ │ │ ├── Cursor.js
│ │ │ ├── GraphEditor.js
│ │ │ ├── GraphViewPanel.js
│ │ │ ├── Scale.js
│ │ │ ├── ScrollPanel.js
│ │ │ ├── View.js
│ │ │ ├── Widget.js
│ │ │ ├── events
│ │ │ ├── ClientEvent.js
│ │ │ ├── DragEvent.js
│ │ │ ├── GestureEvent.js
│ │ │ ├── KeyEvent.js
│ │ │ └── MouseEvent.js
│ │ │ ├── graphics
│ │ │ ├── DocumentEventDispatcher.js
│ │ │ ├── GraphicSystem.js
│ │ │ ├── Graphics.js
│ │ │ └── ScalableGraphics.js
│ │ │ ├── menu
│ │ │ ├── DefaultMenuProvider.js
│ │ │ ├── ItemMenuEntry.js
│ │ │ ├── ItemMenuHandler.js
│ │ │ ├── ItemMenuProvider.js
│ │ │ └── entries
│ │ │ │ ├── AddDashBoardItem.js
│ │ │ │ ├── AddLayoutColumn.js
│ │ │ │ ├── AddLayoutRow.js
│ │ │ │ ├── MenuDelete.js
│ │ │ │ ├── RemoveLayoutColumn.js
│ │ │ │ ├── RemoveLayoutRow.js
│ │ │ │ ├── StreamChartData.js
│ │ │ │ └── StreamChartSeries.js
│ │ │ ├── scrollview
│ │ │ ├── Arrow.js
│ │ │ ├── Range.js
│ │ │ ├── RangeModel.js
│ │ │ ├── ScrollBar.js
│ │ │ ├── ScrollView.js
│ │ │ ├── Thumb.js
│ │ │ ├── ViewPanel.js
│ │ │ └── ViewPort.js
│ │ │ └── viewer
│ │ │ ├── ControllerViewer.js
│ │ │ ├── GraphViewer.js
│ │ │ └── ScrollableViewer.js
│ └── webpack.config.js
├── logger
│ ├── .eslintignore
│ ├── .gitignore
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── Logger.js
│ │ ├── LoggerFactory.js
│ │ └── adapter
│ │ │ ├── BaseLoggerAdapter.js
│ │ │ ├── BunyanLoggerAdapter.js
│ │ │ ├── ConsoleLoggerAdapter.js
│ │ │ └── LoggerAdapter.js
│ ├── test
│ │ └── Logger.test.js
│ └── webpack.config.js
├── machine-core
│ ├── .eslintignore
│ ├── .gitignore
│ ├── README.md
│ ├── defproperties.json
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── FunctionRegistry.js
│ │ ├── State.js
│ │ ├── StreamFunctionRegistry.js
│ │ ├── ipc
│ │ │ ├── Channel.js
│ │ │ ├── ChannelRequestHandler.js
│ │ │ ├── MachineTask.js
│ │ │ ├── MachineTaskMessagingClient.js
│ │ │ ├── MachineTaskMonitor.js
│ │ │ ├── MachineTaskOutboxMonitor.js
│ │ │ ├── MachineTaskRequestHandler.js
│ │ │ ├── MachineTaskStreamSheetMonitor.js
│ │ │ ├── RedisInboxAdapter.js
│ │ │ ├── RequestHandlerRegistry.js
│ │ │ └── utils.js
│ │ ├── locale
│ │ │ ├── convert.js
│ │ │ ├── index.js
│ │ │ ├── locales
│ │ │ │ ├── de.js
│ │ │ │ ├── en.js
│ │ │ │ ├── index.js
│ │ │ │ └── us.js
│ │ │ └── numberformatter.js
│ │ ├── logger.js
│ │ ├── machine
│ │ │ ├── Cell.js
│ │ │ ├── Inbox.js
│ │ │ ├── Machine.js
│ │ │ ├── Message.js
│ │ │ ├── MessageBox.js
│ │ │ ├── MessageHandler.js
│ │ │ ├── NamedCells.js
│ │ │ ├── Outbox.js
│ │ │ ├── Properties.js
│ │ │ ├── PropertiesManager.js
│ │ │ ├── ReferenceUpdater.js
│ │ │ ├── RequestState.js
│ │ │ ├── Shapes.js
│ │ │ ├── Sheet.js
│ │ │ ├── SheetEdit.js
│ │ │ ├── SheetIndex.js
│ │ │ ├── SheetProcessor.js
│ │ │ ├── SheetRange.js
│ │ │ ├── SheetRequests.js
│ │ │ ├── StreamSheet.js
│ │ │ ├── TTLMessageBox.js
│ │ │ ├── TaskQueue.js
│ │ │ └── sheettrigger
│ │ │ │ ├── BaseTrigger.js
│ │ │ │ ├── ContinuousTrigger.js
│ │ │ │ ├── ExecuteTrigger.js
│ │ │ │ ├── MachineStartTrigger.js
│ │ │ │ ├── MachineStopTrigger.js
│ │ │ │ ├── MessageLoopCycle.js
│ │ │ │ ├── NeverTrigger.js
│ │ │ │ ├── OnMessageTrigger.js
│ │ │ │ ├── OneTimeTrigger.js
│ │ │ │ ├── RepeatUntilCycle.js
│ │ │ │ ├── RepeatedMessageLoopCycle.js
│ │ │ │ ├── TimerTrigger.js
│ │ │ │ ├── TriggerFactory.js
│ │ │ │ ├── cycles.js
│ │ │ │ └── index.js
│ │ ├── messaging
│ │ │ ├── Client.js
│ │ │ ├── DummyClient.js
│ │ │ ├── LoggerClient.js
│ │ │ └── RequestHandler.js
│ │ ├── parser
│ │ │ ├── DotReferenceOperator.js
│ │ │ ├── ErrorTerm.js
│ │ │ ├── Operations.js
│ │ │ ├── References.js
│ │ │ ├── SheetParser.js
│ │ │ ├── SheetParserContext.js
│ │ │ ├── SheetRangeOperator.js
│ │ │ └── utils.js
│ │ ├── storage
│ │ │ ├── MessageStore.js
│ │ │ └── RocksDbClient.js
│ │ ├── streams
│ │ │ ├── StreamMessagingClient.js
│ │ │ ├── StreamRequestHandler.js
│ │ │ └── Streams.js
│ │ └── utils
│ │ │ ├── array.js
│ │ │ ├── autoexit.js
│ │ │ ├── index.js
│ │ │ ├── isEmpty.js
│ │ │ ├── isType.js
│ │ │ └── update.js
│ ├── test
│ │ ├── _data
│ │ │ └── messages.json
│ │ ├── jest.config.js
│ │ ├── locale
│ │ │ └── locale.test.js
│ │ ├── machine
│ │ │ ├── Cell.test.js
│ │ │ ├── CutCopyPaste.test.js
│ │ │ ├── Inbox.test.js
│ │ │ ├── InsertDelete.test.js
│ │ │ ├── Machine.test.js
│ │ │ ├── Message.test.js
│ │ │ ├── MessageBox.test.js
│ │ │ ├── MessageHandler.test.js
│ │ │ ├── Outbox.test.js
│ │ │ ├── Properties.test.js
│ │ │ ├── PropertiesManager.test.js
│ │ │ ├── ReferenceUpdater.test.js
│ │ │ ├── Sheet.test.js
│ │ │ ├── SheetIndex.test.js
│ │ │ ├── SheetRange.test.js
│ │ │ ├── Streamsheet.test.js
│ │ │ ├── TTLMessageBox.test.js
│ │ │ ├── sheettrigger
│ │ │ │ ├── ContinuouslyTrigger.test.js
│ │ │ │ ├── ExecuteTrigger.test.js
│ │ │ │ ├── MachineStartTrigger.test.js
│ │ │ │ ├── MachineStopTrigger.test.js
│ │ │ │ ├── OnMessageTrigger.test.js
│ │ │ │ └── TimerTrigger.test.js
│ │ │ └── utils.js
│ │ ├── parser
│ │ │ ├── DotReferenceOperator.test.js
│ │ │ ├── Operations.test.js
│ │ │ ├── References.test.js
│ │ │ └── SheetParser.test.js
│ │ ├── setup.js
│ │ ├── streams
│ │ │ └── Streams.test.js
│ │ └── utils
│ │ │ ├── functions.js
│ │ │ ├── index.js
│ │ │ ├── monitor.js
│ │ │ ├── sheet.js
│ │ │ ├── symbols.js
│ │ │ └── validate.js
│ └── validproperties.json
├── messages
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── src
│ │ └── messages
│ │ ├── core
│ │ ├── BaseMessage.js
│ │ ├── CommandMessage.js
│ │ ├── DocumentMessage.js
│ │ ├── EventMessage.js
│ │ ├── Message.js
│ │ ├── RequestMessage.js
│ │ └── ResponseMessage.js
│ │ ├── events
│ │ └── GraphServiceEventMessageFactory.js
│ │ └── requests
│ │ └── RequestMessages.js
├── messaging-client
│ ├── .gitignore
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ └── src
│ │ ├── BaseMessagingClient.js
│ │ └── MQTTMessagingClient.js
├── number-format
│ ├── .babelrc
│ ├── .gitignore
│ ├── LICENSE.txt
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── Localizer.js
│ │ ├── NumberFormatter.js
│ │ └── language
│ │ │ ├── daysofweek.js
│ │ │ ├── months.js
│ │ │ └── separators.js
│ └── test
│ │ ├── NumberFormatter.test.js
│ │ ├── samples-de.json
│ │ ├── samples-en.json
│ │ └── ssf.json
├── parser
│ ├── .babelrc
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── ErrorCodes.js
│ │ ├── Functions.js
│ │ ├── Locale.js
│ │ ├── Operand.js
│ │ ├── Operation.js
│ │ ├── Parser.js
│ │ ├── ParserContext.js
│ │ ├── ParserError.js
│ │ ├── ReturnCodes.js
│ │ ├── Term.js
│ │ ├── TermContext.js
│ │ ├── Tokenizer.js
│ │ └── Transformer.js
│ └── test
│ │ ├── Operand.test.js
│ │ ├── Operation.test.js
│ │ ├── Parser.test.js
│ │ ├── ParserContext.test.js
│ │ ├── Term.test.js
│ │ ├── TermContext.test.js
│ │ ├── Tokenizer.test.js
│ │ ├── Transformer.test.js
│ │ └── condition.test.js
├── parsers
│ ├── .gitignore
│ ├── index.js
│ └── package.json
├── protocols
│ ├── .gitignore
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ └── src
│ │ ├── protocols
│ │ ├── GatewayMessagingProtocol.js
│ │ ├── GraphServerMessagingProtocol.js
│ │ ├── MachineServerMessagingProtocol.js
│ │ └── StreamsMessagingProtocol.js
│ │ └── topics
│ │ └── Topics.js
├── repository
│ ├── .eslintignore
│ ├── .gitignore
│ ├── README.md
│ ├── db
│ │ └── machines.json
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── BackupRestoreManager.js
│ │ ├── DummyData.js
│ │ ├── RepositoryManager.js
│ │ ├── configuration
│ │ │ ├── AbstractConfigurationRepository.js
│ │ │ └── MongoDBConfigurationRepository.js
│ │ ├── filedb
│ │ │ └── FileDBMixin.js
│ │ ├── graphs
│ │ │ ├── AbstractGraphRepository.js
│ │ │ └── MongoDBGraphRepository.js
│ │ ├── machines
│ │ │ ├── AbstractMachineRepository.js
│ │ │ ├── FileDBMachineRepository.js
│ │ │ ├── InMemoryMachineRepository.js
│ │ │ └── MongoDBMachineRepository.js
│ │ ├── messagecontainer
│ │ │ ├── AbstractMessageContainerRepository.js
│ │ │ └── FileDBMessageContainerRepository.js
│ │ └── mongoDB
│ │ │ ├── MongoDBBackupRestoreManager.js
│ │ │ ├── MongoDBConnection.js
│ │ │ └── MongoDBMixin.js
│ └── test
│ │ ├── .eslintrc.json
│ │ ├── RepositoryManager.test.js
│ │ ├── graphs
│ │ └── MongoDBGraphRepository.test.js
│ │ ├── machines
│ │ ├── MongoDBMachineRepository.test.js
│ │ └── machines-default.json
│ │ └── messagecontainer
│ │ ├── FileDBMessageContainerRepositoryTest.js
│ │ └── messagecontainer-default.json
├── rest-server-core
│ ├── .eslintignore
│ ├── .gitignore
│ ├── README.md
│ ├── config
│ │ └── start.json
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── APIRouter.js
│ │ ├── DefaultApp.js
│ │ ├── ImageRouter.js
│ │ ├── WebpageRouter.js
│ │ ├── client
│ │ │ └── RESTClient.js
│ │ ├── error
│ │ │ └── Error.js
│ │ ├── helper
│ │ │ ├── ImageHelper.js
│ │ │ └── WebpageHelper.js
│ │ ├── routes
│ │ │ ├── ImageRoute.js
│ │ │ ├── MessageRoute.js
│ │ │ └── WebpageRoute.js
│ │ ├── server
│ │ │ ├── EventEmittingRESTServer.js
│ │ │ └── RESTServer.js
│ │ └── templates
│ │ │ └── index.pug
│ ├── start.js
│ └── test
│ │ ├── .eslintrc.json
│ │ ├── client
│ │ ├── RESTClient.test.js
│ │ ├── request001.json
│ │ ├── request002.json
│ │ ├── request003.json
│ │ └── request004.json
│ │ ├── helper
│ │ ├── ImageHelper.test.js
│ │ └── WebpageHelper.test.js
│ │ ├── k6
│ │ ├── README.md
│ │ └── tests.js
│ │ ├── postman
│ │ └── REST Adapter API.postman_collection.json
│ │ └── routes
│ │ ├── ImageRoute.test.js
│ │ └── MessageRoute.test.js
├── rest-server
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── RestServerConnector.js
│ │ ├── RestServerConsumer.js
│ │ ├── RestServerProvider.js
│ │ └── RestServerProviderConfiguration.js
│ └── test
│ │ └── machines
│ │ └── RESTTestingMachine.json
├── sdk-streams
│ ├── .eslintignore
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ ├── src
│ │ ├── Connector.js
│ │ ├── Constants.js
│ │ ├── Consumer.js
│ │ ├── ConsumerMixin.js
│ │ ├── DefaultLogger.js
│ │ ├── Producer.js
│ │ ├── ProducerMixin.js
│ │ ├── Provider.js
│ │ ├── Stream.js
│ │ ├── StreamMonitor.js
│ │ ├── configurations
│ │ │ ├── BaseConfiguration.js
│ │ │ ├── ConnectorConfiguration.js
│ │ │ ├── ConsumerConfiguration.js
│ │ │ ├── Field.js
│ │ │ ├── ProducerConfiguration.js
│ │ │ └── ProviderConfiguration.js
│ │ └── helpers
│ │ │ ├── Message.js
│ │ │ ├── MessageParser.js
│ │ │ ├── RequestResponse.js
│ │ │ ├── TestHelper.js
│ │ │ └── Utils.js
│ └── test
│ │ ├── .eslintrc.json
│ │ ├── Consumer.test.js
│ │ ├── Producer.test.js
│ │ ├── Provider.test.js
│ │ ├── configs.json
│ │ ├── configurations
│ │ ├── ConnectorConfiguration.test.js
│ │ ├── ConsumerConfiguration.test.js
│ │ ├── ProducerConfiguration.test.js
│ │ └── ProviderConfiguration.test.js
│ │ ├── helpers
│ │ ├── Field.test.js
│ │ ├── MessageParser.test.js
│ │ └── Utils.test.js
│ │ └── sample
│ │ ├── SimpleConsumer.js
│ │ ├── SimpleConsumerConfiguration.js
│ │ ├── SimpleProducer.js
│ │ ├── SimpleProvider.js
│ │ ├── SimpleProviderConfiguration.js
│ │ └── SimpleSource.js
├── service-core
│ ├── .gitignore
│ ├── README.md
│ ├── index.d.ts
│ ├── index.js
│ ├── package.json
│ └── src
│ │ └── services
│ │ ├── BaseService.js
│ │ ├── MessagingService.js
│ │ ├── handlers
│ │ ├── RequestHandler.js
│ │ └── RequestHandlers.js
│ │ ├── helpers
│ │ └── MessagingRequestHelper.js
│ │ └── monitoring
│ │ └── MonitorManager.js
├── service-graphs
│ ├── .eslintignore
│ ├── .gitignore
│ ├── Dockerfile
│ ├── README.md
│ ├── config
│ │ └── config.js
│ ├── meta.json
│ ├── package.json
│ ├── src
│ │ ├── graph
│ │ │ ├── DotOperatorParserContext.js
│ │ │ ├── GraphManager.js
│ │ │ ├── GraphMonitor.js
│ │ │ ├── GraphWrapper.js
│ │ │ ├── SheetParserContext.js
│ │ │ ├── loadGraphs.js
│ │ │ └── utils.js
│ │ ├── messages
│ │ │ └── GraphServiceEventMessageFactory.js
│ │ ├── services
│ │ │ ├── graphs
│ │ │ │ └── GraphService.js
│ │ │ └── handlers
│ │ │ │ └── GraphRequestHandlers.js
│ │ └── utils
│ │ │ ├── ignore.js
│ │ │ └── logger.js
│ ├── start.js
│ └── webpack.config.js
├── service-machines
│ ├── .eslintignore
│ ├── .gitignore
│ ├── Dockerfile
│ ├── README.md
│ ├── config
│ │ └── config.js
│ ├── meta.json
│ ├── package.json
│ ├── src
│ │ ├── handlers
│ │ │ ├── MachineRequestHandlers.js
│ │ │ ├── MachineServerRequestHandlers.js
│ │ │ └── ServerCommandsRequestHandlers.js
│ │ ├── ipc
│ │ │ ├── MachineTaskObserver.js
│ │ │ ├── MachineTaskRunner.js
│ │ │ └── MachineTaskStreams.js
│ │ ├── machines
│ │ │ ├── GraphImporter.js
│ │ │ ├── MachineServer.js
│ │ │ └── MachineService.js
│ │ ├── managers
│ │ │ └── StreamManager.js
│ │ └── utils
│ │ │ ├── FunctionModulesResolver.js
│ │ │ ├── logger.js
│ │ │ ├── property.js
│ │ │ ├── trycatch.js
│ │ │ └── utils.js
│ ├── start.js
│ └── webpack.config.js
├── service-streams
│ ├── .eslintignore
│ ├── .gitignore
│ ├── Dockerfile
│ ├── README.md
│ ├── config.json
│ ├── index.js
│ ├── meta.json
│ ├── package.json
│ ├── src
│ │ ├── ConfigurationsManager.js
│ │ ├── ProvidersManager.js
│ │ ├── StreamsManager.js
│ │ ├── StreamsManagerHandler.js
│ │ ├── StreamsMonitor.js
│ │ ├── StreamsService.js
│ │ ├── config.js
│ │ ├── handlers
│ │ │ └── StreamsRequestHandlers.js
│ │ ├── persistence
│ │ │ ├── AbstractStreamsRepository.js
│ │ │ ├── MongoDBStreamsRepository.js
│ │ │ ├── configurations.json
│ │ │ └── old-configurations.json
│ │ └── redis.js
│ ├── start.js
│ ├── test
│ │ ├── .eslintrc.json
│ │ ├── StreamsManager.test.js
│ │ ├── configs.json
│ │ ├── helpers
│ │ │ ├── BadProvider.js
│ │ │ └── BadStream.js
│ │ └── persistence
│ │ │ └── MongoDBStreamsRepository.test.js
│ └── webpack.config.js
├── stream
│ ├── file
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── src
│ │ │ ├── FileConnector.js
│ │ │ ├── FileProducer.js
│ │ │ ├── FileProvider.js
│ │ │ ├── FileProviderConfiguration.js
│ │ │ ├── logger.js
│ │ │ ├── om
│ │ │ └── File.js
│ │ │ └── protocols
│ │ │ └── local
│ │ │ ├── LocalClient.js
│ │ │ └── LocalHandler.js
│ ├── kafka
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── docker-compose.yml
│ │ ├── docker
│ │ │ ├── certs
│ │ │ │ ├── ca-cert
│ │ │ │ ├── ca-cert.srl
│ │ │ │ ├── ca-key
│ │ │ │ ├── cert-file
│ │ │ │ ├── cert-signed
│ │ │ │ ├── client.truststore.jks
│ │ │ │ ├── server.keystore.jks
│ │ │ │ └── server.truststore.jks
│ │ │ ├── createTopic.js
│ │ │ ├── docker-compose.0.10.yml
│ │ │ ├── docker-compose.0.11.yml
│ │ │ ├── docker-compose.0.8.yml
│ │ │ ├── docker-compose.0.9.yml
│ │ │ └── start-kafka.sh
│ │ ├── examples
│ │ │ ├── KafkaConsumer.js
│ │ │ └── KafkaProducer.js
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── KSQLHelper.js
│ │ │ ├── KafkaConnector.js
│ │ │ ├── KafkaConsumer.js
│ │ │ ├── KafkaConsumerConfiguration.js
│ │ │ ├── KafkaFunctions.js
│ │ │ ├── KafkaOnlyHandler.js
│ │ │ ├── KafkaProducer.js
│ │ │ ├── KafkaProvider.js
│ │ │ ├── KafkaProviderConfiguration.js
│ │ │ ├── KafkaZookeeperHandler.js
│ │ │ └── Utils.js
│ │ ├── start-docker.sh
│ │ └── test
│ │ │ ├── .eslintrc.json
│ │ │ ├── DockerHelper.js
│ │ │ ├── KafkaProvider.test.js
│ │ │ ├── docker
│ │ │ ├── docker-compose-ksql.yml
│ │ │ └── docker-compose.yml
│ │ │ ├── machines
│ │ │ ├── feeder-kafka-ksql-test.json
│ │ │ ├── feeder-kafka-test.json
│ │ │ ├── stream-kafka-ksql-test.json
│ │ │ └── stream-kafka-test.json
│ │ │ └── run.js
│ ├── mail-pop3
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── PopConnector.js
│ │ │ ├── PopConsumer.js
│ │ │ ├── PopConsumerConfiguration.js
│ │ │ ├── PopProvider.js
│ │ │ ├── PopProviderConfiguration.js
│ │ │ ├── pop3.js
│ │ │ └── poplib-wrapper.js
│ │ └── test
│ │ │ └── smtpserver
│ │ │ ├── .eslintrc.js
│ │ │ ├── index.js
│ │ │ └── server.js
│ ├── mail-smtp
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── SmtpConnector.js
│ │ │ ├── SmtpProducer.js
│ │ │ ├── SmtpProvider.js
│ │ │ ├── SmtpProviderConfiguration.js
│ │ │ └── smtp.js
│ │ └── test
│ │ │ ├── SmtpProcuder.test.js
│ │ │ └── smtpserver
│ │ │ ├── index.js
│ │ │ └── server.js
│ ├── mongodb
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── MongoDBConnector.js
│ │ │ ├── MongoDBConsumer.js
│ │ │ ├── MongoDBConsumerConfiguration.js
│ │ │ ├── MongoDBFunctions.js
│ │ │ ├── MongoDBProducer.js
│ │ │ ├── MongoDBProvider.js
│ │ │ └── MongoDBProviderConfiguration.js
│ │ └── test
│ │ │ ├── .eslintrc.json
│ │ │ ├── MongoDBConnector.test.js
│ │ │ ├── MongoDBFunctions.test.js
│ │ │ ├── MongoDBProducer.test.js
│ │ │ ├── MongoDBProvider.test.js
│ │ │ └── machines
│ │ │ ├── machine-local-db.json
│ │ │ └── test-mongodb-local-async.json
│ ├── mqtt
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── MqttConnector.js
│ │ │ ├── MqttConsumer.js
│ │ │ ├── MqttConsumerConfiguration.js
│ │ │ ├── MqttProducer.js
│ │ │ ├── MqttProvider.js
│ │ │ ├── MqttProviderConfiguration.js
│ │ │ └── Utils.js
│ │ └── test
│ │ │ ├── .eslintrc.json
│ │ │ ├── DockerHelper.js
│ │ │ ├── MqttProvider.test.js
│ │ │ ├── certs
│ │ │ ├── 477d573e95-certificate.pem.crt
│ │ │ ├── 477d573e95-private.pem.key
│ │ │ └── aws-ca.pem
│ │ │ ├── docker-compose.yml
│ │ │ └── machines
│ │ │ ├── stream-mqtt-test.json
│ │ │ └── stream-mqtt5-test.json
│ ├── rest-client
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── RestClientConnector.js
│ │ │ ├── RestClientProducer.js
│ │ │ ├── RestClientProvider.js
│ │ │ └── RestClientProviderConfiguration.js
│ │ └── test
│ │ │ └── machines
│ │ │ └── RESTTestingMachine.json
│ └── toit
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── package.json
│ │ └── src
│ │ ├── ToitConnector.js
│ │ ├── ToitConsumer.js
│ │ ├── ToitConsumerConfiguration.js
│ │ ├── ToitProducer.js
│ │ ├── ToitProvider.js
│ │ └── ToitProviderConfiguration.js
├── stubs
│ ├── jsg-extensions
│ │ ├── core
│ │ │ ├── SheetPlotNode.js
│ │ │ └── index.js
│ │ ├── package.json
│ │ └── ui
│ │ │ ├── SheetPlotView.js
│ │ │ └── index.js
│ ├── service-machines-extensions
│ │ ├── config
│ │ │ └── config.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── src
│ │ │ └── resolveAdditionalFunctions.js
│ └── webui-extensions
│ │ ├── .eslintrc.js
│ │ ├── index.js
│ │ ├── package.json
│ │ └── src
│ │ ├── AdminNavigationExtensions.js
│ │ ├── ChartExtensions.js
│ │ ├── DialogExtensions.js
│ │ ├── MainDrawerExtensions
│ │ ├── FileSection.js
│ │ ├── ImportSection.js
│ │ ├── PreviewSection.js
│ │ ├── StreamSection.js
│ │ └── index.js
│ │ ├── PluginExtensions.js
│ │ ├── RoutesExtensions.js
│ │ ├── ToolbarExtensions.js
│ │ ├── WorkspaceSelect.js
│ │ ├── components
│ │ └── ImageUploadDialog.js
│ │ ├── pages
│ │ ├── CreateUserForm.js
│ │ ├── CreateUserPage.js
│ │ ├── UpdatePasswordForm.js
│ │ ├── UpdateUserPage.js
│ │ ├── UserPropTypes.js
│ │ ├── UserTable.js
│ │ ├── UserTablePage.js
│ │ └── index.js
│ │ └── webhook-server
│ │ ├── WebhookServerSettingsDialog.js
│ │ └── WebhookServerSettingsMenuItem.js
├── util
│ ├── .gitignore
│ ├── README.md
│ ├── index.js
│ ├── package.json
│ └── src
│ │ ├── Array.js
│ │ └── String.js
├── webcomponent
│ ├── demo
│ │ ├── .babelrc.js
│ │ ├── .eslintignore
│ │ ├── .eslintrc.js
│ │ ├── .gitignore
│ │ ├── .prettierignore
│ │ ├── README.md
│ │ ├── machines.json
│ │ ├── machines
│ │ │ └── machines.json
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── dashboard
│ │ │ │ └── MachineMonitor.js
│ │ │ ├── index.html
│ │ │ ├── index.js
│ │ │ ├── indexwc.html
│ │ │ └── loginpanel
│ │ │ │ └── LoginPanel.js
│ │ └── webpack.config.js
│ ├── streammachine
│ │ ├── .eslintignore
│ │ ├── .gitignore
│ │ ├── README.md
│ │ ├── index.js
│ │ ├── karma.conf.js
│ │ ├── package.json
│ │ ├── src
│ │ │ ├── FunctionStrings.js
│ │ │ ├── MachineElement.js
│ │ │ ├── SheetParserContext.js
│ │ │ ├── StreamMachine.js
│ │ │ ├── api
│ │ │ │ └── StreamSheets.js
│ │ │ └── synchronization
│ │ │ │ ├── CommandStack.js
│ │ │ │ └── GraphSynchronizationInteractionHandler.js
│ │ ├── test
│ │ │ └── .eslintrc.json
│ │ └── webpack.config.js
│ └── streamsheet-connection
│ │ ├── .babelrc.js
│ │ ├── .eslintignore
│ │ ├── .eslintrc.js
│ │ ├── .gitignore
│ │ ├── .prettierignore
│ │ ├── README.md
│ │ ├── package.json
│ │ ├── src
│ │ ├── Credentials.ts
│ │ ├── Events.ts
│ │ ├── IMachineElement.ts
│ │ ├── IMachineJSON.ts
│ │ ├── connection
│ │ │ ├── GatewayClient.js
│ │ │ ├── IGatewayClient.ts
│ │ │ └── StreamSheetConnection.ts
│ │ ├── index.ts
│ │ ├── login
│ │ │ ├── Storage.ts
│ │ │ └── StreamSheetLogin.ts
│ │ ├── subscribe
│ │ │ ├── Converter.js
│ │ │ ├── ConverterWC.js
│ │ │ ├── EventConverter.ts
│ │ │ ├── EventDispatcher.ts
│ │ │ ├── EventListeners.ts
│ │ │ ├── IConverter.ts
│ │ │ └── StreamSheetSubscribe.ts
│ │ ├── sync
│ │ │ └── Synchronizer.js
│ │ └── utils
│ │ │ ├── cast.ts
│ │ │ ├── index.ts
│ │ │ ├── property.ts
│ │ │ ├── propertyjs.js
│ │ │ ├── traverse.ts
│ │ │ └── validate.ts
│ │ └── tsconfig.json
├── webui-components
│ ├── .eslintrc.js
│ ├── index.js
│ ├── package.json
│ └── src
│ │ ├── MenuEntry.js
│ │ └── MenuGroup.js
└── webui
│ ├── .browserslistrc
│ ├── .eslintignore
│ ├── .eslintrc.js
│ ├── .gitignore
│ ├── Dockerfile
│ ├── README.md
│ ├── babel.config.js
│ ├── config
│ ├── env.js
│ ├── jest
│ │ ├── cssTransform.js
│ │ └── fileTransform.js
│ ├── paths.js
│ ├── polyfills.js
│ ├── webpack.config.dev.js
│ ├── webpack.config.prod.js
│ └── webpackDevServer.config.js
│ ├── licenses
│ ├── license_DE.pdf
│ └── license_EN.pdf
│ ├── package.json
│ ├── public
│ ├── favicon.ico
│ ├── faviconold.ico
│ ├── images
│ │ ├── avatar.png
│ │ ├── charts
│ │ │ ├── area.png
│ │ │ ├── areastacked.png
│ │ │ ├── areastacked100.png
│ │ │ ├── bar.png
│ │ │ ├── barstacked.png
│ │ │ ├── barstacked100.png
│ │ │ ├── boxplot.png
│ │ │ ├── bubble.png
│ │ │ ├── column.png
│ │ │ ├── columnstacked.png
│ │ │ ├── columnstacked100.png
│ │ │ ├── doughnut.png
│ │ │ ├── funnel.png
│ │ │ ├── funnelbar.png
│ │ │ ├── funnelhorz.png
│ │ │ ├── funnelhorzcolumn.png
│ │ │ ├── gauge.png
│ │ │ ├── gauge23.png
│ │ │ ├── gaugepointer.png
│ │ │ ├── gaugevalue.png
│ │ │ ├── halfpie.png
│ │ │ ├── heatmap.png
│ │ │ ├── line.png
│ │ │ ├── linestacked.png
│ │ │ ├── linestacked100.png
│ │ │ ├── linestep.png
│ │ │ ├── map.png
│ │ │ ├── pie.png
│ │ │ ├── pie3d.png
│ │ │ ├── profile.png
│ │ │ ├── scatterline.png
│ │ │ ├── scatterlinemarker.png
│ │ │ ├── scattermarker.png
│ │ │ ├── statecolumn.png
│ │ │ ├── stateperiod.png
│ │ │ ├── statetime.png
│ │ │ ├── stockhlc.png
│ │ │ ├── stockohlc.png
│ │ │ ├── stockvhlc.png
│ │ │ ├── stockvohlc.png
│ │ │ └── waterfall.png
│ │ ├── connector.png
│ │ ├── consumer.png
│ │ ├── flags
│ │ │ ├── de.svg
│ │ │ ├── gb.svg
│ │ │ └── us.svg
│ │ ├── loginbg.png
│ │ ├── mainbg.jpg
│ │ ├── preview.png
│ │ └── producer.png
│ ├── index.html
│ ├── lib
│ │ └── res
│ │ │ ├── columnsize.cur
│ │ │ ├── columnsize.png
│ │ │ ├── cross.cur
│ │ │ ├── cross.png
│ │ │ ├── css
│ │ │ └── jsg.css
│ │ │ ├── deny.cur
│ │ │ ├── deny.png
│ │ │ ├── i18n
│ │ │ ├── de.json
│ │ │ └── en.json
│ │ │ ├── images
│ │ │ ├── arrowdown.png
│ │ │ ├── arrowleft.png
│ │ │ ├── arrowright.png
│ │ │ ├── arrowup.png
│ │ │ ├── bold.png
│ │ │ ├── bullets.png
│ │ │ ├── centeralign.png
│ │ │ ├── collapsed.png
│ │ │ ├── expanded.png
│ │ │ ├── fontcolor.png
│ │ │ ├── fontsizedown.png
│ │ │ ├── fontsizeup.png
│ │ │ ├── italic.png
│ │ │ ├── leftalign.png
│ │ │ ├── linestyledash.png
│ │ │ ├── linestyledashdot.png
│ │ │ ├── linestyledashdotdot.png
│ │ │ ├── linestyledot.png
│ │ │ ├── linestylenone.png
│ │ │ ├── linestylesolid.png
│ │ │ ├── lineswidth025.png
│ │ │ ├── lineswidth05.png
│ │ │ ├── lineswidth075.png
│ │ │ ├── lineswidth1.png
│ │ │ ├── lineswidth100.png
│ │ │ ├── lineswidth200.png
│ │ │ ├── lineswidth300.png
│ │ │ ├── lineswidth400.png
│ │ │ ├── notavailable.png
│ │ │ ├── numbered.png
│ │ │ ├── rightalign.png
│ │ │ ├── treechecked.png
│ │ │ ├── treeunchecked.png
│ │ │ └── underline.png
│ │ │ ├── rotate.cur
│ │ │ ├── rotate.png
│ │ │ ├── rowsize.cur
│ │ │ ├── rowsize.png
│ │ │ ├── sheet.cur
│ │ │ ├── sheet.png
│ │ │ ├── sheetcolumn.cur
│ │ │ ├── sheetcolumn.png
│ │ │ ├── sheetrow.cur
│ │ │ ├── sheetrow.png
│ │ │ ├── splith.cur
│ │ │ ├── splith.png
│ │ │ ├── splitv.cur
│ │ │ ├── splitv.png
│ │ │ └── svg
│ │ │ ├── add.svg
│ │ │ ├── arrowdown.svg
│ │ │ ├── arrowup.svg
│ │ │ ├── button.svg
│ │ │ ├── checkbox.svg
│ │ │ ├── checked.svg
│ │ │ ├── columnmenu.svg
│ │ │ ├── delete.svg
│ │ │ ├── edge.svg
│ │ │ ├── edit.svg
│ │ │ ├── filter.svg
│ │ │ ├── hvedge.svg
│ │ │ ├── knob.svg
│ │ │ ├── label.svg
│ │ │ ├── laneaddafter.svg
│ │ │ ├── laneaddbefore.svg
│ │ │ ├── lanesplit_2.svg
│ │ │ ├── lanesplit_3.svg
│ │ │ ├── layout2.svg
│ │ │ ├── layout3.svg
│ │ │ ├── layout4.svg
│ │ │ ├── layout5.svg
│ │ │ ├── layout6.svg
│ │ │ ├── rowmenu.svg
│ │ │ ├── select.svg
│ │ │ ├── sheet.svg
│ │ │ ├── slider.svg
│ │ │ ├── table.svg
│ │ │ ├── textedit.svg
│ │ │ ├── textview.svg
│ │ │ └── unchecked.svg
│ ├── license_DE.pdf
│ ├── license_EN.pdf
│ ├── maps
│ │ ├── asia_countries.json
│ │ ├── de_districts.json
│ │ ├── de_regions.json
│ │ ├── europe_countries.json
│ │ ├── mapinfo.json
│ │ ├── namerica_countries.json
│ │ ├── us_states.json
│ │ ├── world_capitals.json
│ │ ├── world_cities.json
│ │ ├── world_countries.json
│ │ └── world_rivers.json
│ └── resources
│ │ ├── connected.svg
│ │ ├── deletesheet.png
│ │ ├── disconnected.svg
│ │ ├── json.svg
│ │ ├── loop.png
│ │ ├── maximize.png
│ │ ├── minimize.png
│ │ ├── settings.png
│ │ ├── settings_org.png
│ │ ├── statuserror.png
│ │ ├── statusok.png
│ │ ├── statuswarning.png
│ │ ├── t1.png
│ │ ├── t2.png
│ │ ├── t3.png
│ │ └── t4.png
│ ├── scripts
│ ├── build.js
│ ├── deploy.sh
│ ├── install-jsg.js
│ ├── start.js
│ ├── test.js
│ └── translate.js
│ └── src
│ ├── App.css
│ ├── App.js
│ ├── App.test.js
│ ├── GraphManager.js
│ ├── SheetParserContext.js
│ ├── actions
│ ├── BackupRestoreActions.js
│ ├── ImportExportActions.js
│ ├── MachineActions.js
│ ├── StreamActions.js
│ ├── UserActions.js
│ └── actions.js
│ ├── components
│ ├── Admin
│ │ ├── AdminField.js
│ │ ├── license
│ │ │ └── License.js
│ │ ├── security
│ │ │ ├── Database.js
│ │ │ └── styles.js
│ │ ├── streams
│ │ │ └── StreamDeleteDialog.js
│ │ └── styles.js
│ ├── AppBarComponent
│ │ ├── EditBarComponent.js
│ │ ├── InfoToolBar.js
│ │ ├── InfoToolBar.test.js
│ │ ├── MainDrawer.js
│ │ └── MainDrawer.test.js
│ ├── Auth
│ │ ├── LoginPage.js
│ │ ├── LogoutPage.js
│ │ ├── PrivateRoute.js
│ │ ├── RegistrationForm.js
│ │ └── SetupPage.js
│ ├── Canvas
│ │ ├── AttributeProperties.js
│ │ ├── CanvasComponent.js
│ │ ├── CanvasToolBar.js
│ │ ├── CanvasToolBar.test.js
│ │ ├── CellPayloadPopover.js
│ │ ├── CellRangeComponent.js
│ │ ├── ContextMenu.js
│ │ ├── EditPointsContextMenu.js
│ │ ├── EventProperties.js
│ │ ├── FieldComponents.js
│ │ ├── FormatProperties.js
│ │ ├── FunctionWizard.js
│ │ ├── GeometryProperties.js
│ │ ├── GraphContextMenu.js
│ │ ├── GraphItemProperties.js
│ │ ├── LayoutContextMenu.js
│ │ ├── LayoutProperties.js
│ │ ├── LayoutSectionProperties.js
│ │ ├── MachineLoadingDialog.js
│ │ ├── SheetDeleteDialog.js
│ │ ├── StreamChartProperties.js
│ │ ├── TextFormatProperties.js
│ │ ├── TreeContextMenu.js
│ │ └── ViewModeProperties.js
│ ├── Dashboard
│ │ ├── DashBoardComponent.js
│ │ ├── StreamFieldComponents.js
│ │ ├── StreamSettings.js
│ │ ├── StreamTableRow.js
│ │ └── StreamWizard.js
│ ├── DataSourceComponent
│ │ └── DataSourceComponent.js
│ ├── Dialogs
│ │ ├── MachineSettingsDialog.js
│ │ ├── NewMachineDialog.js
│ │ ├── OpenDialog.js
│ │ └── SaveAsDialog.js
│ ├── Errors
│ │ └── NotAuthorizedComponent.js
│ ├── HelperComponent
│ │ ├── DynamicFormattedMessage.js
│ │ ├── InboxSettings.js
│ │ ├── LicenseExpireNotification.js
│ │ ├── MachineListComponent.js
│ │ ├── Overlay.js
│ │ ├── Restricted.js
│ │ ├── SettingsMenu.js
│ │ ├── TableSortHeader.js
│ │ └── Wall.js
│ ├── ImportExport
│ │ ├── ConfirmImportDialog.js
│ │ ├── ErrorDialog.js
│ │ ├── ExportComponent.js
│ │ ├── ExportDialog.js
│ │ ├── ExportTable.js
│ │ ├── ImportDialog.js
│ │ ├── ImportDropzone.js
│ │ └── StartImportDialog.js
│ ├── MachineControlBar
│ │ ├── MachineControlBar.js
│ │ ├── MachineControlBar.test.js
│ │ └── MachineDeleteDialog.js
│ ├── MachineNameComponent
│ │ └── MachineNameComponent.js
│ ├── NotificationsComponent
│ │ ├── NotificationsComponent.js
│ │ └── NotificationsDrawer.js
│ ├── NotificationsTableComponent
│ │ └── NotificationsTableComponent.js
│ ├── RequestStatusDialog
│ │ └── RequestStatusDialog.js
│ ├── Secret.js
│ ├── ServerStatusDialog
│ │ └── ServerStatusDialog.js
│ ├── SheetDialogs
│ │ ├── AlertDialog.js
│ │ ├── ColorComponent.js
│ │ ├── DecisionDialog.js
│ │ ├── DeleteCellContentDialog.js
│ │ ├── DeleteCellsDialog.js
│ │ ├── FormatCellsDialog.js
│ │ ├── InsertCellContentDialog.js
│ │ ├── InsertCellsDialog.js
│ │ ├── JSGHooks.js
│ │ ├── NamesDialog.js
│ │ ├── NumberFormatSettings.js
│ │ ├── PasteFunctionDialog.js
│ │ └── ValueRangesDialog.js
│ ├── base
│ │ ├── colorPicker
│ │ │ └── ColorPicker.js
│ │ ├── confirmDialog
│ │ │ └── ConfirmDialog.js
│ │ ├── customPrompt
│ │ │ └── CustomPrompt.js
│ │ ├── customTooltip
│ │ │ └── CustomTooltip.js
│ │ ├── jsontree
│ │ │ ├── DefaultTreeDataHandler.js
│ │ │ ├── JSONTreeGraphManager.js
│ │ │ └── JsonTree.js
│ │ ├── listInput
│ │ │ └── NamedListInput.js
│ │ ├── listing
│ │ │ ├── CombinedResourceListing.js
│ │ │ ├── FilterName.js
│ │ │ ├── ResourceCardHeader.js
│ │ │ ├── ResourceHeaderButton.js
│ │ │ ├── ResourceMenu.js
│ │ │ ├── ResourcesGrid.js
│ │ │ ├── ResourcesList.js
│ │ │ ├── Utils.js
│ │ │ └── styles.js
│ │ ├── multiTextFieldPairs
│ │ │ └── MultiTextFieldPairs.js
│ │ ├── multipleSelect
│ │ │ ├── MultipleSelect.js
│ │ │ └── MultipleSelect.test.js
│ │ ├── multipleTextField
│ │ │ └── MultipleTextField.js
│ │ └── sortSelector
│ │ │ ├── SortSelector.js
│ │ │ └── Utils.js
│ └── icons.js
│ ├── constants
│ ├── ActionTypes.js
│ ├── AdminConstants.js
│ ├── Constants.js
│ ├── WSTypes.js
│ └── WebsocketMessageTypes.js
│ ├── helper
│ ├── AccessManager.js
│ ├── AppIntlProvider.js
│ ├── ConfigManager.js
│ ├── DateTimeHelper.js
│ ├── GatewayClient.js
│ ├── GraphLocaleHandler.js
│ ├── Hooks.js
│ ├── IntlGlobalProvider.js
│ ├── LoggerMiddleware.js
│ ├── MachineHelper.js
│ ├── NotificationCenter.js
│ ├── Path.js
│ ├── SecurityHelper.js
│ ├── SetHelper.js
│ ├── StreamHelper.js
│ ├── Utils.js
│ └── synchronization
│ │ ├── CommandStack.js
│ │ ├── GraphSynchronizationInteractionHandler.js
│ │ ├── RequestCommandStack.js
│ │ └── SelectionItemView.js
│ ├── index.css
│ ├── index.js
│ ├── languages
│ ├── FunctionStrings.js
│ ├── NumberFormatTemplates.js
│ ├── de.json
│ ├── en.json
│ ├── localizer.js
│ └── translations.js
│ ├── layouts
│ ├── AdminNavigation.js
│ ├── AdminPageLayout.js
│ ├── GridViewButton.js
│ ├── HelpButton.js
│ ├── MachineDetailPage.js
│ ├── ResizeHandler.js
│ └── ThemeButton.js
│ ├── loading.svg
│ ├── pages
│ ├── DashboardPage.js
│ ├── DatabasePage.js
│ ├── ExportPage.js
│ ├── LicensePage.js
│ ├── common.js
│ └── index.js
│ ├── performance
│ └── EventCountingMap.js
│ ├── reducers
│ ├── adminSecurityReducer.js
│ ├── appReducer.js
│ ├── exportReducer.js
│ ├── importReducer.js
│ ├── jsgReducer.js
│ ├── localeReducer.js
│ ├── machineReducer.js
│ ├── machineSettingsReducer.js
│ ├── machinesReducer.js
│ ├── metaInformationReducer.js
│ ├── monitorreducers.js
│ ├── notificationsReducer.js
│ ├── streamsReducer.js
│ └── userReducer.js
│ ├── resources
│ ├── statuserror.png
│ ├── statusok.png
│ └── statuswarning.png
│ ├── store.js
│ └── theme.js
├── scripts
├── .eslintrc.js
├── Dockerfile.contextholder
├── build-contextholder.sh
├── build.js
├── changed-packages.js
├── copyright-header-apply.js
├── copyright-header.txt
├── i18n.js
├── set-version.sh
├── tag-latest.js
└── workspace-util.js
└── yarn.lock
/.dockerignore:
--------------------------------------------------------------------------------
1 | *
2 | !packages/*
3 | packages/webui/*
4 | packages/webui-components/*
5 | packages/jsg-ui/*
6 | packages/webcomponent/*
7 | !packages/webui/build
8 | packages/**/node_modules
9 | !yarn.lock
10 | !.yarnrc
11 | !package.json
12 | !npm-packages-offline-cache
13 | !scripts/workspace-util.js
14 | !packagejsons
15 | !deployment/single
16 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | extends: ['@cedalo/eslint-config'].map(require.resolve)
3 | };
4 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 |
5 | ---
6 |
7 | ## Summary
8 |
9 | ...
10 |
11 | ## Motivation
12 |
13 | ...
14 |
15 | ## Additional context
16 |
17 | ...
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/question.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Question
3 | about: Submit a question.
4 | ---
5 |
6 | ### Question
7 |
8 | ...
9 |
10 | ### Context
11 |
12 | ...
--------------------------------------------------------------------------------
/.idea/inspectionProfiles/Project_Default.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.idea/modules.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/.prettierrc.yml:
--------------------------------------------------------------------------------
1 | trailingComma: "none"
2 | tabWidth: 4
3 | semi: true
4 | singleQuote: true
5 | useTabs: true
6 | arrowParens: "always"
7 | printWidth: 120
8 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "files.exclude": {
3 | "npm-packages-offline-cache": true
4 | }
5 | }
--------------------------------------------------------------------------------
/.yarnrc:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | lastUpdateCheck 1553610353915
6 | yarn-offline-mirror "./npm-packages-offline-cache"
7 | yarn-offline-mirror-pruning true
--------------------------------------------------------------------------------
/assets/title.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/assets/title.png
--------------------------------------------------------------------------------
/assets/video.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/assets/video.png
--------------------------------------------------------------------------------
/deployment/rpi/installer/Dockerfile.rpi:
--------------------------------------------------------------------------------
1 | FROM alpine:latest
2 | LABEL maintainer="philip.ackermann@cedalo.com"
3 |
4 | RUN apk --no-cache add curl gnupg rsync unzip
5 |
6 | # Copy the docker-compose files
7 | COPY ./docker-compose /installer/docker-compose
8 |
9 | # Copy the scripts
10 | COPY ./start.sh /installer/start.sh
11 | COPY ./stop.sh /installer/stop.sh
12 | COPY ./update.sh /installer/update.sh
13 |
14 | # Copy the script executed during the installation
15 | COPY install.sh /install
16 | RUN chmod +x /install
17 |
18 | RUN mkdir -p /streamsheets
19 |
20 | ENTRYPOINT ["/install"]
21 |
--------------------------------------------------------------------------------
/deployment/rpi/installer/build-installer.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | VERSION="${1:-2.0-milestone}"
3 |
4 | docker build -t cedalo/streamsheets-installer:$VERSION-rpi -f Dockerfile.rpi .
5 | docker push cedalo/streamsheets-installer:$VERSION-rpi
6 |
--------------------------------------------------------------------------------
/deployment/rpi/installer/start.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | SCRIPTPATH="$(cd "$(dirname "$0")" ; pwd -P )"
3 | cd $SCRIPTPATH
4 | sudo docker network ls | grep streamsheets > /dev/null || sudo docker network create streamsheets
5 | sudo rm -f /internal-mongo/data/db/mongod.lock
6 |
7 | docker volume ls | grep streamsheets-data > /dev/null || docker volume create streamsheets-data
8 |
9 | sudo docker-compose \
10 | -f ./docker-compose/docker-compose.prod.yml \
11 | up
--------------------------------------------------------------------------------
/deployment/rpi/installer/stop.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker-compose \
4 | -f ./docker-compose/docker-compose.prod.yml \
5 | stop
6 |
--------------------------------------------------------------------------------
/deployment/rpi/installer/update.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker-compose \
4 | -f ./docker-compose/docker-compose.prod.yml \
5 | pull
6 |
--------------------------------------------------------------------------------
/deployment/single/README.md:
--------------------------------------------------------------------------------
1 | # Build
2 |
3 | ## Build Raspberry Pi version
4 |
5 | ```
6 | node ./scripts/build.js --name cedalo/streamsheets-personal --tag 1.5 --skip-frontend --dockerfile Dockerfile.rpi
7 | ```
8 |
--------------------------------------------------------------------------------
/deployment/single/build.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | docker build -t cedalo/streamsheets:2.0-milestone .
3 |
--------------------------------------------------------------------------------
/deployment/single/clear.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker kill streamsheets
4 | docker rm streamsheets
5 | docker network rm streamsheets
6 | docker volume rm streamsheets-data
7 |
--------------------------------------------------------------------------------
/deployment/single/installer-rpi/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:12.4.0-alpine
2 | LABEL maintainer="philip.ackermann@cedalo.com"
3 |
4 | RUN apk --no-cache add curl gnupg rsync unzip
5 |
6 | RUN mkdir -p /installer
7 |
8 | ARG version
9 |
10 | # Copy the docker-compose files and set version
11 | COPY ./docker-compose /installer/docker-compose
12 | RUN sed -i "s//$version/g" /installer/docker-compose/docker-compose.prod.yml
13 |
14 | # Copy the os specific start scripts
15 | COPY ./scripts /installer
16 |
17 | # Copy the script executed during the installation
18 | COPY install.sh /install
19 | RUN chmod +x /install
20 |
21 | ENTRYPOINT ["/install"]
22 |
--------------------------------------------------------------------------------
/deployment/single/installer-rpi/build-installer.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | set -uex
3 | VERSION="${1}"
4 |
5 | docker build . -t cedalo/streamsheets-installer:$VERSION-rpi --build-arg version="$VERSION"
6 | docker push cedalo/streamsheets-installer:$VERSION-rpi
7 |
8 |
--------------------------------------------------------------------------------
/deployment/single/installer-rpi/scripts/start.dev.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | CMD="${@:-up}"
4 |
5 | rm -f ./data/mongo/mongod.lock
6 |
7 | docker network ls --format={{.Name}} | grep '^streamsheets$' > /dev/null || docker network create streamsheets
8 |
9 | docker-compose \
10 | -f ./docker-compose/docker-compose.dev.yml \
11 | $CMD
12 |
--------------------------------------------------------------------------------
/deployment/single/installer-rpi/scripts/start.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | CMD="${@:-up}"
4 |
5 | rm -f ./data/mongo/mongod.lock
6 |
7 | docker network ls --format={{.Name}} | grep '^streamsheets$' > /dev/null || docker network create streamsheets
8 |
9 | docker-compose \
10 | -f ./docker-compose/docker-compose.prod.yml \
11 | $CMD
12 |
--------------------------------------------------------------------------------
/deployment/single/installer-rpi/scripts/stop.dev.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker-compose \
4 | -f ./docker-compose/docker-compose.dev.yml \
5 | stop
6 |
--------------------------------------------------------------------------------
/deployment/single/installer-rpi/scripts/stop.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker-compose \
4 | -f ./docker-compose/docker-compose.prod.yml \
5 | stop
6 |
--------------------------------------------------------------------------------
/deployment/single/installer-rpi/scripts/update.dev.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker-compose \
4 | -f ./docker-compose/docker-compose.dev.yml \
5 | pull
6 |
--------------------------------------------------------------------------------
/deployment/single/installer-rpi/scripts/update.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker-compose \
4 | -f ./docker-compose/docker-compose.prod.yml \
5 | pull
6 |
--------------------------------------------------------------------------------
/deployment/single/installer/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:12.4.0-alpine
2 | LABEL maintainer="philip.ackermann@cedalo.com"
3 | ARG os
4 |
5 | RUN mkdir -p /installer
6 |
7 | RUN apk --no-cache add curl gnupg rsync unzip
8 |
9 | # Copy the os specific start scripts
10 | COPY ./${os} /installer
11 |
12 | # Copy the script executed during the installation
13 | COPY install.sh /install
14 | RUN chmod +x /install
15 |
16 | ENTRYPOINT ["/install"]
17 |
--------------------------------------------------------------------------------
/deployment/single/installer/build-installer.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | VERSION="${1:-2.0-milestone}"
3 |
4 | docker build -t cedalo/streamsheets-installer:$VERSION-linux . --build-arg os=linux
5 | docker push cedalo/streamsheets-installer:$VERSION-linux
6 |
7 | docker build -t cedalo/streamsheets-installer:$VERSION-win . --build-arg os=win
8 | docker push cedalo/streamsheets-installer:$VERSION-win
9 |
10 | docker build -t cedalo/streamsheets-installer:$VERSION-macos . --build-arg os=macos
11 | docker push cedalo/streamsheets-installer:$VERSION-macos
12 |
--------------------------------------------------------------------------------
/deployment/single/installer/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | NAME="streamsheets"
4 | VERSION=$1
5 |
6 | echo "--> Installing Streamsheets"
7 |
8 | if [ "$VERSION" = "dev" ]
9 | then
10 | echo "--> Installing development version"
11 | rsync -r installer/ "/streamsheets"
12 | else
13 | rsync -r installer/ "/streamsheets" --exclude *.dev.*
14 | fi
15 |
16 | echo "--> Successfully installed Streamsheets"
17 |
--------------------------------------------------------------------------------
/deployment/single/installer/linux/stop.dev.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | echo "Stopping Streamsheets Docker container"
4 | docker stop streamsheets-dev
5 | echo "Stopped Streamsheets Docker container"
6 |
--------------------------------------------------------------------------------
/deployment/single/installer/linux/stop.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | echo "Stopping Streamsheets Docker container"
4 | docker stop streamsheets
5 | echo "Stopped Streamsheets Docker container"
6 |
--------------------------------------------------------------------------------
/deployment/single/installer/macos/stop.dev.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | echo "Stopping Streamsheets Docker container"
4 | docker stop streamsheets-dev
5 | echo "Stopped Streamsheets Docker container"
6 |
--------------------------------------------------------------------------------
/deployment/single/installer/macos/stop.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | echo "Stopping Streamsheets Docker container"
4 | docker stop streamsheets
5 | echo "Stopped Streamsheets Docker container"
6 |
--------------------------------------------------------------------------------
/deployment/single/installer/win/stop.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | echo "Stopping Streamsheets Docker container"
4 | docker stop streamsheets
5 | echo "Stopped Streamsheets Docker container"
6 |
--------------------------------------------------------------------------------
/deployment/single/installer/win/stop.dev.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | echo "Stopping Streamsheets Docker container"
4 | docker stop streamsheets-dev
5 | echo "Stopped Streamsheets Docker container"
6 |
--------------------------------------------------------------------------------
/deployment/single/mongodb/mongod.conf:
--------------------------------------------------------------------------------
1 | # mongod.conf
2 |
3 | # Where to store the data.
4 |
5 | # Note: if you run mongodb as a non-root user (recommended) you may need to create and set permissions for
6 | # this directory manually, e.g., if the parent directory isn't mutable by the mongodb user.
7 | dbpath=/var/lib/mongodb
8 |
--------------------------------------------------------------------------------
/deployment/single/mosquitto-default-credentials/pw.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/deployment/single/mosquitto-default-credentials/pw.txt
--------------------------------------------------------------------------------
/deployment/single/mosquitto/pw.txt:
--------------------------------------------------------------------------------
1 | cedalo:$6$9T/H76sO+OrEuqq6$v6WqTUgrhc+qU/93Y00x1x0ldz+BGJeFAZJx2FJQtN+TVWlWsX7RbXbZ77lQfMVHTzQRwelh9DrncXQj1usITw==
2 |
--------------------------------------------------------------------------------
/deployment/single/services/gateway/start.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-console */
2 | const http = require('http');
3 |
4 | const port = 8082;
5 |
6 | const requestHandler = (request, response) => {
7 | response.end('Gateway');
8 | };
9 |
10 | const server = http.createServer(requestHandler);
11 |
12 | server.listen(port, (error) => {
13 | if (error) {
14 | console.error(error);
15 | } else {
16 | console.log(`Gateway is listening on ${port}`);
17 | }
18 | });
19 |
--------------------------------------------------------------------------------
/deployment/single/services/service-graphs/start.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-console */
2 | const http = require('http');
3 |
4 | const port = 8090;
5 |
6 | const requestHandler = (request, response) => {
7 | response.end('Graph Service');
8 | };
9 |
10 | const server = http.createServer(requestHandler);
11 |
12 | server.listen(port, (error) => {
13 | if (error) {
14 | console.error(error);
15 | } else {
16 | console.log(`Graph Service is listening on ${port}`);
17 | }
18 | });
19 |
--------------------------------------------------------------------------------
/deployment/single/services/service-machines/start.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-console */
2 | const http = require('http');
3 |
4 | const port = 8091;
5 |
6 | const requestHandler = (request, response) => {
7 | response.end('Machine Service');
8 | };
9 |
10 | const server = http.createServer(requestHandler);
11 |
12 | server.listen(port, (error) => {
13 | if (error) {
14 | console.error(error);
15 | } else {
16 | console.log(`Machine Service is listening on ${port}`);
17 | }
18 | });
19 |
--------------------------------------------------------------------------------
/deployment/single/services/service-streams/start.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-console */
2 | const http = require('http');
3 |
4 | const port = 8083;
5 |
6 | const requestHandler = (request, response) => {
7 | response.end('Streams Service');
8 | };
9 |
10 | const server = http.createServer(requestHandler);
11 |
12 | server.listen(port, (error) => {
13 | if (error) {
14 | console.error(error);
15 | } else {
16 | console.log(`Streams Service is listening on ${port}`);
17 | }
18 | });
19 |
--------------------------------------------------------------------------------
/deployment/single/services/webui/start.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-console */
2 | const http = require('http');
3 |
4 | const port = 9000;
5 |
6 | const requestHandler = (request, response) => {
7 | response.end('Web UI');
8 | };
9 |
10 | const server = http.createServer(requestHandler);
11 |
12 | server.listen(port, (error) => {
13 | if (error) {
14 | console.error(error);
15 | } else {
16 | console.log(`Web UI is listening on ${port}`);
17 | }
18 | });
19 |
--------------------------------------------------------------------------------
/deployment/single/start-all.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | docker run \
3 | -p 27017:27017 \
4 | -p 1883:1883 \
5 | -p 6379:6379 \
6 | -p 8080:8080 \
7 | -p 8081:8081 \
8 | -p 8083:8083 \
9 | -p 8090:8090 \
10 | -p 8091:8091 \
11 | -p 9000:9000 \
12 | --env-file streamsheets.env \
13 | cedalo/streamsheets:2.0-milestone
14 |
--------------------------------------------------------------------------------
/deployment/single/wait-for-database.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | until nc -z $MONGO_HOST $MONGO_PORT
4 | do
5 | echo "Waiting for MongoDB ($MONGO_HOST:$MONGO_PORT) to start..."
6 | sleep 0.5
7 | done
8 |
9 | eval $*
10 |
--------------------------------------------------------------------------------
/deployment/slim/build.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | # docker build -t cedalo/streamsheets:1.5-slim .
3 | docker build -t cedalo/streamsheets-slim:1.5 .
4 |
--------------------------------------------------------------------------------
/deployment/slim/start.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker rm streamsheets-slim
4 |
5 | docker run \
6 | -p 8081:8081 \
7 | -p 8083:8083 \
8 | -v streamsheets-data:/var/lib/mongodb \
9 | --name streamsheets-slim \
10 | --network streamsheets \
11 | cedalo/streamsheets-slim:1.5
12 |
--------------------------------------------------------------------------------
/deployment/standard/installer/.dockerignore:
--------------------------------------------------------------------------------
1 | database-seed
2 | database-ui
3 | deploy
4 | old
5 | tests
6 | services/docker-compose/data
7 |
--------------------------------------------------------------------------------
/deployment/standard/installer/.gitignore:
--------------------------------------------------------------------------------
1 | services/docker-compose/data
--------------------------------------------------------------------------------
/deployment/standard/installer/build-installer.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | VERSION="${1:-1.5}"
3 |
4 | docker build -t cedalo/streamsheets-installer:$VERSION-standard-linux . --build-arg os=linux
5 | docker push cedalo/streamsheets-installer:$VERSION-standard-linux
6 |
7 | docker build -t cedalo/streamsheets-installer:$VERSION-standard-win . --build-arg os=win
8 | docker push cedalo/streamsheets-installer:$VERSION-standard-win
9 |
10 | docker build -t cedalo/streamsheets-installer:$VERSION-standard-macos . --build-arg os=macos
11 | docker push cedalo/streamsheets-installer:$VERSION-standard-macos
--------------------------------------------------------------------------------
/deployment/standard/installer/install.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | NAME="streamsheets"
4 | VERSION=$1
5 |
6 | echo "--> Installing Streamsheets"
7 |
8 | echo "--> Preparing docker-compose files"
9 | mkdir -p "/streamsheets/services/docker-compose"
10 | mkdir -p "/streamsheets/services/docker-compose/license"
11 |
12 | if [ "$VERSION" = "dev" ]
13 | then
14 | echo "--> Installing development version"
15 | rsync -r services "/streamsheets"
16 | else
17 | rsync -r services/docker-compose/docker-compose.prod.yml "/streamsheets/services/docker-compose/docker-compose.prod.yml"
18 | rsync -r services/scripts "/streamsheets/services" --exclude *.dev.*
19 | fi
20 |
21 | echo "--> Successfully installed Streamsheets"
22 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/README.md:
--------------------------------------------------------------------------------
1 | # Usage
2 |
3 | ## Start application with multiple machine service instances
4 |
5 | Example: start application with 5 machine service instances
6 | ```
7 | #!/usr/bin/env bash
8 | docker-compose \
9 | -f ./docker-compose/docker-compose.dev.ext.yml \
10 | -f ./docker-compose/docker-compose.dev.yml \
11 | -f ./docker-compose/docker-compose.mongodb.yml \
12 | -f ./docker-compose/docker-compose.mosquitto.yml \
13 | up \
14 | --scale service-machines=5
15 | ```
16 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/docker-compose.dev.database-seed.yml:
--------------------------------------------------------------------------------
1 | version: '3.7'
2 |
3 | services:
4 | internal-mongodb-seed:
5 | build: ../docker/database-seed
6 | container_name: database-seed
7 | links:
8 | - internal-mongodb
9 | depends_on:
10 | - internal-mongodb
11 | networks:
12 | - streamsheets
13 | networks:
14 | streamsheets:
15 | external:
16 | name: streamsheets
17 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/docker-compose.dev.hivemq.yml:
--------------------------------------------------------------------------------
1 | version: '3.7'
2 |
3 | services:
4 | streamsheets-service-streams:
5 | depends_on:
6 | - hivemq3
7 | - hivemq4
8 | hivemq3:
9 | image: hivemq/hivemq3
10 | container_name: hivemq3
11 | ports:
12 | - "8086:8080"
13 | - "1885:1883"
14 | expose:
15 | - 1885
16 | networks:
17 | - streamsheets
18 | hivemq4:
19 | image: hivemq/hivemq4
20 | container_name: hivemq4
21 | ports:
22 | - "8087:8080"
23 | - "1886:1883"
24 | expose:
25 | - 1886
26 | networks:
27 | - streamsheets
28 | networks:
29 | streamsheets:
30 | external:
31 | name: streamsheets
32 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/docker-compose.dev.integration.tests.yml:
--------------------------------------------------------------------------------
1 | version: '3.7'
2 |
3 | services:
4 | streamsheets-gateway:
5 | environment:
6 | MONGO_DATABASE: integration-tests
7 | streamsheets-service-machines:
8 | environment:
9 | MONGO_DATABASE: integration-tests
10 | streamsheets-service-streams:
11 | environment:
12 | MONGO_DATABASE: integration-tests
13 | streamsheets-service-auth:
14 | environment:
15 | MONGO_DATABASE: integration-tests
16 | networks:
17 | streamsheets:
18 | name: streamsheets
19 | driver: bridge
20 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/docker-compose.dev.logging.yml:
--------------------------------------------------------------------------------
1 | version: '3.7'
2 |
3 | services:
4 | streamsheets-gateway:
5 | logging:
6 | driver: "json-file"
7 | streamsheets-service-machines:
8 | logging:
9 | driver: "json-file"
10 | streamsheets-service-graphs:
11 | logging:
12 | driver: "json-file"
13 | streamsheets-service-streams:
14 | logging:
15 | driver: "json-file"
16 | streamsheets-service-auth:
17 | logging:
18 | driver: "json-file"
19 | networks:
20 | streamsheets:
21 | external:
22 | name: streamsheets
23 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/docker-compose.dev.mongodb.yml:
--------------------------------------------------------------------------------
1 | version: '3.7'
2 |
3 | services:
4 | streamsheets-service-streams:
5 | depends_on:
6 | - mongodb
7 | mongodb:
8 | image: mongo:3.6
9 | container_name: database
10 | # environment:
11 | # MONGO_INITDB_ROOT_USERNAME: cedalo
12 | # MONGO_INITDB_ROOT_PASSWORD: secret
13 | ports:
14 | - 27017:27017
15 | expose:
16 | - 27017
17 | networks:
18 | - streamsheets
19 | logging:
20 | driver: "none"
21 | networks:
22 | streamsheets:
23 | external:
24 | name: streamsheets
25 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/docker-compose.dev.mosquitto.yml:
--------------------------------------------------------------------------------
1 | version: '3.7'
2 |
3 | services:
4 | streamsheets-service-streams:
5 | depends_on:
6 | - broker
7 | broker:
8 | image: eclipse-mosquitto:1.6
9 | container_name: broker
10 | ports:
11 | - 1883:1883
12 | - 8082:8080
13 | expose:
14 | - 1883
15 | - 8082
16 | volumes:
17 | - ./mosquitto/mosquitto.conf:/mosquitto/config/mosquitto.conf
18 | - ./mosquitto/pw.txt:/mosquitto/config/pw.txt
19 | networks:
20 | - streamsheets
21 | logging:
22 | driver: "none"
23 | networks:
24 | streamsheets:
25 | external:
26 | name: streamsheets
27 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/docker-compose.dev.node-red.yml:
--------------------------------------------------------------------------------
1 | version: '3.7'
2 |
3 | services:
4 | nodered:
5 | image: nodered/node-red-docker
6 | container_name: nodered
7 | ports:
8 | - '1880:1880'
9 | expose:
10 | - 1880
11 | networks:
12 | - streamsheets
13 | logging:
14 | driver: "none"
15 | networks:
16 | streamsheets:
17 | external:
18 | name: streamsheets
19 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/license/.gitignore:
--------------------------------------------------------------------------------
1 | license.lic
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/mosquitto-internal/pw.txt:
--------------------------------------------------------------------------------
1 | cedalo:$6$9T/H76sO+OrEuqq6$v6WqTUgrhc+qU/93Y00x1x0ldz+BGJeFAZJx2FJQtN+TVWlWsX7RbXbZ77lQfMVHTzQRwelh9DrncXQj1usITw==
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/mosquitto/pw.txt:
--------------------------------------------------------------------------------
1 | cedalo:$6$F+GLrzIPd0rhzabH$2ObF0i7xtKELQhh+/2uWeglPh1CMmVE+qVql6fnhxNu1/l8Cy/1A38INqROpptiSYLOP2BOGRcjEJVzDwI3qqg==
2 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/docker-compose/service-streams/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "providers": [
3 | "@cedalo/stream-mqtt",
4 | "@cedalo/stream-aws-mqtt",
5 | "@cedalo/stream-rest-client",
6 | "@cedalo/rest-server",
7 | "@cedalo/stream-mongodb",
8 | "@cedalo/stream-file",
9 | "@cedalo/stream-kafka",
10 | "@cedalo/stream-mail-pop3",
11 | "@cedalo/stream-mail-smtp",
12 | "@cedalo/stream-toit"
13 | ],
14 | "queueStrategies": [],
15 | "database": {
16 | "collection": "streams"
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/scripts/linux/start.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker network ls | grep streamsheets > /dev/null || docker network create streamsheets
4 |
5 | CMD="${@:-up}"
6 | SCRIPT_LOCATION="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
7 |
8 | "${SCRIPT_LOCATION}/migrate.sh" --quiet
9 |
10 | docker volume ls | grep streamsheets-data > /dev/null || docker volume create streamsheets-data
11 |
12 | echo "docker-compose ${CMD} on base services..."
13 |
14 | docker-compose \
15 | -f ../../docker-compose/docker-compose.prod.yml \
16 | $CMD
17 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/scripts/macos/start.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | docker network ls | grep streamsheets > /dev/null || docker network create streamsheets
4 |
5 | CMD="${@:-up}"
6 | SCRIPT_LOCATION="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
7 |
8 | "${SCRIPT_LOCATION}/migrate.sh" --quiet
9 |
10 | docker volume ls | grep streamsheets-data > /dev/null || docker volume create streamsheets-data
11 |
12 | echo "docker-compose ${CMD} on base services..."
13 |
14 | docker-compose \
15 | -f ../../docker-compose/docker-compose.prod.yml \
16 | $CMD
17 |
--------------------------------------------------------------------------------
/deployment/standard/installer/services/scripts/win/start.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | docker network ls | findstr streamsheets || docker network create streamsheets
4 |
5 | set CMD=%*
6 | IF ["%CMD%"] == [""] set CMD=up
7 |
8 | CALL "%~dp0migrate.bat" --quiet
9 |
10 | docker volume ls | findstr streamsheets-data || docker volume create streamsheets-data
11 |
12 | echo "docker-compose %CMD% on base services..."
13 |
14 | docker-compose ^
15 | -f "%~dp0..\..\docker-compose\docker-compose.prod.yml" ^
16 | %CMD%
17 |
--------------------------------------------------------------------------------
/deployment/standard/intergration-tests-setup/start-integration-tests-setup.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | CMD="${1:-up}"
4 |
5 | echo "docker-compose ${CMD} on defaults services..."
6 |
7 | docker-compose \
8 | -f ../installer/services/docker-compose/docker-compose.dev.ext.yml \
9 | -f ../installer/services/docker-compose/docker-compose.dev.yml \
10 | -f ../installer/services/docker-compose/docker-compose.mongodb.yml \
11 | -f ../installer/services/docker-compose/docker-compose.mosquitto.yml \
12 | -f ../installer/services/docker-compose/docker-compose.integration.tests.yml \
13 | $CMD
14 |
--------------------------------------------------------------------------------
/notes/roadmap/README.md:
--------------------------------------------------------------------------------
1 | # Roadmap
2 |
3 | This document describes the current status and the upcoming milestones of the Streamsheets core project.
4 |
5 | | Status | Milestone | Release |
6 | | :---: | :--- | :---: |
7 | | 🛠️ | **Chart enhancements** | Mar 01 2020 |
8 | | ✅ | **Improve security** | Dec 01 2019 |
9 | | ✅ | **Integrate persistence into each service** | Sep 01 2019 |
10 | | ✅️ | **Merge repository server and gateway** | Sep 01 2019 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/packages/commons/src/functions.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const pipe = (...fns) => (val) => fns.reduce((res, fn) => fn(res), val);
12 | const compose = (...fns) => (val) => fns.reduceRight((res, fn) => fn(res), val);
13 |
14 | module.exports = {
15 | compose,
16 | pipe
17 | };
18 |
--------------------------------------------------------------------------------
/packages/commons/src/proc.js:
--------------------------------------------------------------------------------
1 | // script which is executed...
2 | // const path = require('path');
3 | // const getScript = () => path.relative(process.cwd(), process.argv[1]);
4 |
5 | const getScriptArgs = () => process.argv ? ` ${process.argv.slice(2).join(' ')}` : '';
6 | const getProcessArgs = () => process.execArgv ? ` ${process.execArgv.join(' ')}` : '';
7 |
8 | const setProcessTitle = (title, includeArgs = true) => {
9 | title = title || process.argv[0];
10 | process.title = includeArgs ? `Cedalo/${title}${getProcessArgs()}${getScriptArgs()}` : `${title}`;
11 | };
12 |
13 | module.exports = {
14 | setProcessTitle
15 | };
16 |
--------------------------------------------------------------------------------
/packages/commons/src/requireFile.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const requireFile = (file) => {
12 | try {
13 | // eslint-disable-next-line
14 | return require(`${file}`);
15 | } catch (err) {
16 | /* ignore */
17 | }
18 | return undefined;
19 | };
20 |
21 | module.exports = requireFile;
22 |
--------------------------------------------------------------------------------
/packages/commons/src/sleep.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const noop = () => {};
12 |
13 | const sleep = (ms, fn = noop) =>
14 | new Promise((resolve) => {
15 | setTimeout(() => resolve(fn()), ms);
16 | });
17 |
18 | module.exports = sleep;
19 |
--------------------------------------------------------------------------------
/packages/commons/test/jest.config.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | /**
12 | * NOTE:
13 | * - used to run a single test-file with cli option: --config
14 | * - to run ALL tests use $>npm t
15 | */
16 | module.exports = {
17 | bail: true,
18 | collectCoverage: false,
19 | verbose: true
20 | };
21 |
--------------------------------------------------------------------------------
/packages/error-codes/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 |
--------------------------------------------------------------------------------
/packages/error-codes/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | coverage
3 |
--------------------------------------------------------------------------------
/packages/error-codes/README.md:
--------------------------------------------------------------------------------
1 | # error-codes
2 |
3 | General error codes used throughout the system.
4 |
--------------------------------------------------------------------------------
/packages/functions/README.md:
--------------------------------------------------------------------------------
1 | # functions
2 |
3 | The core sheet-functions.
4 |
5 |
6 |
7 | ## Run Tests
8 | All tests are written with [`jest`][jest]. They can be run with npm.
9 | ```bash
10 | npm test
11 | ```
12 |
13 |
14 | ## Authors
15 | * [**Cedalo AG**][cedalo]
16 |
17 |
18 | ## License
19 | This project is licensed under the Eclipse Public License - see the [LICENSE][license] file for details.
20 |
21 |
22 | [cedalo]: https://cedalo.com
23 | [jest]: https://jestjs.io
24 | [license]: ../../LICENSE
25 |
--------------------------------------------------------------------------------
/packages/functions/src/codepages/errors/code.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 |
--------------------------------------------------------------------------------
/packages/functions/src/factory/FunctionFactory.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const streamfunc = require('./streamfunc');
12 |
13 | // currently only stream functions:
14 | module.exports = {
15 | createFrom: (fnDefinition) => streamfunc(fnDefinition)
16 | };
17 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/crypto/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2021 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const crypto = require('./crypto');
12 | const help = require('./help');
13 |
14 | module.exports = {
15 | help,
16 | functions: {
17 | ...crypto
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/database/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const database = require('./database');
13 |
14 | module.exports = {
15 | help,
16 | functions: { ...database }
17 | };
18 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/engineering/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const engineering = require('./engineering');
13 |
14 | module.exports = {
15 | help,
16 | functions: {
17 | ...engineering
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/http/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const http = require('./http');
13 |
14 | module.exports = {
15 | help,
16 | functions: { ...http }
17 | };
18 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/info/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const info = require('./info');
13 |
14 | module.exports = {
15 | help,
16 | functions: {
17 | ...info
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/logical/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const logical = require('./logical');
13 |
14 | module.exports = {
15 | help,
16 | functions: {
17 | ...logical
18 | // IF is inherent with parser! => condition term!!
19 | }
20 | };
21 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/lookup/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const lookup = require('./lookup');
13 |
14 | module.exports = {
15 | help,
16 | functions: {
17 | ...lookup
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/olap/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const olap = require('./olap');
13 |
14 | module.exports = {
15 | help,
16 | functions: {
17 | ...olap
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/parse/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const parse = require('./parse');
13 |
14 | module.exports = {
15 | help,
16 | functions: { ...parse }
17 | };
18 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/stack/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const stack = require('./stack');
13 |
14 | module.exports = {
15 | help,
16 | functions: {
17 | ...stack
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/streamsheet/goto.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const continueAt = require('./continueAt');
12 |
13 | module.exports = (sheet, ...terms) => continueAt(sheet, ...terms);
14 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/streamsheet/inboxdata.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const inboxread = require('../../utils/inboxread');
12 |
13 | const DATA = '[data]';
14 |
15 | const inboxdata = (sheet, ...terms) => inboxread(DATA, sheet, ...terms);
16 |
17 |
18 | module.exports = inboxdata;
19 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/timeseries/utils.js:
--------------------------------------------------------------------------------
1 | const setCellInfo = (key, info, term) => {
2 | const cell = term && term.cell;
3 | if (cell) cell.setCellInfo(key, info);
4 | };
5 |
6 | module.exports = {
7 | setCellInfo
8 | }
9 |
--------------------------------------------------------------------------------
/packages/functions/src/functions/url/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const help = require('./help');
12 | const url = require('./url');
13 |
14 | module.exports = {
15 | help,
16 | functions: { ...url }
17 | };
18 |
--------------------------------------------------------------------------------
/packages/functions/src/utils/date.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const TZ_OFFSET_IN_MS = new Date().getTimezoneOffset() * 60000;
12 |
13 | const localNow = () => Date.now() - TZ_OFFSET_IN_MS;
14 |
15 | module.exports = {
16 | localNow
17 | };
18 |
--------------------------------------------------------------------------------
/packages/gateway-client-node/README.md:
--------------------------------------------------------------------------------
1 | # gateway-client-node
2 |
3 | Node.js client for accessing the gateway.
4 |
--------------------------------------------------------------------------------
/packages/gateway-client-node/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | 'use strict';
12 |
13 | const NodeGatewayClient = require('./src/client/node/NodeGatewayClient');
14 |
15 | module.exports = {
16 | NodeGatewayClient
17 | };
18 |
--------------------------------------------------------------------------------
/packages/gateway-client-node/test/client/config/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "socketEndpointURL": "ws://localhost:8080/machineserver-proxy",
3 | "restEndpointURL": "http://localhost:8080/api/v1.0",
4 | "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiJtYWNoaW5lc2VydmVyIiwiaWF0IjoxNTA2NDM4NjE2LCJleHAiOjE1Mzc5NzQ2MTZ9.BV5M3JLrgLf9-WQrgv8WAj2_pRYJi79QMn9Gx8TSlPo"
5 | }
--------------------------------------------------------------------------------
/packages/gateway-client-proxy/README.md:
--------------------------------------------------------------------------------
1 | # gateway-client-proxy
2 |
3 | Proxy for accessing the gateway client running in a web worker.
4 |
--------------------------------------------------------------------------------
/packages/gateway-client-proxy/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | 'use strict';
12 |
13 | const WebWorkerGatewayClientProxy = require('./src/client/proxy/WebWorkerGatewayClientProxy');
14 |
15 | module.exports = {
16 | WebWorkerGatewayClientProxy
17 | };
18 |
--------------------------------------------------------------------------------
/packages/gateway-client/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 |
--------------------------------------------------------------------------------
/packages/gateway-client/src/client/apis/GatewayAPI.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | 'use strict';
12 |
13 | module.exports = class GatewayAPI {
14 | constructor(logger) {
15 | this._logger = logger;
16 | }
17 |
18 | get logger() {
19 | return this._logger;
20 | }
21 | };
22 |
--------------------------------------------------------------------------------
/packages/gateway-client/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | },
5 | "rules": {
6 | "no-console": "off",
7 | "no-unused-vars": "warn"
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/gateway-client/test/client/config/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "socketEndpointURL": "ws://localhost:8080/machineserver-proxy",
3 | "restEndpointURL": "http://localhost:8080/api/v1.0",
4 | "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiJtYWNoaW5lc2VydmVyIiwiaWF0IjoxNTA2NDM4NjE2LCJleHAiOjE1Mzc5NzQ2MTZ9.BV5M3JLrgLf9-WQrgv8WAj2_pRYJi79QMn9Gx8TSlPo"
5 | }
--------------------------------------------------------------------------------
/packages/gateway-client/test/client/helper/tests.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const {
12 | JSONToGraph
13 | } = require('./helper');
14 |
15 | const graphJSON = require('./graph');
16 |
17 | const graph = JSONToGraph(JSON.stringify(graphJSON));
18 | console.log(graph.getItemAt(0).getStreamSheet());
19 |
--------------------------------------------------------------------------------
/packages/gateway-plugins/webhook-server/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 |
--------------------------------------------------------------------------------
/packages/gateway-plugins/webhook-server/src/WebhookServerRepository.js:
--------------------------------------------------------------------------------
1 | // const { InputError } = require('@cedalo/gateway/out/src/errors');
2 | const { PLUGIN_ID } = require('./WebhookServer');
3 |
4 | const WebhookServerRepository = {
5 | async updateWebhookServer(id, webhookServer) {
6 | // throw InputError.invalid('Invalid WebhookServer Update', errors);
7 | const result = await this.db
8 | .collection(this.collection)
9 | .updateOne({ _id: id }, { $set: { [`extensionSettings.${PLUGIN_ID}`]: webhookServer } });
10 | return result;
11 | }
12 | };
13 |
14 | module.exports = {
15 | WebhookServerRepository
16 | };
17 |
--------------------------------------------------------------------------------
/packages/gateway/.eslintignore:
--------------------------------------------------------------------------------
1 | src/public
2 | coverage
3 | start.min.js
4 |
--------------------------------------------------------------------------------
/packages/gateway/.eslintrc.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | module.exports = {
12 | settings: {
13 | 'import/resolver': {
14 | node: {
15 | extensions: ['.js', '.jsx', '.ts', '.tsx']
16 | }
17 | }
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/packages/gateway/README.md:
--------------------------------------------------------------------------------
1 | # gateway
2 |
3 | Gateway for accessing the Streamsheet services.
4 |
--------------------------------------------------------------------------------
/packages/gateway/config/config-development.json:
--------------------------------------------------------------------------------
1 | {
2 | "app": {
3 | "appUrl": "http://localhost:3000"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/packages/gateway/config/config-production.json:
--------------------------------------------------------------------------------
1 | {
2 | "app": {
3 | "appUrl": "http://localhost:8081"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/packages/gateway/meta.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "gateway",
3 | "name": "Gateway Service",
4 | "description": "Service that provides a gateway API for accessing several services.",
5 | "provider": "cedalo AG",
6 | "buildNumber": "unknown"
7 | }
--------------------------------------------------------------------------------
/packages/gateway/public/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 |
--------------------------------------------------------------------------------
/packages/gateway/src/errors/AuthError.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const ERROR_CODES = require('./ErrorCodes');
12 |
13 | const notAllowed = (message) => ({ message, code: ERROR_CODES.NOT_ALLOWED, own: true });
14 |
15 | module.exports = {
16 | notAllowed
17 | };
18 |
--------------------------------------------------------------------------------
/packages/gateway/src/errors/MongoError.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const isConflict = (error) => (error && error.code === 11000) || false;
12 |
13 | module.exports = {
14 | isConflict
15 | };
16 |
--------------------------------------------------------------------------------
/packages/gateway/src/export-import/index.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export * from './ExportApi';
12 | export * from './ImportApi';
13 |
--------------------------------------------------------------------------------
/packages/gateway/src/initializer.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const setup = (/* service */) => {};
12 | module.exports = { setup };
13 |
--------------------------------------------------------------------------------
/packages/gateway/src/machine/index.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export * from './MachineServiceProxy';
12 | export * from './types';
13 | export * from './MachineApi';
--------------------------------------------------------------------------------
/packages/gateway/src/rest/routes/ConfigRoutes.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const CONFIG = require('../../config').get('app');
12 |
13 | module.exports = class ConfigRoutes {
14 | static async config(request, response) {
15 | response.status(200).json(CONFIG);
16 | }
17 | };
18 |
--------------------------------------------------------------------------------
/packages/gateway/src/stream/index.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export { Stream } from './types';
12 | export { StreamApi as BaseStreamApi, StreamApiApplied as StreamApi } from './StreamApi';
13 | export { StreamRepositoryProxy } from './StreamRepositoryProxy';
14 |
--------------------------------------------------------------------------------
/packages/gateway/src/user/index.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export { Actor, User, UserSettings } from './types';
12 | export { UserApi as BaseUserApi, UserApiApplied as UserApi } from './UserApi';
13 | export { createUserRepository } from './UserRepository';
14 |
--------------------------------------------------------------------------------
/packages/gateway/src/utils/logger.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const { create } = require('@cedalo/logger');
12 |
13 | module.exports = {
14 | // level,
15 | create: ({ name = 'Gateway-Logger' } = {}) => create({ name })
16 | };
17 |
--------------------------------------------------------------------------------
/packages/gateway/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true,
4 | "jest": true
5 | },
6 | "rules": {
7 | "no-console": "off",
8 | "no-unused-vars": "warn"
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/packages/gateway/test/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../tsconfig-base.json",
3 | "references": [{ "path": "../tsconfig.json" }],
4 | "compilerOptions": {
5 | "noEmit": true,
6 | "build": true
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/packages/gateway/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig-base.json",
3 | "compilerOptions": {
4 | "outDir": "./out", /* Redirect output structure to the directory. */
5 | "composite": true, /* Enable project compilation */
6 | },
7 | "include": ["src", "start.js", "index.ts"]
8 | }
9 |
--------------------------------------------------------------------------------
/packages/http-client/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const getInstance = require('./src/HTTPClient');
12 |
13 | module.exports = getInstance;
14 |
--------------------------------------------------------------------------------
/packages/idgenerator/README.md:
--------------------------------------------------------------------------------
1 | # id-generator
2 |
3 | Generator for different types of ids.
4 |
--------------------------------------------------------------------------------
/packages/idgenerator/index.d.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | declare module '@cedalo/id-generator' {
12 | function generate(): string;
13 | function generateUUID(): string;
14 | function generateShortId(): string;
15 | }
--------------------------------------------------------------------------------
/packages/idgenerator/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | 'use strict';
12 |
13 | const IdGenerator = require('./src/generators/IdGenerator');
14 |
15 | const instance = new IdGenerator();
16 |
17 | module.exports = instance;
18 |
--------------------------------------------------------------------------------
/packages/idgenerator/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@cedalo/id-generator",
3 | "version": "2.4.0",
4 | "description": "Generator for different types of ids",
5 | "main": "index.js",
6 | "scripts": {
7 | "lint": "./node_modules/.bin/eslint ."
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "git+https://github.com/cedalo/streamsheets.git"
12 | },
13 | "author": "Cedalo AG",
14 | "bugs": {
15 | "url": "https://github.com/cedalo/streamsheets/issues"
16 | },
17 | "homepage": "https://github.com/cedalo/streamsheets/tree/master/packages/idgenerator",
18 | "dependencies": {
19 | "shortid": "2.2.8",
20 | "uuid": "3.3.2"
21 | },
22 | "license": "EPL-2.0"
23 | }
24 |
--------------------------------------------------------------------------------
/packages/jsg-core/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["env"]
3 | }
4 |
--------------------------------------------------------------------------------
/packages/jsg-core/.eslintignore:
--------------------------------------------------------------------------------
1 | dist
2 | example-websocket
3 | gettingstarted
4 |
--------------------------------------------------------------------------------
/packages/jsg-core/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | # Logs
3 | logs
4 | *.log
5 | npm-debug.log*
6 | lint.txt
7 |
8 |
9 | # Dependency directories
10 | node_modules
11 |
12 | #build dir
13 | dist/
14 |
15 | # Code Coverage
16 | coverage
17 | .idea/
18 |
19 | # Statistics
20 | stats.json
21 |
--------------------------------------------------------------------------------
/packages/jsg-core/gettingstarted/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | JS Graph - Getting Started
5 |
6 |
7 |
8 |
9 |
10 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/packages/jsg-core/gettingstarted/indexd.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | JS Graph - Getting Started
5 |
6 |
7 |
8 |
9 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/packages/jsg-core/src/commons/Math.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | if (!Math.PI_2) {
12 | Math.PI_2 = Math.PI / 2;
13 | }
14 |
15 | if (!Math.PI_4) {
16 | Math.PI_4 = Math.PI / 4;
17 | }
18 |
19 | if (!Math.PI_8) {
20 | Math.PI_8 = Math.PI / 8;
21 | }
22 |
23 | module.exports = Math;
24 |
--------------------------------------------------------------------------------
/packages/jsg-core/src/graph/model/utils/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const dataprovider = require('./dataprovider');
12 | const map = require('./map');
13 | const properties = require('./properties');
14 |
15 | module.exports = {
16 | ...dataprovider,
17 | ...map,
18 | ...properties
19 | };
20 |
--------------------------------------------------------------------------------
/packages/jsg-ui/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["env"]
3 | }
4 |
--------------------------------------------------------------------------------
/packages/jsg-ui/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 | test
4 | firststeps
5 | example-websocket
6 | gettingstarted
7 | scripts
8 | src/includes.js
9 | src/ui/events/hammer.js
10 |
--------------------------------------------------------------------------------
/packages/jsg-ui/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | # Logs
3 | logs
4 | *.log
5 | npm-debug.log*
6 |
7 |
8 | # Dependency directories
9 | node_modules
10 |
11 | # build dir
12 | dist/
13 |
14 | # lib dir
15 | lib/
16 | example-websocket/index.js
17 | .idea/
18 |
19 | .DS_Store
20 | lint.txt
21 |
--------------------------------------------------------------------------------
/packages/jsg-ui/README.md:
--------------------------------------------------------------------------------
1 | # jsg-ui
2 |
3 | Javascript Graph Framework
4 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/graph/view/WorksheetHitCode.js:
--------------------------------------------------------------------------------
1 | const WorksheetHitCode = {
2 | NONE: 0,
3 | SHEET: 1,
4 | COLUMN: 2,
5 | ROW: 3,
6 | COLUMNSIZE: 4,
7 | ROWSIZE: 5,
8 | CORNER: 6,
9 | SELECTIONMOVE: 7,
10 | REFERENCEMOVE: 8,
11 | REFERENCERESIZE: 9,
12 | SELECTIONEXTEND: 10,
13 | ROWSIZEHIDDEN: 11,
14 | COLUMNSIZEHIDDEN: 12,
15 | COLUMNOUTLINE: 13,
16 | ROWOUTLINE: 14,
17 | DATAVIEW: 15,
18 | ERRORVIEW: 16
19 | };
20 |
21 | export default WorksheetHitCode;
22 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/columnsize.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/columnsize.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/columnsize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/columnsize.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/cross.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/cross.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/cross.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/cross.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/css/jsg.css:
--------------------------------------------------------------------------------
1 | .jsg-item-menu {
2 | background-color: rgba(0, 0, 0, 0);
3 | box-sizing: border-box;
4 | display: table;
5 | min-height: 24px;
6 | min-width: 24px;
7 | overflow: hidden;
8 | position: absolute;
9 | }
10 |
11 | .jsg-item-menu-row {
12 | background-color: rgba(0, 0, 0, 0);
13 | display: table-row;
14 | /*position: absolute;*/
15 | /*box-sizing: border-box;*/
16 | }
17 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/deny.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/deny.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/deny.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/deny.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/arrowdown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/arrowdown.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/arrowleft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/arrowleft.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/arrowright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/arrowright.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/arrowup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/arrowup.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/bold.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/bold.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/bullets.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/bullets.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/centeralign.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/centeralign.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/collapsed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/collapsed.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/expanded.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/expanded.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/fontcolor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/fontcolor.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/fontsizedown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/fontsizedown.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/fontsizeup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/fontsizeup.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/italic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/italic.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/leftalign.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/leftalign.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/notavailable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/notavailable.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/numbered.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/numbered.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/rightalign.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/rightalign.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/treechecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/treechecked.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/treeunchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/treeunchecked.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/images/underline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/images/underline.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/rotate.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/rotate.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/rotate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/rotate.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/rowsize.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/rowsize.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/rowsize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/rowsize.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/sheet.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/sheet.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/sheet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/sheet.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/sheetcolumn.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/sheetcolumn.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/sheetcolumn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/sheetcolumn.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/sheetrow.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/sheetrow.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/sheetrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/sheetrow.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/splith.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/splith.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/splith.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/splith.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/splitv.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/splitv.cur
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/splitv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/jsg-ui/src/res/splitv.png
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/arrowdown.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/arrowleft.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/arrowright.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/arrowup.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/checked.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/delete.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/edge.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/filter.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/hvedge.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/laneaddafter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/laneaddbefore.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/lanesplit_2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/lanesplit_3.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/unchecked.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/vlaneaddafter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/vlaneaddbefore.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/vlanesplit_2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/res/svg/vlanesplit_3.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/jsg-ui/src/ui/menu/entries/MenuDelete.js:
--------------------------------------------------------------------------------
1 | import { default as JSG, ImagePool, DeleteItemCommand } from '@cedalo/jsg-core';
2 | import ItemMenuEntry from '../ItemMenuEntry';
3 |
4 |
5 | export default class MenuDelete extends ItemMenuEntry {
6 | constructor() {
7 | super();
8 | this.id = 'del';
9 | this.element = JSG.imagePool.get(ImagePool.SVG_DELETE);
10 | }
11 |
12 | onEvent(event, item, editor) {
13 | const handled = event.type === 'click';
14 | if (handled) {
15 | const cmd = new DeleteItemCommand(item);
16 | editor.getInteractionHandler().execute(cmd);
17 | }
18 | return handled;
19 | }
20 | };
21 |
--------------------------------------------------------------------------------
/packages/logger/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 |
--------------------------------------------------------------------------------
/packages/logger/README.md:
--------------------------------------------------------------------------------
1 | # logger
2 |
3 | Logging library.
4 |
--------------------------------------------------------------------------------
/packages/logger/src/LoggerFactory.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const Logger = require('./Logger');
12 |
13 | module.exports = class LoggerFactory {
14 | static createLogger(name, level) {
15 | return new Logger({ name, level });
16 | }
17 | };
18 |
--------------------------------------------------------------------------------
/packages/machine-core/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 | node_modules
--------------------------------------------------------------------------------
/packages/machine-core/README.md:
--------------------------------------------------------------------------------
1 | # machine-core
2 |
3 | Core Stream Machine classes.
4 |
5 |
6 |
7 | ## Run Tests
8 | All tests are written with [`jest`][jest]. They can be run with npm.
9 | ```bash
10 | npm test
11 | ```
12 |
13 |
14 | ## Authors
15 | * [**Cedalo AG**][cedalo]
16 |
17 |
18 | ## License
19 | This project is licensed under the Eclipse Public License - see the [LICENSE][license] file for details.
20 |
21 |
22 | [cedalo]: https://cedalo.com
23 | [jest]: https://jestjs.io
24 | [license]: ../../LICENSE
25 |
--------------------------------------------------------------------------------
/packages/machine-core/src/locale/locales/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const de = require('./de');
12 | const en = require('./en');
13 | const us = require('./us');
14 |
15 | module.exports = {
16 | de,
17 | en,
18 | us
19 | };
20 |
--------------------------------------------------------------------------------
/packages/machine-core/src/utils/array.js:
--------------------------------------------------------------------------------
1 | const firstElements = (n, arr) => arr.slice(0, n);
2 | const lastElements = (n, arr) => {
3 | const length = arr.length;
4 | if (n > length) n = length;
5 | return arr.slice(length - n).reverse();
6 | };
7 |
8 |
9 | module.exports = {
10 | firstElements,
11 | lastElements
12 | }
--------------------------------------------------------------------------------
/packages/machine-core/src/utils/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const update = require('./update');
12 | const isEmpty = require('./isEmpty');
13 | const isType = require('./isType');
14 |
15 | module.exports = {
16 | ...isEmpty,
17 | ...update,
18 | isType
19 | };
20 |
--------------------------------------------------------------------------------
/packages/messages/README.md:
--------------------------------------------------------------------------------
1 | # messages
2 |
3 | Different messages that are used for the communication between the different components.
4 |
--------------------------------------------------------------------------------
/packages/messages/src/messages/core/CommandMessage.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const BaseMessage = require('./BaseMessage');
12 |
13 | module.exports = class CommandMessage extends BaseMessage {
14 |
15 | }
--------------------------------------------------------------------------------
/packages/messages/src/messages/core/DocumentMessage.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const BaseMessage = require('./BaseMessage');
12 |
13 | module.exports = class DocumentMessage extends BaseMessage {
14 |
15 | }
--------------------------------------------------------------------------------
/packages/messaging-client/README.md:
--------------------------------------------------------------------------------
1 | # messaging-client
2 |
3 | A layer above the concrete messaging client.
4 |
--------------------------------------------------------------------------------
/packages/number-format/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["env"]
3 | }
4 |
--------------------------------------------------------------------------------
/packages/number-format/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright (C) 2012-present SheetJS
2 |
3 | Licensed under the Apache License, Version 2.0 (the "License");
4 | you may not use this file except in compliance with the License.
5 | You may obtain a copy of the License at
6 |
7 | http://www.apache.org/licenses/LICENSE-2.0
8 |
9 | Unless required by applicable law or agreed to in writing, software
10 | distributed under the License is distributed on an "AS IS" BASIS,
11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | See the License for the specific language governing permissions and
13 | limitations under the License.
--------------------------------------------------------------------------------
/packages/parser/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | [
4 | "env",
5 | {
6 | "targets": {
7 | "browsers": [
8 | "last 2 versions"
9 | ]
10 | }
11 | }
12 | ]
13 | ]
14 | }
15 |
--------------------------------------------------------------------------------
/packages/parser/.gitignore:
--------------------------------------------------------------------------------
1 | #webstorm
2 | .idea
3 |
4 | # Coverage directory used by tools like istanbul
5 | coverage
6 |
7 | # Dependency directories
8 | node_modules
9 |
10 | # Logs
11 | logs
12 | *.log
13 | npm-debug.log*
14 |
--------------------------------------------------------------------------------
/packages/parsers/.gitignore:
--------------------------------------------------------------------------------
1 | #webstorm
2 | .idea
3 |
4 | # Coverage directory used by tools like istanbul
5 | coverage
6 |
7 | # Dependency directories
8 | node_modules
9 |
10 | # Logs
11 | logs
12 | *.log
13 | npm-debug.log*
14 |
--------------------------------------------------------------------------------
/packages/protocols/README.md:
--------------------------------------------------------------------------------
1 | # Messaging Protocols
2 |
3 | Protocol definitions for communication between gateway client, gateway and services.
4 |
5 | - [Gateway Messaging Protocol Specification](/api/GMP.md)
6 | - [Graph Server Messaging Protocol Specification](/api/GSMP.md)
7 | - [Machine Server Messaging Protocol Specification](/api/MSMP.md)
8 |
--------------------------------------------------------------------------------
/packages/repository/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage/
--------------------------------------------------------------------------------
/packages/repository/README.md:
--------------------------------------------------------------------------------
1 | # repository
2 |
3 | Persistence repositories for different components of the Stream Machine object model.
4 |
--------------------------------------------------------------------------------
/packages/repository/db/machines.json:
--------------------------------------------------------------------------------
1 | {
2 | "machines": [
3 | {
4 | "machine": null
5 | },
6 | {
7 | "machine": null
8 | },
9 | {
10 | "machine": null
11 | },
12 | {
13 | "machine": null
14 | },
15 | {
16 | "machine": null
17 | },
18 | {
19 | "machine": null
20 | },
21 | {
22 | "machine": null
23 | },
24 | {
25 | "machine": null
26 | },
27 | {
28 | "machine": null
29 | },
30 | {
31 | "machine": null
32 | },
33 | {
34 | "machine": null
35 | },
36 | {
37 | "machine": null
38 | },
39 | {
40 | "machine": null
41 | }
42 | ]
43 | }
--------------------------------------------------------------------------------
/packages/repository/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | },
5 | "rules": {
6 | "no-console": "off",
7 | "no-unused-vars": "warn"
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/repository/test/machines/machines-default.json:
--------------------------------------------------------------------------------
1 | {
2 | "machines": [
3 | {
4 | "machine": null
5 | },
6 | {
7 | "machine": null
8 | },
9 | {
10 | "machine": null
11 | },
12 | {
13 | "machine": null
14 | },
15 | {
16 | "machine": null
17 | },
18 | {
19 | "machine": null
20 | }
21 | ]
22 | }
--------------------------------------------------------------------------------
/packages/rest-server-core/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 |
--------------------------------------------------------------------------------
/packages/rest-server-core/README.md:
--------------------------------------------------------------------------------
1 | # rest-server-core
2 |
3 | Classes related to the REST server.
4 |
--------------------------------------------------------------------------------
/packages/rest-server-core/config/start.json:
--------------------------------------------------------------------------------
1 | {
2 | "http": {
3 | "port": 8083,
4 | "ipaddress": "0.0.0.0",
5 | "secure": false,
6 | "key": "localhost.key",
7 | "cert": "localhost.cert"
8 | },
9 | "scaffolds": {
10 | "defaultNode": {
11 | "title": "Default node",
12 | "index": 0,
13 | "type": "node"
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/packages/rest-server-core/src/templates/index.pug:
--------------------------------------------------------------------------------
1 | html
2 | head
3 | meta(http-equiv="refresh" content="5")
4 | body
5 | table
6 | thead
7 | tr
8 | each header in content[0]
9 | th= header
10 | tbody
11 | each row, index in content
12 | if index>0
13 | tr
14 | each column in row
15 | td= column
16 |
--------------------------------------------------------------------------------
/packages/rest-server-core/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | },
5 | "rules": {
6 | "no-console": "off",
7 | "no-unused-vars": "warn"
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/rest-server-core/test/client/request001.json:
--------------------------------------------------------------------------------
1 | {
2 | "url": "http://localhost:3003/api/v1.0/rest/cedalo/examples",
3 | "method": "GET",
4 | "headers": {
5 | "Accept": "application/json"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/packages/rest-server-core/test/client/request002.json:
--------------------------------------------------------------------------------
1 | {
2 | "url": "/cedalo/examples",
3 | "method": "GET",
4 | "headers": {
5 | "Accept": "application/json"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/packages/rest-server-core/test/client/request003.json:
--------------------------------------------------------------------------------
1 | {
2 | "url": "/cedalo/examples",
3 | "method": "GET",
4 | "headers": {
5 | "Accept": "application/json"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/packages/rest-server-core/test/client/request004.json:
--------------------------------------------------------------------------------
1 | {
2 | "url": "http://samples.openweathermap.org/data/2.5/weather?id=2172797&appid=df90123518f2e71455b31e063d96a52d",
3 | "method": "GET",
4 | "headers": {
5 | "Accept": "application/json"
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/packages/rest-server-core/test/k6/README.md:
--------------------------------------------------------------------------------
1 | ```
2 | $ docker pull loadimpact/k6
3 | $ docker run -i loadimpact/k6 run - ;
15 | }
16 | }
--------------------------------------------------------------------------------
/packages/service-graphs/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 |
--------------------------------------------------------------------------------
/packages/service-graphs/README.md:
--------------------------------------------------------------------------------
1 | # service-graphs
2 |
3 | Service for managing graphs.
4 |
--------------------------------------------------------------------------------
/packages/service-graphs/config/config.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | module.exports = {
12 | mongodb: {
13 | MONGO_HOST: process.env.MONGO_HOST || 'localhost',
14 | MONGO_PORT: parseInt(process.env.MONGO_PORT, 10) || 27017,
15 | MONGO_DATABASE: process.env.MONGO_DATABASE || 'migration'
16 | }
17 | };
18 |
--------------------------------------------------------------------------------
/packages/service-graphs/meta.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "graphs",
3 | "name": "Graph Service",
4 | "description": "Service that provides synchronisation of graph instances.",
5 | "provider": "cedalo AG",
6 | "buildNumber": "unknown"
7 | }
--------------------------------------------------------------------------------
/packages/service-graphs/src/utils/ignore.js:
--------------------------------------------------------------------------------
1 | const SERVER_COMMANDS = [
2 | 'command.server.CompoundRequestCommand',
3 | 'command.server.DeleteCellsCommand',
4 | 'command.server.PasteCellsCommand',
5 | 'command.server.SetCellLevelsCommand',
6 | 'command.server.SetCellsCommand',
7 | 'command.server.SetCellsPropertiesCommand'
8 | ];
9 |
10 | const ignoreAll = (list) => (str) => !str || list.includes(str);
11 |
12 | module.exports = {
13 | SERVER_COMMANDS,
14 | ignoreAll
15 | }
--------------------------------------------------------------------------------
/packages/service-graphs/src/utils/logger.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const { create } = require('@cedalo/logger');
12 |
13 | module.exports = {
14 | // level,
15 | create: ({ name = 'GraphService-Logger' } = {}) => create({ name })
16 | };
17 |
--------------------------------------------------------------------------------
/packages/service-machines/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 |
--------------------------------------------------------------------------------
/packages/service-machines/README.md:
--------------------------------------------------------------------------------
1 | # service-machines
2 |
3 | Service for managing and running stream machines.
4 |
5 |
6 |
7 | ## Authors
8 | * [**Cedalo AG**][cedalo]
9 |
10 |
11 | ## License
12 | This project is licensed under the Eclipse Public License - see the [LICENSE][license] file for details.
13 |
14 |
15 | [cedalo]: https://cedalo.com
16 | [license]: ../../LICENSE
17 |
--------------------------------------------------------------------------------
/packages/service-machines/meta.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "machines",
3 | "name": "Machine Service",
4 | "description": "Service that provides a machine server.",
5 | "provider": "cedalo AG",
6 | "buildNumber": "unknown"
7 | }
--------------------------------------------------------------------------------
/packages/service-machines/src/utils/property.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const get = (...path) => (obj, def) => {
12 | const prop = path.reduce((parent, part) => (parent != null ? parent[part] : parent), obj);
13 | return prop != null ? prop : def;
14 | };
15 |
16 | module.exports = { get };
--------------------------------------------------------------------------------
/packages/service-machines/src/utils/trycatch.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | module.exports = (fn, logger) => (...args) => {
12 | let res;
13 | try {
14 | res = fn(...args);
15 | } catch (ex) {
16 | if (logger) logger.error(ex);
17 | }
18 | return res;
19 | };
20 |
--------------------------------------------------------------------------------
/packages/service-streams/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 | node_modules
--------------------------------------------------------------------------------
/packages/service-streams/README.md:
--------------------------------------------------------------------------------
1 | # service-streams
2 |
3 | Service for managing streams.
4 |
--------------------------------------------------------------------------------
/packages/service-streams/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "providers": [
3 | "@cedalo/stream-rest-client",
4 | "@cedalo/rest-server",
5 | "@cedalo/stream-mongodb",
6 | "@cedalo/stream-file",
7 | "@cedalo/stream-kafka",
8 | "@cedalo/stream-mail-pop3",
9 | "@cedalo/stream-mail-smtp",
10 | "@cedalo/stream-mqtt",
11 | "@cedalo/stream-toit"
12 | ],
13 | "queueStrategies": [
14 | ],
15 | "database": {
16 | "collection" : "streams"
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/packages/service-streams/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | 'use strict';
12 |
13 | const MongoDBStreamsRepository = require('./src/persistence/MongoDBStreamsRepository');
14 |
15 | module.exports = {
16 | MongoDBStreamsRepository
17 | };
18 |
--------------------------------------------------------------------------------
/packages/service-streams/meta.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "streams",
3 | "name": "Streams Service",
4 | "description": "Service that provides streams.",
5 | "provider": "cedalo AG",
6 | "buildNumber": "unknown"
7 | }
--------------------------------------------------------------------------------
/packages/service-streams/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | },
5 | "rules": {
6 | "no-console": "off",
7 | "no-unused-vars": "warn"
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/stream/file/README.md:
--------------------------------------------------------------------------------
1 | # stream-file
2 |
3 | Classes for the file stream.
4 |
--------------------------------------------------------------------------------
/packages/stream/file/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const FileProvider = require('./src/FileProvider');
12 |
13 | module.exports = {
14 | Provider: FileProvider,
15 | };
16 |
--------------------------------------------------------------------------------
/packages/stream/kafka/README.md:
--------------------------------------------------------------------------------
1 | # stream-kafka
2 |
3 | Classes for the Kafka stream.
4 |
--------------------------------------------------------------------------------
/packages/stream/kafka/docker/certs/ca-cert.srl:
--------------------------------------------------------------------------------
1 | 839412E1B55B2B15
2 |
--------------------------------------------------------------------------------
/packages/stream/kafka/docker/certs/client.truststore.jks:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/stream/kafka/docker/certs/client.truststore.jks
--------------------------------------------------------------------------------
/packages/stream/kafka/docker/certs/server.keystore.jks:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/stream/kafka/docker/certs/server.keystore.jks
--------------------------------------------------------------------------------
/packages/stream/kafka/docker/certs/server.truststore.jks:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/stream/kafka/docker/certs/server.truststore.jks
--------------------------------------------------------------------------------
/packages/stream/kafka/docker/docker-compose.0.10.yml:
--------------------------------------------------------------------------------
1 | version: '2'
2 | services:
3 | kafka:
4 | image: wurstmeister/kafka:0.10.2.1
5 |
--------------------------------------------------------------------------------
/packages/stream/kafka/docker/docker-compose.0.11.yml:
--------------------------------------------------------------------------------
1 | version: '2'
2 | services:
3 | kafka:
4 | image: wurstmeister/kafka:0.11.0.0
5 | environment:
6 | KAFKA_LOG_MESSAGE_FORMAT_VERSION: "0.10.2"
7 | volumes:
8 | - ./docker/start-kafka.sh:/usr/bin/start-kafka.sh
--------------------------------------------------------------------------------
/packages/stream/kafka/docker/docker-compose.0.8.yml:
--------------------------------------------------------------------------------
1 | version: '2'
2 | services:
3 | kafka:
4 | image: wurstmeister/kafka:0.8.2.2-1
5 | environment:
6 | KAFKA_BROKER_ID: "01"
7 |
8 |
--------------------------------------------------------------------------------
/packages/stream/kafka/docker/docker-compose.0.9.yml:
--------------------------------------------------------------------------------
1 | version: '2'
2 | services:
3 | kafka:
4 | image: wurstmeister/kafka:0.9.0.1
5 |
--------------------------------------------------------------------------------
/packages/stream/kafka/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const KafkaProvider = require('./src/KafkaProvider');
12 |
13 | module.exports = {
14 | Provider: KafkaProvider
15 | };
16 |
--------------------------------------------------------------------------------
/packages/stream/kafka/src/KafkaFunctions.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | module.exports = {
12 | COMMAND: 'KAFKA.COMMAND',
13 | QUERY: 'KAFKA.QUERY'
14 | };
--------------------------------------------------------------------------------
/packages/stream/kafka/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | },
5 | "rules": {
6 | "no-console": "off",
7 | "no-unused-vars": "warn"
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/stream/mail-pop3/README.md:
--------------------------------------------------------------------------------
1 | # stream-mail-pop3
2 |
3 | Classes for the POP3 stream.
4 |
--------------------------------------------------------------------------------
/packages/stream/mail-pop3/test/smtpserver/.eslintrc.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | module.exports = {
12 | rules: {
13 | 'no-console': 0,
14 | }
15 | };
--------------------------------------------------------------------------------
/packages/stream/mail-pop3/test/smtpserver/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const { run } = require('./server');
12 |
13 | run((msg) => { console.log(JSON.stringify(msg, null, 2)); });
14 |
--------------------------------------------------------------------------------
/packages/stream/mail-smtp/README.md:
--------------------------------------------------------------------------------
1 | # stream-mail-smtp
2 |
3 | Classes for the SMTP stream.
4 |
--------------------------------------------------------------------------------
/packages/stream/mail-smtp/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const SmtpProvider = require('./src/SmtpProvider');
12 | const SmtpProviderConfiguration = require('./src/SmtpProviderConfiguration');
13 |
14 | module.exports = {
15 | Provider: SmtpProvider,
16 | SmtpProviderConfiguration
17 | };
18 |
--------------------------------------------------------------------------------
/packages/stream/mail-smtp/test/smtpserver/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const { run } = require('./server');
12 |
13 | // eslint-disable-next-line no-console
14 | run((msg) => { console.log(JSON.stringify(msg, null, 2)); });
15 |
--------------------------------------------------------------------------------
/packages/stream/mongodb/README.md:
--------------------------------------------------------------------------------
1 | # stream-mongodb
2 |
3 | Classes for the MongoDB stream.
4 |
--------------------------------------------------------------------------------
/packages/stream/mongodb/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const MongoDBProvider = require('./src/MongoDBProvider');
12 |
13 | module.exports = {
14 | Provider: MongoDBProvider
15 | };
16 |
--------------------------------------------------------------------------------
/packages/stream/mongodb/src/MongoDBFunctions.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | module.exports = {
12 | STORE: 'MONGO.STORE',
13 | REPLACE: 'MONGO.REPLACE',
14 | QUERY: 'MONGO.QUERY',
15 | DELETE: 'MONGO.DELETE',
16 | AGGREGATE: 'MONGO.AGGREGATE',
17 | COUNT: 'MONGO.COUNT'
18 | };
19 |
--------------------------------------------------------------------------------
/packages/stream/mongodb/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | },
5 | "rules": {
6 | "no-console": "off",
7 | "no-unused-vars": "warn"
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/stream/mqtt/README.md:
--------------------------------------------------------------------------------
1 | # stream-mqtt
2 |
3 | Classes for the MQTT stream.
4 |
--------------------------------------------------------------------------------
/packages/stream/mqtt/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | },
5 | "rules": {
6 | "no-console": "off",
7 | "no-unused-vars": "warn"
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/stream/mqtt/test/docker-compose.yml:
--------------------------------------------------------------------------------
1 | version: '3.1'
2 |
3 | services:
4 | mosquitto5:
5 | image: ralight/mosquitto:mqtt5-test2
6 | container_name: mosquitto5
7 | ports:
8 | - 1883:1883
9 | expose:
10 | - 1883
11 | logging:
12 | driver: "none"
13 |
--------------------------------------------------------------------------------
/packages/stream/rest-client/README.md:
--------------------------------------------------------------------------------
1 | # stream-rest-client
2 |
3 | Classes for the REST client stream.
4 |
--------------------------------------------------------------------------------
/packages/stream/rest-client/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const RestClientProvider = require('./src/RestClientProvider');
12 |
13 | module.exports = {
14 | Provider: RestClientProvider
15 | };
16 |
--------------------------------------------------------------------------------
/packages/stream/toit/README.md:
--------------------------------------------------------------------------------
1 | # stream-toit
2 |
3 | Classes for the Toit stream.
4 |
--------------------------------------------------------------------------------
/packages/stubs/jsg-extensions/core/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const { SheetPlotNode } = require('./SheetPlotNode');
12 |
13 | module.exports = {
14 | SheetPlotNode
15 | };
16 |
--------------------------------------------------------------------------------
/packages/stubs/service-machines-extensions/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const resolveAdditionalFunctions = require('./src/resolveAdditionalFunctions');
12 |
13 | module.exports = {
14 | resolveAdditionalFunctions
15 | };
16 |
--------------------------------------------------------------------------------
/packages/stubs/service-machines-extensions/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@cedalo/service-machines-extensions",
3 | "version": "2.4.0",
4 | "description": "Service Machines Extensions",
5 | "main": "index.js",
6 | "repository": {
7 | "type": "git",
8 | "url": "git+https://github.com/cedalo/streamsheets.git"
9 | },
10 | "author": "Cedalo AG",
11 | "bugs": {
12 | "url": "https://github.com/cedalo/streamsheets/issues"
13 | },
14 | "dependencies": {},
15 | "peerDependencies": {
16 | "@cedalo/commons": "2.4.0",
17 | "@cedalo/logger": "2.4.0"
18 | },
19 | "license": "EPL-2.0"
20 | }
21 |
--------------------------------------------------------------------------------
/packages/stubs/service-machines-extensions/src/resolveAdditionalFunctions.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const resolveAdditionalFunctions = () => Promise.resolve([]);
12 |
13 | module.exports = resolveAdditionalFunctions;
14 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/AdminNavigationExtensions.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export function AdminNavigationExtensions() {
12 | return null;
13 | }
14 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/MainDrawerExtensions/FileSection.js:
--------------------------------------------------------------------------------
1 | export default function FileSection() {
2 | return null;
3 | }
4 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/MainDrawerExtensions/ImportSection.js:
--------------------------------------------------------------------------------
1 | export default function ImportSection() {
2 | return null;
3 | }
4 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/MainDrawerExtensions/PreviewSection.js:
--------------------------------------------------------------------------------
1 | export default function PreviewSection() {
2 | return null;
3 | }
4 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/MainDrawerExtensions/StreamSection.js:
--------------------------------------------------------------------------------
1 | import Divider from '@material-ui/core/Divider';
2 | import React from 'react';
3 | import WebhookServerSettingsMenuItem from '../webhook-server/WebhookServerSettingsMenuItem';
4 |
5 | function StreamSection({ isMachineDetailPage }) {
6 | return isMachineDetailPage ? (
7 |
8 |
9 |
10 |
11 | ) : null;
12 | }
13 |
14 | export default StreamSection;
15 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/MainDrawerExtensions/index.js:
--------------------------------------------------------------------------------
1 | import FileSection from './FileSection';
2 | import ImportSection from './ImportSection';
3 | import PreviewSection from './PreviewSection';
4 | import StreamSection from './StreamSection';
5 |
6 | export { FileSection, ImportSection, PreviewSection, StreamSection };
7 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/PluginExtensions.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export function PluginExtensions() {
12 | return null;
13 | }
14 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/RoutesExtensions.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export function RoutesExtensions() {
12 | return null;
13 | }
14 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/ToolbarExtensions.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | import React from 'react';
12 |
13 | export function ToolbarExtensions() {
14 | return (
15 |
21 | );
22 | }
23 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/WorkspaceSelect.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export const WorkspaceSelect = () => null;
12 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/pages/UserPropTypes.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | import PropTypes from 'prop-types';
12 |
13 | export const userShape = PropTypes.shape({
14 | username: PropTypes.string,
15 | lastModified: PropTypes.string,
16 | });
17 |
--------------------------------------------------------------------------------
/packages/stubs/webui-extensions/src/pages/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export * from './UpdateUserPage';
12 | export * from './CreateUserPage';
13 | export * from './UserTablePage';
14 |
--------------------------------------------------------------------------------
/packages/util/README.md:
--------------------------------------------------------------------------------
1 | # util
2 |
3 | Utility classes.
4 |
--------------------------------------------------------------------------------
/packages/util/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const StringUtil = require('./src/String');
12 | const ArrayUtil = require('./src/Array');
13 |
14 | module.exports = {
15 | StringUtil,
16 | ArrayUtil
17 | };
18 |
--------------------------------------------------------------------------------
/packages/webcomponent/demo/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 | node_modules
4 |
--------------------------------------------------------------------------------
/packages/webcomponent/demo/.gitignore:
--------------------------------------------------------------------------------
1 | dist
2 | node_modules
--------------------------------------------------------------------------------
/packages/webcomponent/demo/.prettierignore:
--------------------------------------------------------------------------------
1 | package-lock.json
2 | node_modules/
--------------------------------------------------------------------------------
/packages/webcomponent/streammachine/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 |
--------------------------------------------------------------------------------
/packages/webcomponent/streammachine/README.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webcomponent/streammachine/README.md
--------------------------------------------------------------------------------
/packages/webcomponent/streammachine/test/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | },
5 | "rules": {
6 | "no-console": "off",
7 | "no-unused-vars": "warn"
8 | }
9 | }
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/.babelrc.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | module.exports = {
12 | presets: ['@babel/preset-env']
13 | };
14 |
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 | node_modules
4 |
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/.gitignore:
--------------------------------------------------------------------------------
1 | dist
2 | node_modules
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/.prettierignore:
--------------------------------------------------------------------------------
1 | package-lock.json
2 | node_modules/
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/src/Credentials.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | type Credentials = {
12 | username?: string | null,
13 | password?: string | null,
14 | token?: string | null
15 | }
16 |
17 | export default Credentials;
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/src/Events.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export type EventMessage = {
12 | type: string;
13 | [idx: string]: any;
14 | };
15 |
16 | export type EventHandler = (ev: EventMessage) => void;
17 |
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/src/IMachineJSON.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | interface IMachineJSON {
12 | id: string;
13 | name: string;
14 | state: string;
15 | }
16 |
17 | export default IMachineJSON;
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/src/utils/cast.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const elementToType = (el?: Element | null, cond?: (el: Element) => boolean): T | undefined =>
12 | el && cond && cond(el) ? (el as T) : undefined;
13 |
14 | export default { elementToType };
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/src/utils/index.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | import cast from './cast';
12 | import property from './property';
13 | import traverse from './traverse';
14 | import validate from './validate';
15 |
16 | export default { cast, property, traverse, validate };
17 |
--------------------------------------------------------------------------------
/packages/webcomponent/streamsheet-connection/src/utils/validate.ts:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | const tagName = (element?: Element | null, name?: string): boolean =>
12 | !!name && !!element && element.tagName.toLowerCase() === name;
13 |
14 |
15 | export default { tagName };
--------------------------------------------------------------------------------
/packages/webui-components/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | import MenuGroup from './src/MenuGroup';
12 | import MenuEntry from './src/MenuEntry';
13 |
14 | export {
15 | MenuGroup,
16 | MenuEntry
17 | }
18 |
--------------------------------------------------------------------------------
/packages/webui-components/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@cedalo/webui-components",
3 | "version": "2.4.0",
4 | "description": "Web UI Components",
5 | "main": "index.js",
6 | "repository": {
7 | "type": "git",
8 | "url": "git+https://github.com/cedalo/streamsheets.git"
9 | },
10 | "author": "Cedalo AG",
11 | "bugs": {
12 | "url": "https://github.com/cedalo/streamsheets/issues"
13 | },
14 | "dependencies": {
15 | },
16 | "peerDependencies": {
17 | "@material-ui/core": "4.9.11",
18 | "@material-ui/icons": "4.9.1",
19 | "react": "^16.12.0",
20 | "react-intl": "^2.4.0",
21 | "react-redux": "^5.0.6",
22 | "react-router-dom": "^5.2.0",
23 | "redux": "^3.7.2"
24 | },
25 | "license": "EPL-2.0"
26 | }
27 |
--------------------------------------------------------------------------------
/packages/webui/.browserslistrc:
--------------------------------------------------------------------------------
1 | > 1% in DE
2 | > 2% in US
3 | not dead
4 | not ie 11
--------------------------------------------------------------------------------
/packages/webui/.eslintignore:
--------------------------------------------------------------------------------
1 | # TODO adjust, its maybe to much...
2 | build
3 | config
4 | public
5 | scripts
6 | node_modules
--------------------------------------------------------------------------------
/packages/webui/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:12.4.0-alpine
2 |
3 | RUN mkdir -p /app
4 | RUN npm i -g pushstate-server@3.0.1
5 | WORKDIR /app
6 |
7 | COPY ./build .
8 |
9 | EXPOSE 9000
10 |
11 | CMD [ "pushstate-server", "./" ]
--------------------------------------------------------------------------------
/packages/webui/README.md:
--------------------------------------------------------------------------------
1 | # webui
2 |
3 | Frontend for streamsheets
4 |
--------------------------------------------------------------------------------
/packages/webui/licenses/license_DE.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/licenses/license_DE.pdf
--------------------------------------------------------------------------------
/packages/webui/licenses/license_EN.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/licenses/license_EN.pdf
--------------------------------------------------------------------------------
/packages/webui/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/favicon.ico
--------------------------------------------------------------------------------
/packages/webui/public/faviconold.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/faviconold.ico
--------------------------------------------------------------------------------
/packages/webui/public/images/avatar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/avatar.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/area.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/area.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/areastacked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/areastacked.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/areastacked100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/areastacked100.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/bar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/bar.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/barstacked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/barstacked.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/barstacked100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/barstacked100.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/boxplot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/boxplot.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/bubble.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/bubble.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/column.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/column.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/columnstacked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/columnstacked.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/columnstacked100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/columnstacked100.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/doughnut.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/doughnut.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/funnel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/funnel.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/funnelbar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/funnelbar.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/funnelhorz.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/funnelhorz.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/funnelhorzcolumn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/funnelhorzcolumn.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/gauge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/gauge.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/gauge23.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/gauge23.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/gaugepointer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/gaugepointer.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/gaugevalue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/gaugevalue.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/halfpie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/halfpie.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/heatmap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/heatmap.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/line.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/line.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/linestacked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/linestacked.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/linestacked100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/linestacked100.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/linestep.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/linestep.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/map.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/map.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/pie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/pie.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/pie3d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/pie3d.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/profile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/profile.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/scatterline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/scatterline.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/scatterlinemarker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/scatterlinemarker.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/scattermarker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/scattermarker.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/statecolumn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/statecolumn.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/stateperiod.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/stateperiod.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/statetime.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/statetime.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/stockhlc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/stockhlc.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/stockohlc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/stockohlc.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/stockvhlc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/stockvhlc.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/stockvohlc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/stockvohlc.png
--------------------------------------------------------------------------------
/packages/webui/public/images/charts/waterfall.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/charts/waterfall.png
--------------------------------------------------------------------------------
/packages/webui/public/images/connector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/connector.png
--------------------------------------------------------------------------------
/packages/webui/public/images/consumer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/consumer.png
--------------------------------------------------------------------------------
/packages/webui/public/images/flags/de.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/images/loginbg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/loginbg.png
--------------------------------------------------------------------------------
/packages/webui/public/images/mainbg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/mainbg.jpg
--------------------------------------------------------------------------------
/packages/webui/public/images/preview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/preview.png
--------------------------------------------------------------------------------
/packages/webui/public/images/producer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/images/producer.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/columnsize.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/columnsize.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/columnsize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/columnsize.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/cross.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/cross.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/cross.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/cross.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/css/jsg.css:
--------------------------------------------------------------------------------
1 | .jsg-item-menu {
2 | background-color: rgba(0,0,0,0);
3 | box-sizing: border-box;
4 | display: table;
5 | min-height: 24px;
6 | min-width: 24px;
7 | overflow: hidden;
8 | position: absolute;
9 | }
10 | .jsg-item-menu-row {
11 | background-color: rgba(0,0,0,0);
12 | display: table-row;
13 | /*position: absolute;*/
14 | /*box-sizing: border-box;*/
15 | }
16 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/deny.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/deny.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/deny.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/deny.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/arrowdown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/arrowdown.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/arrowleft.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/arrowleft.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/arrowright.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/arrowright.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/arrowup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/arrowup.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/bold.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/bold.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/bullets.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/bullets.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/centeralign.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/centeralign.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/collapsed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/collapsed.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/expanded.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/expanded.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/fontcolor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/fontcolor.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/fontsizedown.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/fontsizedown.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/fontsizeup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/fontsizeup.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/italic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/italic.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/leftalign.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/leftalign.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/linestyledash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/linestyledash.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/linestyledashdot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/linestyledashdot.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/linestyledashdotdot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/linestyledashdotdot.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/linestyledot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/linestyledot.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/linestylenone.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/linestylenone.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/linestylesolid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/linestylesolid.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/lineswidth025.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/lineswidth025.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/lineswidth05.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/lineswidth05.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/lineswidth075.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/lineswidth075.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/lineswidth1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/lineswidth1.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/lineswidth100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/lineswidth100.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/lineswidth200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/lineswidth200.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/lineswidth300.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/lineswidth300.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/lineswidth400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/lineswidth400.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/notavailable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/notavailable.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/numbered.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/numbered.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/rightalign.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/rightalign.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/treechecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/treechecked.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/treeunchecked.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/treeunchecked.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/images/underline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/images/underline.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/rotate.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/rotate.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/rotate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/rotate.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/rowsize.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/rowsize.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/rowsize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/rowsize.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/sheet.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/sheet.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/sheet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/sheet.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/sheetcolumn.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/sheetcolumn.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/sheetcolumn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/sheetcolumn.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/sheetrow.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/sheetrow.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/sheetrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/sheetrow.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/splith.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/splith.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/splith.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/splith.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/splitv.cur:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/splitv.cur
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/splitv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/lib/res/splitv.png
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/add.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/arrowdown.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/arrowup.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/button.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/checkbox.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/checked.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/columnmenu.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/delete.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/edge.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/edit.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/filter.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/hvedge.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/knob.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/label.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/laneaddafter.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/laneaddbefore.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/lanesplit_2.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/lanesplit_3.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/layout2.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/layout3.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/layout4.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/layout5.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/layout6.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/rowmenu.svg:
--------------------------------------------------------------------------------
1 |
6 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/select.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/sheet.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/slider.svg:
--------------------------------------------------------------------------------
1 |
8 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/table.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/textedit.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/textview.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/lib/res/svg/unchecked.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/packages/webui/public/license_DE.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/license_DE.pdf
--------------------------------------------------------------------------------
/packages/webui/public/license_EN.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/license_EN.pdf
--------------------------------------------------------------------------------
/packages/webui/public/resources/deletesheet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/deletesheet.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/loop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/loop.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/maximize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/maximize.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/minimize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/minimize.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/settings.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/settings_org.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/settings_org.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/statuserror.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/statuserror.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/statusok.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/statusok.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/statuswarning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/statuswarning.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/t1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/t1.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/t2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/t2.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/t3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/t3.png
--------------------------------------------------------------------------------
/packages/webui/public/resources/t4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/public/resources/t4.png
--------------------------------------------------------------------------------
/packages/webui/scripts/deploy.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | echo "deploying webui"
4 | echo "building docker image using tag $1"
5 | docker build -t cedalo/webui:$1 .
6 | echo "logging into docker hub"
7 | docker login -u $DOCKER_USER -p $DOCKER_PASSWORD
8 | echo "pushing image \"cedalo/webui:$1\""
9 | docker push cedalo/webui:$1
10 | echo "done"
11 |
12 | if [ $TRAVIS_TAG ]
13 | then
14 | echo "building docker image using tag $TRAVIS_TAG"
15 | docker build -t cedalo/webui:$TRAVIS_TAG .
16 | echo "logging into docker hub"
17 | docker login -u $DOCKER_USER -p $DOCKER_PASSWORD
18 | echo "pushing image \"cedalo/webui:$TRAVIS_TAG\""
19 | docker push cedalo/webui:$TRAVIS_TAG
20 | echo "done"
21 | fi
22 |
--------------------------------------------------------------------------------
/packages/webui/src/App.test.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | import React from 'react';
12 | import ReactDOM from 'react-dom';
13 | import App from './App';
14 |
15 | it('renders without crashing', () => {
16 | const div = document.createElement('div');
17 | ReactDOM.render(, div);
18 | });
19 |
--------------------------------------------------------------------------------
/packages/webui/src/constants/Constants.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export default {
12 | RESOURCE_MENU_IDS: {
13 | EDIT: 0,
14 | DELETE: 1,
15 | OPEN: 2,
16 | START: 3,
17 | STOP: 4,
18 | PAUSE: 5,
19 | EXPORT: 6,
20 | CLONE: 7,
21 | SET_TITLE_IMAGE: 8,
22 | }
23 | };
24 |
--------------------------------------------------------------------------------
/packages/webui/src/constants/WSTypes.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export const CONNECT = 'connect';
12 | export const DISCONNECT = 'disconnect';
13 |
14 | export const RECONNECT = 'RECONNECT';
15 | export const RECONNECT_TIMER_DECR = 'RECONNECT_TIMER_DECR';
16 |
--------------------------------------------------------------------------------
/packages/webui/src/index.css:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | padding: 0;
4 | font-family: sans-serif;
5 | overflow: hidden;
6 | }
7 | span {
8 | font-size: unset;
9 | }
10 |
--------------------------------------------------------------------------------
/packages/webui/src/pages/index.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 | export * from './DashboardPage';
12 | export * from './ExportPage';
13 |
--------------------------------------------------------------------------------
/packages/webui/src/reducers/machineSettingsReducer.js:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
11 |
--------------------------------------------------------------------------------
/packages/webui/src/resources/statuserror.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/src/resources/statuserror.png
--------------------------------------------------------------------------------
/packages/webui/src/resources/statusok.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/src/resources/statusok.png
--------------------------------------------------------------------------------
/packages/webui/src/resources/statuswarning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/eclipse-streamsheets/streamsheets/0a1df713edfcf94dcd888be8aca5bdd99e581639/packages/webui/src/resources/statuswarning.png
--------------------------------------------------------------------------------
/scripts/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | rules: {
3 | 'no-console': 0
4 | }
5 | };
6 |
--------------------------------------------------------------------------------
/scripts/Dockerfile.contextholder:
--------------------------------------------------------------------------------
1 | FROM busybox
2 |
3 | COPY .yarnrc package.json yarn.lock ./scripts/workspace-util.js /build/
4 | COPY ./npm-packages-offline-cache /build/npm-packages-offline-cache
5 | COPY ./packages ./packages-with-source
6 |
7 | COPY ./packagejsons /build
8 |
--------------------------------------------------------------------------------
/scripts/build-contextholder.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 |
3 | rm -rf ./packagejsons*
4 | mkdir -p packagejsons
5 | tar cf packagejsons.tar packages/*/package.json packages/*/*/package.json
6 | tar xf packagejsons.tar -C packagejsons
7 | docker build . -f scripts/Dockerfile.contextholder -t contextholder
8 | rm -rf ./packagejsons
9 |
--------------------------------------------------------------------------------
/scripts/changed-packages.js:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | /* eslint-disable no-console */
4 | const cp = require('child_process');
5 | const argv = require('yargs').argv;
6 |
7 | const branch = argv.branch || 'master';
8 |
9 | const workspaceInfo = JSON.parse(cp.execSync('yarn workspaces -s info'));
10 | const workspaceInfoEntries = Object.entries(workspaceInfo);
11 |
12 | workspaceInfoEntries.forEach(([name, { location }]) => {
13 | const result = cp
14 | .execSync(`git diff --name-only ${branch} ${location}`)
15 | .toString()
16 | .trim();
17 |
18 | if (result) {
19 | console.log(name);
20 | }
21 | });
22 |
--------------------------------------------------------------------------------
/scripts/copyright-header.txt:
--------------------------------------------------------------------------------
1 | /********************************************************************************
2 | * Copyright (c) 2020 Cedalo AG
3 | *
4 | * This program and the accompanying materials are made available under the
5 | * terms of the Eclipse Public License 2.0 which is available at
6 | * http://www.eclipse.org/legal/epl-2.0.
7 | *
8 | * SPDX-License-Identifier: EPL-2.0
9 | *
10 | ********************************************************************************/
--------------------------------------------------------------------------------
/scripts/i18n.js:
--------------------------------------------------------------------------------
1 | const fs = require('fs');
2 | const argv = require('yargs').argv;
3 |
4 | const pathEN = argv.en;
5 | const pathDE = argv.de;
6 |
7 | const keysEN = Object.keys(JSON.parse(fs.readFileSync(pathEN)));
8 | const keysDE = Object.keys(JSON.parse(fs.readFileSync(pathDE)));
9 |
10 | const keys = (keys1, keys2) => keys1.filter(key => !keys2.includes(key));
11 |
12 | const keysNotIncludedInEN = keys(keysDE, keysEN);
13 | const keysNotIncludedInDE = keys(keysEN, keysDE);
14 |
15 | console.log('Keys not included in EN file:')
16 | console.log(keysNotIncludedInEN);
17 |
18 | console.log('Keys not included in DE file:')
19 | console.log(keysNotIncludedInDE);
20 |
--------------------------------------------------------------------------------
/scripts/set-version.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 |
4 | FROM=$1
5 | TO=$2
6 |
7 | find packages -path '*/node_modules' -prune -o -name package.json \
8 | -exec sed -i 's_"version": "'$FROM'"_"version": "'$TO'"_g' {} \; \
9 | -exec sed -i 's_"\(\@cedalo/[^"]*\)": "'$FROM'"_"\1": "'$TO'"_g' {} \;
10 |
--------------------------------------------------------------------------------
/scripts/tag-latest.js:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | const cp = require('child_process');
4 | const argv = require('yargs').argv;
5 |
6 | const fromImageTag = argv.fromImageTag || 'latest';
7 |
8 | const fromImage = `cedalo/streamsheets:${fromImageTag}`;
9 | const toImage = `cedalo/streamsheets:latest`;
10 |
11 | try {
12 | console.log(`Pulling image ${fromImage}`);
13 | cp.execSync(`docker pull ${fromImage}`, { stdio: 'inherit' });
14 | console.log(`Tagging image ${toImage}`);
15 | cp.execSync(`docker tag ${fromImage} ${toImage}`, { stdio: 'inherit' });
16 | console.log(`Pushing image ${toImage}`);
17 | cp.execSync(`docker push ${toImage}`, { stdio: 'inherit' });
18 | } catch (error) {
19 | process.exit(1);
20 | }
21 |
--------------------------------------------------------------------------------