@airmark/quiver 0.29.0 → 0.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@airmark/quiver",
3
- "version": "0.29.0",
3
+ "version": "0.30.0",
4
4
  "description": "Airmark Quiver — Air Force and DAF document Quills for Quillmark.",
5
5
  "type": "module",
6
6
  "exports": {
@@ -67,23 +67,18 @@ main:
67
67
  description: "Line 1: Name in UPPERCASE as signed, grade, and service. Line 2: Duty title."
68
68
 
69
69
  letterhead_title:
70
- type: plaintext
71
- inline: true
72
- default: DEPARTMENT OF THE AIR FORCE
73
- ui:
74
- group: letterhead
75
- description: Change only for Joint Commands or DoW agencies.
76
-
77
- letterhead_caption:
78
70
  type: array
79
71
  items:
80
72
  type: plaintext
81
73
  inline: true
74
+ default:
75
+ - DEPARTMENT OF THE AIR FORCE
82
76
  example:
77
+ - DEPARTMENT OF THE AIR FORCE
83
78
  - HEADQUARTERS [UNIT NAME]
84
79
  ui:
85
80
  group: letterhead
86
- description: The full organization name of your unit.
81
+ description: "Letterhead lines, top to bottom. The first is the department title, set larger than the rest; change it only for Joint Commands or DoW agencies. The lines below it are your unit's full organization name."
87
82
 
88
83
  letterhead_seal:
89
84
  type: enum
@@ -1,11 +1,18 @@
1
1
  #import "@local/quillmark-helper:0.1.0": data, signature-field
2
2
  #import "@local/tonguetoquill-usaf-memo:4.0.0": backmatter, frontmatter, indorsement, mainmatter
3
3
 
4
+ // The letterhead arrives as one ordered array of lines. Element 0 is the title,
5
+ // set larger; the rest are caption lines beneath it. A single element renders
6
+ // the title alone — the package skips a falsey caption. An empty array renders
7
+ // no letterhead text at all, silently: the block is `place`d, so an empty title
8
+ // leaves no glyphs and takes no space from the flow, and the seal stands alone.
9
+ #let letterhead_lines = data.letterhead_title
10
+
4
11
  // Frontmatter configuration
5
12
  #show: frontmatter.with(
6
13
  // Letterhead configuration
7
- letterhead_title: data.letterhead_title,
8
- letterhead_caption: data.letterhead_caption,
14
+ letterhead_title: letterhead_lines.at(0, default: ""),
15
+ letterhead_caption: if letterhead_lines.len() > 1 { letterhead_lines.slice(1) } else { () },
9
16
  letterhead_seal_subtitle: data.at("letterhead_seal_subtitle", default: none),
10
17
  letterhead_seal: image(
11
18
  if data.at("letterhead_seal", default: "dow") == "dod" {