Compare commits
632 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
730729b2f1 | ||
|
b5d2e7806f | ||
|
a48d234c56 | ||
|
34fbe9f018 | ||
|
dc0c931917 | ||
|
af32c09966 | ||
|
584b9e440e | ||
|
2a65be9e33 | ||
|
630dbb486f | ||
|
8ec88e697b | ||
|
987a9d4587 | ||
|
42c5e6c1d7 | ||
|
39f6eb9b51 | ||
|
156186b1c9 | ||
|
e97114eee2 | ||
|
0719075808 | ||
|
aa93296968 | ||
|
5506bf85f9 | ||
|
1b75996fab | ||
|
2057f39390 | ||
|
d9badbe19c | ||
|
6c173507a5 | ||
|
541572809a | ||
|
eafa99f771 | ||
|
48897f71d2 | ||
|
812895129f | ||
|
e5c077bd78 | ||
|
d79bc8c84a | ||
|
efb14d9961 | ||
|
2e4e318e17 | ||
|
26e63a11a5 | ||
|
dfb44ab923 | ||
|
7aa97b6cc7 | ||
|
d02b1d1eef | ||
|
020cfec21b | ||
|
154f5eaa82 | ||
|
2c1dad91de | ||
|
b66871f6bd | ||
|
6a1dd637ce | ||
|
3a8e52ceb0 | ||
|
bf5e999a00 | ||
|
2c0a46abf2 | ||
|
669d808c89 | ||
|
fa3f77ef51 | ||
|
05d6c3cf1a | ||
|
2d9b184bd5 | ||
|
60cfdb38fb | ||
|
f4eb0e604b | ||
|
2b13cf3ce2 | ||
|
afea0a5339 | ||
|
be55d5a675 | ||
|
bdf7bed717 | ||
|
78dbbfbc75 | ||
|
dd9a3e87a3 | ||
|
d4066fc32a | ||
|
5a29338cce | ||
|
ea18e429c9 | ||
|
b16fc2ddec | ||
|
d8f06f1b46 | ||
|
84f1bfa1cc | ||
|
17a8e4a6af | ||
|
e9748dd79f | ||
|
a4e1163e13 | ||
|
3a9c3338e0 | ||
|
b26fd1d381 | ||
|
d2c8150675 | ||
|
17e5377587 | ||
|
df4b1d4461 | ||
|
89a9f1b348 | ||
|
26d48f4fe1 | ||
|
0b0a0a283c | ||
|
b2dc1df6f3 | ||
|
563a316695 | ||
|
c65bdb49e2 | ||
|
3ae1c8c611 | ||
|
be124d22d8 | ||
|
d8584653ce | ||
|
16f4f12810 | ||
|
fae77d8ea1 | ||
|
d8c7992512 | ||
|
2b7a0aa6da | ||
|
1ebbe1e391 | ||
|
f511bc15ec | ||
|
16cda14d9a | ||
|
6ee084e1a0 | ||
|
4126d00920 | ||
|
ac5ec74787 | ||
|
185dfe415a | ||
|
4c2944e89c | ||
|
9f6af155b8 | ||
|
5d442dbe33 | ||
|
011d9d837f | ||
|
75ce9e32a6 | ||
|
13dccf5b30 | ||
|
984cc2c13c | ||
|
5e034880af | ||
|
fb6d55abe9 | ||
|
b60eac426d | ||
|
0df5033f1d | ||
|
749c7f3884 | ||
|
c145dd4a7c | ||
|
53f9d3c62b | ||
|
34b017b66d | ||
|
aaa8761e4d | ||
|
352d3b11e3 | ||
|
4f0c6ef5a5 | ||
|
6f201f9cf5 | ||
|
06cce1a912 | ||
|
eb3a1e099a | ||
|
4a398b0a50 | ||
|
1cec46533d | ||
|
64e5db0c06 | ||
|
774af5843a | ||
|
c4da728abc | ||
|
e8c4147fe7 | ||
|
b9727214a3 | ||
|
9206d0f1f9 | ||
|
45f0ba7e1a | ||
|
87936379fa | ||
|
259a61cb1c | ||
|
6db6825a61 | ||
|
e5132f05cc | ||
|
b134c81c86 | ||
|
99d35b78c5 | ||
|
2514485ca4 | ||
|
deb048d1b3 | ||
|
2af69259fa | ||
|
008877a07b | ||
|
cbe33d9fde | ||
|
f6fb4e7323 | ||
|
e53da83c00 | ||
|
2d1af689a5 | ||
|
a697b2fa25 | ||
|
a8eb24e9a5 | ||
|
02cb5ee3b8 | ||
|
5f322703c3 | ||
|
a922d93cbd | ||
|
fbef596514 | ||
|
019f3cd668 | ||
|
700c32789c | ||
|
58b40d9802 | ||
|
e34f01d0f2 | ||
|
67c9d5b0bf | ||
|
79bd0bdb66 | ||
|
ac687e99dc | ||
|
388d354e81 | ||
|
4d0e9db710 | ||
|
8be234024e | ||
|
895894bb44 | ||
|
47666fbcb0 | ||
|
9592d0d48f | ||
|
515b3331bf | ||
|
3a67194358 | ||
|
20e525f361 | ||
|
77a1241bf5 | ||
|
4127ce580f | ||
|
6cd4916b79 | ||
|
c54d62c956 | ||
|
a1b733d25c | ||
|
b53109388e | ||
|
51ae925c5b | ||
|
b0d5bfeb33 | ||
|
14ad44be66 | ||
|
4c027c3519 | ||
|
1ed6bc4dc4 | ||
|
4614121827 | ||
|
350187cf66 | ||
|
ac44ea966a | ||
|
43f1e24e56 | ||
|
c641e10f41 | ||
|
e3935b7982 | ||
|
9778c7698e | ||
|
35a3a70aec | ||
|
dbd5db9528 | ||
|
dc859b4e31 | ||
|
28bd7c7d38 | ||
|
66977e62b3 | ||
|
8c66cb9e97 | ||
|
7cc1ffe4e3 | ||
|
624c62c009 | ||
|
180bf262c5 | ||
|
6deedababd | ||
|
369d965df9 | ||
|
e02a1b6418 | ||
|
e89d804472 | ||
|
87a3c0e129 | ||
|
2606cbe4af | ||
|
7290ac0005 | ||
|
067da659b6 | ||
|
5e2a52cdda | ||
|
ccc5745ab7 | ||
|
99ae5afa12 | ||
|
0bdf4faf56 | ||
|
2e3134a6ff | ||
|
bfac2f534c | ||
|
08b39010cd | ||
|
4d63117f04 | ||
|
dc8deb95a5 | ||
|
757ab0ae8e | ||
|
72a1b7cc28 | ||
|
8107937833 | ||
|
7b56190877 | ||
|
ec91516f7d | ||
|
489ee0485e | ||
|
1e85fc1da6 | ||
|
3a565003ad | ||
|
660b17e3b9 | ||
|
9d99189ab3 | ||
|
9e4253345c | ||
|
70e51db2c3 | ||
|
e42c32ef83 | ||
|
2e2a8dd99e | ||
|
63b0b9f090 | ||
|
1ab0515271 | ||
|
5b459e0a71 | ||
|
43bb5d337b | ||
|
c54fa1a87c | ||
|
a55b20bd02 | ||
|
6af01cca3e | ||
|
333c710a75 | ||
|
9c56539ffa | ||
|
2598a6eba4 | ||
|
7ea55d93fe | ||
|
b2ccfb76b5 | ||
|
4158c041ab | ||
|
b0f578365d | ||
|
61f6573233 | ||
|
b0efbc775d | ||
|
e66fd63bf2 | ||
|
3dd51d9e6b | ||
|
d54b6db628 | ||
|
680570536e | ||
|
3661d7b286 | ||
|
a15c07eb7f | ||
|
9a77913454 | ||
|
18cd2af907 | ||
|
97c77b6cc7 | ||
|
37379c87d9 | ||
|
a692ef99b8 | ||
|
b544282660 | ||
|
928b732e95 | ||
|
920943f476 | ||
|
8a40d2a7cf | ||
|
33fdb2fe7a | ||
|
1a798f8c03 | ||
|
81e0d671d0 | ||
|
2c5cc54279 | ||
|
39df2a2e6a | ||
|
6bcd50d4cb | ||
|
08eee3736a | ||
|
e0498e50ae | ||
|
2eb37fa75e | ||
|
a54bdc22ab | ||
|
b561190ca2 | ||
|
29ca556d43 | ||
|
f9e6a49144 | ||
|
d340d3d6b8 | ||
|
1da6c6d991 | ||
|
d2aad79ad3 | ||
|
c5af9a5daa | ||
|
b818b56832 | ||
|
2498e086d4 | ||
|
7cd41c3fd4 | ||
|
510eb66b6e | ||
|
7fb8191485 | ||
|
1f22d7b97a | ||
|
5486d703b0 | ||
|
f6948b1ba6 | ||
|
5730710fb6 | ||
|
835c00faf4 | ||
|
4891bd52bf | ||
|
72685e3c6c | ||
|
9a35078679 | ||
|
1b04512fc4 | ||
|
b9bce8bd98 | ||
|
629c2d1c6f | ||
|
a4e40f7dbe | ||
|
058bc900aa | ||
|
a598cd8d8b | ||
|
0762a72c30 | ||
|
d65dfe09ee | ||
|
8ee17a70dc | ||
|
126355fab1 | ||
|
3c4fe7d132 | ||
|
61683bf1c8 | ||
|
194314d049 | ||
|
a1315a6f2b | ||
|
6e870909cc | ||
|
2f54b7fe77 | ||
|
f403050864 | ||
|
2e24ba6954 | ||
|
780881e43d | ||
|
2e9dad004b | ||
|
3a5dbc5e9f | ||
|
86ac79265c | ||
|
282cbfd92a | ||
|
1afef963e7 | ||
|
bdf855c325 | ||
|
14ae878356 | ||
|
59a42dd204 | ||
|
1f65f44134 | ||
|
565edb3fe4 | ||
|
7e80b08a79 | ||
|
3627cc5e16 | ||
|
7da512570e | ||
|
35e91f47c8 | ||
|
a6c5487f3e | ||
|
b0727533c7 | ||
|
8df64b416b | ||
|
95519583f2 | ||
|
cd6c24d0dd | ||
|
44613c4844 | ||
|
eb1cf9652a | ||
|
18ce6f3484 | ||
|
58781a0d44 | ||
|
c40b9416df | ||
|
a74e84c267 | ||
|
b46bb3f119 | ||
|
3139327ab5 | ||
|
45c6e55181 | ||
|
b78c9e5862 | ||
|
683eece5b3 | ||
|
6c2f927106 | ||
|
c84a099c82 | ||
|
c4c16d02a6 | ||
|
cfca0be03b | ||
|
c0ea34a316 | ||
|
93f0bd505e | ||
|
d495809d53 | ||
|
df3f0344f1 | ||
|
69299252a4 | ||
|
dab4e491d7 | ||
|
a67091b621 | ||
|
c9e143c513 | ||
|
d9ffa15289 | ||
|
b27db37ff0 | ||
|
3b0f109324 | ||
|
e5ba6a37d7 | ||
|
ebf3ca269a | ||
|
dd6a6fb1dc | ||
|
217c9f4161 | ||
|
2e9e69f73d | ||
|
5d1f68d2c0 | ||
|
0fdfbae56f | ||
|
8cbcaba1ac | ||
|
51d6aa06b1 | ||
|
5f542ff1c4 | ||
|
25fac4c7c9 | ||
|
ff943638a1 | ||
|
0b8307214c | ||
|
cff533041e | ||
|
f56e76716d | ||
|
cd99aaa02d | ||
|
0dcadc521b | ||
|
e54bbad1d2 | ||
|
393ef20578 | ||
|
ff56c9b8e0 | ||
|
1396db7695 | ||
|
6514c9808a | ||
|
2a559b5d27 | ||
|
7b0f9b4d5d | ||
|
2d9ea81c21 | ||
|
4c614eaa0a | ||
|
3d2967bf5b | ||
|
fe6102cb4b | ||
|
e6f0a7f2af | ||
|
676c02e985 | ||
|
68e3055ecf | ||
|
8c53bdf8e0 | ||
|
5d507189d8 | ||
|
3b48cdbd7c | ||
|
26b1c3ba13 | ||
|
adef4265dc | ||
|
ee1644c2f6 | ||
|
4a8ef07ada | ||
|
c294ce886e | ||
|
f8e4f6021a | ||
|
a07bb31780 | ||
|
12e15f9385 | ||
|
c7409f3edd | ||
|
5866af7c54 | ||
|
3dd548d131 | ||
|
ac457cc236 | ||
|
2514cbea78 | ||
|
c316883c27 | ||
|
edbc7a437b | ||
|
bafe8197d6 | ||
|
3ecb661220 | ||
|
f2eacbd09b | ||
|
a6dad168b1 | ||
|
219a749891 | ||
|
f58ec21af5 | ||
|
6bc2395fd0 | ||
|
ee017a42d9 | ||
|
49b1ad4be0 | ||
|
9ad10551b8 | ||
|
32ba21d4d1 | ||
|
a6da07f2a2 | ||
|
55f044e8df | ||
|
e175abc8dc | ||
|
025a953bb3 | ||
|
b8291cac39 | ||
|
117b5598e7 | ||
|
acec9a96c2 | ||
|
13f0c0c91e | ||
|
5e4b20aef6 | ||
|
7014c34944 | ||
|
b5d4bf9ce1 | ||
|
3a22a513c2 | ||
|
335e8789cf | ||
|
5a2840e86a | ||
|
2fc619f262 | ||
|
1d74df830b | ||
|
8ed5a8c23a | ||
|
408a19a4f6 | ||
|
f2e994bd15 | ||
|
289fc5256a | ||
|
6f4c5082be | ||
|
3589030968 | ||
|
29d05a8045 | ||
|
5a71dbeb2a | ||
|
d4ed20cbe8 | ||
|
06933cc335 | ||
|
706459dee8 | ||
|
8a67d0a94b | ||
|
c7428f48d5 | ||
|
23c6de264f | ||
|
e36f715215 | ||
|
b56c7e9c6b | ||
|
0fc03952b6 | ||
|
20bf5c4338 | ||
|
07ed8db2b5 | ||
|
520c09ae0d | ||
|
0d1a0bb2f4 | ||
|
75c07263e8 | ||
|
e90d3d2b23 | ||
|
9b725a6231 | ||
|
dc62d212ad | ||
|
d48e919ff5 | ||
|
a6bd074a92 | ||
|
ea51f37f0f | ||
|
32eb95d20f | ||
|
495513a841 | ||
|
4d3570fc57 | ||
|
90b03fd8fa | ||
|
2831d4d060 | ||
|
f89137758d | ||
|
711d70ddfd | ||
|
585a15345c | ||
|
5fe420aebd | ||
|
f4e1907f43 | ||
|
f4bc0d0c4c | ||
|
148fd31681 | ||
|
c9bb73a2af | ||
|
a0695507fb | ||
|
71ed0039dc | ||
|
0b73827385 | ||
|
7fd134e099 | ||
|
193b55ab87 | ||
|
f9a7680130 | ||
|
b3737828ae | ||
|
babcd230a6 | ||
|
b91a26f204 | ||
|
f9e10d980c | ||
|
aa8c44c317 | ||
|
5b59cbecc2 | ||
|
7451c4507a | ||
|
cf9450a6c4 | ||
|
d736c9fc26 | ||
|
f90dca046f | ||
|
8c1be02442 | ||
|
743007b8f3 | ||
|
26ad0cfcd6 | ||
|
d23fd8f2e4 | ||
|
86f4a4794f | ||
|
50ffc6acc9 | ||
|
5e74264080 | ||
|
a3d5ae9f0e | ||
|
5f6219caca | ||
|
c40f859edb | ||
|
dd30903c84 | ||
|
d1ea6470d3 | ||
|
fda9be193e | ||
|
545df76cc1 | ||
|
23e154d8e6 | ||
|
cab7cc4916 | ||
|
5b68cecbf3 | ||
|
4011f83f34 | ||
|
3917677706 | ||
|
c44d4a4d00 | ||
|
d4c44b76ae | ||
|
3ed5af1de9 | ||
|
d707be75d3 | ||
|
d1ba596b2c | ||
|
f85a06547b | ||
|
6480f1e573 | ||
|
b39332b6a4 | ||
|
52e566727d | ||
|
466174760f | ||
|
af251cc6cf | ||
|
30f2a460c0 | ||
|
53808c2e10 | ||
|
be39a83b17 | ||
|
ce3f9d92b0 | ||
|
488ce11fc6 | ||
|
b80ac8cd4f | ||
|
0158d7535a | ||
|
98d7abb3a7 | ||
|
51009c7d04 | ||
|
60dcb31949 | ||
|
df1eff5b26 | ||
|
8e9aa911c2 | ||
|
5f097813ba | ||
|
92380dc719 | ||
|
7ca9552f2f | ||
|
05805334c2 | ||
|
e74f337dab | ||
|
8de3874409 | ||
|
b91b0139e3 | ||
|
d43b6e796a | ||
|
910f3b38dd | ||
|
7689965328 | ||
|
f7884f9fce | ||
|
2280cbf451 | ||
|
77799b68cb | ||
|
f7db42512d | ||
|
a074bba0bf | ||
|
8a5c509f8b | ||
|
36bc2eeb75 | ||
|
960276fc68 | ||
|
a6b4b6cd88 | ||
|
43949afed5 | ||
|
401ba4416b | ||
|
24db6449ef | ||
|
3148d51fef | ||
|
97a8c29121 | ||
|
a9b2ab85f2 | ||
|
37d1a02711 | ||
|
ca34702f41 | ||
|
6ea4060cbd | ||
|
992044c517 | ||
|
f4405159c9 | ||
|
62cc7ace36 | ||
|
402773321e | ||
|
de399363dd | ||
|
82fc53a908 | ||
|
43e53130f3 | ||
|
fc92208a2b | ||
|
55e450f78d | ||
|
3f5d2b0ed8 | ||
|
f21aa872cc | ||
|
1257f04dd5 | ||
|
a3c28554a1 | ||
|
5473076ab3 | ||
|
0159856cbd | ||
|
fa40deb025 | ||
|
4aa0325bbb | ||
|
09d8f757d8 | ||
|
d265e09f2f | ||
|
6a46dd458f | ||
|
7c98cb9fe1 | ||
|
3b22679429 | ||
|
18cf48234d | ||
|
587fb7d1e0 | ||
|
5e5d023720 | ||
|
ceb566201f | ||
|
8e2c8df8fe | ||
|
bc7568d397 | ||
|
5260a3f8d3 | ||
|
e8a2c23559 | ||
|
344f7025aa | ||
|
eafad41a6f | ||
|
8a56ff7a59 | ||
|
2042de83d7 | ||
|
132212b57d | ||
|
a34ea0e334 | ||
|
b85c6743bf | ||
|
8012855325 | ||
|
f14d7ba061 | ||
|
d309ff7df3 | ||
|
00be08477e | ||
|
8410bf1e3c | ||
|
8c2db0419f | ||
|
5cf6bb3e89 | ||
|
cdd05f3751 | ||
|
1acd451833 | ||
|
59e12f2206 | ||
|
89145cb657 | ||
|
fd661c5151 | ||
|
6b74fc5a45 | ||
|
36d17cc7de | ||
|
7752c99058 | ||
|
6b0abeec46 | ||
|
d457a64d6e | ||
|
230b0118dd | ||
|
da782e99ad | ||
|
c03e5fbbca | ||
|
8798f36235 | ||
|
681b68aa75 | ||
|
751b416690 | ||
|
a1e594989d | ||
|
969679ecc2 | ||
|
b691e5f843 | ||
|
bdd3cc430f | ||
|
6728f0d338 | ||
|
3479931864 | ||
|
429424d111 | ||
|
cc34f006c6 | ||
|
72c0dd00c8 | ||
|
5b9290be69 | ||
|
66006f4793 | ||
|
dfea582f28 | ||
|
410d828d4e | ||
|
9bfda6e34b | ||
|
ca8847bcd7 | ||
|
933657a91f | ||
|
217aed7652 | ||
|
62c513c293 | ||
|
8123dd550e | ||
|
b9b24f93b7 | ||
|
029732dfe1 | ||
|
16f7194eff | ||
|
99f1f8193a | ||
|
b164990548 | ||
|
69ecc56ddc | ||
|
7d5850678f | ||
|
6c06dfe9a1 | ||
|
1f80777baf | ||
|
8e630f81a4 | ||
|
4c1f9fe77b | ||
|
a02f8742f9 | ||
|
baf2db336e |
@ -12,3 +12,12 @@ indent_size = 2
|
||||
|
||||
[{Makefile,**.mk}]
|
||||
indent_style = tab
|
||||
|
||||
[*.py]
|
||||
indent_size = 4
|
||||
|
||||
[*.rs]
|
||||
indent_size = 4
|
||||
|
||||
[*.vala]
|
||||
indent_size = 4
|
||||
|
4
.eslintignore
Normal file
@ -0,0 +1,4 @@
|
||||
src/lib
|
||||
troll
|
||||
flatpak
|
||||
demos
|
73
.eslintrc.yaml
Normal file
@ -0,0 +1,73 @@
|
||||
root: true
|
||||
env:
|
||||
es2023: true
|
||||
parser: "@babel/eslint-parser"
|
||||
parserOptions:
|
||||
sourceType: module
|
||||
requireConfigFile: false
|
||||
babelOptions:
|
||||
plugins:
|
||||
- "@babel/plugin-syntax-import-attributes"
|
||||
extends:
|
||||
- eslint:recommended
|
||||
- plugin:import/errors
|
||||
- plugin:import/warnings
|
||||
- plugin:prettier/recommended
|
||||
globals:
|
||||
__DEV__: readonly
|
||||
pkg: readonly
|
||||
# gjs
|
||||
ARGV: readonly
|
||||
Debugger: readonly
|
||||
GIRepositoryGType: readonly
|
||||
globalThis: readonly
|
||||
imports: readonly
|
||||
Intl: readonly
|
||||
log: readonly
|
||||
logError: readonly
|
||||
print: readonly
|
||||
printerr: readonly
|
||||
window: readonly
|
||||
TextEncoder: readonly
|
||||
TextDecoder: readonly
|
||||
console: readonly
|
||||
setTimeout: readonly
|
||||
setInterval: readonly
|
||||
clearTimeout: readonly
|
||||
clearInterval: readonly
|
||||
rules:
|
||||
# Possible Problems
|
||||
# https://eslint.org/docs/latest/rules/#possible-problems
|
||||
array-callback-return: [error] # https://eslint.org/docs/latest/rules/array-callback-return
|
||||
no-duplicate-imports: [error] # https://eslint.org/docs/latest/rules/no-duplicate-imports
|
||||
no-new-native-nonconstructor: [error] # https://eslint.org/docs/latest/rules/no-new-native-nonconstructor
|
||||
no-restricted-globals: # https://eslint.org/docs/rules/no-restricted-globals
|
||||
- error
|
||||
- window
|
||||
- printerr
|
||||
- print
|
||||
- imports
|
||||
- logError
|
||||
- log
|
||||
no-unused-vars: # https://eslint.org/docs/latest/rules/no-unused-vars
|
||||
- error
|
||||
- vars: all
|
||||
args: all
|
||||
argsIgnorePattern: "^_"
|
||||
|
||||
# Suggestions
|
||||
# https://eslint.org/docs/latest/rules/#suggestions
|
||||
eqeqeq: [error, always] # https://eslint.org/docs/rules/eqeqeq
|
||||
no-implicit-globals: [error] # https://eslint.org/docs/latest/rules/no-implicit-globals
|
||||
no-var: [error] # https://eslint.org/docs/rules/no-var
|
||||
prefer-arrow-callback: [
|
||||
error,
|
||||
{ allowNamedFunctions: true, allowUnboundThis: true },
|
||||
] # https://eslint.org/docs/rules/prefer-arrow-callback
|
||||
prefer-const: [error] # https://eslint.org/docs/rules/prefer-const
|
||||
|
||||
# eslint-plugin-import
|
||||
# https://github.com/benmosher/eslint-plugin-import/
|
||||
import/extensions: ["error", "ignorePackages"]
|
||||
import/no-unresolved:
|
||||
[2, { ignore: ["gi://*", "resource://*", "cairo", "gettext", "system"] }]
|
4
.gitconfig
Normal file
@ -0,0 +1,4 @@
|
||||
[re.sonny.Commit]
|
||||
title-length-hint=72
|
||||
body-length-wrap=50
|
||||
auto-capitalize-title=true
|
16
.github/CODEOWNERS
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
/src/langs/javascript/ @sonnyp
|
||||
*.js @sonnyp
|
||||
|
||||
/src/langs/vala/ @lw64
|
||||
*.vala @lw64
|
||||
|
||||
/src/langs/rust/ @Hofer-Julian
|
||||
*.rs @Hofer-Julian
|
||||
Cargo.toml @Hofer-Julian
|
||||
Cargo.lock @Hofer-Julian
|
||||
|
||||
/src/langs/python/ @theCapypara
|
||||
*.py @theCapypara
|
||||
|
||||
*.c @andyholmes
|
||||
*.h @andyholmes
|
59
.github/workflows/CI.yaml
vendored
Normal file
@ -0,0 +1,59 @@
|
||||
name: CI
|
||||
|
||||
# See also https://github.com/flatpak/flatpak-github-actions
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches: [main]
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
CI:
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 20
|
||||
cache: "npm"
|
||||
|
||||
- name: Install host dependencies
|
||||
run: |
|
||||
sudo apt-get install flatpak mutter flatpak-builder
|
||||
|
||||
# Restore caches
|
||||
- name: Restore Flatpak dependencies
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
path: ~/.local/share/flatpak
|
||||
key: ${{ runner.os }}-flatpak-dependencies-${{ github.run_id }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-flatpak-dependencies-
|
||||
- name: Restore .flatpak-builder
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
path: .flatpak-builder
|
||||
key: ${{ runner.os }}-flatpak-builder-${{ github.run_id }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-flatpak-builder-
|
||||
|
||||
- run: mutter --wayland --no-x11 --headless --wayland-display=wayland-0 --virtual-monitor 1280x720 > /tmp/mutter.log 2>&1 &
|
||||
- run: make ci
|
||||
- run: cat /tmp/mutter.log
|
||||
|
||||
# Save caches
|
||||
- name: Save Flatpak dependencies
|
||||
uses: actions/cache/save@v3
|
||||
if: always()
|
||||
with:
|
||||
path: ~/.local/share/flatpak
|
||||
key: ${{ runner.os }}-flatpak-dependencies-${{ github.run_id }}
|
||||
- name: Save .flatpak-builder
|
||||
uses: actions/cache/save@v3
|
||||
if: always()
|
||||
with:
|
||||
path: .flatpak-builder
|
||||
key: ${{ runner.os }}-flatpak-builder-${{ github.run_id }}
|
32
.github/workflows/deploy.yaml
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
name: Deploy
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
flatpak:
|
||||
name: "Flatpak"
|
||||
runs-on: ubuntu-latest
|
||||
container:
|
||||
image: bilelmoussaoui/flatpak-github-actions:gnome-nightly
|
||||
options: --privileged
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
|
||||
- uses: flatpak/flatpak-github-actions/flatpak-builder@v6
|
||||
name: "Build"
|
||||
with:
|
||||
bundle: re.sonny.Workbench.Devel.flatpak
|
||||
manifest-path: build-aux/re.sonny.Workbench.Devel.json
|
||||
cache-key: flatpak-builder-${{ github.sha }}
|
||||
|
||||
- uses: flatpak/flatpak-github-actions/flat-manager@v6
|
||||
name: "Deploy"
|
||||
with:
|
||||
repository: nightly
|
||||
flat-manager-url: https://flat-manager.gnome.org/
|
||||
token: ${{ secrets.GNOME_NIGHTLY_TOKEN }}
|
13
.gitignore
vendored
@ -9,6 +9,15 @@ install
|
||||
.eslintcache
|
||||
*~
|
||||
*.compiled
|
||||
Workbench.flatpak
|
||||
*.flatpak
|
||||
.fenv
|
||||
.venv
|
||||
__pycache__
|
||||
*.pyc
|
||||
*.gresource
|
||||
.frun
|
||||
|
||||
/subprojects/blueprint-compiler
|
||||
# IDEs / editors
|
||||
.idea
|
||||
|
||||
target
|
||||
|
14
.gitmodules
vendored
@ -1,9 +1,13 @@
|
||||
[submodule "troll"]
|
||||
path = troll
|
||||
url = https://github.com/sonnyp/troll.git
|
||||
[submodule "src/blueprint-compiler"]
|
||||
[submodule "demos"]
|
||||
path = demos
|
||||
url = https://github.com/workbenchdev/demos.git
|
||||
[submodule "blueprint-compiler"]
|
||||
path = blueprint-compiler
|
||||
url = https://gitlab.gnome.org/sonny/blueprint-compiler.git
|
||||
[submodule "icon-development-kit-www"]
|
||||
path = icon-development-kit-www
|
||||
url = https://gitlab.gnome.org/Teams/Design/icon-development-kit-www.git
|
||||
url = https://gitlab.gnome.org/jwestman/blueprint-compiler.git
|
||||
[submodule "src/langs/typescript/template/gi-types"]
|
||||
path = gi-types
|
||||
url = https://gitlab.gnome.org/BrainBlasted/gi-typescript-definitions.git
|
||||
branch = nightly
|
||||
|
4
.husky/pre-commit
Executable file
@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env sh
|
||||
. "$(dirname -- "$0")/_/husky.sh"
|
||||
|
||||
npx lint-staged
|
2
.prettierignore
Normal file
@ -0,0 +1,2 @@
|
||||
src/lib
|
||||
troll
|
5
.vscode/extensions.json
vendored
@ -2,12 +2,13 @@
|
||||
"recommendations": [
|
||||
"bilelmoussaoui.flatpak-vscode",
|
||||
"editorconfig.editorconfig",
|
||||
"dbaeumer.vscode-eslint",
|
||||
"esbenp.prettier-vscode",
|
||||
"mrorz.language-gettext",
|
||||
"yzhang.markdown-all-in-one",
|
||||
"mesonbuild.mesonbuild",
|
||||
"prince781.vala",
|
||||
"bodil.blueprint-gtk"
|
||||
"bodil.blueprint-gtk",
|
||||
"dbaeumer.vscode-eslint",
|
||||
"charliermarsh.ruff"
|
||||
]
|
||||
}
|
||||
|
26
.vscode/settings.json
vendored
@ -5,19 +5,35 @@
|
||||
"files.watcherExclude": {
|
||||
"**/.git/objects/**": true,
|
||||
"**/.git/subtree-cache/**": true,
|
||||
"**/node_modules/*/**": true,
|
||||
"**/.hg/store/**": true,
|
||||
"**/node_modules/*/**": true,
|
||||
"**/.flatpak": true,
|
||||
"**/src/lib": true,
|
||||
".flatpak": true,
|
||||
".flatpak/**": true,
|
||||
"_build/**": true
|
||||
},
|
||||
"editor.defaultFormatter": "rome.rome",
|
||||
"[javascript]": {
|
||||
"editor.defaultFormatter": "rome.rome"
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
||||
"[yaml]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||
},
|
||||
"[json]": {
|
||||
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||
},
|
||||
"rust-analyzer.server.path": "${workspaceFolder}/.flatpak/rust-analyzer.sh",
|
||||
"rust-analyzer.runnables.command": "${workspaceFolder}/.flatpak/cargo.sh",
|
||||
"rust-analyzer.files.excludeDirs": [
|
||||
".flatpak",
|
||||
".flatpak-builder",
|
||||
"_build",
|
||||
"build",
|
||||
"builddir"
|
||||
],
|
||||
"vala.languageServerPath": "${workspaceFolder}/.flatpak/vala-language-server.sh",
|
||||
"[meson]": {
|
||||
"editor.defaultFormatter": "mesonbuild.mesonbuild"
|
||||
},
|
||||
"mesonbuild.configureOnOpen": false,
|
||||
"mesonbuild.buildFolder": "_build",
|
||||
"mesonbuild.mesonPath": "/home/sonny/Projects/Workbench/.flatpak/meson.sh"
|
||||
"mesonbuild.mesonPath": "${workspaceFolder}/.flatpak/meson.sh"
|
||||
}
|
||||
|
88
CONTRIBUTING.md
Normal file
@ -0,0 +1,88 @@
|
||||
# Contributing
|
||||
|
||||
If you are interested in contributing to the Library/demos, please head over to https://github.com/workbenchdev/demos instead.
|
||||
|
||||
Either way, don't hesitate to [get in touch](https://matrix.to/#/%23workbench:gnome.org).
|
||||
|
||||
## Getting started
|
||||
|
||||
The following is the recommended setup:
|
||||
|
||||
1. Install [GNOME Builder from Flathub](https://flathub.org/apps/details/org.gnome.Builder)
|
||||
2. Open Builder and select "Clone Repository..."
|
||||
3. Clone `https://github.com/workbenchdev/Workbench.git` (or your fork)
|
||||
4. Press the Run ▶ button
|
||||
|
||||
Make sure that you're building the development target `re.sonny.Workbench.Devel`.
|
||||
|
||||
If you know what you are doing you can also use VSCode with the extensions recommended in this workspace or anything else you are comfortable with. Don't forget to fetch the submodules.
|
||||
|
||||
## Setup
|
||||
|
||||
We provide a couple of tools to make the development process pleasant.
|
||||
|
||||
- Code formatter that runs automatically on git commit
|
||||
- Single command to run all the tests locally
|
||||
|
||||
```sh
|
||||
# Ubuntu requirements
|
||||
# sudo apt install flatpak flatpak-builder nodejs make gcc g++
|
||||
|
||||
# Fedora requirements
|
||||
# sudo dnf install flatpak flatpak-builder nodejs make gcc gcc-c++
|
||||
|
||||
cd Workbench
|
||||
make
|
||||
```
|
||||
|
||||
Before submitting a PR, we recommend running tests locally with
|
||||
|
||||
```sh
|
||||
make test
|
||||
```
|
||||
|
||||
## Submitting a contribution
|
||||
|
||||
- Unless you don't want too - add your name to [the list of contributors](./src/about.js)
|
||||
- Open a pull request
|
||||
- Make sure to review your own changes
|
||||
- Commits are squashed into a single commit on merge
|
||||
|
||||
## Debugging
|
||||
|
||||
To view debug logs, use the following command in [`src/workbench`](../src/workbench).
|
||||
|
||||
```sh
|
||||
--command "G_MESSAGES_DEBUG=\"@app_id@\" @app_id@ $@"
|
||||
```
|
||||
|
||||
See also
|
||||
|
||||
- [GJS Logging](https://gitlab.gnome.org/GNOME/gjs/-/blob/master/doc/Logging.md)
|
||||
- [Flatpak Debugging](https://docs.flatpak.org/en/latest/debugging.html)
|
||||
|
||||
## Translation
|
||||
|
||||
Workbench doesn't currently support translations for its user interface. GNOME documentation is only available in English and we do not want to mislead non-English speakers.
|
||||
|
||||
<!--
|
||||
If you'd like to help translating Workbench into your language, please head over to [Weblate](https://hosted.weblate.org/engage/workbench/).
|
||||
|
||||
<a href="https://hosted.weblate.org/engage/workbench/">
|
||||
<img src="https://hosted.weblate.org/widgets/workbench/-/workbench/multi-auto.svg" alt="Translation status" />
|
||||
</a>
|
||||
|
||||
Thank you for your help!
|
||||
-->
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### The app won't build/run anymore - even on clean `main`
|
||||
|
||||
Clean the build directory. On GNOME Builder, open the search palette with `Ctrl+Enter` and search/select `Clean`.
|
||||
|
||||
If that doesn't solve it - remove the GNOME Builder cache directory
|
||||
|
||||
```sh
|
||||
rm -r ~/.var/app/org.gnome.Builder/cache/
|
||||
```
|
94
Makefile
@ -1,16 +1,96 @@
|
||||
SHELL:=/bin/bash -O globstar
|
||||
.PHONY: setup build lint unit test ci sandbox flatpak
|
||||
.DEFAULT_GOAL := setup
|
||||
|
||||
.PHONY: test
|
||||
setup:
|
||||
flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||
flatpak install --or-update --user --noninteractive flathub org.gnome.Sdk//48 org.flatpak.Builder org.freedesktop.Sdk.Extension.rust-stable//24.08 org.freedesktop.Sdk.Extension.vala//24.08 org.freedesktop.Sdk.Extension.llvm18//24.08 org.freedesktop.Sdk.Extension.node20//24.08 org.freedesktop.Sdk.Extension.typescript//24.08
|
||||
# flatpak remote-add --user --if-not-exists flathub-beta https://flathub.org/beta-repo/flathub-beta.flatpakrepo
|
||||
# flatpak remote-add --user --if-not-exists gnome-nightly https://nightly.gnome.org/gnome-nightly.flatpakrepo
|
||||
# flatpak install --or-update --user --noninteractive gnome-nightly org.gnome.Sdk//master
|
||||
git submodule update --init
|
||||
npm install --no-fund
|
||||
@echo "✅ You can use "make build" to build Workbench"
|
||||
|
||||
stable:
|
||||
# flatpak --user run org.flatpak.Builder --delete-build-dirs --disable-updates --build-only --ccache --force-clean flatpak build-aux/re.sonny.Workbench.json
|
||||
flatpak-builder --delete-build-dirs --disable-updates --build-only --ccache --force-clean flatpak build-aux/re.sonny.Workbench.json
|
||||
|
||||
devel:
|
||||
# flatpak --user run org.flatpak.Builder --delete-build-dirs --disable-updates --build-only --ccache --force-clean flatpak build-aux/re.sonny.Workbench.Devel.json
|
||||
flatpak-builder --delete-build-dirs --disable-updates --build-only --ccache --force-clean flatpak build-aux/re.sonny.Workbench.Devel.json
|
||||
|
||||
|
||||
build: devel
|
||||
|
||||
cli:
|
||||
./troll/gjspack/bin/gjspack src/cli/main.js --appid=re.sonny.Workbench.cli --prefix=/re/sonny/Workbench --resource-root=src/ --no-executable flatpak/files/share/re.sonny.Workbench.cli/
|
||||
cp src/cli/bin.js flatpak/files/bin/workbench-cli
|
||||
|
||||
lint:
|
||||
./node_modules/.bin/rome ci .
|
||||
# JavaScript
|
||||
./node_modules/.bin/eslint --max-warnings=0 src
|
||||
# Rust
|
||||
./build-aux/fun rustfmt --check --edition 2021 src/**/*.rs
|
||||
# Python
|
||||
./build-aux/fun ruff check --config=src/langs/python/ruff.toml src/**/*.py
|
||||
./build-aux/fun ruff format --config=src/langs/python/ruff.toml --check src/**/*.py
|
||||
# Blueprint
|
||||
./build-aux/fun blueprint-compiler format src/**/*.blp
|
||||
./build-aux/fun workbench-cli check blueprint src/**/*.blp
|
||||
# Vala
|
||||
# ./build-aux/fun workbench-cli check vala src/**/*.vala
|
||||
# CSS
|
||||
./build-aux/fun workbench-cli check css src/**/*.css
|
||||
# Flatpak manifests
|
||||
flatpak run --user --command=flatpak-builder-lint org.flatpak.Builder manifest --exceptions --user-exceptions ./build-aux/exceptions.json build-aux/re.sonny.Workbench.json
|
||||
flatpak run --user --command=flatpak-builder-lint org.flatpak.Builder manifest --exceptions --user-exceptions ./build-aux/exceptions.json build-aux/re.sonny.Workbench.Devel.json
|
||||
|
||||
unit:
|
||||
./build-aux/fun gjs -m ./troll/tst/bin.js test/*.test.js
|
||||
#./build-aux/wip/run.js build-aux/re.sonny.Workbench.Devel.json -- gjs -m ./troll/tst/bin.js test/*.test.js
|
||||
|
||||
test: lint
|
||||
./troll/tst/bin.js test/*.test.js
|
||||
# https://github.com/ximion/appstream/issues/398#issuecomment-1129454985
|
||||
# flatpak run org.freedesktop.appstream.cli validate --override=release-time-missing=info --no-net data/app.metainfo.xml
|
||||
# desktop-file-validate --no-hints data/app.desktop
|
||||
# https://discourse.gnome.org/t/gtk-builder-tool-requires-and-libraries/9222
|
||||
# gtk-builder-tool validate src/*.ui
|
||||
flatpak-builder --show-manifest re.sonny.Workbench.json > /dev/null
|
||||
flatpak-builder --show-manifest re.sonny.Workbench.Devel.json > /dev/null
|
||||
find po/ -type f -name "*po" -print0 | xargs -0 -n1 msgfmt -o /dev/null --check
|
||||
# flatpak run org.flathub.flatpak-external-data-checker re.sonny.Workbench.json
|
||||
# flatpak run org.flathub.flatpak-external-data-checker re.sonny.Workbench.Devel.json
|
||||
# as used by Flathub
|
||||
# flatpak run --env=G_DEBUG=fatal-criticals --command=appstream-util org.flatpak.Builder validate data/app.metainfo.xml
|
||||
|
||||
test: unit lint
|
||||
./build-aux/fun workbench-cli ci demos/src/Welcome
|
||||
# ./build-aux/wip/run.js build-aux/re.sonny.Workbench.Devel.json -- workbench-cli ci demos/src/Welcome/
|
||||
|
||||
ci: setup build test
|
||||
# See Permissions.js
|
||||
# flatpak override --user --share=network --socket=pulseaudio --device=input re.sonny.Workbench.Devel
|
||||
./build-aux/fun workbench-cli ci demos/src/*
|
||||
|
||||
# Note that if you have Sdk extensions installed they will be used
|
||||
# make sure to test without the sdk extensions installed
|
||||
sandbox: setup
|
||||
flatpak run org.flatpak.Builder --ccache --user --install --force-clean flatpak build-aux/re.sonny.Workbench.Devel.json
|
||||
# flatpak remove --noninteractive org.freedesktop.Sdk.Extension.rust-stable//24.08 org.freedesktop.Sdk.Extension.vala//24.08 org.freedesktop.Sdk.Extension.llvm18//24.08
|
||||
flatpak run --command="bash" re.sonny.Workbench.Devel
|
||||
|
||||
flatpak:
|
||||
flatpak run org.flatpak.Builder --ccache --force-clean flatpak build-aux/re.sonny.Workbench.Devel.json
|
||||
# This is what Flathub does - consider moving to lint
|
||||
flatpak run --env=G_DEBUG=fatal-criticals --command=appstream-util org.flatpak.Builder validate flatpak/files/share/appdata/re.sonny.Workbench.Devel.appdata.xml
|
||||
flatpak run --command="desktop-file-validate" --filesystem=host:ro org.freedesktop.Sdk//24.08 flatpak/files/share/applications/re.sonny.Workbench.Devel.desktop
|
||||
# appstreamcli validate --override=release-time-missing=info /path/to/your/app.metainfo.xml
|
||||
flatpak run org.flatpak.Builder --run flatpak build-aux/re.sonny.Workbench.Devel.json bash
|
||||
|
||||
# Sync with .gitignore
|
||||
clean:
|
||||
rm -f re.sonny.Workbench.Devel.flatpak
|
||||
rm -f re.sonny.Workbench.flatpak
|
||||
rm -rf _build
|
||||
rm -rf .flatpak
|
||||
rm -rf .flatpak-builder
|
||||
rm -rf flatpak
|
||||
rm -rf flatpak-builder
|
||||
rm -rf repo
|
||||
|
143
README.md
@ -6,53 +6,49 @@ Learn and prototype with GNOME technologies
|
||||
|
||||

|
||||
|
||||
<a href='https://beta.flathub.org/apps/details/re.sonny.Workbench'><img width='180' height='60' alt='Download on Flathub' src='https://flathub.org/assets/badges/flathub-badge-en.svg'/></a>
|
||||
<a href='https://flathub.org/apps/re.sonny.Workbench'><img width='240' alt='Download on Flathub' src='https://flathub.org/api/badge?svg&locale=en'/></a>
|
||||
|
||||
Workbench goal is to let you experiment with GNOME technologies, no matter if tinkering for the first time or building and testing a GTK user interface.
|
||||
Workbench lets you experiment with GNOME technologies, no matter if tinkering for the first time or building and testing a GTK user interface.
|
||||
|
||||
Among other things, Workbench comes with
|
||||
|
||||
- realtime GTK/CSS preview
|
||||
- library of examples
|
||||
- 1000+ icons
|
||||
- JavaScript and Vala support
|
||||
- XML and Blueprint for describing user interface
|
||||
- syntax highlighting, undo/redo, autosave, session restore
|
||||
- code formatter
|
||||
- console logs
|
||||
- Live GTK/CSS preview
|
||||
- Library of 100+ examples
|
||||
<!-- - JavaScript, TypeScript, Rust, Python and Vala support -->
|
||||
- JavaScript, Rust, Python and Vala support
|
||||
- Declarative user interface syntax
|
||||
- Autosave, sessions and projects
|
||||
- Code diagnostics, completion and formatter
|
||||
- Terminal output
|
||||
|
||||
ℹ️ Workbench is made possible by Flatpak. Only Flathub Workbench is supported.
|
||||
|
||||
**Testimonials**
|
||||
|
||||
> **“** It is an essential tool for those who develop applications with GTK **”** • **“** as someone who is learning GTK, Workbench is definitely a must have! **”** • **“** created a simple mockup using the amazing Workbench app **”** • **“** It used to be hard but Workbench helps me learn GTK. **”** • **“** I recommend it even to those who are new to GTK **”** • **“** This tool has simplified my life by saving my time drastically. **”** • **“** Gone too wild playing with Workbench **”**
|
||||
|
||||
## Language support
|
||||
|
||||
| | Formatter | Linter | Library demos[1] |
|
||||
| ---------- | --------- | ------ | ---------------- |
|
||||
| JavaScript | ✅ | ✅ | 103 |
|
||||
| Python | ✅ | ✅ | 98 |
|
||||
| Vala | ✅ | ✅ | 92 |
|
||||
| Rust | ✅ | ✅ | 52 |
|
||||
| Blueprint | ✅ | ✅ | |
|
||||
| CSS | ✅ | ✅ | |
|
||||
|
||||
[1] As of 2024-06-16 <!--counted with `~/go/bin/scc demos/src`-->
|
||||
|
||||
## Tips and tricks
|
||||
|
||||
<details>
|
||||
<summary>Disable code formatting</summary>
|
||||
|
||||
Workbench uses the [prettier](https://prettier.io/) code formatter. If you need to exclude some code you can use special comments.
|
||||
|
||||
[JavaScript](https://prettier.io/docs/en/ignore.html#javascript)
|
||||
|
||||
```js
|
||||
// prettier-ignore
|
||||
matrix(
|
||||
1, 0, 0,
|
||||
0, 1, 0,
|
||||
0, 0, 1
|
||||
);
|
||||
```
|
||||
[JavaScript](https://biomejs.dev/formatter/#ignore-code)
|
||||
|
||||
[CSS](https://prettier.io/docs/en/ignore.html#css)
|
||||
|
||||
```css
|
||||
/* prettier-ignore */
|
||||
.my ugly rule
|
||||
{
|
||||
|
||||
}
|
||||
```
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
@ -62,45 +58,22 @@ Use GNOME Builder to start a new project using the appropriate GNOME Application
|
||||
|
||||
</details>
|
||||
|
||||
## Translation
|
||||
## Code of conduct
|
||||
|
||||
If you'd like to help translating Workbench into your language, please head over to [Weblate](https://hosted.weblate.org/engage/workbench/).
|
||||
Workbench follows the [GNOME Code of Conduct](https://conduct.gnome.org/).
|
||||
|
||||
<a href="https://hosted.weblate.org/engage/workbench/">
|
||||
<img src="https://hosted.weblate.org/widgets/workbench/-/workbench/multi-auto.svg" alt="Translation status" />
|
||||
</a>
|
||||
|
||||
Thank you for your help!
|
||||
|
||||
## Development
|
||||
|
||||
1. Install [GNOME Builder](https://apps.gnome.org/app/org.gnome.Builder/)
|
||||
2. Open Builder and select "Clone Repository..."
|
||||
3. Clone `https://github.com/sonnyp/Workbench.git` (or your fork)
|
||||
4. Press the Run ▶ button
|
||||
|
||||
If you used an other method, don't forget to fetch the submodules.
|
||||
|
||||
```sh
|
||||
cd Workbench
|
||||
git submodule update
|
||||
```
|
||||
|
||||
Also make sure that you're building the development target (`re.sonny.Workbench.Devel`).
|
||||
|
||||
Feel free to come by [#workbench:matrix.org](https://matrix.to/#/#workbench:matrix.org).
|
||||
|
||||
## Packaging
|
||||
|
||||
Please do not attempt to package Workbench any other way than as a Flatpak application.
|
||||
|
||||
It is unsupported and may put users at risk.
|
||||
- **Be friendly.** Use welcoming and inclusive language.
|
||||
- **Be empathetic.** Be respectful of differing viewpoints and experiences.
|
||||
- **Be respectful.** When we disagree, we do so in a polite and constructive manner.
|
||||
- **Be considerate.** Remember that decisions are often a difficult choice between competing priorities.
|
||||
- **Be patient and generous.** If someone asks for help it is because they need it.
|
||||
- **Try to be concise.** Read the discussion before commenting.
|
||||
|
||||
## Credits
|
||||
|
||||
Workbench would not be possible without
|
||||
Workbench is made of many components.
|
||||
|
||||
GTK, GLib, Flatpak, GtkSourceView, libadwaita, VTE, GJS, Blueprint, icon-development-kit, Vala
|
||||
Thank you Flatpak, GTK, GLib, GtkSourceView, libadwaita, VTE, GJS, Blueprint, icon-development-kit, Vala, GTKCssLanguageServer, gtk-rs, PyGObject
|
||||
|
||||
and the GNOME community 🖤
|
||||
|
||||
@ -114,42 +87,6 @@ GPLv3. Please see [COPYING](COPYING) file.
|
||||
|
||||
Except for everything under src/Library/demos which is in the public domain under the terms of [CC0 1.0](https://creativecommons.org/publicdomain/zero/1.0/).
|
||||
|
||||
## Maintainers
|
||||
|
||||
### Release
|
||||
|
||||
```sh
|
||||
$V = 45
|
||||
|
||||
git checkout l10n
|
||||
git pull
|
||||
git checkout main
|
||||
git merge --squash l10n
|
||||
meson compile re.sonny.Workbench-pot -C _build
|
||||
meson compile re.sonny.Workbench-update-po -C _build
|
||||
git commit -m 'Update translations'
|
||||
|
||||
# Update version
|
||||
# bump version in meson.build
|
||||
# add release notes to metainfo
|
||||
git add meson.build
|
||||
|
||||
git commit -m '$V'
|
||||
git tag '$V'
|
||||
git push
|
||||
git push origin $V
|
||||
```
|
||||
|
||||
### Update icons
|
||||
|
||||
```
|
||||
cd icon-development-kit-www
|
||||
git pull
|
||||
cd ..
|
||||
cp -r icon-development-kit-www/img/symbolic/**/*.svg data/icons/hicolor/scalable/actions/
|
||||
cat icon-development-kit-www/_data/icons.yaml | python -c 'import sys, yaml, json; print(json.dumps(yaml.safe_load(sys.stdin.read())))' > src/icon-development-kit.json
|
||||
```
|
||||
|
||||
<details>
|
||||
<summary>
|
||||
Testimonials
|
||||
@ -183,4 +120,12 @@ https://mastodon.online/@waimus/108582108701889960
|
||||
|
||||
https://fosstodon.org/@TheEvilSkeleton/108598098682948266
|
||||
|
||||
> I'm really new to development and workbench its being a fantastic help not just to code itself, but to understand the gtk logic.
|
||||
|
||||
https://matrix.to/#/!kDBZrVKCdhrVuWxbGe:matrix.org/$XmIz7FA-UwpoiwHxDyzve1P-J1ecMHkL0x8Br23mUxg
|
||||
|
||||
> Installed this (again) a short while ago this is for sure the most fun I've had with a development tool
|
||||
|
||||
https://floss.social/@agavi@hachyderm.io/110594674482784960
|
||||
|
||||
</details>
|
||||
|
@ -4,21 +4,27 @@
|
||||
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
|
||||
xmlns:foaf="http://xmlns.com/foaf/0.1/"
|
||||
xmlns:gnome="http://api.gnome.org/doap-extensions#"
|
||||
xmlns="http://usefulinc.com/ns/doap#"
|
||||
>
|
||||
xmlns="http://usefulinc.com/ns/doap#">
|
||||
<name>Workbench</name>
|
||||
<shortdesc>Learn and prototype with GNOME technologies</shortdesc>
|
||||
<description
|
||||
>Workbench goal is to let you experiment with GNOME technologies, no matter if tinkering for the first time or building and testing a custom GTK widget.</description>
|
||||
<description>Workbench goal is to let you experiment with GNOME technologies, no matter if tinkering for the first time or building and testing a custom GTK widget.</description>
|
||||
|
||||
<homepage rdf:resource="https://workbench.sonny.re" />
|
||||
<bug-database rdf:resource="https://workbench.sonny.re/feedback" />
|
||||
<programming-language>JavaScript</programming-language>
|
||||
<programming-language>Vala</programming-language>
|
||||
<programming-language>C</programming-language>
|
||||
<programming-language>Rust</programming-language>
|
||||
<programming-language>Python</programming-language>
|
||||
|
||||
<platform>GTK 4</platform>
|
||||
<platform>Libadwaita</platform>
|
||||
|
||||
<maintainer>
|
||||
<foaf:Person>
|
||||
<foaf:name>Sonny Piers</foaf:name>
|
||||
<foaf:mbox rdf:resource="mailto:sonnyp@gnome.org" />
|
||||
<gnome:userid>sonnyp</gnome:userid>
|
||||
<foaf:account>
|
||||
<foaf:OnlineAccount>
|
||||
<foaf:accountServiceHomepage rdf:resource="https://github.com/" />
|
||||
@ -27,12 +33,29 @@
|
||||
</foaf:account>
|
||||
<foaf:account>
|
||||
<foaf:OnlineAccount>
|
||||
<foaf:accountServiceHomepage
|
||||
rdf:resource="https://gitlab.gnome.org"
|
||||
/>
|
||||
<foaf:accountServiceHomepage rdf:resource="https://gitlab.gnome.org"/>
|
||||
<foaf:accountName>sonny</foaf:accountName>
|
||||
</foaf:OnlineAccount>
|
||||
</foaf:account>
|
||||
</foaf:Person>
|
||||
</maintainer>
|
||||
<maintainer>
|
||||
<foaf:Person>
|
||||
<foaf:name>Julian Hofer</foaf:name>
|
||||
<foaf:mbox rdf:resource="mailto:julianhofer@gnome.org" />
|
||||
<gnome:userid>julianhofer</gnome:userid>
|
||||
<foaf:account>
|
||||
<foaf:OnlineAccount>
|
||||
<foaf:accountServiceHomepage rdf:resource="https://github.com/" />
|
||||
<foaf:accountName>Hofer-Julian</foaf:accountName>
|
||||
</foaf:OnlineAccount>
|
||||
</foaf:account>
|
||||
<foaf:account>
|
||||
<foaf:OnlineAccount>
|
||||
<foaf:accountServiceHomepage rdf:resource="https://gitlab.gnome.org"/>
|
||||
<foaf:accountName>Hofer-Julian</foaf:accountName>
|
||||
</foaf:OnlineAccount>
|
||||
</foaf:account>
|
||||
</foaf:Person>
|
||||
</maintainer>
|
||||
</Project>
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 592ed7acab26f1633c03b0cd703a9cf2b7f09cb9
|
||||
Subproject commit 04ef0944db56ab01307a29aaa7303df6067cb3c0
|
40
build-aux/README.md
Normal file
@ -0,0 +1,40 @@
|
||||
# Build Utilities
|
||||
|
||||
This directory contains the Flatpak Manifest and other build utilities.
|
||||
|
||||
## Workbench Flatpak Manifests
|
||||
|
||||
### Python Modules
|
||||
|
||||
The `modules/python-*.json` files contain Flatpak modules to install Python dependencies.
|
||||
|
||||
These files are (sometimes partially, see below) auto-generated. Here is how to generate it:
|
||||
|
||||
1. Obtain an up-to-date copy of [flatpak-builder-tools](https://github.com/flatpak/flatpak-builder-tools).
|
||||
2. Make sure you have a Python virtualenv activated with the dependencies for the `pip` generator from the repo above.
|
||||
3. Run `python3 <...>/flatpak-builder-tools/pip/flatpak-pip-generator <package> -o modules/python-<package> --build-isolation`
|
||||
|
||||
You will notice that Workbench will not build after auto-generating these files as described above.
|
||||
This is due to these issues:
|
||||
|
||||
- https://github.com/flatpak/flatpak-builder-tools/issues/380
|
||||
- https://github.com/pypa/pip/issues/7863
|
||||
|
||||
This means that the generated JSON file now needs its build dependencies manually added. Check the build dependencies
|
||||
of the package and their dependencies and add them to the JSON as well. Brute-forcing the build to obtain missing packages
|
||||
may help as does referencing old commits of the file. You can also use the generator command to generate dependencies
|
||||
for them and then merge it into the file by hand, but note that you will also need to manually collect their build
|
||||
dependencies too.
|
||||
|
||||
In some cases you may also need to manually remove some packages the generator adds (such as `packaging` with `rope`,
|
||||
as the SDK and Runtime already contain a version of these packages that can not be replaced. Make sure the package
|
||||
you want to install is actually compatible with the version of that dependency in the SDK/Runtime.
|
||||
|
||||
#### Python packages with Maturin as build system
|
||||
|
||||
Python packages with Maturin as build system need some additional manual steps to get working. You will have to have
|
||||
Rust enabled for compilation and pull in additional dependencies. See `modules/python-ruff.json` for example.
|
||||
|
||||
You can generate Maturin's dependencies with another generator provided by the Flatpak Builder Tools. Clone
|
||||
the Maturin repo in the corresponding version you need and run:
|
||||
`python3 <...>/flatpak-builder-tools/cargo/flatpak-cargo-generator.py <...>/Cargo.lock -o modules/cargo-sources-maturin.json`
|
4
build-aux/exceptions.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"re.sonny.Workbench": ["external-gitmodule-url-found"],
|
||||
"re.sonny.Workbench.Devel": ["external-gitmodule-url-found"]
|
||||
}
|
5
build-aux/fun
Executable file
@ -0,0 +1,5 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
# fun stands for Flatpak Run
|
||||
flatpak-builder --run $(dirname $0)/../flatpak $(dirname $0)/re.sonny.Workbench.Devel.json "$@"
|
||||
# flatpak-builder --env=G_MESSAGES_DEBUG=workbench-cli --run flatpak build-aux/re.sonny.Workbench.Devel.json "$@"
|
250
build-aux/library.js
Executable file
@ -0,0 +1,250 @@
|
||||
#!/usr/bin/env -S gjs -m
|
||||
|
||||
import Gio from "gi://Gio";
|
||||
import GLib from "gi://GLib";
|
||||
import { programArgs, exit } from "system";
|
||||
|
||||
Gio._promisify(
|
||||
Gio.File.prototype,
|
||||
"enumerate_children_async",
|
||||
"enumerate_children_finish",
|
||||
);
|
||||
|
||||
Gio._promisify(
|
||||
Gio.File.prototype,
|
||||
"replace_contents_async",
|
||||
"replace_contents_finish",
|
||||
);
|
||||
|
||||
Gio._promisify(
|
||||
Gio.File.prototype,
|
||||
"make_directory_async",
|
||||
"make_directory_finish",
|
||||
);
|
||||
|
||||
Gio._promisify(Gio.File.prototype, "copy_async", "copy_finish");
|
||||
|
||||
const loop = new GLib.MainLoop(null, false);
|
||||
|
||||
const [pkgdatadir] = programArgs;
|
||||
GLib.mkdir_with_parents(
|
||||
Gio.File.new_for_path(pkgdatadir).get_child("demos").get_path(),
|
||||
0o755,
|
||||
);
|
||||
|
||||
const demos_dir = Gio.File.new_for_path(
|
||||
GLib.getenv("MESON_SOURCE_ROOT"),
|
||||
).get_child("demos/src");
|
||||
const demos = [];
|
||||
|
||||
(async () => {
|
||||
const enumerator = await demos_dir.enumerate_children_async(
|
||||
`${Gio.FILE_ATTRIBUTE_STANDARD_NAME},${Gio.FILE_ATTRIBUTE_STANDARD_IS_HIDDEN}`,
|
||||
Gio.FileQueryInfoFlags.NOFOLLOW_SYMLINKS,
|
||||
GLib.PRIORITY_DEFAULT,
|
||||
null,
|
||||
);
|
||||
for (const file_info of enumerator) {
|
||||
if (file_info.get_is_hidden()) continue;
|
||||
if (file_info.get_file_type() !== Gio.FileType.DIRECTORY) continue;
|
||||
|
||||
const demo_dir = enumerator.get_child(file_info);
|
||||
|
||||
let str;
|
||||
try {
|
||||
str = new TextDecoder().decode(
|
||||
demo_dir.get_child("main.json").load_contents(null)[1],
|
||||
);
|
||||
} catch (err) {
|
||||
console.warn(err);
|
||||
continue;
|
||||
}
|
||||
|
||||
const demo = JSON.parse(str);
|
||||
demo.name = file_info.get_name();
|
||||
|
||||
if (!isDemoCompatible(demo)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
const languages = [];
|
||||
if (demo_dir.get_child("main.js").query_exists(null)) {
|
||||
languages.push("javascript");
|
||||
}
|
||||
if (demo_dir.get_child("main.ts").query_exists(null)) {
|
||||
languages.push("typescript");
|
||||
}
|
||||
if (demo_dir.get_child("main.vala").query_exists(null)) {
|
||||
languages.push("vala");
|
||||
}
|
||||
if (demo_dir.get_child("code.rs").query_exists(null)) {
|
||||
languages.push("rust");
|
||||
}
|
||||
if (demo_dir.get_child("main.py").query_exists(null)) {
|
||||
languages.push("python");
|
||||
}
|
||||
demo.languages = languages;
|
||||
|
||||
await copyDemo(
|
||||
demo_dir,
|
||||
Gio.File.new_for_path(pkgdatadir)
|
||||
.get_child("demos")
|
||||
.get_child(demo_dir.get_basename()),
|
||||
);
|
||||
|
||||
demos.push(demo);
|
||||
}
|
||||
|
||||
demos.sort((a, b) => {
|
||||
if (a.name === "Welcome") return -1;
|
||||
if (b.name === "Welcome") return 1;
|
||||
if (a.name === "Platform Tools") return -1;
|
||||
if (b.name === "Platform Tools") return 1;
|
||||
else return a.name.localeCompare(b.name);
|
||||
});
|
||||
|
||||
await Gio.File.new_for_path(pkgdatadir)
|
||||
.get_child("demos/index.json")
|
||||
.replace_contents_async(
|
||||
new TextEncoder().encode(JSON.stringify(demos)),
|
||||
null,
|
||||
false,
|
||||
Gio.FileCreateFlags.NONE,
|
||||
null,
|
||||
);
|
||||
})()
|
||||
.catch((err) => {
|
||||
loop.quit();
|
||||
console.error(err);
|
||||
exit(1);
|
||||
})
|
||||
.then(() => {
|
||||
loop.quit();
|
||||
});
|
||||
|
||||
async function copyDemo(source, destination) {
|
||||
try {
|
||||
destination.make_directory_with_parents(null);
|
||||
} catch (err) {
|
||||
if (!err.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.EXISTS)) {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
|
||||
const enumerator = await source.enumerate_children_async(
|
||||
`${Gio.FILE_ATTRIBUTE_STANDARD_NAME},${Gio.FILE_ATTRIBUTE_STANDARD_IS_HIDDEN}`,
|
||||
Gio.FileQueryInfoFlags.NOFOLLOW_SYMLINKS,
|
||||
GLib.PRIORITY_DEFAULT,
|
||||
null,
|
||||
);
|
||||
|
||||
for await (const file_info of enumerator) {
|
||||
if (file_info.get_is_hidden()) continue;
|
||||
|
||||
const child = enumerator.get_child(file_info);
|
||||
if (
|
||||
// Sync with demos "make clean" and .gitignore
|
||||
[
|
||||
"Cargo.lock",
|
||||
"Cargo.toml",
|
||||
"lib.rs",
|
||||
"workbench.rs",
|
||||
"workbench.vala",
|
||||
"libworkbenchcode.so",
|
||||
"settings",
|
||||
"main.ui",
|
||||
"icons.gresource",
|
||||
"icons.gresource.xml",
|
||||
].includes(child.get_basename())
|
||||
) {
|
||||
continue;
|
||||
}
|
||||
|
||||
const child_dest = destination.get_child(child.get_basename());
|
||||
|
||||
if (file_info.get_file_type() === Gio.FileType.DIRECTORY) {
|
||||
await copyDirectory(child, child_dest);
|
||||
continue;
|
||||
}
|
||||
|
||||
try {
|
||||
await child.copy_async(
|
||||
child_dest, // destination
|
||||
Gio.FileCopyFlags.NONE, // flags
|
||||
GLib.PRIORITY_DEFAULT, // priority
|
||||
null, // cancellable
|
||||
null, // progress_callback
|
||||
);
|
||||
} catch (err) {
|
||||
if (!err.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.EXISTS)) {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
async function copyDirectory(source, destination) {
|
||||
try {
|
||||
await destination.make_directory_async(GLib.PRIORITY_DEFAULT, null);
|
||||
} catch (err) {
|
||||
if (!err.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.EXISTS)) {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
|
||||
const enumerator = await source.enumerate_children_async(
|
||||
`${Gio.FILE_ATTRIBUTE_STANDARD_NAME},${Gio.FILE_ATTRIBUTE_STANDARD_IS_HIDDEN}`,
|
||||
Gio.FileQueryInfoFlags.NOFOLLOW_SYMLINKS,
|
||||
GLib.PRIORITY_DEFAULT,
|
||||
null,
|
||||
);
|
||||
|
||||
for await (const file_info of enumerator) {
|
||||
if (file_info.get_is_hidden()) continue;
|
||||
|
||||
const child = enumerator.get_child(file_info);
|
||||
const child_dest = destination.get_child(child.get_basename());
|
||||
|
||||
if (file_info.get_file_type() === Gio.FileType.DIRECTORY) {
|
||||
await copyDirectory(child, child_dest);
|
||||
continue;
|
||||
}
|
||||
|
||||
try {
|
||||
await child.copy_async(
|
||||
child_dest, // destination
|
||||
Gio.FileCopyFlags.NONE, // flags
|
||||
GLib.PRIORITY_DEFAULT, // priority
|
||||
null, // cancellable
|
||||
null, // progress_callback
|
||||
);
|
||||
} catch (err) {
|
||||
if (!err.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.EXISTS)) {
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const key_file = new GLib.KeyFile();
|
||||
key_file.load_from_file("/.flatpak-info", GLib.KeyFileFlags.NONE);
|
||||
// runtime/org.gnome.Sdk/x86_64/master
|
||||
const [, , , runtime_version] = key_file
|
||||
.get_string("Application", "runtime")
|
||||
.split("/");
|
||||
|
||||
function isDemoCompatible(demo) {
|
||||
const demo_runtime_version = demo["runtime-version"];
|
||||
|
||||
if (demo_runtime_version === "master") {
|
||||
return runtime_version === "master";
|
||||
} else if (runtime_version === "master") {
|
||||
return true;
|
||||
} else if (!demo_runtime_version) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return +runtime_version >= +demo_runtime_version;
|
||||
}
|
||||
|
||||
loop.run();
|
30
build-aux/modules/GTKCssLanguageServer.json
Normal file
@ -0,0 +1,30 @@
|
||||
{
|
||||
"name": "GTKCssLanguageServer",
|
||||
"config-opts": ["--buildtype=release"],
|
||||
"buildsystem": "meson",
|
||||
"sources": [
|
||||
{
|
||||
"type": "git",
|
||||
"url": "https://github.com/JCWasmx86/GTKCssLanguageServer",
|
||||
"commit": "dcbe75012d2d26fbca2729cee014e4860e31fa53"
|
||||
}
|
||||
],
|
||||
"modules": [
|
||||
{
|
||||
"name": "jsonrpc-glib",
|
||||
"config-opts": [
|
||||
"--libdir=/app/lib",
|
||||
"--buildtype=release",
|
||||
"-Denable_tests=false"
|
||||
],
|
||||
"buildsystem": "meson",
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://download.gnome.org/sources/jsonrpc-glib/3.44/jsonrpc-glib-3.44.1.tar.xz",
|
||||
"sha256": "1361d17e9c805646afe5102e59baf8ca450238600fcabd01586c654b78bb30df"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
21
build-aux/modules/biome.json
Normal file
@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "biome",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": ["chmod +x biome", "cp biome /app/bin/biome"],
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"dest-filename": "biome",
|
||||
"only-arches": ["aarch64"],
|
||||
"url": "https://github.com/biomejs/biome/releases/download/cli%2Fv1.9.4/biome-linux-arm64",
|
||||
"sha256": "f0f0f3e7cdec78420a600b05bfc364aa9b804811bd3bbae04e7bf090828ae970"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"dest-filename": "biome",
|
||||
"only-arches": ["x86_64"],
|
||||
"url": "https://github.com/biomejs/biome/releases/download/cli%2Fv1.9.4/biome-linux-x64",
|
||||
"sha256": "ce247fb644999ef52e5111dd6fd6e471019669fc9c4a44b5699721e39b7032c3"
|
||||
}
|
||||
]
|
||||
}
|
10
build-aux/modules/blueprint-compiler.json
Normal file
@ -0,0 +1,10 @@
|
||||
{
|
||||
"name": "blueprint-compiler",
|
||||
"buildsystem": "meson",
|
||||
"sources": [
|
||||
{
|
||||
"type": "dir",
|
||||
"path": "../../blueprint-compiler"
|
||||
}
|
||||
]
|
||||
}
|
12
build-aux/modules/gom.json
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
"name": "gom",
|
||||
"buildsystem": "meson",
|
||||
"config-opts": ["--libdir=/app/lib", "-Denable-gtk-doc=false"],
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://download.gnome.org/sources/gom/0.5/gom-0.5.3.tar.xz",
|
||||
"sha256": "069d0909fbdc6b4d27edf7a879366194e3ab508b03548bf5b89ff63546d20177"
|
||||
}
|
||||
]
|
||||
}
|
19
build-aux/modules/libportal.json
Normal file
@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "libportal",
|
||||
"buildsystem": "meson",
|
||||
"config-opts": [
|
||||
"--libdir=/app/lib",
|
||||
"-Dtests=false",
|
||||
"-Dbackend-gtk3=disabled",
|
||||
"-Dbackend-gtk4=enabled",
|
||||
"-Dbackend-qt5=disabled",
|
||||
"-Ddocs=false"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://github.com/flatpak/libportal/releases/download/0.9.1/libportal-0.9.1.tar.xz",
|
||||
"sha256": "de801ee349ed3c255a9af3c01b1a401fab5b3fc1c35eb2fd7dfb35d4b8194d7f"
|
||||
}
|
||||
]
|
||||
}
|
38
build-aux/modules/libshumate.json
Normal file
@ -0,0 +1,38 @@
|
||||
{
|
||||
"name": "libshumate",
|
||||
"buildsystem": "meson",
|
||||
"config-opts": ["--libdir=/app/lib", "-Ddemos=false", "-Dgtk_doc=false"],
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://download.gnome.org/sources/libshumate/1.4/libshumate-1.4.rc.tar.xz",
|
||||
"sha256": "a57b97dbbda55bcb07c6f0197ff006128518c2b2c88fbee8bea5168acbc9baee"
|
||||
}
|
||||
],
|
||||
"modules": [
|
||||
{
|
||||
"name": "protobuf",
|
||||
"buildsystem": "autotools",
|
||||
"config-opts": ["DIST_LANG=cpp"],
|
||||
"cleanup": ["/bin/protoc*", "/lib/libprotoc*", "/lib/libprotobuf-lite*"],
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v3.17.3/protobuf-all-3.17.3.tar.gz",
|
||||
"sha256": "77ad26d3f65222fd96ccc18b055632b0bfedf295cb748b712a98ba1ac0b704b2"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "protobuf-c",
|
||||
"buildsystem": "autotools",
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://github.com/protobuf-c/protobuf-c/releases/download/v1.4.0/protobuf-c-1.4.0.tar.gz",
|
||||
"sha256": "26d98ee9bf18a6eba0d3f855ddec31dbe857667d269bc0b6017335572f85bbcb"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
12
build-aux/modules/libspelling.json
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
"name": "libspelling",
|
||||
"buildsystem": "meson",
|
||||
"config-opts": ["--libdir=/app/lib", "-Ddocs=false"],
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://download.gnome.org/sources/libspelling/0.4/libspelling-0.4.6.tar.xz",
|
||||
"sha256": "3248a9b5336ea2f727d2db912d2f0083accc0505ce707679b3d9b8266c0101f5"
|
||||
}
|
||||
]
|
||||
}
|
64
build-aux/modules/python-python-lsp-ruff.json
Normal file
@ -0,0 +1,64 @@
|
||||
{
|
||||
"name": "python3-python-lsp-ruff",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": [
|
||||
"pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"python-lsp-ruff\""
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/e1/c7/247d04257d391251f32a7179cb74b418954022f1e9e276b5933e6ac1d3b1/python_lsp_ruff-2.2.0-py3-none-any.whl",
|
||||
"sha256": "fe0487c7997b38a59862c44e19cb815e24bb1b2f7cef4f1f32c61cf623a5ce94"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/b3/0d/cd4a4071c7f38385dc5ba91286723b4d1090b87815db48216212c6c6c30e/cattrs-23.2.3-py3-none-any.whl",
|
||||
"sha256": "0341994d94971052e9ee70662542699a3162ea1e0c62f7ce1b4a57f563685108"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/8d/37/2351e48cb3309673492d3a8c59d407b75fb6630e560eb27ecd4da03adc9a/lsprotocol-2023.0.1-py3-none-any.whl",
|
||||
"sha256": "c75223c9e4af2f24272b14c6375787438279369236cd568f596d4951052a60f2"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/91/f7/3b9c3a588e46bbdc2671d8fd07ecee118a672db50d72656b5726fbeffbcd/python_lsp_server-1.10.0-py3-none-any.whl",
|
||||
"sha256": "1a9f338bd7cf3cdde5ae85a2bd93fd5be9e55249f6482d88f99fb6227215424a"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/e0/44/827b2a91a5816512fcaf3cc4ebc465ccd5d598c45cefa6703fcf4a79018f/attrs-23.2.0-py3-none-any.whl",
|
||||
"sha256": "99b87a485a5820b23b879f04c2305b44b951b502fd64be915879d77a7e8fc6f1"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/20/9f/bc63f0f0737ad7a60800bfd472a4836661adae21f9c2535f3957b1e54ceb/jedi-0.19.1-py2.py3-none-any.whl",
|
||||
"sha256": "e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/a5/5b/0cc789b59e8cc1bf288b38111d002d8c5917123194d45b29dcdac64723cc/pluggy-1.4.0-py3-none-any.whl",
|
||||
"sha256": "7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl",
|
||||
"sha256": "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/6e/54/6f2bdac7117e89a47de4511c9f01732a283457ab1bf856e1e51aa861619e/ujson-5.9.0.tar.gz",
|
||||
"sha256": "89cc92e73d5501b8a7f48575eeb14ad27156ad092c2e9fc7e3cf949f07e75532"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/c1/cf/4eee59f6c4111b3e80cc32cf6bac483a90646f5c8693e84496c9855e8e38/docstring_to_markdown-0.15-py3-none-any.whl",
|
||||
"sha256": "27afb3faedba81e34c33521c32bbd258d7fbb79eedf7d29bc4e81080e854aec0"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/05/63/8011bd08a4111858f79d2b09aad86638490d62fbf881c44e434a6dfca87b/parso-0.8.3-py2.py3-none-any.whl",
|
||||
"sha256": "c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"
|
||||
}
|
||||
]
|
||||
}
|
69
build-aux/modules/python-python-lsp-server.json
Normal file
@ -0,0 +1,69 @@
|
||||
{
|
||||
"name": "python3-python-lsp-server",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": [
|
||||
"pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"python-lsp-server\""
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/be/4f/1b6eb5a6d92ae52f3798e9fdffd225f1bcd017172bb732743315390a9025/docstring_to_markdown-0.13-py3-none-any.whl",
|
||||
"sha256": "aa487059d0883e70e54da25c7b230e918d9e4d40f23d6dfaa2b73e4225b2d7dd"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/20/9f/bc63f0f0737ad7a60800bfd472a4836661adae21f9c2535f3957b1e54ceb/jedi-0.19.1-py2.py3-none-any.whl",
|
||||
"sha256": "e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/05/63/8011bd08a4111858f79d2b09aad86638490d62fbf881c44e434a6dfca87b/parso-0.8.3-py2.py3-none-any.whl",
|
||||
"sha256": "c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/05/b8/42ed91898d4784546c5f06c60506400548db3f7a4b3fb441cba4e5c17952/pluggy-1.3.0-py3-none-any.whl",
|
||||
"sha256": "d89c696a773f8bd377d18e5ecda92b7a3793cbe66c87060a6fb58c7b6e1061f7"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/cb/d9/656659d5b5d5f402b2b174cd0ba9bc827e07ce3c0bf88da65424baf64af8/python_lsp_jsonrpc-1.1.2-py3-none-any.whl",
|
||||
"sha256": "7339c2e9630ae98903fdaea1ace8c47fba0484983794d6aafd0bd8989be2b03c"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/83/49/355783384945708c604f4ad4c773d4ec93bc609b691698e5d8ecfc51d01c/python_lsp_server-1.9.0-py3-none-any.whl",
|
||||
"sha256": "6b947cf9dc33d7bed9abc936bb173140fcf606b6eb50cf02e27d4cb09f10d3fb"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/6e/54/6f2bdac7117e89a47de4511c9f01732a283457ab1bf856e1e51aa861619e/ujson-5.9.0.tar.gz",
|
||||
"sha256": "89cc92e73d5501b8a7f48575eeb14ad27156ad092c2e9fc7e3cf949f07e75532"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/ec/1a/610693ac4ee14fcdf2d9bf3c493370e4f2ef7ae2e19217d7a237ff42367d/packaging-23.2-py3-none-any.whl",
|
||||
"sha256": "8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/0e/a3/b9a8b0adfe672bf0df5901707aa929d30a97ee390ba651910186776746d2/setuptools_scm-8.0.4-py3-none-any.whl",
|
||||
"sha256": "b47844cd2a84b83b3187a5782c71128c28b4c94cad8bfb871da2784a5cb54c4f"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/b7/f4/6a90020cd2d93349b442bfcb657d0dc91eee65491600b2cb1d388bc98e6b/typing_extensions-4.9.0-py3-none-any.whl",
|
||||
"sha256": "af72aea155e91adfc61c3ae9e0e342dbc0cba726d6cba4b6c72c1f34e47291cd"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/bb/e1/ed2dd0850446b8697ad28d118df885ad04140c64ace06c4bd559f7c8a94f/setuptools-69.0.2-py3-none-any.whl",
|
||||
"sha256": "1e8fdff6797d3865f37397be788a4e3cba233608e9b509382a2777d25ebde7f2"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/c7/c3/55076fc728723ef927521abaa1955213d094933dc36d4a2008d5101e1af5/wheel-0.42.0-py3-none-any.whl",
|
||||
"sha256": "177f9c9b0d45c47873b619f5b650346d632cdc35fb5e4d25058e09c9e581433d"
|
||||
}
|
||||
]
|
||||
}
|
48
build-aux/modules/python-ruff.json
Normal file
@ -0,0 +1,48 @@
|
||||
{
|
||||
"name": "python3-ruff",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": [
|
||||
". /usr/lib/sdk/rust-stable/enable.sh && pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"ruff\""
|
||||
],
|
||||
"build-options": {
|
||||
"env": {
|
||||
"CARGO_HOME": "/run/build/python3-ruff/cargo",
|
||||
"CARGO_NET_OFFLINE": "true"
|
||||
}
|
||||
},
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/20/90/43a3aa35f037e91582ec7516a92084a71f84e89e39ef580813bed072b154/maturin-1.4.0.tar.gz",
|
||||
"sha256": "ed12e1768094a7adeafc3a74ebdb8dc2201fa64c4e7e31f14cfc70378bf93790"
|
||||
},
|
||||
"sources/cargo-sources-maturin.json",
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/ef/cc/93f7213b2ab5ed383f98ce8020e632ef256b406b8569606c3f160ed8e1c9/setuptools-68.2.2.tar.gz",
|
||||
"sha256": "4ac1475276d2f1c48684874089fefcd83bd7162ddaafb81fac866ba0db282a87"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/c7/c3/55076fc728723ef927521abaa1955213d094933dc36d4a2008d5101e1af5/wheel-0.42.0-py3-none-any.whl",
|
||||
"sha256": "177f9c9b0d45c47873b619f5b650346d632cdc35fb5e4d25058e09c9e581433d"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/f7/7f/8b1c33598b03ad612b8ced223f9ca54076b789fabf5a66ce37cc096d9cf7/setuptools_rust-1.9.0-py3-none-any.whl",
|
||||
"sha256": "409caf49dcf7ad9bd510b4bf4011fbad504e745fae98f57fe1c06f3a97719638"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/6a/23/8146aad7d88f4fcb3a6218f41a60f6c2d4e3a72de72da1825dc7c8f7877c/semantic_version-2.10.0-py2.py3-none-any.whl",
|
||||
"sha256": "de78a3b8e0feda74cabc54aab2da702113e33ac9d9eb9d2389bcf1f58b7d9177"
|
||||
},
|
||||
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/61/b0/5fb64bc79464823ca94e566c9000143ddc11f9396c6e20202315059dd64f/ruff-0.3.0.tar.gz",
|
||||
"sha256": "0886184ba2618d815067cf43e005388967b67ab9c80df52b32ec1152ab49f53a"
|
||||
},
|
||||
"sources/cargo-sources-ruff.json"
|
||||
]
|
||||
}
|
3986
build-aux/modules/sources/cargo-sources-maturin.json
Normal file
4584
build-aux/modules/sources/cargo-sources-ruff.json
Normal file
32
build-aux/modules/vte.json
Normal file
@ -0,0 +1,32 @@
|
||||
{
|
||||
"name": "vte",
|
||||
"buildsystem": "meson",
|
||||
"config-opts": [
|
||||
"--libdir=/app/lib",
|
||||
"-Ddocs=false",
|
||||
"-Dgtk3=false",
|
||||
"-Dgtk4=true",
|
||||
"-Dvapi=true",
|
||||
"-Dglade=false"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://download.gnome.org/sources/vte/0.79/vte-0.79.91.tar.xz",
|
||||
"sha256": "adca667d40ae1839ba258b63701cd05fba249303d72258711cc69294b2cb8646"
|
||||
}
|
||||
],
|
||||
"modules": [
|
||||
{
|
||||
"name": "fast_float",
|
||||
"buildsystem": "cmake-ninja",
|
||||
"sources": [
|
||||
{
|
||||
"type": "archive",
|
||||
"url": "https://github.com/fastfloat/fast_float/archive/refs/tags/v6.1.6.tar.gz",
|
||||
"sha256": "4458aae4b0eb55717968edda42987cabf5f7fc737aee8fede87a70035dba9ab0"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
62
build-aux/re.sonny.Workbench.Devel.json
Normal file
@ -0,0 +1,62 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/flatpak/flatpak-builder/main/data/flatpak-manifest.schema.json",
|
||||
"id": "re.sonny.Workbench.Devel",
|
||||
"runtime": "org.gnome.Sdk",
|
||||
"runtime-version": "48",
|
||||
"sdk": "org.gnome.Sdk",
|
||||
"sdk-extensions": [
|
||||
"org.freedesktop.Sdk.Extension.vala",
|
||||
"org.freedesktop.Sdk.Extension.rust-stable",
|
||||
"org.freedesktop.Sdk.Extension.llvm18",
|
||||
"org.freedesktop.Sdk.Extension.node20",
|
||||
"org.freedesktop.Sdk.Extension.typescript"
|
||||
],
|
||||
"build-options": {
|
||||
"append-path": "/usr/lib/sdk/vala/bin:/usr/lib/sdk/rust-stable/bin:/usr/lib/sdk/node20/bin:/usr/lib/sdk/typescript/bin",
|
||||
"append-ld-library-path": "/usr/lib/sdk/vala/lib"
|
||||
},
|
||||
"command": "workbench",
|
||||
"separate-locales": false,
|
||||
"finish-args": [
|
||||
"--share=ipc",
|
||||
"--socket=fallback-x11",
|
||||
"--socket=wayland",
|
||||
"--device=dri"
|
||||
],
|
||||
"cleanup": [
|
||||
"#/include",
|
||||
"#/lib/pkgconfig",
|
||||
"/man",
|
||||
"/share/doc",
|
||||
"/share/gtk-doc",
|
||||
"/share/man",
|
||||
"#/share/pkgconfig",
|
||||
"/share/installed-tests",
|
||||
"*.la",
|
||||
"*.a"
|
||||
],
|
||||
"modules": [
|
||||
"modules/blueprint-compiler.json",
|
||||
"modules/biome.json",
|
||||
"modules/vte.json",
|
||||
"modules/libshumate.json",
|
||||
"modules/libportal.json",
|
||||
"modules/libspelling.json",
|
||||
"modules/gom.json",
|
||||
"modules/GTKCssLanguageServer.json",
|
||||
"modules/python-python-lsp-server.json",
|
||||
"modules/python-ruff.json",
|
||||
"modules/python-python-lsp-ruff.json",
|
||||
{
|
||||
"name": "Workbench",
|
||||
"buildsystem": "meson",
|
||||
"config-opts": ["-Dprofile=development"],
|
||||
"sources": [
|
||||
{
|
||||
"type": "dir",
|
||||
"path": ".."
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
62
build-aux/re.sonny.Workbench.json
Normal file
@ -0,0 +1,62 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/flatpak/flatpak-builder/main/data/flatpak-manifest.schema.json",
|
||||
"id": "re.sonny.Workbench",
|
||||
"runtime": "org.gnome.Sdk",
|
||||
"runtime-version": "48",
|
||||
"sdk": "org.gnome.Sdk",
|
||||
"sdk-extensions": [
|
||||
"org.freedesktop.Sdk.Extension.vala",
|
||||
"org.freedesktop.Sdk.Extension.rust-stable",
|
||||
"org.freedesktop.Sdk.Extension.llvm18",
|
||||
"org.freedesktop.Sdk.Extension.node20",
|
||||
"org.freedesktop.Sdk.Extension.typescript"
|
||||
],
|
||||
"build-options": {
|
||||
"append-path": "/usr/lib/sdk/vala/bin:/usr/lib/sdk/rust-stable/bin:/usr/lib/sdk/node20/bin:/usr/lib/sdk/typescript/bin",
|
||||
"append-ld-library-path": "/usr/lib/sdk/vala/lib"
|
||||
},
|
||||
"command": "workbench",
|
||||
"separate-locales": false,
|
||||
"finish-args": [
|
||||
"--share=ipc",
|
||||
"--socket=fallback-x11",
|
||||
"--socket=wayland",
|
||||
"--device=dri"
|
||||
],
|
||||
"cleanup": [
|
||||
"#/include",
|
||||
"#/lib/pkgconfig",
|
||||
"/man",
|
||||
"/share/doc",
|
||||
"/share/gtk-doc",
|
||||
"/share/man",
|
||||
"#/share/pkgconfig",
|
||||
"/share/installed-tests",
|
||||
"*.la",
|
||||
"*.a"
|
||||
],
|
||||
"modules": [
|
||||
"modules/blueprint-compiler.json",
|
||||
"modules/biome.json",
|
||||
"modules/vte.json",
|
||||
"modules/libshumate.json",
|
||||
"modules/libportal.json",
|
||||
"modules/libspelling.json",
|
||||
"modules/gom.json",
|
||||
"modules/GTKCssLanguageServer.json",
|
||||
"modules/python-python-lsp-server.json",
|
||||
"modules/python-ruff.json",
|
||||
"modules/python-python-lsp-ruff.json",
|
||||
{
|
||||
"name": "Workbench",
|
||||
"buildsystem": "meson",
|
||||
"config-opts": ["-Dprofile=default"],
|
||||
"sources": [
|
||||
{
|
||||
"type": "dir",
|
||||
"path": ".."
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
308
build-aux/wip/minimist.js
Normal file
@ -0,0 +1,308 @@
|
||||
/* eslint-disable */
|
||||
|
||||
// https://github.com/minimistjs/minimist/blob/bedaa8b9ab5a901fa342aad4494cbbf676b11a21/index.js
|
||||
|
||||
function hasKey(obj, keys) {
|
||||
var o = obj;
|
||||
keys.slice(0, -1).forEach(function (key) {
|
||||
o = o[key] || {};
|
||||
});
|
||||
|
||||
var key = keys[keys.length - 1];
|
||||
return key in o;
|
||||
}
|
||||
|
||||
function isNumber(x) {
|
||||
if (typeof x === "number") {
|
||||
return true;
|
||||
}
|
||||
if (/^0x[0-9a-f]+$/i.test(x)) {
|
||||
return true;
|
||||
}
|
||||
return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
|
||||
}
|
||||
|
||||
function isConstructorOrProto(obj, key) {
|
||||
return (
|
||||
(key === "constructor" && typeof obj[key] === "function") ||
|
||||
key === "__proto__"
|
||||
);
|
||||
}
|
||||
|
||||
export default function minimist(args, opts) {
|
||||
if (!opts) {
|
||||
opts = {};
|
||||
}
|
||||
|
||||
var flags = {
|
||||
bools: {},
|
||||
strings: {},
|
||||
unknownFn: null,
|
||||
};
|
||||
|
||||
if (typeof opts.unknown === "function") {
|
||||
flags.unknownFn = opts.unknown;
|
||||
}
|
||||
|
||||
if (typeof opts.boolean === "boolean" && opts.boolean) {
|
||||
flags.allBools = true;
|
||||
} else {
|
||||
[]
|
||||
.concat(opts.boolean)
|
||||
.filter(Boolean)
|
||||
.forEach(function (key) {
|
||||
flags.bools[key] = true;
|
||||
});
|
||||
}
|
||||
|
||||
var aliases = {};
|
||||
|
||||
function isBooleanKey(key) {
|
||||
if (flags.bools[key]) {
|
||||
return true;
|
||||
}
|
||||
if (!aliases[key]) {
|
||||
return false;
|
||||
}
|
||||
return aliases[key].some(function (x) {
|
||||
return flags.bools[x];
|
||||
});
|
||||
}
|
||||
|
||||
Object.keys(opts.alias || {}).forEach(function (key) {
|
||||
aliases[key] = [].concat(opts.alias[key]);
|
||||
aliases[key].forEach(function (x) {
|
||||
aliases[x] = [key].concat(
|
||||
aliases[key].filter(function (y) {
|
||||
return x !== y;
|
||||
}),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
[]
|
||||
.concat(opts.string)
|
||||
.filter(Boolean)
|
||||
.forEach(function (key) {
|
||||
flags.strings[key] = true;
|
||||
if (aliases[key]) {
|
||||
[].concat(aliases[key]).forEach(function (k) {
|
||||
flags.strings[k] = true;
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
var defaults = opts.default || {};
|
||||
|
||||
var argv = { _: [] };
|
||||
|
||||
function argDefined(key, arg) {
|
||||
return (
|
||||
(flags.allBools && /^--[^=]+$/.test(arg)) ||
|
||||
flags.strings[key] ||
|
||||
flags.bools[key] ||
|
||||
aliases[key]
|
||||
);
|
||||
}
|
||||
|
||||
function setKey(obj, keys, value) {
|
||||
var o = obj;
|
||||
for (var i = 0; i < keys.length - 1; i++) {
|
||||
var key = keys[i];
|
||||
if (isConstructorOrProto(o, key)) {
|
||||
return;
|
||||
}
|
||||
if (o[key] === undefined) {
|
||||
o[key] = {};
|
||||
}
|
||||
if (
|
||||
o[key] === Object.prototype ||
|
||||
o[key] === Number.prototype ||
|
||||
o[key] === String.prototype
|
||||
) {
|
||||
o[key] = {};
|
||||
}
|
||||
if (o[key] === Array.prototype) {
|
||||
o[key] = [];
|
||||
}
|
||||
o = o[key];
|
||||
}
|
||||
|
||||
var lastKey = keys[keys.length - 1];
|
||||
if (isConstructorOrProto(o, lastKey)) {
|
||||
return;
|
||||
}
|
||||
if (
|
||||
o === Object.prototype ||
|
||||
o === Number.prototype ||
|
||||
o === String.prototype
|
||||
) {
|
||||
o = {};
|
||||
}
|
||||
if (o === Array.prototype) {
|
||||
o = [];
|
||||
}
|
||||
if (
|
||||
o[lastKey] === undefined ||
|
||||
isBooleanKey(lastKey) ||
|
||||
typeof o[lastKey] === "boolean"
|
||||
) {
|
||||
o[lastKey] = value;
|
||||
} else if (Array.isArray(o[lastKey])) {
|
||||
o[lastKey].push(value);
|
||||
} else {
|
||||
o[lastKey] = [o[lastKey], value];
|
||||
}
|
||||
}
|
||||
|
||||
function setArg(key, val, arg) {
|
||||
if (arg && flags.unknownFn && !argDefined(key, arg)) {
|
||||
if (flags.unknownFn(arg) === false) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
var value = !flags.strings[key] && isNumber(val) ? Number(val) : val;
|
||||
setKey(argv, key.split("."), value);
|
||||
|
||||
(aliases[key] || []).forEach(function (x) {
|
||||
setKey(argv, x.split("."), value);
|
||||
});
|
||||
}
|
||||
|
||||
// Set booleans to false by default.
|
||||
Object.keys(flags.bools).forEach(function (key) {
|
||||
setArg(key, false);
|
||||
});
|
||||
// Set booleans to user defined default if supplied.
|
||||
Object.keys(defaults)
|
||||
.filter(isBooleanKey)
|
||||
.forEach(function (key) {
|
||||
setArg(key, defaults[key]);
|
||||
});
|
||||
var notFlags = [];
|
||||
|
||||
if (args.indexOf("--") !== -1) {
|
||||
notFlags = args.slice(args.indexOf("--") + 1);
|
||||
args = args.slice(0, args.indexOf("--"));
|
||||
}
|
||||
|
||||
for (var i = 0; i < args.length; i++) {
|
||||
var arg = args[i];
|
||||
var key;
|
||||
var next;
|
||||
|
||||
if (/^--.+=/.test(arg)) {
|
||||
// Using [\s\S] instead of . because js doesn't support the
|
||||
// 'dotall' regex modifier. See:
|
||||
// http://stackoverflow.com/a/1068308/13216
|
||||
var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
|
||||
key = m[1];
|
||||
var value = m[2];
|
||||
if (isBooleanKey(key)) {
|
||||
value = value !== "false";
|
||||
}
|
||||
setArg(key, value, arg);
|
||||
} else if (/^--no-.+/.test(arg)) {
|
||||
key = arg.match(/^--no-(.+)/)[1];
|
||||
setArg(key, false, arg);
|
||||
} else if (/^--.+/.test(arg)) {
|
||||
key = arg.match(/^--(.+)/)[1];
|
||||
next = args[i + 1];
|
||||
if (
|
||||
next !== undefined &&
|
||||
!/^(-|--)[^-]/.test(next) &&
|
||||
!isBooleanKey(key) &&
|
||||
!flags.allBools
|
||||
) {
|
||||
setArg(key, next, arg);
|
||||
i += 1;
|
||||
} else if (/^(true|false)$/.test(next)) {
|
||||
setArg(key, next === "true", arg);
|
||||
i += 1;
|
||||
} else {
|
||||
setArg(key, flags.strings[key] ? "" : true, arg);
|
||||
}
|
||||
} else if (/^-[^-]+/.test(arg)) {
|
||||
var letters = arg.slice(1, -1).split("");
|
||||
|
||||
var broken = false;
|
||||
for (var j = 0; j < letters.length; j++) {
|
||||
next = arg.slice(j + 2);
|
||||
|
||||
if (next === "-") {
|
||||
setArg(letters[j], next, arg);
|
||||
continue;
|
||||
}
|
||||
|
||||
if (/[A-Za-z]/.test(letters[j]) && next[0] === "=") {
|
||||
setArg(letters[j], next.slice(1), arg);
|
||||
broken = true;
|
||||
break;
|
||||
}
|
||||
|
||||
if (
|
||||
/[A-Za-z]/.test(letters[j]) &&
|
||||
/-?\d+(\.\d*)?(e-?\d+)?$/.test(next)
|
||||
) {
|
||||
setArg(letters[j], next, arg);
|
||||
broken = true;
|
||||
break;
|
||||
}
|
||||
|
||||
if (letters[j + 1] && letters[j + 1].match(/\W/)) {
|
||||
setArg(letters[j], arg.slice(j + 2), arg);
|
||||
broken = true;
|
||||
break;
|
||||
} else {
|
||||
setArg(letters[j], flags.strings[letters[j]] ? "" : true, arg);
|
||||
}
|
||||
}
|
||||
|
||||
key = arg.slice(-1)[0];
|
||||
if (!broken && key !== "-") {
|
||||
if (
|
||||
args[i + 1] &&
|
||||
!/^(-|--)[^-]/.test(args[i + 1]) &&
|
||||
!isBooleanKey(key)
|
||||
) {
|
||||
setArg(key, args[i + 1], arg);
|
||||
i += 1;
|
||||
} else if (args[i + 1] && /^(true|false)$/.test(args[i + 1])) {
|
||||
setArg(key, args[i + 1] === "true", arg);
|
||||
i += 1;
|
||||
} else {
|
||||
setArg(key, flags.strings[key] ? "" : true, arg);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
|
||||
argv._.push(flags.strings._ || !isNumber(arg) ? arg : Number(arg));
|
||||
}
|
||||
if (opts.stopEarly) {
|
||||
argv._.push.apply(argv._, args.slice(i + 1));
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Object.keys(defaults).forEach(function (k) {
|
||||
if (!hasKey(argv, k.split("."))) {
|
||||
setKey(argv, k.split("."), defaults[k]);
|
||||
|
||||
(aliases[k] || []).forEach(function (x) {
|
||||
setKey(argv, x.split("."), defaults[k]);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
if (opts["--"]) {
|
||||
argv["--"] = notFlags.slice();
|
||||
} else {
|
||||
notFlags.forEach(function (k) {
|
||||
argv._.push(k);
|
||||
});
|
||||
}
|
||||
|
||||
return argv;
|
||||
}
|
264
build-aux/wip/run.js
Executable file
@ -0,0 +1,264 @@
|
||||
#!/usr/bin/env -S gjs -m
|
||||
|
||||
import Gio from "gi://Gio";
|
||||
import { exit, programArgs, programInvocationName } from "system";
|
||||
import GLib from "gi://GLib";
|
||||
import minimist from "./minimist.js";
|
||||
|
||||
// export G_MESSAGES_DEBUG=Gjs-Console && ./run.js
|
||||
|
||||
Gio._promisify(
|
||||
Gio.File.prototype,
|
||||
"load_contents_async",
|
||||
"load_contents_finish",
|
||||
);
|
||||
|
||||
Gio._promisify(
|
||||
Gio.Subprocess.prototype,
|
||||
"wait_check_async",
|
||||
"wait_check_finish",
|
||||
);
|
||||
|
||||
const path = GLib.get_current_dir();
|
||||
console.debug(programInvocationName, programArgs);
|
||||
const argv = minimist(programArgs, { boolean: true, "--": true });
|
||||
console.debug(argv);
|
||||
|
||||
const [manifest_path] = argv._;
|
||||
if (!manifest_path) {
|
||||
// eslint-disable-next-line no-restricted-globals
|
||||
print(`${programInvocationName} [--verbose] [--debug] MANIFEST [-- command]`);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
const home = GLib.get_home_dir();
|
||||
|
||||
const manifest_file = Gio.File.new_for_path(manifest_path);
|
||||
const [contents] = await manifest_file.load_contents_async(null);
|
||||
const manifest = JSON.parse(new TextDecoder().decode(contents));
|
||||
|
||||
// console.log(JSON.parse(manifest));
|
||||
|
||||
const flatpak_id = manifest.id;
|
||||
// We assume the last module is the app itself
|
||||
const app_module = manifest.modules.at(-1);
|
||||
|
||||
function exists(path) {
|
||||
const result = Gio.File.new_for_path(path).query_exists(null);
|
||||
console.debug(`${path} ${result ? "exists" : "non existant"}`);
|
||||
return result;
|
||||
}
|
||||
|
||||
if (!exists(`${path}/.flatpak/repo`)) {
|
||||
const { runtime, sdk } = manifest;
|
||||
const runtime_version = manifest["runtime-version"];
|
||||
// initializes repo
|
||||
await run([
|
||||
"flatpak",
|
||||
"build-init",
|
||||
`${path}/.flatpak/repo`,
|
||||
flatpak_id,
|
||||
sdk,
|
||||
runtime,
|
||||
runtime_version,
|
||||
]);
|
||||
}
|
||||
|
||||
const prefix = [
|
||||
"flatpak-builder",
|
||||
"--ccache",
|
||||
"--force-clean",
|
||||
"--disable-updates",
|
||||
];
|
||||
const suffix = [
|
||||
`--state-dir=${path}/.flatpak/flatpak-builder`,
|
||||
`--stop-at=${app_module.name}`,
|
||||
`${path}/.flatpak/repo`,
|
||||
Gio.File.new_for_path(path).get_relative_path(manifest_file),
|
||||
];
|
||||
|
||||
// de-initializes
|
||||
async function downloadSources() {
|
||||
await run([...prefix, "--download-only", ...suffix]);
|
||||
}
|
||||
|
||||
// de-initializes
|
||||
async function buildModules() {
|
||||
await run([
|
||||
...prefix,
|
||||
"--disable-download",
|
||||
"--build-only",
|
||||
"--keep-build-dirs",
|
||||
...suffix,
|
||||
]);
|
||||
}
|
||||
|
||||
if (!exists(`${path}/.flatpak/flatpak-builder`)) {
|
||||
await downloadSources();
|
||||
await buildModules();
|
||||
}
|
||||
|
||||
// builds workbench
|
||||
if (!exists(`${path}/_build`)) {
|
||||
await buildModules();
|
||||
await buildCommand([
|
||||
"meson",
|
||||
"--prefix",
|
||||
"/app",
|
||||
"_build",
|
||||
"-Dprofile=development",
|
||||
]);
|
||||
}
|
||||
|
||||
await buildCommand(["meson", "install", "-C", "_build"]);
|
||||
// await buildCommand([
|
||||
// `troll/gjspack/bin/gjspack`,
|
||||
// `--appid=${flatpak_id}`,
|
||||
// "--prefix=/re/sonny/Workbench",
|
||||
// `--project-root=.`,
|
||||
// `--resource-root=./src`,
|
||||
// "--blueprint-compiler=/app/bin/blueprint-compiler",
|
||||
// "--no-executable",
|
||||
// `${path}/src/main.js`,
|
||||
// `/app/share/${flatpak_id}.src.gresource`,
|
||||
// ]);
|
||||
|
||||
// starts workbench
|
||||
const command = argv["--"].length ? argv["--"] : [manifest.command];
|
||||
await runCommand(command);
|
||||
|
||||
function buildCommand(argv) {
|
||||
let PATH =
|
||||
"/app/bin:/app/bin:/app/bin:/usr/bin:${home}/.var/app/com.visualstudio.code/data/node_modules/bin:/app/bin:/usr/bin";
|
||||
const append_path = manifest["build-options"]?.["append-path"];
|
||||
if (append_path) PATH += `:${append_path}`;
|
||||
|
||||
let LD_LIBRARY_PATH = "/app/lib:/app/lib";
|
||||
const append_ld_library_path =
|
||||
manifest["build-options"]?.["append-ls-library-path"];
|
||||
if (append_ld_library_path) LD_LIBRARY_PATH += `:${append_ld_library_path}`;
|
||||
|
||||
const PKG_CONFIG_PATH =
|
||||
"/usr/local/lib64/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig:/app/lib/pkgconfig:/app/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig";
|
||||
|
||||
return run([
|
||||
"flatpak",
|
||||
"build",
|
||||
"--share=network",
|
||||
`--filesystem=${path}`,
|
||||
`--filesystem=${path}/.flatpak/repo`,
|
||||
`--env=PATH=${PATH}`,
|
||||
`--env=LD_LIBRARY_PATH=${LD_LIBRARY_PATH}`,
|
||||
`--env=PKG_CONFIG_PATH=${PKG_CONFIG_PATH}`,
|
||||
`--filesystem=${path}/_build`,
|
||||
`${path}/.flatpak/repo`,
|
||||
...argv,
|
||||
]);
|
||||
}
|
||||
|
||||
async function runCommand(argv) {
|
||||
await exec(
|
||||
[
|
||||
"flatpak",
|
||||
"build",
|
||||
"--with-appdir",
|
||||
"--allow=devel",
|
||||
`--bind-mount=/run/user/1000/doc=/run/user/1000/doc/by-app/${flatpak_id}`,
|
||||
...manifest["finish-args"],
|
||||
|
||||
// Non default permissions, see Permissions.js
|
||||
// consider getting installed overrides instead with
|
||||
// flatpak override --user --show re.sonny.Workbench.Devel
|
||||
"--share=network",
|
||||
"--socket=pulseaudio",
|
||||
"--device=input",
|
||||
|
||||
"--talk-name=org.freedesktop.portal.*",
|
||||
"--talk-name=org.a11y.Bus",
|
||||
"--bind-mount=/run/flatpak/at-spi-bus=/run/user/1000/at-spi/bus",
|
||||
"--env=AT_SPI_BUS_ADDRESS=unix:path=/run/flatpak/at-spi-bus",
|
||||
...getHostEnv(),
|
||||
"--bind-mount=/run/host/fonts=/usr/share/fonts",
|
||||
"--bind-mount=/run/host/fonts-cache=/usr/lib/fontconfig/cache",
|
||||
`--filesystem=${home}/.local/share/fonts:ro`,
|
||||
`--filesystem=${home}/.cache/fontconfig:ro`,
|
||||
`--bind-mount=/run/host/user-fonts-cache=${home}/.cache/fontconfig`,
|
||||
`--bind-mount=/run/host/font-dirs.xml=${home}/.cache/font-dirs.xml`,
|
||||
`${path}/.flatpak/repo`,
|
||||
...argv,
|
||||
],
|
||||
{ verbose: true },
|
||||
);
|
||||
}
|
||||
|
||||
function getHostEnv() {
|
||||
// https://github.com/bilelmoussaoui/flatpak-vscode/blob/6424e7d8f53924faa33c9043153e08b0aedf6225/src/utils.ts#L88
|
||||
const forwarded_env_keys = [
|
||||
"COLORTERM",
|
||||
"DESKTOP_SESSION",
|
||||
"LANG",
|
||||
"WAYLAND_DISPLAY",
|
||||
"XDG_CURRENT_DESKTOP",
|
||||
"XDG_SEAT",
|
||||
"XDG_SESSION_DESKTOP",
|
||||
"XDG_SESSION_ID",
|
||||
"XDG_SESSION_TYPE",
|
||||
"XDG_VTNR",
|
||||
"AT_SPI_BUS_ADDRESS",
|
||||
];
|
||||
|
||||
const env_vars = [];
|
||||
forwarded_env_keys.forEach((key) => {
|
||||
const value = GLib.getenv(key);
|
||||
if (value === undefined) env_vars.push(key + "=" + value);
|
||||
});
|
||||
|
||||
return env_vars;
|
||||
}
|
||||
|
||||
async function run(_) {
|
||||
return exec(_, { verbose: argv.verbose });
|
||||
}
|
||||
|
||||
async function exec(argv, { cancellable = null /*, verbose = false*/ }) {
|
||||
argv = argv.map((arg) => {
|
||||
return arg.toString();
|
||||
});
|
||||
|
||||
console.debug(`$ ${argv.join(" ")}`);
|
||||
|
||||
let cancelId = 0;
|
||||
|
||||
// meson uses stdout for logs
|
||||
// const flags = verbose
|
||||
// ? Gio.SubprocessFlags.NONE
|
||||
// : Gio.SubprocessFlags.STDOUT_SILENCE;
|
||||
|
||||
const flags = Gio.SubprocessFlags.NONE;
|
||||
|
||||
const proc = new Gio.Subprocess({
|
||||
argv,
|
||||
flags,
|
||||
});
|
||||
proc.init(cancellable);
|
||||
|
||||
if (cancellable instanceof Gio.Cancellable)
|
||||
cancelId = cancellable.connect(() => proc.force_exit());
|
||||
|
||||
try {
|
||||
const success = await proc.wait_check_async(null);
|
||||
|
||||
if (!success) {
|
||||
const status = proc.get_exit_status();
|
||||
throw new Gio.IOErrorEnum({
|
||||
code: Gio.IOErrorEnum.FAILED,
|
||||
message: `Command '${argv}' failed with exit code ${status}`,
|
||||
});
|
||||
}
|
||||
} catch (err) {
|
||||
console.debug(err);
|
||||
exit(1);
|
||||
} finally {
|
||||
if (cancelId > 0) cancellable.disconnect(cancelId);
|
||||
}
|
||||
}
|
34
build-aux/wip/run.sh
Executable file
@ -0,0 +1,34 @@
|
||||
set -eux
|
||||
|
||||
flatpak_id=re.sonny.Workbench.Devel
|
||||
path=/home/sonny/Projects/Workbench
|
||||
manifest=$path/build-aux/$flatpak_id.json
|
||||
module_name=Workbench
|
||||
command=workbench
|
||||
|
||||
function run_build_command {
|
||||
flatpak build --share=network --filesystem=$path --filesystem=$path/.flatpak/repo --env=PATH=/app/bin:/app/bin:/app/bin:/usr/bin:/home/sonny/.var/app/com.visualstudio.code/data/node_modules/bin:/app/bin:/usr/bin:/usr/lib/sdk/vala/bin:/usr/lib/sdk/rust-stable/bin:/usr/lib/sdk/node20/bin:/usr/lib/sdk/typescript/bin --env=LD_LIBRARY_PATH=/app/lib:/app/lib:/usr/lib/sdk/vala/lib --env=PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib64/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig:/app/lib/pkgconfig:/app/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig --filesystem=$path/_build $path/.flatpak/repo $1
|
||||
}
|
||||
|
||||
if [ ! -d "$path/.flatpak/repo" ]; then
|
||||
# initializes repo
|
||||
flatpak build-init $path/.flatpak/repo $flatpak_id org.gnome.Sdk org.gnome.Sdk 47
|
||||
fi
|
||||
|
||||
if [ ! -d "$path/.flatpak/flatpak-builder" ]; then
|
||||
# downloads sources (de-initializes)
|
||||
flatpak-builder --ccache --force-clean --disable-updates --download-only --state-dir=$path/.flatpak/flatpak-builder --stop-at=$module_name $path/.flatpak/repo $manifest
|
||||
# builds modules (de-initializes)
|
||||
flatpak-builder --ccache --force-clean --disable-updates --disable-download --build-only --keep-build-dirs --state-dir=$path/.flatpak/flatpak-builder --stop-at=$module_name $path/.flatpak/repo $manifest
|
||||
fi
|
||||
|
||||
# builds Workbench module
|
||||
if [ ! -d "$path/_build" ]; then
|
||||
run_build_command "meson --prefix /app _build -Dprofile=development"
|
||||
else
|
||||
time run_build_command "meson install -C _build"
|
||||
# time run_build_command "$path/troll/gjspack/bin/gjspack --appid=$flatpak_id --prefix=/re.sonny.Workbench --project-root=$path --resource-root=$path/src --blueprint-compiler=/app/bin/blueprint-compiler --no-executable $path/src/main.js /app/share/$flatpak_id.src.gresource"
|
||||
fi
|
||||
|
||||
# starts workbench
|
||||
flatpak build --with-appdir --allow=devel --bind-mount=/run/user/1000/doc=/run/user/1000/doc/by-app/$flatpak_id --share=ipc --socket=fallback-x11 --socket=wayland --device=dri --share=network --socket=pulseaudio --talk-name='org.freedesktop.portal.*' --talk-name=org.a11y.Bus --bind-mount=/run/flatpak/at-spi-bus=/run/user/1000/at-spi/bus --env=AT_SPI_BUS_ADDRESS=unix:path=/run/flatpak/at-spi-bus --env=AT_SPI_BUS_ADDRESS=unix:path=/run/flatpak/at-spi-bus --env=COLORTERM=truecolor --env=DESKTOP_SESSION=gnome --env=LANG=en_US.UTF-8 --env=WAYLAND_DISPLAY=wayland-0 --env=XDG_CURRENT_DESKTOP=GNOME --env=XDG_SESSION_DESKTOP=gnome --env=XDG_SESSION_TYPE=wayland --bind-mount=/run/host/fonts=/usr/share/fonts --bind-mount=/run/host/fonts-cache=/usr/lib/fontconfig/cache --filesystem=/home/sonny/.local/share/fonts:ro --filesystem=/home/sonny/.cache/fontconfig:ro --bind-mount=/run/host/user-fonts-cache=/home/sonny/.cache/fontconfig --bind-mount=/run/host/font-dirs.xml=/home/sonny/.cache/font-dirs.xml $path/.flatpak/repo $command
|
@ -8,7 +8,6 @@ Type=Application
|
||||
Categories=WebDevelopment;Development;IDE;GNOME;GTK;
|
||||
Icon=@app_id@
|
||||
# TRANSLATORS: Don't translate
|
||||
Keywords=CSS;JavaScript;GJS;Blueprint;builder;Vala;
|
||||
Keywords=CSS;JavaScript;GJS;Blueprint;builder;Vala;GTK;libadwaita;Python;PyGObject;Rust;doc;playground;code;TypeScript;
|
||||
DBusActivatable=true
|
||||
StartupNotify=true
|
||||
MimeType=text/javascript;application/javascript;application/x-gtk-builder;text/css;text/x-vala;
|
||||
|
@ -1,15 +1,37 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<schemalist gettext-domain="@app_id@">
|
||||
<schemalist>
|
||||
<enum id="re.sonny.Workbench.UserInterfaceLanguage">
|
||||
<value nick="blueprint" value="0"/>
|
||||
<value nick="xml" value="1"/>
|
||||
</enum>
|
||||
|
||||
<schema id="@app_id@" path="/re/sonny/Workbench/">
|
||||
<key name="color-scheme" type="i">
|
||||
<default>0</default>
|
||||
</key>
|
||||
<key name="recent-code-language" type="i">
|
||||
<default>0</default>
|
||||
</key>
|
||||
<key name="recent-projects" type="as">
|
||||
<default>[]</default>
|
||||
</key>
|
||||
<key name="first-run" type="b">
|
||||
<default>true</default>
|
||||
</key>
|
||||
<key name="typescript" type="b">
|
||||
<default>true</default>
|
||||
</key>
|
||||
</schema>
|
||||
<schema id="@app_id@.Session" path="/re/sonny/Workbench/">
|
||||
<key name="show-code" type="b">
|
||||
<default>false</default>
|
||||
</key>
|
||||
<key name="show-style" type="b">
|
||||
<default>false</default>
|
||||
</key>
|
||||
<key name="name" type="s">
|
||||
<default>''</default>
|
||||
</key>
|
||||
<key name="show-ui" type="b">
|
||||
<default>true</default>
|
||||
</key>
|
||||
@ -22,14 +44,32 @@
|
||||
<key name="code-language" type="i">
|
||||
<default>0</default>
|
||||
</key>
|
||||
<key name="selected-demo" type="s">
|
||||
<default>"Welcome"</default>
|
||||
</key>
|
||||
<key name="ui-language" type="i">
|
||||
<default>0</default>
|
||||
<key name="user-interface-language" enum="re.sonny.Workbench.UserInterfaceLanguage">
|
||||
<default>'blueprint'</default>
|
||||
</key>
|
||||
<key name="preview-align" type="i">
|
||||
<default>0</default>
|
||||
</key>
|
||||
<key name="auto-preview" type="b">
|
||||
<default>true</default>
|
||||
</key>
|
||||
<key name="safe-mode" type="b">
|
||||
<default>false</default>
|
||||
</key>
|
||||
<key name="edited" type="b">
|
||||
<default>false</default>
|
||||
</key>
|
||||
<key name="window-width" type="i">
|
||||
<default>0</default>
|
||||
</key>
|
||||
<key name="window-height" type="i">
|
||||
<default>0</default>
|
||||
</key>
|
||||
<key name="window-maximized" type="b">
|
||||
<default>false</default>
|
||||
</key>
|
||||
<key name="window-fullscreened" type="b">
|
||||
<default>false</default>
|
||||
</key>
|
||||
</schema>
|
||||
</schemalist>
|
||||
|
@ -3,51 +3,550 @@
|
||||
<id>@app_id@</id>
|
||||
<launchable type="desktop-id">@app_id@.desktop</launchable>
|
||||
<name translatable="no">Workbench</name>
|
||||
<developer_name translatable="no">Sonny Piers</developer_name>
|
||||
<developer id="re.sonny">
|
||||
<name translatable="no">Sonny Piers</name>
|
||||
</developer>
|
||||
<update_contact>sonnyp@gnome.org</update_contact>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
<project_license>GPL-3.0</project_license>
|
||||
<summary>Learn and prototype with GNOME technologies</summary>
|
||||
<translation type="gettext">@app_id@</translation>
|
||||
<summary>Prototype with GNOME technologies</summary>
|
||||
<description>
|
||||
<p>Workbench goal is to let you experiment with GNOME technologies, no matter if tinkering for the first time or building and testing a GTK user interface.</p>
|
||||
<p>Workbench is for learning and prototyping with GNOME technologies, no matter if tinkering for the first time or building and testing a GTK user interface.</p>
|
||||
<p>Among other things, Workbench comes with</p>
|
||||
<ul>
|
||||
<li>realtime GTK/CSS preview</li>
|
||||
<li>library of examples</li>
|
||||
<li>1000+ icons</li>
|
||||
<li>JavaScript and Vala support</li>
|
||||
<li>XML and Blueprint for describing user interface</li>
|
||||
<li>syntax highlighting, undo/redo, autosave, session restore</li>
|
||||
<li>code formatter</li>
|
||||
<li>console logs</li>
|
||||
<li>Live GTK/CSS preview</li>
|
||||
<li>Library of 100+ examples</li>
|
||||
<li>JavaScript, Rust, Python and Vala support</li>
|
||||
<li>Declarative user interface syntax</li>
|
||||
<li>Autosave, sessions and projects</li>
|
||||
<li>Code diagnostics, completion and formatter</li>
|
||||
<li>Terminal output</li>
|
||||
</ul>
|
||||
</description>
|
||||
<url type="homepage">https://workbench.sonny.re</url>
|
||||
<url type="bugtracker">https://workbench.sonny.re/feedback</url>
|
||||
<url type="donation">https://workbench.sonny.re/donate</url>
|
||||
<url type="translate">https://workbench.sonny.re/translate</url>
|
||||
<url type="vcs-browser">https://workbench.sonny.re/source</url>
|
||||
<screenshots>
|
||||
<screenshot type="default">
|
||||
<image>
|
||||
https://raw.githubusercontent.com/sonnyp/Workbench/main/data/screenshot.png
|
||||
</image>
|
||||
<image>https://raw.githubusercontent.com/workbenchdev/Workbench/main/data/screenshots/welcome.png</image>
|
||||
<caption>Welcome screen</caption>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<image>
|
||||
https://raw.githubusercontent.com/sonnyp/Workbench/main/data/screenshot-code.png
|
||||
</image>
|
||||
<image>https://raw.githubusercontent.com/workbenchdev/Workbench/main/data/screenshots/code.png</image>
|
||||
<caption>Drawing Area demo</caption>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<image>
|
||||
https://raw.githubusercontent.com/sonnyp/Workbench/main/data/screenshot-library.png
|
||||
</image>
|
||||
<image>https://raw.githubusercontent.com/workbenchdev/Workbench/main/data/screenshots/library.png</image>
|
||||
<caption>Library window</caption>
|
||||
</screenshot>
|
||||
</screenshots>
|
||||
<content_rating type="oars-1.1" />
|
||||
<releases>
|
||||
<release version="48.0" date="2025-04-xx">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Use GNOME 48</li>
|
||||
</ul>
|
||||
<p>Library:</p>
|
||||
<ul>
|
||||
<li>Add "Shortcuts Window" demo</li>
|
||||
</ul>
|
||||
<p>Dependencies:</p>
|
||||
<ul>
|
||||
<!-- <li>Update Jsonrpc-GLib to 3.44.1</li> -->
|
||||
<li>Update libportal to 0.9.1</li>
|
||||
<li>Update libshumate to 1.4</li>
|
||||
<li>Update libspelling to 0.4.6</li>
|
||||
<li>Update vte to 0.80.0</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
|
||||
<release version="47.1" date="2025-01-24">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Fix permissions dialog</li>
|
||||
<li>Update Blueprint to 0.16.0</li>
|
||||
<li>Update libportal to 0.9.0</li>
|
||||
</ul>
|
||||
<p>Library:</p>
|
||||
<ul>
|
||||
<li>Replace GTK syntax with CSS variables</li>
|
||||
<li>Fix year sorting in "Column View" Python</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
|
||||
<release version="47.0" date="2024-12-11">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Use GNOME 47</li>
|
||||
<li>Add code suggestions/completions support</li>
|
||||
<li>Add Language and Category filters to the Library</li>
|
||||
<li>Add action to create new blank project</li>
|
||||
<li>Add experimental TypeScript support</li>
|
||||
</ul>
|
||||
<p>Library:</p>
|
||||
<ul>
|
||||
<li>Add "Button Row" demo</li>
|
||||
<li>Add "Gamepad" demo</li>
|
||||
<li>Add "List View with Sections" demo</li>
|
||||
<li>Add "List View with a Tree" demo</li>
|
||||
<li>Add "Bottom Sheet" demo</li>
|
||||
<li>Add "Database" demo</li>
|
||||
<li>Update "Spinner" to use AdwSpinner</li>
|
||||
<li>Port "Dialog" to Python</li>
|
||||
<li>Port "List View" to Python</li>
|
||||
<li>Port "Grid View" to Python</li>
|
||||
<li>Port "Level Bars" to Rust</li>
|
||||
<li>Port "Text Fields" to Rust</li>
|
||||
<li>Port "Column View" to Rust</li>
|
||||
<li>Port "Clamp" to Rust</li>
|
||||
<li>Port "List View" to Rust</li>
|
||||
<li>Port "Frame" to Rust</li>
|
||||
<li>Port "Audio" to Rust</li>
|
||||
<li>Port "File Monitor" to Vala</li>
|
||||
<li>Port "Scrolled Window" to Vala</li>
|
||||
<li>Port "Menu" to Vala</li>
|
||||
<li>Port "HTTP Server" to Vala</li>
|
||||
<li>Port "Map" to Vala</li>
|
||||
<li>Port "Session Monitor and Inhibit" to Vala</li>
|
||||
<li>Port "Save File" to Vala</li>
|
||||
<li>Port "Spin Button" to Vala</li>
|
||||
<li>Port "Progress Bar" to Vala</li>
|
||||
<li>Port "Label" to Vala</li>
|
||||
<li>Port "Power Profile Monitor" to Vala</li>
|
||||
<li>Port "Drawing Area" to Vala</li>
|
||||
<li>Port "Font Dialog" to Vala</li>
|
||||
<li>Port "Select Folder" to Vala</li>
|
||||
<li>Port "Network Monitor" to Vala</li>
|
||||
<li>Port "Toggle Button" to Vala</li>
|
||||
<li>Port "Tooltip" to Vala</li>
|
||||
<li>Port "Spell Checker" to Vala</li>
|
||||
<li>Port "Popovers" to Vala</li>
|
||||
<li>Port "Menu Button" to Vala</li>
|
||||
<li>Port "Frame" to Vala</li>
|
||||
<li>Port "Actions" to Vala</li>
|
||||
<li>Port "Dialog" to Vala</li>
|
||||
<li>Port "CSS Gradients" to Vala</li>
|
||||
<li>Port "Snapshot" to Vala</li>
|
||||
</ul>
|
||||
<p>Dependencies:</p>
|
||||
<ul>
|
||||
<!-- <li>Replace Biome with TypeScript Language Server</li> -->
|
||||
<li>Add GOM dependency 0.5.3</li>
|
||||
<li>Update Biome to 1.9.4</li>
|
||||
<li>Update libshumate to 1.3</li>
|
||||
<li>Update Blueprint to 0.14.0</li>
|
||||
<li>Update vte to 0.78.2</li>
|
||||
<li>Update libspelling to 0.4.5</li>
|
||||
<li>Update libportal to 0.8.1</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
|
||||
<release version="46.1" date="2024-04-30">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Add "Find" to search for code in the current editor</li>
|
||||
<li>Save and restore the session window dimensions</li>
|
||||
<li>Add "Reveal in Folder" to browse project files</li>
|
||||
<li>Remove Icon Library, please refer to the "Using Icons" entry</li>
|
||||
<li>List editor shortcuts in Shortcuts</li>
|
||||
<li>Fix Vala and Rust extensions detection on "Run"</li>
|
||||
<li>Library: Add "Using Icons"</li>
|
||||
<li>Library: Add "SVG"</li>
|
||||
<li>Library: Split "List View Widget" into "List View" and "Grid View"</li>
|
||||
<li>Library: Port "Animation" to Python</li>
|
||||
<li>Library: Port "Radio Buttons" to Vala</li>
|
||||
<li>Library: Port "Switch" to Vala</li>
|
||||
<li>Library: Port "Revealer" to Vala</li>
|
||||
<li>Library: Port "Styling with CSS" to Vala</li>
|
||||
<li>Library: Port "Separator" to Vala</li>
|
||||
<li>Library: Port "Level Bars" to Vala</li>
|
||||
<li>Library: Port "Link Button" to Vala</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
|
||||
<release version="46" date="2024-03-20">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Use GNOME 46</li>
|
||||
<li>Add basic Rust diagnostics</li>
|
||||
<li>Add basic Python diagnostics</li>
|
||||
<li>Replace Python formatter Black with Ruff</li>
|
||||
<li>Support libadwaita dialogs</li>
|
||||
<li>Stop adding a superfluous newlines to end of files</li>
|
||||
<li>Optimize opening Library entries</li>
|
||||
<li>Open project windows maximized</li>
|
||||
<li>Fix dangling bwrap processes after quitting Workbench</li>
|
||||
<li>Modernize the Extensions window</li>
|
||||
<li>Update Biome to 1.6.0</li>
|
||||
<li>Update libspelling to 0.2.1</li>
|
||||
<li>Update gst-plugin-gtk4 to 0.12.1</li>
|
||||
<li>Update libshumate to 1.2</li>
|
||||
<li>Update VTE to 0.76</li>
|
||||
<li>Update Blueprint to 0.12.0</li>
|
||||
<li>Update GTKCssLanguageServer</li>
|
||||
<li>Update icon-development-kit</li>
|
||||
<li>Library: Adapt demos to use GNOME 46 features</li>
|
||||
<li>Library: Add FileFilter example to "Open File" demo</li>
|
||||
<li>Library: Add "Snapshot" demo</li>
|
||||
<li>Library: Port "Scrolled Window" demo to Python</li>
|
||||
<li>Library: Port "HTTP Image" demo to Python</li>
|
||||
<li>Library: Port "HTTP Request" demo to Python</li>
|
||||
<li>Library: Port "HTTP Server" demo to Python</li>
|
||||
<li>Library: Port "Font Dialog" demo to Python</li>
|
||||
<li>Library: Port "Box" demo to Python</li>
|
||||
<li>Library: Port "Frame" demo to Python</li>
|
||||
<li>Library: Port "Grid" demo to Python</li>
|
||||
<li>Library: Port "Web View" demo to Python</li>
|
||||
<li>Library: Port "Network Monitor" demo to Python</li>
|
||||
<li>Library: Port "Navigation View" demo to Python</li>
|
||||
<li>Library: Port "Launcher" demo to Python</li>
|
||||
<li>Library: Port "Audio" demo to Python</li>
|
||||
<li>Library: Port "Map" demo to Python</li>
|
||||
<li>Library: Port "File Monitor" demo to Python</li>
|
||||
<li>Library: Port "WebSocket Client" demo to Python</li>
|
||||
<li>Library: Port "Screencast" demo to Python</li>
|
||||
<li>Library: Port "Progress Bar" demo to Python</li>
|
||||
<li>Library: Port "Camera" demo to Python</li>
|
||||
<li>Library: Port "Location" demo to Python</li>
|
||||
<li>Library: Port "List Model" demo to Python</li>
|
||||
<li>Library: Port "Drop Down" demo to Python</li>
|
||||
<li>Library: Port "Drawing Area" demo to Python</li>
|
||||
<li>Library: Port "Session Monitor and Inhibit" demo to Python</li>
|
||||
<li>Library: Port "View Switcher" demo to Python</li>
|
||||
<li>Library: Port "View Switcher" demo to Python</li>
|
||||
<li>Library: Port "Checkboxes" demo to Vala</li>
|
||||
<li>Library: Port "Action Bar" demo to Vala</li>
|
||||
<li>Library: Port "Clamp" demo to Vala</li>
|
||||
<li>Library: Port "Banner" demo to Vala</li>
|
||||
<li>Library: Port "Emoji Chooser" demo to Vala</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="45.4" date="2024-01-14">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Restore on-disk projects when starting Workbench</li>
|
||||
<li>Open the Library on start if there are no sessions to restore</li>
|
||||
<li>Restore scroll and cusor positions on format and Run</li>
|
||||
<li>Add "Copy" and "Select All" to Console</li>
|
||||
<li>Add Vala formatter support</li>
|
||||
<li>Add WebP image format support</li>
|
||||
<li>Use Biome instead of prettier as JavaScript formatter</li>
|
||||
<li>Use GTKCssLanguageServer instead of prettier as CSS formatter</li>
|
||||
<li>Fix Console style when toggling dark mode</li>
|
||||
<li>Fix blank preview on demos with no code</li>
|
||||
<li>Fix Style affecting other windows</li>
|
||||
<li>Update Biome to 1.4.1</li>
|
||||
<li>Update gst-plugin-gtk4 to 0.11.2</li>
|
||||
<li>Update libshumate 1.1.2</li>
|
||||
<li>Library: Add "Context Menu" entry</li>
|
||||
<li>Library: Add "HTTP Server" entry</li>
|
||||
<li>Library: Fix "Open File" entry</li>
|
||||
<li>Library: Replace deprecated ViewSwitcherTitle</li>
|
||||
<li>Library: Port "Accessibility" entry to Python</li>
|
||||
<li>Library: Port "Account" entry to Python</li>
|
||||
<li>Library: Port "Email" entry to Python</li>
|
||||
<li>Library: Port "Overlay Split View" entry to Python</li>
|
||||
<li>Library: Port "Label Bars" entry to Python</li>
|
||||
<li>Library: Port "Context Menu" entry to Python</li>
|
||||
<li>Library: Port "Wallpaper" entry to Python</li>
|
||||
<li>Library: Port "Drop Zone" entry to Python</li>
|
||||
<li>Library: Port "Column View" entry to Python</li>
|
||||
<li>Library: Port "Screenshot" entry to Python</li>
|
||||
<li>Library: Port "Event Controllers" entry to Python</li>
|
||||
<li>Library: Port "Drag and Drop" entry to Python</li>
|
||||
<li>Library: Port "Context Menu" entry to Vala</li>
|
||||
<li>Library: Port "Search" entry to Vala</li>
|
||||
<li>Library: Port "Grid" entry to Vala</li>
|
||||
<li>Library: Port "Accessibility" entry to Vala</li>
|
||||
<li>Library: Port "Animation" entry to Rust</li>
|
||||
<li>Library: Port "Context Menu" entry to Rust</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="45.3" date="2023-11-16">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Add Python support</li>
|
||||
<li>Add Blueprint formatter support</li>
|
||||
<li>Replace Manuals with "Biblioteca" available on Flathub</li>
|
||||
<li>Show which languages are available for each Library entry</li>
|
||||
<li>Allow opening Library entries in a specific language</li>
|
||||
<li>Make Library faster to launch</li>
|
||||
<li>Each Workbench window has its own title</li>
|
||||
<li>Do not exit if Library is the last window open</li>
|
||||
<li>Improve JavaScript linting</li>
|
||||
<li>Fix an issue with some libadwaita style classes not working</li>
|
||||
<li>Library: Port entries to libadwaita SpinRow</li>
|
||||
<li>Library: Fix "Preferences Window" adaptiveness</li>
|
||||
<li>Library: Simplify "HTP Request" entry</li>
|
||||
<li>Library: Simplify "Column View" entry</li>
|
||||
<li>Library: Simplify "Status Page" entry</li>
|
||||
<li>Library: Modernize "HTTP Image" entry</li>
|
||||
<li>Library: Make the "Save File" entry actually save a file</li>
|
||||
<li>Library: Port "Welcome" entry to Python</li>
|
||||
<li>Library: Port "Actions" entry to Python</li>
|
||||
<li>Library: Port "Spinner" entry to Python</li>
|
||||
<li>Library: Port "Styling with CSS" entry to Python</li>
|
||||
<li>Library: Port "Breakpoints" entry to Python</li>
|
||||
<li>Library: Port "Overlay" entry to Python</li>
|
||||
<li>Library: Port "Popovers" entry to Python</li>
|
||||
<li>Library: Port "Emoji Chooser" entry to Python</li>
|
||||
<li>Library: Port "Image" entry to Python</li>
|
||||
<li>Library: Port "Separator" entry to Python</li>
|
||||
<li>Library: Port "Menu Button" entry to Python</li>
|
||||
<li>Library: Port "Radio Buttons" entry to Python</li>
|
||||
<li>Library: Port "Link Button" entry to Python</li>
|
||||
<li>Library: Port "About Window" entry to Python</li>
|
||||
<li>Library: Port "Avatar" entry to Python</li>
|
||||
<li>Library: Port "Button" entry to Python</li>
|
||||
<li>Library: Port "Calendar" entry to Python</li>
|
||||
<li>Library: Port "Checkboxes" entry to Python</li>
|
||||
<li>Library: Port "Tooltip" entry to Python</li>
|
||||
<li>Library: Port "Toggle Button" entry to Python</li>
|
||||
<li>Library: Port "Carousel" entry to Python</li>
|
||||
<li>Library: Port "CSS Gradients" entry to Python</li>
|
||||
<li>Library: Port "Color Dialog" entry to Python</li>
|
||||
<li>Library: Port "Memory Monitor" entry to Python</li>
|
||||
<li>Library: Port "Video" entry to Python</li>
|
||||
<li>Library: Port "Text Fields" entry to Python</li>
|
||||
<li>Library: Port "Toolbar View" entry to Python</li>
|
||||
<li>Library: Port "Tab View" entry to Python</li>
|
||||
<li>Library: Port "Text View" entry to Python</li>
|
||||
<li>Library: Port "Text Colors" entry to Python</li>
|
||||
<li>Library: Port "Search" entry to Python</li>
|
||||
<li>Library: Port "Color Picker" entry to Python</li>
|
||||
<li>Library: Port "Dialogs" entry to Python</li>
|
||||
<li>Library: Port "Label" entry to Python</li>
|
||||
<li>Library: Port "Open File" entry to Python</li>
|
||||
<li>Library: Port "Flow Box" entry to Python</li>
|
||||
<li>Library: Port "Revealer" entry to Python</li>
|
||||
<li>Library: Port "Menu" entry to Python</li>
|
||||
<li>Library: Port "Switch" entry to Python</li>
|
||||
<li>Library: Port "Stack" entry to Python</li>
|
||||
<li>Library: Port "Picture" entry to Python</li>
|
||||
<li>Library: Port "Power Profile Monitor" entry to Python</li>
|
||||
<li>Library: Port "Spin Button" entry to Python</li>
|
||||
<li>Library: Port "Source View" entry to Python</li>
|
||||
<li>Library: Port "Preferences Window" entry to Python</li>
|
||||
<li>Library: Port "Clamp" entry to Python</li>
|
||||
<li>Library: Port "Banner" entry to Python</li>
|
||||
<li>Library: Port "Save File" entry to Python</li>
|
||||
<li>Library: Port "Action Bar" entry to Python</li>
|
||||
<li>Library: Port "Scale" entry to Python</li>
|
||||
<li>Library: Port "Spell Checker" entry to Python</li>
|
||||
<li>Library: Port "Select Folder" entry to Python</li>
|
||||
<li>Library: Port "Avatar" entry to Rust</li>
|
||||
<li>Library: Port "Actions" entry to Rust</li>
|
||||
<li>Library: Port "Animation" entry to Vala</li>
|
||||
<li>Library: Port "Overlay Split View" entry to Vala</li>
|
||||
<li>Library: Port "Text Colors" entry to Vala</li>
|
||||
<li>Library: Port "Tab View" entry to Vala</li>
|
||||
<li>Library: Port "Navigation View" entry to Vala</li>
|
||||
<li>Library: Port "Open File" entry to Vala</li>
|
||||
<li>Library: Port "Avatar" entry to Vala</li>
|
||||
<li>Library: Port "Memory Monitor" entry to Vala</li>
|
||||
<li>Library: Port "Launcher" entry to Vala</li>
|
||||
<li>Library: Port "Calendar" entry to Vala</li>
|
||||
<li>Library: Port "Column View" entry to Vala</li>
|
||||
<li>Library: Port "HTTP Request" entry to Vala</li>
|
||||
<li>Library: Port "Web View" entry to Vala</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="45.2" date="2023-10-11">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Rust: Fix the issue of compiling fails after updating Workbench</li>
|
||||
<li>Manuals: Fix a couple of minor issues</li>
|
||||
<li>Library: Port "Web View" entry to Rust</li>
|
||||
<li>Library: Port "HTTP Image" entry to Rust</li>
|
||||
<li>Library: Port "HTTP Image" entry to Rust</li>
|
||||
<li>Library: Port "WebSocket Client" entry to Rust</li>
|
||||
<li>Library: Port "Audio" entry to Vala</li>
|
||||
<li>Library: Port "Video" entry to Vala</li>
|
||||
<li>Library: Port "Picture" entry to Vala</li>
|
||||
<li>Library: Port "Flow Box" entry to Vala</li>
|
||||
<li>Library: Port "Box" entry to Vala</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="45.1" date="2023-10-02">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Add "Extensions" to enable Rust and Vala support</li>
|
||||
<li>Add Keyboard Shortcuts to Manuals; the documentation viewer</li>
|
||||
<li>Update and refresh UI</li>
|
||||
<li>Add audio permission</li>
|
||||
<li>Make Workbench smaller and faster to download</li>
|
||||
<li>Library: Add CSS gradientts demo</li>
|
||||
<li>Library: Add Property Row</li>
|
||||
<li>Library: Update entries to use SpinRow and SwitchRow </li>
|
||||
<li>Library: Port Map entry to Rust</li>
|
||||
<li>Library: Port Emoji Chooser to Rust</li>
|
||||
<li>Library: Fix Souce View entry</li>
|
||||
<li>Library: Use GLib.format_size() for file sizes</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="45.0" date="2023-09-22">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Use GNOME 45</li>
|
||||
<li>Support Rust</li>
|
||||
<li>Add multi windows and sessions support</li>
|
||||
<li>Support saving and opening a project</li>
|
||||
<li>Add offline documentation viewer "Manuals"</li>
|
||||
<li>Use GTKCssLanguageServer</li>
|
||||
<li>Add a workbench.resolve API</li>
|
||||
<li>Allow running Vala without UI code</li>
|
||||
<li>Update to Blueprint 0.10.0</li>
|
||||
<li>Update to vte 0.74</li>
|
||||
<li>Update to libportal 0.7</li>
|
||||
<li>Update Icon Development Kit</li>
|
||||
<li>Replace Rome Language Server with Biome Language Server</li>
|
||||
<li>New Library entry: Map</li>
|
||||
<li>New Library entry: Search</li>
|
||||
<li>New Library entry: Audio</li>
|
||||
<li>New Library entry: Event Controllers</li>
|
||||
<li>New Library entry: Action Bar</li>
|
||||
<li>New Library entry: Location</li>
|
||||
<li>New Library entry: Checkboxes</li>
|
||||
<li>New Library entry: Radio Buttons</li>
|
||||
<li>New Library entry: Accessibility</li>
|
||||
<li>New Library entry: List View</li>
|
||||
<li>New Library entry: Separator</li>
|
||||
<li>New Library entry: Link Button</li>
|
||||
<li>New Library entry: Actions</li>
|
||||
<li>New Library entry: Tooltip</li>
|
||||
<li>New Library entry: Flow Box</li>
|
||||
<li>New Library entry: Emoji Chooser</li>
|
||||
<li>New Library entry: Editable Label</li>
|
||||
<li>New Library entry: Drop Zone</li>
|
||||
<li>New Library entry: Label</li>
|
||||
<li>New Library entry: Menu Button</li>
|
||||
<li>New Library entry: Image</li>
|
||||
<li>New Library entry: Column View</li>
|
||||
<li>New Library entry: Menu</li>
|
||||
<li>New Library entry: Laucher (File / Uri)</li>
|
||||
<li>New Library entry: Navigation Split View</li>
|
||||
<li>New Library entry: Overlay Split View</li>
|
||||
<li>New Library entry: Navigation View</li>
|
||||
<li>New Library entry: Scrolled Window</li>
|
||||
<li>New Library entry: Power Profile Monitor</li>
|
||||
<li>New Library entry: Network Monitor Demo</li>
|
||||
<li>New Library entry: Clamp</li>
|
||||
<li>New Library entry: Source View</li>
|
||||
<li>New Library entry: Breakpoint</li>
|
||||
<li>New Library entry: Screencast</li>
|
||||
<li>New Library entry: Toolbar View</li>
|
||||
<li>New Library entry: Picture</li>
|
||||
<li>New Library entry: Memory Monitor</li>
|
||||
<li>New Library entry: Camera</li>
|
||||
<li>New Library entry: Center Box</li>
|
||||
<li>New Library entry: File Monitor</li>
|
||||
<li>New Library entry: Session Monitor and Inhibit</li>
|
||||
<li>New Library entry: Open File</li>
|
||||
<li>New Library entry: Save File</li>
|
||||
<li>New Library entry: Select Folder</li>
|
||||
<li>New Library entry: Spell Checker</li>
|
||||
<li>New Library entry: HTTP Request</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="44.2" date="2023-06-23">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Improve Screenshot Preview</li>
|
||||
<li>Fix a bug causing preview to update on certain events</li>
|
||||
<li>Fix a crash related to GtkStackPage</li>
|
||||
<li>New Library entry: Popover</li>
|
||||
<li>New Library entry: Screenshot</li>
|
||||
<li>New Library entry: Header Bar</li>
|
||||
<li>New Library entry: Font Dialog</li>
|
||||
<li>New Library entry: Preferences Window</li>
|
||||
<li>New Library entry: Web View</li>
|
||||
<li>New Library entry: Boxed Lists</li>
|
||||
<li>New Library entry: Drag and Drop</li>
|
||||
<li>New Library entry: Tab View</li>
|
||||
<li>New Library entry: Drawing Area</li>
|
||||
<li>New Library entry: Advanced Buttons</li>
|
||||
<li>New Library entry: About Window</li>
|
||||
<li>New Library entry: Animation</li>
|
||||
<li>New Library entry: TextView</li>
|
||||
<li>New Library entry: Styling with CSS</li>
|
||||
<li>New Library entry: Spin Button</li>
|
||||
<li>New Library entry: Banner</li>
|
||||
<li>New Library entry: Carousel</li>
|
||||
<li>New Library entry: Color Picker</li>
|
||||
<li>New Library entry: Email</li>
|
||||
<li>New Library entry: Progress Bar</li>
|
||||
<li>New Library entry: Wallpaper</li>
|
||||
<li>New Library entry: Drop Down</li>
|
||||
<li>New Library entry: Video</li>
|
||||
<li>New Library entry: Revealer</li>
|
||||
<li>New Library entry: Account</li>
|
||||
<li>New Library entry: Stack</li>
|
||||
<li>New Library entry: Status Page</li>
|
||||
<li>New Library entry: Frame</li>
|
||||
<li>New Library entry: Account</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="44.1" date="2023-05-17">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Update icon-development-kit; adds 143 new icons</li>
|
||||
<li>Update to Blueprint to 0.8.1</li>
|
||||
<li>Update to VTE 0.72.1</li>
|
||||
<li>Update to Rome tools 12.1.1</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="44.0" date="2023-04-15">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>GNOME 44</li>
|
||||
<li>Workbench is now fully sandboxed and will be considered safe</li>
|
||||
<li>18 new Library entries</li>
|
||||
<li>Add a setting to disable Auto-Update of Preview</li>
|
||||
<li>Improve previewer and add a Safe Mode</li>
|
||||
<li>Update Blueprint, vte, vls and Rome</li>
|
||||
<li>The library window is now independant</li>
|
||||
<li>Improve feedback</li>
|
||||
<li>Fix preview of large Blueprint</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="43.3" date="2023-01-23">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Switching between XML and Blueprint will now export</li>
|
||||
<li>Add support for JavaScript diagnostics and linting</li>
|
||||
<li>Optimize Blueprint preview</li>
|
||||
<li>Update Blueprint 0.4.0 to 0.6.0</li>
|
||||
<li>Fix preview of non GtkBuildable objects</li>
|
||||
<li>Prevent GtkBuilder related crashes</li>
|
||||
<li>Reset top-level windows on update</li>
|
||||
<li>Destroy Vala top-level objects on close</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="43.2" date="2022-11-20">
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Fix application not starting</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="43.1" date="2022-11-18">
|
||||
<description>
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Use Vala Language Server for diagnostics</li>
|
||||
<li>Move Icon Browser to the main application menu</li>
|
||||
@ -62,7 +561,7 @@
|
||||
</description>
|
||||
</release>
|
||||
<release version="43.0" date="2022-09-21">
|
||||
<description>
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>GNOME 43</li>
|
||||
<li>Display CSS errors inline</li>
|
||||
@ -75,7 +574,7 @@
|
||||
</description>
|
||||
</release>
|
||||
<release version="42.3" date="2022-08-22">
|
||||
<description>
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Show tooltip hints in Blueprint UI code</li>
|
||||
<li>Improve XML formatter</li>
|
||||
@ -88,7 +587,7 @@
|
||||
</description>
|
||||
</release>
|
||||
<release version="42.2" date="2022-07-19">
|
||||
<description>
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Underline errors in Blueprint UI code</li>
|
||||
<li>Fix bugs and crashes</li>
|
||||
@ -96,7 +595,7 @@
|
||||
</description>
|
||||
</release>
|
||||
<release version="42.1" date="2022-07-07">
|
||||
<description>
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li
|
||||
>Add an Icon Browser to find the right icons for your prototypes</li>
|
||||
@ -118,7 +617,7 @@
|
||||
</description>
|
||||
</release>
|
||||
<release version="42.0" date="2022-06-04">
|
||||
<description>
|
||||
<description translatable="no">
|
||||
<p>Highlights</p>
|
||||
<ul>
|
||||
<li>Add Blueprint markup syntax for UI</li>
|
||||
@ -151,7 +650,7 @@
|
||||
</description>
|
||||
</release>
|
||||
<release version="1.2.0" date="2022-05-06">
|
||||
<description>
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Add a Library of examples</li>
|
||||
<li>Add an example of WebSocket client</li>
|
||||
@ -171,7 +670,7 @@
|
||||
</description>
|
||||
</release>
|
||||
<release version="1.1.0" date="2022-03-24">
|
||||
<description>
|
||||
<description translatable="no">
|
||||
<ul>
|
||||
<li>Take a png screenshot of the preview</li>
|
||||
<li>The console is now resizable</li>
|
||||
@ -193,9 +692,15 @@
|
||||
<kudo>ModernToolkit</kudo>
|
||||
</kudos>
|
||||
<branding>
|
||||
<color type="primary">#33d17a</color>
|
||||
<color type="primary" scheme_preference="light">#57e389</color>
|
||||
<color type="primary" scheme_preference="dark">#26a269</color>
|
||||
</branding>
|
||||
<custom>
|
||||
<value key="GnomeSoftware::key-colors">[(51, 209, 122)]</value>
|
||||
</custom>
|
||||
<requires>
|
||||
<display_length compare="ge">1024</display_length>
|
||||
</requires>
|
||||
<recommends>
|
||||
<control>keyboard</control>
|
||||
<control>pointing</control>
|
||||
<control>touch</control>
|
||||
</recommends>
|
||||
</component>
|
||||
|
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 3 1 c -0.550781 0 -1 0.449219 -1 1 v 13 c 0 0.550781 0.449219 1 1 1 h 10 c 0.550781 0 1 -0.449219 1 -1 v -9.5 c 0 -0.265625 -0.105469 -0.519531 -0.292969 -0.707031 l -3.5 -3.5 c -0.1875 -0.1875 -0.441406 -0.292969 -0.707031 -0.292969 z m 5 5.007812 c 1.027344 0 2.050781 0.386719 2.828125 1.164063 c 0.390625 0.390625 0.390625 1.023437 0 1.414063 c -0.390625 0.390624 -1.023437 0.390624 -1.414063 0 c -0.789062 -0.789063 -2.039062 -0.789063 -2.828124 0 c -0.789063 0.789062 -0.789063 2.039062 0 2.828124 c 0.789062 0.789063 2.039062 0.789063 2.828124 0 c 0.390626 -0.390624 1.023438 -0.390624 1.414063 0 c 0.390625 0.390626 0.390625 1.023438 0 1.414063 c -1.554687 1.554687 -4.101563 1.554687 -5.65625 0 s -1.554687 -4.101563 0 -5.65625 c 0.777344 -0.777344 1.800781 -1.164063 2.828125 -1.164063 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 971 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8 0 c -4.421875 0 -8 3.578125 -8 8 s 3.578125 8 8 8 s 8 -3.578125 8 -8 s -3.578125 -8 -8 -8 z m 0 3.875 c 0.621094 0 1.125 0.503906 1.125 1.125 s -0.503906 1.125 -1.125 1.125 s -1.125 -0.503906 -1.125 -1.125 s 0.503906 -1.125 1.125 -1.125 z m -1.523438 3.125 h 2.523438 v 4 h 0.5 c 0.277344 0 0.5 0.222656 0.5 0.5 s -0.222656 0.5 -0.5 0.5 h -2.5 v -4 h -0.5 c -0.277344 0 -0.5 -0.222656 -0.5 -0.5 c 0 -0.269531 0.210938 -0.488281 0.476562 -0.5 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 619 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 4 1 c -2 0 -2 2 -2 2 h 11 v 11 h -11 s 0 2 2 2 h 9 s 0.457031 0.015625 0.949219 -0.230469 c 0.488281 -0.246093 1.050781 -0.9375 1.050781 -1.769531 v -11 c 0 -0.832031 -0.5625 -1.523438 -1.050781 -1.769531 c -0.492188 -0.246094 -0.949219 -0.230469 -0.949219 -0.230469 z m -2.5 3 c -0.277344 0 -0.5 0.222656 -0.5 0.5 s 0.222656 0.5 0.5 0.5 h 2 c 0.277344 0 0.5 -0.222656 0.5 -0.5 s -0.222656 -0.5 -0.5 -0.5 z m 7.023438 0.992188 c -0.078126 0.003906 -0.15625 0.007812 -0.238282 0.011718 c -0.214844 0.015625 -0.429687 0.050782 -0.640625 0.101563 c -1.710937 0.433593 -2.839843 2.082031 -2.617187 3.832031 c 0.222656 1.753906 1.722656 3.070312 3.484375 3.0625 c 0.851562 0 1.644531 -0.273438 1.644531 -0.273438 l -0.3125 -0.953124 s -0.707031 0.226562 -1.332031 0.226562 c -1.269531 0.003906 -2.332031 -0.929688 -2.492188 -2.1875 c -0.160156 -1.253906 0.640625 -2.425781 1.867188 -2.738281 c 0.617187 -0.152344 1.28125 -0.074219 1.808593 0.164062 c 0.527344 0.242188 0.890626 0.632813 1.003907 1.0625 c 0.125 0.460938 0.085937 0.96875 -0.085938 1.273438 c -0.097656 0.175781 -0.402343 0.355469 -0.613281 0.425781 v -0.5 c 0 -0.824219 -0.675781 -1.5 -1.5 -1.5 s -1.5 0.675781 -1.5 1.5 s 0.675781 1.5 1.5 1.5 c 0.175781 0 0.34375 -0.039062 0.5 -0.09375 v 0.042969 l 0.449219 0.050781 c 0.941406 0.09375 1.691406 -0.320312 2.039062 -0.9375 c 0.347657 -0.617188 0.355469 -1.359375 0.179688 -2.019531 c -0.210938 -0.785157 -0.820313 -1.375 -1.554688 -1.710938 c -0.484375 -0.222656 -1.027343 -0.34375 -1.589843 -0.339843 z m -7.023438 1.007812 c -0.277344 0 -0.5 0.222656 -0.5 0.5 s 0.222656 0.5 0.5 0.5 h 2 c 0.277344 0 0.5 -0.222656 0.5 -0.5 s -0.222656 -0.5 -0.5 -0.5 z m 0 2 c -0.277344 0 -0.5 0.222656 -0.5 0.5 s 0.222656 0.5 0.5 0.5 h 2 c 0.277344 0 0.5 -0.222656 0.5 -0.5 s -0.222656 -0.5 -0.5 -0.5 z m 7 0 c 0.28125 0 0.5 0.21875 0.5 0.5 s -0.21875 0.5 -0.5 0.5 s -0.5 -0.21875 -0.5 -0.5 s 0.21875 -0.5 0.5 -0.5 z m -7 2 c -0.277344 0 -0.5 0.222656 -0.5 0.5 s 0.222656 0.5 0.5 0.5 h 2 c 0.277344 0 0.5 -0.222656 0.5 -0.5 s -0.222656 -0.5 -0.5 -0.5 z m 0 2 c -0.277344 0 -0.5 0.222656 -0.5 0.5 s 0.222656 0.5 0.5 0.5 h 2 c 0.277344 0 0.5 -0.222656 0.5 -0.5 s -0.222656 -0.5 -0.5 -0.5 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.3 KiB |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 16 2.1875 c 0 -1.207031 -0.800781 -2.1875 -2 -2.1875 h -9.976562 c -1.203126 0 -2 0.980469 -2 2.1875 v 11.625 c 0 1.207031 1.015624 2.1875 2.21875 2.1875 h 9.539062 c 1.199219 0 2.21875 -0.980469 2.21875 -2.1875 z m -2 -0.1875 v 12 h -10 v -12 z m 0 0"/>
|
||||
<path d="m 9 3.96875 c -0.828125 0 -1.5 0.671875 -1.5 1.5 s 0.671875 1.5 1.5 1.5 s 1.5 -0.671875 1.5 -1.5 s -0.671875 -1.5 -1.5 -1.5 z m -0.75 4 c -1.246094 0 -2.25 1.003906 -2.25 2.25 v 1.03125 c 0 0.414062 0.335938 0.75 0.75 0.75 h 4.5 c 0.414062 0 0.75 -0.335938 0.75 -0.75 v -1.03125 c 0 -1.246094 -1.003906 -2.25 -2.25 -2.25 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 789 B |
@ -1,11 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 15.21875 1.492188 s -4.253906 1.917968 -6.105469 3.304687 l -2.453125 1.839844 l -1.140625 1.824219 c -0.4375 0.152343 -0.519531 0.933593 -0.519531 1.15625 c 0 0.285156 0.234375 0.519531 0.519531 0.519531 c 0.222657 0 0.960938 -0.046875 1.085938 -0.40625 l 1.769531 0.167969 l 0.472656 -0.34375 l 0.433594 0.519531 l 1.15625 -0.902344 l -0.421875 -0.507813 l 0.984375 -0.664062 c 1.933594 -1.308594 4.785156 -5.847656 4.785156 -5.847656 c 0.328125 -0.382813 -0.09375 -0.90625 -0.566406 -0.660156 z m 0 0"/>
|
||||
<path d="m 15.023438 8.976562 c -0.457032 0.003907 -0.910157 0.136719 -1.296876 0.378907 c -0.386718 0.246093 -0.699218 0.59375 -0.898437 1.007812 c -0.253906 0.519531 -0.304687 0.996094 -0.453125 1.304688 c -0.074219 0.152343 -0.167969 0.269531 -0.261719 0.332031 c -0.042969 0.03125 -0.09375 0.050781 -0.132812 0.0625 c -0.039063 0.007812 -0.078125 0.003906 -0.105469 -0.003906 c -0.023438 -0.007813 -0.066406 -0.03125 -0.105469 -0.070313 c -0.039062 -0.039062 -0.082031 -0.09375 -0.125 -0.167969 c -0.078125 -0.148437 -0.140625 -0.363281 -0.238281 -0.625 c -0.148438 -0.378906 -0.347656 -0.730468 -0.59375 -1.050781 l -0.792969 0.613281 c 0.191407 0.242188 0.339844 0.511719 0.449219 0.796876 c 0.078125 0.195312 0.144531 0.457031 0.296875 0.738281 c 0.078125 0.144531 0.179687 0.289062 0.3125 0.417969 c 0.140625 0.132812 0.3125 0.246093 0.519531 0.304687 c 0.195313 0.058594 0.394532 0.0625 0.578125 0.023437 c 0.1875 -0.035156 0.355469 -0.109374 0.5 -0.210937 c 0.289063 -0.191406 0.476563 -0.460937 0.601563 -0.726563 c 0.25 -0.519531 0.300781 -0.992187 0.449218 -1.304687 c 0.117188 -0.238281 0.308594 -0.453125 0.535157 -0.597656 c 0.226562 -0.140625 0.5 -0.222657 0.769531 -0.222657 z m 0 0"/>
|
||||
<path d="m 4 10 v 1 h 1 v -1 z m 0 1 h -1 v 1 h 1 z m 0 0"/>
|
||||
<path d="m 1 11 v 1 h 1 v -1 z m 1 1 v 1 h 1 v -1 z m 1 1 v 1 h 1 v -1 z m 1 0 h 1 v -1 h -1 z m 0 0" fill-opacity="0.501961"/>
|
||||
<path d="m 0 12 v 1 h 1 v -1 z m 1 1 v 1 h 1 v -1 z m 1 1 v 1 h 1 v -1 z m 1 1 v 1 h 1 v -1 z m 0 0" fill-opacity="0.34902"/>
|
||||
<path d="m 0 14 v 1 h 1 v -1 z m 1 1 v 1 h 1 v -1 z m 0 0" fill-opacity="0.101961"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.3 KiB |
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 7.5 3 c -3.578125 0 -6.5 2.921875 -6.5 6.5 c 0 1.6875 0.65625 3.222656 1.71875 4.382812 l -0.417969 0.398438 c -0.261719 0.25 -0.367187 0.621094 -0.28125 0.96875 c 0.085938 0.351562 0.355469 0.628906 0.703125 0.722656 c 0.347656 0.097656 0.71875 0 0.976563 -0.253906 l 0.589843 -0.578125 c 0.949219 0.542969 2.042969 0.859375 3.210938 0.859375 c 1.183594 0 2.296875 -0.324219 3.253906 -0.886719 l 0.507813 0.558594 c 0.234375 0.277344 0.601562 0.402344 0.960937 0.328125 c 0.355469 -0.074219 0.644532 -0.335938 0.753906 -0.683594 c 0.105469 -0.347656 0.015626 -0.726562 -0.238281 -0.988281 l -0.429687 -0.476563 c 1.046875 -1.15625 1.691406 -2.679687 1.691406 -4.351562 c 0 -3.578125 -2.921875 -6.5 -6.5 -6.5 z m 0 2 c 2.496094 0 4.5 2.003906 4.5 4.5 s -2.003906 4.5 -4.5 4.5 s -4.5 -2.003906 -4.5 -4.5 s 2.003906 -4.5 4.5 -4.5 z m -0.007812 0.992188 c -0.277344 0.003906 -0.496094 0.230468 -0.492188 0.507812 v 2.5 h -1.5 c -0.179688 -0.003906 -0.347656 0.09375 -0.4375 0.246094 c -0.09375 0.15625 -0.09375 0.351562 0 0.507812 c 0.089844 0.152344 0.257812 0.25 0.4375 0.246094 h 2 c 0.277344 0 0.5 -0.222656 0.5 -0.5 v -3 c 0.003906 -0.136719 -0.050781 -0.265625 -0.144531 -0.363281 c -0.097657 -0.09375 -0.226563 -0.148438 -0.363281 -0.144531 z m 0 0"/>
|
||||
<path d="m 2.109375 1.421875 c -1.144531 0.765625 -1.457031 2.320313 -0.6875 3.46875 l 4.15625 -2.78125 c -0.765625 -1.144531 -2.320313 -1.457031 -3.46875 -0.6875 z m 0 0"/>
|
||||
<path d="m 12.890625 1.421875 c 1.144531 0.765625 1.457031 2.320313 0.6875 3.46875 l -4.15625 -2.78125 c 0.765625 -1.144531 2.320313 -1.457031 3.46875 -0.6875 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.8 KiB |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 1 1 v 14 h 2 v -14 z m 2.976562 1.976562 v 4.023438 h 6.023438 v -4.023438 z m 0.023438 6.023438 v 4 h 10 v -4 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 286 B |
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 9.445312 0.046875 c -0.417968 -0.0117188 -0.824218 0.140625 -1.128906 0.421875 l -0.324218 0.289062 l -0.320313 -0.289062 c -1.597656 -1.46875 -3.773437 0.976562 -2.128906 2.390625 l 2.449219 2.183594 l 2.453124 -2.183594 c 1.109376 -0.953125 0.460938 -2.7734375 -1 -2.8125 z m 0 0"/>
|
||||
<path d="m 10.5 5 c -0.449219 0 -0.886719 0.054688 -1.304688 0.15625 c 0.40625 0.285156 0.789063 0.613281 1.128907 0.988281 c 0.253906 0.28125 0.476562 0.578125 0.671875 0.890625 c 1.707031 0.238282 3.003906 1.6875 3.003906 3.464844 c 0 1.945312 -1.554688 3.5 -3.5 3.5 s -3.5 -1.554688 -3.5 -3.5 c 0 -0.589844 0.144531 -1.140625 0.398438 -1.625 c -0.015626 -0.019531 -0.027344 -0.035156 -0.042969 -0.050781 c -0.457031 -0.503907 -1.085938 -0.796875 -1.75 -0.824219 c -0.386719 0.75 -0.605469 1.601562 -0.605469 2.5 c 0 3.027344 2.472656 5.5 5.5 5.5 s 5.5 -2.472656 5.5 -5.5 s -2.472656 -5.5 -5.5 -5.5 z m 0 0"/>
|
||||
<path d="m 5.5 16 c 0.449219 0 0.886719 -0.054688 1.304688 -0.15625 c -0.40625 -0.285156 -0.789063 -0.613281 -1.128907 -0.988281 c -0.253906 -0.277344 -0.476562 -0.578125 -0.671875 -0.890625 c -1.707031 -0.238282 -3.003906 -1.6875 -3.003906 -3.464844 c 0 -1.945312 1.554688 -3.5 3.5 -3.5 s 3.5 1.554688 3.5 3.5 c 0 0.589844 -0.144531 1.140625 -0.398438 1.628906 c 0.015626 0.015625 0.027344 0.03125 0.042969 0.046875 c 0.457031 0.503907 1.085938 0.796875 1.75 0.824219 c 0.386719 -0.75 0.605469 -1.601562 0.605469 -2.5 c 0 -3.027344 -2.472656 -5.5 -5.5 -5.5 s -5.5 2.472656 -5.5 5.5 s 2.472656 5.5 5.5 5.5 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.7 KiB |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 4 1 c -1.644531 0 -3 1.355469 -3 3 v 8 c 0 1.644531 1.355469 3 3 3 h 4 v -2 h -1 v -10 h 6 c -0.417969 -1.15625 -1.519531 -2 -2.8125 -2 z m 12 0 l -6 6 l 0.035156 4 l -1.0625 1.058594 v 2.941406 h 3.015625 l 1.011719 -1.019531 l 3 0.019531 z m -12 2 h 2 v 10 h -2 c -0.570312 0 -1 -0.429688 -1 -1 v -8 c 0 -0.570312 0.429688 -1 1 -1 z m 0 0"/>
|
||||
<path d="m 3 2 h 3 v 12 h -3 z m 0 0" fill-opacity="0.34902"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 600 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 4.035156 0.0117188 c -0.550781 0 -1 0.4492192 -1 1.0000002 v 2.175781 c -1.179687 0.410156 -2.023437 1.527344 -2.023437 2.847656 v 0.976563 h 2 v -0.976563 c 0 -0.566406 0.457031 -1.023437 1.023437 -1.023437 h 7.957032 c 0.566406 0 1.019531 0.457031 1.019531 1.023437 v 3.960938 c 0 0.5625 -0.453125 1.015625 -1.019531 1.015625 h -0.980469 v 2 h 0.980469 c 1.675781 0 3.019531 -1.34375 3.019531 -3.015625 v -3.960938 c 0 -1.3125 -0.832031 -2.425781 -2 -2.839844 v -2.183593 c 0 -0.550781 -0.445313 -1.0000002 -1 -1.0000002 c -0.550781 0 -1 0.4492192 -1 1.0000002 v 2 h -2 v -2 c 0 -0.550781 -0.445313 -1.0000002 -1 -1.0000002 c -0.550781 0 -1 0.4492192 -1 1.0000002 v 2 h -1.976563 v -2 c 0 -0.550781 -0.449218 -1.0000002 -1 -1.0000002 z m 0.976563 7.0000002 v 2 c -2.210938 0 -4 1.789062 -4 4 v 2 c 0 0.554687 0.449219 1 1 1 c 0.554687 0 1 -0.445313 1 -1 v -2 c 0 -1.097657 0.902343 -2 2 -2 v 2 h 1 v -0.003907 c 0.265625 0 0.519531 -0.101562 0.707031 -0.289062 l 2 -2 c 0.390625 -0.390625 0.390625 -1.023438 0 -1.414062 l -2 -2 c -0.1875 -0.183594 -0.441406 -0.289063 -0.707031 -0.285157 v -0.007812 z m 0 0" fill="#2e3436"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.2 KiB |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 4 1 c -0.410156 0 -0.773438 0.25 -0.925781 0.625 l -2 5 c -0.050781 0.121094 -0.074219 0.246094 -0.074219 0.375 v 7 s 0 2 2 2 h 10 s 2 0 2 -2 l 0.003906 -6.9375 c 0 -0.148438 -0.003906 -0.296875 -0.074218 -0.4375 l -2 -5 c -0.152344 -0.378906 -0.519532 -0.625 -0.929688 -0.625 z m 0.675781 2 h 6.644531 l 1.203126 3 h -9.050782 z m 2.324219 5 h 2 v 3 h 2 c 0 0.265625 -0.105469 0.519531 -0.292969 0.707031 l -2 2 c -0.390625 0.390625 -1.023437 0.390625 -1.414062 0 l -2 -2 c -0.183594 -0.1875 -0.285157 -0.4375 -0.285157 -0.699219 l -0.007812 -0.007812 h 2 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 732 B |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 5 0 c -1.644531 0 -3 1.355469 -3 3 v 2 h 2 v -2 c 0 -0.570312 0.429688 -1 1 -1 h 8 c 0.570312 0 1 0.429688 1 1 v 10 c 0 0.570312 -0.429688 1 -1 1 h -8 c -0.570312 0 -1 -0.429688 -1 -1 v -2 h -2 v 2 c 0 1.644531 1.355469 3 3 3 h 8 c 1.644531 0 3 -1.355469 3 -3 v -10 c 0 -1.644531 -1.355469 -3 -3 -3 z m 0 0"/>
|
||||
<path d="m 6 4 v 1 c 0 0.257812 0.128906 0.527344 0.3125 0.71875 l 1.28125 1.28125 h -7.59375 v 2 h 7.59375 l -1.28125 1.28125 c -0.183594 0.191406 -0.3125 0.410156 -0.3125 0.71875 v 1 h 1 c 0.308594 0 0.550781 -0.089844 0.75 -0.28125 l 3.65625 -3.71875 l -3.65625 -3.71875 c -0.199219 -0.191406 -0.441406 -0.28125 -0.75 -0.28125 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 844 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 12 7 h -1 c -0.257812 0 -0.53125 0.128906 -0.71875 0.3125 l -1.28125 1.28125 v -8.59375 h -2 v 8.59375 l -1.28125 -1.28125 c -0.191406 -0.183594 -0.460938 -0.3125 -0.71875 -0.3125 h -1 v 1 c 0 0.308594 0.089844 0.550781 0.28125 0.75 l 3.71875 3.65625 l 3.71875 -3.65625 c 0.191406 -0.199219 0.28125 -0.441406 0.28125 -0.75 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 498 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 9 4 v 1 c 0 0.257812 -0.128906 0.53125 -0.3125 0.71875 l -1.28125 1.28125 h 8.59375 v 2 h -8.59375 l 1.28125 1.28125 c 0.183594 0.191406 0.3125 0.460938 0.3125 0.71875 v 1 h -1 c -0.308594 0 -0.550781 -0.089844 -0.75 -0.28125 l -3.65625 -3.71875 l 3.65625 -3.71875 c 0.199219 -0.191406 0.441406 -0.28125 0.75 -0.28125 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 493 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 7 4 v 1 c 0 0.257812 0.128906 0.53125 0.3125 0.71875 l 1.28125 1.28125 h -8.59375 v 2 h 8.59375 l -1.28125 1.28125 c -0.183594 0.191406 -0.3125 0.460938 -0.3125 0.71875 v 1 h 1 c 0.308594 0 0.550781 -0.089844 0.75 -0.28125 l 3.65625 -3.71875 l -3.65625 -3.71875 c -0.199219 -0.191406 -0.441406 -0.28125 -0.75 -0.28125 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 493 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 12 9 h -1 c -0.257812 0 -0.53125 -0.128906 -0.71875 -0.3125 l -1.28125 -1.28125 v 8.59375 h -2 v -8.59375 l -1.28125 1.28125 c -0.191406 0.183594 -0.460938 0.3125 -0.71875 0.3125 h -1 v -1 c 0 -0.308594 0.089844 -0.550781 0.28125 -0.75 l 3.71875 -3.65625 l 3.71875 3.65625 c 0.191406 0.199219 0.28125 0.441406 0.28125 0.75 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 498 B |
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 4 3 v 10 l -1 -1 h 10.078125 c 0.550781 0 1 0.449219 1 1 s -0.449219 1 -1 1 h -10.078125 c -0.550781 0 -1 -0.449219 -1 -1 v -10 c 0 -0.550781 0.449219 -1 1 -1 s 1 0.449219 1 1 z m 0 0"/>
|
||||
<path d="m 2.449219 12.296875 l 9.835937 -10 c 0.390625 -0.390625 1.023438 -0.398437 1.417969 -0.011719 c 0.390625 0.390625 0.398437 1.023438 0.011719 1.417969 l -9.839844 10 c -0.386719 0.390625 -1.019531 0.398437 -1.414062 0.011719 c -0.390626 -0.390625 -0.398438 -1.023438 -0.011719 -1.417969 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 647 B |
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 12 3 v 10 l 1 -1 h -10.078125 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 10.078125 c 0.550781 0 1 -0.449219 1 -1 v -10 c 0 -0.550781 -0.449219 -1 -1 -1 s -1 0.449219 -1 1 z m 0 0"/>
|
||||
<path d="m 13.550781 12.296875 l -9.835937 -10 c -0.390625 -0.390625 -1.023438 -0.398437 -1.417969 -0.011719 c -0.390625 0.390625 -0.398437 1.023438 -0.011719 1.417969 l 9.839844 10 c 0.386719 0.390625 1.019531 0.398437 1.414062 0.011719 c 0.390626 -0.390625 0.398438 -1.023438 0.011719 -1.417969 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 650 B |
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 14.292969 7.292969 l -7 7 h 1.414062 l -7 -7 c -0.390625 -0.390625 -1.023437 -0.390625 -1.414062 0 c -0.3906252 0.390625 -0.3906252 1.023437 0 1.414062 l 7 7 c 0.390625 0.390625 1.023437 0.390625 1.414062 0 l 7 -7 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 s -1.023437 -0.390625 -1.414062 0 z m 0 0"/>
|
||||
<path d="m 9 15 v -14 c 0 -0.550781 -0.449219 -1 -1 -1 s -1 0.449219 -1 1 v 14 c 0 0.550781 0.449219 1 1 1 s 1 -0.449219 1 -1 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 601 B |
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8.707031 1.707031 l -7 7 v -1.414062 l 7 7 c 0.390625 0.390625 0.390625 1.023437 0 1.414062 s -1.023437 0.390625 -1.414062 0 l -7 -7 c -0.3906252 -0.390625 -0.3906252 -1.023437 0 -1.414062 l 7 -7 c 0.390625 -0.3906252 1.023437 -0.3906252 1.414062 0 c 0.390625 0.390625 0.390625 1.023437 0 1.414062 z m 0 0"/>
|
||||
<path d="m 1 7 h 14 c 0.550781 0 1 0.449219 1 1 s -0.449219 1 -1 1 h -14 c -0.550781 0 -1 -0.449219 -1 -1 s 0.449219 -1 1 -1 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 598 B |
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 7.292969 1.707031 l 7 7 v -1.414062 l -7 7 c -0.390625 0.390625 -0.390625 1.023437 0 1.414062 s 1.023437 0.390625 1.414062 0 l 7 -7 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 l -7 -7 c -0.390625 -0.3906252 -1.023437 -0.3906252 -1.414062 0 c -0.390625 0.390625 -0.390625 1.023437 0 1.414062 z m 0 0"/>
|
||||
<path d="m 15 7 h -14 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 14 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 600 B |
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 4 13 v -10 l -1 1 h 10.078125 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 h -10.078125 c -0.550781 0 -1 0.449219 -1 1 v 10 c 0 0.550781 0.449219 1 1 1 s 1 -0.449219 1 -1 z m 0 0"/>
|
||||
<path d="m 2.449219 3.703125 l 9.835937 10 c 0.390625 0.390625 1.023438 0.398437 1.417969 0.011719 c 0.390625 -0.390625 0.398437 -1.023438 0.011719 -1.417969 l -9.839844 -10 c -0.386719 -0.390625 -1.019531 -0.398437 -1.414062 -0.011719 c -0.390626 0.390625 -0.398438 1.023438 -0.011719 1.417969 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 647 B |
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 12 13 v -10 l 1 1 h -10.078125 c -0.550781 0 -1 -0.449219 -1 -1 s 0.449219 -1 1 -1 h 10.078125 c 0.550781 0 1 0.449219 1 1 v 10 c 0 0.550781 -0.449219 1 -1 1 s -1 -0.449219 -1 -1 z m 0 0"/>
|
||||
<path d="m 13.550781 3.703125 l -9.835937 10 c -0.390625 0.390625 -1.023438 0.398437 -1.417969 0.011719 c -0.390625 -0.390625 -0.398437 -1.023438 -0.011719 -1.417969 l 9.839844 -10 c 0.386719 -0.390625 1.019531 -0.398437 1.414062 -0.011719 c 0.390626 0.390625 0.398438 1.023438 0.011719 1.417969 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 650 B |
@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 14.292969 8.707031 l -7 -7 h 1.414062 l -7 7 c -0.390625 0.390625 -1.023437 0.390625 -1.414062 0 c -0.3906252 -0.390625 -0.3906252 -1.023437 0 -1.414062 l 7 -7 c 0.390625 -0.3906252 1.023437 -0.3906252 1.414062 0 l 7 7 c 0.390625 0.390625 0.390625 1.023437 0 1.414062 s -1.023437 0.390625 -1.414062 0 z m 0 0"/>
|
||||
<path d="m 9 1 v 14 c 0 0.550781 -0.449219 1 -1 1 s -1 -0.449219 -1 -1 v -14 c 0 -0.550781 0.449219 -1 1 -1 s 1 0.449219 1 1 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 601 B |
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 10.292969 7.292969 l -3 3 h 1.414062 l -3 -3 c -0.390625 -0.390625 -1.023437 -0.390625 -1.414062 0 s -0.390625 1.023437 0 1.414062 l 3 3 c 0.390625 0.390625 1.023437 0.390625 1.414062 0 l 3 -3 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 s -1.023437 -0.390625 -1.414062 0 z m 0 0"/>
|
||||
<path d="m 9 11 v -6 c 0 -0.550781 -0.449219 -1 -1 -1 s -1 0.449219 -1 1 v 6 c 0 0.550781 0.449219 1 1 1 s 1 -0.449219 1 -1 z m 0 0"/>
|
||||
<path d="m 2 8 c 0 -3.308594 2.691406 -6 6 -6 s 6 2.691406 6 6 s -2.691406 6 -6 6 s -6 -2.691406 -6 -6 z m 14 0 c 0 -4.421875 -3.578125 -8 -8 -8 s -8 3.578125 -8 8 s 3.578125 8 8 8 s 8 -3.578125 8 -8 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 793 B |
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8.707031 5.707031 l -3 3 v -1.414062 l 3 3 c 0.390625 0.390625 0.390625 1.023437 0 1.414062 s -1.023437 0.390625 -1.414062 0 l -3 -3 c -0.390625 -0.390625 -0.390625 -1.023437 0 -1.414062 l 3 -3 c 0.390625 -0.390625 1.023437 -0.390625 1.414062 0 s 0.390625 1.023437 0 1.414062 z m 0 0"/>
|
||||
<path d="m 5 7 h 6 c 0.550781 0 1 0.449219 1 1 s -0.449219 1 -1 1 h -6 c -0.550781 0 -1 -0.449219 -1 -1 s 0.449219 -1 1 -1 z m 0 0"/>
|
||||
<path d="m 8 14 c 3.308594 0 6 -2.691406 6 -6 s -2.691406 -6 -6 -6 s -6 2.691406 -6 6 s 2.691406 6 6 6 z m 0 -14 c 4.421875 0 8 3.578125 8 8 s -3.578125 8 -8 8 s -8 -3.578125 -8 -8 s 3.578125 -8 8 -8 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 789 B |
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 7.292969 5.707031 l 3 3 v -1.414062 l -3 3 c -0.390625 0.390625 -0.390625 1.023437 0 1.414062 s 1.023437 0.390625 1.414062 0 l 3 -3 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 l -3 -3 c -0.390625 -0.390625 -1.023437 -0.390625 -1.414062 0 s -0.390625 1.023437 0 1.414062 z m 0 0"/>
|
||||
<path d="m 11 7 h -6 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 h 6 c 0.550781 0 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 0 0"/>
|
||||
<path d="m 8 14 c -3.308594 0 -6 -2.691406 -6 -6 s 2.691406 -6 6 -6 s 6 2.691406 6 6 s -2.691406 6 -6 6 z m 0 -14 c -4.421875 0 -8 3.578125 -8 8 s 3.578125 8 8 8 s 8 -3.578125 8 -8 s -3.578125 -8 -8 -8 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 794 B |
@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 10.292969 8.707031 l -3 -3 h 1.414062 l -3 3 c -0.390625 0.390625 -1.023437 0.390625 -1.414062 0 s -0.390625 -1.023437 0 -1.414062 l 3 -3 c 0.390625 -0.390625 1.023437 -0.390625 1.414062 0 l 3 3 c 0.390625 0.390625 0.390625 1.023437 0 1.414062 s -1.023437 0.390625 -1.414062 0 z m 0 0"/>
|
||||
<path d="m 9 5 v 6 c 0 0.550781 -0.449219 1 -1 1 s -1 -0.449219 -1 -1 v -6 c 0 -0.550781 0.449219 -1 1 -1 s 1 0.449219 1 1 z m 0 0"/>
|
||||
<path d="m 2 8 c 0 3.308594 2.691406 6 6 6 s 6 -2.691406 6 -6 s -2.691406 -6 -6 -6 s -6 2.691406 -6 6 z m 14 0 c 0 4.421875 -3.578125 8 -8 8 s -8 -3.578125 -8 -8 s 3.578125 -8 8 -8 s 8 3.578125 8 8 z m 0 0"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 788 B |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 10 1 v 1 c 0 0.257812 0.128906 0.527344 0.3125 0.71875 l 1.28125 1.28125 h -3.363281 c 1.378906 0.074219 2.605469 0.847656 3.269531 2 h 0.125 l -0.074219 0.078125 c 0.269531 0.496094 0.449219 1.046875 0.484375 1.648437 v 0.054688 c 0 0.265625 -0.019531 0.515625 -0.050781 0.761719 l 3.421875 -3.542969 l -3.65625 -3.71875 c -0.199219 -0.191406 -0.441406 -0.28125 -0.75 -0.28125 z m -3 3 c -0.292969 -0.003906 -0.558594 0.148438 -0.746094 0.371094 c 0.414063 -0.199219 0.871094 -0.320313 1.347656 -0.371094 z m -2.929688 3.40625 l -3.476562 3.59375 l 3.65625 3.71875 c 0.199219 0.191406 0.441406 0.28125 0.75 0.28125 h 1 v -1 c 0 -0.257812 -0.128906 -0.527344 -0.3125 -0.71875 l -1.28125 -1.28125 h 1.96875 c -0.207031 -0.292969 -0.34375 -0.632812 -0.335938 -1.039062 c 0 -0.355469 0.074219 -0.671876 0.179688 -0.960938 h -1.84375 l 0.980469 -1.03125 h -1.265625 l -0.050782 -0.941406 c -0.015624 -0.214844 0.007813 -0.417969 0.027344 -0.621094 z m 0 0" fill-opacity="0.34902"/>
|
||||
<path d="m 7.847656 4.96875 c 1.644532 -0.09375 3.097656 1.171875 3.1875 2.8125 c 0 1.402344 -0.378906 1.921875 -1.59375 2.84375 c -0.191406 0.144531 -0.324218 0.25 -0.375 0.3125 c -0.050781 0.0625 -0.03125 0.03125 -0.03125 0.03125 c 0.007813 0.527344 -0.472656 1 -1 1 s -1.007812 -0.472656 -1 -1 c 0 -0.503906 0.226563 -0.945312 0.46875 -1.25 c 0.246094 -0.308594 0.492188 -0.515625 0.71875 -0.6875 c 0.203125 -0.160156 0.460938 -0.382812 0.6875 -0.65625 c 0.09375 -0.113281 0.128906 -0.308594 0.125 -0.4375 v -0.03125 c -0.03125 -0.5625 -0.5 -0.96875 -1.0625 -0.9375 s -0.96875 0.4375 -0.9375 1 h -2 c -0.089844 -1.640625 1.171875 -2.90625 2.8125 -3 z m 0.1875 8 c 0.550782 0 1 0.449219 1 1 s -0.449218 1 -1 1 c -0.550781 0 -1 -0.449219 -1 -1 s 0.449219 -1 1 -1 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.9 KiB |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 7.125 1.011719 c -2.761719 -0.0625 -5.054688 2.125 -5.117188 4.890625 c -0.007812 0.03125 -0.007812 0.0625 -0.007812 0.097656 v 0.007812 c 0.003906 0.550782 0.449219 0.992188 1 0.992188 s 0.996094 -0.441406 1 -0.992188 v -0.007812 c 0 -1.476562 1.078125 -2.730469 2.535156 -2.953125 c 1.460938 -0.234375 2.871094 0.632813 3.320313 2.042969 c 0.457031 1.40625 -0.179688 2.933594 -1.503907 3.597656 l 0.074219 -0.035156 c -1.039062 0.421875 -1.628906 1.25 -1.921875 1.941406 c -0.292968 0.695312 -0.421875 1.246094 -0.644531 1.59375 c -0.355469 0.558594 -0.859375 0.683594 -1.246094 0.609375 c -0.378906 -0.074219 -0.613281 -0.21875 -0.613281 -0.789063 v -1 c 0 -0.003906 0 -0.003906 0 -0.007812 c 0 -0.550781 -0.449219 -1 -1 -1 s -1 0.449219 -1 1 v 0.007812 v 1 c 0 1.429688 1.054688 2.527344 2.238281 2.753907 c 1.183594 0.226562 2.53125 -0.289063 3.304688 -1.496094 c 0.476562 -0.742187 0.613281 -1.441406 0.800781 -1.890625 c 0.191406 -0.453125 0.300781 -0.652344 0.835938 -0.871094 l 0.035156 -0.015625 l 0.039062 -0.019531 c 2.195313 -1.109375 3.257813 -3.652344 2.503906 -5.996094 c -0.652343 -2.015625 -2.507812 -3.40625 -4.632812 -3.464844 z m 5.757812 0.175781 c -0.199218 -0.003906 -0.390624 0.054688 -0.558593 0.160156 c -0.460938 0.300782 -0.59375 0.921875 -0.292969 1.386719 c 1.292969 1.988281 1.292969 4.542969 0 6.53125 c -0.300781 0.464844 -0.167969 1.085937 0.292969 1.386719 c 0.464843 0.296875 1.082031 0.167968 1.382812 -0.292969 c 1.722657 -2.648437 1.722657 -6.070313 0 -8.71875 c -0.179687 -0.277344 -0.488281 -0.449219 -0.824219 -0.453125 z m -5.882812 2.820312 c -1.105469 0 -2 0.894532 -2 2 c 0 1.105469 0.894531 2 2 2 s 2 -0.894531 2 -2 c 0 -1.105468 -0.894531 -2 -2 -2 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.8 KiB |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 1 1 v 1 h 1 v 1 h -1 v 5 h 1 v 1 h -1 v 1 h 14 v -3 h -1 v -3 h 1 v -3 z m 2 1 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m -11 2 h 3 v 3 h -3 z m 4 0 h 3 v 3 h -3 z m 4 0 h 3 v 3 h -3 z m -7 4 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 2 0 h 1 v 1 h -1 z m 0 0"/>
|
||||
<path d="m 1 9.5 v 5.5 h 14 v -5.5 z m 6 0.5 h 2 v 1.5 h 1 v 0.5 h 1 v -1.5 h 1 v 0.5 h 1 v 0.5 h 1.5 v 1 h -1.5 v 1.5 h -1 v -0.5 h -1 v -0.5 h -1 v 1 h -1 v -1 h -1 v 1 h -1 v -1 h -2 v 1 h -1 v -1 h -2.5 v -1 h 1.5 v -1 h 1 v -1 h 1 v 2 h 1 v -1 h 1 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 857 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 1.972656 3.773438 c -0.132812 0.007812 -0.257812 0.070312 -0.34375 0.167968 c -1.066406 1.210938 -1.628906 2.585938 -1.628906 3.984375 c 0 1.402344 0.558594 2.8125 1.617188 4.105469 c 0.175781 0.214844 0.488281 0.246094 0.703124 0.070312 c 0.214844 -0.175781 0.246094 -0.488281 0.070313 -0.703124 c -0.945313 -1.152344 -1.390625 -2.332032 -1.390625 -3.472657 c 0 -1.136719 0.441406 -2.261719 1.378906 -3.324219 c 0.089844 -0.097656 0.132813 -0.226562 0.125 -0.359374 c -0.007812 -0.132813 -0.070312 -0.257813 -0.167968 -0.347657 c -0.101563 -0.085937 -0.230469 -0.128906 -0.363282 -0.121093 z m 11.984375 0 c -0.105469 0.011718 -0.207031 0.054687 -0.285156 0.121093 c -0.101563 0.089844 -0.160156 0.214844 -0.167969 0.347657 c -0.007812 0.132812 0.035156 0.261718 0.125 0.363281 c 0.933594 1.058593 1.375 2.183593 1.375 3.320312 c 0 1.140625 -0.445312 2.320313 -1.386718 3.472657 c -0.175782 0.214843 -0.144532 0.527343 0.070312 0.703124 c 0.210938 0.175782 0.527344 0.144532 0.703125 -0.070312 c 1.058594 -1.292969 1.613281 -2.703125 1.613281 -4.101562 c 0 -1.402344 -0.558594 -2.777344 -1.625 -3.988282 c -0.109375 -0.121094 -0.265625 -0.183594 -0.421875 -0.167968 z m -8.101562 0.164062 c -0.480469 0.023438 -0.855469 0.417969 -0.855469 0.898438 v 6.359374 c 0 0.3125 0.167969 0.601563 0.441406 0.753907 c 0.273438 0.148437 0.605469 0.144531 0.871094 -0.023438 l 5.265625 -3.246093 c 0.238281 -0.144532 0.378906 -0.402344 0.382813 -0.679688 c 0 -0.277344 -0.144532 -0.535156 -0.378907 -0.683594 l -5.203125 -3.246094 c -0.15625 -0.097656 -0.339844 -0.144531 -0.523437 -0.132812 z m -2.359375 1.050781 c -0.160156 -0.003906 -0.3125 0.066407 -0.410156 0.195313 c -0.679688 0.886718 -1.070313 1.824218 -1.078126 2.792968 c -0.011718 0.964844 0.363282 1.921876 1.085938 2.835938 c 0.167969 0.214844 0.484375 0.25 0.699219 0.078125 c 0.214843 -0.167969 0.253906 -0.484375 0.082031 -0.699219 c -0.617188 -0.777344 -0.875 -1.5 -0.871094 -2.207031 c 0.007813 -0.703125 0.289063 -1.425781 0.875 -2.191406 c 0.167969 -0.21875 0.128906 -0.53125 -0.09375 -0.703125 c -0.082031 -0.0625 -0.183594 -0.097656 -0.289062 -0.101563 z m 9.015625 0 c -0.109375 0.003907 -0.210938 0.039063 -0.292969 0.105469 c -0.21875 0.164062 -0.261719 0.480469 -0.09375 0.699219 c 0.585938 0.765625 0.867188 1.488281 0.875 2.195312 c 0.007812 0.703125 -0.253906 1.425781 -0.867188 2.203125 c -0.171874 0.214844 -0.136718 0.53125 0.082032 0.703125 c 0.214844 0.167969 0.527344 0.132813 0.699218 -0.082031 c 0.722657 -0.914062 1.097657 -1.871094 1.085938 -2.835938 c -0.011719 -0.96875 -0.398438 -1.90625 -1.078125 -2.792968 c -0.097656 -0.128906 -0.253906 -0.199219 -0.410156 -0.195313 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.8 KiB |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8 1 c -1.644531 0 -3 1.355469 -3 3 v 4.339844 c -0.457031 -0.214844 -0.964844 -0.339844 -1.5 -0.339844 c -1.921875 0 -3.5 1.578125 -3.5 3.5 s 1.578125 3.5 3.5 3.5 c 1.914062 0 3.492188 -1.570312 3.5 -3.484375 c 0 -0.003906 0 -0.011719 0 -0.015625 v -7.5 c 0 -0.5625 0.4375 -1 1 -1 h 4 c 0.5625 0 1 0.4375 1 1 v 4.339844 c -0.457031 -0.214844 -0.964844 -0.339844 -1.5 -0.339844 c -1.921875 0 -3.5 1.578125 -3.5 3.5 s 1.578125 3.5 3.5 3.5 s 3.5 -1.578125 3.5 -3.5 v -7.5 c 0 -1.644531 -1.355469 -3 -3 -3 z m -4.5 9 c 0.839844 0 1.5 0.660156 1.5 1.5 v 0.015625 c -0.007812 0.832031 -0.664062 1.484375 -1.5 1.484375 c -0.839844 0 -1.5 -0.660156 -1.5 -1.5 s 0.660156 -1.5 1.5 -1.5 z m 8 0 c 0.839844 0 1.5 0.660156 1.5 1.5 s -0.660156 1.5 -1.5 1.5 s -1.5 -0.660156 -1.5 -1.5 s 0.660156 -1.5 1.5 -1.5 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 970 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 3 0 c -1.644531 0 -3 1.355469 -3 3 v 2 c 0 1.644531 1.355469 3 3 3 h 8 c 0.027344 0 0.046875 0 0.074219 -0.003906 c 0.210937 0.863281 0.988281 1.5 1.917969 1.503906 v 0.496094 h -0.007813 c -0.003906 0.546875 -0.449219 0.996094 -1 0.992187 l -8.984375 0.011719 c -1.105469 0.003906 -1.996094 0.894531 -1.996094 1.996094 c 0 1.105468 0.890625 2 1.996094 1.996094 h 7 c 2.207031 0 3.988281 -1.785157 3.988281 -3.992188 v -1.765625 c 0.597657 -0.339844 0.996094 -0.984375 0.996094 -1.722656 c 0 -0.773438 -0.441406 -1.441407 -1.085937 -1.769531 c 0.070312 -0.199219 0.101562 -0.425782 0.101562 -0.742188 v -2 c 0 -1.644531 -1.355469 -3 -3 -3 z m 0 2 h 8 c 0.570312 0 1 0.429688 1 1 v 2 c 0 0.570312 -0.429688 1 -1 1 h -8 c -0.570312 0 -1 -0.429688 -1 -1 v -2 c 0 -0.570312 0.429688 -1 1 -1 z m 0.945312 1 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 c 0.554688 0 1 -0.449219 1 -1 s -0.445312 -1 -1 -1 z m 3.003907 0 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 c 0.554687 0 1 -0.449219 1 -1 s -0.445313 -1 -1 -1 z m 2.96875 0 c -0.550781 0 -1 0.449219 -1 1 s 0.449219 1 1 1 s 1 -0.449219 1 -1 s -0.449219 -1 -1 -1 z m 3.082031 3.53125 c 0.542969 0 0.984375 0.441406 0.984375 0.984375 c 0 0.539063 -0.441406 0.984375 -0.984375 0.984375 s -0.988281 -0.445312 -0.988281 -0.984375 c 0 -0.542969 0.445312 -0.984375 0.988281 -0.984375 z m -0.113281 5.246094 c -0.339844 1.273437 -1.503907 2.210937 -2.886719 2.214844 h -7 c -0.546875 0 -0.996094 -0.445313 -0.996094 -0.992188 c 0 -0.550781 0.449219 -0.996094 0.996094 -0.996094 l 8.980469 -0.011718 c 0.328125 0 0.636719 -0.078126 0.90625 -0.214844 z m 0 0" fill="#2e3436"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.7 KiB |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 7 1 v 6 h -6 v 2 h 6 v 6 h 2 v -6 h 6 v -2 h -6 v -6 z m 0 0"/>
|
||||
<path d="m 7 1 v 6 h -6 v 2 h 6 v 6 h 2 v -6 h 6 v -2 h -6 v -6 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 332 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 3 1 v 10 h -2 v 2 h 2 v 2 h 2 v -2 h 10 v -2 h -10 v -10 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 232 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8 0 l -7 3 v 2 h 14 v -2 z m 0 2 l 4.984375 1.992188 h -9.96875 z m -6 4 v 6 h 2 v -6 z m 5 0 v 6 h 2 v -6 z m 5 0 v 6 h 2 v -6 z m -11 7 v 2 h 14 v -2 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 327 B |
@ -1,9 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 0 0.972656 v 2 h 0.0117188 v 4.035156 h 13.9921872 l 0.007813 9 h 2 l -0.011719 -11.988281 c 0 -1.644531 -1.355469 -3.046875 -3 -3.046875 z m 12.457031 2.027344 c 0.828125 0 1.5 0.675781 1.5 1.507812 c 0 0.832032 -0.671875 1.503907 -1.5 1.503907 s -1.5 -0.671875 -1.5 -1.503907 c 0 -0.832031 0.671875 -1.507812 1.5 -1.507812 z m 0 0"/>
|
||||
<path d="m 15 12 h -14.9882812 v -5.980469 h 14.9882812 z m 0 0" fill-opacity="0.34902"/>
|
||||
<path d="m -0.0351562 12 v 1 h 15.0351562 v -1 z m 0 0"/>
|
||||
</g>
|
||||
<path d="m 7 8 h 4 c 0.550781 0 1 0.449219 1 1 v 1 c 0 0.550781 -0.449219 1 -1 1 h -4 c -0.550781 0 -1 -0.449219 -1 -1 v -1 c 0 -0.550781 0.449219 -1 1 -1 z m 0 0" fill="#212121"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 870 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 4.929688 0.00390625 c -0.085938 0.01171875 -0.167969 0.04687495 -0.234376 0.10156275 c -0.363281 0.28125 -0.667968 0.628906 -0.695312 1.101562 c -0.023438 0.472657 0.277344 0.882813 0.707031 1.199219 c 0.292969 0.214844 0.292969 0.304688 0.292969 0.332031 c -0.003906 0.027344 -0.066406 0.175781 -0.3125 0.367188 c -0.101562 0.085937 -0.167969 0.203125 -0.183594 0.335937 c -0.015625 0.132813 0.019532 0.265625 0.101563 0.371094 c 0.085937 0.101562 0.203125 0.167969 0.335937 0.183594 c 0.132813 0.015625 0.265625 -0.019532 0.371094 -0.101563 c 0.347656 -0.277343 0.652344 -0.613281 0.6875 -1.085937 c 0.03125 -0.472656 -0.265625 -0.894532 -0.707031 -1.214844 c -0.285157 -0.210938 -0.292969 -0.308594 -0.292969 -0.335938 c 0 -0.027343 0.054688 -0.167968 0.304688 -0.363281 c 0.21875 -0.167969 0.257812 -0.484375 0.089843 -0.699219 c -0.082031 -0.1054682 -0.199219 -0.1757808 -0.332031 -0.19140575 c -0.042969 -0.00390625 -0.085938 -0.00390625 -0.132812 0 z m 2 0 c -0.085938 0.01171875 -0.167969 0.04687495 -0.234376 0.10156275 c -0.363281 0.28125 -0.667968 0.628906 -0.695312 1.101562 c -0.023438 0.472657 0.277344 0.882813 0.707031 1.199219 c 0.292969 0.214844 0.292969 0.304688 0.292969 0.332031 c -0.003906 0.027344 -0.066406 0.175781 -0.3125 0.367188 c -0.101562 0.085937 -0.167969 0.203125 -0.183594 0.335937 c -0.015625 0.132813 0.019532 0.265625 0.101563 0.371094 c 0.085937 0.101562 0.203125 0.167969 0.335937 0.183594 c 0.132813 0.015625 0.265625 -0.019532 0.371094 -0.101563 c 0.347656 -0.277343 0.652344 -0.613281 0.6875 -1.085937 c 0.03125 -0.472656 -0.265625 -0.894532 -0.707031 -1.214844 c -0.285157 -0.210938 -0.292969 -0.308594 -0.292969 -0.335938 c 0 -0.027343 0.054688 -0.167968 0.304688 -0.363281 c 0.21875 -0.167969 0.257812 -0.484375 0.089843 -0.699219 c -0.082031 -0.1054682 -0.199219 -0.1757808 -0.332031 -0.19140575 c -0.042969 -0.00390625 -0.085938 -0.00390625 -0.132812 0 z m 2 0 c -0.085938 0.01171875 -0.167969 0.04687495 -0.234376 0.10156275 c -0.363281 0.28125 -0.667968 0.628906 -0.695312 1.101562 c -0.023438 0.472657 0.277344 0.882813 0.707031 1.199219 c 0.292969 0.214844 0.292969 0.304688 0.292969 0.332031 c -0.003906 0.027344 -0.066406 0.175781 -0.3125 0.367188 c -0.101562 0.085937 -0.167969 0.203125 -0.183594 0.335937 c -0.015625 0.132813 0.019532 0.265625 0.101563 0.371094 c 0.085937 0.101562 0.203125 0.167969 0.335937 0.183594 c 0.132813 0.015625 0.265625 -0.019532 0.371094 -0.101563 c 0.347656 -0.277343 0.652344 -0.613281 0.6875 -1.085937 c 0.03125 -0.472656 -0.265625 -0.894532 -0.707031 -1.214844 c -0.285157 -0.210938 -0.292969 -0.308594 -0.292969 -0.335938 c 0 -0.027343 0.054688 -0.167968 0.304688 -0.363281 c 0.21875 -0.167969 0.257812 -0.484375 0.089843 -0.699219 c -0.082031 -0.1054682 -0.199219 -0.1757808 -0.332031 -0.19140575 c -0.042969 -0.00390625 -0.085938 -0.00390625 -0.132812 0 z m 2 0 c -0.085938 0.01171875 -0.167969 0.04687495 -0.234376 0.10156275 c -0.363281 0.28125 -0.667968 0.628906 -0.695312 1.101562 c -0.023438 0.472657 0.277344 0.882813 0.707031 1.199219 c 0.292969 0.214844 0.292969 0.304688 0.292969 0.332031 c -0.003906 0.027344 -0.066406 0.175781 -0.3125 0.367188 c -0.101562 0.085937 -0.167969 0.203125 -0.183594 0.335937 c -0.015625 0.132813 0.019532 0.265625 0.101563 0.371094 c 0.085937 0.101562 0.203125 0.167969 0.335937 0.183594 c 0.132813 0.015625 0.265625 -0.019532 0.371094 -0.101563 c 0.347656 -0.277343 0.652344 -0.613281 0.6875 -1.085937 c 0.03125 -0.472656 -0.265625 -0.894532 -0.707031 -1.214844 c -0.285157 -0.210938 -0.292969 -0.308594 -0.292969 -0.335938 c 0 -0.027343 0.054688 -0.167968 0.304688 -0.363281 c 0.21875 -0.167969 0.257812 -0.484375 0.089843 -0.699219 c -0.082031 -0.1054682 -0.199219 -0.1757808 -0.332031 -0.19140575 c -0.042969 -0.00390625 -0.085938 -0.00390625 -0.132812 0 z m -8.929688 4.99609375 c 0.003906 2.050781 1.054688 3.957031 2.789062 5.050781 l -1.726562 4.597657 c -0.191406 0.515624 0.070312 1.09375 0.585938 1.289062 c 0.515624 0.191406 1.09375 -0.070312 1.289062 -0.585938 l 0.503906 -1.351562 h 5.113282 l 0.507812 1.351562 c 0.195312 0.515626 0.773438 0.777344 1.289062 0.585938 c 0.515626 -0.195312 0.777344 -0.773438 0.585938 -1.289062 l -1.726562 -4.597657 c 1.734374 -1.09375 2.785156 -3 2.789062 -5.050781 z m 4.632812 5.832031 c 0.445313 0.109375 0.90625 0.164063 1.367188 0.167969 c 0.460938 -0.003906 0.921875 -0.058594 1.367188 -0.167969 l 0.8125 2.167969 h -4.363282 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 4.5 KiB |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8 0 c -4.40625 0 -8 3.59375 -8 8 s 3.59375 8 8 8 s 8 -3.59375 8 -8 s -3.59375 -8 -8 -8 z m 0.46875 2.019531 c 2.953125 0.226563 5.289062 2.566407 5.511719 5.519531 c -2.074219 0.15625 -3.644531 0.804688 -4.71875 1.941407 c -1.054688 1.113281 -1.585938 2.648437 -1.722657 4.5 c -2.953124 -0.222657 -5.292968 -2.558594 -5.519531 -5.511719 c 2.058594 -0.125 3.625 -0.65625 4.710938 -1.738281 c 1.082031 -1.085938 1.613281 -2.652344 1.738281 -4.710938 z m -1 0.003907 c -0.125 1.867187 -0.601562 3.152343 -1.449219 3.996093 c -0.84375 0.847657 -2.128906 1.324219 -3.996093 1.449219 c 0.253906 -2.898438 2.546874 -5.191406 5.445312 -5.445312 z m 6.507812 6.519531 c -0.257812 2.890625 -2.542968 5.175781 -5.433593 5.433593 c 0.132812 -1.652343 0.605469 -2.921874 1.445312 -3.808593 c 0.855469 -0.910157 2.136719 -1.476563 3.988281 -1.625 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1008 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 5.46875 0 c -0.492188 0 -0.796875 0.214844 -1.03125 0.457031 c -0.234375 0.238281 -0.4375 0.554688 -0.4375 1.027344 v 0.515625 h -2 v 14 h 12 v -14 h -2 v -0.40625 l -0.003906 -0.027344 c -0.023438 -0.429687 -0.179688 -0.734375 -0.414063 -1.011718 c -0.234375 -0.277344 -0.621093 -0.585938 -1.199219 -0.55078175 l 0.054688 -0.00390625 z m 0.53125 2 h 4 v 2 h 2 v 10 h -8 v -10 h 2 z m -1 3 v 2 h 6 v -2 z m 0 3 v 2 h 6 v -2 z m 0 3 v 2 h 6 v -2 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 620 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 0 3 v 11 h 2 v -2 h 12 v 2 h 2 v -7 c 0 -1.109375 -0.890625 -2 -2 -2 h -6 v 4 h -6 v -6 z m 5 1 c -1.105469 0 -2 0.894531 -2 2 s 0.894531 2 2 2 s 2 -0.894531 2 -2 s -0.894531 -2 -2 -2 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 359 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8 0 c -0.828125 0 -1.5 0.671875 -1.5 1.5 c 0 0.078125 0.007812 0.15625 0.019531 0.234375 c -0.871093 0.269531 -1.652343 0.773437 -2.257812 1.453125 l -2.730469 -2.730469 l -1.0625 1.0625 l 2.957031 2.957031 l 8.527344 8.523438 l 2.515625 2.519531 l 1.0625 -1.0625 l -1.570312 -1.570312 c 0.320312 -0.167969 0.539062 -0.5 0.539062 -0.886719 c 0 -0.554688 -0.445312 -1 -1 -1 h -0.5 v -4.5 c 0 -2.191406 -1.425781 -4.125 -3.519531 -4.773438 c 0.011719 -0.074218 0.019531 -0.152343 0.019531 -0.226562 c 0 -0.828125 -0.671875 -1.5 -1.5 -1.5 z m -4.988281 6.183594 c -0.007813 0.105468 -0.011719 0.210937 -0.011719 0.316406 v 4.5 h -0.5 c -0.554688 0 -1 0.445312 -1 1 s 0.445312 1 1 1 h 7.328125 z m 2.988281 7.816406 c 0 0.714844 0.382812 1.375 1 1.730469 c 0.617188 0.359375 1.382812 0.359375 2 0 c 0.617188 -0.355469 1 -1.015625 1 -1.730469 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1013 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8 0 c -0.828125 0 -1.5 0.671875 -1.5 1.5 c 0 0.078125 0.007812 0.152344 0.019531 0.230469 c -2.089843 0.648437 -3.515625 2.582031 -3.519531 4.769531 v 4.5 h -0.5 c -0.554688 0 -1 0.445312 -1 1 s 0.445312 1 1 1 h 11 c 0.554688 0 1 -0.445312 1 -1 s -0.445312 -1 -1 -1 h -0.5 v -4.5 c 0 -2.191406 -1.425781 -4.125 -3.519531 -4.773438 c 0.011719 -0.078124 0.019531 -0.152343 0.019531 -0.226562 c 0 -0.828125 -0.671875 -1.5 -1.5 -1.5 z m -2 14 c 0 0.714844 0.382812 1.375 1 1.734375 c 0.617188 0.355469 1.382812 0.355469 2 0 c 0.617188 -0.359375 1 -1.019531 1 -1.734375 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 740 B |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 8 1 c -0.828125 0 -1.5 0.671875 -1.5 1.5 c 0 0.09375 0.007812 0.191406 0.027344 0.28125 c -1.101563 0.4375 -1.953125 1.34375 -2.328125 2.46875 l 6.753906 6.75 h 1.546875 c 0.554688 0 1 -0.445312 1 -1 s -0.445312 -1 -1 -1 h -0.5 v -3.5 c 0 -1.640625 -1.003906 -3.113281 -2.527344 -3.71875 c 0.019532 -0.09375 0.027344 -0.1875 0.027344 -0.28125 c 0 -0.828125 -0.671875 -1.5 -1.5 -1.5 z m -4 6.171875 v 2.828125 h -0.5 c -0.554688 0 -1 0.445312 -1 1 s 0.445312 1 1 1 h 5.328125 z m 2 5.828125 c 0 0.714844 0.382812 1.375 1 1.734375 c 0.617188 0.355469 1.382812 0.355469 2 0 c 0.566406 -0.332031 0.9375 -0.917969 0.992188 -1.570313 l -0.164063 -0.164062 z m 0 0"/>
|
||||
<path d="m 1.53125 0.457031 l -1.0625 1.0625 l 14 14 l 1.0625 -1.0625 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 935 B |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 8 0 c -2.453125 0 -4.488281 1.757812 -4.917969 4.089844 l 1.878907 1.875 c 0.027343 -0.320313 0.039062 -0.640625 0.039062 -0.964844 c 0 -1.652344 1.347656 -3 3 -3 s 3 1.347656 3 3 c 0 1.359375 0.214844 2.707031 0.628906 4 h -3.632812 l 2 2 h 3.03125 c 0.324218 0 0.625 -0.15625 0.8125 -0.417969 c 0.1875 -0.265625 0.238281 -0.601562 0.132812 -0.90625 l -0.371094 -1.078125 c -0.398437 -1.15625 -0.601562 -2.375 -0.601562 -3.597656 c 0 -2.765625 -2.234375 -5 -5 -5 z m -5.054688 6.070312 c -0.082031 0.859376 -0.265624 1.707032 -0.546874 2.527344 l -0.371094 1.078125 c -0.105469 0.304688 -0.058594 0.640625 0.132812 0.90625 c 0.1875 0.261719 0.488282 0.417969 0.8125 0.417969 h 4.902344 l -2 -2 h -1.507812 c 0.128906 -0.390625 0.234374 -0.785156 0.320312 -1.183594 z m 3.1875 5.914063 c -0.398437 -0.0625 -0.796874 0.121094 -1.007812 0.46875 c -0.210938 0.34375 -0.191406 0.78125 0.046875 1.109375 c 0.648437 0.890625 1.675781 1.421875 2.777344 1.4375 c 1.042969 0.015625 2.03125 -0.433594 2.703125 -1.21875 l -1.410156 -1.414062 c -0.019532 0.015624 -0.039063 0.03125 -0.058594 0.050781 c -0.285156 0.371093 -0.734375 0.589843 -1.207032 0.582031 c -0.46875 -0.007812 -0.910156 -0.234375 -1.1875 -0.613281 c -0.15625 -0.21875 -0.390624 -0.359375 -0.65625 -0.402344 z m 0 0"/>
|
||||
<path d="m 1.53125 0.457031 l -1.0625 1.0625 l 14 14 l 1.0625 -1.0625 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.5 KiB |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 13.027344 11 c 0.324218 0 0.625 -0.15625 0.816406 -0.417969 c 0.1875 -0.265625 0.234375 -0.601562 0.128906 -0.90625 l -0.371094 -1.078125 c -0.398437 -1.15625 -0.601562 -2.375 -0.601562 -3.597656 h -1 h 1 c 0 -2.765625 -2.234375 -5 -5 -5 s -5 2.234375 -5 5 h 1 h -1 c 0 1.222656 -0.203125 2.441406 -0.601562 3.597656 l -0.371094 1.078125 c -0.105469 0.304688 -0.058594 0.640625 0.128906 0.90625 c 0.191406 0.261719 0.492188 0.417969 0.816406 0.417969 z m -8.738282 -1.75 c 0.46875 -1.367188 0.710938 -2.804688 0.710938 -4.25 h -1 h 1 c 0 -1.652344 1.347656 -3 3 -3 s 3 1.347656 3 3 h 1 h -1 c 0 1.445312 0.242188 2.882812 0.710938 4.25 l 0.371093 1.074219 l 0.945313 -1.324219 h -10.054688 l 0.945313 1.324219 z m 0 0"/>
|
||||
<path d="m 9.1875 12.417969 c -0.289062 0.371093 -0.738281 0.589843 -1.210938 0.582031 c -0.46875 -0.007812 -0.910156 -0.234375 -1.1875 -0.617188 c -0.328124 -0.445312 -0.953124 -0.542968 -1.398437 -0.21875 c -0.445313 0.328126 -0.542969 0.953126 -0.21875 1.398438 c 0.648437 0.890625 1.675781 1.421875 2.777344 1.4375 c 1.101562 0.015625 2.144531 -0.488281 2.816406 -1.355469 c 0.339844 -0.4375 0.261719 -1.066406 -0.175781 -1.40625 c -0.4375 -0.335937 -1.066406 -0.257812 -1.402344 0.179688 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 1.4 KiB |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8 1 c -0.828125 0 -1.5 0.671875 -1.5 1.5 c 0 0.097656 0.011719 0.195312 0.03125 0.289062 c -1.523438 0.601563 -2.527344 2.074219 -2.53125 3.710938 v 3.5 h -0.5 c -0.554688 0 -1 0.445312 -1 1 s 0.445312 1 1 1 h 9 c 0.554688 0 1 -0.445312 1 -1 s -0.445312 -1 -1 -1 h -0.5 v -3.5 c 0 -1.640625 -1.003906 -3.117188 -2.53125 -3.71875 c 0.019531 -0.09375 0.03125 -0.1875 0.03125 -0.28125 c 0 -0.828125 -0.671875 -1.5 -1.5 -1.5 z m -2 12 c 0 0.714844 0.382812 1.375 1 1.734375 c 0.617188 0.355469 1.382812 0.355469 2 0 c 0.617188 -0.359375 1 -1.019531 1 -1.734375 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 732 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 2 3 v 1 h -1 v 4 h 1 v 1 h -1 v 2 h 1 v 4 h 2 v -4 h 8 v 4 h 2 v -4 h 1 v -2 h -1 v -1 h 1 v -4 h -1 v -1 h -2 v 1 h -8 v -1 z m 2 5 h 8 v 1 h -8 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 321 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 14 8 c 0 3.3125 -2.6875 6 -6 6 s -6 -2.6875 -6 -6 s 2.6875 -6 6 -6 s 6 2.6875 6 6 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 257 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 2 2 h 1 h 0.03125 c 0.253906 0.011719 0.511719 0.128906 0.6875 0.3125 l 4.28125 4.28125 l 4.3125 -4.28125 c 0.265625 -0.230469 0.445312 -0.304688 0.6875 -0.3125 h 1 v 1 c 0 0.285156 -0.035156 0.550781 -0.25 0.75 l -4.28125 4.28125 l 4.25 4.25 c 0.1875 0.1875 0.28125 0.453125 0.28125 0.71875 v 1 h -1 c -0.265625 0 -0.53125 -0.09375 -0.71875 -0.28125 l -4.28125 -4.28125 l -4.28125 4.28125 c -0.1875 0.1875 -0.453125 0.28125 -0.71875 0.28125 h -1 v -1 c 0 -0.265625 0.09375 -0.53125 0.28125 -0.71875 l 4.28125 -4.25 l -4.28125 -4.28125 c -0.210938 -0.195312 -0.304688 -0.46875 -0.28125 -0.75 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 767 B |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 7 4 v 3 h -4 s -2 0 -2 2 v 2 l 3.5 1 l 3.5 -1 l 3.5 1 l 3.5 -1 v -2 c 0 -2 -2 -2 -2 -2 h -4 v -3 z m -6 8 v 4 h 14 v -4 l -3.5 1 l -3.5 -1 l -3.5 1 z m 0 0"/>
|
||||
<path d="m 8 0.507812 s -1.058594 0.898438 -0.996094 1.496094 c 0.042969 0.464844 0.527344 0.996094 0.996094 0.996094 s 0.953125 -0.53125 0.996094 -0.996094 c 0.0625 -0.597656 -0.996094 -1.496094 -0.996094 -1.496094 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 579 B |
@ -1,8 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 1 1 v 14 h 14 v -14 z m 1 1 h 12 v 12 h -12 z m 0 0"/>
|
||||
<path d="m 6 11 h 1 v 1 h -1 z m 1 1 h 1 v 1 h -1 z m -1 -3 h 1 v 1 h -1 z m 1 1 h 1 v 1 h -1 z m -1 -3 h 1 v 1 h -1 z m 1 1 h 1 v 1 h -1 z m -1 -3 h 1 v 1 h -1 z m 1 1 h 1 v 1 h -1 z m -1 -3 h 1 v 1 h -1 z m 1 1 h 1 v 1 h -1 z m -4 -1 h 3 v 10 h -3 z m 0 0"/>
|
||||
<path d="m 8 3 h 1 v 10 h -1 z m 2 9 h 1 v 1 h -1 z m 0 -2 h 1 v 1 h -1 z m 0 -2 h 1 v 1 h -1 z m 0 -2 h 1 v 1 h -1 z m 0 -2 h 1 v 1 h -1 z m -1 7 h 1 v 1 h -1 z m 0 -2 h 1 v 1 h -1 z m 0 -2 h 1 v 1 h -1 z m 0 -2 h 1 v 1 h -1 z m 0 -2 h 1 v 1 h -1 z m 0 0" fill-opacity="0.34902"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 799 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 6.949219 0.0625 c -1.085938 0.0273438 -1.953125 0.914062 -1.949219 2 c 0 1.105469 0.894531 2 2 2 c 1.101562 0 2 -0.894531 2 -2 s -0.898438 -2 -2 -2 c -0.019531 0 -0.035156 0 -0.054688 0 z m -1.449219 4.9375 c -0.347656 0 -0.667969 0.179688 -0.851562 0.46875 l -2.5 4 c -0.289063 0.46875 -0.148438 1.085938 0.320312 1.378906 c 0.46875 0.292969 1.085938 0.148438 1.375 -0.316406 l 1.15625 -1.84375 l -0.003906 3.953125 l -0.894532 1.785156 c -0.246093 0.496094 -0.042968 1.097657 0.449219 1.34375 c 0.492188 0.246094 1.09375 0.046875 1.339844 -0.445312 l 1 -2 c 0.070313 -0.140625 0.109375 -0.292969 0.109375 -0.449219 v -1.988281 c 0 0.105469 0.015625 0.207031 0.050781 0.304687 l 0.480469 1.441406 l 0.488281 2.4375 c 0.105469 0.542969 0.632813 0.894532 1.175781 0.785157 c 0.539063 -0.109375 0.890626 -0.632813 0.785157 -1.175781 l -0.5 -2.5 c -0.011719 -0.039063 -0.019531 -0.082032 -0.03125 -0.121094 l -0.449219 -1.34375 v -2.300782 l 1.292969 1.292969 c 0.261719 0.265625 0.65625 0.359375 1.011719 0.246094 l 1.714843 5.566406 c 0.039063 0.128907 0.125 0.234375 0.242188 0.296875 c 0.117187 0.0625 0.257812 0.074219 0.382812 0.039063 c 0.128907 -0.039063 0.234375 -0.128907 0.296875 -0.246094 s 0.074219 -0.253906 0.035156 -0.378906 l -2 -6.5 c -0.015624 -0.050781 -0.035156 -0.09375 -0.0625 -0.136719 c -0.050781 -0.109375 -0.121093 -0.214844 -0.207031 -0.300781 l -2.96875 -2.964844 l -0.011719 -0.015625 c -0.007812 -0.007812 -0.015624 -0.011719 -0.019531 -0.019531 c -0.023437 -0.019531 -0.042969 -0.039063 -0.0625 -0.054688 c -0.023437 -0.019531 -0.042969 -0.035156 -0.066406 -0.050781 c 0 -0.003906 0 -0.003906 -0.003906 -0.003906 c 0 0 0 0 -0.003907 -0.003906 c -0.019531 -0.011719 -0.042968 -0.027344 -0.066406 -0.042969 c -0.023437 -0.011719 -0.046875 -0.023438 -0.074218 -0.039063 c -0.023438 -0.011718 -0.046876 -0.019531 -0.074219 -0.03125 c -0.027344 -0.011718 -0.050781 -0.019531 -0.078125 -0.027344 c 0 0 0 0 -0.003906 0 c -0.015626 -0.003906 -0.035157 -0.007812 -0.050782 -0.015624 c -0.011718 0 -0.019531 -0.003907 -0.03125 -0.003907 c -0.015625 -0.003906 -0.035156 -0.007812 -0.050781 -0.011719 c -0.003906 0 -0.007813 0 -0.015625 0 c -0.019531 -0.003906 -0.042969 -0.003906 -0.066406 -0.007812 c 0 0 0 0 -0.003906 0 c -0.015626 0 -0.035157 0 -0.054688 0 c 0 0 0 0 -0.003906 0 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.4 KiB |
@ -1,7 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<g fill="#222222">
|
||||
<path d="m 6 0 v 5.523438 l 2 2 v -4.109376 l 1.585938 1.585938 l -2.054688 2.054688 l 1.414062 1.414062 l 2.761719 -2.761719 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 l -4 -4 c -0.1875 -0.1875 -0.441406 -0.292969 -0.707031 -0.292969 z m 0 8.472656 v 0.113282 l -2.707031 2.707031 c -0.179688 0.179687 -0.292969 0.429687 -0.292969 0.707031 v 1 h 1 c 0.277344 0 0.527344 -0.113281 0.707031 -0.292969 l 1.292969 -1.292969 v 4.585938 h 1 c 0.265625 0 0.519531 -0.105469 0.707031 -0.292969 l 2.761719 -2.761719 l -1.414062 -1.414062 l -1.054688 1.054688 v -2.113282 z m 0 0"/>
|
||||
<path d="m 1.53125 0.46875 l -1.0625 1.0625 l 14 14 l 1.0625 -1.0625 z m 0 0"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 845 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 6 0 v 4.585938 l -1.292969 -1.292969 c -0.1875 -0.183594 -0.445312 -0.285157 -0.707031 -0.28125 v -0.011719 h -1 v 1 h 0.011719 c -0.003907 0.261719 0.097656 0.519531 0.28125 0.707031 l 2.707031 2.707031 v 1.171876 l -2.707031 2.707031 c -0.183594 0.1875 -0.285157 0.445312 -0.28125 0.707031 h -0.011719 v 1 h 1 v -0.011719 c 0.261719 0.003907 0.519531 -0.097656 0.707031 -0.28125 l 1.292969 -1.292969 v 4.585938 h 1 v -0.011719 c 0.261719 0.003907 0.519531 -0.097656 0.707031 -0.28125 l 4 -4 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 l -2.292969 -2.292969 l 2.292969 -2.292969 c 0.390625 -0.390625 0.390625 -1.023437 0 -1.414062 l -4 -4 c -0.1875 -0.183594 -0.441406 -0.2851565 -0.707031 -0.2812502 v -0.0117188 z m 2 3.414062 l 1.585938 1.585938 l -1.585938 1.585938 z m 0 6 l 1.585938 1.585938 l -1.585938 1.585938 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 1003 B |
@ -1,4 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="m 8 1 l -4.5 4.5 h 0.027344 c -0.984375 1.101562 -1.527344 2.523438 -1.527344 4 c 0 3.3125 2.6875 6 6 6 s 6 -2.6875 6 -6 c 0 -1.476562 -0.542969 -2.898438 -1.53125 -4 h 0.03125 z m 4 8 c 0.277344 0 0.5 0.222656 0.5 0.5 c 0 2.480469 -2.019531 4.5 -4.5 4.5 c -0.277344 0 -0.5 -0.222656 -0.5 -0.5 s 0.222656 -0.5 0.5 -0.5 c 1.9375 0 3.5 -1.5625 3.5 -3.5 c 0 -0.277344 0.222656 -0.5 0.5 -0.5 z m 0 0" fill="#222222"/>
|
||||
</svg>
|
Before Width: | Height: | Size: 561 B |