playwright-runner 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/workflows/main.yml +18 -0
- data/.gitignore +8 -0
- data/.rubocop.yml +17 -0
- data/Gemfile +12 -0
- data/LICENSE.txt +19 -0
- data/README.md +131 -0
- data/Rakefile +21 -0
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/lib/playwrightrunner/version.rb +5 -0
- data/lib/playwrightrunner.rb +49 -0
- data/p1.svg +165 -0
- data/playwright-runner.gemspec +32 -0
- metadata +74 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: eb83cf6ffdbe44db313ffa0df1f4d4ea4bcec52d9e1794180c4743b4be5ccf36
|
4
|
+
data.tar.gz: f5e1161fe4e70c3341eb5061762c48d1268101fd233bcb949ff4e8e5ee59a03e
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ffbf52ebc42b1c0c32261a839dfc2d6f62f2b21371153c83873e665efba28f5745a38230d9874cbf3563b589bdbd581aba91cfa10e83924988cb6da8b8b72bd5
|
7
|
+
data.tar.gz: 3ca59db2b366e4d034da55c82caeaff811cf86a3d9862616a55dab221e87a692adc5111700215e5bae04020ffbb3c9c30ba2ef43e931b1c45d7792fc28ed7649
|
@@ -0,0 +1,18 @@
|
|
1
|
+
name: Ruby
|
2
|
+
|
3
|
+
on: [push,pull_request]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
runs-on: ubuntu-latest
|
8
|
+
steps:
|
9
|
+
- uses: actions/checkout@v2
|
10
|
+
- name: Set up Ruby
|
11
|
+
uses: ruby/setup-ruby@v1
|
12
|
+
with:
|
13
|
+
ruby-version: 2.7.4
|
14
|
+
- name: Run the default task
|
15
|
+
run: |
|
16
|
+
gem install bundler -v 2.2.5
|
17
|
+
bundle install
|
18
|
+
bundle exec rake
|
data/.gitignore
ADDED
data/.rubocop.yml
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
AllCops:
|
2
|
+
DisplayCopNames: true
|
3
|
+
NewCops: enable
|
4
|
+
TargetRubyVersion: 2.7
|
5
|
+
|
6
|
+
require:
|
7
|
+
- rubocop-performance
|
8
|
+
- rubocop-rake
|
9
|
+
|
10
|
+
Metrics/MethodLength:
|
11
|
+
Max: 100
|
12
|
+
|
13
|
+
Metrics/AbcSize:
|
14
|
+
Max: 120
|
15
|
+
|
16
|
+
Style/Documentation:
|
17
|
+
Enabled: false
|
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
Copyright (c) 2023 Kenshi Muto
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
4
|
+
of this software and associated documentation files (the "Software"), to deal
|
5
|
+
in the Software without restriction, including without limitation the rights
|
6
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
7
|
+
copies of the Software, and to permit persons to whom the Software is
|
8
|
+
furnished to do so, subject to the following conditions:
|
9
|
+
|
10
|
+
The above copyright notice and this permission notice shall be included in all
|
11
|
+
copies or substantial portions of the Software.
|
12
|
+
|
13
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
14
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
15
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
16
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
17
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
18
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
19
|
+
SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,131 @@
|
|
1
|
+
# Playwright Runner
|
2
|
+
|
3
|
+
Playwright Runner is a set of runners for [Playwright](https://playwright.dev/).
|
4
|
+
|
5
|
+
This module is intended to provide useful toolset for [Re:VIEW](https://reviewml.org/), but it can also be used for general purpose applications.
|
6
|
+
|
7
|
+
## Installation
|
8
|
+
|
9
|
+
Add this line to your application's Gemfile:
|
10
|
+
|
11
|
+
```ruby
|
12
|
+
gem 'playwrightrunner'
|
13
|
+
```
|
14
|
+
|
15
|
+
And then execute:
|
16
|
+
|
17
|
+
$ bundle install
|
18
|
+
|
19
|
+
Or install it yourself as:
|
20
|
+
|
21
|
+
$ gem install playwright-runner
|
22
|
+
|
23
|
+
Of course PlaywrightRunner needs Playwright npm library.
|
24
|
+
|
25
|
+
$ npm install playwright (locally)
|
26
|
+
$ npm install -g playwright (globally)
|
27
|
+
|
28
|
+
## Usage
|
29
|
+
|
30
|
+
### Mermaid to PDF or SVG
|
31
|
+
|
32
|
+
Let's convert HTML files contain [Mermaid](https://mermaid.js.org/) to PDF/SVG.
|
33
|
+
You have to install two components also to crop and convert PDF before running:
|
34
|
+
|
35
|
+
- [pdfcrop](https://www.ctan.org/pkg/pdfcrop) in TeXLive.
|
36
|
+
- [pdftocairo](https://gitlab.freedesktop.org/poppler/poppler) in poppler (if you'd like to get SVG).
|
37
|
+
|
38
|
+
On Debian GNU/Linux or its derivatives, ues `apt-get install texlive-extra-utils poppler-utils`.
|
39
|
+
|
40
|
+
```ruby
|
41
|
+
PlaywrightRunner.mermaids_to_images(
|
42
|
+
{
|
43
|
+
playwright_path: './node_modules/.bin/playwright', // playwright binary path
|
44
|
+
pdfcrop_path: 'pdfcrop', // pdfcrop path
|
45
|
+
pdftocairo_path: 'pdftocairo' // pdftocairo path
|
46
|
+
},
|
47
|
+
src: '.', // source folder contains html files
|
48
|
+
dest: '.', // destination folder to export pdf or svg
|
49
|
+
type: 'pdf' // 'pdf' or 'svg'
|
50
|
+
)
|
51
|
+
```
|
52
|
+
|
53
|
+
It converts all HTML files in the folder specified by `src` into PDF or SVG files (specified by `type`) using that name and writes them in the folder specified by `dest`.
|
54
|
+
|
55
|
+
For Example, here is `p1.html` contains Mermaid code.
|
56
|
+
|
57
|
+
```html
|
58
|
+
<!DOCTYPE html>
|
59
|
+
<html>
|
60
|
+
<head>
|
61
|
+
<meta charset="UTF-8">
|
62
|
+
<script type="module">import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs'; mermaid.initialize({ startOnLoad: true });</script>
|
63
|
+
</head>
|
64
|
+
<body>
|
65
|
+
<div id="p1">
|
66
|
+
<pre class="mermaid">
|
67
|
+
graph TD
|
68
|
+
A[Client] --> B[Load Balancer]
|
69
|
+
B --> C[Server1]
|
70
|
+
B --> D[Server2]
|
71
|
+
</pre>
|
72
|
+
</div>
|
73
|
+
</body>
|
74
|
+
</html>
|
75
|
+
```
|
76
|
+
|
77
|
+
Now convert it to PDF. `p1.pdf` will be created.
|
78
|
+
|
79
|
+
```ruby
|
80
|
+
require 'playwrightrunner'
|
81
|
+
|
82
|
+
PlaywrightRunner.mermaids_to_images(
|
83
|
+
{
|
84
|
+
playwright_path: './node_modules/.bin/playwright' // modify for your env
|
85
|
+
},
|
86
|
+
src: '.',
|
87
|
+
dest: '.',
|
88
|
+
type: 'pdf'
|
89
|
+
)
|
90
|
+
```
|
91
|
+
|
92
|
+
Convert it to SVG. `p1.svg` will be created.
|
93
|
+
|
94
|
+
```ruby
|
95
|
+
require 'playwrightrunner'
|
96
|
+
|
97
|
+
PlaywrightRunner.mermaids_to_images(
|
98
|
+
{
|
99
|
+
playwright_path: './node_modules/.bin/playwright' // modify for your env
|
100
|
+
},
|
101
|
+
src: '.',
|
102
|
+
dest: '.',
|
103
|
+
type: 'svg'
|
104
|
+
)
|
105
|
+
```
|
106
|
+
|
107
|
+
![sample SVG](p1.svg)
|
108
|
+
|
109
|
+
## License
|
110
|
+
|
111
|
+
```
|
112
|
+
Copyright (c) 2023 Kenshi Muto
|
113
|
+
|
114
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
115
|
+
of this software and associated documentation files (the "Software"), to deal
|
116
|
+
in the Software without restriction, including without limitation the rights
|
117
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
118
|
+
copies of the Software, and to permit persons to whom the Software is
|
119
|
+
furnished to do so, subject to the following conditions:
|
120
|
+
|
121
|
+
The above copyright notice and this permission notice shall be included in all
|
122
|
+
copies or substantial portions of the Software.
|
123
|
+
|
124
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
125
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
126
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
127
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
128
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
129
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
130
|
+
SOFTWARE.
|
131
|
+
```
|
data/Rakefile
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'bundler/gem_tasks'
|
4
|
+
task default: %i[test rubocop]
|
5
|
+
|
6
|
+
desc 'Run tests'
|
7
|
+
task :test, :target do |_, argv|
|
8
|
+
if argv[:target].nil?
|
9
|
+
ruby('test/run_test.rb')
|
10
|
+
else
|
11
|
+
ruby('test/run_test.rb', "--pattern=#{argv[:target]}")
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
desc 'Check with rubocop'
|
16
|
+
task :rubocop do
|
17
|
+
require 'rubocop/rake_task'
|
18
|
+
RuboCop::RakeTask.new
|
19
|
+
rescue LoadError
|
20
|
+
warn 'rubocop not found'
|
21
|
+
end
|
data/bin/console
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
require 'bundler/setup'
|
5
|
+
require 'playwright/runner'
|
6
|
+
|
7
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
8
|
+
# with your gem easier. You can also use a different console, if you like.
|
9
|
+
|
10
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
11
|
+
# require "pry"
|
12
|
+
# Pry.start
|
13
|
+
|
14
|
+
require 'irb'
|
15
|
+
IRB.start(__FILE__)
|
data/bin/setup
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
# Playwright Runner
|
2
|
+
# Copyright 2023 Kenshi Muto
|
3
|
+
# frozen_string_literal: true
|
4
|
+
|
5
|
+
require_relative 'playwrightrunner/version'
|
6
|
+
|
7
|
+
require 'playwright'
|
8
|
+
require 'open3'
|
9
|
+
require 'fileutils'
|
10
|
+
|
11
|
+
module PlaywrightRunner
|
12
|
+
def complement_config(config)
|
13
|
+
config[:playwright_path] ||= './node_modules/.bin/playwright'
|
14
|
+
config[:pdfcrop_path] ||= 'pdfcrop'
|
15
|
+
config[:pdftocairo_path] ||= 'pdftocairo'
|
16
|
+
|
17
|
+
config
|
18
|
+
end
|
19
|
+
|
20
|
+
def mermaids_to_images(config, src: '.', dest: '.', type: 'pdf')
|
21
|
+
Playwright.create(playwright_cli_executable_path: config[:playwright_path]) do |playwright|
|
22
|
+
playwright.chromium.launch(headless: true) do |browser|
|
23
|
+
page = browser.new_page
|
24
|
+
Dir.glob(File.join(src, '*.html')).each do |entry|
|
25
|
+
id = File.basename(entry).sub('.html', '')
|
26
|
+
page.goto("file:///#{File.absolute_path(entry)}")
|
27
|
+
page.locator('svg').click # to wait drawn
|
28
|
+
|
29
|
+
page.pdf(path: File.join(dest, '__PLAYWRIGHT_TMP__.pdf'))
|
30
|
+
Open3.capture2e(config[:pdfcrop_path],
|
31
|
+
File.join(dest, '__PLAYWRIGHT_TMP__.pdf'),
|
32
|
+
File.join(dest, "#{id}.pdf"))
|
33
|
+
|
34
|
+
next unless type == 'svg'
|
35
|
+
|
36
|
+
Open3.capture2e(config[:pdftocairo_path],
|
37
|
+
'-svg',
|
38
|
+
File.join(dest, "#{id}.pdf"),
|
39
|
+
File.join(dest, "#{id}.svg"))
|
40
|
+
FileUtils.rm_f(File.join(dest, "#{id}.pdf"))
|
41
|
+
end
|
42
|
+
|
43
|
+
FileUtils.rm_f(File.join(dest, '__PLAYWRIGHT_TMP__.pdf'))
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
module_function :complement_config, :mermaids_to_images
|
49
|
+
end
|
data/p1.svg
ADDED
@@ -0,0 +1,165 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="146pt" height="151pt" viewBox="0 0 146 151" version="1.2">
|
3
|
+
<defs>
|
4
|
+
<g>
|
5
|
+
<symbol overflow="visible" id="glyph0-0">
|
6
|
+
<path style="stroke:none;" d="M 1.203125 -8.25 L 7.796875 -8.25 L 7.796875 0 L 1.203125 0 Z M 1.640625 -7.8125 L 1.640625 -0.453125 L 7.34375 -0.453125 L 7.34375 -7.8125 Z M 1.640625 -7.8125 "/>
|
7
|
+
</symbol>
|
8
|
+
<symbol overflow="visible" id="glyph0-1">
|
9
|
+
<path style="stroke:none;" d="M 4.640625 -7.46875 C 3.722656 -7.46875 3.007812 -7.171875 2.5 -6.578125 C 2 -5.992188 1.75 -5.191406 1.75 -4.171875 C 1.75 -3.160156 2.007812 -2.34375 2.53125 -1.71875 C 3.0625 -1.101562 3.78125 -0.796875 4.6875 -0.796875 C 5.84375 -0.796875 6.710938 -1.367188 7.296875 -2.515625 L 8.203125 -2.0625 C 7.867188 -1.351562 7.394531 -0.8125 6.78125 -0.4375 C 6.164062 -0.0625 5.453125 0.125 4.640625 0.125 C 3.804688 0.125 3.082031 -0.046875 2.46875 -0.390625 C 1.863281 -0.742188 1.398438 -1.238281 1.078125 -1.875 C 0.765625 -2.519531 0.609375 -3.285156 0.609375 -4.171875 C 0.609375 -5.484375 0.960938 -6.507812 1.671875 -7.25 C 2.390625 -8 3.375 -8.375 4.625 -8.375 C 5.507812 -8.375 6.242188 -8.203125 6.828125 -7.859375 C 7.421875 -7.515625 7.859375 -7.003906 8.140625 -6.328125 L 7.078125 -5.984375 C 6.878906 -6.460938 6.566406 -6.828125 6.140625 -7.078125 C 5.722656 -7.335938 5.222656 -7.46875 4.640625 -7.46875 Z M 4.640625 -7.46875 "/>
|
10
|
+
</symbol>
|
11
|
+
<symbol overflow="visible" id="glyph0-2">
|
12
|
+
<path style="stroke:none;" d="M 0.8125 0 L 0.8125 -8.703125 L 1.859375 -8.703125 L 1.859375 0 Z M 0.8125 0 "/>
|
13
|
+
</symbol>
|
14
|
+
<symbol overflow="visible" id="glyph0-3">
|
15
|
+
<path style="stroke:none;" d="M 0.796875 0 L 0.796875 -6.34375 L 1.859375 -6.34375 L 1.859375 0 Z M 0.796875 -7.6875 L 0.796875 -8.703125 L 1.859375 -8.703125 L 1.859375 -7.6875 Z M 0.796875 -7.6875 "/>
|
16
|
+
</symbol>
|
17
|
+
<symbol overflow="visible" id="glyph0-4">
|
18
|
+
<path style="stroke:none;" d="M 1.625 -2.953125 C 1.625 -2.222656 1.769531 -1.660156 2.0625 -1.265625 C 2.363281 -0.867188 2.804688 -0.671875 3.390625 -0.671875 C 3.847656 -0.671875 4.210938 -0.757812 4.484375 -0.9375 C 4.765625 -1.125 4.953125 -1.359375 5.046875 -1.640625 L 5.96875 -1.390625 C 5.59375 -0.378906 4.734375 0.125 3.390625 0.125 C 2.453125 0.125 1.738281 -0.15625 1.25 -0.71875 C 0.757812 -1.28125 0.515625 -2.113281 0.515625 -3.21875 C 0.515625 -4.257812 0.757812 -5.054688 1.25 -5.609375 C 1.738281 -6.171875 2.4375 -6.453125 3.34375 -6.453125 C 5.207031 -6.453125 6.140625 -5.332031 6.140625 -3.09375 L 6.140625 -2.953125 Z M 5.046875 -3.75 C 4.992188 -4.425781 4.828125 -4.914062 4.546875 -5.21875 C 4.265625 -5.519531 3.859375 -5.671875 3.328125 -5.671875 C 2.816406 -5.671875 2.410156 -5.5 2.109375 -5.15625 C 1.816406 -4.820312 1.65625 -4.351562 1.625 -3.75 Z M 5.046875 -3.75 "/>
|
19
|
+
</symbol>
|
20
|
+
<symbol overflow="visible" id="glyph0-5">
|
21
|
+
<path style="stroke:none;" d="M 4.828125 0 L 4.828125 -4.015625 C 4.828125 -4.429688 4.785156 -4.753906 4.703125 -4.984375 C 4.628906 -5.222656 4.5 -5.390625 4.3125 -5.484375 C 4.132812 -5.585938 3.875 -5.640625 3.53125 -5.640625 C 3.019531 -5.640625 2.617188 -5.460938 2.328125 -5.109375 C 2.035156 -4.765625 1.890625 -4.285156 1.890625 -3.671875 L 1.890625 0 L 0.828125 0 L 0.828125 -4.984375 C 0.828125 -5.722656 0.816406 -6.175781 0.796875 -6.34375 L 1.796875 -6.34375 C 1.796875 -6.320312 1.796875 -6.265625 1.796875 -6.171875 C 1.804688 -6.085938 1.8125 -5.988281 1.8125 -5.875 C 1.820312 -5.769531 1.832031 -5.5625 1.84375 -5.25 L 1.859375 -5.25 C 2.097656 -5.6875 2.375 -5.992188 2.6875 -6.171875 C 3.007812 -6.359375 3.410156 -6.453125 3.890625 -6.453125 C 4.578125 -6.453125 5.082031 -6.28125 5.40625 -5.9375 C 5.726562 -5.59375 5.890625 -5.019531 5.890625 -4.21875 L 5.890625 0 Z M 4.828125 0 "/>
|
22
|
+
</symbol>
|
23
|
+
<symbol overflow="visible" id="glyph0-6">
|
24
|
+
<path style="stroke:none;" d="M 3.25 -0.046875 C 2.894531 0.046875 2.539062 0.09375 2.1875 0.09375 C 1.34375 0.09375 0.921875 -0.382812 0.921875 -1.34375 L 0.921875 -5.578125 L 0.1875 -5.578125 L 0.1875 -6.34375 L 0.953125 -6.34375 L 1.265625 -7.765625 L 1.96875 -7.765625 L 1.96875 -6.34375 L 3.140625 -6.34375 L 3.140625 -5.578125 L 1.96875 -5.578125 L 1.96875 -1.578125 C 1.96875 -1.265625 2.015625 -1.046875 2.109375 -0.921875 C 2.210938 -0.804688 2.390625 -0.75 2.640625 -0.75 C 2.773438 -0.75 2.976562 -0.773438 3.25 -0.828125 Z M 3.25 -0.046875 "/>
|
25
|
+
</symbol>
|
26
|
+
<symbol overflow="visible" id="glyph0-7">
|
27
|
+
<path style="stroke:none;" d="M 0.984375 0 L 0.984375 -8.25 L 2.109375 -8.25 L 2.109375 -0.921875 L 6.28125 -0.921875 L 6.28125 0 Z M 0.984375 0 "/>
|
28
|
+
</symbol>
|
29
|
+
<symbol overflow="visible" id="glyph0-8">
|
30
|
+
<path style="stroke:none;" d="M 6.171875 -3.171875 C 6.171875 -2.066406 5.925781 -1.238281 5.4375 -0.6875 C 4.945312 -0.144531 4.238281 0.125 3.3125 0.125 C 2.382812 0.125 1.679688 -0.15625 1.203125 -0.71875 C 0.734375 -1.289062 0.5 -2.109375 0.5 -3.171875 C 0.5 -5.359375 1.445312 -6.453125 3.34375 -6.453125 C 4.3125 -6.453125 5.023438 -6.1875 5.484375 -5.65625 C 5.941406 -5.125 6.171875 -4.296875 6.171875 -3.171875 Z M 5.0625 -3.171875 C 5.0625 -4.046875 4.929688 -4.679688 4.671875 -5.078125 C 4.410156 -5.472656 3.972656 -5.671875 3.359375 -5.671875 C 2.742188 -5.671875 2.296875 -5.46875 2.015625 -5.0625 C 1.742188 -4.664062 1.609375 -4.035156 1.609375 -3.171875 C 1.609375 -2.335938 1.742188 -1.707031 2.015625 -1.28125 C 2.285156 -0.863281 2.710938 -0.65625 3.296875 -0.65625 C 3.929688 -0.65625 4.382812 -0.859375 4.65625 -1.265625 C 4.925781 -1.671875 5.0625 -2.304688 5.0625 -3.171875 Z M 5.0625 -3.171875 "/>
|
31
|
+
</symbol>
|
32
|
+
<symbol overflow="visible" id="glyph0-9">
|
33
|
+
<path style="stroke:none;" d="M 2.421875 0.125 C 1.785156 0.125 1.304688 -0.0390625 0.984375 -0.375 C 0.671875 -0.71875 0.515625 -1.179688 0.515625 -1.765625 C 0.515625 -2.421875 0.726562 -2.925781 1.15625 -3.28125 C 1.59375 -3.632812 2.289062 -3.820312 3.25 -3.84375 L 4.671875 -3.875 L 4.671875 -4.21875 C 4.671875 -4.726562 4.5625 -5.09375 4.34375 -5.3125 C 4.125 -5.539062 3.78125 -5.65625 3.3125 -5.65625 C 2.84375 -5.65625 2.5 -5.570312 2.28125 -5.40625 C 2.0625 -5.25 1.929688 -4.992188 1.890625 -4.640625 L 0.796875 -4.75 C 0.972656 -5.882812 1.816406 -6.453125 3.328125 -6.453125 C 4.128906 -6.453125 4.726562 -6.269531 5.125 -5.90625 C 5.53125 -5.539062 5.734375 -5.015625 5.734375 -4.328125 L 5.734375 -1.59375 C 5.734375 -1.28125 5.773438 -1.046875 5.859375 -0.890625 C 5.941406 -0.734375 6.097656 -0.65625 6.328125 -0.65625 C 6.429688 -0.65625 6.546875 -0.664062 6.671875 -0.6875 L 6.671875 -0.03125 C 6.410156 0.03125 6.140625 0.0625 5.859375 0.0625 C 5.472656 0.0625 5.1875 -0.0390625 5 -0.25 C 4.820312 -0.457031 4.722656 -0.78125 4.703125 -1.21875 L 4.671875 -1.21875 C 4.398438 -0.726562 4.082031 -0.378906 3.71875 -0.171875 C 3.363281 0.0234375 2.929688 0.125 2.421875 0.125 Z M 2.671875 -0.671875 C 3.054688 -0.671875 3.398438 -0.757812 3.703125 -0.9375 C 4.003906 -1.113281 4.238281 -1.351562 4.40625 -1.65625 C 4.582031 -1.96875 4.671875 -2.285156 4.671875 -2.609375 L 4.671875 -3.125 L 3.515625 -3.109375 C 3.015625 -3.097656 2.632812 -3.046875 2.375 -2.953125 C 2.125 -2.859375 1.929688 -2.710938 1.796875 -2.515625 C 1.660156 -2.328125 1.59375 -2.070312 1.59375 -1.75 C 1.59375 -1.40625 1.6875 -1.140625 1.875 -0.953125 C 2.0625 -0.765625 2.328125 -0.671875 2.671875 -0.671875 Z M 2.671875 -0.671875 "/>
|
34
|
+
</symbol>
|
35
|
+
<symbol overflow="visible" id="glyph0-10">
|
36
|
+
<path style="stroke:none;" d="M 4.8125 -1.015625 C 4.613281 -0.609375 4.351562 -0.316406 4.03125 -0.140625 C 3.707031 0.0351562 3.3125 0.125 2.84375 0.125 C 2.039062 0.125 1.445312 -0.144531 1.0625 -0.6875 C 0.6875 -1.226562 0.5 -2.046875 0.5 -3.140625 C 0.5 -5.347656 1.28125 -6.453125 2.84375 -6.453125 C 3.320312 -6.453125 3.71875 -6.363281 4.03125 -6.1875 C 4.351562 -6.019531 4.613281 -5.742188 4.8125 -5.359375 L 4.828125 -5.359375 L 4.8125 -6.0625 L 4.8125 -8.703125 L 5.859375 -8.703125 L 5.859375 -1.3125 C 5.859375 -0.644531 5.875 -0.207031 5.90625 0 L 4.890625 0 C 4.878906 -0.0625 4.863281 -0.207031 4.84375 -0.4375 C 4.832031 -0.664062 4.828125 -0.859375 4.828125 -1.015625 Z M 1.609375 -3.171875 C 1.609375 -2.285156 1.722656 -1.648438 1.953125 -1.265625 C 2.191406 -0.890625 2.578125 -0.703125 3.109375 -0.703125 C 3.703125 -0.703125 4.132812 -0.90625 4.40625 -1.3125 C 4.675781 -1.726562 4.8125 -2.375 4.8125 -3.25 C 4.8125 -4.082031 4.675781 -4.691406 4.40625 -5.078125 C 4.132812 -5.472656 3.707031 -5.671875 3.125 -5.671875 C 2.59375 -5.671875 2.207031 -5.472656 1.96875 -5.078125 C 1.726562 -4.691406 1.609375 -4.054688 1.609375 -3.171875 Z M 1.609375 -3.171875 "/>
|
37
|
+
</symbol>
|
38
|
+
<symbol overflow="visible" id="glyph0-11">
|
39
|
+
<path style="stroke:none;" d=""/>
|
40
|
+
</symbol>
|
41
|
+
<symbol overflow="visible" id="glyph0-12">
|
42
|
+
<path style="stroke:none;" d="M 7.375 -2.328125 C 7.375 -1.585938 7.101562 -1.015625 6.5625 -0.609375 C 6.03125 -0.203125 5.289062 0 4.34375 0 L 0.984375 0 L 0.984375 -8.25 L 3.984375 -8.25 C 5.921875 -8.25 6.890625 -7.582031 6.890625 -6.25 C 6.890625 -5.757812 6.753906 -5.347656 6.484375 -5.015625 C 6.210938 -4.691406 5.828125 -4.472656 5.328125 -4.359375 C 5.984375 -4.273438 6.488281 -4.050781 6.84375 -3.6875 C 7.195312 -3.332031 7.375 -2.878906 7.375 -2.328125 Z M 6.234375 -2.421875 C 6.234375 -3.390625 5.550781 -3.875 4.1875 -3.875 L 2.109375 -3.875 L 2.109375 -0.890625 L 4.28125 -0.890625 C 4.957031 -0.890625 5.453125 -1.015625 5.765625 -1.265625 C 6.078125 -1.523438 6.234375 -1.910156 6.234375 -2.421875 Z M 5.765625 -6.125 C 5.765625 -6.5625 5.613281 -6.875 5.3125 -7.0625 C 5.007812 -7.257812 4.566406 -7.359375 3.984375 -7.359375 L 2.109375 -7.359375 L 2.109375 -4.75 L 3.984375 -4.75 C 4.578125 -4.75 5.019531 -4.859375 5.3125 -5.078125 C 5.613281 -5.304688 5.765625 -5.65625 5.765625 -6.125 Z M 5.765625 -6.125 "/>
|
43
|
+
</symbol>
|
44
|
+
<symbol overflow="visible" id="glyph0-13">
|
45
|
+
<path style="stroke:none;" d="M 1.609375 -3.203125 C 1.609375 -2.359375 1.738281 -1.734375 2 -1.328125 C 2.269531 -0.921875 2.675781 -0.71875 3.21875 -0.71875 C 3.59375 -0.71875 3.90625 -0.816406 4.15625 -1.015625 C 4.40625 -1.222656 4.5625 -1.535156 4.625 -1.953125 L 5.6875 -1.890625 C 5.601562 -1.273438 5.34375 -0.785156 4.90625 -0.421875 C 4.46875 -0.0546875 3.910156 0.125 3.234375 0.125 C 2.347656 0.125 1.671875 -0.15625 1.203125 -0.71875 C 0.742188 -1.28125 0.515625 -2.097656 0.515625 -3.171875 C 0.515625 -4.242188 0.75 -5.054688 1.21875 -5.609375 C 1.6875 -6.171875 2.359375 -6.453125 3.234375 -6.453125 C 3.878906 -6.453125 4.414062 -6.285156 4.84375 -5.953125 C 5.269531 -5.617188 5.539062 -5.15625 5.65625 -4.5625 L 4.5625 -4.484375 C 4.507812 -4.835938 4.367188 -5.113281 4.140625 -5.3125 C 3.921875 -5.519531 3.609375 -5.625 3.203125 -5.625 C 2.640625 -5.625 2.234375 -5.4375 1.984375 -5.0625 C 1.734375 -4.695312 1.609375 -4.078125 1.609375 -3.203125 Z M 1.609375 -3.203125 "/>
|
46
|
+
</symbol>
|
47
|
+
<symbol overflow="visible" id="glyph0-14">
|
48
|
+
<path style="stroke:none;" d="M 0.828125 0 L 0.828125 -4.859375 C 0.828125 -5.304688 0.816406 -5.800781 0.796875 -6.34375 L 1.796875 -6.34375 C 1.828125 -5.625 1.84375 -5.191406 1.84375 -5.046875 L 1.859375 -5.046875 C 2.023438 -5.585938 2.21875 -5.957031 2.4375 -6.15625 C 2.65625 -6.351562 2.96875 -6.453125 3.375 -6.453125 C 3.507812 -6.453125 3.648438 -6.4375 3.796875 -6.40625 L 3.796875 -5.4375 C 3.660156 -5.46875 3.472656 -5.484375 3.234375 -5.484375 C 2.796875 -5.484375 2.460938 -5.296875 2.234375 -4.921875 C 2.003906 -4.546875 1.890625 -4.007812 1.890625 -3.3125 L 1.890625 0 Z M 0.828125 0 "/>
|
49
|
+
</symbol>
|
50
|
+
<symbol overflow="visible" id="glyph0-15">
|
51
|
+
<path style="stroke:none;" d="M 7.453125 -2.28125 C 7.453125 -1.519531 7.15625 -0.925781 6.5625 -0.5 C 5.96875 -0.0820312 5.128906 0.125 4.046875 0.125 C 2.035156 0.125 0.867188 -0.578125 0.546875 -1.984375 L 1.625 -2.203125 C 1.75 -1.703125 2.015625 -1.332031 2.421875 -1.09375 C 2.828125 -0.863281 3.378906 -0.75 4.078125 -0.75 C 4.804688 -0.75 5.363281 -0.875 5.75 -1.125 C 6.144531 -1.375 6.34375 -1.738281 6.34375 -2.21875 C 6.34375 -2.488281 6.28125 -2.707031 6.15625 -2.875 C 6.039062 -3.039062 5.867188 -3.175781 5.640625 -3.28125 C 5.421875 -3.394531 5.15625 -3.488281 4.84375 -3.5625 C 4.539062 -3.644531 4.203125 -3.726562 3.828125 -3.8125 C 3.171875 -3.957031 2.671875 -4.097656 2.328125 -4.234375 C 1.992188 -4.378906 1.726562 -4.539062 1.53125 -4.71875 C 1.34375 -4.90625 1.195312 -5.113281 1.09375 -5.34375 C 0.988281 -5.582031 0.9375 -5.859375 0.9375 -6.171875 C 0.9375 -6.878906 1.207031 -7.421875 1.75 -7.796875 C 2.289062 -8.179688 3.0625 -8.375 4.0625 -8.375 C 5 -8.375 5.71875 -8.226562 6.21875 -7.9375 C 6.71875 -7.65625 7.066406 -7.171875 7.265625 -6.484375 L 6.15625 -6.28125 C 6.039062 -6.71875 5.8125 -7.035156 5.46875 -7.234375 C 5.125 -7.429688 4.65625 -7.53125 4.0625 -7.53125 C 3.394531 -7.53125 2.882812 -7.421875 2.53125 -7.203125 C 2.1875 -6.984375 2.015625 -6.660156 2.015625 -6.234375 C 2.015625 -5.972656 2.082031 -5.757812 2.21875 -5.59375 C 2.351562 -5.425781 2.546875 -5.285156 2.796875 -5.171875 C 3.054688 -5.054688 3.566406 -4.914062 4.328125 -4.75 C 4.578125 -4.695312 4.828125 -4.640625 5.078125 -4.578125 C 5.335938 -4.515625 5.582031 -4.441406 5.8125 -4.359375 C 6.039062 -4.273438 6.253906 -4.175781 6.453125 -4.0625 C 6.648438 -3.945312 6.820312 -3.804688 6.96875 -3.640625 C 7.125 -3.484375 7.242188 -3.289062 7.328125 -3.0625 C 7.410156 -2.84375 7.453125 -2.582031 7.453125 -2.28125 Z M 7.453125 -2.28125 "/>
|
52
|
+
</symbol>
|
53
|
+
<symbol overflow="visible" id="glyph0-16">
|
54
|
+
<path style="stroke:none;" d="M 3.59375 0 L 2.34375 0 L 0.046875 -6.34375 L 1.171875 -6.34375 L 2.5625 -2.21875 C 2.613281 -2.0625 2.75 -1.597656 2.96875 -0.828125 L 3.171875 -1.515625 L 3.40625 -2.203125 L 4.84375 -6.34375 L 5.953125 -6.34375 Z M 3.59375 0 "/>
|
55
|
+
</symbol>
|
56
|
+
<symbol overflow="visible" id="glyph0-17">
|
57
|
+
<path style="stroke:none;" d="M 0.921875 0 L 0.921875 -0.890625 L 3.015625 -0.890625 L 3.015625 -7.25 L 1.15625 -5.921875 L 1.15625 -6.921875 L 3.109375 -8.25 L 4.078125 -8.25 L 4.078125 -0.890625 L 6.09375 -0.890625 L 6.09375 0 Z M 0.921875 0 "/>
|
58
|
+
</symbol>
|
59
|
+
<symbol overflow="visible" id="glyph0-18">
|
60
|
+
<path style="stroke:none;" d="M 0.609375 0 L 0.609375 -0.75 C 0.804688 -1.207031 1.046875 -1.609375 1.328125 -1.953125 C 1.617188 -2.304688 1.921875 -2.625 2.234375 -2.90625 C 2.554688 -3.1875 2.867188 -3.445312 3.171875 -3.6875 C 3.484375 -3.9375 3.765625 -4.179688 4.015625 -4.421875 C 4.265625 -4.660156 4.46875 -4.910156 4.625 -5.171875 C 4.78125 -5.441406 4.859375 -5.742188 4.859375 -6.078125 C 4.859375 -6.535156 4.722656 -6.890625 4.453125 -7.140625 C 4.191406 -7.390625 3.828125 -7.515625 3.359375 -7.515625 C 2.898438 -7.515625 2.523438 -7.390625 2.234375 -7.140625 C 1.953125 -6.898438 1.785156 -6.5625 1.734375 -6.125 L 0.65625 -6.21875 C 0.726562 -6.875 1.003906 -7.394531 1.484375 -7.78125 C 1.972656 -8.175781 2.597656 -8.375 3.359375 -8.375 C 4.179688 -8.375 4.816406 -8.175781 5.265625 -7.78125 C 5.710938 -7.394531 5.9375 -6.84375 5.9375 -6.125 C 5.9375 -5.800781 5.863281 -5.476562 5.71875 -5.15625 C 5.570312 -4.84375 5.351562 -4.523438 5.0625 -4.203125 C 4.78125 -3.890625 4.226562 -3.40625 3.40625 -2.75 C 2.957031 -2.375 2.597656 -2.039062 2.328125 -1.75 C 2.066406 -1.457031 1.878906 -1.171875 1.765625 -0.890625 L 6.078125 -0.890625 L 6.078125 0 Z M 0.609375 0 "/>
|
61
|
+
</symbol>
|
62
|
+
</g>
|
63
|
+
<clipPath id="clip1">
|
64
|
+
<path d="M 70 58 L 75.25 58 L 75.25 63 L 70 63 Z M 70 58 "/>
|
65
|
+
</clipPath>
|
66
|
+
<clipPath id="clip2">
|
67
|
+
<path d="M 70 58 L 75.25 58 L 75.25 64 L 70 64 Z M 70 58 "/>
|
68
|
+
</clipPath>
|
69
|
+
<clipPath id="clip3">
|
70
|
+
<path d="M 25 120 L 29.875 120 L 29.875 126 L 25 126 Z M 25 120 "/>
|
71
|
+
</clipPath>
|
72
|
+
<clipPath id="clip4">
|
73
|
+
<path d="M 116 120 L 120.621094 120 L 120.621094 126 L 116 126 Z M 116 120 "/>
|
74
|
+
</clipPath>
|
75
|
+
<clipPath id="clip5">
|
76
|
+
<path d="M 115 120 L 120.621094 120 L 120.621094 126 L 115 126 Z M 115 120 "/>
|
77
|
+
</clipPath>
|
78
|
+
<clipPath id="clip6">
|
79
|
+
<path d="M 58 8 L 88.40625 8 L 88.40625 17 L 58 17 Z M 58 8 "/>
|
80
|
+
</clipPath>
|
81
|
+
<clipPath id="clip7">
|
82
|
+
<path d="M 35 70 L 111.542969 70 L 111.542969 80 L 35 80 Z M 35 70 "/>
|
83
|
+
</clipPath>
|
84
|
+
<clipPath id="clip8">
|
85
|
+
<path d="M 7 132 L 48.609375 132 L 48.609375 142 L 7 142 Z M 7 132 "/>
|
86
|
+
</clipPath>
|
87
|
+
<clipPath id="clip9">
|
88
|
+
<path d="M 97.367188 132 L 139 132 L 139 142 L 97.367188 142 Z M 97.367188 132 "/>
|
89
|
+
</clipPath>
|
90
|
+
</defs>
|
91
|
+
<g id="surface1">
|
92
|
+
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:4;" d="M 96.031261 33.000002 L 96.031261 37.166669 C 96.031261 41.333336 96.031261 49.66667 96.031261 58.000003 C 96.031261 66.333337 96.031261 74.666671 96.031261 78.833337 L 96.031261 83.000004 " transform="matrix(0.749775,0,0,0.75,0.998197,0.749999)"/>
|
93
|
+
<g clip-path="url(#clip1)" clip-rule="nonzero">
|
94
|
+
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;" d="M 75.25 58.5 L 73 63 L 70.75 58.5 Z M 75.25 58.5 "/>
|
95
|
+
</g>
|
96
|
+
<g clip-path="url(#clip2)" clip-rule="nonzero">
|
97
|
+
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;" d="M 75.25 59.003906 L 75.046875 59.40625 L 74.644531 59.203125 L 74.847656 58.800781 Z M 75.046875 59.40625 L 74.847656 59.808594 L 74.445312 59.605469 L 74.644531 59.203125 Z M 74.847656 59.808594 L 74.644531 60.210938 L 74.242188 60.007812 L 74.445312 59.605469 Z M 74.644531 60.210938 L 74.445312 60.613281 L 74.042969 60.410156 L 74.242188 60.007812 Z M 74.445312 60.613281 L 74.242188 61.015625 L 73.839844 60.8125 L 74.042969 60.410156 Z M 74.242188 61.015625 L 74.042969 61.417969 L 73.640625 61.21875 L 73.839844 60.8125 Z M 74.042969 61.417969 L 73.839844 61.820312 L 73.4375 61.621094 L 73.640625 61.21875 Z M 73.839844 61.820312 L 73.640625 62.222656 L 73.238281 62.023438 L 73.4375 61.621094 Z M 73.640625 62.222656 L 73.4375 62.625 L 73.035156 62.425781 L 73.238281 62.023438 Z M 73.4375 62.625 L 73.238281 63.027344 L 72.835938 62.828125 L 73.035156 62.425781 Z M 73.238281 63.027344 L 73 63.503906 L 72.632812 62.769531 L 73.035156 62.570312 L 73.203125 62.898438 L 73 63 L 72.796875 62.898438 L 72.835938 62.828125 Z M 72.632812 62.769531 L 72.433594 62.367188 L 72.835938 62.167969 L 73.035156 62.570312 Z M 72.433594 62.367188 L 72.230469 61.964844 L 72.632812 61.765625 L 72.835938 62.167969 Z M 72.230469 61.964844 L 72.03125 61.5625 L 72.433594 61.363281 L 72.632812 61.765625 Z M 72.03125 61.5625 L 71.828125 61.160156 L 72.230469 60.960938 L 72.433594 61.363281 Z M 71.828125 61.160156 L 71.628906 60.757812 L 72.03125 60.558594 L 72.230469 60.960938 Z M 71.628906 60.757812 L 71.425781 60.355469 L 71.828125 60.15625 L 72.03125 60.558594 Z M 71.425781 60.355469 L 71.226562 59.953125 L 71.628906 59.753906 L 71.828125 60.15625 Z M 71.226562 59.953125 L 71.023438 59.550781 L 71.425781 59.347656 L 71.628906 59.753906 Z M 71.023438 59.550781 L 70.824219 59.148438 L 71.226562 58.945312 L 71.425781 59.347656 Z M 70.824219 59.148438 L 70.621094 58.746094 L 71.023438 58.542969 L 71.226562 58.945312 Z M 70.621094 58.746094 L 70.386719 58.273438 L 71.039062 58.273438 L 71.039062 58.726562 L 70.75 58.726562 L 70.75 58.5 L 70.953125 58.398438 L 71.023438 58.542969 Z M 71.039062 58.273438 L 71.488281 58.273438 L 71.488281 58.726562 L 71.039062 58.726562 Z M 71.488281 58.273438 L 71.9375 58.273438 L 71.9375 58.726562 L 71.488281 58.726562 Z M 71.9375 58.273438 L 72.386719 58.273438 L 72.386719 58.726562 L 71.9375 58.726562 Z M 72.386719 58.273438 L 72.835938 58.273438 L 72.835938 58.726562 L 72.386719 58.726562 Z M 72.835938 58.273438 L 73.289062 58.273438 L 73.289062 58.726562 L 72.835938 58.726562 Z M 73.289062 58.273438 L 73.738281 58.273438 L 73.738281 58.726562 L 73.289062 58.726562 Z M 73.738281 58.273438 L 74.1875 58.273438 L 74.1875 58.726562 L 73.738281 58.726562 Z M 74.1875 58.273438 L 74.636719 58.273438 L 74.636719 58.726562 L 74.1875 58.726562 Z M 74.636719 58.273438 L 75.085938 58.273438 L 75.085938 58.726562 L 74.636719 58.726562 Z M 75.085938 58.273438 L 75.613281 58.273438 L 75.25 59.003906 L 74.847656 58.800781 L 75.046875 58.398438 L 75.25 58.5 L 75.25 58.726562 L 75.085938 58.726562 Z M 75.085938 58.273438 "/>
|
98
|
+
</g>
|
99
|
+
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:4;" d="M 71.971948 116.000006 L 65.897206 120.166673 C 59.817254 124.333339 47.66777 132.666673 41.593027 141.000007 C 35.513075 149.33334 35.513075 157.666674 35.513075 161.833341 L 35.513075 166.000008 " transform="matrix(0.749775,0,0,0.75,0.998197,0.749999)"/>
|
100
|
+
<g clip-path="url(#clip3)" clip-rule="nonzero">
|
101
|
+
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;" d="M 29.875 120.75 L 27.625 125.25 L 25.378906 120.75 Z M 29.875 120.75 "/>
|
102
|
+
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;" d="M 29.875 121.253906 L 29.675781 121.65625 L 29.273438 121.453125 L 29.472656 121.050781 Z M 29.675781 121.65625 L 29.472656 122.058594 L 29.070312 121.855469 L 29.273438 121.453125 Z M 29.472656 122.058594 L 29.273438 122.460938 L 28.871094 122.257812 L 29.070312 121.855469 Z M 29.273438 122.460938 L 29.070312 122.863281 L 28.667969 122.660156 L 28.871094 122.257812 Z M 29.070312 122.863281 L 28.871094 123.265625 L 28.46875 123.0625 L 28.667969 122.660156 Z M 28.871094 123.265625 L 28.667969 123.667969 L 28.265625 123.46875 L 28.46875 123.0625 Z M 28.667969 123.667969 L 28.46875 124.070312 L 28.066406 123.871094 L 28.265625 123.46875 Z M 28.46875 124.070312 L 28.265625 124.472656 L 27.863281 124.273438 L 28.066406 123.871094 Z M 28.265625 124.472656 L 28.066406 124.875 L 27.664062 124.675781 L 27.863281 124.273438 Z M 28.066406 124.875 L 27.863281 125.277344 L 27.460938 125.078125 L 27.664062 124.675781 Z M 27.863281 125.277344 L 27.625 125.753906 L 27.261719 125.019531 L 27.664062 124.820312 L 27.828125 125.148438 L 27.625 125.25 L 27.425781 125.148438 L 27.460938 125.078125 Z M 27.261719 125.019531 L 27.058594 124.617188 L 27.460938 124.417969 L 27.664062 124.820312 Z M 27.058594 124.617188 L 26.859375 124.214844 L 27.261719 124.015625 L 27.460938 124.417969 Z M 26.859375 124.214844 L 26.65625 123.8125 L 27.058594 123.613281 L 27.261719 124.015625 Z M 26.65625 123.8125 L 26.457031 123.410156 L 26.859375 123.210938 L 27.058594 123.613281 Z M 26.457031 123.410156 L 26.253906 123.007812 L 26.65625 122.808594 L 26.859375 123.210938 Z M 26.253906 123.007812 L 26.054688 122.605469 L 26.457031 122.40625 L 26.65625 122.808594 Z M 26.054688 122.605469 L 25.851562 122.203125 L 26.253906 122.003906 L 26.457031 122.40625 Z M 25.851562 122.203125 L 25.652344 121.800781 L 26.054688 121.597656 L 26.253906 122.003906 Z M 25.652344 121.800781 L 25.449219 121.398438 L 25.851562 121.195312 L 26.054688 121.597656 Z M 25.449219 121.398438 L 25.25 120.996094 L 25.652344 120.792969 L 25.851562 121.195312 Z M 25.25 120.996094 L 25.011719 120.523438 L 25.664062 120.523438 L 25.664062 120.976562 L 25.378906 120.976562 L 25.378906 120.75 L 25.578125 120.648438 L 25.652344 120.792969 Z M 25.664062 120.523438 L 26.113281 120.523438 L 26.113281 120.976562 L 25.664062 120.976562 Z M 26.113281 120.523438 L 26.566406 120.523438 L 26.566406 120.976562 L 26.113281 120.976562 Z M 26.566406 120.523438 L 27.015625 120.523438 L 27.015625 120.976562 L 26.566406 120.976562 Z M 27.015625 120.523438 L 27.464844 120.523438 L 27.464844 120.976562 L 27.015625 120.976562 Z M 27.464844 120.523438 L 27.914062 120.523438 L 27.914062 120.976562 L 27.464844 120.976562 Z M 27.914062 120.523438 L 28.363281 120.523438 L 28.363281 120.976562 L 27.914062 120.976562 Z M 28.363281 120.523438 L 28.8125 120.523438 L 28.8125 120.976562 L 28.363281 120.976562 Z M 28.8125 120.523438 L 29.265625 120.523438 L 29.265625 120.976562 L 28.8125 120.976562 Z M 29.265625 120.523438 L 29.714844 120.523438 L 29.714844 120.976562 L 29.265625 120.976562 Z M 29.714844 120.523438 L 30.238281 120.523438 L 29.875 121.253906 L 29.472656 121.050781 L 29.675781 120.648438 L 29.875 120.75 L 29.875 120.976562 L 29.714844 120.976562 Z M 29.714844 120.523438 "/>
|
103
|
+
</g>
|
104
|
+
<path style="fill:none;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(19.999695%,19.999695%,19.999695%);stroke-opacity:1;stroke-miterlimit:4;" d="M 120.090573 116.000006 L 126.165316 120.166673 C 132.245268 124.333339 144.394752 132.666673 150.469494 141.000007 C 156.549446 149.33334 156.549446 157.666674 156.549446 161.833341 L 156.549446 166.000008 " transform="matrix(0.749775,0,0,0.75,0.998197,0.749999)"/>
|
105
|
+
<g clip-path="url(#clip4)" clip-rule="nonzero">
|
106
|
+
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;" d="M 120.621094 120.75 L 118.375 125.25 L 116.125 120.75 Z M 120.621094 120.75 "/>
|
107
|
+
</g>
|
108
|
+
<g clip-path="url(#clip5)" clip-rule="nonzero">
|
109
|
+
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;" d="M 120.621094 121.253906 L 120.421875 121.65625 L 120.019531 121.453125 L 120.21875 121.050781 Z M 120.421875 121.65625 L 120.21875 122.058594 L 119.816406 121.855469 L 120.019531 121.453125 Z M 120.21875 122.058594 L 120.019531 122.460938 L 119.617188 122.257812 L 119.816406 121.855469 Z M 120.019531 122.460938 L 119.816406 122.863281 L 119.414062 122.660156 L 119.617188 122.257812 Z M 119.816406 122.863281 L 119.617188 123.265625 L 119.214844 123.0625 L 119.414062 122.660156 Z M 119.617188 123.265625 L 119.414062 123.667969 L 119.011719 123.46875 L 119.214844 123.0625 Z M 119.414062 123.667969 L 119.214844 124.070312 L 118.8125 123.871094 L 119.011719 123.46875 Z M 119.214844 124.070312 L 119.011719 124.472656 L 118.609375 124.273438 L 118.8125 123.871094 Z M 119.011719 124.472656 L 118.8125 124.875 L 118.410156 124.675781 L 118.609375 124.273438 Z M 118.8125 124.875 L 118.609375 125.277344 L 118.207031 125.078125 L 118.410156 124.675781 Z M 118.609375 125.277344 L 118.375 125.753906 L 118.007812 125.019531 L 118.410156 124.820312 L 118.574219 125.148438 L 118.375 125.25 L 118.171875 125.148438 L 118.207031 125.078125 Z M 118.007812 125.019531 L 117.804688 124.617188 L 118.207031 124.417969 L 118.410156 124.820312 Z M 117.804688 124.617188 L 117.605469 124.214844 L 118.007812 124.015625 L 118.207031 124.417969 Z M 117.605469 124.214844 L 117.402344 123.8125 L 117.804688 123.613281 L 118.007812 124.015625 Z M 117.402344 123.8125 L 117.203125 123.410156 L 117.605469 123.210938 L 117.804688 123.613281 Z M 117.203125 123.410156 L 117 123.007812 L 117.402344 122.808594 L 117.605469 123.210938 Z M 117 123.007812 L 116.800781 122.605469 L 117.203125 122.40625 L 117.402344 122.808594 Z M 116.800781 122.605469 L 116.597656 122.203125 L 117 122.003906 L 117.203125 122.40625 Z M 116.597656 122.203125 L 116.398438 121.800781 L 116.800781 121.597656 L 117 122.003906 Z M 116.398438 121.800781 L 116.195312 121.398438 L 116.597656 121.195312 L 116.800781 121.597656 Z M 116.195312 121.398438 L 115.996094 120.996094 L 116.398438 120.792969 L 116.597656 121.195312 Z M 115.996094 120.996094 L 115.761719 120.523438 L 116.410156 120.523438 L 116.410156 120.976562 L 116.125 120.976562 L 116.125 120.75 L 116.324219 120.648438 L 116.398438 120.792969 Z M 116.410156 120.523438 L 116.859375 120.523438 L 116.859375 120.976562 L 116.410156 120.976562 Z M 116.859375 120.523438 L 117.3125 120.523438 L 117.3125 120.976562 L 116.859375 120.976562 Z M 117.3125 120.523438 L 117.761719 120.523438 L 117.761719 120.976562 L 117.3125 120.976562 Z M 117.761719 120.523438 L 118.210938 120.523438 L 118.210938 120.976562 L 117.761719 120.976562 Z M 118.210938 120.523438 L 118.660156 120.523438 L 118.660156 120.976562 L 118.210938 120.976562 Z M 118.660156 120.523438 L 119.109375 120.523438 L 119.109375 120.976562 L 118.660156 120.976562 Z M 119.109375 120.523438 L 119.558594 120.523438 L 119.558594 120.976562 L 119.109375 120.976562 Z M 119.558594 120.523438 L 120.011719 120.523438 L 120.011719 120.976562 L 119.558594 120.976562 Z M 120.011719 120.523438 L 120.460938 120.523438 L 120.460938 120.976562 L 120.011719 120.976562 Z M 120.460938 120.523438 L 120.988281 120.523438 L 120.621094 121.253906 L 120.21875 121.050781 L 120.421875 120.648438 L 120.621094 120.75 L 120.621094 120.976562 L 120.460938 120.976562 Z M 120.460938 120.523438 "/>
|
110
|
+
</g>
|
111
|
+
<path style="fill-rule:nonzero;fill:rgb(92.549133%,92.549133%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(57.649231%,43.919373%,85.879517%);stroke-opacity:1;stroke-miterlimit:4;" d="M -27.951103 -16.499999 L 27.951112 -16.499999 L 27.951112 16.500002 L -27.951103 16.500002 Z M -27.951103 -16.499999 " transform="matrix(0.749775,0,0,0.75,72.999997,13.124999)"/>
|
112
|
+
<g clip-path="url(#clip6)" clip-rule="nonzero">
|
113
|
+
<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
|
114
|
+
<use xlink:href="#glyph0-1" x="57.66476" y="16.874999"/>
|
115
|
+
<use xlink:href="#glyph0-2" x="66.328172" y="16.874999"/>
|
116
|
+
<use xlink:href="#glyph0-3" x="68.993386" y="16.874999"/>
|
117
|
+
<use xlink:href="#glyph0-4" x="71.658601" y="16.874999"/>
|
118
|
+
<use xlink:href="#glyph0-5" x="78.330424" y="16.874999"/>
|
119
|
+
<use xlink:href="#glyph0-6" x="85.002246" y="16.874999"/>
|
120
|
+
</g>
|
121
|
+
</g>
|
122
|
+
<path style="fill-rule:nonzero;fill:rgb(92.549133%,92.549133%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(57.649231%,43.919373%,85.879517%);stroke-opacity:1;stroke-miterlimit:4;" d="M -59.095878 -16.499996 L 59.095887 -16.499996 L 59.095887 16.500006 L -59.095878 16.500006 Z M -59.095878 -16.499996 " transform="matrix(0.749775,0,0,0.75,72.999997,75.374996)"/>
|
123
|
+
<g clip-path="url(#clip7)" clip-rule="nonzero">
|
124
|
+
<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
|
125
|
+
<use xlink:href="#glyph0-7" x="34.316309" y="79.124996"/>
|
126
|
+
<use xlink:href="#glyph0-8" x="40.988131" y="79.124996"/>
|
127
|
+
<use xlink:href="#glyph0-9" x="47.659954" y="79.124996"/>
|
128
|
+
<use xlink:href="#glyph0-10" x="54.331777" y="79.124996"/>
|
129
|
+
<use xlink:href="#glyph0-11" x="61.003599" y="79.124996"/>
|
130
|
+
<use xlink:href="#glyph0-12" x="64.336582" y="79.124996"/>
|
131
|
+
<use xlink:href="#glyph0-9" x="72.338083" y="79.124996"/>
|
132
|
+
<use xlink:href="#glyph0-2" x="79.009906" y="79.124996"/>
|
133
|
+
<use xlink:href="#glyph0-9" x="81.67512" y="79.124996"/>
|
134
|
+
<use xlink:href="#glyph0-5" x="88.346943" y="79.124996"/>
|
135
|
+
<use xlink:href="#glyph0-13" x="95.018765" y="79.124996"/>
|
136
|
+
<use xlink:href="#glyph0-4" x="101.016962" y="79.124996"/>
|
137
|
+
<use xlink:href="#glyph0-14" x="107.688785" y="79.124996"/>
|
138
|
+
</g>
|
139
|
+
</g>
|
140
|
+
<path style="fill-rule:nonzero;fill:rgb(92.549133%,92.549133%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(57.649231%,43.919373%,85.879517%);stroke-opacity:1;stroke-miterlimit:4;" d="M -35.513223 -16.499992 L 35.513328 -16.499992 L 35.513328 16.500009 L -35.513223 16.500009 Z M -35.513223 -16.499992 " transform="matrix(0.749775,0,0,0.75,27.626914,137.624994)"/>
|
141
|
+
<g clip-path="url(#clip8)" clip-rule="nonzero">
|
142
|
+
<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
|
143
|
+
<use xlink:href="#glyph0-15" x="6.621508" y="141.374993"/>
|
144
|
+
<use xlink:href="#glyph0-4" x="14.623009" y="141.374993"/>
|
145
|
+
<use xlink:href="#glyph0-14" x="21.294831" y="141.374993"/>
|
146
|
+
<use xlink:href="#glyph0-16" x="25.289724" y="141.374993"/>
|
147
|
+
<use xlink:href="#glyph0-4" x="31.287921" y="141.374993"/>
|
148
|
+
<use xlink:href="#glyph0-14" x="37.959744" y="141.374993"/>
|
149
|
+
<use xlink:href="#glyph0-17" x="41.954637" y="141.374993"/>
|
150
|
+
</g>
|
151
|
+
</g>
|
152
|
+
<path style="fill-rule:nonzero;fill:rgb(92.549133%,92.549133%,100%);fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(57.649231%,43.919373%,85.879517%);stroke-opacity:1;stroke-miterlimit:4;" d="M -35.513313 -16.499992 L 35.513239 -16.499992 L 35.513239 16.500009 L -35.513313 16.500009 Z M -35.513313 -16.499992 " transform="matrix(0.749775,0,0,0.75,118.373075,137.624994)"/>
|
153
|
+
<g clip-path="url(#clip9)" clip-rule="nonzero">
|
154
|
+
<g style="fill:rgb(19.999695%,19.999695%,19.999695%);fill-opacity:1;">
|
155
|
+
<use xlink:href="#glyph0-15" x="97.367671" y="141.374993"/>
|
156
|
+
<use xlink:href="#glyph0-4" x="105.369172" y="141.374993"/>
|
157
|
+
<use xlink:href="#glyph0-14" x="112.040995" y="141.374993"/>
|
158
|
+
<use xlink:href="#glyph0-16" x="116.035887" y="141.374993"/>
|
159
|
+
<use xlink:href="#glyph0-4" x="122.034085" y="141.374993"/>
|
160
|
+
<use xlink:href="#glyph0-14" x="128.705907" y="141.374993"/>
|
161
|
+
<use xlink:href="#glyph0-18" x="132.7008" y="141.374993"/>
|
162
|
+
</g>
|
163
|
+
</g>
|
164
|
+
</g>
|
165
|
+
</svg>
|
@@ -0,0 +1,32 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative 'lib/playwrightrunner/version'
|
4
|
+
|
5
|
+
Gem::Specification.new do |spec|
|
6
|
+
spec.name = 'playwright-runner'
|
7
|
+
spec.version = PlaywrightRunner::VERSION
|
8
|
+
spec.authors = ['Kenshi Muto']
|
9
|
+
spec.email = ['kmuto@kmuto.jp']
|
10
|
+
|
11
|
+
spec.summary = 'Playwright Runner'
|
12
|
+
spec.description = 'Provide useful methods to run Playwright, intended to be used with Re:VIEW'
|
13
|
+
spec.homepage = 'https://github.com/kmuto/playwright-runner'
|
14
|
+
spec.license = 'MIT'
|
15
|
+
spec.required_ruby_version = Gem::Requirement.new('>= 2.7.0')
|
16
|
+
|
17
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
18
|
+
spec.metadata['homepage_uri'] = spec.homepage
|
19
|
+
spec.metadata['source_code_uri'] = 'https://github.com/kmuto/playwright-runner'
|
20
|
+
spec.metadata['changelog_uri'] = 'https://github.com/kmuto/playwright-runner/commits/main'
|
21
|
+
|
22
|
+
# Specify which files should be added to the gem when it is released.
|
23
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
24
|
+
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
25
|
+
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{\A(?:test|spec|features)/}) }
|
26
|
+
end
|
27
|
+
spec.bindir = 'exe'
|
28
|
+
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
29
|
+
spec.require_paths = ['lib']
|
30
|
+
|
31
|
+
spec.add_dependency 'playwright-ruby-client', '~> 1.0'
|
32
|
+
end
|
metadata
ADDED
@@ -0,0 +1,74 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: playwright-runner
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Kenshi Muto
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2023-04-02 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: playwright-ruby-client
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.0'
|
27
|
+
description: Provide useful methods to run Playwright, intended to be used with Re:VIEW
|
28
|
+
email:
|
29
|
+
- kmuto@kmuto.jp
|
30
|
+
executables: []
|
31
|
+
extensions: []
|
32
|
+
extra_rdoc_files: []
|
33
|
+
files:
|
34
|
+
- ".github/workflows/main.yml"
|
35
|
+
- ".gitignore"
|
36
|
+
- ".rubocop.yml"
|
37
|
+
- Gemfile
|
38
|
+
- LICENSE.txt
|
39
|
+
- README.md
|
40
|
+
- Rakefile
|
41
|
+
- bin/console
|
42
|
+
- bin/setup
|
43
|
+
- lib/playwrightrunner.rb
|
44
|
+
- lib/playwrightrunner/version.rb
|
45
|
+
- p1.svg
|
46
|
+
- playwright-runner.gemspec
|
47
|
+
homepage: https://github.com/kmuto/playwright-runner
|
48
|
+
licenses:
|
49
|
+
- MIT
|
50
|
+
metadata:
|
51
|
+
rubygems_mfa_required: 'true'
|
52
|
+
homepage_uri: https://github.com/kmuto/playwright-runner
|
53
|
+
source_code_uri: https://github.com/kmuto/playwright-runner
|
54
|
+
changelog_uri: https://github.com/kmuto/playwright-runner/commits/main
|
55
|
+
post_install_message:
|
56
|
+
rdoc_options: []
|
57
|
+
require_paths:
|
58
|
+
- lib
|
59
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: 2.7.0
|
64
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
requirements: []
|
70
|
+
rubygems_version: 3.2.5
|
71
|
+
signing_key:
|
72
|
+
specification_version: 4
|
73
|
+
summary: Playwright Runner
|
74
|
+
test_files: []
|