businesslens 0.7.0 → 0.7.1

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/CHANGELOG.md CHANGED
@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.7.1] - 2026-08-04
11
+
12
+ ### Fixed
13
+
14
+ - Compile the public `businesslens/theme-lab/variants` subpath into `dist` so
15
+ plain Node consumers such as Playwright can import it from `node_modules`
16
+ without relying on unsupported TypeScript stripping.
17
+
10
18
  ## [0.7.0] - 2026-08-04
11
19
 
12
20
  ### Added
@@ -246,7 +254,8 @@ Initial public launch of the repository.
246
254
  `docs/format.md`.
247
255
  - Claude plugin manifest and marketplace entry.
248
256
 
249
- [Unreleased]: https://github.com/businesslens/pdd/compare/v0.7.0...HEAD
257
+ [Unreleased]: https://github.com/businesslens/pdd/compare/v0.7.1...HEAD
258
+ [0.7.1]: https://github.com/businesslens/pdd/compare/v0.7.0...v0.7.1
250
259
  [0.7.0]: https://github.com/businesslens/pdd/compare/v0.6.0...v0.7.0
251
260
  [0.6.0]: https://github.com/businesslens/pdd/compare/v0.5.0...v0.6.0
252
261
  [0.5.0]: https://github.com/businesslens/pdd/compare/v0.4.0...v0.5.0
@@ -0,0 +1,39 @@
1
+ //#region layers/nuxt/theme-lab/app/utils/businesslensThemeLabVariants.d.ts
2
+ interface BusinessLensBackgroundVariant {
3
+ /** Value written to `<html data-bg-light>` / `<html data-bg-dark>`. */
4
+ id: string;
5
+ name: string;
6
+ tagline: string;
7
+ /** Preview fill for the switcher chip — mirrors the CSS treatment. */
8
+ preview: string;
9
+ /** Browser chrome color used while this variant is active. */
10
+ themeColor: string;
11
+ }
12
+ declare const BUSINESSLENS_LIGHT_BACKGROUNDS: BusinessLensBackgroundVariant[];
13
+ declare const BUSINESSLENS_DARK_BACKGROUNDS: BusinessLensBackgroundVariant[];
14
+ declare const BUSINESSLENS_DEFAULT_LIGHT_BACKGROUND = "l4";
15
+ declare const BUSINESSLENS_DEFAULT_DARK_BACKGROUND = "d1";
16
+ declare function findBusinessLensBackground(list: BusinessLensBackgroundVariant[], id: string | null | undefined, fallback: string): BusinessLensBackgroundVariant;
17
+ type BusinessLensLogoDisplay = 'mark' | 'lockup';
18
+ interface BusinessLensLogoVariant {
19
+ id: string;
20
+ name: string;
21
+ tagline: string;
22
+ /** Basename under `/brand/logo/variants`, without the `-dark` suffix. */
23
+ file: string;
24
+ }
25
+ interface BusinessLensLockupVariant extends BusinessLensLogoVariant {
26
+ direction: 'row' | 'column';
27
+ wordmarkHeight: number;
28
+ symbolScale: number;
29
+ gapRatio: number;
30
+ }
31
+ declare const BUSINESSLENS_MARK_VARIANTS: BusinessLensLogoVariant[];
32
+ declare const BUSINESSLENS_LOCKUP_VARIANTS: BusinessLensLockupVariant[];
33
+ declare const BUSINESSLENS_DEFAULT_MARK: string;
34
+ declare const BUSINESSLENS_DEFAULT_LOCKUP = "k3";
35
+ declare const BUSINESSLENS_DEFAULT_LOGO_DISPLAY: BusinessLensLogoDisplay;
36
+ declare function businessLensLogoSrc(variant: BusinessLensLogoVariant, dark?: boolean): string;
37
+ declare function findBusinessLensLogo<T extends BusinessLensLogoVariant>(list: T[], id: string | null | undefined, fallback: string): T;
38
+ //#endregion
39
+ export { BUSINESSLENS_DARK_BACKGROUNDS, BUSINESSLENS_DEFAULT_DARK_BACKGROUND, BUSINESSLENS_DEFAULT_LIGHT_BACKGROUND, BUSINESSLENS_DEFAULT_LOCKUP, BUSINESSLENS_DEFAULT_LOGO_DISPLAY, BUSINESSLENS_DEFAULT_MARK, BUSINESSLENS_LIGHT_BACKGROUNDS, BUSINESSLENS_LOCKUP_VARIANTS, BUSINESSLENS_MARK_VARIANTS, BusinessLensBackgroundVariant, BusinessLensLockupVariant, BusinessLensLogoDisplay, BusinessLensLogoVariant, businessLensLogoSrc, findBusinessLensBackground, findBusinessLensLogo };
@@ -0,0 +1,114 @@
1
+ //#region layers/nuxt/theme-lab/app/utils/businesslensThemeLabMarks.mjs
2
+ var businesslensThemeLabMarks_default = {
3
+ defaultMark: "m10",
4
+ marks: [
5
+ {
6
+ id: "m4",
7
+ name: "Monogram",
8
+ tagline: "BL ligature cut from an aperture hex",
9
+ file: "mark-4"
10
+ },
11
+ {
12
+ id: "m7",
13
+ name: "Tile",
14
+ tagline: "Ink BL on a solid brass tile",
15
+ file: "mark-7"
16
+ },
17
+ {
18
+ id: "m8",
19
+ name: "Ligature",
20
+ tagline: "Bare BL with a terracotta full point",
21
+ file: "mark-8"
22
+ },
23
+ {
24
+ id: "m10",
25
+ name: "Bare",
26
+ tagline: "Bare BL ligature, no punctuation",
27
+ file: "mark-10"
28
+ }
29
+ ]
30
+ };
31
+
32
+ //#endregion
33
+ //#region layers/nuxt/theme-lab/app/utils/businesslensThemeLabVariants.ts
34
+ const BUSINESSLENS_LIGHT_BACKGROUNDS = [{
35
+ id: "l2",
36
+ name: "Oat",
37
+ tagline: "A clear step off white",
38
+ preview: "#f5efe2",
39
+ themeColor: "#f5efe2"
40
+ }, {
41
+ id: "l4",
42
+ name: "Glow",
43
+ tagline: "Light pooling behind the hero",
44
+ preview: "radial-gradient(ellipse at 50% 0%, #fefcf7 10%, #f4ecdb 80%)",
45
+ themeColor: "#f4ecdb"
46
+ }];
47
+ const BUSINESSLENS_DARK_BACKGROUNDS = [
48
+ {
49
+ id: "d1",
50
+ name: "Espresso",
51
+ tagline: "Flat, the current dark canvas",
52
+ preview: "#1b1713",
53
+ themeColor: "#1b1713"
54
+ },
55
+ {
56
+ id: "d2",
57
+ name: "Wash",
58
+ tagline: "Lifted at the top, deepest at the foot",
59
+ preview: "linear-gradient(180deg, #241e18, #141110)",
60
+ themeColor: "#241e18"
61
+ },
62
+ {
63
+ id: "d3",
64
+ name: "Ember",
65
+ tagline: "Warm light pooling behind the hero",
66
+ preview: "radial-gradient(ellipse at 50% 0%, #2a2019 10%, #1b1713 80%)",
67
+ themeColor: "#1b1713"
68
+ },
69
+ {
70
+ id: "d4",
71
+ name: "Ink",
72
+ tagline: "Deepest, with a soft vignette",
73
+ preview: "radial-gradient(ellipse at 50% 40%, #1c1815 10%, #141110 85%)",
74
+ themeColor: "#141110"
75
+ }
76
+ ];
77
+ const BUSINESSLENS_DEFAULT_LIGHT_BACKGROUND = "l4";
78
+ const BUSINESSLENS_DEFAULT_DARK_BACKGROUND = "d1";
79
+ function findBusinessLensBackground(list, id, fallback) {
80
+ return list.find((item) => item.id === id) ?? list.find((item) => item.id === fallback);
81
+ }
82
+ const BUSINESSLENS_MARK_VARIANTS = businesslensThemeLabMarks_default.marks;
83
+ const BUSINESSLENS_STAMP_GEOMETRY = {
84
+ direction: "row",
85
+ wordmarkHeight: 26,
86
+ symbolScale: 1.31,
87
+ gapRatio: .25
88
+ };
89
+ const BUSINESSLENS_LOCKUP_VARIANTS = [{
90
+ id: "k3",
91
+ name: "Stamp",
92
+ tagline: "Letterspaced caps between hairline rules",
93
+ file: "wordmark-3",
94
+ ...BUSINESSLENS_STAMP_GEOMETRY
95
+ }, {
96
+ id: "k11",
97
+ name: "Brass Lens",
98
+ tagline: "Neutral Business with the Lens in brass",
99
+ file: "wordmark-11",
100
+ ...BUSINESSLENS_STAMP_GEOMETRY
101
+ }];
102
+ const BUSINESSLENS_DEFAULT_MARK = businesslensThemeLabMarks_default.defaultMark;
103
+ const BUSINESSLENS_DEFAULT_LOCKUP = "k3";
104
+ const BUSINESSLENS_DEFAULT_LOGO_DISPLAY = "lockup";
105
+ const BUSINESSLENS_LOGO_BASE = "/brand/logo/variants";
106
+ function businessLensLogoSrc(variant, dark = false) {
107
+ return `${BUSINESSLENS_LOGO_BASE}/${variant.file}${dark ? "-dark" : ""}.svg`;
108
+ }
109
+ function findBusinessLensLogo(list, id, fallback) {
110
+ return list.find((item) => item.id === id) ?? list.find((item) => item.id === fallback);
111
+ }
112
+
113
+ //#endregion
114
+ export { BUSINESSLENS_DARK_BACKGROUNDS, BUSINESSLENS_DEFAULT_DARK_BACKGROUND, BUSINESSLENS_DEFAULT_LIGHT_BACKGROUND, BUSINESSLENS_DEFAULT_LOCKUP, BUSINESSLENS_DEFAULT_LOGO_DISPLAY, BUSINESSLENS_DEFAULT_MARK, BUSINESSLENS_LIGHT_BACKGROUNDS, BUSINESSLENS_LOCKUP_VARIANTS, BUSINESSLENS_MARK_VARIANTS, businessLensLogoSrc, findBusinessLensBackground, findBusinessLensLogo };
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/_nuxt/entry.DU06319b.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DBtS0ETw.js"><script type="module" src="/_nuxt/DBtS0ETw.js" crossorigin></script><link rel="prefetch" as="style" crossorigin href="/_nuxt/error-500.BwxPsW7a.css"><link rel="prefetch" as="script" crossorigin href="/_nuxt/0agZip0Q.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"light";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{pddVersion:"0.7.0"},app:{baseURL:"/",buildId:"c09d2db6-057a-4ddc-a9ac-95d77395c458",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1785847915552,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/_nuxt/entry.DU06319b.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DBtS0ETw.js"><script type="module" src="/_nuxt/DBtS0ETw.js" crossorigin></script><link rel="prefetch" as="style" crossorigin href="/_nuxt/error-500.BwxPsW7a.css"><link rel="prefetch" as="script" crossorigin href="/_nuxt/0agZip0Q.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"light";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{pddVersion:"0.7.1"},app:{baseURL:"/",buildId:"2f5bf534-4590-4c46-b28f-8b0c1caa52df",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1785848773356,false]</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/_nuxt/entry.DU06319b.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DBtS0ETw.js"><script type="module" src="/_nuxt/DBtS0ETw.js" crossorigin></script><link rel="prefetch" as="style" crossorigin href="/_nuxt/error-500.BwxPsW7a.css"><link rel="prefetch" as="script" crossorigin href="/_nuxt/0agZip0Q.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"light";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{pddVersion:"0.7.0"},app:{baseURL:"/",buildId:"c09d2db6-057a-4ddc-a9ac-95d77395c458",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1785847915552,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/_nuxt/entry.DU06319b.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DBtS0ETw.js"><script type="module" src="/_nuxt/DBtS0ETw.js" crossorigin></script><link rel="prefetch" as="style" crossorigin href="/_nuxt/error-500.BwxPsW7a.css"><link rel="prefetch" as="script" crossorigin href="/_nuxt/0agZip0Q.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"light";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{pddVersion:"0.7.1"},app:{baseURL:"/",buildId:"2f5bf534-4590-4c46-b28f-8b0c1caa52df",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1785848773357,false]</script></body></html>
@@ -1 +1 @@
1
- {"id":"c09d2db6-057a-4ddc-a9ac-95d77395c458","timestamp":1785847906731}
1
+ {"id":"2f5bf534-4590-4c46-b28f-8b0c1caa52df","timestamp":1785848764625}
@@ -0,0 +1 @@
1
+ {"id":"2f5bf534-4590-4c46-b28f-8b0c1caa52df","timestamp":1785848764625,"prerendered":[]}
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/_nuxt/entry.DU06319b.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DBtS0ETw.js"><script type="module" src="/_nuxt/DBtS0ETw.js" crossorigin></script><link rel="prefetch" as="style" crossorigin href="/_nuxt/error-500.BwxPsW7a.css"><link rel="prefetch" as="script" crossorigin href="/_nuxt/0agZip0Q.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"light";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{pddVersion:"0.7.0"},app:{baseURL:"/",buildId:"c09d2db6-057a-4ddc-a9ac-95d77395c458",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1785847915550,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="/_nuxt/entry.DU06319b.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/_nuxt/DBtS0ETw.js"><script type="module" src="/_nuxt/DBtS0ETw.js" crossorigin></script><link rel="prefetch" as="style" crossorigin href="/_nuxt/error-500.BwxPsW7a.css"><link rel="prefetch" as="script" crossorigin href="/_nuxt/0agZip0Q.js"><script>"use strict";(()=>{const o=window,e=document.documentElement,c=["dark","light"],s=getStorageValue("localStorage","nuxt-color-mode")||"light";let r=s==="system"?f():s;const l=e.getAttribute("data-color-mode-forced");l&&(r=l),i(r),o["__NUXT_COLOR_MODE__"]={preference:s,value:r,getColorScheme:f,addColorScheme:i,removeColorScheme:d};function i(t){const a=""+t+"",n="";e.classList?e.classList.add(a):e.className+=" "+a,n&&e.setAttribute("data-"+n,t)}function d(t){const a=""+t+"",n="";e.classList?e.classList.remove(a):e.className=e.className.replace(new RegExp(a,"g"),""),n&&e.removeAttribute("data-"+n)}function u(t){return o.matchMedia("(prefers-color-scheme"+t+")")}function f(){if(o.matchMedia&&u("").media!=="not all"){for(const t of c)if(u(":"+t).matches)return t}return"light"}})();function getStorageValue(o,e){switch(o){case"localStorage":try{return window.localStorage.getItem(e)}catch{return null}case"sessionStorage":try{return window.sessionStorage.getItem(e)}catch{return null}case"cookie":try{return getCookie(e)}catch{return null}default:return null}}function getCookie(o){const c=("; "+window.document.cookie).split("; "+o+"=");if(c.length===2){const s=c.pop();return s?s.split(";").shift():null}}</script></head><body><div id="__nuxt" class="isolate"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{pddVersion:"0.7.1"},app:{baseURL:"/",buildId:"2f5bf534-4590-4c46-b28f-8b0c1caa52df",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1785848773357,false]</script></body></html>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "businesslens",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "Product-Driven Development for coding agents: a git-tracked Product Model in .businesslens/, verified against implementation.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -41,7 +41,10 @@
41
41
  "./nuxt/report-viewer": "./layers/nuxt/report-viewer/nuxt.config.ts",
42
42
  "./nuxt/theme": "./layers/nuxt/theme/nuxt.config.ts",
43
43
  "./nuxt/theme-lab": "./layers/nuxt/theme-lab/nuxt.config.ts",
44
- "./theme-lab/variants": "./layers/nuxt/theme-lab/app/utils/businesslensThemeLabVariants.ts",
44
+ "./theme-lab/variants": {
45
+ "types": "./dist/businesslensThemeLabVariants.d.ts",
46
+ "default": "./dist/businesslensThemeLabVariants.js"
47
+ },
45
48
  "./package.json": "./package.json"
46
49
  },
47
50
  "files": [
@@ -1 +0,0 @@
1
- {"id":"c09d2db6-057a-4ddc-a9ac-95d77395c458","timestamp":1785847906731,"prerendered":[]}