Compare commits

...
6 Commits
12 changed files with 39 additions and 17 deletions
+1 -1
View File
@@ -7,7 +7,7 @@ div.overlay {
padding-top: 1em; padding-top: 1em;
z-index: 999; z-index: 999;
background-color: rgba(0, 0, 0, 0.90); background-color: rgba(0, 0, 0, 0.95);
overflow-y: scroll; overflow-y: scroll;
@@ -16,12 +16,13 @@
so you can still read it (or back it up) before leaving the page. so you can still read it (or back it up) before leaving the page.
</p> </p>
</annotation> </annotation>
<post for(post in state.log.posts) <post for(post in state.log.posts | status-var=loop)
key=post.id key=post.id
on-move("movePost", post) on-move("movePost", post)
on-remove("removePost", post) on-remove("removePost", post)
on-edited("postEdited") on-edited("postEdited")
user=input.user user=input.user
prev=(state.log.posts[loop.getIndex() - 1] || {})
post=post post=post
characters=state.log.characters characters=state.log.characters
last=(post.position === state.log.posts.length) last=(post.position === state.log.posts.length)
@@ -1,6 +1,6 @@
div.logs-content { div.logs-content {
width: 90%; width: 90%;
max-width: 75ch; max-width: 95ch;
margin: auto; margin: auto;
div.header { div.header {
@@ -1,4 +1,6 @@
<div if(!state.removed) class=["post", component.kindClass("post-type")]> $ const multipart = (input.post.nick == input.prev.nick && input.prev.multipart !== false);
<div if(!state.removed) class=["post", component.kindClass("post-type"), multipart ? "multipart" : null]>
<div class="post-meta-row"> <div class="post-meta-row">
<div class="options color-menu"> <div class="options color-menu">
<if-permitted user=input.user permission="post.move"> <if-permitted user=input.user permission="post.move">
@@ -24,7 +26,8 @@
<markdown class="post-content post-scene" source=state.text /> <markdown class="post-content post-scene" source=state.text />
</div> </div>
<div if(input.post.kind === "action") class="post-body color-text"> <div if(input.post.kind === "action") class="post-body color-text">
<markdown class="post-content post-action" source=(state.shortName + state.nameSuffix + " " + state.text) /> $ const prefix = (!multipart ? state.shortName + state.nameSuffix + " " : "");
<markdown class="post-content post-action" source=(prefix + state.text) />
</div> </div>
<div if(input.post.kind === "text") class="post-body color-text"> <div if(input.post.kind === "text") class="post-body color-text">
<markdown class="post-content post-text" source=state.text /> <markdown class="post-content post-text" source=state.text />
@@ -10,7 +10,7 @@ div.post {
position: absolute; position: absolute;
text-align: right; text-align: right;
width: calc(100% - 35.5ch); width: calc(100% - 35.5ch);
max-width: 75ch; max-width: 95ch;
a { a {
display: inline-block; display: inline-block;
@@ -53,4 +53,14 @@ div.post {
margin-top: 0; margin-top: 0;
padding-top: 0; padding-top: 0;
} }
}
div.post.multipart {
margin-top: -1.25em;
div.post-meta {
span {
display: none;
}
}
} }
+1 -1
View File
@@ -1,6 +1,6 @@
<include("../layout", {title: "Logs", site: "logs"})> <include("../layout", {title: "Logs", site: "logs"})>
<@body> <@body>
<background src="/assets/images/bg.png" opacity=0.25 /> <background src="/assets/images/bg.png" opacity=0.125 />
<page log=input.log user=input.user selected=input.selected /> <page log=input.log user=input.user selected=input.selected />
</@body> </@body>
</include> </include>
@@ -16,7 +16,7 @@
position: absolute; position: absolute;
text-align: right; text-align: right;
width: calc(100% - 35.5ch); width: calc(100% - 35.5ch);
max-width: 75ch; max-width: 95ch;
pointer-events: none; pointer-events: none;
@@ -1,6 +1,6 @@
.story-content { .story-content {
width: 90%; width: 90%;
max-width: 75ch; max-width: 95ch;
margin: auto; margin: auto;
h1 { h1 {
+1 -1
View File
@@ -1,6 +1,6 @@
<include("../layout", {title: "Stories", site: "story"})> <include("../layout", {title: "Stories", site: "story"})>
<@body> <@body>
<background src="/assets/images/bg.png" opacity=0.25 /> <background src="/assets/images/bg.png" opacity=0.125 />
<page story=input.story categories=input.categories user=input.user selected=input.selected /> <page story=input.story categories=input.categories user=input.user selected=input.selected />
</@body> </@body>
</include> </include>
@@ -9,7 +9,7 @@ div.tags-page {
} }
div.groups { div.groups {
column-count: 4; column-count: 5;
padding: 0.5em; padding: 0.5em;
div.group { div.group {
@@ -43,7 +43,15 @@ div.tags-page {
} }
} }
@media screen and (max-width: 1900px) { @media screen and (max-width: 2000px) {
div.tags-page {
div.groups {
column-count: 4;
}
}
}
@media screen and (max-width: 1400px) {
div.tags-page { div.tags-page {
div.groups { div.groups {
column-count: 3; column-count: 3;
@@ -51,7 +59,7 @@ div.tags-page {
} }
} }
@media screen and (max-width: 1300px) { @media screen and (max-width: 1000px) {
div.tags-page { div.tags-page {
div.groups { div.groups {
column-count: 2; column-count: 2;
@@ -59,7 +67,7 @@ div.tags-page {
} }
} }
@media screen and (max-width: 1000px) { @media screen and (max-width: 900px) {
div.tags-page { div.tags-page {
div.groups { div.groups {
column-count: 1; column-count: 1;
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@gisle/rpdata-frontend", "name": "@gisle/rpdata-frontend",
"version": "1.0.5", "version": "1.0.7",
"description": "RPData (www.aiterp.net) frontend/proxy", "description": "RPData (www.aiterp.net) frontend/proxy",
"main": "./index.js", "main": "./index.js",
"scripts": { "scripts": {
+2 -2
View File
@@ -33,7 +33,7 @@ lasso.configure({
outputDir: "./.static", // Place all generated JS/CSS/etc. files into the "static" dir outputDir: "./.static", // Place all generated JS/CSS/etc. files into the "static" dir
bundlingEnabled: isProduction, // Only enable bundling in production bundlingEnabled: isProduction, // Only enable bundling in production
minify: isProduction, // Only minify JS and CSS code in production minify: isProduction, // Only minify JS and CSS code in production
fingerprintsEnabled: true, // Only add fingerprints to URLs in production fingerprintsEnabled: isProduction, // Only add fingerprints to URLs in production
require: { require: {
builtins: { builtins: {
@@ -88,7 +88,7 @@ app.use("/story/by-author/", require("./routes/story/by-author"))
app.use("/story/tag-list/", require("./routes/story/tag-list")) app.use("/story/tag-list/", require("./routes/story/tag-list"))
app.use("/story/:id(S[0-9a-z]{15})/", require("./routes/story-content")) app.use("/story/:id(S[0-9a-z]{15})/", require("./routes/story-content"))
app.use("/logs/", require("./routes/logs")) app.use("/logs/", require("./routes/logs"))
app.use("/logs/:id([0-9]{4}-[0-1][0-9]-[0-3][0-9]_[0-9]{9}_[A-Za-z\,\']{2,})/", require("./routes/logs-content")) app.use("/logs/:id([0-9]{4}-[0-1][0-9]-[0-3][0-9]_[0-9]{9}_[A-Za-z0-9\,\']{2,})/", require("./routes/logs-content"))
app.use("/logs/:id(L[0-9]{0,7})/", require("./routes/logs-content")) app.use("/logs/:id(L[0-9]{0,7})/", require("./routes/logs-content"))
app.use("/data/", require("./routes/data")) app.use("/data/", require("./routes/data"))
app.use("/data/characters/", require("./routes/data/characters")) app.use("/data/characters/", require("./routes/data/characters"))