spec-up-t 1.6.0-beta.6 → 1.6.0-beta.7

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.
@@ -1,4 +1,4 @@
1
- :root{--card-bg:#fff;--card-bg-dt:#fcfcfc;--toc-bg:#fff;--toc-text:#212529;--header-navbar-bg:#f8f9fa;--header-navbar-text:#212529;--card-text:#212529;--card-border:rgba(0, 0, 0, 0.125);--card-shadow:rgba(0, 0, 0, 0.075);--card-hover-bg:#f8f9fa;--local-term-bg:#f0f8ff;--external-term-bg:#a9dde03b;--error-message-bg:#f8c481;--error-message-text:#03365f;--term-reference-bg:rgba(234, 245, 251, 0.1);--term-reference-border:#ddf0fb;--table-border:#ddd;--table-header-bg:#f5f5f5;--warning-message-bg:#fff3cd;--warning-message-border:#ffc107;--warning-message-text:#856404;--note-bg:#E9FBE9;--note-border:#52E052;--note-text:#178217;--issue-bg:rgb(233, 240, 251);--issue-border:rgb(82, 127, 224);--issue-text:rgb(30, 76, 174);--warning-notice-bg:#FBE9E9;--warning-notice-border:#E05252;--warning-notice-text:#AE1E1E;--todo-bg:#fbe4ff;--todo-border:#9700e2;--todo-text:#6d00a2}[data-bs-theme=dark]{--card-bg:#212529;--card-bg-dt:#24282d;--toc-bg:#212529;--toc-text:#f8f9fa;--header-navbar-bg:#343a40;--header-navbar-text:#f8f9fa;--card-text:#f8f9fa;--card-border:rgba(255, 255, 255, 0.125);--card-shadow:rgba(0, 0, 0, 0.2);--card-hover-bg:#343a40;--local-term-bg:#2a3f4f;--external-term-bg:rgba(100, 180, 200, 0.2);--error-message-bg:#8b6b3d;--error-message-text:#ffd89b;--term-reference-bg:rgba(45, 69, 80, 0.1);--term-reference-border:#5a8fa8;--table-border:#555;--table-header-bg:#2c3135;--warning-message-bg:#6b5416;--warning-message-border:#8b6b1d;--warning-message-text:#ffd89b;--note-bg:#1a3d1a;--note-border:#2d6b2d;--note-text:#7ec97e;--issue-bg:#1a2840;--issue-border:#3a5a8a;--issue-text:#7fa8d6;--warning-notice-bg:#3d1a1a;--warning-notice-border:#6b2d2d;--warning-notice-text:#e97e7e;--todo-bg:#2d1a3d;--todo-border:#5a3a6b;--todo-text:#c89edc}
1
+ :root{--card-bg:#fff;--card-bg-dt:#fcfcfc;--toc-bg:#fff;--toc-text:#212529;--header-navbar-bg:#f8f9fa;--header-navbar-text:#212529;--card-text:#212529;--card-border:rgba(0, 0, 0, 0.125);--card-shadow:rgba(0, 0, 0, 0.075);--card-hover-bg:#f8f9fa;--local-term-bg:#f0f8ff;--external-term-bg:#a9dde03b;--error-message-bg:#f8c481;--error-message-text:#03365f;--term-reference-bg:rgba(234, 245, 251, 0.1);--term-reference-border:#ddf0fb;--table-border:#ddd;--table-header-bg:#f5f5f5;--warning-message-bg:#fff3cd;--warning-message-border:#ffc107;--warning-message-text:#856404;--note-bg:#E9FBE9;--note-border:#52E052;--note-text:#178217;--issue-bg:rgb(233, 240, 251);--issue-border:rgb(82, 127, 224);--issue-text:rgb(30, 76, 174);--warning-notice-bg:#FBE9E9;--warning-notice-border:#E05252;--warning-notice-text:#AE1E1E;--todo-bg:#fbe4ff;--todo-border:#9700e2;--todo-text:#6d00a2;--informative-bg:#f5f7f9;--informative-border:#b8c5d6;--informative-text:#5a6a7a}[data-bs-theme=dark]{--card-bg:#212529;--card-bg-dt:#24282d;--toc-bg:#212529;--toc-text:#f8f9fa;--header-navbar-bg:#343a40;--header-navbar-text:#f8f9fa;--card-text:#f8f9fa;--card-border:rgba(255, 255, 255, 0.125);--card-shadow:rgba(0, 0, 0, 0.2);--card-hover-bg:#343a40;--local-term-bg:#2a3f4f;--external-term-bg:rgba(100, 180, 200, 0.2);--error-message-bg:#8b6b3d;--error-message-text:#ffd89b;--term-reference-bg:rgba(45, 69, 80, 0.1);--term-reference-border:#5a8fa8;--table-border:#555;--table-header-bg:#2c3135;--warning-message-bg:#6b5416;--warning-message-border:#8b6b1d;--warning-message-text:#ffd89b;--note-bg:#1a3d1a;--note-border:#2d6b2d;--note-text:#7ec97e;--issue-bg:#1a2840;--issue-border:#3a5a8a;--issue-text:#7fa8d6;--warning-notice-bg:#3d1a1a;--warning-notice-border:#6b2d2d;--warning-notice-text:#e97e7e;--todo-bg:#2d1a3d;--todo-border:#5a3a6b;--todo-text:#c89edc;--informative-bg:#1f2428;--informative-border:#3d454d;--informative-text:#8b95a1}
2
2
  /*!
3
3
  * Bootstrap v5.3.3 (https://getbootstrap.com/)
4
4
  * Copyright 2011-2024 The Bootstrap Authors
@@ -30,4 +30,4 @@ article a[href^="https://"]:not(.btn)::after,article a[href^=http]:not(.btn)::af
30
30
  #content .figure:has(.scrollHintImage){padding:0;margin:0;width:auto;height:auto}
31
31
  .highlight2{padding-left:1em;padding-right:1em;border:1px dashed #71bbe6;background:#f3f5f53b}
32
32
  #toc ul.toc{counter-reset:toc-section}#toc ul.toc>li{counter-reset:toc-subsection}#toc ul.toc>li>ul>li{counter-reset:toc-subsubsection}#toc ul.toc>li>a::before{counter-increment:toc-section;content:counter(toc-section) ". ";font-weight:700;margin-right:.5em}#toc ul.toc>li>ul>li>a::before{counter-increment:toc-subsection;content:counter(toc-section) "." counter(toc-subsection) " ";font-weight:700;margin-right:.5em}#toc ul.toc>li>ul>li>ul>li>a::before{counter-increment:toc-subsubsection;content:counter(toc-section) "." counter(toc-subsection) "." counter(toc-subsubsection) " ";font-weight:700;margin-right:.5em}main article{counter-reset:main-section}main article h2{counter-reset:main-subsection}main article h3{counter-reset:main-subsubsection}main article h2 .toc-anchor::after{counter-increment:main-section;content:" " counter(main-section) ".";font-weight:700}main article h3 .toc-anchor::after{counter-increment:main-subsection;content:" " counter(main-section) "." counter(main-subsection);font-weight:700}main article h4 .toc-anchor::after{counter-increment:main-subsubsection;content:" " counter(main-section) "." counter(main-subsection) "." counter(main-subsubsection);font-weight:700}main article h5::before,main article h6::before{font-weight:700;margin-right:.5em}@media print{#toc ul.toc>li>a::before,#toc ul.toc>li>ul>li>a::before,#toc ul.toc>li>ul>li>ul>li>a::before,main article h2 .toc-anchor::after,main article h3 .toc-anchor::after,main article h4 .toc-anchor::after{color:#000!important}}
33
- html{scroll-behavior:smooth;scroll-padding-top:50vh}body:not([hashscroll]) :target{animation:highlight-target 3.5s .25s ease}body:not([hashscroll]) dt:has(:target){animation:highlight-target-parent-dt 3.5s .25s ease}dl.terms-and-definitions-list>.highlight{background-color:#ff0!important;transition:background-color .3s ease-in-out}svg[icon]{width:1.25em;height:1.25em;vertical-align:text-top}@keyframes highlight-target{50%{background-color:#ff0}}@keyframes highlight-target-parent-dt{50%{background-color:#ff0;border:1px solid #00c8ff}}#svg{display:none}main *{overflow-wrap:anywhere;word-break:normal}.table-responsive{overflow-x:auto!important;-webkit-overflow-scrolling:touch;width:100%;max-width:100%}.table-responsive *{overflow-wrap:normal!important;word-break:normal!important;white-space:nowrap!important}dd td img{max-width:30px}.notice{margin:1em 0;padding:.5em .9em .55em .65em;border-left:.5em solid}.notice p{margin:.4em 0 0}.note{background:var(--note-bg);border-color:var(--note-border)}.note .notice-link{display:block;color:var(--note-text)}.issue{background:var(--issue-bg);border-color:var(--issue-border)}.issue .notice-link:before{display:block;color:var(--issue-text)}.warning{background:var(--warning-notice-bg);border-color:var(--warning-notice-border)}.warning .notice-link{display:block;color:var(--warning-notice-text)}.example{color:#cebe00;background:#1a1e23;border-left:.5em solid}.example .notice-link{display:block;color:inherit;font-size:1.1em;font-family:Heebo,sans-serif}.example pre[class*=language-]{padding:0;border-radius:0}.todo{background:var(--todo-bg);border-color:var(--todo-border)}.todo .notice-link{display:block;color:var(--todo-text)}.alert-primary{background-color:#f9fcff;border-color:#b2ebf2;color:#00838f}.alert-secondary{background-color:#f5f5f5;border-color:#e0e0e0;color:#616161}.alert-success{background-color:#e8f5e9;border-color:#c8e6c9;color:#388e3c}.alert-danger{background-color:#ffebee;border-color:#ef9a9a;color:#d32f2f}.alert-warning{background-color:#fffde7;border-color:#fff9c4;color:#f9a825}.alert-info{background-color:#e1f5fe;border-color:#b3e5fc;color:#0288d1}.alert-light{background-color:#f9f9f9;border-color:#eee;color:#424242}.alert-dark{background-color:#e0e0e0;border-color:#bdbdbd;color:#212121}.alert a{color:inherit;font-weight:700}.alert-primary a{color:#006064}.alert-success a{color:#2e7d32}.alert-danger a{color:#b71c1c}.alert-warning a{color:#f57f17}.alert-info a{color:#01579b}.alert-dark a{color:#000}[data-bs-theme=dark] .alert-primary{background-color:#004d40;border-color:#00695c;color:#b2dfdb}[data-bs-theme=dark] .alert-secondary{background-color:#424242;border-color:#616161;color:#e0e0e0}[data-bs-theme=dark] .alert-success{background-color:#1b5e20;border-color:#2e7d32;color:#a5d6a7}[data-bs-theme=dark] .alert-danger{background-color:#b71c1c;border-color:#c62828;color:#ef9a9a}[data-bs-theme=dark] .alert-warning{background-color:#f57f17;border-color:#ffb300;color:#ffe082}[data-bs-theme=dark] .alert-info{background-color:#01579b;border-color:#0277bd;color:#81d4fa}[data-bs-theme=dark] .alert-light{background-color:#303030;border-color:#424242;color:#e0e0e0}[data-bs-theme=dark] .alert-dark{background-color:#212121;border-color:#424242;color:#bdbdbd}[data-bs-theme=dark] .alert a{color:inherit;font-weight:700}[data-bs-theme=dark] .alert-primary a{color:#80cbc4}[data-bs-theme=dark] .alert-success a{color:#81c784}[data-bs-theme=dark] .alert-danger a{color:#ef5350}[data-bs-theme=dark] .alert-warning a{color:#ffca28}[data-bs-theme=dark] .alert-info a{color:#4fc3f7}[data-bs-theme=dark] .alert-dark a{color:#9e9e9e}#offcanvasSettings .btn-menu-item{border-radius:unset;width:100%;text-align:left;border:1px solid #dee2e6;background-color:var(--card-bg);color:var(--card-text);padding:10px 15px;margin-bottom:5px;transition:background-color .2s ease}#offcanvasSettings .btn-menu-item:hover{background-color:#e9ecef}
33
+ html{scroll-behavior:smooth;scroll-padding-top:50vh}body:not([hashscroll]) :target{animation:highlight-target 3.5s .25s ease}body:not([hashscroll]) dt:has(:target){animation:highlight-target-parent-dt 3.5s .25s ease}dl.terms-and-definitions-list>.highlight{background-color:#ff0!important;transition:background-color .3s ease-in-out}svg[icon]{width:1.25em;height:1.25em;vertical-align:text-top}@keyframes highlight-target{50%{background-color:#ff0}}@keyframes highlight-target-parent-dt{50%{background-color:#ff0;border:1px solid #00c8ff}}#svg{display:none}main *{overflow-wrap:anywhere;word-break:normal}.table-responsive{overflow-x:auto!important;-webkit-overflow-scrolling:touch;width:100%;max-width:100%}.table-responsive *{overflow-wrap:normal!important;word-break:normal!important;white-space:nowrap!important}dd td img{max-width:30px}.notice{margin:1em 0;padding:.5em .9em .55em .65em;border-left:.5em solid}.notice p{margin:.4em 0 0}.note{background:var(--note-bg);border-color:var(--note-border)}.note .notice-link{display:block;color:var(--note-text)}.issue{background:var(--issue-bg);border-color:var(--issue-border)}.issue .notice-link:before{display:block;color:var(--issue-text)}.warning{background:var(--warning-notice-bg);border-color:var(--warning-notice-border)}.warning .notice-link{display:block;color:var(--warning-notice-text)}.example{color:#cebe00;background:#1a1e23;border-left:.5em solid}.example .notice-link{display:block;color:inherit;font-size:1.1em;font-family:Heebo,sans-serif}.example pre[class*=language-]{padding:0;border-radius:0}.todo{background:var(--todo-bg);border-color:var(--todo-border)}.todo .notice-link{display:block;color:var(--todo-text)}.informative{background:var(--informative-bg);border-color:var(--informative-border)}.informative .notice-link{display:block;color:var(--informative-text)}.alert-primary{background-color:#f9fcff;border-color:#b2ebf2;color:#00838f}.alert-secondary{background-color:#f5f5f5;border-color:#e0e0e0;color:#616161}.alert-success{background-color:#e8f5e9;border-color:#c8e6c9;color:#388e3c}.alert-danger{background-color:#ffebee;border-color:#ef9a9a;color:#d32f2f}.alert-warning{background-color:#fffde7;border-color:#fff9c4;color:#f9a825}.alert-info{background-color:#e1f5fe;border-color:#b3e5fc;color:#0288d1}.alert-light{background-color:#f9f9f9;border-color:#eee;color:#424242}.alert-dark{background-color:#e0e0e0;border-color:#bdbdbd;color:#212121}.alert a{color:inherit;font-weight:700}.alert-primary a{color:#006064}.alert-success a{color:#2e7d32}.alert-danger a{color:#b71c1c}.alert-warning a{color:#f57f17}.alert-info a{color:#01579b}.alert-dark a{color:#000}[data-bs-theme=dark] .alert-primary{background-color:#004d40;border-color:#00695c;color:#b2dfdb}[data-bs-theme=dark] .alert-secondary{background-color:#424242;border-color:#616161;color:#e0e0e0}[data-bs-theme=dark] .alert-success{background-color:#1b5e20;border-color:#2e7d32;color:#a5d6a7}[data-bs-theme=dark] .alert-danger{background-color:#b71c1c;border-color:#c62828;color:#ef9a9a}[data-bs-theme=dark] .alert-warning{background-color:#f57f17;border-color:#ffb300;color:#ffe082}[data-bs-theme=dark] .alert-info{background-color:#01579b;border-color:#0277bd;color:#81d4fa}[data-bs-theme=dark] .alert-light{background-color:#303030;border-color:#424242;color:#e0e0e0}[data-bs-theme=dark] .alert-dark{background-color:#212121;border-color:#424242;color:#bdbdbd}[data-bs-theme=dark] .alert a{color:inherit;font-weight:700}[data-bs-theme=dark] .alert-primary a{color:#80cbc4}[data-bs-theme=dark] .alert-success a{color:#81c784}[data-bs-theme=dark] .alert-danger a{color:#ef5350}[data-bs-theme=dark] .alert-warning a{color:#ffca28}[data-bs-theme=dark] .alert-info a{color:#4fc3f7}[data-bs-theme=dark] .alert-dark a{color:#9e9e9e}#offcanvasSettings .btn-menu-item{border-radius:unset;width:100%;text-align:left;border:1px solid #dee2e6;background-color:var(--card-bg);color:var(--card-text);padding:10px 15px;margin-bottom:5px;transition:background-color .2s ease}#offcanvasSettings .btn-menu-item:hover{background-color:#e9ecef}
@@ -149,6 +149,16 @@ dd td img {
149
149
  color: var(--todo-text);
150
150
  }
151
151
 
152
+ .informative {
153
+ background: var(--informative-bg);
154
+ border-color: var(--informative-border);
155
+ }
156
+
157
+ .informative .notice-link {
158
+ display: block;
159
+ color: var(--informative-text);
160
+ }
161
+
152
162
  /* End Notices */
153
163
 
154
164
 
@@ -70,6 +70,12 @@ Example of how to use these variables in your CSS:
70
70
  /* Purple border for todos */
71
71
  --todo-text: #6d00a2;
72
72
  /* Dark purple text for todos */
73
+ --informative-bg: #f5f7f9;
74
+ /* Very light grey-blue background for informative - subtle and non-intrusive */
75
+ --informative-border: #b8c5d6;
76
+ /* Soft grey-blue border for informative */
77
+ --informative-text: #5a6a7a;
78
+ /* Muted grey-blue text for informative */
73
79
 
74
80
  }
75
81
 
@@ -137,6 +143,12 @@ Example of how to use these variables in your CSS:
137
143
  /* Muted purple border for todos */
138
144
  --todo-text: #c89edc;
139
145
  /* Light purple text for todos */
146
+ --informative-bg: #1f2428;
147
+ /* Very subtle dark grey-blue background for informative */
148
+ --informative-border: #3d454d;
149
+ /* Muted grey-blue border for informative in dark mode */
150
+ --informative-text: #8b95a1;
151
+ /* Soft grey-blue text for informative in dark mode */
140
152
 
141
153
  }
142
154
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spec-up-t",
3
- "version": "1.6.0-beta.6",
3
+ "version": "1.6.0-beta.7",
4
4
  "description": "Technical specification drafting tool that generates rich specification documents from markdown. Forked from https://github.com/decentralized-identity/spec-up by Daniel Buchner (https://github.com/csuwildcat)",
5
5
  "main": "./index",
6
6
  "repository": {
@@ -63,6 +63,16 @@ No more;
63
63
  Get this done!
64
64
  :::
65
65
 
66
+ <pre>
67
+ ::: informative Additional Context
68
+ Here's some helpful information that's subtle and non-intrusive.
69
+ :::
70
+ </pre>
71
+
72
+ ::: informative Additional Context
73
+ Here's some helpful information that's subtle and non-intrusive.
74
+ :::
75
+
66
76
  <pre>
67
77
  ::: example Code Example
68
78
  Put your code block here
@@ -1,3 +1,18 @@
1
+ /**
2
+ * Maps notice type names to their display labels.
3
+ * This allows for custom formatting of notice type labels in the rendered output.
4
+ *
5
+ * @param {string} type - The notice type identifier (e.g., 'informative')
6
+ * @returns {string} The formatted display label (e.g., 'INFORMATIVE SECTION')
7
+ */
8
+ function getNoticeDisplayLabel(type) {
9
+ const displayLabels = {
10
+ 'informative': 'INFORMATIVE SECTION'
11
+ };
12
+
13
+ return displayLabels[type] || type.toUpperCase();
14
+ }
15
+
1
16
  /**
2
17
  * Configures and applies external markdown-it plugins to a given markdown-it instance.
3
18
  * This module centralizes plugin loading to reduce complexity in the main index.js file.
@@ -86,7 +101,7 @@ function configurePlugins(md, config, containers, noticeTypes, noticeTitles, set
86
101
  // Auto-generated ID
87
102
  id = type + '-' + noticeTypes[type]++;
88
103
  }
89
- return `<div id="${id}" class="notice ${type}"><a class="notice-link" href="#${id}">${type.toUpperCase()}</a>`;
104
+ return `<div id="${id}" class="notice ${type}"><a class="notice-link" href="#${id}">${getNoticeDisplayLabel(type)}</a>`;
90
105
  } else {
91
106
  return '</div>\n';
92
107
  }
@@ -20,7 +20,8 @@ const noticeTypes = {
20
20
  issue: 1,
21
21
  example: 1,
22
22
  warning: 1,
23
- todo: 1
23
+ todo: 1,
24
+ 'informative': 1
24
25
  };
25
26
  // Domain-specific regex patterns for markdown parsing (now centralized)
26
27
  const specNameRegex = templateTags.specName;