├── client
├── static
│ ├── .gitkeep
│ ├── bpmn
│ │ └── bpmn-js-properties-panel
│ │ │ ├── index.js
│ │ │ ├── lib
│ │ │ ├── provider
│ │ │ │ ├── bpmn
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── parts
│ │ │ │ │ │ ├── NameProps.js
│ │ │ │ │ │ ├── implementation
│ │ │ │ │ │ ├── SignalEventDefinition.js
│ │ │ │ │ │ ├── MessageEventDefinition.js
│ │ │ │ │ │ └── Name.js
│ │ │ │ │ │ ├── IdProps.js
│ │ │ │ │ │ ├── ExecutableProps.js
│ │ │ │ │ │ └── LinkProps.js
│ │ │ │ └── camunda
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── parts
│ │ │ │ │ ├── InputOutputParameterProps.js
│ │ │ │ │ ├── ListenerProps.js
│ │ │ │ │ ├── InputOutputProps.js
│ │ │ │ │ ├── ConnectorInputOutputParameterProps.js
│ │ │ │ │ ├── ConnectorInputOutputProps.js
│ │ │ │ │ ├── AsynchronousContinuationProps.js
│ │ │ │ │ ├── ListenerFieldInjectionProps.js
│ │ │ │ │ ├── FieldInjectionProps.js
│ │ │ │ │ ├── StartEventInitiator.js
│ │ │ │ │ ├── HistoryTimeToLiveProps.js
│ │ │ │ │ ├── implementation
│ │ │ │ │ │ ├── JobPriority.js
│ │ │ │ │ │ ├── ExternalTaskPriority.js
│ │ │ │ │ │ ├── HistoryTimeToLive.js
│ │ │ │ │ │ ├── External.js
│ │ │ │ │ │ └── ResultVariable.js
│ │ │ │ │ ├── PropertiesProps.js
│ │ │ │ │ ├── JobConfigurationProps.js
│ │ │ │ │ ├── AddRoles.js
│ │ │ │ │ ├── ExternalTaskConfigurationProps.js
│ │ │ │ │ ├── VersionTagProps.js
│ │ │ │ │ ├── MultiInstanceLoopProps.js
│ │ │ │ │ ├── UserTaskProps.js
│ │ │ │ │ └── ConnectorDetailProps.js
│ │ │ │ │ └── element-templates
│ │ │ │ │ ├── util
│ │ │ │ │ └── validate.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── ElementTemplates.js
│ │ │ │ │ └── cmd
│ │ │ │ │ └── index.js
│ │ │ ├── index.js
│ │ │ ├── factory
│ │ │ │ ├── EntryFieldDescription.js
│ │ │ │ ├── TextBoxEntryFactory.js
│ │ │ │ ├── LabelFactory.js
│ │ │ │ ├── LinkEntryFactory.js
│ │ │ │ └── ValidationAwareTextInput.js
│ │ │ ├── helper
│ │ │ │ ├── ElementHelper.js
│ │ │ │ ├── ParticipantHelper.js
│ │ │ │ └── MyConfigsHelper.js
│ │ │ ├── cmd
│ │ │ │ ├── index.js
│ │ │ │ └── MultiCommandHandler.js
│ │ │ └── PropertiesActivator.js
│ │ │ └── styles
│ │ │ ├── listeners.less
│ │ │ ├── header.less
│ │ │ ├── config.json
│ │ │ ├── _mixins.less
│ │ │ ├── groups.less
│ │ │ └── tabs.less
│ ├── img
│ │ └── favicon.ico
│ ├── fonts
│ │ ├── FontAwesome.otf
│ │ ├── main-fonts.eot
│ │ ├── main-fonts.ttf
│ │ ├── main-fonts.woff
│ │ ├── fontawesome-webfont.eot
│ │ ├── fontawesome-webfont.ttf
│ │ ├── fontawesome-webfont.woff
│ │ └── fontawesome-webfont.woff2
│ ├── bpmnpluginwatcher.js
│ └── js
│ │ ├── checkbox.js
│ │ ├── radiobutton.js
│ │ └── selectValue.js
├── .eslintignore
├── src
│ ├── assets
│ │ ├── styles
│ │ │ └── index.less
│ │ └── images
│ │ │ ├── logo.png
│ │ │ ├── mongo.png
│ │ │ ├── nedb.png
│ │ │ ├── rethink.png
│ │ │ ├── Flowz-Icon.png
│ │ │ ├── Flowz-logo.png
│ │ │ └── elasticsearch.png
│ ├── pages
│ │ ├── user
│ │ │ ├── processlist.vue
│ │ │ └── viewSVG.vue
│ │ └── flow
│ │ │ ├── emailTemplate.js
│ │ │ ├── viewSVG.vue
│ │ │ └── own_assign.vue
│ ├── masterLayout
│ │ ├── Footer.vue
│ │ └── Master.vue
│ ├── area
│ │ ├── Flow.vue
│ │ ├── Schema.vue
│ │ ├── Approval.vue
│ │ └── DbSettings.vue
│ ├── api
│ │ ├── receiveform
│ │ │ └── index.js
│ │ ├── dataquery
│ │ │ └── index.js
│ │ ├── userlogin
│ │ │ └── index.js
│ │ ├── sendmail
│ │ │ └── index.js
│ │ ├── emailtemplate
│ │ │ └── index.js
│ │ ├── flowz
│ │ │ └── index.js
│ │ ├── flowzdata
│ │ │ └── index.js
│ │ ├── finstance
│ │ │ └── index.js
│ │ ├── dflowzdata
│ │ │ └── index.js
│ │ ├── authentication
│ │ │ └── index.js
│ │ ├── schema
│ │ │ └── index.js
│ │ └── bpmnplugins
│ │ │ └── index.js
│ ├── store
│ │ ├── state.js
│ │ ├── index.js
│ │ ├── getters.js
│ │ ├── mutations.js
│ │ └── actions.js
│ ├── bpmn-custom-module
│ │ ├── viewindex.js
│ │ └── index.js
│ ├── components
│ │ ├── configExpand.vue
│ │ └── subscription.vue
│ ├── mixins
│ │ └── emitter.js
│ ├── Utils
│ │ └── index.js
│ └── App.vue
├── .dockerignore
├── rethinkdb_data
│ ├── metadata
│ ├── 06f5cf1f-ac2a-4b54-a7b5-92a1b656ae05
│ ├── 18cab67f-fd0f-46c5-b123-7d8a45bfef91
│ ├── 1f699b4a-a454-4df6-bd3b-55a7e52abb25
│ ├── 1fadfd28-6b36-4f57-903c-43413e18280f
│ ├── 23aa7208-02d5-4db8-b786-6bcf4f612bd6
│ ├── 430584e9-4df7-4347-8170-c3c8438385f9
│ ├── 579138a2-18bc-46fe-b79e-4c2e037c2767
│ ├── 7302ecfe-1554-4be3-9f7b-ba13e6734eb8
│ ├── c18ec04e-af0e-4408-81b8-585b8c4895d2
│ └── e372d55e-8221-4a84-aa52-762ce6a8c0f3
├── test
│ ├── unit
│ │ ├── .eslintrc
│ │ ├── specs
│ │ │ └── Hello.spec.js
│ │ ├── index.js
│ │ └── karma.conf.js
│ └── e2e
│ │ ├── specs
│ │ └── test.js
│ │ ├── custom-assertions
│ │ └── elementCount.js
│ │ ├── runner.js
│ │ └── nightwatch.conf.js
├── config
│ ├── test.env.js
│ ├── prod.env.js
│ ├── dev.env.js
│ └── index.js
├── .editorconfig
├── .postcssrc.js
├── .htaccess
├── .gitignore
├── build
│ ├── dev-client.js
│ ├── vue-loader.conf.js
│ ├── build.js
│ ├── webpack.test.conf.js
│ ├── check-versions.js
│ └── webpack.dev.conf.js
├── vhost.conf
├── .babelrc
├── debug.log
├── README.md
├── .eslintrc.js
├── vhost_ssl_staging.conf
├── index.html
├── vhost_ssl_qa.conf
├── vhost_ssl_develop.conf
├── vhost_ssl_master.conf
├── Dockerfile
├── privkey
│ ├── privkey_staging.pem
│ ├── privkey_master.pem
│ ├── privkey_qa.pem
│ └── privkey_develop.pem
└── cert
│ ├── cert_master.pem
│ └── cert_develop.pem
├── JobQue
├── .vscode
│ └── settings.json
├── mail
│ ├── .gitignore
│ ├── config.json
│ └── package.json
├── .dockerignore
├── docs
│ ├── capacity.png
│ ├── lifeCycle.png
│ ├── workflow.png
│ └── README.md
├── twitter
│ ├── mylog
│ ├── .gitignore
│ ├── package.json
│ ├── config.json
│ └── twitter.js
├── scheduler
│ ├── logs
│ ├── .gitignore
│ ├── scheduler.js
│ ├── config.js
│ ├── package.json
│ ├── ca.cer
│ ├── default.json
│ └── process.js
├── seneca-job-queue
│ ├── runAll.js
│ ├── worker-need.js
│ ├── common.js
│ ├── package.json
│ ├── ca.cer
│ └── job-web.js
├── docker-compose.yml
├── Dockerfile
└── .gitignore
├── .directory
├── README.md
├── service
├── .dockerignore
├── public
│ └── favicon.ico
├── config
│ ├── custom-environment-variables.json
│ ├── production.json
│ └── default.json
├── Dockerfile
├── .editorconfig
├── src
│ ├── services
│ │ ├── flowz
│ │ │ ├── flowz.filters.js
│ │ │ ├── flowz.hooks.js
│ │ │ └── flowz.service.js
│ │ ├── schema
│ │ │ ├── schema.filters.js
│ │ │ ├── schema.hooks.js
│ │ │ └── schema.service.js
│ │ ├── bpmnplugins
│ │ │ ├── bpmnplugins.filters.js
│ │ │ ├── bpmnplugins.hooks.js
│ │ │ └── bpmnplugins.service.js
│ │ ├── emailtemplate
│ │ │ ├── emailtemplate.filters.js
│ │ │ ├── emailtemplate.hooks.js
│ │ │ └── emailtemplate.service.js
│ │ ├── dataquery
│ │ │ ├── dataquery.filters.js
│ │ │ ├── dataquery.class.js
│ │ │ └── dataquery.service.js
│ │ ├── sendmail
│ │ │ ├── sendmail.filters.js
│ │ │ ├── sendmail.hooks.js
│ │ │ └── sendmail.service.js
│ │ ├── dflowzdata
│ │ │ ├── dflowzdata.filters.js
│ │ │ └── dflowzdata.service.js
│ │ ├── finstance
│ │ │ ├── finstance.filters.js
│ │ │ └── finstance.service.js
│ │ ├── flowzdata
│ │ │ ├── flowzdata.filters.js
│ │ │ └── flowzdata.service.js
│ │ ├── email-templates
│ │ │ ├── email-templates.filters.js
│ │ │ ├── email-templates.hooks.js
│ │ │ └── email-templates.service.js
│ │ ├── email-receive
│ │ │ └── email-receive.hooks.js
│ │ ├── config.js
│ │ ├── index.js
│ │ └── ca.crt
│ ├── index.js
│ ├── hooks
│ │ └── logger.js
│ ├── app.hooks.js
│ ├── rethinkdb.js
│ └── middleware
│ │ └── index.js
├── test
│ ├── services
│ │ ├── schema.test.js
│ │ ├── sendmail.test.js
│ │ ├── dataquery.test.js
│ │ ├── finstance.test.js
│ │ ├── flowzdata.test.js
│ │ ├── bpmnplugins.test.js
│ │ └── emailtemplate.test.js
│ └── app.test.js
├── .eslintrc.json
├── .npmignore
├── LICENSE
└── README.md
├── finish_demo.sh
├── .vscode
└── launch.json
├── netlify.toml
├── upgrade_demo.sh
└── LICENSE
/client/static/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/JobQue/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | }
--------------------------------------------------------------------------------
/JobQue/mail/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 |
--------------------------------------------------------------------------------
/client/.eslintignore:
--------------------------------------------------------------------------------
1 | build/*.js
2 | config/*.js
3 |
--------------------------------------------------------------------------------
/client/src/assets/styles/index.less:
--------------------------------------------------------------------------------
1 | @import "./custom";
--------------------------------------------------------------------------------
/.directory:
--------------------------------------------------------------------------------
1 | [Dolphin]
2 | Timestamp=2017,12,5,10,45,27
3 | Version=3
4 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Flowz
2 | Flowz working on flow base programming
3 |
4 |
--------------------------------------------------------------------------------
/JobQue/.dockerignore:
--------------------------------------------------------------------------------
1 | mail/
2 | node_modules/
3 | twitter/
4 | .gitignore
5 |
--------------------------------------------------------------------------------
/client/.dockerignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .gitignore
3 | Dockerfile
4 | LICENSE
5 |
--------------------------------------------------------------------------------
/service/.dockerignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .gitignore
3 | Dockerfile
4 | LICENSE
5 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/index.js:
--------------------------------------------------------------------------------
1 | module.exports = require('./lib');
2 |
--------------------------------------------------------------------------------
/JobQue/docs/capacity.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/JobQue/docs/capacity.png
--------------------------------------------------------------------------------
/JobQue/docs/lifeCycle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/JobQue/docs/lifeCycle.png
--------------------------------------------------------------------------------
/JobQue/docs/workflow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/JobQue/docs/workflow.png
--------------------------------------------------------------------------------
/service/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/service/public/favicon.ico
--------------------------------------------------------------------------------
/JobQue/docs/README.md:
--------------------------------------------------------------------------------
1 | flowcharts related to scheduler and process flow of jobqueue can be found in this folder
2 |
--------------------------------------------------------------------------------
/client/rethinkdb_data/metadata:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/metadata
--------------------------------------------------------------------------------
/client/src/pages/user/processlist.vue:
--------------------------------------------------------------------------------
1 |
2 | User {{ $route.params.id }}
3 |
--------------------------------------------------------------------------------
/client/static/img/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/img/favicon.ico
--------------------------------------------------------------------------------
/client/src/assets/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/src/assets/images/logo.png
--------------------------------------------------------------------------------
/client/src/assets/images/mongo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/src/assets/images/mongo.png
--------------------------------------------------------------------------------
/client/src/assets/images/nedb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/src/assets/images/nedb.png
--------------------------------------------------------------------------------
/client/static/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/client/static/fonts/main-fonts.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/fonts/main-fonts.eot
--------------------------------------------------------------------------------
/client/static/fonts/main-fonts.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/fonts/main-fonts.ttf
--------------------------------------------------------------------------------
/client/static/fonts/main-fonts.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/fonts/main-fonts.woff
--------------------------------------------------------------------------------
/client/src/assets/images/rethink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/src/assets/images/rethink.png
--------------------------------------------------------------------------------
/client/src/assets/images/Flowz-Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/src/assets/images/Flowz-Icon.png
--------------------------------------------------------------------------------
/client/src/assets/images/Flowz-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/src/assets/images/Flowz-logo.png
--------------------------------------------------------------------------------
/client/src/masterLayout/Footer.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | 2011-2018 © Flowz
4 |
5 |
--------------------------------------------------------------------------------
/client/src/assets/images/elasticsearch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/src/assets/images/elasticsearch.png
--------------------------------------------------------------------------------
/client/src/pages/flow/emailTemplate.js:
--------------------------------------------------------------------------------
1 | let sendemail = {
2 | sendInviteemail: '
Hello'
3 | }
4 | module.exports = sendemail
5 |
--------------------------------------------------------------------------------
/client/static/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/client/static/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/client/static/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/client/static/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/static/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/service/config/custom-environment-variables.json:
--------------------------------------------------------------------------------
1 | {
2 | "port": "PORT",
3 | "host": "HOST",
4 | "rdb_host": "RDB_HOST",
5 | "rdb_port": "RDB_PORT"
6 | }
--------------------------------------------------------------------------------
/client/test/unit/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "mocha": true
4 | },
5 | "globals": {
6 | "expect": true,
7 | "sinon": true
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/finish_demo.sh:
--------------------------------------------------------------------------------
1 | curl -u ""$RANCHER_USER":"$RANCHER_PASS"" \
2 | -X POST \
3 | 'http://rancher.flowz.com:8080/v2-beta/projects/1a29/services/1s316?action=finishupgrade'
4 |
--------------------------------------------------------------------------------
/client/rethinkdb_data/06f5cf1f-ac2a-4b54-a7b5-92a1b656ae05:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/06f5cf1f-ac2a-4b54-a7b5-92a1b656ae05
--------------------------------------------------------------------------------
/client/rethinkdb_data/18cab67f-fd0f-46c5-b123-7d8a45bfef91:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/18cab67f-fd0f-46c5-b123-7d8a45bfef91
--------------------------------------------------------------------------------
/client/rethinkdb_data/1f699b4a-a454-4df6-bd3b-55a7e52abb25:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/1f699b4a-a454-4df6-bd3b-55a7e52abb25
--------------------------------------------------------------------------------
/client/rethinkdb_data/1fadfd28-6b36-4f57-903c-43413e18280f:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/1fadfd28-6b36-4f57-903c-43413e18280f
--------------------------------------------------------------------------------
/client/rethinkdb_data/23aa7208-02d5-4db8-b786-6bcf4f612bd6:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/23aa7208-02d5-4db8-b786-6bcf4f612bd6
--------------------------------------------------------------------------------
/client/rethinkdb_data/430584e9-4df7-4347-8170-c3c8438385f9:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/430584e9-4df7-4347-8170-c3c8438385f9
--------------------------------------------------------------------------------
/client/rethinkdb_data/579138a2-18bc-46fe-b79e-4c2e037c2767:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/579138a2-18bc-46fe-b79e-4c2e037c2767
--------------------------------------------------------------------------------
/client/rethinkdb_data/7302ecfe-1554-4be3-9f7b-ba13e6734eb8:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/7302ecfe-1554-4be3-9f7b-ba13e6734eb8
--------------------------------------------------------------------------------
/client/rethinkdb_data/c18ec04e-af0e-4408-81b8-585b8c4895d2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/c18ec04e-af0e-4408-81b8-585b8c4895d2
--------------------------------------------------------------------------------
/client/rethinkdb_data/e372d55e-8221-4a84-aa52-762ce6a8c0f3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/FlowzPlatform/workflow/HEAD/client/rethinkdb_data/e372d55e-8221-4a84-aa52-762ce6a8c0f3
--------------------------------------------------------------------------------
/JobQue/twitter/mylog:
--------------------------------------------------------------------------------
1 | {"level":30,"time":1514979348816,"msg":"Approval Type Job completed","pid":14667,"hostname":"OBLAP-51","fId":"1d54ad55-3606-4a22-af98-29895fa4e0c8","v":1}
2 |
--------------------------------------------------------------------------------
/client/config/test.env.js:
--------------------------------------------------------------------------------
1 | var merge = require('webpack-merge')
2 | var devEnv = require('./dev.env')
3 |
4 | module.exports = merge(devEnv, {
5 | NODE_ENV: '"testing"'
6 | })
7 |
--------------------------------------------------------------------------------
/JobQue/scheduler/logs:
--------------------------------------------------------------------------------
1 | {"level":30,"time":1532702300476,"msg":"End Process","pid":18901,"hostname":"OBLAP-28","fId":"c8fe645b-4d59-4b08-9f9f-4fbb079c9fe3","jobId":"EndEvent_0f72gx5","v":1}
2 |
--------------------------------------------------------------------------------
/client/src/area/Flow.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
--------------------------------------------------------------------------------
/client/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/client/src/api/receiveform/index.js:
--------------------------------------------------------------------------------
1 | import api from '../../api'
2 | let model = 'receive-form'
3 | export default {
4 | post: (data) => {
5 | return api.request('post', '/' + model, data)
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/client/src/area/Schema.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/bpmn/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | __init__: [ 'propertiesProvider' ],
3 | propertiesProvider: [ 'type', require('./BpmnPropertiesProvider') ]
4 | };
--------------------------------------------------------------------------------
/client/src/area/Approval.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
--------------------------------------------------------------------------------
/client/src/area/DbSettings.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
--------------------------------------------------------------------------------
/service/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM node:8.1.2
2 |
3 | ADD . /usr/src/app/server
4 |
5 | WORKDIR /usr/src/app/server
6 |
7 | RUN npm install
8 |
9 | EXPOSE 3033 4033
10 |
11 | CMD NODE_ENV=production npm start
12 |
--------------------------------------------------------------------------------
/JobQue/seneca-job-queue/runAll.js:
--------------------------------------------------------------------------------
1 | const cp = require('child_process')
2 | cp.fork(`./symmetric-worker`)
3 | cp.fork(`./worker-need`)
4 | cp.fork(`./worker-web`)
5 | cp.fork(`./job-web`)
6 | cp.fork(`../scheduler/scheduler`)
7 |
--------------------------------------------------------------------------------
/client/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | "plugins": {
5 | // to edit target browsers: use "browserslist" field in package.json
6 | "autoprefixer": {}
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/client/config/prod.env.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | NODE_ENV: '"production"',
3 | accesskey: JSON.stringify(process.env.accesskey),
4 | secretkey: JSON.stringify(process.env.secretkey),
5 | domainKey: JSON.stringify(process.env.domainKey)
6 | }
7 |
--------------------------------------------------------------------------------
/client/src/api/dataquery/index.js:
--------------------------------------------------------------------------------
1 | import api from '../../api'
2 | let model = 'dataquery'
3 | export default {
4 | get: (id = null, params = null, headers = null) => {
5 | return api.request('get', '/' + model, null, params, headers)
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/client/.htaccess:
--------------------------------------------------------------------------------
1 |
2 | RewriteEngine On
3 | RewriteBase /
4 | RewriteRule ^index\.html$ - [L]
5 | RewriteCond %{REQUEST_FILENAME} !-f
6 | RewriteCond %{REQUEST_FILENAME} !-d
7 | RewriteRule . /index.html [L]
8 |
9 |
--------------------------------------------------------------------------------
/client/src/api/userlogin/index.js:
--------------------------------------------------------------------------------
1 | import axios from 'axios'
2 | import config from '../../config'
3 | let model = config.loginURL
4 | export default {
5 | post: (data) => {
6 | let method = 'post'
7 | return axios({ method, model, data })
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/client/config/dev.env.js:
--------------------------------------------------------------------------------
1 | var merge = require('webpack-merge')
2 | var prodEnv = require('./prod.env')
3 |
4 | module.exports = merge(prodEnv, {
5 | NODE_ENV: '"development"',
6 | accesskey: JSON.stringify(process.env.accesskey),
7 | secretkey: JSON.stringify(process.env.secretkey)
8 | })
9 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | __depends__: [
3 | require('./cmd'),
4 | require('diagram-js/lib/i18n/translate')
5 | ],
6 | __init__: ['propertiesPanel'],
7 | propertiesPanel: ['type', require('./PropertiesPanel')]
8 | };
--------------------------------------------------------------------------------
/service/.editorconfig:
--------------------------------------------------------------------------------
1 | # http://editorconfig.org
2 | root = true
3 |
4 | [*]
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | charset = utf-8
9 | trim_trailing_whitespace = true
10 | insert_final_newline = true
11 |
12 | [*.md]
13 | trim_trailing_whitespace = false
14 |
--------------------------------------------------------------------------------
/service/src/services/flowz/flowz.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | // console.warn('You are using the default filter for the flowz service.'); // eslint-disable-line no-console
3 | module.exports = function(data, connection, hook) { // eslint-disable-line no-unused-vars
4 | return data;
5 | };
--------------------------------------------------------------------------------
/client/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | test/unit/coverage
8 | test/e2e/reports
9 | selenium-debug.log
10 | rethinkdb_data
11 |
12 | # Editor directories and files
13 | .idea
14 | *.suo
15 | *.ntvs*
16 | *.njsproj
17 | *.sln
18 |
--------------------------------------------------------------------------------
/client/build/dev-client.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable */
2 | require('eventsource-polyfill')
3 | var hotClient = require('webpack-hot-middleware/client?noInfo=true&reload=true')
4 |
5 | hotClient.subscribe(function (event) {
6 | if (event.action === 'reload') {
7 | window.location.reload()
8 | }
9 | })
10 |
--------------------------------------------------------------------------------
/service/src/services/schema/schema.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | // console.warn('You are using the default filter for the schema service.'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/JobQue/docker-compose.yml:
--------------------------------------------------------------------------------
1 | version: '2'
2 | services:
3 |
4 | Seneca_Jobqueue_Flowz:
5 | image: obdev/seneca_jobqueue_flowz
6 | ports:
7 | - 3004:3000
8 | - 3005:5000
9 | - 3006:9000
10 | environment:
11 | - host=enter rethinkdb host
12 | - port=28015
13 | restart: always
14 |
--------------------------------------------------------------------------------
/JobQue/scheduler/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | test/unit/coverage
8 | test/e2e/reports
9 | selenium-debug.log
10 | package-lock.json
11 |
12 | # Editor directories and files
13 | .idea
14 | *.suo
15 | *.ntvs*
16 | *.njsproj
17 | *.sln
18 |
--------------------------------------------------------------------------------
/JobQue/twitter/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | test/unit/coverage
8 | test/e2e/reports
9 | selenium-debug.log
10 | package-lock.json
11 |
12 | # Editor directories and files
13 | .idea
14 | *.suo
15 | *.ntvs*
16 | *.njsproj
17 | *.sln
18 |
--------------------------------------------------------------------------------
/service/src/services/bpmnplugins/bpmnplugins.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | // console.warn('You are using the default filter for the bpmnplugins service.'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/client/vhost.conf:
--------------------------------------------------------------------------------
1 |
2 | ServerName http://engine.flowz.com
3 | ServerAlias *.flowzcluster.tk
4 | DocumentRoot "/var/www/html/"
5 |
6 | Options Indexes FollowSymLinks
7 | AllowOverride All
8 | Require all granted
9 |
10 |
11 |
--------------------------------------------------------------------------------
/service/src/services/emailtemplate/emailtemplate.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | // console.warn('You are using the default filter for the emailtemplate service.'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | __depends__: [
3 | require('./element-templates'),
4 | require('diagram-js/lib/i18n/translate')
5 | ],
6 | __init__: [ 'propertiesProvider' ],
7 | propertiesProvider: [ 'type', require('./CamundaPropertiesProvider') ]
8 | };
9 |
--------------------------------------------------------------------------------
/service/test/services/schema.test.js:
--------------------------------------------------------------------------------
1 | const assert = require('assert');
2 | const app = require('../../src/app');
3 |
4 | describe('\'schema\' service', () => {
5 | it('registered the service', () => {
6 | const service = app.service('schema');
7 |
8 | assert.ok(service, 'Registered the service');
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/service/test/services/sendmail.test.js:
--------------------------------------------------------------------------------
1 | const assert = require('assert');
2 | const app = require('../../src/app');
3 |
4 | describe('\'sendmail\' service', () => {
5 | it('registered the service', () => {
6 | const service = app.service('sendmail');
7 |
8 | assert.ok(service, 'Registered the service');
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/service/test/services/dataquery.test.js:
--------------------------------------------------------------------------------
1 | const assert = require('assert');
2 | const app = require('../../src/app');
3 |
4 | describe('\'dataquery\' service', () => {
5 | it('registered the service', () => {
6 | const service = app.service('dataquery');
7 |
8 | assert.ok(service, 'Registered the service');
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/service/test/services/finstance.test.js:
--------------------------------------------------------------------------------
1 | const assert = require('assert');
2 | const app = require('../../src/app');
3 |
4 | describe('\'finstance\' service', () => {
5 | it('registered the service', () => {
6 | const service = app.service('finstance');
7 |
8 | assert.ok(service, 'Registered the service');
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/service/test/services/flowzdata.test.js:
--------------------------------------------------------------------------------
1 | const assert = require('assert');
2 | const app = require('../../src/app');
3 |
4 | describe('\'flowzdata\' service', () => {
5 | it('registered the service', () => {
6 | const service = app.service('flowzdata');
7 |
8 | assert.ok(service, 'Registered the service');
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/JobQue/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM mhart/alpine-node:8
2 |
3 | RUN mkdir -p /usr/src/app
4 |
5 | WORKDIR /usr/src/app
6 |
7 | COPY . /usr/src/app
8 |
9 | WORKDIR /usr/src/app/scheduler
10 | RUN npm install
11 |
12 |
13 | WORKDIR /usr/src/app/seneca-job-queue
14 | RUN npm install
15 |
16 |
17 | EXPOSE 4001 4002 4003
18 |
19 | CMD node runAll.js
20 |
--------------------------------------------------------------------------------
/service/test/services/bpmnplugins.test.js:
--------------------------------------------------------------------------------
1 | const assert = require('assert');
2 | const app = require('../../src/app');
3 |
4 | describe('\'bpmnplugins\' service', () => {
5 | it('registered the service', () => {
6 | const service = app.service('bpmnplugins');
7 |
8 | assert.ok(service, 'Registered the service');
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/service/test/services/emailtemplate.test.js:
--------------------------------------------------------------------------------
1 | const assert = require('assert');
2 | const app = require('../../src/app');
3 |
4 | describe('\'emailtemplate\' service', () => {
5 | it('registered the service', () => {
6 | const service = app.service('emailtemplate');
7 |
8 | assert.ok(service, 'Registered the service');
9 | });
10 | });
11 |
--------------------------------------------------------------------------------
/JobQue/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | test/unit/coverage
8 | test/e2e/reports
9 | selenium-debug.log
10 | package-lock.json
11 | worker/
12 | example/worker/
13 | seneca-job-queue/logs
14 |
15 | # Editor directories and files
16 | .idea
17 | *.suo
18 | *.ntvs*
19 | *.njsproj
20 | *.sln
21 |
--------------------------------------------------------------------------------
/JobQue/scheduler/scheduler.js:
--------------------------------------------------------------------------------
1 | const app = require('./config')
2 | const cxnOptions = app.rethinkdb
3 | const qOptions = app.qOptions
4 | const serviceURL = app. serviceURL
5 | const jobURL = app.jobURL
6 |
7 | const scheduler = require('./index')
8 | const main_scheduler = new scheduler({
9 | cxnOptions: cxnOptions,
10 | qOptions: qOptions,
11 | serviceURL: serviceURL,
12 | jobURL: jobURL
13 | })
14 |
--------------------------------------------------------------------------------
/client/test/unit/specs/Hello.spec.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Hello from '@/components/Hello'
3 |
4 | describe('Hello.vue', () => {
5 | it('should render correct contents', () => {
6 | const Constructor = Vue.extend(Hello)
7 | const vm = new Constructor().$mount()
8 | expect(vm.$el.querySelector('.hello h1').textContent)
9 | .to.equal('Welcome to Your Vue.js App')
10 | })
11 | })
12 |
--------------------------------------------------------------------------------
/service/src/services/dataquery/dataquery.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | console.warn('You are using the default filter for the dataquery service. For more information about event filters see https://docs.feathersjs.com/api/events.html#event-filtering'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/service/src/services/sendmail/sendmail.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | console.warn('You are using the default filter for the sendmail service. For more information about event filters see https://docs.feathersjs.com/api/events.html#event-filtering'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/service/src/services/dflowzdata/dflowzdata.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | console.warn('You are using the default filter for the sendmail service. For more information about event filters see https://docs.feathersjs.com/api/events.html#event-filtering'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/service/src/services/finstance/finstance.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | // console.warn('You are using the default filter for the finstance service. For more information about event filters see https://docs.feathersjs.com/api/events.html#event-filtering'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/service/src/services/flowzdata/flowzdata.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | // console.warn('You are using the default filter for the flowzdata service. For more information about event filters see https://docs.feathersjs.com/api/events.html#event-filtering'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/client/src/pages/user/viewSVG.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
14 |
--------------------------------------------------------------------------------
/client/src/store/state.js:
--------------------------------------------------------------------------------
1 | export default {
2 | user: null,
3 | token: null,
4 | role: null,
5 | schema: [],
6 | flowz: [],
7 | Cache: {},
8 | sidenavtoggle: true,
9 | sidenavpin: true,
10 | mappingTemp: [],
11 | BPMNxml: '',
12 | isLoggedIn: false,
13 | limitPage: 5,
14 | subscription: '',
15 | updateView: '',
16 | registerResources: {},
17 | registerRoles: {},
18 | userDetails: {}
19 | }
20 |
--------------------------------------------------------------------------------
/client/static/bpmnpluginwatcher.js:
--------------------------------------------------------------------------------
1 | // let async = require('asyncawait/async');
2 | // let await = require('asyncawait/await');
3 | var axios = require('axios');
4 | var fs = require('fs');
5 | var path = require('path');
6 | var chokidar = require('chokidar');
7 | var config = require('config')
8 |
9 | chokidar.watch(path.join(__dirname, '../bpmnPlugin'), { ignored: /(^|[\/\\])\../ }).on('addDir', function (path) {
10 | })
11 |
--------------------------------------------------------------------------------
/service/src/services/email-templates/email-templates.filters.js:
--------------------------------------------------------------------------------
1 | /* eslint no-console: 1 */
2 | console.warn('You are using the default filter for the email-templates service. For more information about event filters see https://docs.feathersjs.com/api/events.html#event-filtering'); // eslint-disable-line no-console
3 |
4 | module.exports = function (data, connection, hook) { // eslint-disable-line no-unused-vars
5 | return data;
6 | };
7 |
--------------------------------------------------------------------------------
/JobQue/mail/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "pino": {
3 | "timestamp": false,
4 | "prettyPrint": {
5 | "forceColor": true
6 | }
7 | },
8 | "rethinkdb": {
9 | "host": "aws-us-east-1-portal.30.dblayer.com",
10 | "port": 16868,
11 | "db": "mailservice"
12 | },
13 | "table": "emails",
14 | "cxnOptions": {
15 | "host": "localhost",
16 | "port": 28015,
17 | "db": "Flowz"
18 | },
19 | "users": "users"
20 | }
21 |
--------------------------------------------------------------------------------
/client/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "modules": false,
5 | "targets": {
6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
7 | }
8 | }],
9 | "stage-2"
10 | ],
11 | "plugins": ["transform-runtime"],
12 | // "plugins": ["transform-vue-jsx"],
13 | "env": {
14 | "test": {
15 | "presets": ["env", "stage-2"],
16 | "plugins": ["istanbul"]
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/service/src/index.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-console */
2 | const logger = require('winston');
3 | const app = require('./app');
4 | const port = app.get('port');
5 | const server = app.listen(port);
6 |
7 | process.on('unhandledRejection', (reason, p) =>
8 | logger.error('Unhandled Rejection at: Promise ', p, reason)
9 | );
10 |
11 | server.on('listening', () =>
12 | logger.info(`Feathers application started on ${app.get('host')}:${port}`)
13 | );
14 |
--------------------------------------------------------------------------------
/service/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "es6": true,
4 | "node": true,
5 | "mocha": true
6 | },
7 | "extends": "eslint:recommended",
8 | "rules": {
9 | "indent": [
10 | "error",
11 | 2
12 | ],
13 | "linebreak-style": [
14 | "error",
15 | "unix"
16 | ],
17 | "quotes": [
18 | "error",
19 | "single"
20 | ],
21 | "semi": [
22 | "error",
23 | "always"
24 | ]
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | // Use IntelliSense to learn about possible attributes.
3 | // Hover to view descriptions of existing attributes.
4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 | "version": "0.2.0",
6 | "configurations": [
7 | {
8 | "type": "node",
9 | "request": "launch",
10 | "name": "Launch Program",
11 | "program": "${file}"
12 | }
13 | ]
14 | }
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/InputOutputParameterProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inputOutputParameter = require('./implementation/InputOutputParameter');
4 |
5 | var assign = require('lodash/object').assign;
6 |
7 | module.exports = function (group, element, bpmnFactory, options, translate) {
8 |
9 | group.entries = group.entries.concat(inputOutputParameter(element, bpmnFactory, assign({}, options), translate));
10 |
11 | };
12 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/element-templates/util/validate.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var Validator = require('../Validator');
4 |
5 | /**
6 | * Validate the given template descriptors and
7 | * return a list of errors.
8 | *
9 | * @param {Array} descriptors
10 | *
11 | * @return {Array}
12 | */
13 | module.exports = function validate(descriptors) {
14 |
15 | return new Validator().addAll(descriptors).getErrors();
16 | };
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/ListenerProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var listener = require('./implementation/Listener');
4 |
5 | module.exports = function(group, element, bpmnFactory, translate) {
6 |
7 | var listenerEntry = listener(element, bpmnFactory, {}, translate);
8 |
9 | group.entries = group.entries.concat(listenerEntry.entries);
10 |
11 | return {
12 | getSelectedListener: listenerEntry.getSelectedListener
13 | };
14 |
15 | };
16 |
--------------------------------------------------------------------------------
/client/build/vue-loader.conf.js:
--------------------------------------------------------------------------------
1 | var utils = require('./utils')
2 | var config = require('../config')
3 | var isProduction = process.env.NODE_ENV === 'production'
4 |
5 | module.exports = {
6 | loaders: utils.cssLoaders({
7 | sourceMap: isProduction
8 | ? config.build.productionSourceMap
9 | : config.dev.cssSourceMap,
10 | extract: isProduction
11 | }),
12 | transformToRequire: {
13 | video: 'src',
14 | source: 'src',
15 | img: 'src',
16 | image: 'xlink:href'
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/InputOutputProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inputOutput = require('./implementation/InputOutput');
4 |
5 | module.exports = function(group, element, bpmnFactory, translate) {
6 |
7 | var inputOutputEntry = inputOutput(element, bpmnFactory, {}, translate);
8 |
9 | group.entries = group.entries.concat(inputOutputEntry.entries);
10 |
11 | return {
12 | getSelectedParameter: inputOutputEntry.getSelectedParameter
13 | };
14 |
15 | };
16 |
--------------------------------------------------------------------------------
/client/src/store/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Vuex from 'vuex'
3 | import state from './state'
4 | import actions from './actions'
5 | import mutations from './mutations'
6 | import getters from './getters'
7 | import createPersistedState from 'vuex-persistedstate'
8 |
9 | Vue.use(Vuex)
10 |
11 | export default new Vuex.Store({
12 | state,
13 | actions,
14 | mutations,
15 | getters,
16 | plugins: [createPersistedState()]
17 | })
18 | // plugins: [createPersistedState({ storage: window.sessionStorage })]
19 |
--------------------------------------------------------------------------------
/client/src/bpmn-custom-module/viewindex.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | __depends__: [
3 | require('diagram-js-direct-editing'),
4 | require('diagram-js/lib/features/context-pad'),
5 | require('diagram-js/lib/features/selection'),
6 | require('diagram-js/lib/features/connect'),
7 | require('diagram-js/lib/features/create')
8 | // require('../popup-menu')
9 | ],
10 | __init__: ['customRenderer'],
11 | customRenderer: ['type', require('./draw/CustomRenderer')]
12 | // __init__: ['customPaletteProvider'],
13 | }
14 |
--------------------------------------------------------------------------------
/client/test/unit/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 |
3 | Vue.config.productionTip = false
4 |
5 | // require all test files (files that ends with .spec.js)
6 | const testsContext = require.context('./specs', true, /\.spec$/)
7 | testsContext.keys().forEach(testsContext)
8 |
9 | // require all src files except main.js for coverage.
10 | // you can also change this to match only the subset of files that
11 | // you want coverage for.
12 | const srcContext = require.context('../../src', true, /^\.\/(?!main(\.js)?$)/)
13 | srcContext.keys().forEach(srcContext)
14 |
--------------------------------------------------------------------------------
/service/src/services/emailtemplate/emailtemplate.hooks.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | before: {
3 | all: [],
4 | find: [],
5 | get: [],
6 | create: [],
7 | update: [],
8 | patch: [],
9 | remove: []
10 | },
11 | after: {
12 | all: [],
13 | find: [],
14 | get: [],
15 | create: [],
16 | update: [],
17 | patch: [],
18 | remove: []
19 | },
20 | error: {
21 | all: [],
22 | find: [],
23 | get: [],
24 | create: [],
25 | update: [],
26 | patch: [],
27 | remove: []
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/element-templates/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | __depends__: [
3 | require('./cmd'),
4 | require('diagram-js/lib/i18n/translate')
5 | ],
6 | __init__: [
7 | 'customElementsPropertiesActivator',
8 | 'elementTemplatesLoader'
9 | ],
10 | customElementsPropertiesActivator: [ 'type', require('./CustomElementsPropertiesActivator') ],
11 | elementTemplates: [ 'type', require('./ElementTemplates') ],
12 | elementTemplatesLoader: [ 'type', require('./ElementTemplatesLoader') ]
13 | };
14 |
--------------------------------------------------------------------------------
/service/src/services/sendmail/sendmail.hooks.js:
--------------------------------------------------------------------------------
1 |
2 |
3 | module.exports = {
4 | before: {
5 | all: [],
6 | find: [],
7 | get: [],
8 | create: [],
9 | update: [],
10 | patch: [],
11 | remove: []
12 | },
13 |
14 | after: {
15 | all: [],
16 | find: [],
17 | get: [],
18 | create: [],
19 | update: [],
20 | patch: [],
21 | remove: []
22 | },
23 |
24 | error: {
25 | all: [],
26 | find: [],
27 | get: [],
28 | create: [],
29 | update: [],
30 | patch: [],
31 | remove: []
32 | }
33 | };
34 |
--------------------------------------------------------------------------------
/service/src/services/email-receive/email-receive.hooks.js:
--------------------------------------------------------------------------------
1 |
2 |
3 | module.exports = {
4 | before: {
5 | all: [],
6 | find: [],
7 | get: [],
8 | create: [],
9 | update: [],
10 | patch: [],
11 | remove: []
12 | },
13 |
14 | after: {
15 | all: [],
16 | find: [],
17 | get: [],
18 | create: [],
19 | update: [],
20 | patch: [],
21 | remove: []
22 | },
23 |
24 | error: {
25 | all: [],
26 | find: [],
27 | get: [],
28 | create: [],
29 | update: [],
30 | patch: [],
31 | remove: []
32 | }
33 | };
34 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/ConnectorInputOutputParameterProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var assign = require('lodash/object').assign;
4 |
5 | var inputOutputParameter = require('./implementation/InputOutputParameter');
6 |
7 | module.exports = function (group, element, bpmnFactory, options, translate) {
8 |
9 | options = assign({
10 | idPrefix: 'connector-',
11 | insideConnector: true
12 | }, options);
13 |
14 | group.entries = group.entries.concat(inputOutputParameter(element, bpmnFactory, options, translate));
15 |
16 | };
17 |
--------------------------------------------------------------------------------
/service/src/services/email-templates/email-templates.hooks.js:
--------------------------------------------------------------------------------
1 |
2 |
3 | module.exports = {
4 | before: {
5 | all: [],
6 | find: [],
7 | get: [],
8 | create: [],
9 | update: [],
10 | patch: [],
11 | remove: []
12 | },
13 |
14 | after: {
15 | all: [],
16 | find: [],
17 | get: [],
18 | create: [],
19 | update: [],
20 | patch: [],
21 | remove: []
22 | },
23 |
24 | error: {
25 | all: [],
26 | find: [],
27 | get: [],
28 | create: [],
29 | update: [],
30 | patch: [],
31 | remove: []
32 | }
33 | };
34 |
--------------------------------------------------------------------------------
/JobQue/mail/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "flowz-mail-worker",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "axios": "^0.17.1",
13 | "body-parser": "^1.18.2",
14 | "cors": "^2.8.4",
15 | "express": "^4.16.2",
16 | "express-fileupload": "^0.3.0",
17 | "lodash": "^4.17.4",
18 | "multer": "^1.3.0",
19 | "pino": "^4.10.1",
20 | "rethinkdbdash": "^2.3.31"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/ConnectorInputOutputProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var inputOutput = require('./implementation/InputOutput');
4 |
5 | module.exports = function(group, element, bpmnFactory, translate) {
6 |
7 | var inputOutputEntry = inputOutput(element, bpmnFactory, {
8 | idPrefix: 'connector-',
9 | insideConnector: true
10 | }, translate);
11 |
12 | group.entries = group.entries.concat(inputOutputEntry.entries);
13 |
14 | return {
15 | getSelectedParameter: inputOutputEntry.getSelectedParameter
16 | };
17 |
18 | };
19 |
--------------------------------------------------------------------------------
/client/debug.log:
--------------------------------------------------------------------------------
1 | [0119/103136.934:ERROR:process_info.cc(632)] range at 0xf341917000000000, size 0x1ef fully unreadable
2 | [0119/103136.935:ERROR:process_info.cc(632)] range at 0xf34191d200000000, size 0x1ef fully unreadable
3 | [0119/103136.935:ERROR:process_info.cc(632)] range at 0x0, size 0x1ef fully unreadable
4 | [0202/111642.994:ERROR:process_info.cc(632)] range at 0xd4c8926000000000, size 0x18f fully unreadable
5 | [0202/111642.995:ERROR:process_info.cc(632)] range at 0xd4c892c200000000, size 0x18f fully unreadable
6 | [0202/111642.995:ERROR:process_info.cc(632)] range at 0x0, size 0x18f fully unreadable
7 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/bpmn/parts/NameProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var nameEntryFactory = require('./implementation/Name'),
4 | is = require('bpmn-js/lib/util/ModelUtil').is;
5 |
6 | module.exports = function(group, element, translate) {
7 |
8 | if (!is(element, 'bpmn:Collaboration')) {
9 |
10 | var options;
11 | if (is(element, 'bpmn:TextAnnotation')) {
12 | options = { modelProperty: 'text' };
13 | }
14 |
15 | // name
16 | group.entries = group.entries.concat(nameEntryFactory(element, options, translate));
17 |
18 | }
19 |
20 | };
21 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/styles/listeners.less:
--------------------------------------------------------------------------------
1 | .cam-add-listener {
2 | > button {
3 | position: relative;
4 | margin-left: 10px;
5 | }
6 | }
7 |
8 | [data-list-entry-container] > .bpp-listener-area {
9 | border: 1px solid @bpp-color-gray-light;
10 | margin: 10px 1px;
11 | padding: 10px;
12 | }
13 |
14 | .bpp-listener-area {
15 | position: relative;
16 | > button {
17 | position: absolute;
18 | right: 0;
19 | top: 0;
20 | border: none;
21 | background: none;
22 | }
23 | }
24 |
25 | .bpp-listener-area + .bpp-listener-area {
26 | margin-top: 20px;
27 | }
28 |
--------------------------------------------------------------------------------
/JobQue/twitter/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "pluginwatcher",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "start",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "nikitam",
10 | "license": "ISC",
11 | "dependencies": {
12 | "asyncawait": "^1.0.6",
13 | "axios": "^0.17.1",
14 | "jquery": "^3.2.1",
15 | "json-daex": "0.0.13",
16 | "lodash": "^4.17.4",
17 | "mjml": "^3.3.5",
18 | "pino": "^4.10.1",
19 | "rethinkdb": "^2.3.3",
20 | "rethinkdb-job-queue": "^3.1.4",
21 | "rethinkdbdash": "^2.3.31"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/client/src/store/getters.js:
--------------------------------------------------------------------------------
1 | export default {
2 | allSchema (state) {
3 | // console.log('allSchema', state.schema)
4 | return state.schema
5 | },
6 | allSettings (state) {
7 | return state.settings
8 | },
9 | TabData (state) {
10 | return state.tabdata
11 | },
12 | flowzData (state) {
13 | return state.flowz
14 | },
15 | MapTemp (state) {
16 | // console.log('state.mappingTemp', state.mappingTemp)
17 | return state.mappingTemp
18 | },
19 | getXML (state) {
20 | return state.BPMNxml
21 | }
22 | // getActiveFlow (state) {
23 | // return state.activeFlow
24 | // }
25 | }
26 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/AsynchronousContinuationProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var getBusinessObject = require('bpmn-js/lib/util/ModelUtil').getBusinessObject,
4 | is = require('bpmn-js/lib/util/ModelUtil').is,
5 | asyncContinuation = require('./implementation/AsyncContinuation');
6 |
7 | module.exports = function(group, element, bpmnFactory, translate) {
8 |
9 | if (is(element, 'camunda:AsyncCapable')) {
10 |
11 | group.entries = group.entries.concat(asyncContinuation(element, bpmnFactory, {
12 | getBusinessObject: getBusinessObject
13 | }, translate));
14 |
15 | }
16 | };
--------------------------------------------------------------------------------
/client/test/e2e/specs/test.js:
--------------------------------------------------------------------------------
1 | // For authoring Nightwatch tests, see
2 | // http://nightwatchjs.org/guide#usage
3 |
4 | module.exports = {
5 | 'default e2e tests': function (browser) {
6 | // automatically uses dev Server port from /config.index.js
7 | // default: http://localhost:8080
8 | // see nightwatch.conf.js
9 | const devServer = browser.globals.devServerURL
10 |
11 | browser
12 | .url(devServer)
13 | .waitForElementVisible('#app', 5000)
14 | .assert.elementPresent('.hello')
15 | .assert.containsText('h1', 'Welcome to Your Vue.js App')
16 | .assert.elementCount('img', 1)
17 | .end()
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/JobQue/scheduler/config.js:
--------------------------------------------------------------------------------
1 | const fs = require('fs')
2 | module.exports = {
3 | rethinkdb: {
4 | host: process.env.host || "47.254.27.134",
5 | port: process.env.port || 28015,
6 | db: process.env.db || "FlowzEngine",
7 | authKey: process.env.authDB,
8 | ssl: process.env.cert ? { ca: fs.readFileSync('./ca.cer') } : null
9 | },
10 | qOptions: {
11 | name: process.env.scheduler || "scheduler",
12 | masterInterval: 60000,
13 | changeFeed: true,
14 | concurrency: 1,
15 | removeFinishedJobs: false
16 | },
17 | serviceURL: process.env.serviceURL || "http://localhost:4002",
18 | jobURL: process.env.jobURL || "http://localhost:4001"
19 | }
--------------------------------------------------------------------------------
/service/src/services/sendmail/sendmail.service.js:
--------------------------------------------------------------------------------
1 | // Initializes the `sendmail` service on path `/sendmail`
2 | const createService = require('./sendmail.class.js');
3 | const hooks = require('./sendmail.hooks');
4 |
5 | module.exports = function () {
6 | const app = this;
7 | const paginate = app.get('paginate');
8 |
9 | const options = {
10 | name: 'sendmail',
11 | paginate
12 | };
13 |
14 | // Initialize our service with any options it requires
15 | app.use('/sendmail', createService(options));
16 |
17 | // Get our initialized service so that we can register hooks and filters
18 | const service = app.service('sendmail');
19 |
20 | service.hooks(hooks);
21 | };
22 |
--------------------------------------------------------------------------------
/client/README.md:
--------------------------------------------------------------------------------
1 | # flowz-schema
2 |
3 | > A Vue.js project
4 |
5 | ## Build Setup
6 |
7 | ``` bash
8 | # install dependencies
9 | npm install
10 |
11 | # serve with hot reload at localhost:8080
12 | npm run dev
13 |
14 | # build for production with minification
15 | npm run build
16 |
17 | # build for production and view the bundle analyzer report
18 | npm run build --report
19 |
20 | # run unit tests
21 | npm run unit
22 |
23 | # run e2e tests
24 | npm run e2e
25 |
26 | # run all tests
27 | npm test
28 | ```
29 |
30 | For detailed explanation on how things work, checkout the [guide](http://vuejs-templates.github.io/webpack/) and [docs for vue-loader](http://vuejs.github.io/vue-loader).
31 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/ListenerFieldInjectionProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var assign = require('lodash/object').assign;
4 |
5 | var fieldInjection = require('./implementation/FieldInjection');
6 |
7 | module.exports = function (group, element, bpmnFactory, options, translate) {
8 |
9 | options = assign({
10 | idPrefix: 'listener-',
11 | insideListener: true
12 | }, options);
13 |
14 | var fieldInjectionEntry = fieldInjection(element, bpmnFactory, translate, options);
15 |
16 | if (fieldInjectionEntry && fieldInjectionEntry.length > 0) {
17 | group.entries = group.entries.concat(fieldInjectionEntry);
18 | }
19 |
20 | };
21 |
--------------------------------------------------------------------------------
/service/src/hooks/logger.js:
--------------------------------------------------------------------------------
1 | // A hook that logs service method before, after and error
2 | const logger = require('winston');
3 |
4 | module.exports = function () {
5 | return function (hook) {
6 | let message = `${hook.type}: ${hook.path} - Method: ${hook.method}`;
7 |
8 | if (hook.type === 'error') {
9 | message += `: ${hook.error.message}`;
10 | }
11 |
12 | logger.info(message);
13 | logger.debug('hook.data', hook.data);
14 | logger.debug('hook.params', hook.params);
15 |
16 | if (hook.result) {
17 | logger.debug('hook.result', hook.result);
18 | }
19 |
20 | if (hook.error) {
21 | logger.error(hook.error);
22 | }
23 | };
24 | };
25 |
--------------------------------------------------------------------------------
/service/config/production.json:
--------------------------------------------------------------------------------
1 | {
2 | "host": "localhost",
3 | "port": 3033,
4 | "public": "../public/",
5 | "paginate": {
6 | "default": 10,
7 | "max": 50
8 | },
9 | "scheduler_table": "scheduler",
10 | "qJobTimeout": 3600000,
11 | "qJobRetryMax": 5,
12 | "instance_table": "flowzinstance",
13 | "approvar_table": "approvalClass",
14 | "system_logs_table": "system_logs",
15 | "rdb_host": "RDB_HOST",
16 | "rdb_port": "RDB_PORT",
17 | "rdb_user": "",
18 | "rdb_password": "",
19 | "rdb_db": "FlowzEngine",
20 | "registerWokerAPI": "http://api.flowz.com/jobqueue1/upload-worker-process",
21 | "registerProcessAPI": "http://api.flowz.com/jobqueue3/register-jobtype/"
22 | }
23 |
--------------------------------------------------------------------------------
/service/src/services/bpmnplugins/bpmnplugins.hooks.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | before: {
3 | all: [],
4 | find: [],
5 | get: [],
6 | create: [
7 | hook => beforeCreate(hook)
8 | ],
9 | update: [],
10 | patch: [],
11 | remove: []
12 | },
13 | after: {
14 | all: [],
15 | find: [],
16 | get: [],
17 | create: [],
18 | update: [],
19 | patch: [],
20 | remove: []
21 | },
22 | error: {
23 | all: [],
24 | find: [],
25 | get: [],
26 | create: [],
27 | update: [],
28 | patch: [],
29 | remove: []
30 | }
31 | };
32 |
33 | function beforeCreate (hook) {
34 | hook.data['createdOn'] = new Date().toISOString()
35 | }
36 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/factory/EntryFieldDescription.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var MARKDOWN_LINK_REGEX = /\[([^\)]+)\]\(([^\]]+)\)/g;
4 |
5 | /**
6 | * Replace MarkDown Link Syntax with HTML Link Syntax
7 | * [myLink](http://www.myLink.de) -> myLink
8 | *
9 | * @param {String} value
10 | *
11 | * @return {String}
12 | */
13 | function linkify(text) {
14 | return text.replace(MARKDOWN_LINK_REGEX, '$1');
15 | }
16 |
17 | module.exports = function entryFieldDescription(description) {
18 | description = linkify(description);
19 |
20 | return '' + description + '
';
21 | };
22 |
--------------------------------------------------------------------------------
/client/src/api/sendmail/index.js:
--------------------------------------------------------------------------------
1 | import api from '../../api'
2 | let model = 'sendmail'
3 | export default {
4 | get: (id = null, params = null) => {
5 | if (id === null) {
6 | return api.request('get', '/' + model, null, params)
7 | } else {
8 | return api.request('get', '/' + model + '/' + id, params)
9 | }
10 | },
11 | post: (data) => {
12 | return api.request('post', '/' + model, data)
13 | },
14 | put: (id, data) => {
15 | return api.request('put', '/' + model + '/' + id, data)
16 | },
17 | patch: (id, data) => {
18 | return api.request('patch', '/' + model + '/' + id, data)
19 | },
20 | delete: (id) => {
21 | return api.request('delete', '/' + model + '/' + id)
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/service/.npmignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 |
5 | # Runtime data
6 | pids
7 | *.pid
8 | *.seed
9 |
10 | # Directory for instrumented libs generated by jscoverage/JSCover
11 | lib-cov
12 |
13 | # Coverage directory used by tools like istanbul
14 | coverage
15 |
16 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
17 | .grunt
18 |
19 | # Compiled binary addons (http://nodejs.org/api/addons.html)
20 | build/Release
21 |
22 | # Dependency directory
23 | # Commenting this out is preferred by some people, see
24 | # https://www.npmjs.org/doc/misc/npm-faq.html#should-i-check-my-node_modules-folder-into-git-
25 | node_modules
26 |
27 | # Users Environment Variables
28 | .lock-wscript
29 |
30 | data/
31 |
--------------------------------------------------------------------------------
/client/src/bpmn-custom-module/index.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | __depends__: [
3 | require('diagram-js-direct-editing'),
4 | require('diagram-js/lib/features/context-pad'),
5 | require('diagram-js/lib/features/selection'),
6 | require('diagram-js/lib/features/connect'),
7 | require('diagram-js/lib/features/create')
8 | // require('../popup-menu')
9 | ],
10 | __init__: ['customRenderer', 'customContextPad', 'customPaletteProvider'],
11 | customContextPad: ['type', require('./contextPad/CustomContextPadProvider')],
12 | customPaletteProvider: ['type', require('./palette/CustomPaletteProvider')],
13 | customRenderer: ['type', require('./draw/CustomRenderer')]
14 | // __init__: ['customPaletteProvider'],
15 | }
16 |
--------------------------------------------------------------------------------
/client/src/api/emailtemplate/index.js:
--------------------------------------------------------------------------------
1 | import api from '../../api'
2 | let model = 'emailtemplate'
3 | export default {
4 | get: (id = null, params = null) => {
5 | if (id === null) {
6 | return api.request('get', '/' + model, null, params)
7 | } else {
8 | return api.request('get', '/' + model + '/' + id, params)
9 | }
10 | },
11 | post: (data) => {
12 | return api.request('post', '/' + model, data)
13 | },
14 | put: (id, data) => {
15 | return api.request('put', '/' + model + '/' + id, data)
16 | },
17 | patch: (id, data) => {
18 | return api.request('patch', '/' + model + '/' + id, data)
19 | },
20 | delete: (id) => {
21 | return api.request('delete', '/' + model + '/' + id)
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/FieldInjectionProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var ImplementationTypeHelper = require('../../../helper/ImplementationTypeHelper');
4 |
5 | var fieldInjection = require('./implementation/FieldInjection');
6 |
7 | module.exports = function(group, element, bpmnFactory, translate) {
8 |
9 | var bo = ImplementationTypeHelper.getServiceTaskLikeBusinessObject(element);
10 |
11 | if (!bo) {
12 | return;
13 | }
14 |
15 | var fieldInjectionEntry = fieldInjection(element, bpmnFactory, translate, { businessObject: bo });
16 |
17 | if (fieldInjectionEntry && fieldInjectionEntry.length > 0) {
18 | group.entries = group.entries.concat(fieldInjectionEntry);
19 | }
20 |
21 | };
22 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/styles/header.less:
--------------------------------------------------------------------------------
1 | .bpp-properties-header {
2 | padding: 15px;
3 | padding-bottom: 5px;
4 |
5 | > .label {
6 | font-size: 120%;
7 | font-weight: bolder;
8 | }
9 |
10 | > .search {
11 | display: none;
12 | margin-top: 5px;
13 | position: relative;
14 |
15 | input {
16 | position: relative;
17 | border-radius: 15px;
18 | width: 100%;
19 | z-index: 1;
20 | }
21 |
22 | button {
23 | position: absolute;
24 | top: 0;
25 | bottom: 0;
26 | right: 0;
27 | border: none;
28 | background-color: transparent;
29 | z-index: 2;
30 | &:before {
31 | content: '\E805';
32 | }
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/StartEventInitiator.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var entryFactory = require('../../../factory/EntryFactory'),
4 | is = require('bpmn-js/lib/util/ModelUtil').is,
5 | getBusinessObject = require('bpmn-js/lib/util/ModelUtil').getBusinessObject;
6 |
7 |
8 | module.exports = function(group, element, translate) {
9 |
10 | var bo = getBusinessObject(element);
11 |
12 | if (!bo) {
13 | return;
14 | }
15 |
16 | if ( is(element, 'camunda:Initiator') && !is(element.parent, 'bpmn:SubProcess') ) {
17 | group.entries.push(entryFactory.textField({
18 | id: 'initiator',
19 | label: translate('Initiator'),
20 | modelProperty: 'initiator'
21 | }));
22 | }
23 | };
24 |
--------------------------------------------------------------------------------
/service/src/services/finstance/finstance.service.js:
--------------------------------------------------------------------------------
1 | // Initializes the `finstance` service on path `/finstance`
2 | const createService = require('feathers-rethinkdb');
3 | const hooks = require('./finstance.hooks');
4 |
5 | module.exports = function () {
6 | const app = this;
7 | const Model = app.get('rethinkdbClient');
8 | const paginate = app.get('paginate');
9 |
10 | const options = {
11 | name: 'finstance',
12 | Model,
13 | paginate
14 | };
15 |
16 | // Initialize our service with any options it requires
17 | app.use('/finstance', createService(options));
18 |
19 | // Get our initialized service so that we can register hooks and filters
20 | const service = app.service('finstance');
21 |
22 | service.hooks(hooks);
23 | };
24 |
--------------------------------------------------------------------------------
/service/src/services/flowzdata/flowzdata.service.js:
--------------------------------------------------------------------------------
1 | // Initializes the `flowzdata` service on path `/flowzdata`
2 | const createService = require('feathers-rethinkdb');
3 | const hooks = require('./flowzdata.hooks');
4 |
5 | module.exports = function () {
6 | const app = this;
7 | const Model = app.get('rethinkdbClient');
8 | const paginate = app.get('paginate');
9 |
10 | const options = {
11 | name: 'flowzdata',
12 | Model,
13 | paginate
14 | };
15 |
16 | // Initialize our service with any options it requires
17 | app.use('/flowzdata', createService(options));
18 |
19 | // Get our initialized service so that we can register hooks and filters
20 | const service = app.service('flowzdata');
21 |
22 | service.hooks(hooks);
23 | };
24 |
--------------------------------------------------------------------------------
/client/.eslintrc.js:
--------------------------------------------------------------------------------
1 | // http://eslint.org/docs/user-guide/configuring
2 |
3 | module.exports = {
4 | root: true,
5 | parser: 'babel-eslint',
6 | parserOptions: {
7 | sourceType: 'module'
8 | },
9 | env: {
10 | browser: true,
11 | },
12 | // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
13 | extends: 'standard',
14 | // required to lint *.vue files
15 | plugins: [
16 | 'html'
17 | ],
18 | // add your custom rules here
19 | 'rules': {
20 | // allow paren-less arrow functions
21 | 'arrow-parens': 0,
22 | // allow async-await
23 | 'generator-star-spacing': 0,
24 | // allow debugger during development
25 | 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/service/src/services/emailtemplate/emailtemplate.service.js:
--------------------------------------------------------------------------------
1 | // Initializes the `emailtemplate` service on path `/emailtemplate`
2 | const createService = require('feathers-rethinkdb');
3 | const hooks = require('./emailtemplate.hooks');
4 |
5 | module.exports = function () {
6 | const app = this;
7 | const Model = app.get('rethinkdbClient');
8 | const paginate = app.get('paginate');
9 |
10 | const options = {
11 | name: 'emailtemplate',
12 | Model,
13 | paginate
14 | };
15 | // Initialize our service with any options it requires
16 | app.use('/emailtemplate', createService(options));
17 | // Get our initialized service so that we can register hooks and filters
18 | const service = app.service('emailtemplate');
19 | service.hooks(hooks);
20 | };
21 |
--------------------------------------------------------------------------------
/service/src/services/bpmnplugins/bpmnplugins.service.js:
--------------------------------------------------------------------------------
1 | // Initializes the `bpmnplugins` service on path `/bpmnplugins`
2 | const createService = require('feathers-rethinkdb');
3 | const hooks = require('./bpmnplugins.hooks');
4 |
5 | module.exports = function () {
6 | const app = this;
7 | const Model = app.get('rethinkdbClient');
8 | const paginate = app.get('paginate');
9 |
10 | const options = {
11 | name: 'bpmnplugins',
12 | Model,
13 | paginate
14 | };
15 |
16 | // Initialize our service with any options it requires
17 | app.use('/bpmnplugins', createService(options));
18 |
19 | // Get our initialized service so that we can register hooks and filters
20 | const service = app.service('bpmnplugins');
21 |
22 | service.hooks(hooks);
23 | };
24 |
--------------------------------------------------------------------------------
/service/src/services/config.js:
--------------------------------------------------------------------------------
1 | const config = require('config');
2 | const fs = require('fs');
3 | // console.log('USER', config.get('rdb_user').trim());
4 | let ssl = process.env.cert ? { ca: fs.readFileSync(__dirname + process.env.cert) } : null
5 | let rauth = process.env.rauth ? process.env.rauth : null
6 | var rethinkdb = {
7 | rethinkdb: {
8 | db: 'FlowzEngine',
9 | servers: [{
10 | host: config.get('rdb_host').trim(),
11 | port: config.get('rdb_port').trim()
12 | // authKey: rauth,
13 | // ssl: ssl
14 | }]
15 | }
16 | };
17 | if (config.get('rdb_user').trim() !== '') {
18 | rethinkdb.rethinkdb.servers.user = config.get('rdb_user').trim();
19 | rethinkdb.rethinkdb.servers.password = config.get('rdb_password').trim()
20 | }
21 | module.exports = rethinkdb;
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/helper/ElementHelper.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var ElementHelper = {};
4 | module.exports = ElementHelper;
5 |
6 | /**
7 | * Creates a new element and set the parent to it
8 | *
9 | * @method ElementHelper#createElement
10 | *
11 | * @param {String} elementType of the new element
12 | * @param {Object} properties of the new element in key-value pairs
13 | * @param {moddle.object} parent of the new element
14 | * @param {BpmnFactory} factory which creates the new element
15 | *
16 | * @returns {djs.model.Base} element which is created
17 | */
18 | ElementHelper.createElement = function(elementType, properties, parent, factory) {
19 | var element = factory.create(elementType, properties);
20 | element.$parent = parent;
21 |
22 | return element;
23 | };
24 |
--------------------------------------------------------------------------------
/client/vhost_ssl_staging.conf:
--------------------------------------------------------------------------------
1 |
2 | ServerName www.engine.flowzstaging.tk
3 | ServerAlias *.flowzstaging.tk
4 | DocumentRoot "/var/www/html/"
5 |
6 | Options Indexes FollowSymLinks
7 | AllowOverride All
8 | Require all granted
9 |
10 | SSLEngine On
11 | SSLCertificateFile /etc/ssl/cert/cert_staging.pem
12 | SSLCertificateKeyFile /etc/ssl/privkey/privkey_staging.pem
13 |
14 |
15 |
16 |
17 | ServerName www.engine.flowzstaging.tk
18 | ServerAlias *.flowzstaging.tk
19 | #Redirect / https://www.engine.flowzdigital.com
20 | DocumentRoot "/var/www/html/"
21 |
22 | Options Indexes FollowSymLinks
23 | AllowOverride All
24 | Require all granted
25 |
26 |
27 |
--------------------------------------------------------------------------------
/client/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Workflow
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/JobQue/scheduler/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "flowz-scheduler",
3 | "version": "1.0.0",
4 | "main": "index.js",
5 | "scripts": {
6 | "test": "echo \"Error: no test specified\" && exit 1",
7 | "start": "node scheduler.js"
8 | },
9 | "author": "bhumilsarvaiya",
10 | "license": "ISC",
11 | "dependencies": {
12 | "axios": "^0.17.0",
13 | "child_process": "^1.0.2",
14 | "chokidar": "^1.7.0",
15 | "fs": "0.0.1-security",
16 | "lodash": "^4.17.4",
17 | "pino": "^4.7.2",
18 | "request": "^2.83.0",
19 | "request-promise": "^4.2.2",
20 | "rethinkdb": "^2.3.3",
21 | "rethinkdb-job-queue": "^3.1.4",
22 | "twit": "^2.2.9",
23 | "underscore": "^1.8.3",
24 | "vm": "^0.1.0"
25 | },
26 | "devDependencies": {
27 | "webpack": "^3.5.6"
28 | },
29 | "description": ""
30 | }
31 |
--------------------------------------------------------------------------------
/service/config/default.json:
--------------------------------------------------------------------------------
1 | {
2 | "host": "localhost",
3 | "port": 3030,
4 | "public": "../public/",
5 | "paginate": {
6 | "default": 10,
7 | "max": 50
8 | },
9 | "scheduler_table": "scheduler",
10 | "qJobTimeout": 3600000,
11 | "qJobRetryMax": 5,
12 | "instance_table": "flowzinstance",
13 | "approvar_table": "approvalClass",
14 | "system_logs_table": "system_logs",
15 | "rdb_host": "RDB_HOST",
16 | "rdb_port": "RDB_PORT",
17 | "rdb_user": "",
18 | "rdb_password": "",
19 | "rdb_db": "FlowzEngine",
20 | "registerWokerAPI": "http://localhost:4001/upload-worker-process",
21 | "registerProcessAPI": "http://localhost:4003/register-jobtype/",
22 | "rethinkdb": {
23 | "db": "service",
24 | "servers": [
25 | {
26 | "host": "localhost",
27 | "port": "28015"
28 | }
29 | ]
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/service/src/services/dflowzdata/dflowzdata.service.js:
--------------------------------------------------------------------------------
1 | // Initializes the `sendmail` service on path `/sendmail`
2 | const createService = require('./dflowzdata.class.js');
3 | const hooks = require('./dflowzdata.hooks');
4 |
5 | module.exports = function () {
6 | const app = this;
7 | const paginate = app.get('paginate');
8 | const Model = app.get('rethinkdbClient');
9 |
10 | const options = {
11 | name: 'dflowzdata',
12 | paginate,
13 | Model
14 | };
15 |
16 | // Initialize our service with any options it requires
17 | app.use('/dflowzdata', createService(options));
18 |
19 | // Get our initialized service so that we can register hooks and filters
20 | const service = app.service('dflowzdata');
21 | service.watch = false;
22 | service.hooks(hooks);
23 | // console.log('=======',Object.keys(app.services),'=========');
24 | };
25 |
--------------------------------------------------------------------------------
/client/build/build.js:
--------------------------------------------------------------------------------
1 | require('./check-versions')()
2 |
3 | process.env.NODE_ENV = 'production'
4 |
5 | var ora = require('ora')
6 | var rm = require('rimraf')
7 | var path = require('path')
8 | var chalk = require('chalk')
9 | var webpack = require('webpack')
10 | var config = require('../config')
11 | var webpackConfig = require('./webpack.prod.conf')
12 |
13 | var spinner = ora('building for production...')
14 | spinner.start()
15 |
16 | rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
17 | if (err) throw err
18 | webpack(webpackConfig, function (err, stats) {
19 | spinner.stop()
20 | if (err) throw err
21 | process.stdout.write(stats.toString({
22 | colors: true,
23 | modules: false,
24 | children: false,
25 | chunks: false,
26 | chunkModules: false
27 | }) + '\n\n')
28 | })
29 | })
30 |
--------------------------------------------------------------------------------
/netlify.toml:
--------------------------------------------------------------------------------
1 | [Settings]
2 | ID = "Develop-I"
3 | [build]
4 | # This will be your default build command
5 | base = "client/"
6 | command = "npm run build"
7 | publish = "client/dist"
8 |
9 | #[[redirects]]
10 | # from = "/"
11 | # to = "/index.html"
12 | # status = 200
13 | # force = true
14 |
15 | #[[redirects]]
16 | # from = "/*"
17 | # to = "/index.html"
18 | # status = 301
19 | # force = true
20 | [[redirects]]
21 | from = "/:page/:page/:page/:page"
22 | to = "/index.html"
23 | status = 200
24 | force = true
25 |
26 | [[redirects]]
27 | from = "/:page/:page/:page"
28 | to = "/index.html"
29 | status = 200
30 | force = true
31 |
32 | [[redirects]]
33 | from = "/:page/:page"
34 | to = "/index.html"
35 | status = 200
36 | force = true
37 |
38 | [[redirects]]
39 | from = "/:page"
40 | to = "/index.html"
41 | status = 200
42 | force = true
43 |
--------------------------------------------------------------------------------
/client/src/api/flowz/index.js:
--------------------------------------------------------------------------------
1 | import api from '../../api'
2 | let model = 'flowz'
3 | // import store from '@/store'
4 | export default {
5 | get: (id = null, params = null, headers = null) => {
6 | if (id === null) {
7 | return api.request('get', '/' + model, null, params, headers)
8 | } else {
9 | return api.request('get', '/' + model + '/' + id, null, params, headers)
10 | }
11 | },
12 | getCustom: (string) => {
13 | return api.request('get', '/' + model + string)
14 | },
15 | post: (data) => {
16 | return api.request('post', '/' + model, data)
17 | },
18 | put: (id, data) => {
19 | return api.request('put', '/' + model + '/' + id, data)
20 | },
21 | patch: (id, data) => {
22 | return api.request('patch', '/' + model + '/' + id, data)
23 | },
24 | delete: (id) => {
25 | return api.request('delete', '/' + model + '/' + id)
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/client/test/e2e/custom-assertions/elementCount.js:
--------------------------------------------------------------------------------
1 | // A custom Nightwatch assertion.
2 | // the name of the method is the filename.
3 | // can be used in tests like this:
4 | //
5 | // browser.assert.elementCount(selector, count)
6 | //
7 | // for how to write custom assertions see
8 | // http://nightwatchjs.org/guide#writing-custom-assertions
9 | exports.assertion = function (selector, count) {
10 | this.message = 'Testing if element <' + selector + '> has count: ' + count
11 | this.expected = count
12 | this.pass = function (val) {
13 | return val === this.expected
14 | }
15 | this.value = function (res) {
16 | return res.value
17 | }
18 | this.command = function (cb) {
19 | var self = this
20 | return this.api.execute(function (selector) {
21 | return document.querySelectorAll(selector).length
22 | }, [selector], function (res) {
23 | cb.call(self, res)
24 | })
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/client/vhost_ssl_qa.conf:
--------------------------------------------------------------------------------
1 | #
2 | #ServerName www.engine.flowzqa.tk
3 | #ServerAlias *.flowzqa.tk
4 | #Redirect / https://www.engine.flowzqa.tk
5 | #
6 |
7 |
8 | ServerName www.engine.flowzqa.tk
9 | ServerAlias *.flowzqa.tk
10 | DocumentRoot "/var/www/html/"
11 |
12 | Options Indexes FollowSymLinks
13 | AllowOverride All
14 | Require all granted
15 |
16 | SSLEngine on
17 | SSLCertificateFile /etc/ssl/cert/cert_qa.pem
18 | SSLCertificateKeyFile /etc/ssl/privkey/privkey_qa.pem
19 |
20 |
21 |
22 |
23 | ServerName www.engine.flowzqa.tk
24 | ServerAlias *.flowzqa.tk
25 | #Redirect / https://www.engine.flowzqa.tk
26 | DocumentRoot "/var/www/html/"
27 |
28 | Options Indexes FollowSymLinks
29 | AllowOverride All
30 | Require all granted
31 |
32 |
33 |
--------------------------------------------------------------------------------
/service/src/services/email-templates/email-templates.service.js:
--------------------------------------------------------------------------------
1 | // Initializes the `email-templates` service on path `/email-templates`
2 | const createService = require('feathers-rethinkdb');
3 | const hooks = require('./email-templates.hooks');
4 | const filters = require('./email-templates.filters');
5 |
6 | module.exports = function () {
7 | const app = this;
8 | const Model = app.get('rethinkdbClient');
9 | const paginate = app.get('paginate');
10 |
11 | const options = {
12 | name: 'email_templates',
13 | Model,
14 | paginate
15 | };
16 |
17 | // Initialize our service with any options it requires
18 | app.use('/email-templates', createService(options));
19 |
20 | // Get our initialized service so that we can register hooks and filters
21 | const service = app.service('email-templates');
22 |
23 | service.hooks(hooks);
24 |
25 | if (service.filter) {
26 | service.filter(filters);
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/client/src/api/flowzdata/index.js:
--------------------------------------------------------------------------------
1 | import api from '../../api'
2 | let model = 'flowzdata'
3 | export default {
4 | get: (id = null, params = null, headers = null) => {
5 | if (id === null) {
6 | return api.request('get', '/' + model, null, params, headers).then(response => {
7 | return response.data
8 | })
9 | } else {
10 | return api.request('get', '/' + model + '/' + id, null, params, headers)
11 | }
12 | },
13 | // getThis: (id) => {
14 | // return api.request('get', '/' + model + '/' + id)
15 | // },
16 | post: (data) => {
17 | return api.request('post', '/' + model, data)
18 | },
19 | put: (id, data) => {
20 | return api.request('put', '/' + model + '/' + id, data)
21 | },
22 | patch: (id, data) => {
23 | return api.request('patch', '/' + model + '/' + id, data)
24 | },
25 | delete: (id) => {
26 | return api.request('delete', '/' + model + '/' + id)
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/service/src/app.hooks.js:
--------------------------------------------------------------------------------
1 | // Application hooks that run for every service
2 | const logger = require('./hooks/logger');
3 |
4 | module.exports = {
5 | before: {
6 | all: [],
7 | find: [
8 | hook => beforeFind(hook)
9 | ],
10 | get: [],
11 | create: [],
12 | update: [],
13 | patch: [],
14 | remove: []
15 | },
16 |
17 | after: {
18 | all: [ logger() ],
19 | find: [],
20 | get: [],
21 | create: [],
22 | update: [],
23 | patch: [],
24 | remove: []
25 | },
26 |
27 | error: {
28 | all: [ logger() ],
29 | find: [],
30 | get: [],
31 | create: [],
32 | update: [],
33 | patch: [],
34 | remove: []
35 | }
36 | };
37 |
38 | function beforeFind(hook) {
39 | if (hook.params.query && hook.params.query.$paginate) {
40 | hook.params.paginate = hook.params.query.$paginate === 'false' || hook.params.query.$paginate === false;
41 | delete hook.params.query.$paginate;
42 | }
43 | }
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/bpmn/parts/implementation/SignalEventDefinition.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var eventDefinitionReference = require('./EventDefinitionReference'),
4 | elementReferenceProperty = require('./ElementReferenceProperty');
5 |
6 |
7 | module.exports = function(group, element, bpmnFactory, signalEventDefinition) {
8 |
9 | group.entries = group.entries.concat(eventDefinitionReference(element, signalEventDefinition, bpmnFactory, {
10 | label: 'Signal',
11 | elementName: 'signal',
12 | elementType: 'bpmn:Signal',
13 | referenceProperty: 'signalRef',
14 | newElementIdPrefix: 'Signal_'
15 | }));
16 |
17 |
18 | group.entries = group.entries.concat(elementReferenceProperty(element, signalEventDefinition, bpmnFactory, {
19 | id: 'signal-element-name',
20 | label: 'Signal Name',
21 | referenceProperty: 'signalRef',
22 | modelProperty: 'name',
23 | shouldValidate: true
24 | }));
25 |
26 | };
27 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/camunda/parts/HistoryTimeToLiveProps.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var is = require('bpmn-js/lib/util/ModelUtil').is,
4 | getBusinessObject = require('bpmn-js/lib/util/ModelUtil').getBusinessObject;
5 |
6 | var historyTimeToLive = require('./implementation/HistoryTimeToLive');
7 |
8 | module.exports = function(group, element, bpmnFactory, translate) {
9 | var businessObject = getBusinessObject(element);
10 |
11 | if (is(element, 'camunda:Process') ||
12 | is(element, 'bpmn:Participant') && businessObject.get('processRef')) {
13 |
14 | group.entries = group.entries.concat(historyTimeToLive(element, bpmnFactory, {
15 | getBusinessObject: function(element) {
16 | var bo = getBusinessObject(element);
17 |
18 | if (!is(bo, 'bpmn:Participant')) {
19 | return bo;
20 | }
21 |
22 | return bo.get('processRef');
23 | }
24 | }, translate));
25 |
26 | }
27 | };
28 |
--------------------------------------------------------------------------------
/client/build/webpack.test.conf.js:
--------------------------------------------------------------------------------
1 | // This is the webpack config used for unit tests.
2 |
3 | var utils = require('./utils')
4 | var webpack = require('webpack')
5 | var merge = require('webpack-merge')
6 | var baseConfig = require('./webpack.base.conf')
7 |
8 | var webpackConfig = merge(baseConfig, {
9 | // use inline sourcemap for karma-sourcemap-loader
10 | module: {
11 | rules: utils.styleLoaders()
12 | },
13 | devtool: '#inline-source-map',
14 | resolveLoader: {
15 | alias: {
16 | // necessary to to make lang="scss" work in test when using vue-loader's ?inject option
17 | // see discussion at https://github.com/vuejs/vue-loader/issues/724
18 | 'scss-loader': 'sass-loader'
19 | }
20 | },
21 | plugins: [
22 | new webpack.DefinePlugin({
23 | 'process.env': require('../config/test.env')
24 | })
25 | ]
26 | })
27 |
28 | // no need for app entry during tests
29 | delete webpackConfig.entry
30 |
31 | module.exports = webpackConfig
32 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/bpmn/parts/implementation/MessageEventDefinition.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var eventDefinitionReference = require('./EventDefinitionReference'),
4 | elementReferenceProperty = require('./ElementReferenceProperty');
5 |
6 |
7 | module.exports = function(group, element, bpmnFactory, messageEventDefinition) {
8 |
9 | group.entries = group.entries.concat(eventDefinitionReference(element, messageEventDefinition, bpmnFactory, {
10 | label: 'Message',
11 | elementName: 'message',
12 | elementType: 'bpmn:Message',
13 | referenceProperty: 'messageRef',
14 | newElementIdPrefix: 'Message_'
15 | }));
16 |
17 |
18 | group.entries = group.entries.concat(elementReferenceProperty(element, messageEventDefinition, bpmnFactory, {
19 | id: 'message-element-name',
20 | label: 'Message Name',
21 | referenceProperty: 'messageRef',
22 | modelProperty: 'name',
23 | shouldValidate: true
24 | }));
25 |
26 | };
27 |
--------------------------------------------------------------------------------
/client/vhost_ssl_develop.conf:
--------------------------------------------------------------------------------
1 | #
2 | #ServerName www.engine.flowzcluster.tk
3 | #ServerAlias *.flowzcluster.tk
4 | #Redirect / https://www.engine.flowzcluster.tk
5 | #
6 |
7 |
8 | ServerName www.engine.flowzcluster.tk
9 | ServerAlias *.flowzcluster.tk
10 | DocumentRoot "/var/www/html/"
11 |
12 | Options Indexes FollowSymLinks
13 | AllowOverride All
14 | Require all granted
15 |
16 | SSLEngine On
17 | SSLCertificateFile /etc/ssl/cert/cert_develop.pem
18 | SSLCertificateKeyFile /etc/ssl/privkey/privkey_develop.pem
19 |
20 |
21 |
22 |
23 | ServerName www.engine.flowzflowzcluster.tk
24 | ServerAlias *.flowzcluster.tk
25 | #Redirect / https://www.engine.flowzcluster.tk
26 | DocumentRoot "/var/www/html/"
27 |
28 | Options Indexes FollowSymLinks
29 | AllowOverride All
30 | Require all granted
31 |
32 |
33 |
--------------------------------------------------------------------------------
/client/vhost_ssl_master.conf:
--------------------------------------------------------------------------------
1 | #
2 | #ServerName www.engine.flowzdigital.com
3 | #ServerAlias *.flowzdigital.com
4 | #Redirect / https://www.engine.flowzdigital.com
5 | #
6 |
7 |
8 | ServerName www.engine.flowzdigital.com
9 | ServerAlias *.flowzdigital.com
10 | DocumentRoot "/var/www/html/"
11 |
12 | Options Indexes FollowSymLinks
13 | AllowOverride All
14 | Require all granted
15 |
16 | SSLEngine on
17 | SSLCertificateFile /etc/ssl/cert/cert_master.pem
18 | SSLCertificateKeyFile /etc/ssl/privkey/privkey_master.pem
19 |
20 |
21 |
22 |
23 | ServerName www.engine.flowzdigital.com
24 | ServerAlias *.flowzdigital.com
25 | #Redirect / https://www.engine.flowzdigital.com
26 | DocumentRoot "/var/www/html/"
27 |
28 | Options Indexes FollowSymLinks
29 | AllowOverride All
30 | Require all granted
31 |
32 |
33 |
--------------------------------------------------------------------------------
/service/src/services/dataquery/dataquery.class.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-unused-vars */
2 | class Service {
3 | constructor (options) {
4 | this.options = options || {};
5 | }
6 |
7 | find (params) {
8 | return Promise.resolve([]);
9 | }
10 |
11 | get (id, params) {
12 | return Promise.resolve({
13 | id, text: `A new message with ID: ${id}!`
14 | });
15 | }
16 |
17 | create (data, params) {
18 | if (Array.isArray(data)) {
19 | return Promise.all(data.map(current => this.create(current)));
20 | }
21 |
22 | return Promise.resolve(data);
23 | }
24 |
25 | update (id, data, params) {
26 | return Promise.resolve(data);
27 | }
28 |
29 | patch (id, data, params) {
30 | return Promise.resolve(data);
31 | }
32 |
33 | remove (id, params) {
34 | return Promise.resolve({ id });
35 | }
36 | }
37 |
38 | module.exports = function (options) {
39 | return new Service(options);
40 | };
41 |
42 | module.exports.Service = Service;
43 |
--------------------------------------------------------------------------------
/client/static/bpmn/bpmn-js-properties-panel/lib/provider/bpmn/parts/implementation/Name.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var entryFactory = require('../../../../factory/EntryFactory');
4 |
5 | /**
6 | * Create an entry to modify the name of an an element.
7 | *
8 | * @param {djs.model.Base} element
9 | * @param {Object} options
10 | * @param {string} options.id the id of the entry
11 | * @param {string} options.label the label of the entry
12 | *
13 | * @return {Array