@cloudron/pankow 3.1.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitlab-ci.yml +30 -0
- package/.jshintrc +8 -0
- package/LICENSE +21 -0
- package/README.md +20 -0
- package/components/BottomBar.vue +22 -0
- package/components/Breadcrumb.vue +64 -0
- package/components/Button.vue +243 -0
- package/components/ButtonGroup.vue +37 -0
- package/components/Checkbox.vue +112 -0
- package/components/Dialog.vue +178 -0
- package/components/DirectoryView.vue +772 -0
- package/components/DirectoryViewListItem.vue +412 -0
- package/components/EmailInput.vue +22 -0
- package/components/FileUploader.vue +204 -0
- package/components/FormGroup.vue +26 -0
- package/components/Icon.vue +12 -0
- package/components/InputDialog.vue +170 -0
- package/components/InputGroup.vue +32 -0
- package/components/MainLayout.vue +63 -0
- package/components/Menu.vue +284 -0
- package/components/MenuItem.vue +106 -0
- package/components/MenuItemLink.vue +52 -0
- package/components/MultiSelect.vue +202 -0
- package/components/Notification.vue +163 -0
- package/components/NumberInput.vue +31 -0
- package/components/OfflineBanner.vue +47 -0
- package/components/PasswordInput.vue +86 -0
- package/components/Popover.vue +185 -0
- package/components/ProgressBar.vue +75 -0
- package/components/Radiobutton.vue +128 -0
- package/components/SideBar.vue +104 -0
- package/components/SingleSelect.vue +190 -0
- package/components/Spinner.vue +67 -0
- package/components/Switch.vue +94 -0
- package/components/TabView.vue +161 -0
- package/components/TableView.vue +187 -0
- package/components/TagInput.vue +104 -0
- package/components/TextInput.vue +58 -0
- package/components/TopBar.vue +88 -0
- package/fallbackImage.js +29 -0
- package/fetcher.js +81 -0
- package/gallery/CustomMenuItem.vue +40 -0
- package/gallery/DirectoryViewDemo.vue +73 -0
- package/gallery/Index.vue +790 -0
- package/gallery/folder.svg +151 -0
- package/gallery/index.html +25 -0
- package/gallery/index.js +10 -0
- package/gallery/logo.png +0 -0
- package/gallery/vite.config.mjs +9 -0
- package/gestures.js +60 -0
- package/index.js +86 -0
- package/logo.png +0 -0
- package/logo.svg +78 -0
- package/package.json +26 -0
- package/style.css +351 -0
- package/tooltip.js +83 -0
- package/utils.js +383 -0
- package/viewers/GenericViewer.vue +84 -0
- package/viewers/ImageViewer.vue +239 -0
- package/viewers/PdfViewer.vue +82 -0
- package/viewers/TextViewer.vue +221 -0
- package/viewers.js +11 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<svg
|
|
3
|
+
viewBox="174.076 909 512 512"
|
|
4
|
+
version="1.1"
|
|
5
|
+
fill="none"
|
|
6
|
+
id="svg8"
|
|
7
|
+
sodipodi:docname="folder.svg"
|
|
8
|
+
width="512"
|
|
9
|
+
height="512"
|
|
10
|
+
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25, custom)"
|
|
11
|
+
xml:space="preserve"
|
|
12
|
+
inkscape:export-filename="logo.png"
|
|
13
|
+
inkscape:export-xdpi="96"
|
|
14
|
+
inkscape:export-ydpi="96"
|
|
15
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
16
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
17
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
18
|
+
xmlns:svg="http://www.w3.org/2000/svg"
|
|
19
|
+
xmlns:penpot="https://penpot.app/xmlns"><defs
|
|
20
|
+
id="defs9"><linearGradient
|
|
21
|
+
id="linearGradient5606"
|
|
22
|
+
inkscape:swatch="solid"><stop
|
|
23
|
+
style="stop-color:#000000;stop-opacity:1;"
|
|
24
|
+
offset="0"
|
|
25
|
+
id="stop5608" /></linearGradient></defs><sodipodi:namedview
|
|
26
|
+
id="namedview8"
|
|
27
|
+
pagecolor="#ffffff"
|
|
28
|
+
bordercolor="#666666"
|
|
29
|
+
borderopacity="1.0"
|
|
30
|
+
inkscape:showpageshadow="2"
|
|
31
|
+
inkscape:pageopacity="0.0"
|
|
32
|
+
inkscape:pagecheckerboard="true"
|
|
33
|
+
inkscape:deskcolor="#d1d1d1"
|
|
34
|
+
inkscape:export-bgcolor="#87878700"
|
|
35
|
+
inkscape:zoom="0.84864112"
|
|
36
|
+
inkscape:cx="283.98341"
|
|
37
|
+
inkscape:cy="262.77303"
|
|
38
|
+
inkscape:window-width="1920"
|
|
39
|
+
inkscape:window-height="1014"
|
|
40
|
+
inkscape:window-x="0"
|
|
41
|
+
inkscape:window-y="0"
|
|
42
|
+
inkscape:window-maximized="1"
|
|
43
|
+
inkscape:current-layer="g9" /><penpot:page
|
|
44
|
+
id="12c52011-66fe-81c0-8003-52d94eb6a788" /><g
|
|
45
|
+
id="g9"
|
|
46
|
+
transform="matrix(1.9743069,0,0,1.9743069,-125.84144,-864.32392)"><g
|
|
47
|
+
id="shape-63d8ddae-017c-80b2-8003-538c8d85f944"
|
|
48
|
+
style="fill:#0071e3;fill-opacity:1"
|
|
49
|
+
transform="translate(1.6491862e-7,-24.990782)"><penpot:shape
|
|
50
|
+
penpot:name="Exclude"
|
|
51
|
+
penpot:type="bool"
|
|
52
|
+
penpot:center-x="281.57605276372016"
|
|
53
|
+
penpot:center-y="1063.2326368678678"
|
|
54
|
+
penpot:bool-type="exclude"><penpot:fills><penpot:fill
|
|
55
|
+
penpot:fill-color="#ffffff"
|
|
56
|
+
penpot:fill-opacity="1" /></penpot:fills></penpot:shape><defs
|
|
57
|
+
id="defs3" /><g
|
|
58
|
+
class="fills"
|
|
59
|
+
id="fills-63d8ddae-017c-80b2-8003-538c8d85f944"
|
|
60
|
+
style="fill:#0071e3;fill-opacity:1"><path
|
|
61
|
+
rx="0"
|
|
62
|
+
ry="0"
|
|
63
|
+
style="fill:#0071e3;fill-opacity:1"
|
|
64
|
+
d="m 174.076,958.98156 v 48.62444 h 215 V 993.173 H 268.113 l -24.16555,-34.19144 z m 0,53.34544 v 123.434 c 0,10.342 0.533,10.972 11.696,10.972 h 191.82 c 11.163,0 11.425,-0.63 11.425,-10.972 v -123.434"
|
|
65
|
+
id="path3"
|
|
66
|
+
sodipodi:nodetypes="ccccccccssssc" /></g><penpot:bool><g
|
|
67
|
+
id="shape-3379d6d5-d382-80fe-8003-52dc53a94fc4"><penpot:shape
|
|
68
|
+
penpot:name="path4162"
|
|
69
|
+
penpot:type="path"
|
|
70
|
+
penpot:transform="matrix(1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000)"
|
|
71
|
+
penpot:transform-inverse="matrix(1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000)"
|
|
72
|
+
penpot:proportion="1"
|
|
73
|
+
penpot:proportion-lock="false"
|
|
74
|
+
penpot:rotation="0"
|
|
75
|
+
penpot:center-x="281.57605276372004"
|
|
76
|
+
penpot:center-y="1081.5"><penpot:svg-import
|
|
77
|
+
penpot:svg-viewbox-x="20.999954664172378"
|
|
78
|
+
penpot:svg-viewbox-y="37.8143709651832"
|
|
79
|
+
penpot:svg-viewbox-width="470.00002439592663"
|
|
80
|
+
penpot:svg-attrs="inkscape:export-ydpi,sodipodi:cx,sodipodi:r2,sodipodi:cy,inkscape:export-xdpi,inkscape:randomized,inkscape:flatsided,sodipodi:r1,style,sodipodi:arg2,id,sodipodi:arg1,sodipodi:sides,sodipodi:type,inkscape:rounded"
|
|
81
|
+
penpot:svg-viewbox-height="436.3700955661577"
|
|
82
|
+
penpot:svg-transform="matrix(10.563485, -6.202890, 6.098831, 10.743720, 733.517923, 1406.566265)"
|
|
83
|
+
penpot:svg-style="stroke-dasharray:none; stroke-dashoffset:0; stroke-miterlimit:4" /><penpot:fills><penpot:fill
|
|
84
|
+
penpot:fill-color="#2c91f3"
|
|
85
|
+
penpot:fill-opacity="1" /></penpot:fills></penpot:shape><defs /><g
|
|
86
|
+
class="fills"
|
|
87
|
+
id="fills-3379d6d5-d382-80fe-8003-52dc53a94fc4"><path
|
|
88
|
+
rx="0"
|
|
89
|
+
ry="0"
|
|
90
|
+
style="stroke-dasharray:none;stroke-dashoffset:0;stroke-miterlimit:4;opacity:1;fill:#2c91f3;fill-opacity:1"
|
|
91
|
+
d="M309.391,1032.681C315.390,1036.213,337.085,1074.530,337.076,1081.577C337.067,1088.623,315.269,1126.881,309.261,1130.396C303.253,1133.911,259.760,1133.851,253.761,1130.319C247.762,1126.787,226.067,1088.470,226.076,1081.424C226.085,1074.377,247.883,1036.120,253.891,1032.605C259.899,1029.089,303.393,1029.150,309.391,1032.681ZL309.391,1032.681Z" /></g></g><g
|
|
92
|
+
id="shape-3379d6d5-d382-80fe-8003-52dce9b1dcef"
|
|
93
|
+
rx="0"
|
|
94
|
+
ry="0"><penpot:shape
|
|
95
|
+
penpot:name="Group"
|
|
96
|
+
penpot:type="group"
|
|
97
|
+
penpot:transform="matrix(1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000)"
|
|
98
|
+
penpot:transform-inverse="matrix(1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000)"
|
|
99
|
+
penpot:rotation="0"
|
|
100
|
+
penpot:center-x="281.57605276372004"
|
|
101
|
+
penpot:center-y="1063.2326368678669" /><defs /><g
|
|
102
|
+
id="shape-3379d6d5-d382-80fe-8003-52dc653dcc13"><penpot:shape
|
|
103
|
+
penpot:name="path3028"
|
|
104
|
+
penpot:type="path"
|
|
105
|
+
penpot:transform="matrix(1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000)"
|
|
106
|
+
penpot:transform-inverse="matrix(1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000)"
|
|
107
|
+
penpot:proportion="1"
|
|
108
|
+
penpot:proportion-lock="false"
|
|
109
|
+
penpot:rotation="0"
|
|
110
|
+
penpot:center-x="281.57605276372016"
|
|
111
|
+
penpot:center-y="993.6692471822817"><penpot:svg-import
|
|
112
|
+
penpot:svg-viewbox-x="135.40180287754544"
|
|
113
|
+
penpot:svg-viewbox-y="148.96844666542407"
|
|
114
|
+
penpot:svg-viewbox-width="241.19641334094166"
|
|
115
|
+
penpot:svg-attrs="style,id,inkscape:connector-curvature,sodipodi:nodetypes"
|
|
116
|
+
penpot:svg-viewbox-height="34.4566283105855"
|
|
117
|
+
penpot:svg-transform="matrix(0.937500, 0.000000, 0.000000, 0.937500, 607.001240, -33.324082)"
|
|
118
|
+
penpot:svg-style="display:inline" /><penpot:fills><penpot:fill
|
|
119
|
+
penpot:fill-color="#ffffff"
|
|
120
|
+
penpot:fill-opacity="1" /></penpot:fills></penpot:shape><defs /><g
|
|
121
|
+
class="fills"
|
|
122
|
+
id="fills-3379d6d5-d382-80fe-8003-52dc653dcc13"><path
|
|
123
|
+
rx="0"
|
|
124
|
+
ry="0"
|
|
125
|
+
style="display:inline;fill:#ffffff;fill-opacity:1"
|
|
126
|
+
d="M174.076,979.733L174.076,1007.606L389.076,1007.606L389.076,993.173L268.113,993.173L254.679,979.733L174.076,979.733Z" /></g></g><g
|
|
127
|
+
id="shape-3379d6d5-d382-80fe-8003-52dc653dcc14"><penpot:shape
|
|
128
|
+
penpot:name="path3040"
|
|
129
|
+
penpot:type="path"
|
|
130
|
+
penpot:transform="matrix(1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000)"
|
|
131
|
+
penpot:transform-inverse="matrix(1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000)"
|
|
132
|
+
penpot:proportion="1"
|
|
133
|
+
penpot:proportion-lock="false"
|
|
134
|
+
penpot:rotation="0"
|
|
135
|
+
penpot:center-x="281.54670594203316"
|
|
136
|
+
penpot:center-y="1079.529826016343"><penpot:svg-import
|
|
137
|
+
penpot:svg-viewbox-x="118.17348830854957"
|
|
138
|
+
penpot:svg-viewbox-y="190.7484118512728"
|
|
139
|
+
penpot:svg-viewbox-width="275.6530424789334"
|
|
140
|
+
penpot:svg-attrs="style,id,inkscape:connector-curvature,sodipodi:nodetypes"
|
|
141
|
+
penpot:svg-viewbox-height="172.28315092792678"
|
|
142
|
+
penpot:svg-transform="matrix(0.937500, 0.000000, 0.000000, 0.937500, 607.001240, -33.324082)"
|
|
143
|
+
penpot:svg-style="display:inline" /><penpot:fills><penpot:fill
|
|
144
|
+
penpot:fill-color="#ffffff"
|
|
145
|
+
penpot:fill-opacity="1" /></penpot:fills></penpot:shape><defs /><g
|
|
146
|
+
class="fills"
|
|
147
|
+
id="fills-3379d6d5-d382-80fe-8003-52dc653dcc14"><path
|
|
148
|
+
rx="0"
|
|
149
|
+
ry="0"
|
|
150
|
+
style="display:inline;fill:#ffffff;fill-opacity:1"
|
|
151
|
+
d="M174.076,1012.327L174.076,1135.761C174.076,1146.103,174.609,1146.733,185.772,1146.733L377.592,1146.733C388.755,1146.733,389.017,1146.103,389.017,1135.761L389.017,1012.327" /></g></g></g></penpot:bool></g></g></svg>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
6
|
+
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />
|
|
7
|
+
<title>Pankow</title>
|
|
8
|
+
<link rel="shortcut icon" type="image/png" href="logo.png">
|
|
9
|
+
<style>
|
|
10
|
+
@media (prefers-color-scheme: dark) {
|
|
11
|
+
body {
|
|
12
|
+
background-color: black;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
</style>
|
|
16
|
+
|
|
17
|
+
</head>
|
|
18
|
+
<body>
|
|
19
|
+
<noscript>
|
|
20
|
+
<strong>We're sorry but pankow doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
|
|
21
|
+
</noscript>
|
|
22
|
+
<div id="app"></div>
|
|
23
|
+
<script type="module" src="index.js"></script>
|
|
24
|
+
</body>
|
|
25
|
+
</html>
|
package/gallery/index.js
ADDED
package/gallery/logo.png
ADDED
|
Binary file
|
package/gestures.js
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/*
|
|
2
|
+
|
|
3
|
+
Swipe handler
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
import { onSwipe } from 'pankow/guesture';
|
|
7
|
+
|
|
8
|
+
onSwipe(element, (direction) => {});
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
*/
|
|
13
|
+
function onSwipe(elem, callback, threshold = 50) {
|
|
14
|
+
callback = typeof callback === 'function' ? callback : () => {};
|
|
15
|
+
|
|
16
|
+
let startX = 0;
|
|
17
|
+
let startY = 0;
|
|
18
|
+
let endX = 0;
|
|
19
|
+
let endY = 0;
|
|
20
|
+
|
|
21
|
+
function touchStart(event) {
|
|
22
|
+
if (event.touches.length !== 1) return;
|
|
23
|
+
startX = event.touches[0].clientX;
|
|
24
|
+
startY = event.touches[0].clientY;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
function touchMove(event) {
|
|
28
|
+
if (event.touches.length !== 1) return;
|
|
29
|
+
endX = event.touches[0].clientX;
|
|
30
|
+
endY = event.touches[0].clientY;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
function touchEnd(event) {
|
|
34
|
+
const diffX = startX - endX;
|
|
35
|
+
const diffY = startY - endY;
|
|
36
|
+
const absX = Math.abs(diffX);
|
|
37
|
+
const absY = Math.abs(diffY);
|
|
38
|
+
|
|
39
|
+
if (absX < threshold && absY < threshold) return;
|
|
40
|
+
|
|
41
|
+
// horizontal
|
|
42
|
+
if (absX > absY) return callback(diffX > 0 ? 'left' : 'right');
|
|
43
|
+
|
|
44
|
+
// vertical
|
|
45
|
+
callback(diffY > 0 ? 'up' : 'down');
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
elem.addEventListener('touchstart', touchStart);
|
|
49
|
+
elem.addEventListener('touchmove', touchMove);
|
|
50
|
+
elem.addEventListener('touchend', touchEnd);
|
|
51
|
+
elem.addEventListener('touchcancel', touchEnd);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export default {
|
|
55
|
+
onSwipe
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
export {
|
|
59
|
+
onSwipe
|
|
60
|
+
};
|
package/index.js
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import '@fontsource/inter';
|
|
2
|
+
import '@fortawesome/fontawesome-free/css/all.min.css';
|
|
3
|
+
import './style.css';
|
|
4
|
+
|
|
5
|
+
// Order of import matters due to css rule matching!
|
|
6
|
+
import BottomBar from './components/BottomBar.vue';
|
|
7
|
+
import Breadcrumb from './components/Breadcrumb.vue';
|
|
8
|
+
import Button from './components/Button.vue';
|
|
9
|
+
import ButtonGroup from './components/ButtonGroup.vue';
|
|
10
|
+
import Checkbox from './components/Checkbox.vue';
|
|
11
|
+
import Dialog from './components/Dialog.vue';
|
|
12
|
+
import DirectoryView from './components/DirectoryView.vue';
|
|
13
|
+
import EmailInput from './components/EmailInput.vue';
|
|
14
|
+
import FileUploader from './components/FileUploader.vue';
|
|
15
|
+
import FormGroup from './components/FormGroup.vue';
|
|
16
|
+
import Icon from './components/Icon.vue';
|
|
17
|
+
import InputDialog from './components/InputDialog.vue';
|
|
18
|
+
import MainLayout from './components/MainLayout.vue';
|
|
19
|
+
import Menu from './components/Menu.vue';
|
|
20
|
+
import MenuItem from './components/MenuItem.vue';
|
|
21
|
+
import SingleSelect from './components/SingleSelect.vue';
|
|
22
|
+
import MultiSelect from './components/MultiSelect.vue';
|
|
23
|
+
import Notification from './components/Notification.vue';
|
|
24
|
+
import NumberInput from './components/NumberInput.vue';
|
|
25
|
+
import OfflineBanner from './components/OfflineBanner.vue';
|
|
26
|
+
import PasswordInput from './components/PasswordInput.vue';
|
|
27
|
+
import Popover from './components/Popover.vue';
|
|
28
|
+
import ProgressBar from './components/ProgressBar.vue';
|
|
29
|
+
import Radiobutton from './components/Radiobutton.vue';
|
|
30
|
+
import SideBar from './components/SideBar.vue';
|
|
31
|
+
import Spinner from './components/Spinner.vue';
|
|
32
|
+
import Switch from './components/Switch.vue';
|
|
33
|
+
import TableView from './components/TableView.vue';
|
|
34
|
+
import TabView from './components/TabView.vue';
|
|
35
|
+
import TagInput from './components/TagInput.vue';
|
|
36
|
+
import TextInput from './components/TextInput.vue';
|
|
37
|
+
import TopBar from './components/TopBar.vue';
|
|
38
|
+
import InputGroup from './components/InputGroup.vue'; // must be at the end for border-radius handling
|
|
39
|
+
|
|
40
|
+
import fetcher from './fetcher.js';
|
|
41
|
+
import gestures from './gestures.js';
|
|
42
|
+
import utils from './utils.js';
|
|
43
|
+
import tooltip from './tooltip.js';
|
|
44
|
+
import fallbackImage from './fallbackImage.js';
|
|
45
|
+
|
|
46
|
+
export {
|
|
47
|
+
BottomBar,
|
|
48
|
+
Breadcrumb,
|
|
49
|
+
Button,
|
|
50
|
+
ButtonGroup,
|
|
51
|
+
Checkbox,
|
|
52
|
+
Dialog,
|
|
53
|
+
DirectoryView,
|
|
54
|
+
EmailInput,
|
|
55
|
+
FileUploader,
|
|
56
|
+
FormGroup,
|
|
57
|
+
InputGroup,
|
|
58
|
+
Icon,
|
|
59
|
+
InputDialog,
|
|
60
|
+
MainLayout,
|
|
61
|
+
Menu,
|
|
62
|
+
MenuItem,
|
|
63
|
+
SingleSelect,
|
|
64
|
+
MultiSelect,
|
|
65
|
+
Notification,
|
|
66
|
+
NumberInput,
|
|
67
|
+
OfflineBanner,
|
|
68
|
+
PasswordInput,
|
|
69
|
+
Popover,
|
|
70
|
+
ProgressBar,
|
|
71
|
+
Radiobutton,
|
|
72
|
+
SideBar,
|
|
73
|
+
Spinner,
|
|
74
|
+
Switch,
|
|
75
|
+
TableView,
|
|
76
|
+
TabView,
|
|
77
|
+
TagInput,
|
|
78
|
+
TextInput,
|
|
79
|
+
TopBar,
|
|
80
|
+
|
|
81
|
+
fetcher,
|
|
82
|
+
gestures,
|
|
83
|
+
tooltip,
|
|
84
|
+
fallbackImage,
|
|
85
|
+
utils,
|
|
86
|
+
};
|
package/logo.png
ADDED
|
Binary file
|
package/logo.svg
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
2
|
+
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
3
|
+
|
|
4
|
+
<svg
|
|
5
|
+
width="512"
|
|
6
|
+
height="512"
|
|
7
|
+
viewBox="0 0 128 128"
|
|
8
|
+
version="1.1"
|
|
9
|
+
id="svg1"
|
|
10
|
+
xml:space="preserve"
|
|
11
|
+
inkscape:version="1.3.2 (091e20ef0f, 2023-11-25, custom)"
|
|
12
|
+
sodipodi:docname="logo.svg"
|
|
13
|
+
inkscape:export-filename="logo.png"
|
|
14
|
+
inkscape:export-xdpi="96"
|
|
15
|
+
inkscape:export-ydpi="96"
|
|
16
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
17
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
18
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
19
|
+
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
|
20
|
+
id="namedview1"
|
|
21
|
+
pagecolor="#ffffff"
|
|
22
|
+
bordercolor="#666666"
|
|
23
|
+
borderopacity="1.0"
|
|
24
|
+
inkscape:showpageshadow="2"
|
|
25
|
+
inkscape:pageopacity="0.0"
|
|
26
|
+
inkscape:pagecheckerboard="0"
|
|
27
|
+
inkscape:deskcolor="#d1d1d1"
|
|
28
|
+
inkscape:document-units="px"
|
|
29
|
+
inkscape:zoom="0.72159091"
|
|
30
|
+
inkscape:cx="166.99213"
|
|
31
|
+
inkscape:cy="286.86614"
|
|
32
|
+
inkscape:window-width="1920"
|
|
33
|
+
inkscape:window-height="1014"
|
|
34
|
+
inkscape:window-x="0"
|
|
35
|
+
inkscape:window-y="0"
|
|
36
|
+
inkscape:window-maximized="1"
|
|
37
|
+
inkscape:current-layer="layer1"
|
|
38
|
+
showgrid="false" /><defs
|
|
39
|
+
id="defs1"><inkscape:path-effect
|
|
40
|
+
effect="fillet_chamfer"
|
|
41
|
+
id="path-effect2"
|
|
42
|
+
is_visible="true"
|
|
43
|
+
lpeversion="1"
|
|
44
|
+
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
|
|
45
|
+
radius="0"
|
|
46
|
+
unit="px"
|
|
47
|
+
method="auto"
|
|
48
|
+
mode="F"
|
|
49
|
+
chamfer_steps="1"
|
|
50
|
+
flexible="false"
|
|
51
|
+
use_knot_distance="true"
|
|
52
|
+
apply_no_radius="true"
|
|
53
|
+
apply_with_radius="true"
|
|
54
|
+
only_selected="false"
|
|
55
|
+
hide_knots="false" /><inkscape:path-effect
|
|
56
|
+
effect="fillet_chamfer"
|
|
57
|
+
id="path-effect1"
|
|
58
|
+
is_visible="true"
|
|
59
|
+
lpeversion="1"
|
|
60
|
+
nodesatellites_param="F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0.44357024,0,1 @ F,0,0,1,0,0.63159802,0,1 @ F,0,0,1,0,0.64142375,0,1 @ F,0,0,1,0,0.63159802,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0.56999564,0,1 @ F,0,0,1,0,0.72306358,0,1 @ F,0,0,1,0,0.56999564,0,1 @ F,0,0,1,0,1.3746314,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1 @ F,0,0,1,0,0,0,1"
|
|
61
|
+
radius="0"
|
|
62
|
+
unit="px"
|
|
63
|
+
method="auto"
|
|
64
|
+
mode="F"
|
|
65
|
+
chamfer_steps="1"
|
|
66
|
+
flexible="false"
|
|
67
|
+
use_knot_distance="true"
|
|
68
|
+
apply_no_radius="true"
|
|
69
|
+
apply_with_radius="true"
|
|
70
|
+
only_selected="false"
|
|
71
|
+
hide_knots="false" /></defs><g
|
|
72
|
+
inkscape:label="Layer 1"
|
|
73
|
+
inkscape:groupmode="layer"
|
|
74
|
+
id="layer1"><path
|
|
75
|
+
style="fill:#0071e3;stroke-width:1.88633;fill-opacity:1"
|
|
76
|
+
d="m 98.699074,29.935301 c -0.163123,0.23219 -47.75949,64.957442 -47.75949,64.957442 V 65.609386 L 80.652312,23.736848 c 0,0 0.671306,-1.036796 0.815875,-1.569383 0.144569,-0.532587 -0.08164,-1.891281 -0.645525,-2.571973 C 80.394236,19.078318 79.906399,18.982723 78.99392,18.75 c -0.912479,-0.232723 -31.804336,0 -31.804336,0 l -0.75,1 V 122 l 2,3.5 -1,1 h -22 l -1,-1 2,-3.5 V 8.5 l -2,-6 1,-1 h 56.418279 c 9.996284,0 15.038793,0.4010722 18.690077,5.8074305 4.23554,6.2714565 4.34067,13.8176305 -1.848866,22.6278705 z"
|
|
77
|
+
id="path1"
|
|
78
|
+
sodipodi:nodetypes="sccczazccccccccccczas" /></g></svg>
|
package/package.json
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@cloudron/pankow",
|
|
3
|
+
"private": false,
|
|
4
|
+
"version": "3.1.8",
|
|
5
|
+
"description": "",
|
|
6
|
+
"main": "index.js",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"gallery": "cd gallery && vite",
|
|
9
|
+
"build": "cd gallery && vite build"
|
|
10
|
+
},
|
|
11
|
+
"type": "module",
|
|
12
|
+
"author": "",
|
|
13
|
+
"license": "ISC",
|
|
14
|
+
"dependencies": {
|
|
15
|
+
"@fontsource/inter": "^5.2.6",
|
|
16
|
+
"@fortawesome/fontawesome-free": "^6.7.2",
|
|
17
|
+
"filesize": "^10.1.6",
|
|
18
|
+
"moment": "^2.30.1",
|
|
19
|
+
"monaco-editor": "^0.52.2"
|
|
20
|
+
},
|
|
21
|
+
"devDependencies": {
|
|
22
|
+
"@vitejs/plugin-vue": "^6.0.0",
|
|
23
|
+
"vite": "^7.0.3",
|
|
24
|
+
"vue": "^3.5.17"
|
|
25
|
+
}
|
|
26
|
+
}
|