-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 0b15b23
Showing
464 changed files
with
1,539 additions
and
0 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<meta charset="utf-8"> | ||
<title>Blazor Relewise</title> | ||
<script type="text/javascript"> | ||
// Single Page Apps for GitHub Pages | ||
// MIT License | ||
// https://github.com/rafgraph/spa-github-pages | ||
// This script takes the current url and converts the path and query | ||
// string into just a query string, and then redirects the browser | ||
// to the new url with only a query string and hash fragment | ||
|
||
// If you're creating a Project Pages site and NOT using a custom domain, | ||
// then set pathSegmentsToKeep to 1 (enterprise users may need to set it to > 1). | ||
// This way the code will only replace the route part of the path, and not | ||
// the real directory in which the app resides, for example: | ||
// https://username.github.io/repo-name/one/two?a=b&c=d#qwe becomes | ||
// https://username.github.io/repo-name/?/one/two&a=b~and~c=d#qwe | ||
// Otherwise, leave pathSegmentsToKeep as 0. | ||
var pathSegmentsToKeep = 1; | ||
|
||
var l = window.location; | ||
l.replace( | ||
l.protocol + '//' + l.hostname + (l.port ? ':' + l.port : '') + | ||
l.pathname.split('/').slice(0, 1 + pathSegmentsToKeep).join('/') + '/?/' + | ||
l.pathname.slice(1).split('/').slice(pathSegmentsToKeep).join('/').replace(/&/g, '~and~') + | ||
(l.search ? '&' + l.search.slice(1).replace(/&/g, '~and~') : '') + | ||
l.hash | ||
); | ||
|
||
</script> | ||
</head> | ||
<body> | ||
</body> | ||
</html> |
310 changes: 310 additions & 0 deletions
310
KristofferStrube.Blazor.Relewise.WasmExample.styles.css
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,310 @@ | ||
@import '_content/KristofferStrube.Blazor.Relewise/KristofferStrube.Blazor.Relewise.bundle.scp.css'; | ||
|
||
/* /Layout/MainLayout.razor.rz.scp.css */ | ||
.page[b-t730dw2tnh] { | ||
position: relative; | ||
display: flex; | ||
flex-direction: column; | ||
} | ||
|
||
main[b-t730dw2tnh] { | ||
flex: 1; | ||
} | ||
|
||
.sidebar[b-t730dw2tnh] { | ||
background-image: linear-gradient(180deg, var(--color-blue) 0%, var(--color-blue-light) 100%); | ||
} | ||
|
||
.top-row[b-t730dw2tnh] { | ||
background-color: #f7f7f7; | ||
border-bottom: 1px solid #d6d5d5; | ||
justify-content: flex-end; | ||
height: 3.5rem; | ||
display: flex; | ||
align-items: center; | ||
} | ||
|
||
.top-row[b-t730dw2tnh] a, .top-row[b-t730dw2tnh] .btn-link { | ||
white-space: nowrap; | ||
margin-left: 1.5rem; | ||
text-decoration: none; | ||
} | ||
|
||
.top-row[b-t730dw2tnh] a:hover, .top-row[b-t730dw2tnh] .btn-link:hover { | ||
text-decoration: underline; | ||
} | ||
|
||
.top-row[b-t730dw2tnh] a:first-child { | ||
overflow: hidden; | ||
text-overflow: ellipsis; | ||
} | ||
|
||
@media (max-width: 640.98px) { | ||
.top-row[b-t730dw2tnh] { | ||
justify-content: space-between; | ||
} | ||
|
||
.top-row[b-t730dw2tnh] a, .top-row[b-t730dw2tnh] .btn-link { | ||
margin-left: 0; | ||
} | ||
} | ||
|
||
@media (min-width: 641px) { | ||
.page[b-t730dw2tnh] { | ||
flex-direction: row; | ||
} | ||
|
||
.sidebar[b-t730dw2tnh] { | ||
width: 250px; | ||
height: 100vh; | ||
position: sticky; | ||
top: 0; | ||
} | ||
|
||
.top-row[b-t730dw2tnh] { | ||
position: sticky; | ||
top: 0; | ||
z-index: 1; | ||
} | ||
|
||
.top-row.auth[b-t730dw2tnh] a:first-child { | ||
flex: 1; | ||
text-align: right; | ||
width: 0; | ||
} | ||
|
||
.top-row[b-t730dw2tnh], article[b-t730dw2tnh] { | ||
padding-left: 2rem !important; | ||
padding-right: 1.5rem !important; | ||
} | ||
} | ||
/* /Layout/NavMenu.razor.rz.scp.css */ | ||
.navbar-toggler[b-t5av7sifgs] { | ||
background-color: rgba(255, 255, 255, 0.1); | ||
} | ||
|
||
.top-row[b-t5av7sifgs] { | ||
height: 3.5rem; | ||
background-color: rgba(0,0,0,0.4); | ||
} | ||
|
||
.navbar-brand[b-t5av7sifgs] { | ||
font-size: 1.1rem; | ||
} | ||
|
||
.bi[b-t5av7sifgs] { | ||
display: inline-block; | ||
position: relative; | ||
width: 1.25rem; | ||
height: 1.25rem; | ||
margin-right: 0.75rem; | ||
top: -1px; | ||
background-size: cover; | ||
} | ||
|
||
.bi-house-door-fill-nav-menu[b-t5av7sifgs] { | ||
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E"); | ||
} | ||
|
||
.nav-item[b-t5av7sifgs] { | ||
font-size: 0.9rem; | ||
padding-bottom: 0.5rem; | ||
} | ||
|
||
.nav-item:first-of-type[b-t5av7sifgs] { | ||
padding-top: 1rem; | ||
} | ||
|
||
.nav-item:last-of-type[b-t5av7sifgs] { | ||
padding-bottom: 1rem; | ||
} | ||
|
||
.nav-item[b-t5av7sifgs] a { | ||
color: #d7d7d7; | ||
border-radius: 4px; | ||
height: 3rem; | ||
display: flex; | ||
align-items: center; | ||
line-height: 3rem; | ||
} | ||
|
||
.nav-item[b-t5av7sifgs] a.active { | ||
background-color: rgba(255,255,255,0.37); | ||
color: white; | ||
} | ||
|
||
.nav-item[b-t5av7sifgs] a:hover { | ||
background-color: rgba(255,255,255,0.1); | ||
color: white; | ||
} | ||
|
||
@media (min-width: 641px) { | ||
.navbar-toggler[b-t5av7sifgs] { | ||
display: none; | ||
} | ||
|
||
.collapse[b-t5av7sifgs] { | ||
/* Never collapse the sidebar for wide screens */ | ||
display: block; | ||
} | ||
|
||
.nav-scrollable[b-t5av7sifgs] { | ||
/* Allow sidebar to scroll for tall menus */ | ||
height: calc(100vh - 3.5rem); | ||
overflow-y: auto; | ||
} | ||
} | ||
/* /Pages/Products.razor.rz.scp.css */ | ||
.box[b-2nlgajdip3] { | ||
border: 1px solid var(--color-green); | ||
border-radius: 5px; | ||
} | ||
|
||
.two-column-grid[b-2nlgajdip3] { | ||
display: grid; | ||
grid-template-columns: auto 1fr; | ||
gap: 10px 10px; | ||
padding: 5px; | ||
} | ||
|
||
summary[b-2nlgajdip3] { | ||
padding-left: 5px; | ||
background-color: var(--color-green); | ||
font-size: 20px; | ||
color: white; | ||
} | ||
|
||
|
||
table[b-2nlgajdip3] { | ||
border: 1px solid var(--color-green); | ||
} | ||
|
||
thead[b-2nlgajdip3] { | ||
background-color: var(--color-green); | ||
color: white; | ||
font-weight: 700; | ||
} | ||
|
||
th[b-2nlgajdip3], td[b-2nlgajdip3] { | ||
padding: 5px; | ||
} | ||
/* /Pages/Versions.razor.rz.scp.css */ | ||
.list[b-16ql2oywpw] { | ||
display: flex; | ||
flex: 1; | ||
flex-direction: column; | ||
cursor: pointer; | ||
} | ||
|
||
.list>div:is(:hover)[b-16ql2oywpw] { | ||
background-color:aliceblue; | ||
} | ||
|
||
/* /Shared/RecommendationConstructor.razor.rz.scp.css */ | ||
.box[b-mgci47w3dt] { | ||
border: 1px solid var(--color-green); | ||
border-radius: 5px; | ||
} | ||
|
||
.two-column-grid[b-mgci47w3dt] { | ||
display: grid; | ||
grid-template-columns: auto 1fr; | ||
gap: 10px 10px; | ||
padding: 5px; | ||
} | ||
|
||
summary[b-mgci47w3dt] { | ||
padding-left: 5px; | ||
background-color: var(--color-green); | ||
font-size: 20px; | ||
color: white; | ||
} | ||
/* /Shared/SearchConstructor.razor.rz.scp.css */ | ||
.box[b-9oyvq311d3] { | ||
border: 1px solid var(--color-green); | ||
border-radius: 5px; | ||
} | ||
|
||
.two-column-grid[b-9oyvq311d3] { | ||
display: grid; | ||
grid-template-columns: auto 1fr; | ||
gap: 10px 10px; | ||
padding: 5px; | ||
} | ||
|
||
summary[b-9oyvq311d3] { | ||
padding-left: 5px; | ||
background-color: var(--color-green); | ||
font-size: 20px; | ||
color: white; | ||
} | ||
/* /Shared/Troubleshooter.razor.rz.scp.css */ | ||
.grid[b-fghkt73d5b] { | ||
display: grid; | ||
grid-template-columns: auto 1fr; | ||
grid-gap: 5px; | ||
font-size: large; | ||
} | ||
|
||
.big-grid[b-fghkt73d5b] { | ||
grid-gap: 15px; | ||
} | ||
|
||
.position[b-fghkt73d5b] { | ||
text-align:right; | ||
} | ||
|
||
.card[b-fghkt73d5b] { | ||
display: flex; | ||
flex-direction: column; | ||
border: 2px solid black; | ||
border-radius: 10px; | ||
} | ||
|
||
.header[b-fghkt73d5b] { | ||
border-bottom: 2px solid black; | ||
display: grid; | ||
grid-template-columns: 1fr auto; | ||
padding: 5px; | ||
} | ||
|
||
.name[b-fghkt73d5b] { | ||
font-weight: bold; | ||
} | ||
|
||
.content[b-fghkt73d5b] { | ||
padding: 5px; | ||
} | ||
|
||
.icons[b-fghkt73d5b] { | ||
display: flex; | ||
flex-direction: row; | ||
grid-gap: 5px; | ||
} | ||
|
||
.icon[b-fghkt73d5b] { | ||
border-radius: 5px; | ||
width: fit-content; | ||
padding: 0px 4px 2px 4px; | ||
font-weight: bold; | ||
} | ||
|
||
.purple[b-fghkt73d5b] { | ||
background-color: #4207c1; | ||
color: white; | ||
} | ||
|
||
.green[b-fghkt73d5b] { | ||
background-color: #42c107; | ||
color: white; | ||
} | ||
|
||
.blue[b-fghkt73d5b] { | ||
background-color: #07a5c1; | ||
color: white; | ||
} | ||
|
||
.orange[b-fghkt73d5b] { | ||
background-color: #c16807; | ||
color: white; | ||
} |
38 changes: 38 additions & 0 deletions
38
_content/KristofferStrube.Blazor.DOM/KristofferStrube.Blazor.DOM.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
export function getAttribute(object, attribute) { return object[attribute]; } | ||
export function setAttribute(object, attribute, value) { object[attribute] = value; } | ||
|
||
export function getJSReference(element) { return element.valueOf(); } | ||
|
||
export function addEventListener(target, type, eventListener = null, options = null) | ||
{ | ||
target.addEventListener(type, eventListener, options) | ||
} | ||
|
||
export function removeEventListener(target, type, eventListener = null, options) | ||
{ | ||
target.removeEventListener(type, eventListener, options) | ||
} | ||
|
||
export function constructEventListener() { | ||
return { }; | ||
} | ||
|
||
export function registerEventHandlerAsync(objRef, jSInstance) { | ||
jSInstance.handleEvent = (e) => objRef.invokeMethodAsync("HandleEventAsync", DotNet.createJSObjectReference(e)) | ||
} | ||
|
||
export function registerInProcessEventHandlerAsync(objRef, jSInstance) { | ||
jSInstance.handleEvent = (e) => objRef.invokeMethodAsync("HandleEventInProcessAsync", DotNet.createJSObjectReference(e)) | ||
} | ||
|
||
export function constructEvent(type, eventInitDict = null) { | ||
return new Event(type, eventInitDict); | ||
} | ||
|
||
export function constructCustomEvent(type, eventInitDict = null) { | ||
return new CustomEvent(type, eventInitDict); | ||
} | ||
|
||
export function constructEventTarget() { return new EventTarget(); } | ||
|
||
export function constructAbortController() { return new AbortController(); } |
Oops, something went wrong.