Skip to content

Commit c76603c

Browse files
deploy: 06cac6c
0 parents  commit c76603c

291 files changed

Lines changed: 1695 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.nojekyll

Whitespace-only changes.

404.html

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="utf-8">
5+
<title>Blazor File System</title>
6+
<script type="text/javascript">
7+
// Single Page Apps for GitHub Pages
8+
// MIT License
9+
// https://github.com/rafgraph/spa-github-pages
10+
// This script takes the current url and converts the path and query
11+
// string into just a query string, and then redirects the browser
12+
// to the new url with only a query string and hash fragment
13+
14+
// If you're creating a Project Pages site and NOT using a custom domain,
15+
// then set pathSegmentsToKeep to 1 (enterprise users may need to set it to > 1).
16+
// This way the code will only replace the route part of the path, and not
17+
// the real directory in which the app resides, for example:
18+
// https://username.github.io/repo-name/one/two?a=b&c=d#qwe becomes
19+
// https://username.github.io/repo-name/?/one/two&a=b~and~c=d#qwe
20+
// Otherwise, leave pathSegmentsToKeep as 0.
21+
var pathSegmentsToKeep = 1;
22+
23+
var l = window.location;
24+
l.replace(
25+
l.protocol + '//' + l.hostname + (l.port ? ':' + l.port : '') +
26+
l.pathname.split('/').slice(0, 1 + pathSegmentsToKeep).join('/') + '/?/' +
27+
l.pathname.slice(1).split('/').slice(pathSegmentsToKeep).join('/').replace(/&/g, '~and~') +
28+
(l.search ? '&' + l.search.slice(1).replace(/&/g, '~and~') : '') +
29+
l.hash
30+
);
31+
32+
</script>
33+
</head>
34+
<body>
35+
</body>
36+
</html>
Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
/* /Shared/MainLayout.razor.rz.scp.css */
2+
.page[b-7xbrtqjyrv] {
3+
position: relative;
4+
display: flex;
5+
flex-direction: column;
6+
}
7+
8+
main[b-7xbrtqjyrv] {
9+
flex: 1;
10+
}
11+
12+
.sidebar[b-7xbrtqjyrv] {
13+
background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);
14+
}
15+
16+
.top-row[b-7xbrtqjyrv] {
17+
background-color: #f7f7f7;
18+
border-bottom: 1px solid #d6d5d5;
19+
justify-content: flex-end;
20+
height: 3.5rem;
21+
display: flex;
22+
align-items: center;
23+
}
24+
25+
.top-row[b-7xbrtqjyrv] a, .top-row[b-7xbrtqjyrv] .btn-link {
26+
white-space: nowrap;
27+
margin-left: 1.5rem;
28+
text-decoration: none;
29+
}
30+
31+
.top-row[b-7xbrtqjyrv] a:hover, .top-row[b-7xbrtqjyrv] .btn-link:hover {
32+
text-decoration: underline;
33+
}
34+
35+
.top-row[b-7xbrtqjyrv] a:first-child {
36+
overflow: hidden;
37+
text-overflow: ellipsis;
38+
}
39+
40+
@media (max-width: 640.98px) {
41+
.top-row:not(.auth)[b-7xbrtqjyrv] {
42+
display: none;
43+
}
44+
45+
.top-row.auth[b-7xbrtqjyrv] {
46+
justify-content: space-between;
47+
}
48+
49+
.top-row[b-7xbrtqjyrv] a, .top-row[b-7xbrtqjyrv] .btn-link {
50+
margin-left: 0;
51+
}
52+
}
53+
54+
@media (min-width: 641px) {
55+
.page[b-7xbrtqjyrv] {
56+
flex-direction: row;
57+
}
58+
59+
.sidebar[b-7xbrtqjyrv] {
60+
width: 250px;
61+
height: 100vh;
62+
position: sticky;
63+
top: 0;
64+
}
65+
66+
.top-row[b-7xbrtqjyrv] {
67+
position: sticky;
68+
top: 0;
69+
z-index: 1;
70+
}
71+
72+
.top-row.auth[b-7xbrtqjyrv] a:first-child {
73+
flex: 1;
74+
text-align: right;
75+
width: 0;
76+
}
77+
78+
.top-row[b-7xbrtqjyrv], article[b-7xbrtqjyrv] {
79+
padding-left: 2rem !important;
80+
padding-right: 1.5rem !important;
81+
}
82+
}
83+
/* /Shared/NavMenu.razor.rz.scp.css */
84+
.navbar-toggler[b-scpzeot30o] {
85+
background-color: rgba(255, 255, 255, 0.1);
86+
}
87+
88+
.top-row[b-scpzeot30o] {
89+
height: 3.5rem;
90+
background-color: rgba(0,0,0,0.4);
91+
}
92+
93+
.navbar-brand[b-scpzeot30o] {
94+
font-size: 1.1rem;
95+
}
96+
97+
.oi[b-scpzeot30o] {
98+
width: 2rem;
99+
font-size: 1.1rem;
100+
vertical-align: text-top;
101+
top: -2px;
102+
}
103+
104+
.nav-item[b-scpzeot30o] {
105+
font-size: 0.9rem;
106+
padding-bottom: 0.5rem;
107+
}
108+
109+
.nav-item:first-of-type[b-scpzeot30o] {
110+
padding-top: 1rem;
111+
}
112+
113+
.nav-item:last-of-type[b-scpzeot30o] {
114+
padding-bottom: 1rem;
115+
}
116+
117+
.nav-item[b-scpzeot30o] a {
118+
color: #d7d7d7;
119+
border-radius: 4px;
120+
height: 3rem;
121+
display: flex;
122+
align-items: center;
123+
line-height: 3rem;
124+
}
125+
126+
.nav-item[b-scpzeot30o] a.active {
127+
background-color: rgba(255,255,255,0.25);
128+
color: white;
129+
}
130+
131+
.nav-item[b-scpzeot30o] a:hover {
132+
background-color: rgba(255,255,255,0.1);
133+
color: white;
134+
}
135+
136+
@media (min-width: 641px) {
137+
.navbar-toggler[b-scpzeot30o] {
138+
display: none;
139+
}
140+
141+
.collapse[b-scpzeot30o] {
142+
/* Never collapse the sidebar for wide screens */
143+
display: block;
144+
}
145+
}
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
export function getAttribute(object, attribute) { return object[attribute]; }
2+
export function setAttribute(object, attribute, value) { object[attribute] = value; }
3+
4+
export function getJSReference(element) { return element.valueOf(); }
5+
6+
export function addEventListener(target, type, eventListener = null, options = null)
7+
{
8+
target.addEventListener(type, eventListener, options)
9+
}
10+
11+
export function removeEventListener(target, type, eventListener = null, options)
12+
{
13+
target.removeEventListener(type, eventListener, options)
14+
}
15+
16+
export function constructEventListener() {
17+
return { };
18+
}
19+
20+
export function registerEventHandlerAsync(objRef, jSInstance) {
21+
jSInstance.handleEvent = (e) => objRef.invokeMethodAsync("HandleEventAsync", DotNet.createJSObjectReference(e))
22+
}
23+
24+
export function registerInProcessEventHandlerAsync(objRef, jSInstance) {
25+
jSInstance.handleEvent = (e) => objRef.invokeMethodAsync("HandleEventInProcessAsync", DotNet.createJSObjectReference(e))
26+
}
27+
28+
export function constructEvent(type, eventInitDict = null) {
29+
return new Event(type, eventInitDict);
30+
}
31+
32+
export function constructCustomEvent(type, eventInitDict = null) {
33+
return new CustomEvent(type, eventInitDict);
34+
}
35+
36+
export function constructEventTarget() { return new EventTarget(); }
37+
38+
export function constructAbortController() { return new AbortController(); }
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
export function getAttribute(object, attribute) { return object[attribute]; }
2+
3+
export function arrayBuffer(buffer) {
4+
var bytes = new Uint8Array(buffer);
5+
return bytes;
6+
}
7+
8+
export function constructBlob(blobParts, options) {
9+
return new Blob(blobParts, options);
10+
}
11+
12+
export function constructFile(blobParts, fileName, options) {
13+
return new File(blobParts, fileName, options);
14+
}
15+
16+
export function constructFileReader() {
17+
return new FileReader();
18+
}
19+
20+
export function registerEventHandlersAsync(objRef, jSInstance) {
21+
jSInstance.addEventListener('loadstart', (e) => objRef.invokeMethodAsync('InvokeOnLoadStartAsync', DotNet.createJSObjectReference(e)));
22+
jSInstance.addEventListener('progress', (e) => objRef.invokeMethodAsync('InvokeOnProgressAsync', DotNet.createJSObjectReference(e)));
23+
jSInstance.addEventListener('load', (e) => objRef.invokeMethodAsync('InvokeOnLoadAsync', DotNet.createJSObjectReference(e)));
24+
jSInstance.addEventListener('abort', (e) => objRef.invokeMethodAsync('InvokeOnAbortAsync', DotNet.createJSObjectReference(e)));
25+
jSInstance.addEventListener('error', (e) => objRef.invokeMethodAsync('InvokeOnErrorAsync', DotNet.createJSObjectReference(e)));
26+
jSInstance.addEventListener('loadend', (e) => objRef.invokeMethodAsync('InvokeOnLoadEndAsync', DotNet.createJSObjectReference(e)));
27+
}
28+
29+
export function registerEventHandlers(objRef, jSInstance) {
30+
jSInstance.addEventListener('loadstart', (e) => objRef.invokeMethod('InvokeOnLoadStart', DotNet.createJSObjectReference(e)));
31+
jSInstance.addEventListener('progress', (e) => objRef.invokeMethod('InvokeOnProgress', DotNet.createJSObjectReference(e)));
32+
jSInstance.addEventListener('load', (e) => objRef.invokeMethod('InvokeOnLoad', DotNet.createJSObjectReference(e)));
33+
jSInstance.addEventListener('abort', (e) => objRef.invokeMethod('InvokeOnAbort', DotNet.createJSObjectReference(e)));
34+
jSInstance.addEventListener('error', (e) => objRef.invokeMethod('InvokeOnError', DotNet.createJSObjectReference(e)));
35+
jSInstance.addEventListener('loadend', (e) => objRef.invokeMethod('InvokeOnLoadEnd', DotNet.createJSObjectReference(e)));
36+
}
37+
38+
export function isArrayBuffer(fileReader) {
39+
return (fileReader.result instanceof ArrayBuffer)
40+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
export function size(array) { return array.length; }
2+
3+
export function getAttribute(object, attribute) { return object[attribute]; }
4+
5+
export async function arrayFrom(values) {
6+
var res = []
7+
for await (let value of values) {
8+
res.push(value);
9+
}
10+
return res;
11+
}
12+
13+
export async function arrayBuffer(blob) {
14+
var buffer = await blob.arrayBuffer();
15+
var bytes = new Uint8Array(buffer);
16+
return bytes;
17+
}

0 commit comments

Comments
 (0)