Merge branch 'master' into alixander/readme-update
54
README.md
|
|
@ -42,27 +42,61 @@
|
|||
|
||||
## Quickstart (CLI)
|
||||
|
||||
To install:
|
||||
|
||||
```sh
|
||||
# With --dryrun the install script will print the commands it will use
|
||||
# to install without actually installing so you know what it's going to do.
|
||||
curl -fsSL https://d2lang.com/install.sh | sh -s -- --dryrun
|
||||
# If things look good, install for real.
|
||||
curl -fsSL https://d2lang.com/install.sh | sh -s --
|
||||
```
|
||||
|
||||
The most convenient way to use D2 is to just run it as a CLI executable to
|
||||
produce SVGs from `.d2` files.
|
||||
|
||||
```sh
|
||||
go install oss.terrastruct.com/d2
|
||||
|
||||
echo 'x -> y -> z' > in.d2
|
||||
d2 --watch in.d2 out.svg
|
||||
```
|
||||
|
||||
A browser window will open with `out.svg` and live-reload on changes to `in.d2`.
|
||||
|
||||
### MacOS
|
||||
### Installing from source
|
||||
|
||||
Homebrew package coming soon.
|
||||
```sh
|
||||
go install oss.terrastruct.com/d2
|
||||
```
|
||||
|
||||
### Linux/Windows
|
||||
### Install
|
||||
|
||||
We have precompiled binaries on the [releases](https://github.com/terrastruct/d2/releases)
|
||||
page. D2 will be added to OS-respective package managers soon.
|
||||
page for macOS and Linux. For both amd64 and arm64. We will release package manager
|
||||
distributions like .rpm, .deb soon. We also want to get D2 on Homebrew for macOS
|
||||
and release a docker image
|
||||
|
||||
For now, if you don't want to install from source, just use our install script:
|
||||
Pass `--tala` if you want to install our improved but closed source layout engine
|
||||
tala. See the docs on [layout engine](#layout-engine) below.
|
||||
|
||||
```sh
|
||||
# With --dryrun the install script will print the commands it will use
|
||||
# to install without actually installing so you know what it's going to do.
|
||||
curl -fsSL https://d2lang.com/install.sh | sh -s -- --dryrun
|
||||
# If things look good, install for real.
|
||||
curl -fsSL https://d2lang.com/install.sh | sh -s --
|
||||
```
|
||||
|
||||
To uninstall:
|
||||
|
||||
```sh
|
||||
curl -fsSL https://d2lang.com/install.sh | sh -s -- --uninstall --dryrun
|
||||
# If things look good, install for real.
|
||||
curl -fsSL https://d2lang.com/install.sh | sh -s -- --uninstall
|
||||
```
|
||||
|
||||
> warn: Our binary releases aren't fully portable like normal Go binaries due to the C
|
||||
> dependency on v8go for executing dagre.
|
||||
|
||||
## Quickstart (library)
|
||||
|
||||
|
|
@ -156,6 +190,14 @@ D2 intends to integrate with a variety of layout engines, e.g. `dot`, as well as
|
|||
single-purpose layout types like sequence diagrams. You can choose whichever layout engine
|
||||
you like and works best for the diagram you're making.
|
||||
|
||||
You can just pass `--tala` to the install script to install tala as well:
|
||||
|
||||
```
|
||||
curl -fsSL https://d2lang.com/install.sh | sh -s -- --tala --dryrun
|
||||
# If things look good, install for real.
|
||||
curl -fsSL https://d2lang.com/install.sh | sh -s -- --tala
|
||||
```
|
||||
|
||||
## Comparison
|
||||
|
||||
For a comparison against other popular text-to-diagram tools, see
|
||||
|
|
|
|||
49
ci/release/README.md
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
# release
|
||||
|
||||
## _install.sh
|
||||
|
||||
The template for the install script in the root of the repository.
|
||||
|
||||
### gen_install.sh
|
||||
|
||||
Generates the install.sh script in the root of the repository by prepending the libraries
|
||||
it depends on from ../sub/lib.
|
||||
|
||||
## release.sh
|
||||
|
||||
- ./release.sh is the top level script to generate a new release.
|
||||
Run with --help for usage.
|
||||
|
||||
## build.sh
|
||||
|
||||
- ./build.sh builds the release archives for each platform into ./build/<VERSION>/*.tar.gz
|
||||
Run with --help for usage.
|
||||
|
||||
> note: Remember for production releases you need to set the $TSTRUCT_OS_ARCH_BUILDER
|
||||
> variables as we must compile d2 directly on each release target to include dagre.
|
||||
> See https://github.com/terrastruct/d2/issues/31
|
||||
|
||||
Use `--host-only` to build only the release for the host's OS-ARCH pair.
|
||||
|
||||
### build_docker.sh
|
||||
|
||||
Helper script called by build.sh to build D2 on each linux runner inside Docker.
|
||||
The Dockerfile is in ./builders/Dockerfile
|
||||
|
||||
### _build.sh
|
||||
|
||||
Called by build.sh (with --local or macOS) or build_docker.sh (on linux) to create the
|
||||
release archive.
|
||||
|
||||
Do not invoke directly. If you want to produce a build for a single platform run build.sh
|
||||
as so:
|
||||
|
||||
```sh
|
||||
# To only build the linux-amd64 release.
|
||||
./build.sh --run=linux-amd64
|
||||
```
|
||||
|
||||
```sh
|
||||
# To only build the linux-amd64 release locally.
|
||||
./build.sh --local --run=linux-amd64
|
||||
```
|
||||
22
ci/release/_build.sh
Executable file
|
|
@ -0,0 +1,22 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/../.."
|
||||
. ./ci/sub/lib.sh
|
||||
|
||||
sh_c mkdir -p "$HW_BUILD_DIR"
|
||||
sh_c rsync --recursive --perms --delete \
|
||||
--human-readable --copy-links ./ci/release/template/ "$HW_BUILD_DIR/"
|
||||
VERSION=$VERSION sh_c eval "'$HW_BUILD_DIR/README.md.sh'" \> "'$HW_BUILD_DIR/README.md'"
|
||||
sh_c rm -f "$HW_BUILD_DIR/README.md.sh"
|
||||
sh_c find "$HW_BUILD_DIR" -exec touch {} \\\;
|
||||
|
||||
export GOOS=$(goos "$OS")
|
||||
export GOARCH="$ARCH"
|
||||
sh_c mkdir -p "$HW_BUILD_DIR/bin"
|
||||
sh_c go build -ldflags "'-X oss.terrastruct.com/d2/lib/version.Version=$VERSION'" \
|
||||
-o "$HW_BUILD_DIR/bin/d2" ./cmd/d2
|
||||
|
||||
ARCHIVE=$PWD/$ARCHIVE
|
||||
cd "$(dirname "$HW_BUILD_DIR")"
|
||||
sh_c tar -czf "$ARCHIVE" "$(basename "$HW_BUILD_DIR")"
|
||||
cd ->/dev/null
|
||||
401
ci/release/_install.sh
Executable file
|
|
@ -0,0 +1,401 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
cd -- "$(dirname "$0")/../sub/lib"
|
||||
. ./log.sh
|
||||
. ./flag.sh
|
||||
. ./release.sh
|
||||
cd - >/dev/null
|
||||
|
||||
help() {
|
||||
arg0="$0"
|
||||
if [ "$0" = sh ]; then
|
||||
arg0="curl -fsSL https://d2lang.com/install.sh | sh -s --"
|
||||
fi
|
||||
|
||||
cat <<EOF
|
||||
usage: $arg0 [--dry-run] [--version vX.X.X] [--edge] [--method detect] [--prefix /usr/local]
|
||||
[--tala latest] [--force] [--uninstall]
|
||||
|
||||
install.sh automates the installation of D2 onto your system. It currently only supports
|
||||
the installation of standalone releases from GitHub. If you pass --edge, it will clone the
|
||||
source, build a release and install from it.
|
||||
|
||||
Flags:
|
||||
|
||||
--dry-run
|
||||
Pass to have install.sh show the install method and flags that will be used to install
|
||||
without executing them. Very useful to understand what changes it will make to your system.
|
||||
|
||||
--version vX.X.X
|
||||
Pass to have install.sh install the given version instead of the latest version.
|
||||
|
||||
--edge
|
||||
Pass to build and install D2 from source. This will still use --method if set to detect
|
||||
to install the release archive for your OS, whether it's apt, yum, brew or standalone
|
||||
if an unsupported package manager is used. To install from source like a dev would,
|
||||
use go install oss.terrastruct.com/d2
|
||||
note: currently unimplemented.
|
||||
|
||||
--method [detect | standalone]
|
||||
Pass to control the method by which to install. Right now we only support standalone
|
||||
releases from GitHub but later we'll add support for brew, rpm, deb and more.
|
||||
note: currently unimplemented.
|
||||
|
||||
- detect is currently unimplemented but would use your OS's package manager
|
||||
automatically.
|
||||
- standalone installs a standalone release archive into the unix hierarchy path
|
||||
specified by --prefix which defaults to /usr/local
|
||||
Ensure /usr/local/bin is in your \$PATH to use it.
|
||||
|
||||
--prefix /usr/local
|
||||
Controls the unix hierarchy path into which standalone releases are installed.
|
||||
Defaults to /usr/local. You may also want to use ~/.local to avoid needing sudo.
|
||||
Remember that whatever you use, you must have the bin directory of your prefix
|
||||
path in \$PATH to execute the d2 binary. For example, if my prefix directory is
|
||||
/usr/local then my \$PATH must contain /usr/local/bin.
|
||||
|
||||
--tala [latest]
|
||||
Install Terrastruct's closed source TALA for improved layouts.
|
||||
See https://github.com/terrastruct/TALA
|
||||
It optionally takes an argument of the TALA version to install.
|
||||
Installation obeys all other flags, just like the installation of d2. For example,
|
||||
the d2plugin-tala binary will be installed into /usr/local/bin/d2plugin-tala
|
||||
|
||||
--force:
|
||||
Force installation over the existing version even if they match. It will attempt a
|
||||
uninstall first before installing the new version. The installed release tree
|
||||
will be deleted from /usr/local/lib/d2/d2-<VERSION> but the release archive in
|
||||
~/.cache/d2/release will remain.
|
||||
|
||||
--uninstall:
|
||||
Uninstall the installed version of d2. The --method and --prefix flags must be the same
|
||||
as for installation. i.e if you used --method standalone you must again use --method
|
||||
standalone for uninstallation. With detect, the install script will try to use the OS
|
||||
package manager to uninstall instead.
|
||||
|
||||
All downloaded archives are cached into ~/.cache/d2/release. use \$XDG_CACHE_HOME to change
|
||||
path of the cached assets. Release archives are unarchived into /usr/local/lib/d2/d2-<VERSION>
|
||||
|
||||
note: Deleting the unarchived releases will cause --uninstall to stop working.
|
||||
|
||||
You can rerun install.sh to update your version of D2. install.sh will avoid reinstalling
|
||||
if the installed version is the latest unless --force is passed.
|
||||
EOF
|
||||
}
|
||||
|
||||
main() {
|
||||
METHOD=standalone
|
||||
while :; do
|
||||
flag_parse "$@"
|
||||
case "$FLAG" in
|
||||
h|help)
|
||||
help
|
||||
return 0
|
||||
;;
|
||||
dry-run)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
DRY_RUN=1
|
||||
;;
|
||||
version)
|
||||
flag_nonemptyarg && shift "$FLAGSHIFT"
|
||||
VERSION=$FLAGARG
|
||||
;;
|
||||
tala)
|
||||
shift "$FLAGSHIFT"
|
||||
TALA=${FLAGARG:-latest}
|
||||
;;
|
||||
edge)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
EDGE=1
|
||||
echoerr "$FLAGRAW is currently unimplemented"
|
||||
return 1
|
||||
;;
|
||||
method)
|
||||
flag_nonemptyarg && shift "$FLAGSHIFT"
|
||||
METHOD=$FLAGARG
|
||||
echoerr "$FLAGRAW is currently unimplemented"
|
||||
return 1
|
||||
;;
|
||||
prefix)
|
||||
flag_nonemptyarg && shift "$FLAGSHIFT"
|
||||
export PREFIX=$FLAGARG
|
||||
;;
|
||||
force)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
FORCE=1
|
||||
;;
|
||||
uninstall)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
UNINSTALL=1
|
||||
;;
|
||||
'')
|
||||
shift "$FLAGSHIFT"
|
||||
break
|
||||
;;
|
||||
*)
|
||||
flag_errusage "unrecognized flag $FLAGRAW"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ $# -gt 0 ]; then
|
||||
flag_errusage "no arguments are accepted"
|
||||
fi
|
||||
|
||||
REPO=${REPO:-terrastruct/d2}
|
||||
OS=$(os)
|
||||
ARCH=$(arch)
|
||||
if [ -z "${PREFIX-}" -a "$OS" = macos -a "$ARCH" = arm64 ]; then
|
||||
# M1 Mac's do not allow modifications to /usr/local even with sudo.
|
||||
PREFIX=$HOME/.local
|
||||
fi
|
||||
PREFIX=${PREFIX:-/usr/local}
|
||||
CACHE_DIR=$(cache_dir)
|
||||
mkdir -p "$CACHE_DIR"
|
||||
INSTALL_DIR=$PREFIX/lib/d2
|
||||
|
||||
if [ -n "${UNINSTALL-}" ]; then
|
||||
uninstall
|
||||
return 0
|
||||
fi
|
||||
|
||||
VERSION=${VERSION:-latest}
|
||||
if [ "$VERSION" = latest ]; then
|
||||
header "fetching latest release info"
|
||||
fetch_release_info
|
||||
fi
|
||||
|
||||
install
|
||||
}
|
||||
|
||||
install() {
|
||||
install_d2
|
||||
if [ -n "${TALA-}" ]; then
|
||||
# Run in subshell to avoid overwriting VERSION.
|
||||
TALA_VERSION="$( install_tala && echo "$VERSION" )"
|
||||
fi
|
||||
|
||||
COLOR=2 header success
|
||||
log "d2-$VERSION-$OS-$ARCH has been successfully installed into $PREFIX"
|
||||
if [ -n "${TALA-}" ]; then
|
||||
log "tala-$TALA_VERSION-$OS-$ARCH has been successfully installed into $PREFIX"
|
||||
fi
|
||||
if ! echo "$PATH" | grep -qF "$PREFIX/bin"; then
|
||||
logcat >&2 <<EOF
|
||||
Extend your \$PATH to use d2:
|
||||
export PATH=$PREFIX/bin:\$PATH
|
||||
Then run:
|
||||
${TALA+D2_LAYOUT=tala }d2 --help
|
||||
EOF
|
||||
else
|
||||
log " Run ${TALA+D2_LAYOUT=tala }d2 --help for usage."
|
||||
fi
|
||||
if ! manpath | grep -qF "$PREFIX/share/man"; then
|
||||
logcat >&2 <<EOF
|
||||
Extend your \$MANPATH to view d2's manpages:
|
||||
export MANPATH=$PREFIX/share/man\${MANPATH+:\$MANPATH}
|
||||
Then run:
|
||||
man d2
|
||||
EOF
|
||||
if [ -n "${TALA-}" ]; then
|
||||
log " man d2plugin-tala"
|
||||
fi
|
||||
else
|
||||
log " Run man d2 for detailed docs."
|
||||
if [ -n "${TALA-}" ]; then
|
||||
log " Run man d2plugin-tala for detailed docs."
|
||||
fi
|
||||
fi
|
||||
|
||||
log "Rerun the install script with --uninstall to uninstall"
|
||||
}
|
||||
|
||||
install_d2() {
|
||||
if command -v d2 >/dev/null; then
|
||||
INSTALLED_VERSION="$(d2 version)"
|
||||
if [ ! "${FORCE-}" -a "$VERSION" = "$INSTALLED_VERSION" ]; then
|
||||
log "skipping installation as version $VERSION is already installed."
|
||||
return 0
|
||||
fi
|
||||
log "uninstalling $INSTALLED_VERSION to install $VERSION"
|
||||
if ! uninstall_d2; then
|
||||
warn "failed to uninstall $INSTALLED_VERSION"
|
||||
fi
|
||||
fi
|
||||
|
||||
header "installing d2-$VERSION"
|
||||
install_standalone_d2
|
||||
}
|
||||
|
||||
install_standalone_d2() {
|
||||
ARCHIVE="d2-$VERSION-$OS-$ARCH.tar.gz"
|
||||
log "installing standalone release $ARCHIVE from github"
|
||||
|
||||
fetch_release_info
|
||||
asset_line=$(sh_c 'cat "$RELEASE_INFO" | grep -n "$ARCHIVE" | cut -d: -f1 | head -n1')
|
||||
asset_url=$(sh_c 'sed -n $((asset_line-3))p "$RELEASE_INFO" | sed "s/^.*: \"\(.*\)\",$/\1/g"')
|
||||
fetch_gh "$asset_url" "$CACHE_DIR/$ARCHIVE" 'application/octet-stream'
|
||||
|
||||
sh_c="sh_c"
|
||||
if ! is_prefix_writable; then
|
||||
sh_c="sudo_sh_c"
|
||||
fi
|
||||
|
||||
"$sh_c" tar -C "$INSTALL_DIR" -xzf "$CACHE_DIR/$ARCHIVE"
|
||||
"$sh_c" sh -c "'cd \"$INSTALL_DIR/d2-$VERSION\" && make install PREFIX=\"$PREFIX\"'"
|
||||
}
|
||||
|
||||
install_tala() {
|
||||
REPO="${REPO_TALA:-terrastruct/TALA}"
|
||||
VERSION=$TALA
|
||||
RELEASE_INFO=
|
||||
fetch_release_info
|
||||
header "installing tala-$VERSION"
|
||||
install_standalone_tala
|
||||
}
|
||||
|
||||
install_standalone_tala() {
|
||||
ARCHIVE="tala-$VERSION-$OS-$ARCH.tar.gz"
|
||||
log "installing standalone release $ARCHIVE from github"
|
||||
|
||||
asset_line=$(sh_c 'cat "$RELEASE_INFO" | grep -n "$ARCHIVE" | cut -d: -f1 | head -n1')
|
||||
asset_url=$(sh_c 'sed -n $((asset_line-3))p "$RELEASE_INFO" | sed "s/^.*: \"\(.*\)\",$/\1/g"')
|
||||
|
||||
fetch_gh "$asset_url" "$CACHE_DIR/$ARCHIVE" 'application/octet-stream'
|
||||
|
||||
sh_c="sh_c"
|
||||
if ! is_prefix_writable; then
|
||||
sh_c="sudo_sh_c"
|
||||
fi
|
||||
|
||||
"$sh_c" tar -C "$INSTALL_DIR" -xzf "$CACHE_DIR/$ARCHIVE"
|
||||
"$sh_c" sh -c "'cd \"$INSTALL_DIR/tala-$VERSION\" && make install PREFIX=\"$PREFIX\"'"
|
||||
}
|
||||
|
||||
uninstall() {
|
||||
if ! command -v d2 >/dev/null; then
|
||||
warn "no version of d2 installed"
|
||||
return 0
|
||||
fi
|
||||
INSTALLED_VERSION="$(d2 --version)"
|
||||
if ! uninstall_d2; then
|
||||
echoerr "failed to uninstall $INSTALLED_VERSION"
|
||||
return 1
|
||||
fi
|
||||
if [ "${TALA-}" ]; then
|
||||
if ! command -v d2plugin-tala >/dev/null; then
|
||||
warn "no version of tala installed"
|
||||
return 0
|
||||
fi
|
||||
INSTALLED_VERSION="$(d2plugin-tala --version)"
|
||||
if ! uninstall_tala; then
|
||||
echoerr "failed to uninstall tala $INSTALLED_VERSION"
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
|
||||
uninstall_d2() {
|
||||
header "uninstalling d2-$INSTALLED_VERSION"
|
||||
uninstall_standalone_d2
|
||||
}
|
||||
|
||||
uninstall_standalone_d2() {
|
||||
log "uninstalling standalone release of d2-$INSTALLED_VERSION"
|
||||
|
||||
if [ ! -e "$INSTALL_DIR/d2-$INSTALLED_VERSION" ]; then
|
||||
warn "missing standalone install release directory $INSTALL_DIR/d2-$INSTALLED_VERSION"
|
||||
warn "d2 have been installed via some other installation method."
|
||||
return 1
|
||||
fi
|
||||
|
||||
sh_c="sh_c"
|
||||
if ! is_prefix_writable; then
|
||||
sh_c="sudo_sh_c"
|
||||
fi
|
||||
|
||||
"$sh_c" sh -c "'cd \"$INSTALL_DIR/d2-$INSTALLED_VERSION\" && make uninstall PREFIX=\"$PREFIX\"'"
|
||||
"$sh_c" rm -rf "$INSTALL_DIR/d2-$INSTALLED_VERSION"
|
||||
}
|
||||
|
||||
uninstall_tala() {
|
||||
header "uninstalling tala-$INSTALLED_VERSION"
|
||||
uninstall_standalone_tala
|
||||
}
|
||||
|
||||
uninstall_standalone_tala() {
|
||||
log "uninstalling standalone release tala-$INSTALLED_VERSION"
|
||||
|
||||
if [ ! -e "$INSTALL_DIR/tala-$INSTALLED_VERSION" ]; then
|
||||
warn "missing standalone install release directory $INSTALL_DIR/tala-$INSTALLED_VERSION"
|
||||
warn "tala have been installed via some other installation method."
|
||||
return 1
|
||||
fi
|
||||
|
||||
sh_c="sh_c"
|
||||
if ! is_prefix_writable; then
|
||||
sh_c="sudo_sh_c"
|
||||
fi
|
||||
|
||||
"$sh_c" sh -c "'cd \"$INSTALL_DIR/tala-$INSTALLED_VERSION\" && make uninstall PREFIX=\"$PREFIX\"'"
|
||||
"$sh_c" rm -rf "$INSTALL_DIR/tala-$INSTALLED_VERSION"
|
||||
}
|
||||
|
||||
is_prefix_writable() {
|
||||
sh_c "mkdir -p '$INSTALL_DIR' 2>/dev/null" || true
|
||||
# The reason for checking whether $INSTALL_DIR is writable is that on macOS you have
|
||||
# /usr/local owned by root but you don't need root to write to its subdirectories which
|
||||
# is all we want to do.
|
||||
if [ ! -w "$INSTALL_DIR" ]; then
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
cache_dir() {
|
||||
if [ -n "${XDG_CACHE_HOME-}" ]; then
|
||||
echo "$XDG_CACHE_HOME/d2/release"
|
||||
elif [ -n "${HOME-}" ]; then
|
||||
echo "$HOME/.cache/d2/release"
|
||||
else
|
||||
echo "/tmp/d2-cache/release"
|
||||
fi
|
||||
}
|
||||
|
||||
fetch_release_info() {
|
||||
if [ -n "${RELEASE_INFO-}" ]; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
log "fetching info on $VERSION version of $REPO"
|
||||
RELEASE_INFO=$(mktemp -d)/release-info.json
|
||||
if [ "$VERSION" = latest ]; then
|
||||
release_info_url="https://api.github.com/repos/$REPO/releases/$VERSION"
|
||||
else
|
||||
release_info_url="https://api.github.com/repos/$REPO/releases/tags/$VERSION"
|
||||
fi
|
||||
fetch_gh "$release_info_url" "$RELEASE_INFO" \
|
||||
'application/json'
|
||||
VERSION=$(cat "$RELEASE_INFO" | grep -m1 tag_name | sed 's/^.*: "\(.*\)",$/\1/g')
|
||||
}
|
||||
|
||||
curl_gh() {
|
||||
sh_c curl -fL ${GITHUB_TOKEN+"-H \"Authorization: Bearer \$GITHUB_TOKEN\""} "$@"
|
||||
}
|
||||
|
||||
fetch_gh() {
|
||||
url=$1
|
||||
file=$2
|
||||
accept=$3
|
||||
|
||||
if [ -e "$file" ]; then
|
||||
log "reusing $file"
|
||||
return
|
||||
fi
|
||||
|
||||
curl_gh -#o "$file.inprogress" -C- -H "'Accept: $accept'" "$url"
|
||||
sh_c mv "$file.inprogress" "$file"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
198
ci/release/build.sh
Executable file
|
|
@ -0,0 +1,198 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/../.."
|
||||
. ./ci/sub/lib.sh
|
||||
|
||||
help() {
|
||||
cat <<EOF
|
||||
usage: $0 [--rebuild] [--local] [--dry-run] [--run=regex] [--host-only]
|
||||
|
||||
$0 builds D2 release archives into ./ci/release/build/<version>/d2-<VERSION>-<OS>-<ARCH>.tar.gz
|
||||
|
||||
The version is detected via git describe which will use the git tag for the current
|
||||
commit if available.
|
||||
|
||||
Flags:
|
||||
|
||||
--rebuild
|
||||
By default build.sh will avoid rebuilding finished assets if they already exist but if you
|
||||
changed something and need to force rebuild, use this flag.
|
||||
|
||||
--local
|
||||
By default build.sh uses \$TSTRUCT_MACOS_AMD64_BUILDER, \$TSTRUCT_MACOS_ARM64_BUILDER,
|
||||
\$TSTRUCT_LINUX_AMD64_BUILDER and \$TSTRUCT_LINUX_ARM64_BUILDER to build the release
|
||||
archives. It's required for now due to the following issue:
|
||||
https://github.com/terrastruct/d2/issues/31 With --local, build.sh will cross compile
|
||||
locally. warning: This is only for testing purposes, do not use in production!
|
||||
|
||||
--host-only
|
||||
Use to build the release archive for the host OS-ARCH only. All logging is done to stderr
|
||||
so in a script you can read from stdout to get the path to the release archive.
|
||||
|
||||
--run=regex
|
||||
Use to run only the OS-ARCH jobs that match the given regex. e.g. --run=linux only runs
|
||||
the linux jobs. --run=linux-amd64 only runs the linux-amd64 job.
|
||||
|
||||
--version vX.X.X
|
||||
Use to overwrite the version detected from git.
|
||||
EOF
|
||||
}
|
||||
|
||||
main() {
|
||||
while :; do
|
||||
flag_parse "$@"
|
||||
case "$FLAG" in
|
||||
h|help)
|
||||
help
|
||||
return 0
|
||||
;;
|
||||
rebuild)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
REBUILD=1
|
||||
;;
|
||||
local)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
LOCAL=1
|
||||
;;
|
||||
dry-run)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
DRY_RUN=1
|
||||
;;
|
||||
run)
|
||||
flag_reqarg && shift "$FLAGSHIFT"
|
||||
JOBFILTER="$FLAGARG"
|
||||
;;
|
||||
host-only)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
HOST_ONLY=1
|
||||
LOCAL=1
|
||||
;;
|
||||
version)
|
||||
flag_nonemptyarg && shift "$FLAGSHIFT"
|
||||
VERSION=$FLAGARG
|
||||
;;
|
||||
'')
|
||||
shift "$FLAGSHIFT"
|
||||
break
|
||||
;;
|
||||
*)
|
||||
flag_errusage "unrecognized flag $FLAGRAW"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ $# -gt 0 ]; then
|
||||
flag_errusage "no arguments are accepted"
|
||||
fi
|
||||
|
||||
VERSION=${VERSION:-$(git_describe_ref)}
|
||||
BUILD_DIR=ci/release/build/$VERSION
|
||||
if [ -n "${HOST_ONLY-}" ]; then
|
||||
runjob $(os)-$(arch) "OS=$(os) ARCH=$(arch) build" &
|
||||
waitjobs
|
||||
return 0
|
||||
fi
|
||||
|
||||
runjob linux-amd64 'OS=linux ARCH=amd64 build' &
|
||||
runjob linux-arm64 'OS=linux ARCH=arm64 build' &
|
||||
runjob macos-amd64 'OS=macos ARCH=amd64 build' &
|
||||
runjob macos-arm64 'OS=macos ARCH=arm64 build' &
|
||||
waitjobs
|
||||
}
|
||||
|
||||
build() {
|
||||
HW_BUILD_DIR="$BUILD_DIR/$OS-$ARCH/d2-$VERSION"
|
||||
ARCHIVE="$BUILD_DIR/d2-$VERSION-$OS-$ARCH.tar.gz"
|
||||
|
||||
if [ -e "$ARCHIVE" -a -z "${REBUILD-}" ]; then
|
||||
log "skipping as already built at $ARCHIVE"
|
||||
return 0
|
||||
fi
|
||||
|
||||
if [ -n "${LOCAL-}" ]; then
|
||||
build_local
|
||||
return 0
|
||||
fi
|
||||
|
||||
case $OS in
|
||||
macos)
|
||||
case $ARCH in
|
||||
amd64)
|
||||
RHOST=$TSTRUCT_MACOS_AMD64_BUILDER build_rhost_macos
|
||||
;;
|
||||
arm64)
|
||||
RHOST=$TSTRUCT_MACOS_ARM64_BUILDER build_rhost_macos
|
||||
;;
|
||||
*)
|
||||
warn "no builder for OS=$OS ARCH=$ARCH, building locally..."
|
||||
build_local
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
linux)
|
||||
case $ARCH in
|
||||
amd64)
|
||||
RHOST=$TSTRUCT_LINUX_AMD64_BUILDER build_rhost_linux
|
||||
;;
|
||||
arm64)
|
||||
RHOST=$TSTRUCT_LINUX_ARM64_BUILDER build_rhost_linux
|
||||
;;
|
||||
*)
|
||||
warn "no builder for OS=$OS ARCH=$ARCH, building locally..."
|
||||
build_local
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
warn "no builder for OS=$OS, building locally..."
|
||||
build_local
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
build_local() {
|
||||
export DRY_RUN \
|
||||
HW_BUILD_DIR \
|
||||
VERSION \
|
||||
OS \
|
||||
ARCH \
|
||||
ARCHIVE
|
||||
sh_c ./ci/release/_build.sh
|
||||
}
|
||||
|
||||
build_rhost_macos() {
|
||||
sh_c ssh "$RHOST" mkdir -p src
|
||||
sh_c rsync --archive --human-readable --delete ./ "$RHOST:src/d2/"
|
||||
sh_c ssh -tttt "$RHOST" "DRY_RUN=${DRY_RUN-} \
|
||||
HW_BUILD_DIR=$HW_BUILD_DIR \
|
||||
VERSION=$VERSION \
|
||||
OS=$OS \
|
||||
ARCH=$ARCH \
|
||||
ARCHIVE=$ARCHIVE \
|
||||
TERM=$TERM \
|
||||
PATH=\\\"/usr/local/bin:/usr/local/sbin:/opt/homebrew/bin:/opt/homebrew/sbin\\\${PATH+:\\\$PATH}\\\" \
|
||||
./src/d2/ci/release/_build.sh"
|
||||
sh_c mkdir -p "$HW_BUILD_DIR"
|
||||
sh_c rsync --archive --human-readable "$RHOST:src/d2/$ARCHIVE" "$ARCHIVE"
|
||||
}
|
||||
|
||||
build_rhost_linux() {
|
||||
sh_c ssh "$RHOST" mkdir -p src
|
||||
sh_c rsync --archive --human-readable --delete ./ "$RHOST:src/d2/"
|
||||
sh_c ssh -tttt "$RHOST" "DRY_RUN=${DRY_RUN-} \
|
||||
HW_BUILD_DIR=$HW_BUILD_DIR \
|
||||
VERSION=$VERSION \
|
||||
OS=$OS \
|
||||
ARCH=$ARCH \
|
||||
ARCHIVE=$ARCHIVE \
|
||||
TERM=$TERM \
|
||||
./src/d2/ci/release/build_docker.sh"
|
||||
sh_c mkdir -p "$HW_BUILD_DIR"
|
||||
sh_c rsync --archive --human-readable "$RHOST:src/d2/$ARCHIVE" "$ARCHIVE"
|
||||
}
|
||||
|
||||
ssh() {
|
||||
command ssh -o='StrictHostKeyChecking=accept-new' "$@"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
1
ci/release/build/.gitignore
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
*
|
||||
17
ci/release/build_docker.sh
Executable file
|
|
@ -0,0 +1,17 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/../.."
|
||||
. ./ci/sub/lib.sh
|
||||
|
||||
tag="$(sh_c docker build \
|
||||
--build-arg GOVERSION="1.19.3.linux-$ARCH" \
|
||||
-qf ./ci/release/builders/Dockerfile ./ci/release/builders)"
|
||||
docker_run \
|
||||
-e DRY_RUN \
|
||||
-e HW_BUILD_DIR \
|
||||
-e VERSION \
|
||||
-e OS \
|
||||
-e ARCH \
|
||||
-e ARCHIVE \
|
||||
-e TERM \
|
||||
"$tag" ./src/d2/ci/release/_build.sh
|
||||
12
ci/release/builders/Dockerfile
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
FROM debian:10
|
||||
|
||||
RUN apt-get update
|
||||
RUN apt-get install -y curl
|
||||
|
||||
ARG GOVERSION=
|
||||
RUN curl -fsSL "https://go.dev/dl/go$GOVERSION.tar.gz" >/tmp/go.tar.gz
|
||||
RUN tar -C /usr/local -xzf /tmp/go.tar.gz
|
||||
ENV PATH="/usr/local/go/bin:$PATH"
|
||||
|
||||
RUN apt-get install -y build-essential
|
||||
RUN apt-get install -y rsync
|
||||
16
ci/release/builders/Dockerfile-centos
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
FROM centos:7
|
||||
|
||||
ARG GOVERSION=
|
||||
|
||||
RUN curl -fsSL "https://go.dev/dl/go$GOVERSION.tar.gz" >/tmp/go.tar.gz
|
||||
RUN tar -C /usr/local -xzf /tmp/go.tar.gz
|
||||
|
||||
ENV PATH="/usr/local/go/bin:$PATH"
|
||||
|
||||
RUN yum install -y rsync wget
|
||||
RUN yum groupinstall -y 'Development Tools'
|
||||
|
||||
RUN curl -fsSL https://ftp.gnu.org/gnu/gcc/gcc-5.2.0/gcc-5.2.0.tar.gz >/tmp/gcc.tar.gz
|
||||
RUN tar -C /usr/local -xzf /tmp/gcc.tar.gz
|
||||
RUN cd /usr/local/gcc-5.2.0 && ./contrib/download_prerequisites && mkdir -p build \
|
||||
&& cd build && ../configure --disable-multilib && make && make install
|
||||
242
ci/release/builders/aws_ensure.sh
Executable file
|
|
@ -0,0 +1,242 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/../../.."
|
||||
. ./ci/sub/lib.sh
|
||||
|
||||
help() {
|
||||
cat <<EOF
|
||||
usage: $0 [--dry-run] [--skip-create]
|
||||
|
||||
$0 creates and ensures the d2 builders in AWS.
|
||||
EOF
|
||||
}
|
||||
|
||||
main() {
|
||||
while :; do
|
||||
flag_parse "$@"
|
||||
case "$FLAG" in
|
||||
h|help)
|
||||
help
|
||||
return 0
|
||||
;;
|
||||
dry-run)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
DRY_RUN=1
|
||||
;;
|
||||
skip-create)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
SKIP_CREATE=1
|
||||
;;
|
||||
'')
|
||||
shift "$FLAGSHIFT"
|
||||
break
|
||||
;;
|
||||
*)
|
||||
flag_errusage "unrecognized flag $FLAGRAW"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
if [ $# -gt 0 ]; then
|
||||
flag_errusage "no arguments are accepted"
|
||||
fi
|
||||
|
||||
if [ -z "${SKIP_CREATE-}" ]; then
|
||||
create_rhosts
|
||||
fi
|
||||
init_rhosts
|
||||
}
|
||||
|
||||
create_rhosts() {
|
||||
KEY_NAME=$(aws ec2 describe-key-pairs | jq -r .KeyPairs[0].KeyName)
|
||||
VPC_ID=$(aws ec2 describe-vpcs | jq -r .Vpcs[0].VpcId)
|
||||
|
||||
header security-group
|
||||
SG_ID=$(aws ec2 describe-security-groups --group-names ssh 2>/dev/null \
|
||||
| jq -r .SecurityGroups[0].GroupId)
|
||||
if [ -z "$SG_ID" ]; then
|
||||
SG_ID=$(sh_c aws ec2 create-security-group \
|
||||
--group-name ssh \
|
||||
--description ssh \
|
||||
--vpc-id "$VPC_ID" | jq -r .GroupId)
|
||||
fi
|
||||
|
||||
header security-group-ingress
|
||||
SG_RULES_COUNT=$(aws ec2 describe-security-groups --group-names ssh \
|
||||
| jq -r '.SecurityGroups[0].IpPermissions | length')
|
||||
if [ "$SG_RULES_COUNT" -eq 0 ]; then
|
||||
sh_c aws ec2 authorize-security-group-ingress \
|
||||
--group-id "$SG_ID" \
|
||||
--protocol tcp \
|
||||
--port 22 \
|
||||
--cidr 0.0.0.0/0 >/dev/null
|
||||
fi
|
||||
|
||||
header linux-amd64
|
||||
state=$(aws ec2 describe-instances --filters \
|
||||
'Name=instance-state-name,Values=pending,running,stopping,stopped' 'Name=tag:Name,Values=d2-builder-linux-amd64' \
|
||||
| jq -r '.Reservations[].Instances[].State.Name')
|
||||
if [ -z "$state" ]; then
|
||||
sh_c aws ec2 run-instances \
|
||||
--image-id=ami-0d593311db5abb72b \
|
||||
--count=1 \
|
||||
--instance-type=t2.small \
|
||||
--security-groups=ssh \
|
||||
"--key-name=$KEY_NAME" \
|
||||
--tag-specifications '"ResourceType=instance,Tags=[{Key=Name,Value=d2-builder-linux-amd64}]"' \
|
||||
'"ResourceType=volume,Tags=[{Key=Name,Value=d2-builder-linux-amd64}]"' >/dev/null
|
||||
fi
|
||||
while true; do
|
||||
dnsname=$(sh_c aws ec2 describe-instances \
|
||||
--filters 'Name=instance-state-name,Values=pending,running,stopping,stopped' 'Name=tag:Name,Values=d2-builder-linux-amd64' \
|
||||
| jq -r '.Reservations[].Instances[].PublicDnsName')
|
||||
if [ -n "$dnsname" ]; then
|
||||
log "TSTRUCT_LINUX_AMD64_BUILDER=ec2-user@$dnsname"
|
||||
export TSTRUCT_LINUX_AMD64_BUILDER=ec2-user@$dnsname
|
||||
break
|
||||
fi
|
||||
sleep 5
|
||||
done
|
||||
|
||||
header linux-arm64
|
||||
state=$(aws ec2 describe-instances --filters \
|
||||
'Name=instance-state-name,Values=pending,running,stopping,stopped' 'Name=tag:Name,Values=d2-builder-linux-arm64' \
|
||||
| jq -r '.Reservations[].Instances[].State.Name')
|
||||
if [ -z "$state" ]; then
|
||||
sh_c aws ec2 run-instances \
|
||||
--image-id=ami-0efabcf945ffd8831 \
|
||||
--count=1 \
|
||||
--instance-type=t4g.small \
|
||||
--security-groups=ssh \
|
||||
"--key-name=$KEY_NAME" \
|
||||
--tag-specifications '"ResourceType=instance,Tags=[{Key=Name,Value=d2-builder-linux-arm64}]"' \
|
||||
'"ResourceType=volume,Tags=[{Key=Name,Value=d2-builder-linux-arm64}]"' >/dev/null
|
||||
fi
|
||||
while true; do
|
||||
dnsname=$(sh_c aws ec2 describe-instances \
|
||||
--filters 'Name=instance-state-name,Values=pending,running,stopping,stopped' 'Name=tag:Name,Values=d2-builder-linux-arm64' \
|
||||
| jq -r '.Reservations[].Instances[].PublicDnsName')
|
||||
if [ -n "$dnsname" ]; then
|
||||
log "TSTRUCT_LINUX_ARM64_BUILDER=ec2-user@$dnsname"
|
||||
export TSTRUCT_LINUX_ARM64_BUILDER=ec2-user@$dnsname
|
||||
break
|
||||
fi
|
||||
sleep 5
|
||||
done
|
||||
|
||||
header "macos-amd64-host"
|
||||
MACOS_AMD64_HOST_ID=$(aws ec2 describe-hosts --filter 'Name=state,Values=pending,available' 'Name=tag:Name,Values=d2-builder-macos-amd64' | jq -r '.Hosts[].HostId')
|
||||
if [ -z "$MACOS_AMD64_HOST_ID" ]; then
|
||||
MACOS_AMD64_HOST_ID=$(sh_c aws ec2 allocate-hosts --instance-type mac1.metal --quantity 1 --availability-zone us-west-2a \
|
||||
--tag-specifications '"ResourceType=dedicated-host,Tags=[{Key=Name,Value=d2-builder-macos-amd64}]"' \
|
||||
| jq -r .HostIds[0])
|
||||
fi
|
||||
|
||||
header "macos-arm64-host"
|
||||
MACOS_ARM64_HOST_ID=$(aws ec2 describe-hosts --filter 'Name=state,Values=pending,available' 'Name=tag:Name,Values=d2-builder-macos-arm64' | jq -r '.Hosts[].HostId')
|
||||
if [ -z "$MACOS_ARM64_HOST_ID" ]; then
|
||||
MACOS_ARM64_HOST_ID=$(sh_c aws ec2 allocate-hosts --instance-type mac2.metal --quantity 1 --availability-zone us-west-2a \
|
||||
--tag-specifications '"ResourceType=dedicated-host,Tags=[{Key=Name,Value=d2-builder-macos-amd64}]"' \
|
||||
| jq -r .HostIds[0])
|
||||
fi
|
||||
|
||||
header macos-amd64
|
||||
state=$(aws ec2 describe-instances --filters \
|
||||
'Name=instance-state-name,Values=pending,running,stopping,stopped' 'Name=tag:Name,Values=d2-builder-macos-amd64' \
|
||||
| jq -r '.Reservations[].Instances[].State.Name')
|
||||
if [ -z "$state" ]; then
|
||||
sh_c aws ec2 run-instances \
|
||||
--image-id=ami-0dd2ded7568750663 \
|
||||
--count=1 \
|
||||
--instance-type=mac1.metal \
|
||||
--security-groups=ssh \
|
||||
"--key-name=$KEY_NAME" \
|
||||
--placement "Tenancy=host,HostId=$MACOS_AMD64_HOST_ID" \
|
||||
--tag-specifications '"ResourceType=instance,Tags=[{Key=Name,Value=d2-builder-macos-amd64}]"' \
|
||||
'"ResourceType=volume,Tags=[{Key=Name,Value=d2-builder-macos-amd64}]"' >/dev/null
|
||||
fi
|
||||
while true; do
|
||||
dnsname=$(sh_c aws ec2 describe-instances \
|
||||
--filters 'Name=instance-state-name,Values=pending,running,stopping,stopped' 'Name=tag:Name,Values=d2-builder-macos-amd64' \
|
||||
| jq -r '.Reservations[].Instances[].PublicDnsName')
|
||||
if [ -n "$dnsname" ]; then
|
||||
log "TSTRUCT_MACOS_AMD64_BUILDER=ec2-user@$dnsname"
|
||||
export TSTRUCT_MACOS_AMD64_BUILDER=ec2-user@$dnsname
|
||||
break
|
||||
fi
|
||||
sleep 5
|
||||
done
|
||||
|
||||
header macos-arm64
|
||||
state=$(aws ec2 describe-instances --filters \
|
||||
'Name=instance-state-name,Values=pending,running,stopping,stopped' 'Name=tag:Name,Values=d2-builder-macos-arm64' \
|
||||
| jq -r '.Reservations[].Instances[].State.Name')
|
||||
if [ -z "$state" ]; then
|
||||
sh_c aws ec2 run-instances \
|
||||
--image-id=ami-0af0516ff2c43dbbe \
|
||||
--count=1 \
|
||||
--instance-type=mac2.metal \
|
||||
--security-groups=ssh \
|
||||
"--key-name=$KEY_NAME" \
|
||||
--placement "Tenancy=host,HostId=$MACOS_ARM64_HOST_ID" \
|
||||
--tag-specifications '"ResourceType=instance,Tags=[{Key=Name,Value=d2-builder-macos-arm64}]"' \
|
||||
'"ResourceType=volume,Tags=[{Key=Name,Value=d2-builder-macos-arm64}]"' >/dev/null
|
||||
fi
|
||||
while true; do
|
||||
dnsname=$(sh_c aws ec2 describe-instances \
|
||||
--filters 'Name=instance-state-name,Values=pending,running,stopping,stopped' 'Name=tag:Name,Values=d2-builder-macos-arm64' \
|
||||
| jq -r '.Reservations[].Instances[].PublicDnsName')
|
||||
if [ -n "$dnsname" ]; then
|
||||
log "TSTRUCT_MACOS_ARM64_BUILDER=ec2-user@$dnsname"
|
||||
export TSTRUCT_MACOS_ARM64_BUILDER=ec2-user@$dnsname
|
||||
break
|
||||
fi
|
||||
sleep 5
|
||||
done
|
||||
}
|
||||
|
||||
init_rhosts() {
|
||||
header linux-amd64
|
||||
RHOST=$TSTRUCT_LINUX_AMD64_BUILDER init_rhost_linux
|
||||
header linux-arm64
|
||||
RHOST=$TSTRUCT_LINUX_ARM64_BUILDER init_rhost_linux
|
||||
header macos-amd64
|
||||
RHOST=$TSTRUCT_MACOS_AMD64_BUILDER init_rhost_macos
|
||||
header macos-arm64
|
||||
RHOST=$TSTRUCT_MACOS_ARM64_BUILDER init_rhost_macos
|
||||
|
||||
COLOR=2 header summary
|
||||
log "export TSTRUCT_LINUX_AMD64_BUILDER=$TSTRUCT_LINUX_AMD64_BUILDER"
|
||||
log "export TSTRUCT_LINUX_ARM64_BUILDER=$TSTRUCT_LINUX_ARM64_BUILDER"
|
||||
log "export TSTRUCT_MACOS_AMD64_BUILDER=$TSTRUCT_MACOS_AMD64_BUILDER"
|
||||
log "export TSTRUCT_MACOS_ARM64_BUILDER=$TSTRUCT_MACOS_ARM64_BUILDER"
|
||||
}
|
||||
|
||||
init_rhost_linux() {
|
||||
while true; do
|
||||
if sh_c ssh "$RHOST" :; then
|
||||
break
|
||||
fi
|
||||
sleep 5
|
||||
done
|
||||
sh_c ssh "$RHOST" 'sudo yum upgrade -y'
|
||||
sh_c ssh "$RHOST" 'sudo yum install -y docker'
|
||||
sh_c ssh "$RHOST" 'sudo systemctl start docker'
|
||||
sh_c ssh "$RHOST" 'sudo systemctl enable docker'
|
||||
sh_c ssh "$RHOST" 'sudo usermod -a -G docker ec2-user'
|
||||
sh_c ssh "$RHOST" 'sudo reboot' || true
|
||||
}
|
||||
|
||||
init_rhost_macos() {
|
||||
while true; do
|
||||
if sh_c ssh "$RHOST" :; then
|
||||
break
|
||||
fi
|
||||
sleep 5
|
||||
done
|
||||
sh_c ssh "$RHOST" '": | /bin/bash -c \"\$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\""'
|
||||
sh_c ssh "$RHOST" 'PATH="/usr/local/bin:/opt/homebrew/bin:\$PATH" brew update'
|
||||
sh_c ssh "$RHOST" 'PATH="/usr/local/bin:/opt/homebrew/bin:\$PATH" brew upgrade'
|
||||
sh_c ssh "$RHOST" 'PATH="/usr/local/bin:/opt/homebrew/bin:\$PATH" brew install go'
|
||||
}
|
||||
|
||||
main "$@"
|
||||
43
ci/release/builders/aws_ssh_copy_id.sh
Executable file
|
|
@ -0,0 +1,43 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/../../.."
|
||||
. ./ci/sub/lib.sh
|
||||
|
||||
help() {
|
||||
cat <<EOF
|
||||
usage: $0 [--dry-run] [...args]
|
||||
|
||||
$0 runs ssh-copy-id on each builder.
|
||||
args are passed to ssh-copy-id directly.
|
||||
EOF
|
||||
}
|
||||
|
||||
main() {
|
||||
while :; do
|
||||
flag_parse "$@"
|
||||
case "$FLAG" in
|
||||
h|help)
|
||||
help
|
||||
return 0
|
||||
;;
|
||||
dry-run)
|
||||
flag_noarg && shift "$FLAGSHIFT"
|
||||
DRY_RUN=1
|
||||
;;
|
||||
'')
|
||||
shift "$FLAGSHIFT"
|
||||
break
|
||||
;;
|
||||
*)
|
||||
flag_errusage "unrecognized flag $FLAGRAW"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
sh_c ssh-copy-id "$@" "\$TSTRUCT_LINUX_AMD64_BUILDER"
|
||||
sh_c ssh-copy-id "$@" "\$TSTRUCT_LINUX_ARM64_BUILDER"
|
||||
sh_c ssh-copy-id "$@" "\$TSTRUCT_MACOS_AMD64_BUILDER"
|
||||
sh_c ssh-copy-id "$@" "\$TSTRUCT_MACOS_ARM64_BUILDER"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
13
ci/release/changelogs/next.md
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
For v0.0.99 we focused on X, Y and Z. Enjoy!
|
||||
|
||||
#### Features 💸
|
||||
|
||||
- Now you can easily do x, y and z #9999
|
||||
|
||||
#### Improvements 🔧
|
||||
|
||||
- Improves something or the other #9999
|
||||
|
||||
#### Bugfixes 🔴
|
||||
|
||||
- Fixes something or the other #9999
|
||||
13
ci/release/changelogs/template.md
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
For v0.0.99 we focused on X, Y and Z. Enjoy!
|
||||
|
||||
#### Features 💸
|
||||
|
||||
- Now you can easily do x, y and z #9999
|
||||
|
||||
#### Improvements 🔧
|
||||
|
||||
- Improves something or the other #9999
|
||||
|
||||
#### Bugfixes 🔴
|
||||
|
||||
- Fixes something or the other #9999
|
||||
39
ci/release/gen_install.sh
Executable file
|
|
@ -0,0 +1,39 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/../.."
|
||||
. ./ci/sub/lib.sh
|
||||
|
||||
sh_c chmod +w ./install.sh
|
||||
sh_c cat >./install.sh <<EOF
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
# *************
|
||||
# DO NOT EDIT
|
||||
#
|
||||
# install.sh was bundled together from
|
||||
#
|
||||
# - ./ci/sub/lib/rand.sh
|
||||
# - ./ci/sub/lib/log.sh
|
||||
# - ./ci/sub/lib/flag.sh
|
||||
# - ./ci/sub/lib/release.sh
|
||||
# - ./ci/release/_install.sh
|
||||
#
|
||||
# The last of which implements the installation logic.
|
||||
#
|
||||
# Generated by ./ci/release/gen_install.sh.
|
||||
# *************
|
||||
|
||||
EOF
|
||||
|
||||
# sed removes the sourcing dependency lines as we're bundled everything into a single
|
||||
# script.
|
||||
sh_c cat \
|
||||
./ci/sub/lib/rand.sh \
|
||||
./ci/sub/lib/log.sh \
|
||||
./ci/sub/lib/flag.sh \
|
||||
./ci/sub/lib/release.sh \
|
||||
\| sed "-e'/^\. /d'" \>\> ./install.sh
|
||||
sh_c cat ./ci/release/_install.sh \
|
||||
\| sed -n "'/cd -- \"\$(dirname/,/cd -/!p'" \>\> install.sh
|
||||
sh_c chmod -w install.sh
|
||||
5
ci/release/release.sh
Executable file
|
|
@ -0,0 +1,5 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/../.."
|
||||
|
||||
./ci/sub/release/release.sh "$@"
|
||||
1
ci/release/template/LICENSE.txt
Symbolic link
|
|
@ -0,0 +1 @@
|
|||
../../../LICENSE.txt
|
||||
12
ci/release/template/Makefile
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
.POSIX:
|
||||
.SILENT:
|
||||
|
||||
PREFIX = $(DESTDIR)/usr/local
|
||||
|
||||
.PHONY: install
|
||||
install:
|
||||
PREFIX='$(PREFIX)' ./scripts/install.sh
|
||||
|
||||
.PHONY: uninstall
|
||||
uninstall:
|
||||
PREFIX='$(PREFIX)' ./scripts/uninstall.sh
|
||||
28
ci/release/template/README.md.sh
Executable file
|
|
@ -0,0 +1,28 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
cat <<EOF
|
||||
# d2
|
||||
|
||||
For docs, more installation options and the source code see https://oss.terrastruct.com/d2
|
||||
|
||||
version: $VERSION
|
||||
|
||||
## Install
|
||||
|
||||
\`\`\`sh
|
||||
make install DRY_RUN=1
|
||||
# If it looks right, run:
|
||||
make install
|
||||
\`\`\`
|
||||
|
||||
Pass \`PREFIX=whatever\` to change the installation prefix.
|
||||
|
||||
## Uninstall
|
||||
|
||||
\`\`\`sh
|
||||
make uninstall DRY_RUN=1
|
||||
# If it looks right, run:
|
||||
make uninstall
|
||||
\`\`\`
|
||||
EOF
|
||||
62
ci/release/template/man/d2.1
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
.Dd $Mdocdate$
|
||||
.Dt d2 1
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm d2
|
||||
.Nd compiles and renders d2 diagrams into svgs.
|
||||
.Sh SYNOPSIS
|
||||
.Nm d2
|
||||
.Op Fl -watch Ar false
|
||||
.Op Fl -theme Em 0
|
||||
.Ar file.d2
|
||||
.Op Ar file.svg
|
||||
.Nm d2
|
||||
.Op Fl -watch Ar false
|
||||
.Op Fl -theme Em 0
|
||||
.Ar file.d2
|
||||
.Op Ar ...
|
||||
.Nm d2
|
||||
.Ar layout Op Ar name
|
||||
.Sh DESCRIPTION
|
||||
.Nm
|
||||
compiles and renders
|
||||
.Ar file.d2
|
||||
to
|
||||
.Ar file.svg
|
||||
.Ns .
|
||||
.Pp
|
||||
Pass - to have
|
||||
.Nm
|
||||
read from stdin or write to stdout.
|
||||
.Pp
|
||||
See more docs, the source code and license at
|
||||
.Lk https://oss.terrastruct.com/d2
|
||||
.Sh OPTIONS
|
||||
.Bl -tag -width Fl
|
||||
.It Fl w , -watch Ar false
|
||||
Watch for changes to input and live reload. Use
|
||||
.Ev $PORT and Ev $HOST to specify the listening address.
|
||||
.Ev $D2_PORT and $D2_HOST are also accepted and take priority. Default is localhost:0
|
||||
.It Fl t , -theme Ar 0
|
||||
Set the diagram theme to the passed integer. For a list of available options, see
|
||||
.Lk https://oss.terrastruct.com/d2
|
||||
.It Fl b , -bundle Ar true
|
||||
Bundle all assets and layers into the output svg.
|
||||
.It Fl d , -debug
|
||||
Print debug logs.
|
||||
.It Fl h , -help
|
||||
Print usage information and exit.
|
||||
.It Fl v , -version
|
||||
Print version information and exit.
|
||||
.El
|
||||
.Sh SUBCOMMANDS
|
||||
.Bl -tag -width Fl
|
||||
.It Ar layout
|
||||
Lists available layout engine options with short help.
|
||||
.It Ar layout Op Ar name
|
||||
Display long help for a particular layout engine.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr d2plugin-tala 1
|
||||
.Sh AUTHORS
|
||||
Terrastruct Inc.
|
||||
18
ci/release/template/scripts/install.sh
Executable file
|
|
@ -0,0 +1,18 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/.."
|
||||
. ./scripts/lib.sh
|
||||
|
||||
main() {
|
||||
if [ ! -e "${PREFIX-}" ]; then
|
||||
echoerr "\$PREFIX must be set to a unix prefix directory in which to install d2 like /usr/local"
|
||||
return 1
|
||||
fi
|
||||
|
||||
sh_c mkdir -p "$PREFIX/bin"
|
||||
sh_c mkdir -p "$PREFIX/share/man/man1"
|
||||
sh_c install ./bin/d2 "$PREFIX/bin/d2"
|
||||
sh_c install ./man/d2.1 "$PREFIX/share/man/man1"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
137
ci/release/template/scripts/lib.sh
Normal file
|
|
@ -0,0 +1,137 @@
|
|||
#!/bin/sh
|
||||
|
||||
rand() {
|
||||
seed="$1"
|
||||
range="$2"
|
||||
|
||||
seed_file="$(mktemp)"
|
||||
_echo "$seed" | md5sum > "$seed_file"
|
||||
shuf -i "$range" -n 1 --random-source="$seed_file"
|
||||
}
|
||||
|
||||
pick() {
|
||||
seed="$1"
|
||||
shift
|
||||
i="$(rand "$seed" "1-$#")"
|
||||
eval "_echo \"\$$i\""
|
||||
}
|
||||
|
||||
tput() {
|
||||
if [ -n "$TERM" ]; then
|
||||
command tput "$@"
|
||||
fi
|
||||
}
|
||||
|
||||
setaf() {
|
||||
tput setaf "$1"
|
||||
shift
|
||||
printf '%s' "$*"
|
||||
tput sgr0
|
||||
}
|
||||
|
||||
_echo() {
|
||||
printf '%s\n' "$*"
|
||||
}
|
||||
|
||||
get_rand_color() {
|
||||
# 1-6 are regular and 9-14 are bright.
|
||||
# 1,2 and 9,10 are red and green but we use those for success and failure.
|
||||
pick "$*" 3 4 5 6 11 12 13 14
|
||||
}
|
||||
|
||||
echop() {
|
||||
prefix="$1"
|
||||
shift
|
||||
|
||||
if [ "$#" -gt 0 ]; then
|
||||
printfp "$prefix" "%s\n" "$*"
|
||||
else
|
||||
printfp "$prefix"
|
||||
printf '\n'
|
||||
fi
|
||||
}
|
||||
|
||||
printfp() {(
|
||||
prefix="$1"
|
||||
shift
|
||||
|
||||
if [ -z "${COLOR:-}" ]; then
|
||||
COLOR="$(get_rand_color "$prefix")"
|
||||
fi
|
||||
printf '%s' "$(setaf "$COLOR" "$prefix")"
|
||||
|
||||
if [ $# -gt 0 ]; then
|
||||
printf ': '
|
||||
printf "$@"
|
||||
fi
|
||||
)}
|
||||
|
||||
catp() {
|
||||
prefix="$1"
|
||||
shift
|
||||
|
||||
printfp "$prefix"
|
||||
printf ': '
|
||||
read -r line
|
||||
_echo "$line"
|
||||
|
||||
indent=$(repeat ' ' 2)
|
||||
sed "s/^/$indent/"
|
||||
}
|
||||
|
||||
repeat() {
|
||||
char="$1"
|
||||
times="$2"
|
||||
seq -s "$char" "$times" | tr -d '[:digit:]'
|
||||
}
|
||||
|
||||
strlen() {
|
||||
printf %s "$1" | wc -c
|
||||
}
|
||||
|
||||
echoerr() {
|
||||
COLOR=1 echop err "$*" >&2
|
||||
}
|
||||
|
||||
caterr() {
|
||||
COLOR=1 catp err "$@" >&2
|
||||
}
|
||||
|
||||
printferr() {
|
||||
COLOR=1 printfp err "$@" >&2
|
||||
}
|
||||
|
||||
logp() {
|
||||
echop "$@" >&2
|
||||
}
|
||||
|
||||
logfp() {
|
||||
printfp "$@" >&2
|
||||
}
|
||||
|
||||
logpcat() {
|
||||
catp "$@" >&2
|
||||
}
|
||||
|
||||
log() {
|
||||
COLOR=5 logp log "$@"
|
||||
}
|
||||
|
||||
logf() {
|
||||
COLOR=5 logfp log "$@"
|
||||
}
|
||||
|
||||
logcat() {
|
||||
COLOR=5 catp log "$@" >&2
|
||||
}
|
||||
|
||||
sh_c() {
|
||||
COLOR=3 logp exec "$*"
|
||||
if [ -z "${DRY_RUN-}" ]; then
|
||||
"$@"
|
||||
fi
|
||||
}
|
||||
|
||||
header() {
|
||||
logp "/* $1 */"
|
||||
}
|
||||
16
ci/release/template/scripts/uninstall.sh
Executable file
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/sh
|
||||
set -eu
|
||||
cd -- "$(dirname "$0")/.."
|
||||
. ./scripts/lib.sh
|
||||
|
||||
main() {
|
||||
if [ ! -e "${PREFIX-}" ]; then
|
||||
echoerr "\$PREFIX must be set to a unix prefix directory from which to uninstall d2 like /usr/local"
|
||||
return 1
|
||||
fi
|
||||
|
||||
sh_c rm -f "$PREFIX/bin/d2"
|
||||
sh_c rm -f "$PREFIX/share/man/man1/d2.1"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
2
ci/sub
|
|
@ -1 +1 @@
|
|||
Subproject commit 7ff8380897435e73d53e329a7cd39dc38c7ad227
|
||||
Subproject commit 374e1af41579710c2728ef4f657bebea79bbaa60
|
||||
|
|
@ -27,7 +27,7 @@ Subcommands:
|
|||
%[1]s layout - Lists available layout engine options with short help
|
||||
%[1]s layout [layout name] - Display long help for a particular layout engine
|
||||
|
||||
See more docs at https://oss.terrastruct.com/d2
|
||||
See more docs and the source code at https://oss.terrastruct.com/d2
|
||||
`, ms.Name, ms.FlagHelp())
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ type elkPlugin struct{}
|
|||
|
||||
func (p elkPlugin) Info(context.Context) (*PluginInfo, error) {
|
||||
return &PluginInfo{
|
||||
Name: "ELK",
|
||||
Name: "elk",
|
||||
ShortHelp: "Eclipse Layout Kernel (ELK) with the Layered algorithm.",
|
||||
LongHelp: `ELK is a layout engine offered by Eclipse.
|
||||
Originally written in Java, it has been ported to Javascript and cross-compiled into D2.
|
||||
|
|
|
|||
|
|
@ -97,8 +97,8 @@ func visibilityToken(visibility string) string {
|
|||
}
|
||||
|
||||
func drawClass(writer io.Writer, targetShape d2target.Shape) {
|
||||
fmt.Fprintf(writer, `<rect class="shape" x="%d" y="%d" width="%d" height="%d" />`,
|
||||
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height)
|
||||
fmt.Fprintf(writer, `<rect class="shape" x="%d" y="%d" width="%d" height="%d" style="%s"/>`,
|
||||
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height, shapeStyle(targetShape))
|
||||
|
||||
box := geo.NewBox(
|
||||
geo.NewPoint(float64(targetShape.Pos.X), float64(targetShape.Pos.Y)),
|
||||
|
|
|
|||
|
|
@ -37,6 +37,9 @@ const (
|
|||
|
||||
var multipleOffset = geo.NewVector(10, -10)
|
||||
|
||||
//go:embed style.css
|
||||
var styleCSS string
|
||||
|
||||
//go:embed github-markdown.css
|
||||
var mdCSS string
|
||||
|
||||
|
|
@ -446,12 +449,12 @@ func drawConnection(writer io.Writer, connection d2target.Connection, markers ma
|
|||
}
|
||||
}
|
||||
|
||||
func renderOval(tl *geo.Point, width, height float64) string {
|
||||
func renderOval(tl *geo.Point, width, height float64, style string) string {
|
||||
rx := width / 2
|
||||
ry := height / 2
|
||||
cx := tl.X + rx
|
||||
cy := tl.Y + ry
|
||||
return fmt.Sprintf(`<ellipse class="shape" cx="%f" cy="%f" rx="%f" ry="%f" />`, cx, cy, rx, ry)
|
||||
return fmt.Sprintf(`<ellipse class="shape" cx="%f" cy="%f" rx="%f" ry="%f" style="%s" />`, cx, cy, rx, ry, style)
|
||||
}
|
||||
|
||||
func defineShadowFilter(writer io.Writer) {
|
||||
|
|
@ -487,7 +490,7 @@ func drawShape(writer io.Writer, targetShape d2target.Shape) error {
|
|||
}
|
||||
}
|
||||
|
||||
fmt.Fprintf(writer, `<g class="shape" style="%s" %s>`, style, shadowAttr)
|
||||
fmt.Fprintf(writer, `<g class="shape" %s>`, shadowAttr)
|
||||
|
||||
var multipleTL *geo.Point
|
||||
if targetShape.Multiple {
|
||||
|
|
@ -497,20 +500,22 @@ func drawShape(writer io.Writer, targetShape d2target.Shape) error {
|
|||
switch targetShape.Type {
|
||||
case d2target.ShapeClass:
|
||||
drawClass(writer, targetShape)
|
||||
fmt.Fprintf(writer, `</g>`)
|
||||
return nil
|
||||
case d2target.ShapeSQLTable:
|
||||
drawTable(writer, targetShape)
|
||||
fmt.Fprintf(writer, `</g>`)
|
||||
return nil
|
||||
case d2target.ShapeOval:
|
||||
if targetShape.Multiple {
|
||||
fmt.Fprint(writer, renderOval(multipleTL, width, height))
|
||||
fmt.Fprint(writer, renderOval(multipleTL, width, height, style))
|
||||
}
|
||||
fmt.Fprint(writer, renderOval(tl, width, height))
|
||||
fmt.Fprint(writer, renderOval(tl, width, height, style))
|
||||
|
||||
case d2target.ShapeImage:
|
||||
fmt.Fprintf(writer, `<image href="%s" x="%d" y="%d" width="%d" height="%d"/>`,
|
||||
fmt.Fprintf(writer, `<image href="%s" x="%d" y="%d" width="%d" height="%d" style="%s" />`,
|
||||
targetShape.Icon.String(),
|
||||
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height)
|
||||
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height, style)
|
||||
|
||||
// TODO should standardize "" to rectangle
|
||||
case d2target.ShapeRectangle, "":
|
||||
|
|
@ -550,23 +555,23 @@ func drawShape(writer io.Writer, targetShape d2target.Shape) error {
|
|||
strings.Join(rightPolygonPoints, ""), darkerColor)
|
||||
}
|
||||
if targetShape.Multiple {
|
||||
fmt.Fprintf(writer, `<rect x="%d" y="%d" width="%d" height="%d"/>`,
|
||||
targetShape.Pos.X+10, targetShape.Pos.Y-10, targetShape.Width, targetShape.Height)
|
||||
fmt.Fprintf(writer, `<rect x="%d" y="%d" width="%d" height="%d" style="%s" />`,
|
||||
targetShape.Pos.X+10, targetShape.Pos.Y-10, targetShape.Width, targetShape.Height, style)
|
||||
}
|
||||
fmt.Fprintf(writer, `<rect x="%d" y="%d" width="%d" height="%d"/>`,
|
||||
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height)
|
||||
fmt.Fprintf(writer, `<rect x="%d" y="%d" width="%d" height="%d" style="%s" />`,
|
||||
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height, style)
|
||||
|
||||
case d2target.ShapeText, d2target.ShapeCode:
|
||||
default:
|
||||
if targetShape.Multiple {
|
||||
multiplePathData := shape.NewShape(shapeType, geo.NewBox(multipleTL, width, height)).GetSVGPathData()
|
||||
for _, pathData := range multiplePathData {
|
||||
fmt.Fprintf(writer, `<path d="%s"/>`, pathData)
|
||||
fmt.Fprintf(writer, `<path d="%s" style="%s"/>`, pathData, style)
|
||||
}
|
||||
}
|
||||
|
||||
for _, pathData := range s.GetSVGPathData() {
|
||||
fmt.Fprintf(writer, `<path d="%s"/>`, pathData)
|
||||
fmt.Fprintf(writer, `<path d="%s" style="%s"/>`, pathData, style)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -837,18 +842,11 @@ func Render(diagram *d2target.Diagram) ([]byte, error) {
|
|||
buf := &bytes.Buffer{}
|
||||
_, _ = setViewbox(buf, diagram)
|
||||
|
||||
buf.WriteString(`<style type="text/css">
|
||||
buf.WriteString(fmt.Sprintf(`<style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
%s
|
||||
]]>
|
||||
</style>`)
|
||||
</style>`, styleCSS))
|
||||
|
||||
hasMarkdown := false
|
||||
for _, s := range diagram.Shapes {
|
||||
|
|
|
|||
8
d2renderers/d2svg/style.css
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
|
@ -98,8 +98,8 @@ func constraintAbbr(constraint string) string {
|
|||
}
|
||||
|
||||
func drawTable(writer io.Writer, targetShape d2target.Shape) {
|
||||
fmt.Fprintf(writer, `<rect class="shape" x="%d" y="%d" width="%d" height="%d" />`,
|
||||
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height)
|
||||
fmt.Fprintf(writer, `<rect class="shape" x="%d" y="%d" width="%d" height="%d" style="%s"/>`,
|
||||
targetShape.Pos.X, targetShape.Pos.Y, targetShape.Width, targetShape.Height, shapeStyle(targetShape))
|
||||
|
||||
box := geo.NewBox(
|
||||
geo.NewPoint(float64(targetShape.Pos.X), float64(targetShape.Pos.Y)),
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ package e2etests
|
|||
|
||||
import (
|
||||
"context"
|
||||
"encoding/xml"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
|
|
@ -127,6 +128,11 @@ func run(t *testing.T, tc testCase) {
|
|||
t.Fatal(err)
|
||||
}
|
||||
|
||||
var xmlParsed interface{}
|
||||
if err := xml.Unmarshal(svgBytes, &xmlParsed); err != nil {
|
||||
t.Fatalf("invalid SVG: %v", err)
|
||||
}
|
||||
|
||||
err = diff.Testdata(filepath.Join(dataPath, "board"), diagram)
|
||||
if err != nil {
|
||||
ioutil.WriteFile(pathGotSVG, svgBytes, 0600)
|
||||
|
|
|
|||
|
|
@ -816,6 +816,20 @@ a line of text and an
|
|||
|
||||
|
|
||||
a -> md -> b
|
||||
`,
|
||||
},
|
||||
{
|
||||
name: "class",
|
||||
script: `manager: BatchManager {
|
||||
shape: class
|
||||
-num: int
|
||||
-timeout: int
|
||||
-pid
|
||||
|
||||
+getStatus(): Enum
|
||||
+getJobs(): "Job[]"
|
||||
+setTimeout(seconds int)
|
||||
}
|
||||
`,
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="486" height="552" viewBox="-100 -100 486 552"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="87" y="0" width="113" height="126"/></g><text class="text-bold" x="143.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="226" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="173" y="226" width="113" height="126"/></g><text class="text-bold" x="229.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 93.558654 127.588117 C 64.154867 166.000000 56.500000 186.000000 56.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 192.441346 127.588117 C 221.845133 166.000000 229.500000 186.000000 229.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="87" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="143.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="0" y="226" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="173" y="226" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="229.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 93.558654 127.588117 C 64.154867 166.000000 56.500000 186.000000 56.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 192.441346 127.588117 C 221.845133 166.000000 229.500000 186.000000 229.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 325 KiB After Width: | Height: | Size: 325 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="526" height="472" viewBox="-88 -88 526 472"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="33" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="99.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="225" y="12" width="113" height="126"/></g><text class="text-bold" x="281.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="225" y="158" width="113" height="126"/></g><text class="text-bold" x="281.500000" y="224.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 127.000000 117.000000 L 165.000000 117.000000 S 175.000000 117.000000 175.000000 127.000000 L 175.000000 211.000000 S 175.000000 221.000000 185.000000 221.000000 L 221.000000 221.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="12" y="33" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="99.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="225" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="281.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="225" y="158" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="281.500000" y="224.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 127.000000 117.000000 L 165.000000 117.000000 S 175.000000 117.000000 175.000000 127.000000 L 175.000000 211.000000 S 175.000000 221.000000 185.000000 221.000000 L 221.000000 221.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 325 KiB After Width: | Height: | Size: 325 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="313" height="552" viewBox="-100 -100 313 552"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="0" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="226" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 56.500000 128.000000 C 56.500000 166.000000 56.500000 186.000000 56.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="0" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="0" y="226" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 56.500000 128.000000 C 56.500000 166.000000 56.500000 186.000000 56.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 324 KiB After Width: | Height: | Size: 324 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="526" height="326" viewBox="-88 -88 526 326"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="225" y="12" width="113" height="126"/></g><text class="text-bold" x="281.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="12" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="225" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="281.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 324 KiB After Width: | Height: | Size: 324 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="414" height="752" viewBox="-100 -100 414 752"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="1" y="0" width="213" height="226"/></g><text class="text-bold" x="107.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="326" width="214" height="226"/></g><text class="text-bold" x="107.000000" y="359.000000" style="text-anchor:middle;font-size:28px;fill:black">c</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="51" y="50" width="113" height="126"/></g><text class="text-bold" x="107.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="50" y="376" width="114" height="126"/></g><text class="text-bold" x="107.000000" y="442.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 107.000000 178.000000 C 107.000000 216.000000 107.000000 236.000000 107.000000 251.000000 C 107.000000 266.000000 107.000000 336.000000 107.000000 372.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="1" y="0" width="213" height="226" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="107.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" ><rect x="0" y="326" width="214" height="226" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="107.000000" y="359.000000" style="text-anchor:middle;font-size:28px;fill:black">c</text><g class="shape" ><rect x="51" y="50" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="107.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="50" y="376" width="114" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="107.000000" y="442.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 107.000000 178.000000 C 107.000000 216.000000 107.000000 236.000000 107.000000 251.000000 C 107.000000 266.000000 107.000000 336.000000 107.000000 372.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 325 KiB After Width: | Height: | Size: 325 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="837" height="476" viewBox="-88 -88 837 476"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="263" height="276"/></g><text class="text-bold" x="143.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="385" y="12" width="264" height="276"/></g><text class="text-bold" x="517.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">c</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="87" y="87" width="113" height="126"/></g><text class="text-bold" x="143.500000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="460" y="87" width="114" height="126"/></g><text class="text-bold" x="517.000000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 202.000000 150.000000 L 456.000000 150.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="12" y="12" width="263" height="276" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="143.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" ><rect x="385" y="12" width="264" height="276" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="517.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">c</text><g class="shape" ><rect x="87" y="87" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="143.500000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="460" y="87" width="114" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="517.000000" y="153.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 202.000000 150.000000 L 456.000000 150.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 325 KiB After Width: | Height: | Size: 325 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="313" height="552" viewBox="-100 -100 313 552"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="0" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="226" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><mask id="mask-1985426896" maskUnits="userSpaceOnUse" x="40.000000" y="112.000000" width="33.000000" height="128.000000">
|
||||
</style><g class="shape" ><rect x="0" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="0" y="226" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><mask id="mask-1985426896" maskUnits="userSpaceOnUse" x="40.000000" y="112.000000" width="33.000000" height="128.000000">
|
||||
<rect x="40.000000" y="112.000000" width="33.000000" height="128.000000" fill="white"></rect>
|
||||
<rect x="40.000000" y="166.000000" width="33" height="21" fill="black"></rect>
|
||||
</mask><path d="M 56.500000 128.000000 C 56.500000 166.000000 56.500000 186.000000 56.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#mask-1985426896)" /><text class="text-italic" x="56.500000" y="182.000000" style="text-anchor:middle;font-size:16px;fill:black">hello</text><style type="text/css"><![CDATA[
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 468 KiB After Width: | Height: | Size: 468 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="659" height="326" viewBox="-88 -88 659 326"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="358" y="12" width="113" height="126"/></g><text class="text-bold" x="414.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><mask id="mask-1985426896" maskUnits="userSpaceOnUse" x="113.000000" y="61.000000" width="257.000000" height="28.000000">
|
||||
</style><g class="shape" ><rect x="12" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="358" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="414.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><mask id="mask-1985426896" maskUnits="userSpaceOnUse" x="113.000000" y="61.000000" width="257.000000" height="28.000000">
|
||||
<rect x="113.000000" y="61.000000" width="257.000000" height="28.000000" fill="white"></rect>
|
||||
<rect x="225.000000" y="65.000000" width="33" height="21" fill="black"></rect>
|
||||
</mask><path d="M 127.000000 75.000000 L 354.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" mask="url(#mask-1985426896)" /><text class="text-italic" x="241.500000" y="81.000000" style="text-anchor:middle;font-size:16px;fill:black">hello</text><style type="text/css"><![CDATA[
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 468 KiB After Width: | Height: | Size: 468 KiB |
|
Before Width: | Height: | Size: 333 KiB After Width: | Height: | Size: 333 KiB |
|
Before Width: | Height: | Size: 332 KiB After Width: | Height: | Size: 332 KiB |
|
Before Width: | Height: | Size: 336 KiB After Width: | Height: | Size: 338 KiB |
|
Before Width: | Height: | Size: 336 KiB After Width: | Height: | Size: 337 KiB |
|
Before Width: | Height: | Size: 334 KiB After Width: | Height: | Size: 334 KiB |
|
Before Width: | Height: | Size: 333 KiB After Width: | Height: | Size: 334 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="480" height="778" viewBox="-100 -100 480 778"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#EDF0FD;stroke:#b2350d;opacity:1.000000;stroke-width:7;" ><path d="M 87 108.5231 L 87 0 L 200 0 L 200 108.5231 C 181.1667 85.2206 162.3333 85.2206 143.5 108.5231 C 124.6667 131.8256 105.8333 131.8256 87 108.5231 Z"/></g><text class="text-bold" x="143.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><g class="shape" style="fill:#F7F8FE;stroke:#0db254;opacity:1.000000;stroke-width:8;" ><rect x="0" y="452" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="518.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#F7F8FE;stroke:#2bc3d8;opacity:1.000000;stroke-width:8;" ><rect x="87" y="226" width="113" height="126"/></g><text class="text-bold" x="143.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#a1a4af;opacity:1.000000;stroke-width:6;" ><ellipse class="shape" cx="230.000000" cy="515.000000" rx="50.000000" ry="50.000000" /></g><marker id="mk-3196466557" markerWidth="30.000000" markerHeight="30.000000" refX="9.000000" refY="15.000000" viewBox="0.000000 0.000000 30.000000 30.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="6" points="0.000000,15.000000 30.000000,0.000000 22.500000,15.000000 30.000000,30.000000" /> </marker><marker id="mk-1326875639" markerWidth="30.000000" markerHeight="36.000000" refX="21.000000" refY="18.000000" viewBox="0.000000 0.000000 30.000000 36.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="6" points="0.000000,0.000000 30.000000,18.000000 0.000000,36.000000" /> </marker><path d="M 120.792733 364.471312 C 112.692478 392.000000 104.950000 412.000000 91.375504 440.280200" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:6;stroke-dasharray:24.000000,22.141176;" marker-start="url(#mk-3196466557)" marker-end="url(#mk-1326875639)" /><marker id="mk-2307423140" markerWidth="35.000000" markerHeight="42.000000" refX="24.500000" refY="21.000000" viewBox="0.000000 0.000000 35.000000 42.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#20222a" stroke-width="7" points="0.000000,0.000000 35.000000,21.000000 0.000000,42.000000" /> </marker><path d="M 88.201123 121.096153 C 47.800000 164.000000 36.500000 198.600000 36.500000 232.500000 C 36.500000 266.400000 38.300000 412.000000 42.931282 437.729342" class="connection" style="fill:none;stroke:#20222a;opacity:1.000000;stroke-width:7;" marker-end="url(#mk-2307423140)" /><marker id="mk-2920934274" markerWidth="72.600000" markerHeight="54.000000" refX="11.850000" refY="27.000000" viewBox="0.000000 0.000000 72.600000 54.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="#0D32B2" stroke-width="6" points="8.250000,27.000000 39.600000,6.750000 72.600000,27.000000 39.600000,47.250000" /> </marker><marker id="mk-4034884378" markerWidth="66.000000" markerHeight="42.000000" refX="57.000000" refY="21.000000" viewBox="0.000000 0.000000 66.000000 42.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="6" points="0.000000,21.000000 33.000000,0.000000 66.000000,21.000000 33.000000,42.000000" /> </marker><path d="M 165.207267 364.471312 C 173.307522 392.000000 182.800000 415.600000 203.793018 459.188555" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:6;" marker-start="url(#mk-2920934274)" marker-end="url(#mk-4034884378)" /><path d="M 143.000000 116.000000 C 143.000000 162.600000 143.000000 186.000000 143.000000 218.500000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:7;" /><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 239.061130 460.094579 C 247.200000 414.800000 249.500000 379.400000 249.500000 345.500000 C 249.500000 311.600000 233.400000 159.000000 173.469570 95.719422" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><path d="M 87 108.5231 L 87 0 L 200 0 L 200 108.5231 C 181.1667 85.2206 162.3333 85.2206 143.5 108.5231 C 124.6667 131.8256 105.8333 131.8256 87 108.5231 Z" style="fill:#EDF0FD;stroke:#b2350d;opacity:1.000000;stroke-width:7;"/></g><text class="text-bold" x="143.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><g class="shape" ><rect x="0" y="452" width="113" height="126" style="fill:#F7F8FE;stroke:#0db254;opacity:1.000000;stroke-width:8;" /></g><text class="text-bold" x="56.500000" y="518.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="87" y="226" width="113" height="126" style="fill:#F7F8FE;stroke:#2bc3d8;opacity:1.000000;stroke-width:8;" /></g><text class="text-bold" x="143.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><ellipse class="shape" cx="230.000000" cy="515.000000" rx="50.000000" ry="50.000000" style="fill:#F7F8FE;stroke:#a1a4af;opacity:1.000000;stroke-width:6;" /></g><marker id="mk-3196466557" markerWidth="30.000000" markerHeight="30.000000" refX="9.000000" refY="15.000000" viewBox="0.000000 0.000000 30.000000 30.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="6" points="0.000000,15.000000 30.000000,0.000000 22.500000,15.000000 30.000000,30.000000" /> </marker><marker id="mk-1326875639" markerWidth="30.000000" markerHeight="36.000000" refX="21.000000" refY="18.000000" viewBox="0.000000 0.000000 30.000000 36.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="6" points="0.000000,0.000000 30.000000,18.000000 0.000000,36.000000" /> </marker><path d="M 120.792733 364.471312 C 112.692478 392.000000 104.950000 412.000000 91.375504 440.280200" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:6;stroke-dasharray:24.000000,22.141176;" marker-start="url(#mk-3196466557)" marker-end="url(#mk-1326875639)" /><marker id="mk-2307423140" markerWidth="35.000000" markerHeight="42.000000" refX="24.500000" refY="21.000000" viewBox="0.000000 0.000000 35.000000 42.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#20222a" stroke-width="7" points="0.000000,0.000000 35.000000,21.000000 0.000000,42.000000" /> </marker><path d="M 88.201123 121.096153 C 47.800000 164.000000 36.500000 198.600000 36.500000 232.500000 C 36.500000 266.400000 38.300000 412.000000 42.931282 437.729342" class="connection" style="fill:none;stroke:#20222a;opacity:1.000000;stroke-width:7;" marker-end="url(#mk-2307423140)" /><marker id="mk-2920934274" markerWidth="72.600000" markerHeight="54.000000" refX="11.850000" refY="27.000000" viewBox="0.000000 0.000000 72.600000 54.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="white" stroke="#0D32B2" stroke-width="6" points="8.250000,27.000000 39.600000,6.750000 72.600000,27.000000 39.600000,47.250000" /> </marker><marker id="mk-4034884378" markerWidth="66.000000" markerHeight="42.000000" refX="57.000000" refY="21.000000" viewBox="0.000000 0.000000 66.000000 42.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="6" points="0.000000,21.000000 33.000000,0.000000 66.000000,21.000000 33.000000,42.000000" /> </marker><path d="M 165.207267 364.471312 C 173.307522 392.000000 182.800000 415.600000 203.793018 459.188555" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:6;" marker-start="url(#mk-2920934274)" marker-end="url(#mk-4034884378)" /><path d="M 143.000000 116.000000 C 143.000000 162.600000 143.000000 186.000000 143.000000 218.500000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:7;" /><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 239.061130 460.094579 C 247.200000 414.800000 249.500000 379.400000 249.500000 345.500000 C 249.500000 311.600000 233.400000 159.000000 173.469570 95.719422" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-start="url(#mk-2510427236)" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 328 KiB After Width: | Height: | Size: 328 KiB |
|
Before Width: | Height: | Size: 328 KiB After Width: | Height: | Size: 328 KiB |
|
Before Width: | Height: | Size: 330 KiB After Width: | Height: | Size: 330 KiB |
|
Before Width: | Height: | Size: 331 KiB After Width: | Height: | Size: 331 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="634" height="652" viewBox="-100 -100 634 652"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="0" width="251" height="452"/></g><text class="text-bold" x="125.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">aaa</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 301 74 C 301 50 360.85 50 367.5 50 C 374.15 50 434 50 434 74 V 152 C 434 176 374.15 176 367.5 176 C 360.85 176 301 176 301 152 V 74 Z"/><path d="M 301 74 C 301 98 360.85 98 367.5 98 C 374.15 98 434 98 434 74"/></g><text class="text-bold" x="367.500000" y="128.000000" style="text-anchor:middle;font-size:16px;fill:black">ddd</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 301 384.5231 L 301 276 L 431 276 L 431 384.5231 C 409.3333 361.2206 387.6667 361.2206 366 384.5231 C 344.3333 407.8256 322.6667 407.8256 301 384.5231 Z"/></g><text class="text-bold" x="366.000000" y="342.000000" style="text-anchor:middle;font-size:16px;fill:black">eee</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 50 276 V 357 H 116 V 402 L 146 357 H 182 V 276 H 50 Z"/></g><text class="text-bold" x="116.000000" y="319.500000" style="text-anchor:middle;font-size:16px;fill:black">bbb</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="72" y="50" width="128" height="126"/></g><text class="text-bold" x="136.000000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:black">ccc</text><mask id="mask-3626742025" maskUnits="userSpaceOnUse" x="105.000000" y="174.000000" width="23.000000" height="104.000000">
|
||||
</style><g class="shape" ><rect x="0" y="0" width="251" height="452" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="125.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">aaa</text><g class="shape" ><path d="M 301 74 C 301 50 360.85 50 367.5 50 C 374.15 50 434 50 434 74 V 152 C 434 176 374.15 176 367.5 176 C 360.85 176 301 176 301 152 V 74 Z" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/><path d="M 301 74 C 301 98 360.85 98 367.5 98 C 374.15 98 434 98 434 74" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="367.500000" y="128.000000" style="text-anchor:middle;font-size:16px;fill:black">ddd</text><g class="shape" ><path d="M 301 384.5231 L 301 276 L 431 276 L 431 384.5231 C 409.3333 361.2206 387.6667 361.2206 366 384.5231 C 344.3333 407.8256 322.6667 407.8256 301 384.5231 Z" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="366.000000" y="342.000000" style="text-anchor:middle;font-size:16px;fill:black">eee</text><g class="shape" ><path d="M 50 276 V 357 H 116 V 402 L 146 357 H 182 V 276 H 50 Z" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="116.000000" y="319.500000" style="text-anchor:middle;font-size:16px;fill:black">bbb</text><g class="shape" ><rect x="72" y="50" width="128" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="136.000000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:black">ccc</text><mask id="mask-3626742025" maskUnits="userSpaceOnUse" x="105.000000" y="174.000000" width="23.000000" height="104.000000">
|
||||
<rect x="105.000000" y="174.000000" width="23.000000" height="104.000000" fill="white"></rect>
|
||||
<rect x="105.000000" y="215.000000" width="23" height="21" fill="black"></rect>
|
||||
</mask><path d="M 124.500993 177.969391 C 117.769912 216.000000 116.000000 236.000000 116.000000 274.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" mask="url(#mask-3626742025)" /><text class="text-italic" x="116.500000" y="231.000000" style="text-anchor:middle;font-size:16px;fill:black">111</text><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><mask id="mask-2957989372" maskUnits="userSpaceOnUse" x="145.000000" y="162.000000" width="168.000000" height="153.000000">
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 469 KiB After Width: | Height: | Size: 469 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="888" height="622" viewBox="-88 -88 888 622"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="375" y="12" width="325" height="422"/></g><text class="text-bold" x="537.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">aaa</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 12 111 C 12 87 71.85 87 78.5 87 C 85.15 87 145 87 145 111 V 189 C 145 213 85.15 213 78.5 213 C 71.85 213 12 213 12 189 V 111 Z"/><path d="M 12 111 C 12 135 71.85 135 78.5 135 C 85.15 135 145 135 145 111"/></g><text class="text-bold" x="78.500000" y="165.000000" style="text-anchor:middle;font-size:16px;fill:black">ddd</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 15 341.5231 L 15 233 L 145 233 L 145 341.5231 C 123.3333 318.2206 101.6667 318.2206 80 341.5231 C 58.3333 364.8256 36.6667 364.8256 15 341.5231 Z"/></g><text class="text-bold" x="80.000000" y="299.000000" style="text-anchor:middle;font-size:16px;fill:black">eee</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 450 87 V 168 H 516 V 213 L 546 168 H 582 V 87 H 450 Z"/></g><text class="text-bold" x="516.000000" y="130.500000" style="text-anchor:middle;font-size:16px;fill:black">bbb</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="452" y="233" width="128" height="126"/></g><text class="text-bold" x="516.000000" y="299.000000" style="text-anchor:middle;font-size:16px;fill:black">ccc</text><mask id="mask-3626742025" maskUnits="userSpaceOnUse" x="578.000000" y="286.000000" width="124.000000" height="21.000000">
|
||||
</style><g class="shape" ><rect x="375" y="12" width="325" height="422" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="537.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">aaa</text><g class="shape" ><path d="M 12 111 C 12 87 71.85 87 78.5 87 C 85.15 87 145 87 145 111 V 189 C 145 213 85.15 213 78.5 213 C 71.85 213 12 213 12 189 V 111 Z" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/><path d="M 12 111 C 12 135 71.85 135 78.5 135 C 85.15 135 145 135 145 111" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="78.500000" y="165.000000" style="text-anchor:middle;font-size:16px;fill:black">ddd</text><g class="shape" ><path d="M 15 341.5231 L 15 233 L 145 233 L 145 341.5231 C 123.3333 318.2206 101.6667 318.2206 80 341.5231 C 58.3333 364.8256 36.6667 364.8256 15 341.5231 Z" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="80.000000" y="299.000000" style="text-anchor:middle;font-size:16px;fill:black">eee</text><g class="shape" ><path d="M 450 87 V 168 H 516 V 213 L 546 168 H 582 V 87 H 450 Z" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="516.000000" y="130.500000" style="text-anchor:middle;font-size:16px;fill:black">bbb</text><g class="shape" ><rect x="452" y="233" width="128" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="516.000000" y="299.000000" style="text-anchor:middle;font-size:16px;fill:black">ccc</text><mask id="mask-3626742025" maskUnits="userSpaceOnUse" x="578.000000" y="286.000000" width="124.000000" height="21.000000">
|
||||
<rect x="578.000000" y="286.000000" width="124.000000" height="21.000000" fill="white"></rect>
|
||||
<rect x="629.000000" y="286.000000" width="23" height="21" fill="black"></rect>
|
||||
</mask><path d="M 582.000000 296.000000 L 698.000000 296.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" mask="url(#mask-3626742025)" /><text class="text-italic" x="640.500000" y="302.000000" style="text-anchor:middle;font-size:16px;fill:black">111</text><marker id="mk-2510427236" markerWidth="10.000000" markerHeight="12.000000" refX="3.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="10.000000,0.000000 0.000000,6.000000 10.000000,12.000000" /> </marker><mask id="mask-2957989372" maskUnits="userSpaceOnUse" x="133.000000" y="282.000000" width="331.000000" height="28.000000">
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 469 KiB After Width: | Height: | Size: 469 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1317" height="1854" viewBox="-100 -100 1317 1854"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,10 +790,10 @@ width="1317" height="1854" viewBox="-100 -100 1317 1854"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="0" width="1117" height="1654"/></g><text class="text-bold" x="558.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">aa</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="40" y="50" width="776" height="1554"/></g><text class="text-bold" x="428.000000" y="79.000000" style="text-anchor:middle;font-size:24px;fill:black">bb</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="915" y="652" width="114" height="126"/></g><text class="text-bold" x="972.000000" y="718.000000" style="text-anchor:middle;font-size:16px;fill:black">ll</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 902 450 C 902 426 960.95 426 967.5 426 C 974.05 426 1033 426 1033 450 V 528 C 1033 552 974.05 552 967.5 552 C 960.95 552 902 552 902 528 V 450 Z"/><path d="M 902 450 C 902 474 960.95 474 967.5 474 C 974.05 474 1033 474 1033 450"/></g><text class="text-bold" x="967.500000" y="504.000000" style="text-anchor:middle;font-size:16px;fill:black">mm</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="867.000000" y="1429.000000" width="18" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>nn</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="945" y="1378" width="123" height="126"/></g><text class="text-bold" x="1006.500000" y="1444.000000" style="text-anchor:middle;font-size:16px;fill:black">oo</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="80" y="878" width="510" height="676"/></g><text class="text-bold" x="335.000000" y="903.000000" style="text-anchor:middle;font-size:20px;fill:black">cc</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 106 100 L 256 100 L 256 145.2 L 473 145.2 L 473 326 L 106 326 Z"/></g><text class="text-bold" x="289.500000" y="125.000000" style="text-anchor:middle;font-size:20px;fill:black">ii</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><ellipse class="shape" cx="704.000000" cy="1441.000000" rx="63.000000" ry="63.000000" /></g><text class="text-bold" x="704.000000" y="1444.000000" style="text-anchor:middle;font-size:16px;fill:black">kk</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="120" y="928" width="355" height="226"/></g><text class="text-bold" x="297.500000" y="949.000000" style="text-anchor:middle;font-size:16px;fill:black">dd</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="409.000000" y="1254.000000" width="17" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>gg</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="356" y="1378" width="123" height="126"/></g><text class="text-bold" x="417.500000" y="1444.000000" style="text-anchor:middle;font-size:16px;fill:black">hh</text><g class="shape" style="fill:#CFD2DD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 300.5 276 C 300.0519 276 299.7532 275.8362 299.4545 275.5085 L 243.4481 214.2289 C 242.8507 213.5735 242.8507 212.5904 243.4481 211.935 L 299.4545 150.4915 C 300.0519 149.8361 300.948 149.8361 301.5454 150.4915 L 357.5519 211.9349 C 358.1493 212.5903 358.1493 213.5734 357.5519 214.2288 L 301.5455 275.5085 C 301.2468 275.8362 300.9481 276 300.5 276 Z"/></g><text class="text-bold" x="300.500000" y="216.000000" style="text-anchor:middle;font-size:16px;fill:black">jj</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="232.000000" y="1029.000000" width="16" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>ee</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="308" y="978" width="117" height="126"/></g><text class="text-bold" x="366.500000" y="1044.000000" style="text-anchor:middle;font-size:16px;fill:black">ff</text><mask id="mask-3834907066" maskUnits="userSpaceOnUse" x="238.000000" y="1051.000000" width="173.000000" height="214.000000">
|
||||
</style><g class="shape" ><rect x="0" y="0" width="1117" height="1654" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="558.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">aa</text><g class="shape" ><rect x="40" y="50" width="776" height="1554" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="428.000000" y="79.000000" style="text-anchor:middle;font-size:24px;fill:black">bb</text><g class="shape" ><rect x="915" y="652" width="114" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="972.000000" y="718.000000" style="text-anchor:middle;font-size:16px;fill:black">ll</text><g class="shape" ><path d="M 902 450 C 902 426 960.95 426 967.5 426 C 974.05 426 1033 426 1033 450 V 528 C 1033 552 974.05 552 967.5 552 C 960.95 552 902 552 902 528 V 450 Z" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/><path d="M 902 450 C 902 474 960.95 474 967.5 474 C 974.05 474 1033 474 1033 450" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="967.500000" y="504.000000" style="text-anchor:middle;font-size:16px;fill:black">mm</text><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="867.000000" y="1429.000000" width="18" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>nn</p>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="945" y="1378" width="123" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1006.500000" y="1444.000000" style="text-anchor:middle;font-size:16px;fill:black">oo</text><g class="shape" ><rect x="80" y="878" width="510" height="676" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="335.000000" y="903.000000" style="text-anchor:middle;font-size:20px;fill:black">cc</text><g class="shape" ><path d="M 106 100 L 256 100 L 256 145.2 L 473 145.2 L 473 326 L 106 326 Z" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="289.500000" y="125.000000" style="text-anchor:middle;font-size:20px;fill:black">ii</text><g class="shape" ><ellipse class="shape" cx="704.000000" cy="1441.000000" rx="63.000000" ry="63.000000" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="704.000000" y="1444.000000" style="text-anchor:middle;font-size:16px;fill:black">kk</text><g class="shape" ><rect x="120" y="928" width="355" height="226" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="297.500000" y="949.000000" style="text-anchor:middle;font-size:16px;fill:black">dd</text><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="409.000000" y="1254.000000" width="17" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>gg</p>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="356" y="1378" width="123" height="126" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="417.500000" y="1444.000000" style="text-anchor:middle;font-size:16px;fill:black">hh</text><g class="shape" ><path d="M 300.5 276 C 300.0519 276 299.7532 275.8362 299.4545 275.5085 L 243.4481 214.2289 C 242.8507 213.5735 242.8507 212.5904 243.4481 211.935 L 299.4545 150.4915 C 300.0519 149.8361 300.948 149.8361 301.5454 150.4915 L 357.5519 211.9349 C 358.1493 212.5903 358.1493 213.5734 357.5519 214.2288 L 301.5455 275.5085 C 301.2468 275.8362 300.9481 276 300.5 276 Z" style="fill:#CFD2DD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="300.500000" y="216.000000" style="text-anchor:middle;font-size:16px;fill:black">jj</text><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="232.000000" y="1029.000000" width="16" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>ee</p>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="308" y="978" width="117" height="126" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="366.500000" y="1044.000000" style="text-anchor:middle;font-size:16px;fill:black">ff</text><mask id="mask-3834907066" maskUnits="userSpaceOnUse" x="238.000000" y="1051.000000" width="173.000000" height="214.000000">
|
||||
<rect x="238.000000" y="1051.000000" width="173.000000" height="214.000000" fill="white"></rect>
|
||||
<rect x="261.000000" y="1193.000000" width="15" height="21" fill="black"></rect>
|
||||
</mask><path d="M 240.000000 1055.000000 C 240.000000 1133.800000 273.800000 1215.800000 407.111761 1262.340792" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" mask="url(#mask-3834907066)" /><text class="text-italic" x="268.500000" y="1209.000000" style="text-anchor:middle;font-size:16px;fill:black">11</text><mask id="mask-1342911600" maskUnits="userSpaceOnUse" x="409.000000" y="1276.000000" width="17.000000" height="104.000000">
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 813 KiB After Width: | Height: | Size: 813 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1856" height="1097" viewBox="-88 -88 1856 1097"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,10 +790,10 @@ width="1856" height="1097" viewBox="-88 -88 1856 1097"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="1656" height="897"/></g><text class="text-bold" x="840.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">aa</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="434" y="132" width="1134" height="702"/></g><text class="text-bold" x="1001.000000" y="161.000000" style="text-anchor:middle;font-size:24px;fill:black">bb</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="238" y="356" width="114" height="126"/></g><text class="text-bold" x="295.000000" y="422.000000" style="text-anchor:middle;font-size:16px;fill:black">ll</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 87 495 C 87 471 145.95 471 152.5 471 C 159.05 471 218 471 218 495 V 573 C 218 597 159.05 597 152.5 597 C 145.95 597 87 597 87 573 V 495 Z"/><path d="M 87 495 C 87 519 145.95 519 152.5 519 C 159.05 519 218 519 218 495"/></g><text class="text-bold" x="152.500000" y="549.000000" style="text-anchor:middle;font-size:16px;fill:black">mm</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="144.000000" y="427.000000" width="18" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>nn</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="91" y="617" width="123" height="126"/></g><text class="text-bold" x="152.500000" y="683.000000" style="text-anchor:middle;font-size:16px;fill:black">oo</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="819" y="278" width="674" height="481"/></g><text class="text-bold" x="1156.000000" y="303.000000" style="text-anchor:middle;font-size:20px;fill:black">cc</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 509 364 L 641.5 364 L 641.5 419 L 774 419 L 774 640 L 509 640 Z"/></g><text class="text-bold" x="641.500000" y="389.000000" style="text-anchor:middle;font-size:20px;fill:black">ii</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><ellipse class="shape" cx="642.000000" cy="270.000000" rx="63.000000" ry="63.000000" /></g><text class="text-bold" x="642.000000" y="273.000000" style="text-anchor:middle;font-size:16px;fill:black">kk</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="894" y="364" width="267" height="320"/></g><text class="text-bold" x="1027.500000" y="385.000000" style="text-anchor:middle;font-size:16px;fill:black">dd</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="1221.000000" y="581.000000" width="17" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>gg</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="1295" y="530" width="123" height="126"/></g><text class="text-bold" x="1356.500000" y="596.000000" style="text-anchor:middle;font-size:16px;fill:black">hh</text><g class="shape" style="fill:#CFD2DD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><path d="M 641.5 565 C 641.0519 565 640.7532 564.8362 640.4545 564.5085 L 584.4481 503.2289 C 583.8507 502.5735 583.8507 501.5904 584.4481 500.935 L 640.4545 439.4915 C 641.0519 438.8361 641.948 438.8361 642.5454 439.4915 L 698.5519 500.9349 C 699.1493 501.5903 699.1493 502.5734 698.5519 503.2288 L 642.5455 564.5085 C 642.2468 564.8362 641.9481 565 641.5 565 Z"/></g><text class="text-bold" x="641.500000" y="505.000000" style="text-anchor:middle;font-size:16px;fill:black">jj</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="1070.000000" y="585.000000" width="16" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>ee</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="969" y="439" width="117" height="126"/></g><text class="text-bold" x="1027.500000" y="505.000000" style="text-anchor:middle;font-size:16px;fill:black">ff</text><mask id="mask-3834907066" maskUnits="userSpaceOnUse" x="1084.000000" y="587.000000" width="139.000000" height="21.000000">
|
||||
</style><g class="shape" ><rect x="12" y="12" width="1656" height="897" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="840.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">aa</text><g class="shape" ><rect x="434" y="132" width="1134" height="702" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1001.000000" y="161.000000" style="text-anchor:middle;font-size:24px;fill:black">bb</text><g class="shape" ><rect x="238" y="356" width="114" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="295.000000" y="422.000000" style="text-anchor:middle;font-size:16px;fill:black">ll</text><g class="shape" ><path d="M 87 495 C 87 471 145.95 471 152.5 471 C 159.05 471 218 471 218 495 V 573 C 218 597 159.05 597 152.5 597 C 145.95 597 87 597 87 573 V 495 Z" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/><path d="M 87 495 C 87 519 145.95 519 152.5 519 C 159.05 519 218 519 218 495" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="152.500000" y="549.000000" style="text-anchor:middle;font-size:16px;fill:black">mm</text><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="144.000000" y="427.000000" width="18" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>nn</p>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="91" y="617" width="123" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="152.500000" y="683.000000" style="text-anchor:middle;font-size:16px;fill:black">oo</text><g class="shape" ><rect x="819" y="278" width="674" height="481" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1156.000000" y="303.000000" style="text-anchor:middle;font-size:20px;fill:black">cc</text><g class="shape" ><path d="M 509 364 L 641.5 364 L 641.5 419 L 774 419 L 774 640 L 509 640 Z" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="641.500000" y="389.000000" style="text-anchor:middle;font-size:20px;fill:black">ii</text><g class="shape" ><ellipse class="shape" cx="642.000000" cy="270.000000" rx="63.000000" ry="63.000000" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="642.000000" y="273.000000" style="text-anchor:middle;font-size:16px;fill:black">kk</text><g class="shape" ><rect x="894" y="364" width="267" height="320" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1027.500000" y="385.000000" style="text-anchor:middle;font-size:16px;fill:black">dd</text><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="1221.000000" y="581.000000" width="17" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>gg</p>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="1295" y="530" width="123" height="126" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1356.500000" y="596.000000" style="text-anchor:middle;font-size:16px;fill:black">hh</text><g class="shape" ><path d="M 641.5 565 C 641.0519 565 640.7532 564.8362 640.4545 564.5085 L 584.4481 503.2289 C 583.8507 502.5735 583.8507 501.5904 584.4481 500.935 L 640.4545 439.4915 C 641.0519 438.8361 641.948 438.8361 642.5454 439.4915 L 698.5519 500.9349 C 699.1493 501.5903 699.1493 502.5734 698.5519 503.2288 L 642.5455 564.5085 C 642.2468 564.8362 641.9481 565 641.5 565 Z" style="fill:#CFD2DD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;"/></g><text class="text-bold" x="641.500000" y="505.000000" style="text-anchor:middle;font-size:16px;fill:black">jj</text><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="1070.000000" y="585.000000" width="16" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>ee</p>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="969" y="439" width="117" height="126" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1027.500000" y="505.000000" style="text-anchor:middle;font-size:16px;fill:black">ff</text><mask id="mask-3834907066" maskUnits="userSpaceOnUse" x="1084.000000" y="587.000000" width="139.000000" height="21.000000">
|
||||
<rect x="1084.000000" y="587.000000" width="139.000000" height="21.000000" fill="white"></rect>
|
||||
<rect x="1146.000000" y="587.000000" width="15" height="21" fill="black"></rect>
|
||||
</mask><path d="M 1088.000000 597.000000 L 1219.000000 597.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" mask="url(#mask-3834907066)" /><text class="text-italic" x="1153.500000" y="603.000000" style="text-anchor:middle;font-size:16px;fill:black">11</text><mask id="mask-1342911600" maskUnits="userSpaceOnUse" x="1236.000000" y="583.000000" width="61.000000" height="21.000000">
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 814 KiB After Width: | Height: | Size: 814 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="694" height="626" viewBox="-100 -100 694 626"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="0" width="494" height="426"/></g><text class="text-bold" x="247.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="40" y="50" width="414" height="326"/></g><text class="text-bold" x="247.000000" y="79.000000" style="text-anchor:middle;font-size:24px;fill:black">b</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="80" y="100" width="334" height="226"/></g><text class="text-bold" x="247.000000" y="125.000000" style="text-anchor:middle;font-size:20px;fill:black">c</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="130" y="150" width="114" height="126"/></g><text class="text-bold" x="187.000000" y="216.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 245.640452 172.103153 C 270.666667 154.649446 279.000000 150.000000 281.500000 150.000000 C 284.000000 150.000000 287.333333 162.600000 289.833333 181.500000 C 292.333333 200.400000 292.333333 225.600000 289.833333 244.500000 C 287.333333 263.400000 270.666667 271.350554 247.280904 255.040926" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 245.760942 181.359493 C 292.000000 156.461538 307.000000 150.000000 311.500000 150.000000 C 316.000000 150.000000 322.000000 162.600000 326.500000 181.500000 C 331.000000 200.400000 331.000000 225.600000 326.500000 244.500000 C 322.000000 263.400000 292.000000 269.538462 247.521884 245.588707" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 245.666473 237.972160 C 243.933333 237.996288 243.733333 237.999072 240.000388 238.051039" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="0" y="0" width="494" height="426" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="247.000000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" ><rect x="40" y="50" width="414" height="326" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="247.000000" y="79.000000" style="text-anchor:middle;font-size:24px;fill:black">b</text><g class="shape" ><rect x="80" y="100" width="334" height="226" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="247.000000" y="125.000000" style="text-anchor:middle;font-size:20px;fill:black">c</text><g class="shape" ><rect x="130" y="150" width="114" height="126" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="187.000000" y="216.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 245.640452 172.103153 C 270.666667 154.649446 279.000000 150.000000 281.500000 150.000000 C 284.000000 150.000000 287.333333 162.600000 289.833333 181.500000 C 292.333333 200.400000 292.333333 225.600000 289.833333 244.500000 C 287.333333 263.400000 270.666667 271.350554 247.280904 255.040926" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 245.760942 181.359493 C 292.000000 156.461538 307.000000 150.000000 311.500000 150.000000 C 316.000000 150.000000 322.000000 162.600000 326.500000 181.500000 C 331.000000 200.400000 331.000000 225.600000 326.500000 244.500000 C 322.000000 263.400000 292.000000 269.538462 247.521884 245.588707" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 245.666473 237.972160 C 243.933333 237.996288 243.733333 237.999072 240.000388 238.051039" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 326 KiB After Width: | Height: | Size: 326 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="789" height="786" viewBox="-88 -88 789 786"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="589" height="586"/></g><text class="text-bold" x="306.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="87" y="87" width="439" height="436"/></g><text class="text-bold" x="306.500000" y="116.000000" style="text-anchor:middle;font-size:24px;fill:black">b</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="162" y="162" width="264" height="276"/></g><text class="text-bold" x="294.000000" y="187.000000" style="text-anchor:middle;font-size:20px;fill:black">c</text><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="237" y="237" width="114" height="126"/></g><text class="text-bold" x="294.000000" y="303.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 528.000000 162.000000 L 597.000000 162.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 89.000000 237.000000 L 158.000000 237.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 353.000000 300.000000 L 431.000000 300.000000 S 441.000000 300.000000 441.000000 310.000000 L 441.000000 438.000000 S 441.000000 448.000000 431.000000 448.000000 L 91.000000 448.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="12" y="12" width="589" height="586" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="306.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" ><rect x="87" y="87" width="439" height="436" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="306.500000" y="116.000000" style="text-anchor:middle;font-size:24px;fill:black">b</text><g class="shape" ><rect x="162" y="162" width="264" height="276" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="294.000000" y="187.000000" style="text-anchor:middle;font-size:20px;fill:black">c</text><g class="shape" ><rect x="237" y="237" width="114" height="126" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="294.000000" y="303.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 528.000000 162.000000 L 597.000000 162.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 89.000000 237.000000 L 158.000000 237.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 353.000000 300.000000 L 431.000000 300.000000 S 441.000000 300.000000 441.000000 310.000000 L 441.000000 438.000000 S 441.000000 448.000000 431.000000 448.000000 L 91.000000 448.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 325 KiB After Width: | Height: | Size: 325 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="313" height="778" viewBox="-100 -100 313 778"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="0" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="226" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="452" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="518.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 45.000993 127.969391 C 38.269912 166.000000 38.300000 186.000000 44.791388 222.063267" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 45.000993 353.969391 C 38.269912 392.000000 38.300000 412.000000 44.791388 448.063267" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 67.999007 450.030609 C 74.730088 412.000000 74.700000 392.000000 68.208612 355.936733" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 67.999007 224.030609 C 74.730088 186.000000 74.700000 166.000000 68.208612 129.936733" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="0" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="0" y="226" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="292.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="0" y="452" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="518.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 45.000993 127.969391 C 38.269912 166.000000 38.300000 186.000000 44.791388 222.063267" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 45.000993 353.969391 C 38.269912 392.000000 38.300000 412.000000 44.791388 448.063267" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 67.999007 450.030609 C 74.730088 412.000000 74.700000 392.000000 68.208612 355.936733" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 67.999007 224.030609 C 74.730088 186.000000 74.700000 166.000000 68.208612 129.936733" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 325 KiB After Width: | Height: | Size: 325 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="739" height="326" viewBox="-88 -88 739 326"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="225" y="12" width="113" height="126"/></g><text class="text-bold" x="281.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="438" y="12" width="113" height="126"/></g><text class="text-bold" x="494.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 54.000000 L 221.000000 54.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 340.000000 54.000000 L 434.000000 54.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 436.000000 96.000000 L 342.000000 96.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 223.000000 96.000000 L 129.000000 96.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="12" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="225" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="281.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="438" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="494.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 54.000000 L 221.000000 54.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 340.000000 54.000000 L 434.000000 54.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 436.000000 96.000000 L 342.000000 96.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 223.000000 96.000000 L 129.000000 96.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 325 KiB After Width: | Height: | Size: 325 KiB |
75
e2etests/testdata/stable/class/dagre/board.exp.json
vendored
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
{
|
||||
"name": "",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "manager",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 0,
|
||||
"y": 0
|
||||
},
|
||||
"width": 339,
|
||||
"height": 368,
|
||||
"level": 1,
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 2,
|
||||
"borderRadius": 0,
|
||||
"fill": "#FFFFFF",
|
||||
"stroke": "#0A0F25",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"fields": [
|
||||
{
|
||||
"name": "num",
|
||||
"type": "int",
|
||||
"visibility": "private"
|
||||
},
|
||||
{
|
||||
"name": "timeout",
|
||||
"type": "int",
|
||||
"visibility": "private"
|
||||
},
|
||||
{
|
||||
"name": "pid",
|
||||
"type": "",
|
||||
"visibility": "private"
|
||||
}
|
||||
],
|
||||
"methods": [
|
||||
{
|
||||
"name": "getStatus()",
|
||||
"return": "Enum",
|
||||
"visibility": "public"
|
||||
},
|
||||
{
|
||||
"name": "getJobs()",
|
||||
"return": "Job[]",
|
||||
"visibility": "public"
|
||||
},
|
||||
{
|
||||
"name": "setTimeout(seconds int)",
|
||||
"return": "void",
|
||||
"visibility": "public"
|
||||
}
|
||||
],
|
||||
"columns": null,
|
||||
"label": "BatchManager",
|
||||
"fontSize": 20,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "#0A0F25",
|
||||
"italic": false,
|
||||
"bold": true,
|
||||
"underline": false,
|
||||
"labelWidth": 150,
|
||||
"labelHeight": 36
|
||||
}
|
||||
],
|
||||
"connections": []
|
||||
}
|
||||
36
e2etests/testdata/stable/class/dagre/sketch.exp.svg
vendored
Normal file
|
After Width: | Height: | Size: 327 KiB |
75
e2etests/testdata/stable/class/elk/board.exp.json
vendored
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
{
|
||||
"name": "",
|
||||
"shapes": [
|
||||
{
|
||||
"id": "manager",
|
||||
"type": "class",
|
||||
"pos": {
|
||||
"x": 12,
|
||||
"y": 12
|
||||
},
|
||||
"width": 339,
|
||||
"height": 368,
|
||||
"level": 1,
|
||||
"opacity": 1,
|
||||
"strokeDash": 0,
|
||||
"strokeWidth": 2,
|
||||
"borderRadius": 0,
|
||||
"fill": "#FFFFFF",
|
||||
"stroke": "#0A0F25",
|
||||
"shadow": false,
|
||||
"3d": false,
|
||||
"multiple": false,
|
||||
"tooltip": "",
|
||||
"link": "",
|
||||
"icon": null,
|
||||
"iconPosition": "",
|
||||
"fields": [
|
||||
{
|
||||
"name": "num",
|
||||
"type": "int",
|
||||
"visibility": "private"
|
||||
},
|
||||
{
|
||||
"name": "timeout",
|
||||
"type": "int",
|
||||
"visibility": "private"
|
||||
},
|
||||
{
|
||||
"name": "pid",
|
||||
"type": "",
|
||||
"visibility": "private"
|
||||
}
|
||||
],
|
||||
"methods": [
|
||||
{
|
||||
"name": "getStatus()",
|
||||
"return": "Enum",
|
||||
"visibility": "public"
|
||||
},
|
||||
{
|
||||
"name": "getJobs()",
|
||||
"return": "Job[]",
|
||||
"visibility": "public"
|
||||
},
|
||||
{
|
||||
"name": "setTimeout(seconds int)",
|
||||
"return": "void",
|
||||
"visibility": "public"
|
||||
}
|
||||
],
|
||||
"columns": null,
|
||||
"label": "BatchManager",
|
||||
"fontSize": 20,
|
||||
"fontFamily": "DEFAULT",
|
||||
"language": "",
|
||||
"color": "#0A0F25",
|
||||
"italic": false,
|
||||
"bold": true,
|
||||
"underline": false,
|
||||
"labelWidth": 150,
|
||||
"labelHeight": 36
|
||||
}
|
||||
],
|
||||
"connections": []
|
||||
}
|
||||
36
e2etests/testdata/stable/class/elk/sketch.exp.svg
vendored
Normal file
|
After Width: | Height: | Size: 327 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="955" height="818" viewBox="-100 -100 955 818"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0A0F25;opacity:1.000000;stroke-width:2;" ></g><g transform="translate(0.000000 226.000000)" style="opacity:1.000000"><rect class="shape" width="755" height="166" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic">// RegisterHash registers a function that returns a new instance of the given
|
||||
</style><g class="shape" ></g><g transform="translate(0.000000 226.000000)" style="opacity:1.000000"><rect class="shape" width="755" height="166" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic">// RegisterHash registers a function that returns a new instance of the given
|
||||
</tspan></text><text class="text-mono" x="0" y="2.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#999988" font-style="italic">// hash function. This is intended to be called from the init function in
|
||||
</tspan></text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#999988" font-style="italic">// packages that implement hash functions.
|
||||
</tspan></text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#000000" font-weight="bold">func</tspan> <tspan fill="#990000" font-weight="bold">RegisterHash</tspan>(h Hash, f <tspan fill="#000000" font-weight="bold">func</tspan>() hash.Hash) {
|
||||
|
|
@ -21,7 +22,7 @@ width="955" height="818" viewBox="-100 -100 955 818"><style type="text/css">
|
|||
</text><text class="text-mono" x="0" y="6.000000em" xml:space="preserve">        <tspan fill="#0086b3">panic</tspan>(<tspan fill="#dd1144">"crypto: RegisterHash of unknown hash function"</tspan>)
|
||||
</text><text class="text-mono" x="0" y="7.000000em" xml:space="preserve">    }
|
||||
</text><text class="text-mono" x="0" y="8.000000em" xml:space="preserve">    hashes[h] = f
|
||||
</text><text class="text-mono" x="0" y="9.000000em" xml:space="preserve">}</text></g></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="321" y="0" width="113" height="126"/></g><text class="text-bold" x="377.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">x</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="321" y="492" width="114" height="126"/></g><text class="text-bold" x="378.000000" y="558.000000" style="text-anchor:middle;font-size:16px;fill:black">y</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 377.500000 128.000000 C 377.500000 166.000000 377.500000 186.000000 377.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 377.500000 394.000000 C 377.500000 432.000000 377.500000 452.000000 377.500000 488.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</text><text class="text-mono" x="0" y="9.000000em" xml:space="preserve">}</text></g></g><g class="shape" ><rect x="321" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="377.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">x</text><g class="shape" ><rect x="321" y="492" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="378.000000" y="558.000000" style="text-anchor:middle;font-size:16px;fill:black">y</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 377.500000 128.000000 C 377.500000 166.000000 377.500000 186.000000 377.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 377.500000 394.000000 C 377.500000 432.000000 377.500000 452.000000 377.500000 488.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 507 KiB After Width: | Height: | Size: 507 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1382" height="366" viewBox="-88 -88 1382 366"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0A0F25;opacity:1.000000;stroke-width:2;" ></g><g transform="translate(225.000000 12.000000)" style="opacity:1.000000"><rect class="shape" width="755" height="166" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic">// RegisterHash registers a function that returns a new instance of the given
|
||||
</style><g class="shape" ></g><g transform="translate(225.000000 12.000000)" style="opacity:1.000000"><rect class="shape" width="755" height="166" style="stroke: #0A0F25;fill:#ffffff" /><g transform="translate(6 6)"><text class="text-mono" x="0" y="1.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic">// RegisterHash registers a function that returns a new instance of the given
|
||||
</tspan></text><text class="text-mono" x="0" y="2.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#999988" font-style="italic">// hash function. This is intended to be called from the init function in
|
||||
</tspan></text><text class="text-mono" x="0" y="3.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#999988" font-style="italic">// packages that implement hash functions.
|
||||
</tspan></text><text class="text-mono" x="0" y="4.000000em" xml:space="preserve"><tspan fill="#999988" font-style="italic"></tspan><tspan fill="#000000" font-weight="bold">func</tspan> <tspan fill="#990000" font-weight="bold">RegisterHash</tspan>(h Hash, f <tspan fill="#000000" font-weight="bold">func</tspan>() hash.Hash) {
|
||||
|
|
@ -21,7 +22,7 @@ width="1382" height="366" viewBox="-88 -88 1382 366"><style type="text/css">
|
|||
</text><text class="text-mono" x="0" y="6.000000em" xml:space="preserve">        <tspan fill="#0086b3">panic</tspan>(<tspan fill="#dd1144">"crypto: RegisterHash of unknown hash function"</tspan>)
|
||||
</text><text class="text-mono" x="0" y="7.000000em" xml:space="preserve">    }
|
||||
</text><text class="text-mono" x="0" y="8.000000em" xml:space="preserve">    hashes[h] = f
|
||||
</text><text class="text-mono" x="0" y="9.000000em" xml:space="preserve">}</text></g></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="32" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="98.000000" style="text-anchor:middle;font-size:16px;fill:black">x</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="1080" y="32" width="114" height="126"/></g><text class="text-bold" x="1137.000000" y="98.000000" style="text-anchor:middle;font-size:16px;fill:black">y</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 95.000000 L 221.000000 95.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 982.000000 95.000000 L 1076.000000 95.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</text><text class="text-mono" x="0" y="9.000000em" xml:space="preserve">}</text></g></g><g class="shape" ><rect x="12" y="32" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="98.000000" style="text-anchor:middle;font-size:16px;fill:black">x</text><g class="shape" ><rect x="1080" y="32" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1137.000000" y="98.000000" style="text-anchor:middle;font-size:16px;fill:black">y</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 95.000000 L 221.000000 95.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 982.000000 95.000000 L 1076.000000 95.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 507 KiB After Width: | Height: | Size: 507 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="494" height="1178" viewBox="-100 -100 494 1178"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="41" y="0" width="213" height="226"/></g><text class="text-bold" x="147.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="40" y="326" width="214" height="226"/></g><text class="text-bold" x="147.000000" y="359.000000" style="text-anchor:middle;font-size:28px;fill:black">c</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="652" width="294" height="326"/></g><text class="text-bold" x="147.000000" y="685.000000" style="text-anchor:middle;font-size:28px;fill:black">f</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="91" y="50" width="113" height="126"/></g><text class="text-bold" x="147.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="90" y="376" width="114" height="126"/></g><text class="text-bold" x="147.000000" y="442.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="40" y="702" width="214" height="226"/></g><text class="text-bold" x="147.000000" y="731.000000" style="text-anchor:middle;font-size:24px;fill:black">h</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="90" y="752" width="114" height="126"/></g><text class="text-bold" x="147.000000" y="818.000000" style="text-anchor:middle;font-size:16px;fill:black">g</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 147.000000 178.000000 C 147.000000 216.000000 147.000000 236.000000 147.000000 251.000000 C 147.000000 266.000000 147.000000 336.000000 147.000000 372.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 147.000000 504.000000 C 147.000000 542.000000 147.000000 562.000000 147.000000 577.000000 C 147.000000 592.000000 147.000000 612.000000 147.000000 627.000000 C 147.000000 642.000000 147.000000 712.000000 147.000000 748.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="41" y="0" width="213" height="226" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="147.500000" y="33.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" ><rect x="40" y="326" width="214" height="226" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="147.000000" y="359.000000" style="text-anchor:middle;font-size:28px;fill:black">c</text><g class="shape" ><rect x="0" y="652" width="294" height="326" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="147.000000" y="685.000000" style="text-anchor:middle;font-size:28px;fill:black">f</text><g class="shape" ><rect x="91" y="50" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="147.500000" y="116.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="90" y="376" width="114" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="147.000000" y="442.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><g class="shape" ><rect x="40" y="702" width="214" height="226" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="147.000000" y="731.000000" style="text-anchor:middle;font-size:24px;fill:black">h</text><g class="shape" ><rect x="90" y="752" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="147.000000" y="818.000000" style="text-anchor:middle;font-size:16px;fill:black">g</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 147.000000 178.000000 C 147.000000 216.000000 147.000000 236.000000 147.000000 251.000000 C 147.000000 266.000000 147.000000 336.000000 147.000000 372.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 147.000000 504.000000 C 147.000000 542.000000 147.000000 562.000000 147.000000 577.000000 C 147.000000 592.000000 147.000000 612.000000 147.000000 627.000000 C 147.000000 642.000000 147.000000 712.000000 147.000000 748.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 326 KiB After Width: | Height: | Size: 326 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1366" height="626" viewBox="-88 -88 1366 626"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="87" width="263" height="276"/></g><text class="text-bold" x="143.500000" y="120.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="385" y="87" width="264" height="276"/></g><text class="text-bold" x="517.000000" y="120.000000" style="text-anchor:middle;font-size:28px;fill:black">c</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="759" y="12" width="419" height="426"/></g><text class="text-bold" x="968.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">f</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="87" y="162" width="113" height="126"/></g><text class="text-bold" x="143.500000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="460" y="162" width="114" height="126"/></g><text class="text-bold" x="517.000000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="839" y="87" width="264" height="276"/></g><text class="text-bold" x="971.000000" y="116.000000" style="text-anchor:middle;font-size:24px;fill:black">h</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="914" y="162" width="114" height="126"/></g><text class="text-bold" x="971.000000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">g</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 202.000000 225.000000 L 456.000000 225.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 576.000000 225.000000 L 910.000000 225.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="12" y="87" width="263" height="276" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="143.500000" y="120.000000" style="text-anchor:middle;font-size:28px;fill:black">a</text><g class="shape" ><rect x="385" y="87" width="264" height="276" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="517.000000" y="120.000000" style="text-anchor:middle;font-size:28px;fill:black">c</text><g class="shape" ><rect x="759" y="12" width="419" height="426" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="968.500000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">f</text><g class="shape" ><rect x="87" y="162" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="143.500000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="460" y="162" width="114" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="517.000000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">d</text><g class="shape" ><rect x="839" y="87" width="264" height="276" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="971.000000" y="116.000000" style="text-anchor:middle;font-size:24px;fill:black">h</text><g class="shape" ><rect x="914" y="162" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="971.000000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">g</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 202.000000 225.000000 L 456.000000 225.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 576.000000 225.000000 L 910.000000 225.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 326 KiB After Width: | Height: | Size: 326 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="786" height="1530" viewBox="-100 -100 786 1530"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="416" y="0" width="113" height="126"/></g><text class="text-bold" x="472.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="333" y="226" width="253" height="878"/></g><text class="text-bold" x="459.500000" y="259.000000" style="text-anchor:middle;font-size:28px;fill:black">g</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="502" width="293" height="326"/></g><text class="text-bold" x="146.500000" y="535.000000" style="text-anchor:middle;font-size:28px;fill:black">d</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="404" y="1204" width="111" height="126"/></g><text class="text-bold" x="459.500000" y="1270.000000" style="text-anchor:middle;font-size:16px;fill:black">f</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="416" y="276" width="113" height="126"/></g><text class="text-bold" x="472.500000" y="342.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="40" y="552" width="213" height="226"/></g><text class="text-bold" x="146.500000" y="581.000000" style="text-anchor:middle;font-size:24px;fill:black">h</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="383" y="928" width="113" height="126"/></g><text class="text-bold" x="439.500000" y="994.000000" style="text-anchor:middle;font-size:16px;fill:black">e</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="90" y="602" width="113" height="126"/></g><text class="text-bold" x="146.500000" y="668.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 472.750000 128.000000 C 472.750000 166.000000 472.750000 236.000000 472.750000 272.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 434.660405 403.723672 C 412.134956 442.000000 406.250000 462.000000 406.250000 477.000000 C 406.250000 492.000000 365.650000 569.600000 206.920003 638.409063" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 148.471500 828.336433 C 380.900000 868.000000 439.500000 888.000000 439.500000 924.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 439.500000 1056.000000 C 439.500000 1094.000000 441.300000 1164.000000 447.791388 1200.063267" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 508.941346 1202.411883 C 538.345133 1164.000000 546.000000 1144.000000 546.000000 1108.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 330.619728 598.681599 C 268.500000 621.200000 316.500000 603.800000 256.260544 625.636803" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="416" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="472.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="333" y="226" width="253" height="878" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="459.500000" y="259.000000" style="text-anchor:middle;font-size:28px;fill:black">g</text><g class="shape" ><rect x="0" y="502" width="293" height="326" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="146.500000" y="535.000000" style="text-anchor:middle;font-size:28px;fill:black">d</text><g class="shape" ><rect x="404" y="1204" width="111" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="459.500000" y="1270.000000" style="text-anchor:middle;font-size:16px;fill:black">f</text><g class="shape" ><rect x="416" y="276" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="472.500000" y="342.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="40" y="552" width="213" height="226" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="146.500000" y="581.000000" style="text-anchor:middle;font-size:24px;fill:black">h</text><g class="shape" ><rect x="383" y="928" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="439.500000" y="994.000000" style="text-anchor:middle;font-size:16px;fill:black">e</text><g class="shape" ><rect x="90" y="602" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="146.500000" y="668.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 472.750000 128.000000 C 472.750000 166.000000 472.750000 236.000000 472.750000 272.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 434.660405 403.723672 C 412.134956 442.000000 406.250000 462.000000 406.250000 477.000000 C 406.250000 492.000000 365.650000 569.600000 206.920003 638.409063" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 148.471500 828.336433 C 380.900000 868.000000 439.500000 888.000000 439.500000 924.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 439.500000 1056.000000 C 439.500000 1094.000000 441.300000 1164.000000 447.791388 1200.063267" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 508.941346 1202.411883 C 538.345133 1164.000000 546.000000 1144.000000 546.000000 1108.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 330.619728 598.681599 C 268.500000 621.200000 316.500000 603.800000 256.260544 625.636803" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 327 KiB After Width: | Height: | Size: 327 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1269" height="782" viewBox="-88 -88 1269 782"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="162" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="240" y="87" width="263" height="422"/></g><text class="text-bold" x="371.500000" y="120.000000" style="text-anchor:middle;font-size:28px;fill:black">g</text><g class="shape" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="613" y="12" width="418" height="426"/></g><text class="text-bold" x="822.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">d</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="613" y="458" width="111" height="126"/></g><text class="text-bold" x="668.500000" y="524.000000" style="text-anchor:middle;font-size:16px;fill:black">f</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="315" y="162" width="113" height="126"/></g><text class="text-bold" x="371.500000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="693" y="87" width="263" height="276"/></g><text class="text-bold" x="824.500000" y="116.000000" style="text-anchor:middle;font-size:24px;fill:black">h</text><g class="shape" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="315" y="308" width="113" height="126"/></g><text class="text-bold" x="371.500000" y="374.000000" style="text-anchor:middle;font-size:16px;fill:black">e</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="768" y="162" width="113" height="126"/></g><text class="text-bold" x="824.500000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 225.000000 L 311.000000 225.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 430.000000 225.000000 L 764.000000 225.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 1033.000000 87.000000 L 1071.000000 87.000000 S 1081.000000 87.000000 1081.000000 97.000000 L 1081.000000 584.000000 S 1081.000000 594.000000 1071.000000 594.000000 L 185.000000 594.000000 S 175.000000 594.000000 175.000000 584.000000 L 175.000000 381.000000 S 175.000000 371.000000 185.000000 371.000000 L 311.000000 371.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 430.000000 371.000000 L 548.000000 371.000000 S 558.000000 371.000000 558.000000 381.000000 L 558.000000 490.000000 S 558.000000 500.000000 568.000000 500.000000 L 609.000000 500.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 611.000000 542.000000 L 195.000000 542.000000 S 185.000000 542.000000 185.000000 532.000000 L 185.000000 391.000000 S 185.000000 381.000000 195.000000 381.000000 L 236.000000 381.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 505.000000 235.000000 L 689.000000 235.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="12" y="162" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="240" y="87" width="263" height="422" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="371.500000" y="120.000000" style="text-anchor:middle;font-size:28px;fill:black">g</text><g class="shape" ><rect x="613" y="12" width="418" height="426" style="fill:#E3E9FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="822.000000" y="45.000000" style="text-anchor:middle;font-size:28px;fill:black">d</text><g class="shape" ><rect x="613" y="458" width="111" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="668.500000" y="524.000000" style="text-anchor:middle;font-size:16px;fill:black">f</text><g class="shape" ><rect x="315" y="162" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="371.500000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><g class="shape" ><rect x="693" y="87" width="263" height="276" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="824.500000" y="116.000000" style="text-anchor:middle;font-size:24px;fill:black">h</text><g class="shape" ><rect x="315" y="308" width="113" height="126" style="fill:#EDF0FD;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="371.500000" y="374.000000" style="text-anchor:middle;font-size:16px;fill:black">e</text><g class="shape" ><rect x="768" y="162" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="824.500000" y="228.000000" style="text-anchor:middle;font-size:16px;fill:black">c</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 225.000000 L 311.000000 225.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 430.000000 225.000000 L 764.000000 225.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 1033.000000 87.000000 L 1071.000000 87.000000 S 1081.000000 87.000000 1081.000000 97.000000 L 1081.000000 584.000000 S 1081.000000 594.000000 1071.000000 594.000000 L 185.000000 594.000000 S 175.000000 594.000000 175.000000 584.000000 L 175.000000 381.000000 S 175.000000 371.000000 185.000000 371.000000 L 311.000000 371.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 430.000000 371.000000 L 548.000000 371.000000 S 558.000000 371.000000 558.000000 381.000000 L 558.000000 490.000000 S 558.000000 500.000000 568.000000 500.000000 L 609.000000 500.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 611.000000 542.000000 L 195.000000 542.000000 S 185.000000 542.000000 185.000000 532.000000 L 185.000000 391.000000 S 185.000000 381.000000 195.000000 381.000000 L 236.000000 381.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 505.000000 235.000000 L 689.000000 235.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 327 KiB After Width: | Height: | Size: 327 KiB |
|
Before Width: | Height: | Size: 334 KiB After Width: | Height: | Size: 334 KiB |
|
Before Width: | Height: | Size: 334 KiB After Width: | Height: | Size: 334 KiB |
|
Before Width: | Height: | Size: 333 KiB After Width: | Height: | Size: 333 KiB |
|
Before Width: | Height: | Size: 333 KiB After Width: | Height: | Size: 333 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="3251" height="5500" viewBox="-100 -100 3251 5500"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="3251" height="5500" viewBox="-100 -100 3251 5500"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="3051" height="4848"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Markdown: Syntax</h1>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="3051" height="4848"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Markdown: Syntax</h1>
|
||||
<ul>
|
||||
<li><a href="#overview">Overview</a>
|
||||
<ul>
|
||||
|
|
@ -1046,7 +1047,7 @@ title for the link, surrounded in quotes. For example:</p>
|
|||
<h3>Code</h3>
|
||||
<p>Unlike a pre-formatted code block, a code span indicates code within a
|
||||
normal paragraph. For example:</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="1469" y="0" width="113" height="126"/></g><text class="text-bold" x="1525.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="1469" y="5174" width="113" height="126"/></g><text class="text-bold" x="1525.500000" y="5240.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 1525.500000 128.000000 C 1525.500000 166.000000 1525.500000 186.000000 1525.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 1525.500000 5076.000000 C 1525.500000 5114.000000 1525.500000 5134.000000 1525.500000 5170.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="1469" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1525.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="1469" y="5174" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1525.500000" y="5240.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 1525.500000 128.000000 C 1525.500000 166.000000 1525.500000 186.000000 1525.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 1525.500000 5076.000000 C 1525.500000 5114.000000 1525.500000 5134.000000 1525.500000 5170.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 994 KiB After Width: | Height: | Size: 994 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="3677" height="5048" viewBox="-88 -88 3677 5048"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="3677" height="5048" viewBox="-88 -88 3677 5048"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="3051" height="4848"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Markdown: Syntax</h1>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="3051" height="4848"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Markdown: Syntax</h1>
|
||||
<ul>
|
||||
<li><a href="#overview">Overview</a>
|
||||
<ul>
|
||||
|
|
@ -1046,7 +1047,7 @@ title for the link, surrounded in quotes. For example:</p>
|
|||
<h3>Code</h3>
|
||||
<p>Unlike a pre-formatted code block, a code span indicates code within a
|
||||
normal paragraph. For example:</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="2373" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="2439.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="3376" y="2373" width="113" height="126"/></g><text class="text-bold" x="3432.500000" y="2439.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 2436.000000 L 221.000000 2436.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 3278.000000 2436.000000 L 3372.000000 2436.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="2373" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="2439.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="3376" y="2373" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="3432.500000" y="2439.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 2436.000000 L 221.000000 2436.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 3278.000000 2436.000000 L 3372.000000 2436.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 994 KiB After Width: | Height: | Size: 993 KiB |
13
e2etests/testdata/stable/hr/dagre/sketch.exp.svg
vendored
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="938" height="786" viewBox="-100 -100 938 786"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,11 +790,11 @@ width="938" height="786" viewBox="-100 -100 938 786"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="738" height="134"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p><strong>Note:</strong> This document is itself written using Markdown; you
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="738" height="134"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p><strong>Note:</strong> This document is itself written using Markdown; you
|
||||
can <a href="/projects/markdown/syntax.text">see the source for it by adding '.text' to the URL</a>.</p>
|
||||
<hr />
|
||||
<h2>Overview</h2>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="313" y="0" width="113" height="126"/></g><text class="text-bold" x="369.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="313" y="460" width="113" height="126"/></g><text class="text-bold" x="369.500000" y="526.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 369.000000 128.000000 C 369.000000 166.000000 369.000000 186.000000 369.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 369.000000 362.000000 C 369.000000 400.000000 369.000000 420.000000 369.000000 456.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="313" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="369.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="313" y="460" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="369.500000" y="526.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 369.000000 128.000000 C 369.000000 166.000000 369.000000 186.000000 369.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 369.000000 362.000000 C 369.000000 400.000000 369.000000 420.000000 369.000000 456.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 660 KiB After Width: | Height: | Size: 660 KiB |
13
e2etests/testdata/stable/hr/elk/sketch.exp.svg
vendored
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1364" height="334" viewBox="-88 -88 1364 334"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,11 +790,11 @@ width="1364" height="334" viewBox="-88 -88 1364 334"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="738" height="134"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p><strong>Note:</strong> This document is itself written using Markdown; you
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="738" height="134"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p><strong>Note:</strong> This document is itself written using Markdown; you
|
||||
can <a href="/projects/markdown/syntax.text">see the source for it by adding '.text' to the URL</a>.</p>
|
||||
<hr />
|
||||
<h2>Overview</h2>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="16" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="82.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="1063" y="16" width="113" height="126"/></g><text class="text-bold" x="1119.500000" y="82.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 79.000000 L 221.000000 79.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 965.000000 79.000000 L 1059.000000 79.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="16" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="82.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="1063" y="16" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1119.500000" y="82.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 79.000000 L 221.000000 79.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 965.000000 79.000000 L 1059.000000 79.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 660 KiB After Width: | Height: | Size: 660 KiB |
|
Before Width: | Height: | Size: 488 KiB After Width: | Height: | Size: 489 KiB |
|
Before Width: | Height: | Size: 485 KiB After Width: | Height: | Size: 485 KiB |
|
Before Width: | Height: | Size: 338 KiB After Width: | Height: | Size: 338 KiB |
|
Before Width: | Height: | Size: 337 KiB After Width: | Height: | Size: 337 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="579" height="752" viewBox="-100 -100 579 752"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="579" height="752" viewBox="-100 -100 579 752"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="379" height="100"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="379" height="100"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
<li><a href="#overview">Overview</a>
|
||||
<ul>
|
||||
<li><a href="#philosophy">Philosophy</a></li>
|
||||
|
|
@ -801,7 +802,7 @@ width="579" height="752" viewBox="-100 -100 579 752"><style type="text/css">
|
|||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="133" y="0" width="113" height="126"/></g><text class="text-bold" x="189.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="133" y="426" width="113" height="126"/></g><text class="text-bold" x="189.500000" y="492.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 189.500000 128.000000 C 189.500000 166.000000 189.500000 186.000000 189.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 189.500000 328.000000 C 189.500000 366.000000 189.500000 386.000000 189.500000 422.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="133" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="189.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="133" y="426" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="189.500000" y="492.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 189.500000 128.000000 C 189.500000 166.000000 189.500000 186.000000 189.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 189.500000 328.000000 C 189.500000 366.000000 189.500000 386.000000 189.500000 422.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 660 KiB After Width: | Height: | Size: 660 KiB |
13
e2etests/testdata/stable/li1/elk/sketch.exp.svg
vendored
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1005" height="326" viewBox="-88 -88 1005 326"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="1005" height="326" viewBox="-88 -88 1005 326"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="25.000000" width="379" height="100"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="25.000000" width="379" height="100"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
<li><a href="#overview">Overview</a>
|
||||
<ul>
|
||||
<li><a href="#philosophy">Philosophy</a></li>
|
||||
|
|
@ -801,7 +802,7 @@ width="1005" height="326" viewBox="-88 -88 1005 326"><style type="text/css">
|
|||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="704" y="12" width="113" height="126"/></g><text class="text-bold" x="760.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 606.000000 75.000000 L 700.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="704" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="760.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 606.000000 75.000000 L 700.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 660 KiB After Width: | Height: | Size: 660 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="445" height="728" viewBox="-100 -100 445 728"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="445" height="728" viewBox="-100 -100 445 728"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="245" height="76"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="245" height="76"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
<li><a href="#overview">Overview</a> ok <em>this is all measured</em>
|
||||
<ul>
|
||||
<li><a href="#philosophy">Philosophy</a></li>
|
||||
|
|
@ -797,7 +798,7 @@ width="445" height="728" viewBox="-100 -100 445 728"><style type="text/css">
|
|||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="66" y="0" width="113" height="126"/></g><text class="text-bold" x="122.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="66" y="402" width="113" height="126"/></g><text class="text-bold" x="122.500000" y="468.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 122.500000 128.000000 C 122.500000 166.000000 122.500000 186.000000 122.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 122.500000 304.000000 C 122.500000 342.000000 122.500000 362.000000 122.500000 398.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="66" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="122.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="66" y="402" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="122.500000" y="468.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 122.500000 128.000000 C 122.500000 166.000000 122.500000 186.000000 122.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 122.500000 304.000000 C 122.500000 342.000000 122.500000 362.000000 122.500000 398.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 803 KiB After Width: | Height: | Size: 803 KiB |
13
e2etests/testdata/stable/li2/elk/sketch.exp.svg
vendored
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="871" height="326" viewBox="-88 -88 871 326"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="871" height="326" viewBox="-88 -88 871 326"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="37.000000" width="245" height="76"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="37.000000" width="245" height="76"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
<li><a href="#overview">Overview</a> ok <em>this is all measured</em>
|
||||
<ul>
|
||||
<li><a href="#philosophy">Philosophy</a></li>
|
||||
|
|
@ -797,7 +798,7 @@ width="871" height="326" viewBox="-88 -88 871 326"><style type="text/css">
|
|||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="570" y="12" width="113" height="126"/></g><text class="text-bold" x="626.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 472.000000 75.000000 L 566.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="570" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="626.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 472.000000 75.000000 L 566.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 803 KiB After Width: | Height: | Size: 803 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="547" height="1164" viewBox="-100 -100 547 1164"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="547" height="1164" viewBox="-100 -100 547 1164"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="347" height="512"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="347" height="512"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
<li><a href="#overview">Overview</a>
|
||||
<ul>
|
||||
<li><a href="#philosophy">Philosophy</a></li>
|
||||
|
|
@ -822,7 +823,7 @@ width="547" height="1164" viewBox="-100 -100 547 1164"><style type="text/css">
|
|||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="117" y="0" width="113" height="126"/></g><text class="text-bold" x="173.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="117" y="838" width="113" height="126"/></g><text class="text-bold" x="173.500000" y="904.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 173.500000 128.000000 C 173.500000 166.000000 173.500000 186.000000 173.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 173.500000 740.000000 C 173.500000 778.000000 173.500000 798.000000 173.500000 834.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="117" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="173.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="117" y="838" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="173.500000" y="904.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 173.500000 128.000000 C 173.500000 166.000000 173.500000 186.000000 173.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 173.500000 740.000000 C 173.500000 778.000000 173.500000 798.000000 173.500000 834.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 661 KiB After Width: | Height: | Size: 661 KiB |
13
e2etests/testdata/stable/li3/elk/sketch.exp.svg
vendored
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="973" height="712" viewBox="-88 -88 973 712"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="973" height="712" viewBox="-88 -88 973 712"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="347" height="512"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="347" height="512"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><ul>
|
||||
<li><a href="#overview">Overview</a>
|
||||
<ul>
|
||||
<li><a href="#philosophy">Philosophy</a></li>
|
||||
|
|
@ -822,7 +823,7 @@ width="973" height="712" viewBox="-88 -88 973 712"><style type="text/css">
|
|||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="205" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="271.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="672" y="205" width="113" height="126"/></g><text class="text-bold" x="728.500000" y="271.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 268.000000 L 221.000000 268.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 574.000000 268.000000 L 668.000000 268.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="205" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="271.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="672" y="205" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="728.500000" y="271.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 268.000000 L 221.000000 268.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 574.000000 268.000000 L 668.000000 268.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 661 KiB After Width: | Height: | Size: 661 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1120" height="1028" viewBox="-100 -100 1120 1028"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="1120" height="1028" viewBox="-100 -100 1120 1028"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="920" height="376"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>List items may consist of multiple paragraphs. Each subsequent
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="920" height="376"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>List items may consist of multiple paragraphs. Each subsequent
|
||||
paragraph in a list item must be indented by either 4 spaces
|
||||
or one tab:</p>
|
||||
<ol>
|
||||
|
|
@ -820,7 +821,7 @@ sit amet, consectetuer adipiscing elit.</p>
|
|||
<p>Another item in the same list.</p>
|
||||
</li>
|
||||
</ul>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="404" y="0" width="113" height="126"/></g><text class="text-bold" x="460.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="404" y="702" width="113" height="126"/></g><text class="text-bold" x="460.500000" y="768.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 460.000000 128.000000 C 460.000000 166.000000 460.000000 186.000000 460.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 460.000000 604.000000 C 460.000000 642.000000 460.000000 662.000000 460.000000 698.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="404" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="460.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="404" y="702" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="460.500000" y="768.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 460.000000 128.000000 C 460.000000 166.000000 460.000000 186.000000 460.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 460.000000 604.000000 C 460.000000 642.000000 460.000000 662.000000 460.000000 698.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 842 KiB After Width: | Height: | Size: 842 KiB |
13
e2etests/testdata/stable/li4/elk/sketch.exp.svg
vendored
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1546" height="576" viewBox="-88 -88 1546 576"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,7 +790,7 @@ width="1546" height="576" viewBox="-88 -88 1546 576"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="920" height="376"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>List items may consist of multiple paragraphs. Each subsequent
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="920" height="376"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>List items may consist of multiple paragraphs. Each subsequent
|
||||
paragraph in a list item must be indented by either 4 spaces
|
||||
or one tab:</p>
|
||||
<ol>
|
||||
|
|
@ -820,7 +821,7 @@ sit amet, consectetuer adipiscing elit.</p>
|
|||
<p>Another item in the same list.</p>
|
||||
</li>
|
||||
</ul>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="137" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="203.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="1245" y="137" width="113" height="126"/></g><text class="text-bold" x="1301.500000" y="203.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 200.000000 L 221.000000 200.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 1147.000000 200.000000 L 1241.000000 200.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="137" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="203.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="1245" y="137" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="1301.500000" y="203.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 200.000000 L 221.000000 200.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 1147.000000 200.000000 L 1241.000000 200.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 842 KiB After Width: | Height: | Size: 842 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="466" height="702" viewBox="-100 -100 466 702"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,8 +790,8 @@ width="466" height="702" viewBox="-100 -100 466 702"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="266" height="50"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Markdown: Syntax</h1>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="77" y="0" width="113" height="126"/></g><text class="text-bold" x="133.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="77" y="376" width="113" height="126"/></g><text class="text-bold" x="133.500000" y="442.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 133.000000 128.000000 C 133.000000 166.000000 133.000000 186.000000 133.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 133.000000 278.000000 C 133.000000 316.000000 133.000000 336.000000 133.000000 372.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="266" height="50"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Markdown: Syntax</h1>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="77" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="133.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="77" y="376" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="133.500000" y="442.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 133.000000 128.000000 C 133.000000 166.000000 133.000000 186.000000 133.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 133.000000 278.000000 C 133.000000 316.000000 133.000000 336.000000 133.000000 372.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 660 KiB After Width: | Height: | Size: 660 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="892" height="326" viewBox="-88 -88 892 326"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,8 +790,8 @@ width="892" height="326" viewBox="-88 -88 892 326"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="50.000000" width="266" height="50"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Markdown: Syntax</h1>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="591" y="12" width="113" height="126"/></g><text class="text-bold" x="647.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 493.000000 75.000000 L 587.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="50.000000" width="266" height="50"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Markdown: Syntax</h1>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="591" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="647.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 493.000000 75.000000 L 587.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 660 KiB After Width: | Height: | Size: 660 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="731" height="838" viewBox="-100 -100 731 838"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,14 +790,14 @@ width="731" height="838" viewBox="-100 -100 731 838"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="531" height="186"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Every frustum longs to be a cone</h1>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="531" height="186"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Every frustum longs to be a cone</h1>
|
||||
<ul>
|
||||
<li>A continuing flow of paper is sufficient to continue the flow of paper</li>
|
||||
<li>Please remain calm, it's no use both of us being hysterical at the same time</li>
|
||||
<li>Visits always give pleasure: if not on arrival, then on the departure</li>
|
||||
</ul>
|
||||
<p><em>Festivity Level 1</em>: Your guests are chatting amiably with each other.</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="209" y="0" width="113" height="126"/></g><text class="text-bold" x="265.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">x</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="209" y="512" width="114" height="126"/></g><text class="text-bold" x="266.000000" y="578.000000" style="text-anchor:middle;font-size:16px;fill:black">y</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 265.500000 128.000000 C 265.500000 166.000000 265.500000 186.000000 265.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 265.500000 414.000000 C 265.500000 452.000000 265.500000 472.000000 265.500000 508.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="209" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="265.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">x</text><g class="shape" ><rect x="209" y="512" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="266.000000" y="578.000000" style="text-anchor:middle;font-size:16px;fill:black">y</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 265.500000 128.000000 C 265.500000 166.000000 265.500000 186.000000 265.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 265.500000 414.000000 C 265.500000 452.000000 265.500000 472.000000 265.500000 508.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 803 KiB After Width: | Height: | Size: 803 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="1158" height="386" viewBox="-88 -88 1158 386"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,14 +790,14 @@ width="1158" height="386" viewBox="-88 -88 1158 386"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="531" height="186"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Every frustum longs to be a cone</h1>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="531" height="186"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><h1>Every frustum longs to be a cone</h1>
|
||||
<ul>
|
||||
<li>A continuing flow of paper is sufficient to continue the flow of paper</li>
|
||||
<li>Please remain calm, it's no use both of us being hysterical at the same time</li>
|
||||
<li>Visits always give pleasure: if not on arrival, then on the departure</li>
|
||||
</ul>
|
||||
<p><em>Festivity Level 1</em>: Your guests are chatting amiably with each other.</p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="42" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="108.000000" style="text-anchor:middle;font-size:16px;fill:black">x</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="856" y="42" width="114" height="126"/></g><text class="text-bold" x="913.000000" y="108.000000" style="text-anchor:middle;font-size:16px;fill:black">y</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 105.000000 L 221.000000 105.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 758.000000 105.000000 L 852.000000 105.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="42" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="108.000000" style="text-anchor:middle;font-size:16px;fill:black">x</text><g class="shape" ><rect x="856" y="42" width="114" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="913.000000" y="108.000000" style="text-anchor:middle;font-size:16px;fill:black">y</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 105.000000 L 221.000000 105.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 758.000000 105.000000 L 852.000000 105.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 803 KiB After Width: | Height: | Size: 803 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="396" height="763" viewBox="-100 -100 396 763"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,12 +790,12 @@ width="396" height="763" viewBox="-100 -100 396 763"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="196" height="111"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><pre><code>{
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="196" height="111"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><pre><code>{
|
||||
fenced: "block",
|
||||
of: "json",
|
||||
}
|
||||
</code></pre>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="42" y="0" width="113" height="126"/></g><text class="text-bold" x="98.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="42" y="437" width="113" height="126"/></g><text class="text-bold" x="98.500000" y="503.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 98.000000 128.000000 C 98.000000 166.000000 98.000000 186.000000 98.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 98.000000 339.000000 C 98.000000 377.000000 98.000000 397.000000 98.000000 433.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="42" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="98.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="42" y="437" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="98.500000" y="503.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 98.000000 128.000000 C 98.000000 166.000000 98.000000 186.000000 98.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 98.000000 339.000000 C 98.000000 377.000000 98.000000 397.000000 98.000000 433.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 841 KiB After Width: | Height: | Size: 841 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="822" height="326" viewBox="-88 -88 822 326"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,12 +790,12 @@ width="822" height="326" viewBox="-88 -88 822 326"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="20.000000" width="196" height="111"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><pre><code>{
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="20.000000" width="196" height="111"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><pre><code>{
|
||||
fenced: "block",
|
||||
of: "json",
|
||||
}
|
||||
</code></pre>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="521" y="12" width="113" height="126"/></g><text class="text-bold" x="577.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 423.000000 75.000000 L 517.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="521" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="577.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 423.000000 75.000000 L 517.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 841 KiB After Width: | Height: | Size: 841 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="412" height="803" viewBox="-100 -100 412 803"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,13 +790,13 @@ width="412" height="803" viewBox="-100 -100 412 803"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="212" height="151"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>a line of text and an</p>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="0.000000" y="226.000000" width="212" height="151"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>a line of text and an</p>
|
||||
<pre><code>{
|
||||
indented: "block",
|
||||
of: "json",
|
||||
}
|
||||
</code></pre>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="50" y="0" width="113" height="126"/></g><text class="text-bold" x="106.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="50" y="477" width="113" height="126"/></g><text class="text-bold" x="106.500000" y="543.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 106.000000 128.000000 C 106.000000 166.000000 106.000000 186.000000 106.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 106.000000 379.000000 C 106.000000 417.000000 106.000000 437.000000 106.000000 473.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="50" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="106.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="50" y="477" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="106.500000" y="543.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 106.000000 128.000000 C 106.000000 166.000000 106.000000 186.000000 106.000000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 106.000000 379.000000 C 106.000000 417.000000 106.000000 437.000000 106.000000 473.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 841 KiB After Width: | Height: | Size: 841 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="838" height="351" viewBox="-88 -88 838 351"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,13 +790,13 @@ width="838" height="351" viewBox="-88 -88 838 351"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="212" height="151"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>a line of text and an</p>
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="12.000000" width="212" height="151"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p>a line of text and an</p>
|
||||
<pre><code>{
|
||||
indented: "block",
|
||||
of: "json",
|
||||
}
|
||||
</code></pre>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="25" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="91.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="537" y="25" width="113" height="126"/></g><text class="text-bold" x="593.500000" y="91.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 87.500000 L 221.000000 87.500000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 439.000000 87.500000 L 533.000000 87.500000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="25" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="91.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="537" y="25" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="593.500000" y="91.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 87.500000 L 221.000000 87.500000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 439.000000 87.500000 L 533.000000 87.500000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 841 KiB After Width: | Height: | Size: 841 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="313" height="676" viewBox="-100 -100 313 676"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,8 +790,8 @@ width="313" height="676" viewBox="-100 -100 313 676"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="34.000000" y="226.000000" width="46" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p><code>code</code></p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="0" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="350" width="113" height="126"/></g><text class="text-bold" x="56.500000" y="416.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 56.500000 128.000000 C 56.500000 166.000000 56.500000 186.000000 56.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 56.500000 252.000000 C 56.500000 290.000000 56.500000 310.000000 56.500000 346.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="34.000000" y="226.000000" width="46" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p><code>code</code></p>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="0" y="0" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="0" y="350" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="56.500000" y="416.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 56.500000 128.000000 C 56.500000 166.000000 56.500000 186.000000 56.500000 222.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 56.500000 252.000000 C 56.500000 290.000000 56.500000 310.000000 56.500000 346.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 841 KiB After Width: | Height: | Size: 841 KiB |
|
|
@ -5,13 +5,14 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="672" height="326" viewBox="-88 -88 672 326"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><style type="text/css">.md em,
|
||||
.md dfn {
|
||||
|
|
@ -789,8 +790,8 @@ width="672" height="326" viewBox="-88 -88 672 326"><style type="text/css">
|
|||
.md .contains-task-list:dir(rtl) .task-list-item-checkbox {
|
||||
margin: 0 -1.6em 0.25em 0.2em;
|
||||
}
|
||||
</style><g class="shape" style="fill:#FFFFFF;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="63.000000" width="46" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p><code>code</code></p>
|
||||
</div></foreignObject></g><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="113" height="126"/></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="371" y="12" width="113" height="126"/></g><text class="text-bold" x="427.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 273.000000 75.000000 L 367.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ></g><g><foreignObject requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" x="225.000000" y="63.000000" width="46" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="md"><p><code>code</code></p>
|
||||
</div></foreignObject></g><g class="shape" ><rect x="12" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="68.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">a</text><g class="shape" ><rect x="371" y="12" width="113" height="126" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="427.500000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black">b</text><marker id="mk-3990223579" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon class="connection" fill="#0D32B2" stroke-width="2" points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" /> </marker><path d="M 127.000000 75.000000 L 221.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><path d="M 273.000000 75.000000 L 367.000000 75.000000" class="connection" style="fill:none;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" marker-end="url(#mk-3990223579)" /><style type="text/css"><![CDATA[
|
||||
.text {
|
||||
font-family: "font-regular";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 841 KiB After Width: | Height: | Size: 841 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="402" height="358" viewBox="-100 -100 402 358"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="0" y="0" width="202" height="158"/></g><text class="text-bold" x="101.000000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black"><tspan x="101.000000" dy="0.000000">this</tspan><tspan x="101.000000" dy="19.333333">goes</tspan><tspan x="101.000000" dy="19.333333">multiple lines</tspan></text><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="0" y="0" width="202" height="158" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="101.000000" y="66.000000" style="text-anchor:middle;font-size:16px;fill:black"><tspan x="101.000000" dy="0.000000">this</tspan><tspan x="101.000000" dy="19.333333">goes</tspan><tspan x="101.000000" dy="19.333333">multiple lines</tspan></text><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 324 KiB After Width: | Height: | Size: 324 KiB |
|
|
@ -5,15 +5,16 @@ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
|||
width="402" height="358" viewBox="-88 -88 402 358"><style type="text/css">
|
||||
<![CDATA[
|
||||
.shape {
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
shape-rendering: geometricPrecision;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
.connection {
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
stroke-linecap: round;
|
||||
stroke-linejoin: round;
|
||||
}
|
||||
|
||||
]]>
|
||||
</style><g class="shape" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" ><rect x="12" y="12" width="202" height="158"/></g><text class="text-bold" x="113.000000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black"><tspan x="113.000000" dy="0.000000">this</tspan><tspan x="113.000000" dy="19.333333">goes</tspan><tspan x="113.000000" dy="19.333333">multiple lines</tspan></text><style type="text/css"><![CDATA[
|
||||
</style><g class="shape" ><rect x="12" y="12" width="202" height="158" style="fill:#F7F8FE;stroke:#0D32B2;opacity:1.000000;stroke-width:2;" /></g><text class="text-bold" x="113.000000" y="78.000000" style="text-anchor:middle;font-size:16px;fill:black"><tspan x="113.000000" dy="0.000000">this</tspan><tspan x="113.000000" dy="19.333333">goes</tspan><tspan x="113.000000" dy="19.333333">multiple lines</tspan></text><style type="text/css"><![CDATA[
|
||||
.text-bold {
|
||||
font-family: "font-bold";
|
||||
}
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 324 KiB After Width: | Height: | Size: 324 KiB |
|
Before Width: | Height: | Size: 334 KiB After Width: | Height: | Size: 334 KiB |