stash
This commit is contained in:
parent
ed04d98bf1
commit
aa94c92000
10 changed files with 873 additions and 296 deletions
|
|
@ -76,13 +76,23 @@ const QR_ONLY_TEMPLATES = [
|
|||
export const LABEL_TEMPLATES = [
|
||||
{
|
||||
id: "mqr-token", name: "MQR Token", description: "The code with the encoded text printed next to it.",
|
||||
required_vars: ["shortId"],
|
||||
required_vars: ["shortId"], tags: ["internal"],
|
||||
layout: [{type: "mqr", content: c => c.shortId}]
|
||||
},
|
||||
{
|
||||
id: "qr-url", name: "MQR Token", description: "The code with the encoded text printed next to it.",
|
||||
required_vars: ["shortUrl"],
|
||||
required_vars: ["shortUrl"], tags: ["external"],
|
||||
layout: [{type: "qr-h", content: c => c.shortUrl}]
|
||||
},
|
||||
{
|
||||
id: "rmqr-url", name: "rMQR Token", description: "The code with the encoded text printed next to it.",
|
||||
required_vars: ["shortUrl","itemId"], tags: ["external"],
|
||||
layout: [{type: "rmqr", content: c => c.shortUrl},GAP,{type: "text", content: c => c.itemId?.toString().padStart(4, "0")}]
|
||||
},
|
||||
{
|
||||
id: "mqr-tokem-id", name: "rMQR Token", description: "The code with the encoded text printed next to it.",
|
||||
required_vars: ["shortId","itemId"], tags: ["internal"],
|
||||
layout: [{type: "mqr", content: c => c.shortId},GAP,{type: "text", content: c => c.itemId?.toString().padStart(4, "0")}]
|
||||
},...QR_ONLY_TEMPLATES,
|
||||
|
||||
{
|
||||
|
|
@ -113,66 +123,66 @@ export const LABEL_TEMPLATES = [
|
|||
{
|
||||
id: "item-handle", name: "Item handle",
|
||||
description: "The compact owner@domain:id handle - meaningful in-app, not scannable on its own.",
|
||||
required_vars: ["itemHandle"],
|
||||
required_vars: ["itemHandle"], tags: ["internal"],
|
||||
layout: [{type: "text", content: c => c.itemHandle}]
|
||||
},
|
||||
{
|
||||
id: "item-url", name: "Item URL",
|
||||
description: "The full item URL as text, with no code - for copying rather than scanning.",
|
||||
required_vars: ["itemUrl"],
|
||||
required_vars: ["itemUrl"], tags: ["external"],
|
||||
layout: [{type: "text", content: c => c.itemUrl}]
|
||||
},
|
||||
{
|
||||
id: "owner-handle", name: "Owner handle", description: "Just the owning user's handle, as text only.",
|
||||
required_vars: ["userHandle"],
|
||||
required_vars: ["userHandle"], tags: ["internal"],
|
||||
layout: [{type: "text", content: c => c.userHandle}]
|
||||
},
|
||||
{
|
||||
id: "item-id", name: "Item ID", description: "Just the bare item id, as text only.",
|
||||
required_vars: ["itemId"],
|
||||
required_vars: ["itemId"], tags: ["internal"],
|
||||
layout: [{type: "text", content: c => c.itemId}]
|
||||
},
|
||||
{
|
||||
id: "owner-id-text", name: "Owner + item ID",
|
||||
description: "The owner's handle and the item id, as two lines of text - no code.",
|
||||
required_vars: ["userHandle", "itemId"],
|
||||
required_vars: ["userHandle", "itemId"], tags: ["internal"],
|
||||
layout: [{type: "text", content: c => [c.userHandle, c.itemId]}]
|
||||
},
|
||||
{
|
||||
id: "item-url-qr-handle", name: "Item URL + handle",
|
||||
description: "Scannable item URL, with the item's compact handle printed alongside.",
|
||||
required_vars: ["itemUrl", "itemHandle"],
|
||||
required_vars: ["itemUrl", "itemHandle"], tags: ["external"],
|
||||
layout: [{type: "qr", content: c => c.itemUrl}, GAP, {type: "text", content: c => c.itemHandle}]
|
||||
},
|
||||
{
|
||||
id: "item-url-qr-owner", name: "Item URL + owner",
|
||||
description: "Scannable item URL, with the owner's handle printed alongside.",
|
||||
required_vars: ["itemUrl", "userHandle"],
|
||||
required_vars: ["itemUrl", "userHandle"], tags: ["external"],
|
||||
layout: [{type: "qr", content: c => c.itemUrl}, GAP, {type: "text", content: c => c.userHandle}]
|
||||
},
|
||||
{
|
||||
id: "item-url-qr-id", name: "Item URL + item ID",
|
||||
description: "Scannable item URL, with the bare item id printed alongside.",
|
||||
required_vars: ["itemUrl", "itemId"],
|
||||
required_vars: ["itemUrl", "itemId"], tags: ["external"],
|
||||
layout: [{type: "qr", content: c => c.itemUrl}, GAP, {type: "text", content: c => c.itemId}]
|
||||
},
|
||||
{
|
||||
id: "item-url-qr-owner-id", name: "Item URL + owner + ID",
|
||||
description: "Scannable item URL, with the owner's handle and the item id on two lines alongside.",
|
||||
required_vars: ["itemUrl", "userHandle", "itemId"],
|
||||
required_vars: ["itemUrl", "userHandle", "itemId"], tags: ["external"],
|
||||
layout: [{type: "qr", content: c => c.itemUrl}, GAP, {type: "text", content: c => [c.userHandle, c.itemId]}]
|
||||
},
|
||||
{
|
||||
id: "short-url-qr", name: "Short link (QR code)",
|
||||
description: "Scannable short link for this item or storage location - more compact than "
|
||||
+ "the full URL. Available for any element with a resolvable short link, not just items.",
|
||||
required_vars: ["shortUrl"],
|
||||
required_vars: ["shortUrl"], tags: ["external"],
|
||||
layout: [{type: "qr", content: c => c.shortUrl}]
|
||||
},
|
||||
{
|
||||
id: "item-url-qr-owner-id2", name: "Item URL + owner + ID",
|
||||
description: "Scannable item URL, with the owner's handle and the item id on two lines alongside.",
|
||||
required_vars: ["itemUrl", "userHandle", "itemId"],
|
||||
required_vars: ["itemUrl", "userHandle", "itemId"], tags: ["external"],
|
||||
layout: [{type: "qr", content: c => c.itemUrl}, GAP, [{
|
||||
type: "text",
|
||||
content: c => c.userHandle
|
||||
|
|
@ -180,6 +190,10 @@ export const LABEL_TEMPLATES = [
|
|||
},
|
||||
];
|
||||
|
||||
// Every distinct tag value used across LABEL_TEMPLATES' tags, in first-seen order - drives
|
||||
// LabelLayoutPreview.vue's filter buttons without hand-listing "internal"/"external" there.
|
||||
export const LABEL_TAGS = [...new Set(LABEL_TEMPLATES.flatMap(t => t.tags ?? []))];
|
||||
|
||||
// Every field name any template's required_vars names, in first-seen order.
|
||||
export const KNOWN_VARS = [...new Set(LABEL_TEMPLATES.flatMap(t => t.required_vars))];
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue