mirror of
https://github.com/enso-org/enso.git
synced 2024-12-23 07:12:20 +03:00
Refactored config crate + moving crates to lib/rust directory. (#3155)
This commit is contained in:
parent
942464cbaf
commit
753f787a6f
183
Cargo.lock
generated
183
Cargo.lock
generated
@ -282,6 +282,14 @@ dependencies = [
|
||||
"serde",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "build-scripts"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"glob",
|
||||
"toml",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "bumpalo"
|
||||
version = "3.8.0"
|
||||
@ -448,6 +456,15 @@ dependencies = [
|
||||
"memchr",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "config-reader"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"Inflector",
|
||||
"serde",
|
||||
"serde_yaml",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "console_error_panic_hook"
|
||||
version = "0.1.7"
|
||||
@ -752,12 +769,12 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"bytes 0.5.6",
|
||||
"chrono",
|
||||
"enso-build-utilities",
|
||||
"enso-data",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"enso-shapely",
|
||||
"ensogl-build-utilities",
|
||||
"ensogl-system-web",
|
||||
"enso-web",
|
||||
"failure",
|
||||
"flatbuffers",
|
||||
"flatc-rust",
|
||||
@ -776,16 +793,6 @@ dependencies = [
|
||||
"zip-extensions",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "enso-args"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"enso-config",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"ensogl",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "enso-automata"
|
||||
version = "0.2.0"
|
||||
@ -793,6 +800,14 @@ dependencies = [
|
||||
"enso-prelude",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "enso-build-utilities"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"path-clean",
|
||||
"reqwest",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "enso-callback"
|
||||
version = "0.1.0"
|
||||
@ -804,9 +819,10 @@ dependencies = [
|
||||
name = "enso-config"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"Inflector",
|
||||
"serde",
|
||||
"serde_yaml",
|
||||
"config-reader",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"ensogl",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -849,7 +865,7 @@ dependencies = [
|
||||
"enso-generics",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"ensogl-system-web",
|
||||
"enso-web",
|
||||
"keyboard-types",
|
||||
"nalgebra 0.26.2",
|
||||
"percent-encoding 2.1.0",
|
||||
@ -970,7 +986,7 @@ dependencies = [
|
||||
"enso-frp",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"ensogl-system-web",
|
||||
"enso-web",
|
||||
"js-sys",
|
||||
"nalgebra 0.26.2",
|
||||
"serde",
|
||||
@ -988,7 +1004,7 @@ dependencies = [
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"enso-shortcuts",
|
||||
"ensogl-system-web",
|
||||
"enso-web",
|
||||
"js-sys",
|
||||
"nalgebra 0.26.2",
|
||||
"serde",
|
||||
@ -1004,7 +1020,7 @@ dependencies = [
|
||||
"ast",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"ensogl-system-web",
|
||||
"enso-web",
|
||||
"span-tree",
|
||||
"uuid",
|
||||
"wasm-bindgen",
|
||||
@ -1020,6 +1036,24 @@ dependencies = [
|
||||
"num-traits",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "enso-web"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"async-std",
|
||||
"console_error_panic_hook",
|
||||
"enso-data",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"failure",
|
||||
"gloo-timers",
|
||||
"js-sys",
|
||||
"nalgebra 0.26.2",
|
||||
"wasm-bindgen",
|
||||
"wasm-bindgen-test 0.3.8",
|
||||
"web-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ensogl"
|
||||
version = "0.1.0"
|
||||
@ -1029,12 +1063,8 @@ dependencies = [
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ensogl-build-utilities"
|
||||
name = "ensogl-component"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"path-clean",
|
||||
"reqwest",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ensogl-core"
|
||||
@ -1055,11 +1085,10 @@ dependencies = [
|
||||
"enso-shapely",
|
||||
"enso-shortcuts",
|
||||
"enso-types",
|
||||
"ensogl-system-web",
|
||||
"enso-web",
|
||||
"ensogl-text-embedded-fonts",
|
||||
"ensogl-text-msdf-sys",
|
||||
"enum_dispatch",
|
||||
"eval-tt",
|
||||
"failure",
|
||||
"itertools 0.10.1",
|
||||
"js-sys",
|
||||
@ -1074,7 +1103,20 @@ dependencies = [
|
||||
"wasm-bindgen",
|
||||
"wasm-bindgen-test 0.3.8",
|
||||
"web-sys",
|
||||
"web-test",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ensogl-drop-manager"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"enso-frp",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"enso-web",
|
||||
"js-sys",
|
||||
"wasm-bindgen",
|
||||
"wasm-bindgen-futures 0.4.8",
|
||||
"web-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -1086,11 +1128,11 @@ dependencies = [
|
||||
"enso-prelude",
|
||||
"enso-shapely",
|
||||
"ensogl-core",
|
||||
"ensogl-gui-components",
|
||||
"ensogl-drop-manager",
|
||||
"ensogl-gui-component",
|
||||
"ensogl-hardcoded-theme",
|
||||
"ensogl-text",
|
||||
"ensogl-text-msdf-sys",
|
||||
"ensogl-theme",
|
||||
"ensogl-web",
|
||||
"js-sys",
|
||||
"nalgebra 0.26.2",
|
||||
"serde",
|
||||
@ -1101,7 +1143,7 @@ dependencies = [
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ensogl-gui-components"
|
||||
name = "ensogl-gui-component"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"enso-frp",
|
||||
@ -1110,28 +1152,17 @@ dependencies = [
|
||||
"enso-shapely",
|
||||
"enso-types",
|
||||
"ensogl-core",
|
||||
"ensogl-hardcoded-theme",
|
||||
"ensogl-text",
|
||||
"ensogl-theme",
|
||||
"float_eq",
|
||||
"wasm-bindgen-test 0.3.8",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ensogl-system-web"
|
||||
name = "ensogl-hardcoded-theme"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"async-std",
|
||||
"console_error_panic_hook",
|
||||
"enso-data",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"failure",
|
||||
"gloo-timers",
|
||||
"js-sys",
|
||||
"nalgebra 0.26.2",
|
||||
"wasm-bindgen",
|
||||
"wasm-bindgen-test 0.3.8",
|
||||
"web-sys",
|
||||
"ensogl-core",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -1143,9 +1174,9 @@ dependencies = [
|
||||
"enso-shapely",
|
||||
"enso-types",
|
||||
"ensogl-core",
|
||||
"ensogl-hardcoded-theme",
|
||||
"ensogl-text-embedded-fonts",
|
||||
"ensogl-text-msdf-sys",
|
||||
"ensogl-theme",
|
||||
"wasm-bindgen-test 0.3.8",
|
||||
"xi-rope",
|
||||
]
|
||||
@ -1154,8 +1185,8 @@ dependencies = [
|
||||
name = "ensogl-text-embedded-fonts"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"enso-build-utilities",
|
||||
"enso-prelude",
|
||||
"ensogl-build-utilities",
|
||||
"zip",
|
||||
]
|
||||
|
||||
@ -1163,8 +1194,8 @@ dependencies = [
|
||||
name = "ensogl-text-msdf-sys"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"enso-build-utilities",
|
||||
"enso-prelude",
|
||||
"ensogl-build-utilities",
|
||||
"ensogl-text-embedded-fonts",
|
||||
"futures 0.3.17",
|
||||
"js-sys",
|
||||
@ -1173,27 +1204,6 @@ dependencies = [
|
||||
"wasm-bindgen-test 0.3.8",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ensogl-theme"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"ensogl-core",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "ensogl-web"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"enso-frp",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"ensogl-system-web",
|
||||
"js-sys",
|
||||
"wasm-bindgen",
|
||||
"wasm-bindgen-futures 0.4.8",
|
||||
"web-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "enum_dispatch"
|
||||
version = "0.3.7"
|
||||
@ -1525,6 +1535,12 @@ version = "0.26.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "78cc372d058dcf6d5ecd98510e7fbc9e5aec4d21de70f65fea8fecebcd881bd4"
|
||||
|
||||
[[package]]
|
||||
name = "glob"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
|
||||
|
||||
[[package]]
|
||||
name = "gloo-timers"
|
||||
version = "0.2.1"
|
||||
@ -1693,21 +1709,21 @@ dependencies = [
|
||||
"console_error_panic_hook",
|
||||
"double-representation",
|
||||
"engine-protocol",
|
||||
"enso-args",
|
||||
"enso-callback",
|
||||
"enso-config",
|
||||
"enso-data",
|
||||
"enso-frp",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"enso-shapely",
|
||||
"enso-web",
|
||||
"ensogl",
|
||||
"ensogl-drop-manager",
|
||||
"ensogl-examples",
|
||||
"ensogl-gui-components",
|
||||
"ensogl-system-web",
|
||||
"ensogl-gui-component",
|
||||
"ensogl-hardcoded-theme",
|
||||
"ensogl-text",
|
||||
"ensogl-text-msdf-sys",
|
||||
"ensogl-theme",
|
||||
"ensogl-web",
|
||||
"failure",
|
||||
"flo_stream",
|
||||
"futures 0.3.17",
|
||||
@ -1738,17 +1754,16 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"ast",
|
||||
"engine-protocol",
|
||||
"enso-args",
|
||||
"enso-config",
|
||||
"enso-frp",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"enso-shapely",
|
||||
"ensogl",
|
||||
"ensogl-gui-components",
|
||||
"ensogl-gui-component",
|
||||
"ensogl-hardcoded-theme",
|
||||
"ensogl-text",
|
||||
"ensogl-text-msdf-sys",
|
||||
"ensogl-theme",
|
||||
"ide-view-graph-editor",
|
||||
"js-sys",
|
||||
"nalgebra 0.26.2",
|
||||
@ -1770,17 +1785,17 @@ dependencies = [
|
||||
"ast",
|
||||
"bimap",
|
||||
"engine-protocol",
|
||||
"enso-args",
|
||||
"enso-config",
|
||||
"enso-frp",
|
||||
"enso-logger",
|
||||
"enso-prelude",
|
||||
"enso-shapely",
|
||||
"ensogl",
|
||||
"ensogl-gui-components",
|
||||
"ensogl-drop-manager",
|
||||
"ensogl-gui-component",
|
||||
"ensogl-hardcoded-theme",
|
||||
"ensogl-text",
|
||||
"ensogl-text-msdf-sys",
|
||||
"ensogl-theme",
|
||||
"ensogl-web",
|
||||
"failure",
|
||||
"js-sys",
|
||||
"nalgebra 0.26.2",
|
||||
@ -1932,7 +1947,7 @@ version = "0.1.0"
|
||||
dependencies = [
|
||||
"enso-prelude",
|
||||
"enso-shapely",
|
||||
"ensogl-system-web",
|
||||
"enso-web",
|
||||
"failure",
|
||||
"futures 0.3.17",
|
||||
"serde",
|
||||
@ -2574,9 +2589,9 @@ dependencies = [
|
||||
"ast",
|
||||
"bytes 0.5.6",
|
||||
"console_error_panic_hook",
|
||||
"enso-build-utilities",
|
||||
"enso-data",
|
||||
"enso-prelude",
|
||||
"ensogl-build-utilities",
|
||||
"failure",
|
||||
"futures 0.3.17",
|
||||
"js-sys",
|
||||
@ -4125,8 +4140,8 @@ name = "web-test"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"enso-prelude",
|
||||
"enso-web",
|
||||
"ensogl",
|
||||
"ensogl-system-web",
|
||||
"js-sys",
|
||||
"shrinkwraprs 0.3.0",
|
||||
"wasm-bindgen",
|
||||
|
68
Cargo.toml
68
Cargo.toml
@ -1,59 +1,63 @@
|
||||
[workspace]
|
||||
|
||||
members = [
|
||||
"gui/src/rust/build",
|
||||
"gui/src/rust/ensogl",
|
||||
"gui/src/rust/ensogl/example",
|
||||
"gui/src/rust/ensogl/lib/core",
|
||||
"gui/src/rust/ensogl/lib/components",
|
||||
"gui/src/rust/ensogl/lib/theme",
|
||||
"gui/src/rust/ensogl/lib/text/embedded-fonts",
|
||||
"gui/src/rust/ensogl/lib/text/msdf-sys",
|
||||
"gui/src/rust/ensogl/lib/text",
|
||||
"gui/src/rust/ensogl/lib/web",
|
||||
"gui/src/rust/ide",
|
||||
"gui/src/rust/ide/controller",
|
||||
"gui/src/rust/ide/controller/double-representation",
|
||||
"gui/src/rust/ide/controller/engine-model",
|
||||
"gui/src/rust/ide/controller/engine-protocol",
|
||||
"gui/src/rust/ide/lib/args",
|
||||
"gui/src/rust/ide/lib/config",
|
||||
"gui/src/rust/ide/lib/ast/impl",
|
||||
"gui/src/rust/ide/lib/ast/macros",
|
||||
"gui/src/rust/ide/lib/json-rpc",
|
||||
"gui/src/rust/ide/lib/parser",
|
||||
"gui/src/rust/ide/lib/span-tree",
|
||||
"gui/src/rust/ide/lib/span-tree/example",
|
||||
"gui/src/rust/ide/view",
|
||||
"gui/src/rust/ide/view/graph-editor",
|
||||
"gui/src/rust/lib/callback",
|
||||
"gui/src/rust/lib/code-builder",
|
||||
"gui/src/rust/lib/config",
|
||||
"gui/src/rust/lib/eval-tt",
|
||||
"gui/src/rust/lib/frp",
|
||||
"gui/src/rust/lib/fuzzly",
|
||||
"gui/src/rust/lib/shortcuts",
|
||||
"gui/src/rust/lib/shortcuts/example",
|
||||
"gui/src/rust/lib/system/web",
|
||||
"gui/src/rust/lib/types",
|
||||
"lib/rust/ast",
|
||||
"lib/rust/launcher-shims",
|
||||
"lib/rust/lexer/definition",
|
||||
"lib/rust/lexer/generation",
|
||||
"lib/rust/parser",
|
||||
"lib/rust/parser-jni",
|
||||
"gui/src/rust/test",
|
||||
"lib/rust/automata",
|
||||
"lib/rust/build-utils",
|
||||
"lib/rust/callback",
|
||||
"lib/rust/code-builder",
|
||||
"lib/rust/config-reader",
|
||||
"lib/rust/data",
|
||||
"lib/rust/flexer",
|
||||
"lib/rust/flexer-testing/definition",
|
||||
"lib/rust/flexer-testing/generation",
|
||||
"lib/rust/ensogl",
|
||||
"lib/rust/ensogl/app/theme/hardcoded",
|
||||
"lib/rust/ensogl/core",
|
||||
"lib/rust/ensogl/component",
|
||||
"lib/rust/ensogl/component/drop-manager",
|
||||
"lib/rust/ensogl/component/gui",
|
||||
"lib/rust/ensogl/component/text",
|
||||
"lib/rust/ensogl/component/text/embedded-fonts",
|
||||
"lib/rust/ensogl/component/text/msdf-sys",
|
||||
"lib/rust/ensogl/example",
|
||||
"lib/rust/frp",
|
||||
"lib/rust/fuzzly",
|
||||
"lib/rust/generics",
|
||||
"lib/rust/lazy-reader",
|
||||
"lib/rust/json-rpc",
|
||||
"lib/rust/launcher-shims",
|
||||
"lib/rust/logger",
|
||||
"lib/rust/macro-utils",
|
||||
"lib/rust/optics",
|
||||
"lib/rust/parser",
|
||||
"lib/rust/parser/ast",
|
||||
"lib/rust/parser/flexer",
|
||||
"lib/rust/prelude",
|
||||
"lib/rust/parser/flexer-testing/definition",
|
||||
"lib/rust/parser/flexer-testing/generation",
|
||||
"lib/rust/parser/lexer/definition",
|
||||
"lib/rust/parser/lexer/generation",
|
||||
"lib/rust/parser/parser-jni",
|
||||
"lib/rust/parser/lazy-reader",
|
||||
"lib/rust/shapely/impl",
|
||||
"lib/rust/shapely/macros",
|
||||
"lib/rust/shortcuts",
|
||||
"lib/rust/shortcuts/example",
|
||||
"lib/rust/types",
|
||||
"lib/rust/web",
|
||||
"lib/rust/not-used/eval-tt",
|
||||
"lib/rust/not-used/web-test",
|
||||
"lib/rust/not-used/web-test-proc-macro",
|
||||
]
|
||||
|
||||
[profile.dev]
|
||||
|
722
gui/build/package-lock.json
generated
722
gui/build/package-lock.json
generated
@ -1,8 +1,712 @@
|
||||
{
|
||||
"name": "build-script",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 1,
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "build-script",
|
||||
"version": "1.0.0",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"fs-extra": "^10.0.0",
|
||||
"glob": "^7.1.6",
|
||||
"js-yaml": "4.0.0",
|
||||
"ncp": "^2.0.0",
|
||||
"semver": "7.3.4",
|
||||
"unzipper": "^0.10.11",
|
||||
"yargs": "^15.3.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"prettier": "2.2.0",
|
||||
"prettier-plugin-toml": "0.3.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@toml-tools/lexer": {
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@toml-tools/lexer/-/lexer-0.3.1.tgz",
|
||||
"integrity": "sha512-CCKHQb5OWpgFu47MQ2rcql4AnE9GaehNk/c1oJOyOBovED6XmdzQPXsvPSu+NJ9lToqJNoX+nLXQsB8WyQGdzQ==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"chevrotain": "4.1.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@toml-tools/parser": {
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/@toml-tools/parser/-/parser-0.3.1.tgz",
|
||||
"integrity": "sha512-vadwVx5TkgByt19dbp/rfIUKPkDdn5werANYvziiGK9wHlqPA0BWnvOloQw/dPDxF31+Ag0+zarXJpPDdRsPPg==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@toml-tools/lexer": "^0.3.1",
|
||||
"chevrotain": "4.1.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/color-name": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
|
||||
"integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ=="
|
||||
},
|
||||
"node_modules/ansi-regex": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
|
||||
"integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/ansi-styles": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
|
||||
"integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
|
||||
"dependencies": {
|
||||
"@types/color-name": "^1.1.1",
|
||||
"color-convert": "^2.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
|
||||
}
|
||||
},
|
||||
"node_modules/argparse": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
|
||||
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
|
||||
},
|
||||
"node_modules/balanced-match": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
|
||||
"integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
|
||||
},
|
||||
"node_modules/big-integer": {
|
||||
"version": "1.6.48",
|
||||
"resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.48.tgz",
|
||||
"integrity": "sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w==",
|
||||
"engines": {
|
||||
"node": ">=0.6"
|
||||
}
|
||||
},
|
||||
"node_modules/binary": {
|
||||
"version": "0.3.0",
|
||||
"resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz",
|
||||
"integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=",
|
||||
"dependencies": {
|
||||
"buffers": "~0.1.1",
|
||||
"chainsaw": "~0.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/bluebird": {
|
||||
"version": "3.4.7",
|
||||
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.4.7.tgz",
|
||||
"integrity": "sha1-9y12C+Cbf3bQjtj66Ysomo0F+rM="
|
||||
},
|
||||
"node_modules/brace-expansion": {
|
||||
"version": "1.1.11",
|
||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
|
||||
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
|
||||
"dependencies": {
|
||||
"balanced-match": "^1.0.0",
|
||||
"concat-map": "0.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/buffer-indexof-polyfill": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/buffer-indexof-polyfill/-/buffer-indexof-polyfill-1.0.2.tgz",
|
||||
"integrity": "sha512-I7wzHwA3t1/lwXQh+A5PbNvJxgfo5r3xulgpYDB5zckTu/Z9oUK9biouBKQUjEqzaz3HnAT6TYoovmE+GqSf7A==",
|
||||
"engines": {
|
||||
"node": ">=0.10"
|
||||
}
|
||||
},
|
||||
"node_modules/buffers": {
|
||||
"version": "0.1.1",
|
||||
"resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz",
|
||||
"integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=",
|
||||
"engines": {
|
||||
"node": ">=0.2.0"
|
||||
}
|
||||
},
|
||||
"node_modules/camelcase": {
|
||||
"version": "5.3.1",
|
||||
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
|
||||
"integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/chainsaw": {
|
||||
"version": "0.1.0",
|
||||
"resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz",
|
||||
"integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=",
|
||||
"dependencies": {
|
||||
"traverse": ">=0.3.0 <0.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/chevrotain": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-4.1.1.tgz",
|
||||
"integrity": "sha512-NQky1HQyiAzxsxpq4Ppt47SYO2U3JLtmfs85QPf3kYSzGBjjp5AA8kqjH8hCjGFRpaQ781QOk1ragQIOkBgUTA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"regexp-to-ast": "0.3.5"
|
||||
}
|
||||
},
|
||||
"node_modules/cliui": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
|
||||
"integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
|
||||
"dependencies": {
|
||||
"string-width": "^4.2.0",
|
||||
"strip-ansi": "^6.0.0",
|
||||
"wrap-ansi": "^6.2.0"
|
||||
}
|
||||
},
|
||||
"node_modules/color-convert": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||
"dependencies": {
|
||||
"color-name": "~1.1.4"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=7.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/color-name": {
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
|
||||
},
|
||||
"node_modules/concat-map": {
|
||||
"version": "0.0.1",
|
||||
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
|
||||
"integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
|
||||
},
|
||||
"node_modules/core-util-is": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
|
||||
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
|
||||
},
|
||||
"node_modules/decamelize": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
|
||||
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/duplexer2": {
|
||||
"version": "0.1.4",
|
||||
"resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
|
||||
"integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=",
|
||||
"dependencies": {
|
||||
"readable-stream": "^2.0.2"
|
||||
}
|
||||
},
|
||||
"node_modules/emoji-regex": {
|
||||
"version": "8.0.0",
|
||||
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
|
||||
"integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="
|
||||
},
|
||||
"node_modules/find-up": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
|
||||
"integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
|
||||
"dependencies": {
|
||||
"locate-path": "^5.0.0",
|
||||
"path-exists": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/fs-extra": {
|
||||
"version": "10.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz",
|
||||
"integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==",
|
||||
"dependencies": {
|
||||
"graceful-fs": "^4.2.0",
|
||||
"jsonfile": "^6.0.1",
|
||||
"universalify": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/fs.realpath": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
|
||||
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
|
||||
},
|
||||
"node_modules/fstream": {
|
||||
"version": "1.0.12",
|
||||
"resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz",
|
||||
"integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==",
|
||||
"dependencies": {
|
||||
"graceful-fs": "^4.1.2",
|
||||
"inherits": "~2.0.0",
|
||||
"mkdirp": ">=0.5 0",
|
||||
"rimraf": "2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=0.6"
|
||||
}
|
||||
},
|
||||
"node_modules/get-caller-file": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
|
||||
"engines": {
|
||||
"node": "6.* || 8.* || >= 10.*"
|
||||
}
|
||||
},
|
||||
"node_modules/glob": {
|
||||
"version": "7.1.6",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
|
||||
"integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
|
||||
"dependencies": {
|
||||
"fs.realpath": "^1.0.0",
|
||||
"inflight": "^1.0.4",
|
||||
"inherits": "2",
|
||||
"minimatch": "^3.0.4",
|
||||
"once": "^1.3.0",
|
||||
"path-is-absolute": "^1.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/graceful-fs": {
|
||||
"version": "4.2.8",
|
||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz",
|
||||
"integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg=="
|
||||
},
|
||||
"node_modules/inflight": {
|
||||
"version": "1.0.6",
|
||||
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
|
||||
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
|
||||
"dependencies": {
|
||||
"once": "^1.3.0",
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/inherits": {
|
||||
"version": "2.0.4",
|
||||
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
|
||||
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
|
||||
},
|
||||
"node_modules/is-fullwidth-code-point": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
|
||||
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/isarray": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
|
||||
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
|
||||
},
|
||||
"node_modules/js-yaml": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz",
|
||||
"integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==",
|
||||
"dependencies": {
|
||||
"argparse": "^2.0.1"
|
||||
},
|
||||
"bin": {
|
||||
"js-yaml": "bin/js-yaml.js"
|
||||
}
|
||||
},
|
||||
"node_modules/jsonfile": {
|
||||
"version": "6.1.0",
|
||||
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
|
||||
"integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
|
||||
"dependencies": {
|
||||
"universalify": "^2.0.0"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"graceful-fs": "^4.1.6"
|
||||
}
|
||||
},
|
||||
"node_modules/listenercount": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/listenercount/-/listenercount-1.0.1.tgz",
|
||||
"integrity": "sha1-hMinKrWcRyUyFIDJdeZQg0LnCTc="
|
||||
},
|
||||
"node_modules/locate-path": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
|
||||
"integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
|
||||
"dependencies": {
|
||||
"p-locate": "^4.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/lru-cache": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
|
||||
"integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
|
||||
"dependencies": {
|
||||
"yallist": "^4.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/minimatch": {
|
||||
"version": "3.0.4",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
|
||||
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
|
||||
"dependencies": {
|
||||
"brace-expansion": "^1.1.7"
|
||||
},
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/minimist": {
|
||||
"version": "1.2.5",
|
||||
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
|
||||
"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
|
||||
},
|
||||
"node_modules/mkdirp": {
|
||||
"version": "0.5.5",
|
||||
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
|
||||
"integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
|
||||
"dependencies": {
|
||||
"minimist": "^1.2.5"
|
||||
},
|
||||
"bin": {
|
||||
"mkdirp": "bin/cmd.js"
|
||||
}
|
||||
},
|
||||
"node_modules/ncp": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/ncp/-/ncp-2.0.0.tgz",
|
||||
"integrity": "sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=",
|
||||
"bin": {
|
||||
"ncp": "bin/ncp"
|
||||
}
|
||||
},
|
||||
"node_modules/once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
|
||||
"dependencies": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/p-limit": {
|
||||
"version": "2.2.2",
|
||||
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz",
|
||||
"integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==",
|
||||
"dependencies": {
|
||||
"p-try": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/p-locate": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
|
||||
"integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
|
||||
"dependencies": {
|
||||
"p-limit": "^2.2.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/p-try": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
|
||||
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/path-exists": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
|
||||
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/prettier": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-2.2.0.tgz",
|
||||
"integrity": "sha512-yYerpkvseM4iKD/BXLYUkQV5aKt4tQPqaGW6EsZjzyu0r7sVZZNPJW4Y8MyKmicp6t42XUPcBVA+H6sB3gqndw==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"prettier": "bin-prettier.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10.13.0"
|
||||
}
|
||||
},
|
||||
"node_modules/prettier-plugin-toml": {
|
||||
"version": "0.3.1",
|
||||
"resolved": "https://registry.npmjs.org/prettier-plugin-toml/-/prettier-plugin-toml-0.3.1.tgz",
|
||||
"integrity": "sha512-j47DEO/dN/acU1nSL/B7q4A4Z2SYJhpWPCLPkcmfAXIQC6A5GD6Ao/bi9HRHZ8ueIDOauqjuAQbnvRxLXMjazA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@toml-tools/parser": "^0.3.1",
|
||||
"prettier": "^1.16.0"
|
||||
}
|
||||
},
|
||||
"node_modules/prettier-plugin-toml/node_modules/prettier": {
|
||||
"version": "1.19.1",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz",
|
||||
"integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"prettier": "bin-prettier.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=4"
|
||||
}
|
||||
},
|
||||
"node_modules/process-nextick-args": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
|
||||
"integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
|
||||
},
|
||||
"node_modules/readable-stream": {
|
||||
"version": "2.3.7",
|
||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
|
||||
"integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
|
||||
"dependencies": {
|
||||
"core-util-is": "~1.0.0",
|
||||
"inherits": "~2.0.3",
|
||||
"isarray": "~1.0.0",
|
||||
"process-nextick-args": "~2.0.0",
|
||||
"safe-buffer": "~5.1.1",
|
||||
"string_decoder": "~1.1.1",
|
||||
"util-deprecate": "~1.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/regexp-to-ast": {
|
||||
"version": "0.3.5",
|
||||
"resolved": "https://registry.npmjs.org/regexp-to-ast/-/regexp-to-ast-0.3.5.tgz",
|
||||
"integrity": "sha512-1CJygtdvsfNFwiyjaMLBWtg2tfEqx/jSZ8S6TV+GlNL8kiH8rb4cm5Pb7A/C2BpyM/fA8ZJEudlCwi/jvAY+Ow==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/require-directory": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
|
||||
"integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/require-main-filename": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
|
||||
"integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
|
||||
},
|
||||
"node_modules/rimraf": {
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
|
||||
"integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
|
||||
"dependencies": {
|
||||
"glob": "^7.1.3"
|
||||
},
|
||||
"bin": {
|
||||
"rimraf": "bin.js"
|
||||
}
|
||||
},
|
||||
"node_modules/safe-buffer": {
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
|
||||
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
|
||||
},
|
||||
"node_modules/semver": {
|
||||
"version": "7.3.4",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz",
|
||||
"integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==",
|
||||
"dependencies": {
|
||||
"lru-cache": "^6.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"semver": "bin/semver.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
},
|
||||
"node_modules/set-blocking": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
|
||||
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc="
|
||||
},
|
||||
"node_modules/setimmediate": {
|
||||
"version": "1.0.5",
|
||||
"resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
|
||||
"integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU="
|
||||
},
|
||||
"node_modules/string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"dependencies": {
|
||||
"safe-buffer": "~5.1.0"
|
||||
}
|
||||
},
|
||||
"node_modules/string-width": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
|
||||
"integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
|
||||
"dependencies": {
|
||||
"emoji-regex": "^8.0.0",
|
||||
"is-fullwidth-code-point": "^3.0.0",
|
||||
"strip-ansi": "^6.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/strip-ansi": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
|
||||
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
|
||||
"dependencies": {
|
||||
"ansi-regex": "^5.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/traverse": {
|
||||
"version": "0.3.9",
|
||||
"resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz",
|
||||
"integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=",
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
},
|
||||
"node_modules/universalify": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz",
|
||||
"integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==",
|
||||
"engines": {
|
||||
"node": ">= 10.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/unzipper": {
|
||||
"version": "0.10.11",
|
||||
"resolved": "https://registry.npmjs.org/unzipper/-/unzipper-0.10.11.tgz",
|
||||
"integrity": "sha512-+BrAq2oFqWod5IESRjL3S8baohbevGcVA+teAIOYWM3pDVdseogqbzhhvvmiyQrUNKFUnDMtELW3X8ykbyDCJw==",
|
||||
"dependencies": {
|
||||
"big-integer": "^1.6.17",
|
||||
"binary": "~0.3.0",
|
||||
"bluebird": "~3.4.1",
|
||||
"buffer-indexof-polyfill": "~1.0.0",
|
||||
"duplexer2": "~0.1.4",
|
||||
"fstream": "^1.0.12",
|
||||
"graceful-fs": "^4.2.2",
|
||||
"listenercount": "~1.0.1",
|
||||
"readable-stream": "~2.3.6",
|
||||
"setimmediate": "~1.0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/util-deprecate": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
|
||||
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
|
||||
},
|
||||
"node_modules/which-module": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
|
||||
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho="
|
||||
},
|
||||
"node_modules/wrap-ansi": {
|
||||
"version": "6.2.0",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
|
||||
"integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
|
||||
"dependencies": {
|
||||
"ansi-styles": "^4.0.0",
|
||||
"string-width": "^4.1.0",
|
||||
"strip-ansi": "^6.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
|
||||
},
|
||||
"node_modules/y18n": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz",
|
||||
"integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w=="
|
||||
},
|
||||
"node_modules/yallist": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
|
||||
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
|
||||
},
|
||||
"node_modules/yargs": {
|
||||
"version": "15.3.0",
|
||||
"resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.0.tgz",
|
||||
"integrity": "sha512-g/QCnmjgOl1YJjGsnUg2SatC7NUYEiLXJqxNOQU9qSpjzGtGXda9b+OKccr1kLTy8BN9yqEyqfq5lxlwdc13TA==",
|
||||
"dependencies": {
|
||||
"cliui": "^6.0.0",
|
||||
"decamelize": "^1.2.0",
|
||||
"find-up": "^4.1.0",
|
||||
"get-caller-file": "^2.0.1",
|
||||
"require-directory": "^2.1.1",
|
||||
"require-main-filename": "^2.0.0",
|
||||
"set-blocking": "^2.0.0",
|
||||
"string-width": "^4.2.0",
|
||||
"which-module": "^2.0.0",
|
||||
"y18n": "^4.0.0",
|
||||
"yargs-parser": "^18.1.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/yargs-parser": {
|
||||
"version": "18.1.3",
|
||||
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
|
||||
"integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
|
||||
"dependencies": {
|
||||
"camelcase": "^5.0.0",
|
||||
"decamelize": "^1.2.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
"@toml-tools/lexer": {
|
||||
"version": "0.3.1",
|
||||
@ -438,6 +1142,14 @@
|
||||
"resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
|
||||
"integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU="
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"requires": {
|
||||
"safe-buffer": "~5.1.0"
|
||||
}
|
||||
},
|
||||
"string-width": {
|
||||
"version": "4.2.0",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
|
||||
@ -448,14 +1160,6 @@
|
||||
"strip-ansi": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"requires": {
|
||||
"safe-buffer": "~5.1.0"
|
||||
}
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
|
||||
|
3
gui/src/rust/build/package-lock.json
generated
3
gui/src/rust/build/package-lock.json
generated
@ -1,3 +0,0 @@
|
||||
{
|
||||
"lockfileVersion": 1
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
[package]
|
||||
name = "ensogl-gui-components"
|
||||
version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
||||
|
||||
[lib]
|
||||
crate-type = ["rlib", "cdylib"]
|
||||
|
||||
[dependencies]
|
||||
enso-frp = { path = "../../../lib/frp" }
|
||||
enso-logger = { path = "../../../../../../lib/rust/logger"}
|
||||
enso-prelude = { path = "../../../../../../lib/rust/prelude"}
|
||||
enso-shapely = { path = "../../../../../../lib/rust/shapely/impl"}
|
||||
enso-types = { path = "../../../lib/types" }
|
||||
ensogl-core = { path = "../core" }
|
||||
ensogl-text = { path = "../text" }
|
||||
ensogl-theme = { path = "../theme" }
|
||||
|
||||
[dev-dependencies]
|
||||
wasm-bindgen-test = { version = "0.3.8" }
|
||||
float_eq = "0.5"
|
@ -1,23 +0,0 @@
|
||||
//! This crate is a part of the EnsoGL library, containing the web-based functionalities.
|
||||
|
||||
#![deny(unconditional_recursion)]
|
||||
#![warn(missing_copy_implementations)]
|
||||
#![warn(missing_debug_implementations)]
|
||||
#![warn(missing_docs)]
|
||||
#![warn(trivial_casts)]
|
||||
#![warn(trivial_numeric_casts)]
|
||||
#![warn(unsafe_code)]
|
||||
#![warn(unused_import_braces)]
|
||||
#![warn(unused_qualifications)]
|
||||
|
||||
pub mod drop;
|
||||
|
||||
/// Commonly used utilities.
|
||||
pub mod prelude {
|
||||
pub use enso_logger::DefaultWarningLogger as Logger;
|
||||
pub use enso_logger::*;
|
||||
pub use enso_prelude::*;
|
||||
}
|
||||
|
||||
|
||||
pub use ensogl_system_web::*;
|
@ -10,26 +10,26 @@ crate-type = ["cdylib", "rlib"]
|
||||
[dependencies]
|
||||
analytics = { version = "0.1.0", path = "lib/analytics" }
|
||||
double-representation = { version = "0.1.0", path = "controller/double-representation" }
|
||||
enso-args = { path = "lib/args" }
|
||||
enso-callback = { path = "../lib/callback" }
|
||||
enso-config = { path = "lib/config" }
|
||||
enso-callback = { path = "../../../../lib/rust/callback" }
|
||||
enso-data = { path = "../../../../lib/rust/data"}
|
||||
enso-frp = { path = "../lib/frp" }
|
||||
enso-frp = { path = "../../../../lib/rust/frp" }
|
||||
enso-logger = { path = "../../../../lib/rust/logger"}
|
||||
enso-prelude = { path = "../../../../lib/rust/prelude"}
|
||||
enso-shapely = { path = "../../../../lib/rust/shapely/impl"}
|
||||
ensogl = { path = "../ensogl" }
|
||||
ensogl-examples = { path = "../ensogl/example" }
|
||||
ensogl-gui-components = { path = "../ensogl/lib/components" }
|
||||
ensogl-system-web = { path = "../lib/system/web" }
|
||||
ensogl-text = { path = "../ensogl/lib/text" }
|
||||
ensogl-text-msdf-sys = { path = "../ensogl/lib/text/msdf-sys" }
|
||||
ensogl-theme = { path = "../ensogl/lib/theme" }
|
||||
ensogl-web = { path = "../ensogl/lib/web" }
|
||||
fuzzly = { path = "../lib/fuzzly" }
|
||||
enso-web = { path = "../../../../lib/rust/web" }
|
||||
ensogl = { path = "../../../../lib/rust/ensogl" }
|
||||
ensogl-examples = { path = "../../../../lib/rust/ensogl/example" }
|
||||
ensogl-gui-component = { path = "../../../../lib/rust/ensogl/component/gui" }
|
||||
ensogl-text = { path = "../../../../lib/rust/ensogl/component/text" }
|
||||
ensogl-text-msdf-sys = { path = "../../../../lib/rust/ensogl/component/text/msdf-sys" }
|
||||
ensogl-hardcoded-theme = { path = "../../../../lib/rust/ensogl/app/theme/hardcoded" }
|
||||
ensogl-drop-manager = { path = "../../../../lib/rust/ensogl/component/drop-manager" }
|
||||
fuzzly = { path = "../../../../lib/rust/fuzzly" }
|
||||
ast = { path = "lib/ast/impl" }
|
||||
ide-view = { path = "view" }
|
||||
engine-protocol = { path = "controller/engine-protocol" }
|
||||
json-rpc = { path = "lib/json-rpc" }
|
||||
json-rpc = { path = "../../../../lib/rust/json-rpc" }
|
||||
parser = { path = "lib/parser" }
|
||||
span-tree = { path = "lib/span-tree" }
|
||||
bimap = { version = "0.4.0" }
|
||||
|
@ -12,7 +12,7 @@ enso-data = { path = "../../../../../../lib/rust/data"}
|
||||
enso-logger = { path = "../../../../../../lib/rust/logger"}
|
||||
enso-prelude = { path = "../../../../../../lib/rust/prelude"}
|
||||
enso-shapely = { path = "../../../../../../lib/rust/shapely/impl"}
|
||||
json-rpc = { path = "../../lib/json-rpc" }
|
||||
json-rpc = { path = "../../../../../../lib/rust/json-rpc" }
|
||||
chrono = { version = "0.4", features = ["serde"] }
|
||||
failure = { version = "0.1.8" }
|
||||
flatbuffers = { version = "0.5" }
|
||||
@ -26,10 +26,10 @@ uuid = { version = "0.8", features = ["serde", "v4", "wasm-bindgen"] }
|
||||
|
||||
[dev-dependencies]
|
||||
wasm-bindgen-test = { version = "0.3.8" }
|
||||
ensogl-system-web = { path = "../../../lib/system/web" }
|
||||
enso-web = { path = "../../../../../../lib/rust/web" }
|
||||
|
||||
[build-dependencies]
|
||||
ensogl-build-utilities = { path = "../../../build" }
|
||||
enso-build-utilities = { path = "../../../../../../lib/rust/build-utils" }
|
||||
bytes = { version = "0.5.4" }
|
||||
flatc-rust = { version = "0.1.2" }
|
||||
futures = { version = "0.3.1" }
|
||||
|
@ -1,11 +1,13 @@
|
||||
[package]
|
||||
name = "enso-args"
|
||||
name = "enso-config"
|
||||
version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ensogl = { path = "../../../ensogl" }
|
||||
enso-config = { path = "../../../lib/config" }
|
||||
ensogl = { path = "../../../../../../lib/rust/ensogl" }
|
||||
enso-prelude = { path = "../../../../../../lib/rust/prelude"}
|
||||
enso-logger = { path = "../../../../../../lib/rust/logger" }
|
||||
|
||||
[build-dependencies]
|
||||
config-reader = { version = "0.1.0", path = "../../../../../../lib/rust/config-reader" }
|
8
gui/src/rust/ide/lib/config/build.rs
Normal file
8
gui/src/rust/ide/lib/config/build.rs
Normal file
@ -0,0 +1,8 @@
|
||||
const CONFIG_PATH: &str = "../../../../config.yaml";
|
||||
|
||||
fn main() {
|
||||
println!("cargo:rerun-if-changed={}", CONFIG_PATH);
|
||||
println!("cargo:rerun-if-changed=build.rs");
|
||||
|
||||
config_reader::generate_config_module_from_yaml(CONFIG_PATH);
|
||||
}
|
@ -1,6 +1,5 @@
|
||||
//! Startup arguments definition.
|
||||
|
||||
#![warn(missing_docs)]
|
||||
#![warn(trivial_casts)]
|
||||
#![warn(trivial_numeric_casts)]
|
||||
#![warn(unused_import_braces)]
|
||||
@ -16,12 +15,22 @@ use ensogl::system::web;
|
||||
|
||||
|
||||
|
||||
// ==============
|
||||
// === Config ===
|
||||
// ==============
|
||||
|
||||
include!(concat!(env!("OUT_DIR"), "/config.rs"));
|
||||
|
||||
pub use generated::*;
|
||||
|
||||
|
||||
|
||||
// ============
|
||||
// === Args ===
|
||||
// ============
|
||||
|
||||
ensogl::read_args! {
|
||||
[enso_config::window_app_scope_name,enso_config::window_app_scope_config_name] {
|
||||
[window_app_scope_name, window_app_scope_config_name] {
|
||||
entry : String,
|
||||
project : String,
|
||||
project_manager : String,
|
@ -26,7 +26,7 @@ wasm-bindgen = { version = "=0.2.58" }
|
||||
wasm-bindgen-test = { version = "0.3.8" }
|
||||
|
||||
[build-dependencies]
|
||||
ensogl-build-utilities = { path = "../../../build" }
|
||||
enso-build-utilities = { path = "../../../../../../lib/rust/build-utils" }
|
||||
bytes = { version = "0.5.4" }
|
||||
futures = { version = "0.3.1" }
|
||||
reqwest = { version = "0.10.1" }
|
||||
|
@ -4,9 +4,9 @@
|
||||
|
||||
#![feature(option_result_contains)]
|
||||
|
||||
use ensogl_build_utilities::absolute_path;
|
||||
use ensogl_build_utilities::targeting_wasm;
|
||||
use ensogl_build_utilities::PathRef;
|
||||
use enso_build_utilities::absolute_path;
|
||||
use enso_build_utilities::targeting_wasm;
|
||||
use enso_build_utilities::PathRef;
|
||||
|
||||
use std::fs;
|
||||
use std::fs::create_dir_all;
|
||||
|
@ -10,7 +10,7 @@ crate-type = ["cdylib", "rlib"]
|
||||
[dependencies]
|
||||
ast = { path = "../../ast/impl" }
|
||||
span-tree = { path = "../../span-tree" }
|
||||
ensogl-system-web = { path = "../../../../lib/system/web" }
|
||||
enso-web = { path = "../../../../../../../lib/rust/web" }
|
||||
enso-prelude = { path = "../../../../../../../lib/rust/prelude"}
|
||||
enso-logger = { path = "../../../../../../../lib/rust/logger"}
|
||||
wasm-bindgen = { version = "=0.2.58", features = [
|
||||
|
@ -1,7 +1,7 @@
|
||||
use enso_prelude::*;
|
||||
use wasm_bindgen::prelude::*;
|
||||
|
||||
use ensogl_system_web as web;
|
||||
use enso_web as web;
|
||||
|
||||
use ast::crumbs::PatternMatchCrumb::*;
|
||||
use ast::crumbs::*;
|
||||
|
@ -4,8 +4,8 @@ use crate::prelude::*;
|
||||
use crate::constants;
|
||||
|
||||
use engine_protocol::project_manager::ProjectName;
|
||||
use enso_args::Args;
|
||||
use enso_args::ARGS;
|
||||
use enso_config::Args;
|
||||
use enso_config::ARGS;
|
||||
|
||||
|
||||
|
||||
|
@ -9,10 +9,10 @@ use engine_protocol::language_server;
|
||||
use engine_protocol::language_server::ContentRoot;
|
||||
use engine_protocol::language_server::FileSystemObject;
|
||||
use enso_frp as frp;
|
||||
use ensogl_gui_components::file_browser::model::Entry;
|
||||
use ensogl_gui_components::file_browser::model::EntryType;
|
||||
use ensogl_gui_components::file_browser::model::FolderContent;
|
||||
use ensogl_gui_components::file_browser::model::FolderType;
|
||||
use ensogl_gui_component::file_browser::model::Entry;
|
||||
use ensogl_gui_component::file_browser::model::EntryType;
|
||||
use ensogl_gui_component::file_browser::model::FolderContent;
|
||||
use ensogl_gui_component::file_browser::model::FolderType;
|
||||
use json_rpc::error::RpcError;
|
||||
use std::iter::once;
|
||||
|
||||
|
@ -34,9 +34,8 @@ use engine_protocol::language_server::ExpressionUpdatePayload;
|
||||
use enso_data::text::TextChange;
|
||||
use enso_frp as frp;
|
||||
use ensogl::display::traits::*;
|
||||
use ensogl_gui_components::file_browser::model::AnyFolderContent;
|
||||
use ensogl_gui_components::list_view;
|
||||
use ensogl_web::drop;
|
||||
use ensogl_gui_component::file_browser::model::AnyFolderContent;
|
||||
use ensogl_gui_component::list_view;
|
||||
use futures::future::LocalBoxFuture;
|
||||
use ide_view::graph_editor;
|
||||
use ide_view::graph_editor::component::node;
|
||||
@ -2051,7 +2050,7 @@ impl ide_view::searcher::DocumentationProvider for SuggestionsProviderForView {
|
||||
}
|
||||
}
|
||||
|
||||
impl upload::DataProvider for drop::File {
|
||||
impl upload::DataProvider for ensogl_drop_manager::File {
|
||||
fn next_chunk(&mut self) -> LocalBoxFuture<FallibleResult<Option<Vec<u8>>>> {
|
||||
self.read_chunk().map(|f| f.map_err(|e| e.into())).boxed_local()
|
||||
}
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
use crate::prelude::*;
|
||||
|
||||
use ensogl_system_web::event::listener::Slot;
|
||||
use ensogl_system_web::js_to_string;
|
||||
use enso_web::event::listener::Slot;
|
||||
use enso_web::js_to_string;
|
||||
use failure::Error;
|
||||
use futures::channel::mpsc;
|
||||
use json_rpc::Transport;
|
||||
@ -108,7 +108,7 @@ impl State {
|
||||
/// Description of events that can be emitted by JS WebSocket.
|
||||
pub mod event {
|
||||
use super::*;
|
||||
use ensogl_system_web::event::Type;
|
||||
use enso_web::event::Type;
|
||||
|
||||
/// Represents WebSocket.open event.
|
||||
#[derive(Clone, Copy, Debug)]
|
||||
|
@ -9,18 +9,17 @@ crate-type = ["cdylib", "rlib"]
|
||||
|
||||
[dependencies]
|
||||
ast = { path = "../lib/ast/impl" }
|
||||
enso-args = { path = "../lib/args" }
|
||||
enso-frp = { path = "../../lib/frp" }
|
||||
enso-config = { path = "../lib/config" }
|
||||
enso-frp = { path = "../../../../../lib/rust/frp" }
|
||||
enso-logger = { path = "../../../../../lib/rust/logger"}
|
||||
enso-prelude = { path = "../../../../../lib/rust/prelude"}
|
||||
enso-shapely = { path = "../../../../../lib/rust/shapely/impl"}
|
||||
engine-protocol = { path = "../controller/engine-protocol" }
|
||||
ensogl = { path = "../../ensogl" }
|
||||
enso-config = { path = "../../lib/config" }
|
||||
ensogl-gui-components = { path = "../../ensogl/lib/components" }
|
||||
ensogl-text = { path = "../../ensogl/lib/text" }
|
||||
ensogl-text-msdf-sys = { path = "../../ensogl/lib/text/msdf-sys" }
|
||||
ensogl-theme = { path = "../../ensogl/lib/theme" }
|
||||
ensogl = { path = "../../../../../lib/rust/ensogl" }
|
||||
ensogl-gui-component = { path = "../../../../../lib/rust/ensogl/component/gui" }
|
||||
ensogl-text = { path = "../../../../../lib/rust/ensogl/component/text" }
|
||||
ensogl-text-msdf-sys = { path = "../../../../../lib/rust/ensogl/component/text/msdf-sys" }
|
||||
ensogl-hardcoded-theme = { path = "../../../../../lib/rust/ensogl/app/theme/hardcoded" }
|
||||
ide-view-graph-editor = { path = "graph-editor" }
|
||||
parser = { path = "../lib/parser" }
|
||||
span-tree = { path = "../lib/span-tree" }
|
||||
|
@ -11,18 +11,18 @@ crate-type = ["cdylib", "rlib"]
|
||||
analytics = { version = "0.1.0", path = "../../lib/analytics" }
|
||||
ast = { version = "0.1.0", path = "../../lib/ast/impl" }
|
||||
bimap = { version = "0.4.0" }
|
||||
enso-args = { version = "0.1.0", path = "../../lib/args" }
|
||||
enso-frp = { version = "0.1.0", path = "../../../lib/frp" }
|
||||
enso-config = { version = "0.1.0", path = "../../lib/config" }
|
||||
enso-frp = { version = "0.1.0", path = "../../../../../../lib/rust/frp" }
|
||||
enso-logger = { path = "../../../../../../lib/rust/logger"}
|
||||
enso-prelude = { path = "../../../../../../lib/rust/prelude"}
|
||||
engine-protocol = { version = "0.1.0", path = "../../controller/engine-protocol" }
|
||||
enso-shapely = { path = "../../../../../../lib/rust/shapely/impl"}
|
||||
ensogl = { version = "0.1.0", path = "../../../ensogl" }
|
||||
ensogl-gui-components = { version = "0.1.0", path = "../../../ensogl/lib/components" }
|
||||
ensogl-text = { version = "0.1.0", path = "../../../ensogl/lib/text" }
|
||||
ensogl-text-msdf-sys = { version = "0.1.0", path = "../../../ensogl/lib/text/msdf-sys" }
|
||||
ensogl-theme = { version = "0.1.0", path = "../../../ensogl/lib/theme" }
|
||||
ensogl-web = { version = "0.1.0", path = "../../../ensogl/lib/web" }
|
||||
ensogl = { version = "0.1.0", path = "../../../../../../lib/rust/ensogl" }
|
||||
ensogl-gui-component = { version = "0.1.0", path = "../../../../../../lib/rust/ensogl/component/gui" }
|
||||
ensogl-text = { version = "0.1.0", path = "../../../../../../lib/rust/ensogl/component/text" }
|
||||
ensogl-text-msdf-sys = { version = "0.1.0", path = "../../../../../../lib/rust/ensogl/component/text/msdf-sys" }
|
||||
ensogl-hardcoded-theme = { version = "0.1.0", path = "../../../../../../lib/rust/ensogl/app/theme/hardcoded" }
|
||||
ensogl-drop-manager = { version = "0.1.0", path = "../../../../../../lib/rust/ensogl/component/drop-manager" }
|
||||
failure = { version = "0.1.8" }
|
||||
ordered-float = {version = "1.0"}
|
||||
span-tree = { version = "0.1.0", path = "../../lib/span-tree" }
|
||||
|
@ -16,7 +16,7 @@ use ensogl::display::DomSymbol;
|
||||
use ensogl::system::web;
|
||||
use ensogl::system::web::AttributeSetter;
|
||||
use ensogl::system::web::StyleSetter;
|
||||
use ensogl_theme;
|
||||
use ensogl_hardcoded_theme;
|
||||
use serde::Deserialize;
|
||||
use serde::Serialize;
|
||||
|
||||
@ -224,8 +224,9 @@ impl Model {
|
||||
|
||||
fn display_kind(&self, new: Kind) {
|
||||
let color_style = match new {
|
||||
Kind::Panic => ensogl_theme::graph_editor::visualization::error::panic::text,
|
||||
Kind::Dataflow => ensogl_theme::graph_editor::visualization::error::dataflow::text,
|
||||
Kind::Panic => ensogl_hardcoded_theme::graph_editor::visualization::error::panic::text,
|
||||
Kind::Dataflow =>
|
||||
ensogl_hardcoded_theme::graph_editor::visualization::error::dataflow::text,
|
||||
};
|
||||
let default = "";
|
||||
let opt_message = self.messages.get_cloned_ref(&new);
|
||||
|
@ -13,7 +13,7 @@ use ensogl::display::DomSymbol;
|
||||
use ensogl::system::web;
|
||||
use ensogl::system::web::AttributeSetter;
|
||||
use ensogl::system::web::StyleSetter;
|
||||
use ensogl_theme;
|
||||
use ensogl_hardcoded_theme;
|
||||
|
||||
|
||||
|
||||
@ -92,7 +92,8 @@ impl RawTextModel {
|
||||
// FIXME : StyleWatch is unsuitable here, as it was designed as an internal tool for shape
|
||||
// system (#795)
|
||||
let styles = StyleWatch::new(&scene.style_sheet);
|
||||
let text_color = styles.get_color(ensogl_theme::graph_editor::visualization::text);
|
||||
let text_color =
|
||||
styles.get_color(ensogl_hardcoded_theme::graph_editor::visualization::text);
|
||||
let _red = text_color.red * 255.0;
|
||||
let _green = text_color.green * 255.0;
|
||||
let _blue = text_color.blue * 255.0;
|
||||
|
@ -71,7 +71,7 @@ mod background {
|
||||
|
||||
ensogl::define_shape_system! {
|
||||
(style:Style) {
|
||||
let theme = ensogl_theme::graph_editor::breadcrumbs::background;
|
||||
let theme = ensogl_hardcoded_theme::graph_editor::breadcrumbs::background;
|
||||
let theme = style::Path::from(&theme);
|
||||
let width = Var::<Pixels>::from("input_size.x");
|
||||
let height = Var::<Pixels>::from("input_size.y");
|
||||
|
@ -17,8 +17,8 @@ use ensogl::display;
|
||||
use ensogl::display::object::ObjectOps;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl::DEPRECATED_Animation;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_theme as theme;
|
||||
use nalgebra::Vector2;
|
||||
use std::f32::consts::PI;
|
||||
|
||||
|
@ -17,9 +17,9 @@ use ensogl::display::object::ObjectOps;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl::gui::cursor;
|
||||
use ensogl::DEPRECATED_Animation;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_text::style::Size as TextSize;
|
||||
use ensogl_theme as theme;
|
||||
use logger::DefaultWarningLogger as Logger;
|
||||
|
||||
|
||||
|
@ -13,7 +13,7 @@ use ensogl::display::scene::Scene;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl::display::traits::*;
|
||||
use ensogl::gui::component::ShapeViewEvents;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use nalgebra::Rotation2;
|
||||
|
||||
|
||||
|
@ -35,10 +35,10 @@ use ensogl::display;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl::display::traits::*;
|
||||
use ensogl::Animation;
|
||||
use ensogl_gui_components::shadow;
|
||||
use ensogl_gui_component::shadow;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_hardcoded_theme;
|
||||
use ensogl_text::Text;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_theme;
|
||||
use std::f32::EPSILON;
|
||||
|
||||
use super::edge;
|
||||
@ -130,9 +130,9 @@ pub mod backdrop {
|
||||
|
||||
// === Selection ===
|
||||
|
||||
let sel_color = style.get_color(ensogl_theme::graph_editor::node::selection);
|
||||
let sel_size = style.get_number(ensogl_theme::graph_editor::node::selection::size);
|
||||
let sel_offset = style.get_number(ensogl_theme::graph_editor::node::selection::offset);
|
||||
let sel_color = style.get_color(ensogl_hardcoded_theme::graph_editor::node::selection);
|
||||
let sel_size = style.get_number(ensogl_hardcoded_theme::graph_editor::node::selection::size);
|
||||
let sel_offset = style.get_number(ensogl_hardcoded_theme::graph_editor::node::selection::offset);
|
||||
|
||||
let sel_width = &width - 2.px() + &sel_offset.px() * 2.0 * &selection;
|
||||
let sel_height = &height - 2.px() + &sel_offset.px() * 2.0 * &selection;
|
||||
@ -198,7 +198,7 @@ pub mod error_shape {
|
||||
|
||||
ensogl::define_shape_system! {
|
||||
(style:Style,color_rgba:Vector4<f32>) {
|
||||
use ensogl_theme::graph_editor::node as node_theme;
|
||||
use ensogl_hardcoded_theme::graph_editor::node as node_theme;
|
||||
|
||||
let width = Var::<Pixels>::from("input_size.x");
|
||||
let height = Var::<Pixels>::from("input_size.y");
|
||||
@ -818,7 +818,7 @@ impl Node {
|
||||
|
||||
// === Color Handling ===
|
||||
|
||||
let bgg = style_frp.get_color(ensogl_theme::graph_editor::node::background);
|
||||
let bgg = style_frp.get_color(ensogl_hardcoded_theme::graph_editor::node::background);
|
||||
let profiling_theme = profiling::Theme::from_styles(style_frp,network);
|
||||
|
||||
profiling_color <- all_with5
|
||||
@ -843,7 +843,7 @@ impl Node {
|
||||
// FIXME [WD]: Uncomment when implementing disabled icon.
|
||||
// bg_color <- frp.set_disabled.map(f!([model,style](disabled) {
|
||||
// model.input.frp.set_disabled(*disabled);
|
||||
// let bg_color_path = ensogl_theme::graph_editor::node::background;
|
||||
// let bg_color_path = ensogl_hardcoded_theme::graph_editor::node::background;
|
||||
// if *disabled { style.get_color_dim(bg_color_path) }
|
||||
// else { style.get_color(bg_color_path) }
|
||||
// }));
|
||||
@ -887,7 +887,7 @@ impl Node {
|
||||
}
|
||||
|
||||
fn error_color(error: &Option<Error>, style: &StyleWatch) -> color::Lcha {
|
||||
use ensogl_theme::graph_editor::node::error as error_theme;
|
||||
use ensogl_hardcoded_theme::graph_editor::node::error as error_theme;
|
||||
|
||||
if let Some(error) = error {
|
||||
let path = match *error.kind {
|
||||
|
@ -8,10 +8,10 @@ use enso_frp as frp;
|
||||
use ensogl::application::Application;
|
||||
use ensogl::display;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl_gui_components::toggle_button;
|
||||
use ensogl_gui_components::toggle_button::ColorableShape;
|
||||
use ensogl_gui_components::toggle_button::ToggleButton;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_gui_component::toggle_button;
|
||||
use ensogl_gui_component::toggle_button::ColorableShape;
|
||||
use ensogl_gui_component::toggle_button::ToggleButton;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
|
||||
|
||||
|
||||
|
@ -3,7 +3,7 @@ use crate::prelude::*;
|
||||
|
||||
use ensogl::data::color;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl_gui_components::toggle_button::ColorableShape;
|
||||
use ensogl_gui_component::toggle_button::ColorableShape;
|
||||
|
||||
|
||||
/// Icon for the visibility button. Looks like an open eye.
|
||||
|
@ -10,7 +10,7 @@ use ensogl::display::DomSymbol;
|
||||
use ensogl::display::Scene;
|
||||
use ensogl::system::web;
|
||||
use ensogl::system::web::StyleSetter;
|
||||
use ensogl_gui_components::shadow;
|
||||
use ensogl_gui_component::shadow;
|
||||
use serde::Deserialize;
|
||||
use serde::Serialize;
|
||||
|
||||
@ -106,7 +106,8 @@ impl Container {
|
||||
// FIXME : StyleWatch is unsuitable here, as it was designed as an internal tool for shape
|
||||
// system (#795)
|
||||
let styles = StyleWatch::new(&scene.style_sheet);
|
||||
let bg_color = styles.get_color(ensogl_theme::graph_editor::visualization::background);
|
||||
let bg_color =
|
||||
styles.get_color(ensogl_hardcoded_theme::graph_editor::visualization::background);
|
||||
let bg_red = bg_color.red * 255.0;
|
||||
let bg_green = bg_color.green * 255.0;
|
||||
let bg_blue = bg_color.blue * 255.0;
|
||||
|
@ -13,9 +13,9 @@ use ensogl::display::shape::*;
|
||||
use ensogl::display::traits::*;
|
||||
use ensogl::gui::cursor;
|
||||
use ensogl::Animation;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_text::buffer::data::unit::traits::*;
|
||||
use ensogl_theme as theme;
|
||||
use text::Text;
|
||||
|
||||
use crate::component::type_coloring;
|
||||
|
@ -11,8 +11,8 @@ use ensogl::data::color;
|
||||
use ensogl::display;
|
||||
use ensogl::display::shape::StyleWatch;
|
||||
use ensogl::display::shape::StyleWatchFrp;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_theme as theme;
|
||||
use span_tree;
|
||||
|
||||
use crate::component::node;
|
||||
@ -21,7 +21,7 @@ use crate::component::node::output::port;
|
||||
use crate::tooltip;
|
||||
use crate::view;
|
||||
use crate::Type;
|
||||
use enso_args::ARGS;
|
||||
use enso_config::ARGS;
|
||||
|
||||
|
||||
|
||||
|
@ -478,7 +478,8 @@ impl Model {
|
||||
self.shape = Some(shape.clone());
|
||||
|
||||
let type_label = app.new_view::<text::Area>();
|
||||
let offset_y = styles.get_number(ensogl_theme::graph_editor::node::type_label::offset_y);
|
||||
let offset_y =
|
||||
styles.get_number(ensogl_hardcoded_theme::graph_editor::node::type_label::offset_y);
|
||||
type_label.set_position_y(offset_y);
|
||||
self.type_label = Some(type_label.clone());
|
||||
|
||||
@ -556,7 +557,7 @@ impl Model {
|
||||
normal_color <- frp.tp.map(f!([styles](t)
|
||||
type_coloring::compute_for_selection(t.as_ref(),&styles)));
|
||||
init_color <- source::<()>();
|
||||
let profiling_color = styles_frp.get_color(ensogl_theme::code::types::any::selection);
|
||||
let profiling_color = styles_frp.get_color(ensogl_hardcoded_theme::code::types::any::selection);
|
||||
profiling_color <- all_with(&profiling_color,&init_color,|c,_|color::Lcha::from(c));
|
||||
in_profiling_mode <- frp.set_view_mode.map(|mode| mode.is_profiling());
|
||||
color_tgt <- in_profiling_mode.switch(&normal_color,&profiling_color);
|
||||
|
@ -99,9 +99,10 @@ pub struct Theme {
|
||||
|
||||
impl Theme {
|
||||
/// Returns a new `Sampler` exposing the profiling theme, as it is defined in `styles` at path
|
||||
/// `ensogl_theme::graph_editor::node::profiling`. The sampler is registered under `network`.
|
||||
/// `ensogl_hardcoded_theme::graph_editor::node::profiling`. The sampler is registered under
|
||||
/// `network`.
|
||||
pub fn from_styles(styles: &StyleWatchFrp, network: &frp::Network) -> frp::Sampler<Theme> {
|
||||
use ensogl_theme::graph_editor::node::profiling as theme_path;
|
||||
use ensogl_hardcoded_theme::graph_editor::node::profiling as theme_path;
|
||||
let lightness = styles.get_number_or(theme_path::lightness, 0.5);
|
||||
let chroma = styles.get_number_or(theme_path::chroma, 1.0);
|
||||
let min_time_hue = styles.get_number_or(theme_path::min_time_hue, 0.4);
|
||||
|
@ -28,9 +28,11 @@ impl Status {
|
||||
fn get_highlight_color_from_style(self, style: &StyleWatch) -> color::Lcha {
|
||||
match self {
|
||||
Status::Unchanged =>
|
||||
style.get_color(ensogl_theme::graph_editor::node::vcs::unchanged).into(),
|
||||
Status::Added => style.get_color(ensogl_theme::graph_editor::node::vcs::added).into(),
|
||||
Status::Edited => style.get_color(ensogl_theme::graph_editor::node::vcs::edited).into(),
|
||||
style.get_color(ensogl_hardcoded_theme::graph_editor::node::vcs::unchanged).into(),
|
||||
Status::Added =>
|
||||
style.get_color(ensogl_hardcoded_theme::graph_editor::node::vcs::added).into(),
|
||||
Status::Edited =>
|
||||
style.get_color(ensogl_hardcoded_theme::graph_editor::node::vcs::edited).into(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -9,8 +9,8 @@ use ensogl::application::Application;
|
||||
use ensogl::data::color;
|
||||
use ensogl::display;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl_gui_components::toggle_button;
|
||||
use ensogl_gui_components::toggle_button::ToggleButton;
|
||||
use ensogl_gui_component::toggle_button;
|
||||
use ensogl_gui_component::toggle_button::ToggleButton;
|
||||
|
||||
|
||||
|
||||
@ -26,7 +26,7 @@ use ensogl_gui_components::toggle_button::ToggleButton;
|
||||
/// pointing to the lower right.
|
||||
mod icon {
|
||||
use super::*;
|
||||
use ensogl_gui_components::toggle_button::ColorableShape;
|
||||
use ensogl_gui_component::toggle_button::ColorableShape;
|
||||
|
||||
ensogl::define_shape_system! {
|
||||
(color_rgba:Vector4<f32>) {
|
||||
@ -174,7 +174,7 @@ impl Button {
|
||||
|
||||
// === Color ===
|
||||
|
||||
use ensogl_theme::graph_editor::profiling_button as button_theme;
|
||||
use ensogl_hardcoded_theme::graph_editor::profiling_button as button_theme;
|
||||
let non_toggled_color = styles.get_color(button_theme::non_toggled);
|
||||
let toggled_color = styles.get_color(button_theme::toggled);
|
||||
let hovered_color = styles.get_color(button_theme::hovered);
|
||||
|
@ -10,7 +10,7 @@ use ensogl::prelude::*;
|
||||
|
||||
use ensogl::animation::hysteretic::HystereticAnimation;
|
||||
use ensogl::display::shape::StyleWatch;
|
||||
use ensogl_gui_components::label::Label;
|
||||
use ensogl_gui_component::label::Label;
|
||||
|
||||
|
||||
|
||||
@ -189,10 +189,14 @@ impl Tooltip {
|
||||
// FIXME : StyleWatch is unsuitable here, as it was designed as an internal tool for shape
|
||||
// system (#795)
|
||||
let styles = StyleWatch::new(&app.display.scene().style_sheet);
|
||||
let hide_delay_duration_ms =
|
||||
styles.get_number_or(ensogl_theme::application::tooltip::hide_delay_duration_ms, 0.0);
|
||||
let show_delay_duration_ms =
|
||||
styles.get_number_or(ensogl_theme::application::tooltip::show_delay_duration_ms, 0.0);
|
||||
let hide_delay_duration_ms = styles.get_number_or(
|
||||
ensogl_hardcoded_theme::application::tooltip::hide_delay_duration_ms,
|
||||
0.0,
|
||||
);
|
||||
let show_delay_duration_ms = styles.get_number_or(
|
||||
ensogl_hardcoded_theme::application::tooltip::show_delay_duration_ms,
|
||||
0.0,
|
||||
);
|
||||
|
||||
let hysteretic_transition =
|
||||
HystereticAnimation::new(network, hide_delay_duration_ms, show_delay_duration_ms);
|
||||
|
@ -8,7 +8,7 @@ use crate::Type;
|
||||
use ensogl::data::color;
|
||||
use ensogl::display::shape::StyleWatch;
|
||||
use ensogl::display::style::data::DataMatch;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use std::collections::hash_map::DefaultHasher;
|
||||
use std::hash::Hasher;
|
||||
|
||||
|
@ -32,7 +32,7 @@ use ensogl::Animation;
|
||||
|
||||
use ensogl::system::web;
|
||||
use ensogl::system::web::StyleSetter;
|
||||
use ensogl_gui_components::shadow;
|
||||
use ensogl_gui_component::shadow;
|
||||
|
||||
|
||||
|
||||
@ -77,7 +77,7 @@ pub mod overlay {
|
||||
// This should be fixed in https://github.com/enso-org/ide/issues/526
|
||||
pub mod background {
|
||||
use super::*;
|
||||
use ensogl_theme::graph_editor::visualization as theme;
|
||||
use ensogl_hardcoded_theme::graph_editor::visualization as theme;
|
||||
|
||||
ensogl::define_shape_system! {
|
||||
(style:Style, radius:f32, roundness:f32, selection:f32) {
|
||||
@ -182,7 +182,8 @@ impl View {
|
||||
// FIXME : StyleWatch is unsuitable here, as it was designed as an internal tool for shape
|
||||
// system (#795)
|
||||
let styles = StyleWatch::new(&scene.style_sheet);
|
||||
let bg_color = styles.get_color(ensogl_theme::graph_editor::visualization::background);
|
||||
let bg_color =
|
||||
styles.get_color(ensogl_hardcoded_theme::graph_editor::visualization::background);
|
||||
let bg_hex = format!(
|
||||
"rgba({},{},{},{})",
|
||||
bg_color.red * 255.0,
|
||||
|
@ -15,8 +15,8 @@ use ensogl::display::shape::system::DynamicShape;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl::display::traits::*;
|
||||
use ensogl::gui::component::ShapeView;
|
||||
use ensogl_gui_components::drop_down_menu;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_gui_component::drop_down_menu;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
|
||||
|
||||
|
||||
|
@ -9,7 +9,7 @@ use ensogl::display::traits::*;
|
||||
use ensogl::display::DomSymbol;
|
||||
use ensogl::system::web;
|
||||
use ensogl::system::web::StyleSetter;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
|
||||
|
||||
|
||||
@ -67,7 +67,8 @@ impl Panel {
|
||||
// FIXME : StyleWatch is unsuitable here, as it was designed as an internal tool for shape
|
||||
// system (#795)
|
||||
let styles = StyleWatch::new(&scene.style_sheet);
|
||||
let bg_color = styles.get_color(ensogl_theme::graph_editor::visualization::background);
|
||||
let bg_color =
|
||||
styles.get_color(ensogl_hardcoded_theme::graph_editor::visualization::background);
|
||||
let red = bg_color.red * 255.0;
|
||||
let green = bg_color.green * 255.0;
|
||||
let blue = bg_color.blue * 255.0;
|
||||
|
@ -15,8 +15,8 @@ use enso_frp as frp;
|
||||
use enso_frp;
|
||||
use ensogl::application::Application;
|
||||
use ensogl::display;
|
||||
use ensogl_gui_components::drop_down_menu;
|
||||
use ensogl_gui_components::list_view;
|
||||
use ensogl_gui_component::drop_down_menu;
|
||||
use ensogl_gui_component::list_view;
|
||||
|
||||
|
||||
|
||||
|
@ -11,7 +11,7 @@ use ensogl::data::color;
|
||||
use ensogl::display::shape::StyleWatch;
|
||||
use ensogl::display::style::data::DataMatch;
|
||||
use ensogl::display::DomSymbol;
|
||||
use ensogl_theme;
|
||||
use ensogl_hardcoded_theme;
|
||||
use fmt::Formatter;
|
||||
use wasm_bindgen::prelude::*;
|
||||
use web_sys::HtmlDivElement;
|
||||
@ -105,7 +105,7 @@ impl JsTheme {
|
||||
/// Takes a qualified type name and returns the color that should be used for foreground
|
||||
/// (e.g. text) that is shown on top of the background color returned by getColorForType.
|
||||
pub fn getForegroundColorForType(&self, _tp_name: &str) -> JsColor {
|
||||
self.styles.get_color(ensogl_theme::code::types::selected).into()
|
||||
self.styles.get_color(ensogl_hardcoded_theme::code::types::selected).into()
|
||||
}
|
||||
|
||||
/// Queries style sheet value for a value.
|
||||
|
@ -101,7 +101,7 @@ pub struct InstanceModel {
|
||||
impl InstanceModel {
|
||||
fn get_background_color(scene: &Scene) -> color::Rgba {
|
||||
let styles = StyleWatch::new(&scene.style_sheet);
|
||||
styles.get_color(ensogl_theme::graph_editor::visualization::background)
|
||||
styles.get_color(ensogl_hardcoded_theme::graph_editor::visualization::background)
|
||||
}
|
||||
|
||||
fn create_root(scene: &Scene, logger: &Logger) -> result::Result<DomSymbol, Error> {
|
||||
|
@ -46,7 +46,7 @@ use crate::component::visualization::MockDataGenerator3D;
|
||||
use crate::data::enso;
|
||||
pub use crate::node::profiling::Status as NodeProfilingStatus;
|
||||
|
||||
use enso_args::ARGS;
|
||||
use enso_config::ARGS;
|
||||
use enso_frp as frp;
|
||||
use ensogl::application;
|
||||
use ensogl::application::shortcut;
|
||||
@ -64,8 +64,7 @@ use ensogl::system::web;
|
||||
use ensogl::Animation;
|
||||
use ensogl::DEPRECATED_Animation;
|
||||
use ensogl::DEPRECATED_Tween;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_web::drop;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ordered_float::OrderedFloat;
|
||||
|
||||
|
||||
@ -611,7 +610,7 @@ ensogl::define_endpoints! {
|
||||
view_mode (view::Mode),
|
||||
|
||||
navigator_active (bool),
|
||||
file_dropped (drop::File,Vector2<f32>),
|
||||
file_dropped (ensogl_drop_manager::File,Vector2<f32>),
|
||||
|
||||
default_x_gap_between_nodes (f32),
|
||||
default_y_gap_between_nodes (f32),
|
||||
@ -1436,7 +1435,7 @@ pub struct GraphEditorModel {
|
||||
pub nodes: Nodes,
|
||||
pub edges: Edges,
|
||||
pub vis_registry: visualization::Registry,
|
||||
pub drop_manager: drop::Manager,
|
||||
pub drop_manager: ensogl_drop_manager::Manager,
|
||||
// FIXME[MM]: The tooltip should live next to the cursor in `Application`. This does not
|
||||
// currently work, however, because the `Application` lives in enso-core, and the tooltip
|
||||
// requires enso-text, which in turn depends on enso-core, creating a cyclic dependency.
|
||||
@ -1472,7 +1471,7 @@ impl GraphEditorModel {
|
||||
let tooltip = Tooltip::new(&app);
|
||||
let profiling_statuses = profiling::Statuses::new();
|
||||
let profiling_button = component::profiling::Button::new(&app);
|
||||
let drop_manager = drop::Manager::new(&scene.dom.root);
|
||||
let drop_manager = ensogl_drop_manager::Manager::new(&scene.dom.root);
|
||||
let styles_frp = StyleWatchFrp::new(&scene.style_sheet);
|
||||
let selection_controller =
|
||||
selection::Controller::new(&frp, &app.cursor, &scene.mouse.frp, &touch_state, &nodes);
|
||||
@ -3331,9 +3330,9 @@ fn new_graph_editor(app: &Application) -> GraphEditor {
|
||||
|
||||
let style_sheet = &scene.style_sheet;
|
||||
let styles = StyleWatchFrp::new(style_sheet);
|
||||
let default_x_gap_path = ensogl_theme::graph_editor::default_x_gap_between_nodes;
|
||||
let default_y_gap_path = ensogl_theme::graph_editor::default_y_gap_between_nodes;
|
||||
let min_x_spacing_path = ensogl_theme::graph_editor::minimal_x_spacing_for_new_nodes;
|
||||
let default_x_gap_path = ensogl_hardcoded_theme::graph_editor::default_x_gap_between_nodes;
|
||||
let default_y_gap_path = ensogl_hardcoded_theme::graph_editor::default_y_gap_between_nodes;
|
||||
let min_x_spacing_path = ensogl_hardcoded_theme::graph_editor::minimal_x_spacing_for_new_nodes;
|
||||
let default_x_gap = styles.get_number_or(default_x_gap_path, 0.0);
|
||||
let default_y_gap = styles.get_number_or(default_y_gap_path, 0.0);
|
||||
let min_x_spacing = styles.get_number_or(min_x_spacing_path, 0.0);
|
||||
|
@ -109,7 +109,7 @@ impl View {
|
||||
});
|
||||
eval position ((pos) model.set_position_xy(*pos));
|
||||
|
||||
let color = styles.get_color(ensogl_theme::code::syntax::base);
|
||||
let color = styles.get_color(ensogl_hardcoded_theme::code::syntax::base);
|
||||
eval color ((color) model.set_default_color(color));
|
||||
}
|
||||
model.set_default_color(color.value());
|
||||
|
@ -19,8 +19,8 @@ use ensogl::display::navigation::navigator::Navigator;
|
||||
use ensogl::display::object::ObjectOps;
|
||||
use ensogl::display::shape::StyleWatch;
|
||||
use ensogl::system::web;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_theme as theme;
|
||||
use parser::Parser;
|
||||
use wasm_bindgen::prelude::*;
|
||||
|
||||
@ -242,7 +242,7 @@ fn init(app: &Application) {
|
||||
if to_theme_switch == 0 {
|
||||
// println!("THEME SWITCH !!!");
|
||||
// scene.style_sheet.set("application.background",color::Rgba(0.0,0.0,0.0,1.0));
|
||||
// ensogl_theme::builtin::dark::enable(&app);
|
||||
// ensogl_hardcoded_theme::builtin::dark::enable(&app);
|
||||
//
|
||||
// println!(">>> {:?}", "lcha(1,0,0,1)".parse::<color::Lcha>());
|
||||
}
|
||||
|
@ -17,7 +17,7 @@ use ensogl::system::web;
|
||||
use ensogl::system::web::clipboard;
|
||||
use ensogl::system::web::AttributeSetter;
|
||||
use ensogl::system::web::StyleSetter;
|
||||
use ensogl_gui_components::shadow;
|
||||
use ensogl_gui_component::shadow;
|
||||
use wasm_bindgen::closure::Closure;
|
||||
use wasm_bindgen::JsCast;
|
||||
use web_sys::HtmlElement;
|
||||
@ -81,7 +81,7 @@ impl Model {
|
||||
// FIXME : StyleWatch is unsuitable here, as it was designed as an internal tool for shape
|
||||
// system (#795)
|
||||
let styles = StyleWatch::new(&scene.style_sheet);
|
||||
let style_path = ensogl_theme::application::documentation::background;
|
||||
let style_path = ensogl_hardcoded_theme::application::documentation::background;
|
||||
let bg_color = styles.get_color(style_path);
|
||||
let bg_color = bg_color.to_javascript_string();
|
||||
|
||||
|
@ -7,8 +7,8 @@ use enso_frp as frp;
|
||||
use ensogl::application::Application;
|
||||
use ensogl::display;
|
||||
use ensogl::display::shape::StyleWatchFrp;
|
||||
use ensogl_gui_components::file_browser::FileBrowser;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_gui_component::file_browser::FileBrowser;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
|
||||
|
||||
|
||||
|
@ -6,10 +6,10 @@ use enso_frp as frp;
|
||||
use ensogl::application::Application;
|
||||
use ensogl::display;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl_gui_components::list_view;
|
||||
use ensogl_gui_components::shadow;
|
||||
use ensogl_gui_component::list_view;
|
||||
use ensogl_gui_component::shadow;
|
||||
use ensogl_hardcoded_theme::application::project_list as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_theme::application::project_list as theme;
|
||||
|
||||
|
||||
|
||||
|
@ -12,7 +12,7 @@ use crate::open_dialog::OpenDialog;
|
||||
use crate::searcher;
|
||||
use crate::status_bar;
|
||||
|
||||
use enso_args::ARGS;
|
||||
use enso_config::ARGS;
|
||||
use enso_frp as frp;
|
||||
use ensogl::application;
|
||||
use ensogl::application::shortcut;
|
||||
@ -23,7 +23,7 @@ use ensogl::system::web;
|
||||
use ensogl::system::web::dom;
|
||||
use ensogl::Animation;
|
||||
use ensogl::DEPRECATED_Animation;
|
||||
use ensogl_theme::Theme;
|
||||
use ensogl_hardcoded_theme::Theme;
|
||||
|
||||
|
||||
|
||||
@ -85,7 +85,7 @@ mod prompt_background {
|
||||
let width = Var::<Pixels>::from("input_size.x");
|
||||
let height = Var::<Pixels>::from("input_size.y");
|
||||
|
||||
let corner_radius = style.get_number(ensogl_theme::graph_editor::prompt::background::corner_radius);
|
||||
let corner_radius = style.get_number(ensogl_hardcoded_theme::graph_editor::prompt::background::corner_radius);
|
||||
let shape = Rect((&width,&height));
|
||||
let shape = shape.corners_radius(corner_radius.px());
|
||||
let bg = shape.fill(color_rgba);
|
||||
@ -178,12 +178,12 @@ impl Model {
|
||||
}
|
||||
|
||||
fn set_light_style(&self) {
|
||||
ensogl_theme::builtin::light::enable(&self.app);
|
||||
ensogl_hardcoded_theme::builtin::light::enable(&self.app);
|
||||
self.set_html_style("light-theme");
|
||||
}
|
||||
|
||||
fn set_dark_style(&self) {
|
||||
ensogl_theme::builtin::dark::enable(&self.app);
|
||||
ensogl_hardcoded_theme::builtin::dark::enable(&self.app);
|
||||
self.set_html_style("dark-theme");
|
||||
}
|
||||
|
||||
@ -266,7 +266,7 @@ impl Model {
|
||||
}
|
||||
|
||||
fn on_close_clicked(&self) {
|
||||
js::close(enso_config::CONFIG.window_app_scope_name);
|
||||
js::close(enso_config::window_app_scope_name);
|
||||
}
|
||||
|
||||
fn on_fullscreen_clicked(&self) {
|
||||
@ -343,15 +343,15 @@ impl Deref for View {
|
||||
impl View {
|
||||
/// Constructor.
|
||||
pub fn new(app: &Application) -> Self {
|
||||
ensogl_theme::builtin::dark::register(app);
|
||||
ensogl_theme::builtin::light::register(app);
|
||||
ensogl_hardcoded_theme::builtin::dark::register(app);
|
||||
ensogl_hardcoded_theme::builtin::light::register(app);
|
||||
let theme = match ARGS.theme.as_deref() {
|
||||
Some("dark") => {
|
||||
ensogl_theme::builtin::dark::enable(app);
|
||||
ensogl_hardcoded_theme::builtin::dark::enable(app);
|
||||
Theme::Dark
|
||||
}
|
||||
_ => {
|
||||
ensogl_theme::builtin::light::enable(app);
|
||||
ensogl_hardcoded_theme::builtin::light::enable(app);
|
||||
Theme::Light
|
||||
}
|
||||
};
|
||||
@ -523,10 +523,10 @@ impl View {
|
||||
// === Prompt ===
|
||||
|
||||
init <- source::<()>();
|
||||
let prompt_bg_color_path = ensogl_theme::graph_editor::prompt::background;
|
||||
let prompt_bg_padding_path = ensogl_theme::graph_editor::prompt::background::padding;
|
||||
let prompt_color_path = ensogl_theme::graph_editor::prompt::text;
|
||||
let prompt_size_path = ensogl_theme::graph_editor::prompt::text::size;
|
||||
let prompt_bg_color_path = ensogl_hardcoded_theme::graph_editor::prompt::background;
|
||||
let prompt_bg_padding_path = ensogl_hardcoded_theme::graph_editor::prompt::background::padding;
|
||||
let prompt_color_path = ensogl_hardcoded_theme::graph_editor::prompt::text;
|
||||
let prompt_size_path = ensogl_hardcoded_theme::graph_editor::prompt::text::size;
|
||||
let prompt_bg_color = styles.get_color(prompt_bg_color_path);
|
||||
prompt_bg_color <- all(&prompt_bg_color,&init)._0();
|
||||
let prompt_bg_padding = styles.get_number(prompt_bg_padding_path);
|
||||
|
@ -16,10 +16,10 @@ use ensogl::application::Application;
|
||||
use ensogl::display;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl::DEPRECATED_Animation;
|
||||
use ensogl_gui_components::list_view;
|
||||
use ensogl_gui_components::list_view::ListView;
|
||||
use ensogl_gui_component::list_view;
|
||||
use ensogl_gui_component::list_view::ListView;
|
||||
|
||||
pub use ensogl_gui_components::list_view::entry;
|
||||
pub use ensogl_gui_component::list_view::entry;
|
||||
|
||||
|
||||
|
||||
@ -130,7 +130,7 @@ impl Model {
|
||||
// FIXME: StyleWatch is unsuitable here, as it was designed as an internal tool for shape
|
||||
// system (#795)
|
||||
let style = StyleWatch::new(&app.display.scene().style_sheet);
|
||||
let action_list_gap_path = ensogl_theme::application::searcher::action_list_gap;
|
||||
let action_list_gap_path = ensogl_hardcoded_theme::application::searcher::action_list_gap;
|
||||
let action_list_gap = style.get_number_or(action_list_gap_path, 0.0);
|
||||
list.set_label_layer(scene.layers.above_nodes_text.id());
|
||||
list.set_position_y(-action_list_gap);
|
||||
|
@ -11,7 +11,7 @@ use ensogl::display::shape::*;
|
||||
use ensogl::display::DomSymbol;
|
||||
use ensogl::system::web;
|
||||
use ensogl::system::web::StyleSetter;
|
||||
use ensogl_theme::application::searcher::icons as theme;
|
||||
use ensogl_hardcoded_theme::application::searcher::icons as theme;
|
||||
use std::f32::consts::PI;
|
||||
use wasm_bindgen::prelude::*;
|
||||
|
||||
@ -1003,9 +1003,9 @@ pub fn entry_point_searcher_icons() {
|
||||
|
||||
let logger = Logger::new("Icons example");
|
||||
let app = Application::new(&web::get_html_element_by_id("root").unwrap());
|
||||
ensogl_theme::builtin::dark::register(&app);
|
||||
ensogl_theme::builtin::light::register(&app);
|
||||
ensogl_theme::builtin::light::enable(&app);
|
||||
ensogl_hardcoded_theme::builtin::dark::register(&app);
|
||||
ensogl_hardcoded_theme::builtin::light::register(&app);
|
||||
ensogl_hardcoded_theme::builtin::light::enable(&app);
|
||||
let world = app.display.clone();
|
||||
mem::forget(app);
|
||||
let scene = world.scene();
|
||||
|
@ -15,9 +15,9 @@ use ensogl::display::camera::Camera2d;
|
||||
use ensogl::display::shape::*;
|
||||
use ensogl::display::style;
|
||||
use ensogl::display::Scene;
|
||||
use ensogl_gui_components::shadow;
|
||||
use ensogl_gui_component::shadow;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_theme as theme;
|
||||
use std::future::Future;
|
||||
|
||||
|
||||
@ -93,7 +93,7 @@ mod background {
|
||||
|
||||
ensogl::define_shape_system! {
|
||||
(style:Style) {
|
||||
let theme = ensogl_theme::application::status_bar::background;
|
||||
let theme = ensogl_hardcoded_theme::application::status_bar::background;
|
||||
let theme = style::Path::from(theme);
|
||||
let width = Var::<Pixels>::from("input_size.x");
|
||||
let height = Var::<Pixels>::from("input_size.y");
|
||||
|
@ -80,7 +80,7 @@ impl<T> LayoutParams<T> {
|
||||
impl LayoutParams<frp::Sampler<f32>> {
|
||||
/// Get layout from theme. Each layout parameter will be an frp sampler.
|
||||
pub fn from_theme(style: &StyleWatchFrp) -> Self {
|
||||
use ensogl_theme::application::window_control_buttons as theme;
|
||||
use ensogl_hardcoded_theme::application::window_control_buttons as theme;
|
||||
let default = LayoutParams::default();
|
||||
let spacing = style.get_number_or(theme::spacing, default.spacing);
|
||||
let padding_left = style.get_number_or(theme::padding::left, default.padding_left);
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
use crate::window_control_buttons::common::prelude::*;
|
||||
|
||||
pub use ensogl_theme::application::window_control_buttons::close as theme;
|
||||
pub use ensogl_hardcoded_theme::application::window_control_buttons::close as theme;
|
||||
|
||||
/// The view component with the close button.
|
||||
pub type View = common::View<shape::DynamicShape>;
|
||||
|
@ -240,7 +240,8 @@ impl<Shape: ButtonShape> View<Shape> {
|
||||
model.set_icon_color(default_background_color);
|
||||
|
||||
// Radius initialization
|
||||
let radius_frp = style.get(ensogl_theme::application::window_control_buttons::radius);
|
||||
let radius_frp =
|
||||
style.get(ensogl_hardcoded_theme::application::window_control_buttons::radius);
|
||||
|
||||
// Style's relevant color FRP endpoints.
|
||||
let background_unconcerned_color =
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
use crate::window_control_buttons::common::prelude::*;
|
||||
|
||||
pub use ensogl_theme::application::window_control_buttons::fullscreen as theme;
|
||||
pub use ensogl_hardcoded_theme::application::window_control_buttons::fullscreen as theme;
|
||||
|
||||
/// The view component with the fullscreen button.
|
||||
pub type View = common::View<shape::DynamicShape>;
|
||||
|
1
gui/src/rust/lib/config/.gitignore
vendored
1
gui/src/rust/lib/config/.gitignore
vendored
@ -1 +0,0 @@
|
||||
src/autogenerated.rs
|
@ -1,61 +0,0 @@
|
||||
use inflector::*;
|
||||
use serde_yaml::Value;
|
||||
use std::fs;
|
||||
|
||||
const CONFIG_PATH: &str = "../../../config.yaml";
|
||||
|
||||
fn main() {
|
||||
println!("cargo:rerun-if-changed={}", CONFIG_PATH);
|
||||
println!("cargo:rerun-if-changed=build.rs");
|
||||
|
||||
let f = std::fs::File::open(CONFIG_PATH).unwrap();
|
||||
let value: Value = serde_yaml::from_reader(f).unwrap();
|
||||
let manifest_dir = std::env::var("CARGO_MANIFEST_DIR")
|
||||
.expect("missing environment variable CARGO_MANIFEST_DIR:");
|
||||
|
||||
let indent = " ".repeat(4);
|
||||
let mut def = "".to_string();
|
||||
let mut inst = "".to_string();
|
||||
let mut vars = "".to_string();
|
||||
match value {
|
||||
Value::Mapping(mapping) =>
|
||||
for (key, value) in mapping {
|
||||
let key = key.as_str().unwrap().to_snake_case();
|
||||
let value = value.as_str().unwrap();
|
||||
def.push_str(&format!("{}pub {}: &'static str,\n", indent, key));
|
||||
inst.push_str(&format!("{}{}: \"{}\",\n", indent, key, value));
|
||||
vars.push_str(&format!(
|
||||
"#[allow(non_upper_case_globals)]\npub const {}: &str = \"{}\";\n",
|
||||
key, value
|
||||
));
|
||||
},
|
||||
_ => panic!("Unexpected config format."),
|
||||
}
|
||||
|
||||
def = def.trim_end().to_string();
|
||||
inst = inst.trim_end().to_string();
|
||||
|
||||
let file = format!(
|
||||
r#"// THIS IS AN AUTOGENERATED FILE BASED ON THE '{config_path}' CONFIG FILE. DO NOT MODIFY IT.
|
||||
// Generated by the build script in {my_path}.
|
||||
|
||||
mod autogenerated {{
|
||||
pub struct Config {{
|
||||
{def}
|
||||
}}
|
||||
|
||||
pub const CONFIG: Config = Config {{
|
||||
{inst}
|
||||
}};
|
||||
}}
|
||||
|
||||
{vars}"#,
|
||||
my_path = manifest_dir,
|
||||
config_path = CONFIG_PATH,
|
||||
def = def,
|
||||
inst = inst,
|
||||
vars = vars
|
||||
);
|
||||
let out_dir = std::env::var("OUT_DIR").expect("missing environment variable OUT_DIR:");
|
||||
fs::write(out_dir + "/config.rs", file).ok();
|
||||
}
|
@ -1,4 +0,0 @@
|
||||
// Defines module `autogenerated`.
|
||||
include!(concat!(env!("OUT_DIR"), "/config.rs"));
|
||||
|
||||
pub use autogenerated::*;
|
@ -1,360 +0,0 @@
|
||||
//! This module re-exports a lot of useful stuff. It is not meant to be used
|
||||
//! by libraries, but it is definitely usefull for bigger projects. It also
|
||||
//! defines several aliases and utils which may find their place in new
|
||||
//! libraries in the future.
|
||||
|
||||
#![warn(unsafe_code)]
|
||||
#![warn(missing_copy_implementations)]
|
||||
#![warn(missing_debug_implementations)]
|
||||
#![feature(specialization)]
|
||||
#![feature(trait_alias)]
|
||||
|
||||
mod clone;
|
||||
mod collections;
|
||||
mod data;
|
||||
mod macros;
|
||||
mod option;
|
||||
mod phantom;
|
||||
mod rc;
|
||||
mod reference;
|
||||
mod result;
|
||||
mod std_reexports;
|
||||
mod string;
|
||||
mod tp;
|
||||
mod vec;
|
||||
mod wrapper;
|
||||
|
||||
pub use clone::*;
|
||||
pub use collections::*;
|
||||
pub use data::*;
|
||||
pub use macros::*;
|
||||
pub use option::*;
|
||||
pub use phantom::*;
|
||||
pub use rc::*;
|
||||
pub use reference::*;
|
||||
pub use result::*;
|
||||
pub use std_reexports::*;
|
||||
pub use string::*;
|
||||
pub use tp::*;
|
||||
pub use vec::*;
|
||||
pub use wrapper::*;
|
||||
|
||||
pub use boolinator::Boolinator;
|
||||
pub use derivative::Derivative;
|
||||
pub use derive_more::*;
|
||||
pub use enclose::enclose;
|
||||
pub use failure::Fail;
|
||||
pub use ifmt::*;
|
||||
pub use itertools::Itertools;
|
||||
pub use lazy_static::lazy_static;
|
||||
pub use num::Num;
|
||||
pub use paste;
|
||||
pub use shrinkwraprs::Shrinkwrap;
|
||||
pub use weak_table::traits::WeakElement;
|
||||
pub use weak_table::traits::WeakKey;
|
||||
pub use weak_table::WeakKeyHashMap;
|
||||
pub use weak_table::WeakValueHashMap;
|
||||
pub use weak_table;
|
||||
|
||||
pub use std::collections::hash_map::DefaultHasher;
|
||||
pub use std::hash::Hash;
|
||||
pub use std::hash::Hasher;
|
||||
|
||||
use std::cell::UnsafeCell;
|
||||
|
||||
|
||||
|
||||
// =================
|
||||
// === Immutable ===
|
||||
// =================
|
||||
|
||||
/// A zero-overhead newtype which provides immutable access to its content. Of course this does not
|
||||
/// apply to internal mutability of the wrapped data. A good use case of this structure is when you
|
||||
/// want to pass an ownership to a structure, allow access all its public fields, but do not allow
|
||||
/// their modification.
|
||||
#[derive(Clone,Copy,Default)]
|
||||
pub struct Immutable<T> {
|
||||
data : T
|
||||
}
|
||||
|
||||
/// Constructor of the `Immutable` struct.
|
||||
#[allow(non_snake_case)]
|
||||
pub fn Immutable<T>(data:T) -> Immutable<T> {
|
||||
Immutable {data}
|
||||
}
|
||||
|
||||
impl<T:Debug> Debug for Immutable<T> {
|
||||
fn fmt(&self, f:&mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
self.data.fmt(f)
|
||||
}
|
||||
}
|
||||
|
||||
impl<T:Display> Display for Immutable<T> {
|
||||
fn fmt(&self, f:&mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
self.data.fmt(f)
|
||||
}
|
||||
}
|
||||
|
||||
impl<T:Clone> CloneRef for Immutable<T> {
|
||||
fn clone_ref(&self) -> Self {
|
||||
Self {data:self.data.clone()}
|
||||
}
|
||||
}
|
||||
|
||||
impl<T> AsRef<T> for Immutable<T> {
|
||||
fn as_ref(&self) -> &T {
|
||||
&self.data
|
||||
}
|
||||
}
|
||||
|
||||
impl<T> std::borrow::Borrow<T> for Immutable<T> {
|
||||
fn borrow(&self) -> &T {
|
||||
&self.data
|
||||
}
|
||||
}
|
||||
|
||||
impl<T> Deref for Immutable<T> {
|
||||
type Target = T;
|
||||
fn deref(&self) -> &Self::Target {
|
||||
&self.data
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// ==============
|
||||
// === ToImpl ===
|
||||
// ==============
|
||||
|
||||
/// Provides method `to`, which is just like `into` but allows fo superfish syntax.
|
||||
pub trait ToImpl: Sized {
|
||||
fn to<P>(self) -> P where Self:Into<P> {
|
||||
self.into()
|
||||
}
|
||||
}
|
||||
impl<T> ToImpl for T {}
|
||||
|
||||
// TODO
|
||||
// This impl should be hidden behind a flag. Not everybody using prelude want to import nalgebra.
|
||||
impl <T,R,C,S> TypeDisplay for nalgebra::Matrix<T,R,C,S>
|
||||
where T:nalgebra::Scalar, R:nalgebra::DimName, C:nalgebra::DimName {
|
||||
fn type_display() -> String {
|
||||
let cols = <C as nalgebra::DimName>::dim();
|
||||
let rows = <R as nalgebra::DimName>::dim();
|
||||
let item = type_name::<T>();
|
||||
match cols {
|
||||
1 => format!("Vector{}<{}>" , rows, item),
|
||||
_ => format!("Matrix{}x{}<{}>" , rows, cols, item)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[macro_export]
|
||||
macro_rules! clone_boxed {
|
||||
( $name:ident ) => { paste::item! {
|
||||
#[allow(missing_docs)]
|
||||
pub trait [<CloneBoxedFor $name>] {
|
||||
fn clone_boxed(&self) -> Box<dyn $name>;
|
||||
}
|
||||
|
||||
impl<T:Clone+$name+'static> [<CloneBoxedFor $name>] for T {
|
||||
fn clone_boxed(&self) -> Box<dyn $name> {
|
||||
Box::new(self.clone())
|
||||
}
|
||||
}
|
||||
|
||||
impl Clone for Box<dyn $name> {
|
||||
fn clone(&self) -> Self {
|
||||
self.clone_boxed()
|
||||
}
|
||||
}
|
||||
}}
|
||||
}
|
||||
|
||||
/// Alias for `for<'t> &'t Self : Into<T>`.
|
||||
pub trait RefInto<T> = where for<'t> &'t Self : Into<T>;
|
||||
|
||||
|
||||
|
||||
// =================
|
||||
// === CloneCell ===
|
||||
// =================
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct CloneCell<T> {
|
||||
data : UnsafeCell<T>
|
||||
}
|
||||
|
||||
impl<T> CloneCell<T> {
|
||||
pub fn new(elem:T) -> CloneCell<T> {
|
||||
CloneCell { data:UnsafeCell::new(elem) }
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
pub fn get(&self) -> T where T:Clone {
|
||||
unsafe {(*self.data.get()).clone()}
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
pub fn set(&self, elem:T) {
|
||||
unsafe { *self.data.get() = elem; }
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
pub fn take(&self) -> T where T:Default {
|
||||
let ptr:&mut T = unsafe { &mut *self.data.get() };
|
||||
std::mem::take(ptr)
|
||||
}
|
||||
}
|
||||
|
||||
impl<T:Clone> Clone for CloneCell<T> {
|
||||
fn clone(&self) -> Self {
|
||||
Self::new(self.get())
|
||||
}
|
||||
}
|
||||
|
||||
impl<T:Default> Default for CloneCell<T> {
|
||||
fn default() -> Self {
|
||||
Self::new(default())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// =================
|
||||
// === CloneCell ===
|
||||
// =================
|
||||
|
||||
#[derive(Debug)]
|
||||
pub struct CloneRefCell<T:?Sized> {
|
||||
data : UnsafeCell<T>
|
||||
}
|
||||
|
||||
impl<T> CloneRefCell<T> {
|
||||
pub fn new(elem:T) -> CloneRefCell<T> {
|
||||
CloneRefCell { data:UnsafeCell::new(elem) }
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
pub fn get(&self) -> T where T:CloneRef {
|
||||
unsafe {(*self.data.get()).clone_ref()}
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
pub fn set(&self, elem:T) {
|
||||
unsafe { *self.data.get() = elem; }
|
||||
}
|
||||
|
||||
#[allow(unsafe_code)]
|
||||
pub fn take(&self) -> T where T:Default {
|
||||
let ptr:&mut T = unsafe { &mut *self.data.get() };
|
||||
std::mem::take(ptr)
|
||||
}
|
||||
}
|
||||
|
||||
impl<T:CloneRef> Clone for CloneRefCell<T> {
|
||||
fn clone(&self) -> Self {
|
||||
Self::new(self.get())
|
||||
}
|
||||
}
|
||||
|
||||
impl<T:CloneRef> CloneRef for CloneRefCell<T> {
|
||||
fn clone_ref(&self) -> Self {
|
||||
Self::new(self.get())
|
||||
}
|
||||
}
|
||||
|
||||
impl<T:Default> Default for CloneRefCell<T> {
|
||||
fn default() -> Self {
|
||||
Self::new(default())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// ================================
|
||||
// === RefCell<Option<T>> Utils ===
|
||||
// ================================
|
||||
|
||||
pub trait RefcellOptionOps<T> {
|
||||
fn clear(&self);
|
||||
fn set(&self, val:T);
|
||||
fn set_if_none(&self, val:T);
|
||||
}
|
||||
|
||||
impl<T> RefcellOptionOps<T> for RefCell<Option<T>> {
|
||||
fn clear(&self) {
|
||||
*self.borrow_mut() = None;
|
||||
}
|
||||
|
||||
fn set(&self, val:T) {
|
||||
*self.borrow_mut() = Some(val);
|
||||
}
|
||||
|
||||
fn set_if_none(&self, val:T) {
|
||||
let mut ptr = self.borrow_mut();
|
||||
if ptr.is_some() { panic!("The value was already set.") }
|
||||
*ptr = Some(val)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// ================================
|
||||
// === Strong / Weak References ===
|
||||
// ================================
|
||||
|
||||
/// Abstraction for a strong reference like `Rc` or newtypes over it.
|
||||
pub trait StrongRef : CloneRef {
|
||||
/// Downgraded reference type.
|
||||
type WeakRef : WeakRef<StrongRef=Self>;
|
||||
/// Creates a new weak reference of this allocation.
|
||||
fn downgrade(&self) -> Self::WeakRef;
|
||||
}
|
||||
|
||||
/// Abstraction for a weak reference like `Weak` or newtypes over it.
|
||||
pub trait WeakRef : CloneRef {
|
||||
/// Upgraded reference type.
|
||||
type StrongRef : StrongRef<WeakRef=Self>;
|
||||
/// Attempts to upgrade the weak referenc to a strong one, delaying dropping of the inner value
|
||||
/// if successful.
|
||||
fn upgrade(&self) -> Option<Self::StrongRef>;
|
||||
}
|
||||
|
||||
impl<T:?Sized> StrongRef for Rc<T> {
|
||||
type WeakRef = Weak<T>;
|
||||
fn downgrade(&self) -> Self::WeakRef {
|
||||
Rc::downgrade(&self)
|
||||
}
|
||||
}
|
||||
|
||||
impl<T:?Sized> WeakRef for Weak<T> {
|
||||
type StrongRef = Rc<T>;
|
||||
fn upgrade(&self) -> Option<Self::StrongRef> {
|
||||
Weak::upgrade(self)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
// ==================
|
||||
// === Result Ops ===
|
||||
// ==================
|
||||
|
||||
/// Allows extracting the element from `Result<T,T>` for any `T`.
|
||||
#[allow(missing_docs)]
|
||||
pub trait ResultGet {
|
||||
type Item;
|
||||
/// Allows extracting the element from `Result<T,T>` for any `T`.
|
||||
fn unwrap_both(self) -> Self::Item;
|
||||
}
|
||||
|
||||
impl<T> ResultGet for Result<T,T> {
|
||||
type Item = T;
|
||||
fn unwrap_both(self) -> T {
|
||||
match self {
|
||||
Ok (t) => t,
|
||||
Err (t) => t,
|
||||
}
|
||||
}
|
||||
}
|
@ -1,15 +0,0 @@
|
||||
//! This module defines utilities for working with the `Vec` type.
|
||||
|
||||
/// Adds mapping methods to the `Vec` type.
|
||||
pub trait VecOps {
|
||||
type Item;
|
||||
fn extended<I:IntoIterator<Item=Self::Item>>(self, iter:I) -> Self;
|
||||
}
|
||||
|
||||
impl<T> VecOps for Vec<T> {
|
||||
type Item = T;
|
||||
fn extended<I:IntoIterator<Item=Self::Item>>(mut self, iter:I) -> Self {
|
||||
self.extend(iter);
|
||||
self
|
||||
}
|
||||
}
|
@ -4,8 +4,6 @@ version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
||||
|
||||
[workspace]
|
||||
|
||||
[dependencies]
|
||||
glob = "0.3.0"
|
||||
toml = "0.5.5"
|
||||
|
@ -5,8 +5,8 @@ use std::path::PathBuf;
|
||||
|
||||
/// List of workspace members that should not be tested by wasm-pack test.
|
||||
/// (e.g. because they do not target wasm at all)
|
||||
const PACKAGE_BLACKLIST: [&str; 2] =
|
||||
["gui/src/rust/test/build", "gui/src/rust/ide/file-manager/mock-server"];
|
||||
const PACKAGE_BLACKLIST: [&str; 3] =
|
||||
["gui/src/rust/test", "gui/src/rust/ide/file-manager/mock-server", "lib/rust/build-utils"];
|
||||
|
||||
/// Attributes that denote WASM tests.
|
||||
const WASM_TEST_ATTRIBUTES: [&str; 2] = ["#[wasm_bindgen_test]", "#[wasm_bindgen_test(async)]"];
|
||||
@ -87,7 +87,7 @@ fn main() {
|
||||
let wasm_pack_args = std::env::args().skip(1).collect::<Vec<_>>();
|
||||
let cargo_toml_root = parse_toml("Cargo.toml");
|
||||
let all_members = get_workspace_members(cargo_toml_root);
|
||||
let tested_members = all_members.iter().filter(|p| to_be_tested(&p));
|
||||
let tested_members = all_members.iter().filter(|p| to_be_tested(p));
|
||||
|
||||
for member in tested_members {
|
||||
println!("Running tests for {}", member);
|
||||
|
@ -1,5 +1,5 @@
|
||||
[package]
|
||||
name = "ensogl-build-utilities"
|
||||
name = "enso-build-utilities"
|
||||
version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
@ -1,3 +1,6 @@
|
||||
//! A crate with many utilities for build scripts, for example downloading packages form GitHub or
|
||||
//! easier management of env vars and paths.
|
||||
|
||||
#![feature(trait_alias)]
|
||||
|
||||
use std::fmt::Display;
|
@ -7,4 +7,4 @@ edition = "2018"
|
||||
[lib]
|
||||
|
||||
[dependencies]
|
||||
enso-prelude = { path = "../../../../../lib/rust/prelude" }
|
||||
enso-prelude = { path = "../prelude" }
|
@ -9,4 +9,4 @@ edition = "2018"
|
||||
[features]
|
||||
|
||||
[dependencies]
|
||||
enso-prelude = { path = "../../../../../lib/rust/prelude" }
|
||||
enso-prelude = { path = "../prelude" }
|
@ -1,12 +1,13 @@
|
||||
[package]
|
||||
name = "enso-config"
|
||||
name = "config-reader"
|
||||
version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
[lib]
|
||||
crate-type = ["rlib", "cdylib"]
|
||||
|
||||
[build-dependencies]
|
||||
[dependencies]
|
||||
serde = { version = "1.0" }
|
||||
serde_yaml = { version = "=0.8.14" }
|
||||
Inflector = { version = "0.11.4" }
|
127
lib/rust/config-reader/src/lib.rs
Normal file
127
lib/rust/config-reader/src/lib.rs
Normal file
@ -0,0 +1,127 @@
|
||||
//! Build Configuration Reader
|
||||
//!
|
||||
//! This crate contains an utility for build.rs scripts: the [`generate_config_module_from_yaml`]
|
||||
//! function, which creates a rust module in OUT_DIR with a set of constants based on given
|
||||
//! configuration file in YAML format.
|
||||
//!
|
||||
//! Keeping configuration in yaml can be useful when the project consists of many parts in different
|
||||
//! languages.
|
||||
//!
|
||||
//! # Example
|
||||
//!
|
||||
//! Let assume there is a `config.yaml` file in the parent directory of some crate:
|
||||
//!
|
||||
//! ```yaml
|
||||
//! foo: "bar"
|
||||
//! bar: "buz"
|
||||
//! ```
|
||||
//!
|
||||
//! To generate a module with configuration, the build script should look as follows:
|
||||
//! ```no_run
|
||||
//! use config_reader::generate_config_module_from_yaml;
|
||||
//!
|
||||
//! const CONFIG_PATH: &str = "../config.yaml";
|
||||
//!
|
||||
//! fn main() {
|
||||
//! println!("cargo:rerun-if-changed={}", CONFIG_PATH);
|
||||
//! println!("cargo:rerun-if-changed=build.rs");
|
||||
//! generate_config_module_from_yaml(CONFIG_PATH);
|
||||
//! }
|
||||
//! ```
|
||||
//!
|
||||
//! This will generate the following config.rs in the `OUT_DIR`:
|
||||
//! ```no_run
|
||||
//! // THIS IS AN AUTOGENERATED FILE BASED ON THE '../config.yaml' CONFIG FILE. DO NOT MODIFY IT.
|
||||
//! // Generated by the build script in <path-to-crate>
|
||||
//! pub mod generated {
|
||||
//! #[derive(Copy, Clone, Debug)]
|
||||
//! pub struct Config {
|
||||
//! pub foo: &'static str,
|
||||
//! pub bar: &'static str,
|
||||
//! }
|
||||
//!
|
||||
//! pub const CONFIG: Config = Config { foo: "bar", bar: "buz" };
|
||||
//!
|
||||
//! #[allow(non_upper_case_globals)]
|
||||
//! pub const foo: &str = "bar";
|
||||
//! #[allow(non_upper_case_globals)]
|
||||
//! pub const bar: &str = "buz";
|
||||
//! }
|
||||
//! ```
|
||||
//!
|
||||
//! which can be then included in your crate:
|
||||
//! ```ignore
|
||||
//! include!(concat!(env!("OUT_DIR"), "/config.rs"));
|
||||
//!
|
||||
//! fn main() {
|
||||
//! println!("Foo parameter: {}", generated::CONFIG.foo);
|
||||
//! }
|
||||
|
||||
use inflector::*;
|
||||
use serde_yaml::Value;
|
||||
use std::fs;
|
||||
|
||||
|
||||
/// Generate module with constants read from given configuration file in YAML format.
|
||||
///
|
||||
/// For examples, see the [`crate`] documentation.
|
||||
///
|
||||
/// # Panics
|
||||
///
|
||||
/// The function may panic when:
|
||||
/// - `CARGO_MANIFEST_DIR` or `OUT_DIR` env variable is missing.
|
||||
/// - The provided config file is not in the YAML format.
|
||||
pub fn generate_config_module_from_yaml(config_path: impl AsRef<std::path::Path>) {
|
||||
let f = std::fs::File::open(config_path.as_ref()).unwrap();
|
||||
let value: Value = serde_yaml::from_reader(f).unwrap();
|
||||
let manifest_dir = std::env::var("CARGO_MANIFEST_DIR")
|
||||
.expect("missing environment variable CARGO_MANIFEST_DIR:");
|
||||
|
||||
let indent = " ".repeat(4);
|
||||
let mut def = "".to_string();
|
||||
let mut inst = "".to_string();
|
||||
let mut vars = "".to_string();
|
||||
match value {
|
||||
Value::Mapping(mapping) =>
|
||||
for (key, value) in mapping {
|
||||
let key = key.as_str().unwrap().to_snake_case();
|
||||
let value = value.as_str().unwrap();
|
||||
def.push_str(&format!("{}pub {}: &'static str,\n", indent, key));
|
||||
inst.push_str(&format!("{}{}: \"{}\",\n", indent, key, value));
|
||||
vars.push_str(&format!(
|
||||
"#[allow(non_upper_case_globals)]\npub const {}: &str = \"{}\";\n",
|
||||
key, value
|
||||
));
|
||||
},
|
||||
_ => panic!("Unexpected config format."),
|
||||
}
|
||||
|
||||
def = def.trim_end().to_string();
|
||||
inst = inst.trim_end().to_string();
|
||||
|
||||
let file = format!(
|
||||
r#"// THIS IS AN AUTOGENERATED FILE BASED ON THE '{config_path}' CONFIG FILE. DO NOT MODIFY IT.
|
||||
// Generated by the build script in {my_path}.
|
||||
|
||||
pub mod generated {{
|
||||
|
||||
#[derive(Copy, Clone, Debug)]
|
||||
pub struct Config {{
|
||||
{def}
|
||||
}}
|
||||
|
||||
pub const CONFIG: Config = Config {{
|
||||
{inst}
|
||||
}};
|
||||
|
||||
{vars}
|
||||
}}"#,
|
||||
my_path = manifest_dir,
|
||||
config_path = config_path.as_ref().display(),
|
||||
def = def,
|
||||
inst = inst,
|
||||
vars = vars
|
||||
);
|
||||
let out_dir = std::env::var("OUT_DIR").expect("Missing environment variable OUT_DIR.");
|
||||
fs::write(out_dir + "/config.rs", file).ok();
|
||||
}
|
@ -10,5 +10,5 @@ crate-type = ["rlib", "cdylib"]
|
||||
[features]
|
||||
|
||||
[dependencies]
|
||||
ensogl-core = { path = "lib/core" }
|
||||
ensogl-text = { path = "lib/text" }
|
||||
ensogl-core = { path = "core" }
|
||||
ensogl-text = { path = "component/text" }
|
@ -1,5 +1,5 @@
|
||||
[package]
|
||||
name = "ensogl-theme"
|
||||
name = "ensogl-hardcoded-theme"
|
||||
version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
||||
@ -8,4 +8,4 @@ edition = "2018"
|
||||
crate-type = ["rlib", "cdylib"]
|
||||
|
||||
[dependencies]
|
||||
ensogl-core = { version = "0.1.0", path = "../core" }
|
||||
ensogl-core = { version = "0.1.0", path = "../../../core" }
|
9
lib/rust/ensogl/component/Cargo.toml
Normal file
9
lib/rust/ensogl/component/Cargo.toml
Normal file
@ -0,0 +1,9 @@
|
||||
[package]
|
||||
name = "ensogl-component"
|
||||
version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
@ -1,14 +1,14 @@
|
||||
[package]
|
||||
name = "ensogl-web"
|
||||
name = "ensogl-drop-manager"
|
||||
version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
||||
|
||||
[dependencies]
|
||||
ensogl-system-web = { path = "../../../lib/system/web" }
|
||||
enso-frp = { path = "../../../lib/frp" }
|
||||
enso-logger = { path = "../../../../../../lib/rust/logger"}
|
||||
enso-prelude = { path = "../../../../../../lib/rust/prelude"}
|
||||
enso-web = { path = "../../../web" }
|
||||
enso-frp = { path = "../../../frp" }
|
||||
enso-logger = { path = "../../../logger"}
|
||||
enso-prelude = { path = "../../../prelude"}
|
||||
js-sys = { version = "0.3.28" }
|
||||
wasm-bindgen = { version = "=0.2.58", features = ["nightly"] }
|
||||
wasm-bindgen-futures = { version = "0.4.8" }
|
1
lib/rust/ensogl/component/drop-manager/src/drop.rs
Normal file
1
lib/rust/ensogl/component/drop-manager/src/drop.rs
Normal file
@ -0,0 +1 @@
|
||||
|
@ -1,13 +1,29 @@
|
||||
//! The handlers for the files dropped on the web scene. The main object is [`Manager`]:
|
||||
//! it notifies about new files, and their metadata and with methods for reading them.
|
||||
|
||||
#![deny(unconditional_recursion)]
|
||||
#![warn(missing_copy_implementations)]
|
||||
#![warn(missing_debug_implementations)]
|
||||
#![warn(missing_docs)]
|
||||
#![warn(trivial_casts)]
|
||||
#![warn(trivial_numeric_casts)]
|
||||
#![warn(unsafe_code)]
|
||||
#![warn(unused_import_braces)]
|
||||
#![warn(unused_qualifications)]
|
||||
|
||||
/// Commonly used utilities.
|
||||
pub mod prelude {
|
||||
pub use enso_logger::DefaultWarningLogger as Logger;
|
||||
pub use enso_logger::*;
|
||||
pub use enso_prelude::*;
|
||||
}
|
||||
|
||||
use crate::prelude::*;
|
||||
|
||||
use crate::stream::BlobExt;
|
||||
use crate::stream::ReadableStreamDefaultReader;
|
||||
use crate::Error;
|
||||
|
||||
use enso_frp as frp;
|
||||
use enso_web::stream::BlobExt;
|
||||
use enso_web::stream::ReadableStreamDefaultReader;
|
||||
use enso_web::Error;
|
||||
use js_sys::Uint8Array;
|
||||
use wasm_bindgen::prelude::*;
|
||||
use wasm_bindgen::JsCast;
|
22
lib/rust/ensogl/component/gui/Cargo.toml
Normal file
22
lib/rust/ensogl/component/gui/Cargo.toml
Normal file
@ -0,0 +1,22 @@
|
||||
[package]
|
||||
name = "ensogl-gui-component"
|
||||
version = "0.1.0"
|
||||
authors = ["Enso Team <contact@enso.org>"]
|
||||
edition = "2018"
|
||||
|
||||
[lib]
|
||||
crate-type = ["rlib", "cdylib"]
|
||||
|
||||
[dependencies]
|
||||
enso-frp = { path = "../../../frp" }
|
||||
enso-logger = { path = "../../../logger"}
|
||||
enso-prelude = { path = "../../../prelude"}
|
||||
enso-shapely = { path = "../../../shapely/impl"}
|
||||
enso-types = { path = "../../../types" }
|
||||
ensogl-core = { path = "../../core" }
|
||||
ensogl-text = { path = "../text" }
|
||||
ensogl-hardcoded-theme = { path = "../../app/theme/hardcoded" }
|
||||
|
||||
[dev-dependencies]
|
||||
wasm-bindgen-test = { version = "0.3.8" }
|
||||
float_eq = "0.5"
|
@ -12,8 +12,8 @@ use ensogl_core::display;
|
||||
use ensogl_core::display::shape::primitive::StyleWatch;
|
||||
use ensogl_core::display::shape::*;
|
||||
use ensogl_core::DEPRECATED_Animation;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_theme as theme;
|
||||
|
||||
|
||||
// =================
|
||||
@ -42,7 +42,7 @@ pub mod arrow {
|
||||
let height = Var::<Pixels>::from("input_size.y");
|
||||
let triangle = Triangle(width,height);
|
||||
let triangle_down = triangle.rotate(Var::<f32>::from(std::f32::consts::PI));
|
||||
let color_path = ensogl_theme::graph_editor::visualization::action_bar::icon;
|
||||
let color_path = ensogl_hardcoded_theme::graph_editor::visualization::action_bar::icon;
|
||||
let icon_color = style.get_color(color_path);
|
||||
let triangle_colored = triangle_down.fill(icon_color);
|
||||
|
@ -12,7 +12,7 @@ use ensogl_core::display::shape::*;
|
||||
use ensogl_core::display::traits::*;
|
||||
use ensogl_text as text;
|
||||
|
||||
use ensogl_theme::component::label as theme;
|
||||
use ensogl_hardcoded_theme::component::label as theme;
|
||||
|
||||
|
||||
|
@ -16,7 +16,7 @@ use ensogl_core::display;
|
||||
use ensogl_core::display::scene::layer::LayerId;
|
||||
use ensogl_core::display::shape::*;
|
||||
use ensogl_core::DEPRECATED_Animation;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
|
||||
pub use entry::Entry;
|
||||
|
||||
@ -46,11 +46,11 @@ pub mod selection {
|
||||
(style:Style) {
|
||||
let sprite_width : Var<Pixels> = "input_size.x".into();
|
||||
let sprite_height : Var<Pixels> = "input_size.y".into();
|
||||
let padding_inner_x = style.get_number(ensogl_theme::application::searcher::selection::padding::horizontal);
|
||||
let padding_inner_y = style.get_number(ensogl_theme::application::searcher::selection::padding::vertical);
|
||||
let padding_inner_x = style.get_number(ensogl_hardcoded_theme::application::searcher::selection::padding::horizontal);
|
||||
let padding_inner_y = style.get_number(ensogl_hardcoded_theme::application::searcher::selection::padding::vertical);
|
||||
let width = sprite_width - 2.0.px() * SHAPE_PADDING + 2.0.px() * padding_inner_x;
|
||||
let height = sprite_height - 2.0.px() * SHAPE_PADDING + 2.0.px() * padding_inner_y;
|
||||
let color = style.get_color(ensogl_theme::widget::list_view::highlight);
|
||||
let color = style.get_color(ensogl_hardcoded_theme::widget::list_view::highlight);
|
||||
let rect = Rect((&width,&height)).corners_radius(CORNER_RADIUS_PX.px());
|
||||
let shape = rect.fill(color);
|
||||
shape.into()
|
||||
@ -130,7 +130,7 @@ impl<E: Entry> Model<E> {
|
||||
// FIXME : StyleWatch is unsuitable here, as it was designed as an internal tool for shape
|
||||
// system (#795)
|
||||
let styles = StyleWatch::new(&self.app.display.scene().style_sheet);
|
||||
styles.get_number(ensogl_theme::application::searcher::padding)
|
||||
styles.get_number(ensogl_hardcoded_theme::application::searcher::padding)
|
||||
}
|
||||
|
||||
/// Update the displayed entries list when _view_ has changed - the list was scrolled or
|
@ -7,8 +7,8 @@ use enso_frp as frp;
|
||||
use ensogl_core::application::Application;
|
||||
use ensogl_core::display;
|
||||
use ensogl_core::display::shape::StyleWatchFrp;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
use ensogl_text as text;
|
||||
use ensogl_theme as theme;
|
||||
|
||||
|
||||
|
@ -9,7 +9,7 @@ use ensogl_core::data::color;
|
||||
use ensogl_core::display::shape::StyleWatchFrp;
|
||||
use ensogl_core::display::shape::*;
|
||||
use ensogl_core::Animation;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
|
||||
use crate::component;
|
||||
use crate::selector;
|
@ -7,7 +7,7 @@ use enso_frp::io::Mouse;
|
||||
use enso_frp::Network;
|
||||
use ensogl_core::display::object::ObjectOps;
|
||||
use ensogl_core::display::shape::StyleWatchFrp;
|
||||
use ensogl_theme as theme;
|
||||
use ensogl_hardcoded_theme as theme;
|
||||
|
||||
use crate::shadow;
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user