@compas-oscd/open-scd 0.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +66 -0
  2. package/package.json +177 -0
package/README.md ADDED
@@ -0,0 +1,66 @@
1
+ # `OpenSCD`
2
+
3
+ [![Build Status](https://travis-ci.org/openscd/open-scd.svg?branch=main)](https://travis-ci.org/openscd/open-scd)
4
+ [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fopenscd%2Fopen-scd.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fopenscd%2Fopen-scd?ref=badge_shield)
5
+ [![Built with open-wc recommendations](https://img.shields.io/badge/built%20with-open--wc-blue.svg)](https://github.com/open-wc)
6
+ [![Slack LF Energy](https://img.shields.io/badge/LF%20Energy%20Slack-%20%23OpenSCD%20chat-purple?logo=slack&color=2aa198&labelColor=6c71c4)](https://lfenergy.slack.com/archives/C03LH7EUP34)
7
+
8
+ Open Substation Communication Designer is an editor for SCL files as described in `IEC 61850-6`.
9
+
10
+ > Try it out at [openscd.github.io](https://openscd.github.io)!
11
+
12
+ Make sure your web browser has enough free memory! If needed, disable plug-ins and close unused browser tabs.
13
+
14
+ ## Installation
15
+
16
+ In order to install OpenSCD on your local device (only for you), simply visit [openscd.github.io](https://openscd.github.io), click the "Install OpenSCD" button in your address bar (Chrome or Edge on desktop) or click the "Add OpenSCD to home screen" notification in any mobile browser.
17
+
18
+ In order to install your own instance of OpenSCD on your own webserver (e.g. on your company intranet), simply download [our latest release](https://github.com/openscd/open-scd/releases/latest) (`open-scd.zip` or `open-scd.tar.gz`) and extract the archive contents into the "webroot" directory of your web server.
19
+
20
+ If you don't have your own webserver but still want your own version of OpenSCD hosted locally (e.g. on a system without an internet connection), you can [use a browser plugin that acts as a local webserver](https://github.com/openscd/open-scd/wiki/Install-OpenSCD#offline) (only for you) instead.
21
+
22
+ ### Building
23
+
24
+ If you want to build OpenSCD yourself in order to make some changes to your local installation or to contribute to the project, you may first want to install [Node.js](https://nodejs.org/) in order to be able to use our local development setup. It is recommended to use Node.js 18.x. it is is the version used to build and test on GitHub Actions.
25
+
26
+ Once Node.js is installed on your system, you may get started by entering the following lines in your command prompt:
27
+
28
+ ```
29
+ git clone https://github.com/openscd/open-scd.git
30
+ cd open-scd
31
+ npm install
32
+ npm run build
33
+ npm start
34
+ ```
35
+
36
+ This will start a local development server and open a browser window which will automatically be reloaded as soon as you save any changes to your local source code files.
37
+
38
+ ### TypeDoc
39
+
40
+ This project uses [TypeDoc](https://typedoc.org/) to transform documentation comments in the source code into a rendered HTML document that can be queried and navigated through. If you want to consult the generated documentation for the TypeScript components, mixins, modules and other relevant artifacts of this project, you can [do it here](https://openscd.github.io/doc/). Documentation for OpenSCD Core [can be found here](https://openscd.github.io/core-doc).
41
+
42
+ ### Linting & Formatting
43
+
44
+ If you use VSCode to develop, we recommend you install and use the [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) and [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) extensions in order to automatically lint and format your code as you edit it. There are similar plugins available for using [ESLint](https://eslint.org/) and [Prettier](https://prettier.io/) from within other IDEs and text editors.
45
+
46
+ ### Scripts
47
+
48
+ We provide the following `npm` scripts for your convenience:
49
+
50
+ - `npm start` runs `OpenSCD` for development, reloading on file changes
51
+ - `npm test` runs the test suite with Karma
52
+ - `npm run lint` runs the linter (fixes problems in your code)
53
+ - `npm run format` runs the formatter (formats your code in a unified way)
54
+ - `npm run doc` builds HTML documentation into the `doc` directory
55
+ - `npm run build` builds a deployable version of the project into the `dist` directory
56
+
57
+ ## License
58
+
59
+ The [IEC 61850](https://webstore.iec.ch/publication/63319) XSD and NSD code components used are
60
+ distributed under their [end user license agreement](CC-EULA.pdf).
61
+
62
+ This project is licensed under the [Apache License 2.0](LICENSE.md).
63
+
64
+ © 2020-2022 OMICRON electronics GmbH, TransnetBW GmbH, Alliander N.V., and others
65
+
66
+ [![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fopenscd%2Fopen-scd.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fopenscd%2Fopen-scd?ref=badge_large)
package/package.json ADDED
@@ -0,0 +1,177 @@
1
+ {
2
+ "name": "@compas-oscd/open-scd",
3
+ "version": "0.34.0",
4
+ "repository": "https://github.com/openscd/open-scd.git",
5
+ "directory": "packages/openscd",
6
+ "description": "A bottom-up substation configuration designer for projects described using SCL `IEC 61850-6` Edition 2 or greater.",
7
+ "keywords": [
8
+ "SCL",
9
+ "substation configuration",
10
+ "IEC",
11
+ "61850-6",
12
+ "SCD",
13
+ "editor"
14
+ ],
15
+ "author": "OMICRON electronics GmbH",
16
+ "license": "Apache-2.0",
17
+ "main": "open-scd.js",
18
+ "module": "open-scd.js",
19
+ "type": "module",
20
+ "files": [
21
+ "./build/**"
22
+ ],
23
+ "dependencies": {
24
+ "@material/mwc-dialog": "0.22.1",
25
+ "@material/mwc-drawer": "0.22.1",
26
+ "@material/mwc-fab": "0.22.1",
27
+ "@material/mwc-formfield": "0.22.1",
28
+ "@material/mwc-icon": "0.22.1",
29
+ "@material/mwc-icon-button": "0.22.1",
30
+ "@material/mwc-icon-button-toggle": "0.22.1",
31
+ "@material/mwc-linear-progress": "0.22.1",
32
+ "@material/mwc-list": "0.22.1",
33
+ "@material/mwc-menu": "0.22.1",
34
+ "@material/mwc-select": "0.22.1",
35
+ "@material/mwc-snackbar": "0.22.1",
36
+ "@material/mwc-switch": "0.22.1",
37
+ "@material/mwc-tab": "0.22.1",
38
+ "@material/mwc-tab-bar": "0.22.1",
39
+ "@material/mwc-textarea": "0.22.1",
40
+ "@material/mwc-textfield": "0.22.1",
41
+ "@material/mwc-top-app-bar-fixed": "0.22.1",
42
+ "@openscd/oscd-api": "^0.1.5",
43
+ "@openscd/core": "npm:@compas-oscd/core@*",
44
+ "@openscd/xml": "npm:@compas-oscd/xml@*",
45
+ "ace-custom-element": "^1.6.5",
46
+ "lit": "^2.2.7",
47
+ "lit-translate": "^1.2.1",
48
+ "marked": "^4.0.10",
49
+ "panzoom": "^9.4.2"
50
+ },
51
+ "scripts": {
52
+ "clean": "rimraf build",
53
+ "lint:eslint": "eslint --ext .ts,.html . --ignore-path .gitignore",
54
+ "format:eslint": "eslint --ext .ts,.html . --fix --ignore-path .gitignore",
55
+ "lint:prettier": "prettier \"**/*.js\" \"**/*.ts\" --check --ignore-path .gitignore",
56
+ "format:prettier": "prettier \"**/*.js\" \"**/*.ts\" --write --ignore-path .gitignore",
57
+ "lint": "npm run lint:eslint && npm run lint:prettier",
58
+ "format": "npm run format:eslint && npm run format:prettier",
59
+ "test": "web-test-runner --coverage",
60
+ "test:snapshot": "web-test-runner --update-snapshots --coverage",
61
+ "test:manual": "web-test-runner --manual",
62
+ "test:watch": "web-test-runner --watch",
63
+ "test:unit": "web-test-runner --watch --group unit",
64
+ "test:unit:headless": "web-test-runner --watch --group unit --concurrency 1 --headless",
65
+ "test:integration": "web-test-runner --watch --group integration",
66
+ "doc:clean": "npx rimraf doc",
67
+ "doc:typedoc": "typedoc --plugin none --out doc --entryPointStrategy expand ./src",
68
+ "doc:wca": "wca src --outDir doc/components",
69
+ "doc": "npm run doc:clean && npm run doc:typedoc && npm run doc:wca",
70
+ "release": "standard-version",
71
+ "release:minor": "standard-version --release-as minor",
72
+ "release:patch": "standard-version --release-as patch",
73
+ "release:major": "standard-version --release-as major",
74
+ "bundle": "npm run test && npm run bundle:notest",
75
+ "build": "tsc"
76
+ },
77
+ "devDependencies": {
78
+ "@commitlint/cli": "^13.1.0",
79
+ "@commitlint/config-conventional": "^13.1.0",
80
+ "@open-wc/eslint-config": "^4.3.0",
81
+ "@open-wc/semantic-dom-diff": "^0.19.5",
82
+ "@open-wc/testing": "^2.5.33",
83
+ "@snowpack/plugin-typescript": "^1.2.1",
84
+ "@types/marked": "^2.0.4",
85
+ "@types/node": "^16.6.1",
86
+ "@typescript-eslint/eslint-plugin": "^4.29.2",
87
+ "@typescript-eslint/parser": "^4.29.2",
88
+ "@web/dev-server-esbuild": "^0.2.16",
89
+ "@web/test-runner": "^0.13.22",
90
+ "@web/test-runner-playwright": "^0.11.0",
91
+ "concurrently": "^6.2.1",
92
+ "deepmerge": "^4.2.2",
93
+ "es-dev-server": "^2.1.0",
94
+ "eslint": "^7.32.0",
95
+ "eslint-config-prettier": "^8.3.0",
96
+ "eslint-plugin-babel": "^5.3.1",
97
+ "eslint-plugin-tsdoc": "^0.2.14",
98
+ "fast-check": "^2.19.0",
99
+ "husky": "^7.0.1",
100
+ "lint-staged": "^11.1.2",
101
+ "prettier": "^2.3.2",
102
+ "sinon": "^17.0.1",
103
+ "snowpack": "3.8.6",
104
+ "source-map": "^0.7.4",
105
+ "standard-version": "^9.3.1",
106
+ "tslib": "^2.3.1",
107
+ "typedoc": "^0.23.8",
108
+ "typedoc-plugin-markdown": "3.12.0",
109
+ "typescript": "^4.7.4",
110
+ "web-component-analyzer": "^1.1.6",
111
+ "workbox-cli": "^6.2.4"
112
+ },
113
+ "eslintConfig": {
114
+ "extends": [
115
+ "@open-wc/eslint-config",
116
+ "eslint-config-prettier"
117
+ ]
118
+ },
119
+ "prettier": {
120
+ "singleQuote": true,
121
+ "arrowParens": "avoid"
122
+ },
123
+ "husky": {
124
+ "hooks": {
125
+ "pre-commit": "lint-staged",
126
+ "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
127
+ }
128
+ },
129
+ "lint-staged": {
130
+ "*.ts": [
131
+ "eslint --fix",
132
+ "prettier --write"
133
+ ]
134
+ },
135
+ "commitlint": {
136
+ "extends": [
137
+ "@commitlint/config-conventional"
138
+ ]
139
+ },
140
+ "standard-version": {
141
+ "types": [
142
+ {
143
+ "type": "feat",
144
+ "section": "Features"
145
+ },
146
+ {
147
+ "type": "fix",
148
+ "section": "Bug Fixes"
149
+ },
150
+ {
151
+ "type": "chore",
152
+ "hidden": true
153
+ },
154
+ {
155
+ "type": "docs",
156
+ "hidden": true
157
+ },
158
+ {
159
+ "type": "style",
160
+ "hidden": true
161
+ },
162
+ {
163
+ "type": "refactor",
164
+ "hidden": true
165
+ },
166
+ {
167
+ "type": "perf",
168
+ "hidden": true
169
+ },
170
+ {
171
+ "type": "test",
172
+ "hidden": true
173
+ }
174
+ ],
175
+ "commitUrlFormat": "https://github.com/openscd/open-scd/commits/{{hash}}"
176
+ }
177
+ }