Compare commits
2 Commits
0dd4bcc7fe
...
27acb09ced
| Author | SHA1 | Date |
|---|---|---|
|
|
27acb09ced | |
|
|
8f145e926e |
|
|
@ -0,0 +1,4 @@
|
|||
- wrap: ['[Scene details](', ')']
|
||||
items:
|
||||
- link
|
||||
- text: 'on [traxxx](https://traxxx.me/).'
|
||||
|
|
@ -126,7 +126,7 @@ const changed = ref(false);
|
|||
const templateName = ref(initialTemplate?.name || `custom_${Date.now()}`);
|
||||
|
||||
function getSummary() {
|
||||
return processSummaryTemplate(template.value, props.release);
|
||||
return processSummaryTemplate(template.value, props.release, pageContext.env);
|
||||
}
|
||||
|
||||
const summary = ref(getSummary());
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
module.exports = {
|
||||
title: 'traxxx',
|
||||
origin: 'http://localhost:5100', // only used for absolute links
|
||||
database: {
|
||||
owner: {
|
||||
host: '127.0.0.1',
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
{
|
||||
"name": "traxxx-web",
|
||||
"version": "0.41.9",
|
||||
"version": "0.41.10",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"version": "0.41.9",
|
||||
"version": "0.41.10",
|
||||
"dependencies": {
|
||||
"@brillout/json-serializer": "^0.5.8",
|
||||
"@dicebear/collection": "^7.0.5",
|
||||
|
|
|
|||
|
|
@ -87,7 +87,7 @@
|
|||
"overrides": {
|
||||
"vite": "$vite"
|
||||
},
|
||||
"version": "0.41.9",
|
||||
"version": "0.41.10",
|
||||
"imports": {
|
||||
"#/*": "./*.js"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -431,7 +431,7 @@ function selectTemplate(templateId, allowFallback = true) {
|
|||
|
||||
const template = targetTemplate || templates[0];
|
||||
|
||||
summary.value = processSummaryTemplate(template.template, scene);
|
||||
summary.value = processSummaryTemplate(template.template, scene, env);
|
||||
selectedTemplate.value = template.id;
|
||||
|
||||
cookies.set('selectedTemplate', String(templateId));
|
||||
|
|
|
|||
|
|
@ -104,7 +104,9 @@ const now = new Date();
|
|||
const mockupRelease = {
|
||||
id: 0,
|
||||
title: 'Nut For Human Consumption',
|
||||
url: 'https://traxxx.me/scene/0/nut-for-human-consumption',
|
||||
slug: 'nut-for-human-consumption',
|
||||
link: 'https://traxxx.me/scene/0/nut-for-human-consumption',
|
||||
url: 'https://example.com/video/12345/nut-for-human-consumption',
|
||||
date: now,
|
||||
effectiveDate: now,
|
||||
createdAt: new Date(now.getFullYear(), 0, 1),
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@ export default async function mainHandler(req, res, next) {
|
|||
allowSignup: config.auth.signup,
|
||||
maxMatches: config.database.manticore.maxMatches,
|
||||
maxAggregateSize: config.database.manticore.maxAggregateSize,
|
||||
origin: config.origin,
|
||||
media: config.media,
|
||||
psa: config.psa,
|
||||
links: config.links,
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ const genderMap = {
|
|||
};
|
||||
|
||||
const propProcessors = {
|
||||
link: (sceneInfo, _options, env) => `${env.origin}/scene/${sceneInfo.id}/${sceneInfo.slug}`,
|
||||
channel: (sceneInfo) => sceneInfo.channel?.name || sceneInfo.network?.name,
|
||||
network: (sceneInfo) => sceneInfo.network?.name || sceneInfo.channel?.name,
|
||||
actors: (sceneInfo, options) => {
|
||||
|
|
@ -66,7 +67,7 @@ function curateValue(value, item) {
|
|||
.join(item.delimit || ', ');
|
||||
}
|
||||
|
||||
function traverseTemplate(chain, release, { delimit = ' ' } = {}) {
|
||||
function traverseTemplate(chain, release, env, { delimit = ' ' } = {}) {
|
||||
const results = chain.reduce((result, item) => {
|
||||
const keys = typeof item === 'string' ? item : item.key;
|
||||
|
||||
|
|
@ -84,14 +85,14 @@ function traverseTemplate(chain, release, { delimit = ' ' } = {}) {
|
|||
|
||||
if (keys) {
|
||||
const value = keys.split('|').reduce((acc, key) => acc
|
||||
|| propProcessors[key]?.(release, typeof item === 'string' ? { key } : item)
|
||||
|| propProcessors[key]?.(release, typeof item === 'string' ? { key } : item, env)
|
||||
|| release[key], null);
|
||||
|
||||
return result.concat(curateValue(value, item));
|
||||
}
|
||||
|
||||
if (item.items) {
|
||||
const group = traverseTemplate(item.items, release, {
|
||||
const group = traverseTemplate(item.items, release, env, {
|
||||
delimit: item.delimit,
|
||||
});
|
||||
|
||||
|
|
@ -109,8 +110,8 @@ function traverseTemplate(chain, release, { delimit = ' ' } = {}) {
|
|||
return '';
|
||||
}
|
||||
|
||||
export default function processSummaryTemplate(template, release) {
|
||||
export default function processSummaryTemplate(template, release, env) {
|
||||
const chain = parse(template);
|
||||
|
||||
return traverseTemplate(chain, release);
|
||||
return traverseTemplate(chain, release, env);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue