designmaxxing 0.1.1 → 0.1.2

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,7 +1,7 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class AnimationExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('AnimationExtractor not implemented');
4
+ return { transitions: [], keyframes: [] };
5
5
  }
6
6
  }
7
7
  //# sourceMappingURL=animations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"animations.js","sourceRoot":"","sources":["../../src/extractors/animations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,kBAAmB,SAAQ,aAAwC;IAC9E,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;CACF"}
1
+ {"version":3,"file":"animations.js","sourceRoot":"","sources":["../../src/extractors/animations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,kBAAmB,SAAQ,aAAwC;IAC9E,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAA;IAC3C,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class AssetExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('AssetExtractor not implemented');
4
+ return { assets: [], downloadedCount: 0, failedDownloads: [] };
5
5
  }
6
6
  }
7
7
  //# sourceMappingURL=assets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/extractors/assets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,cAAe,SAAQ,aAAoC;IACtE,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IACnD,CAAC;CACF"}
1
+ {"version":3,"file":"assets.js","sourceRoot":"","sources":["../../src/extractors/assets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,cAAe,SAAQ,aAAoC;IACtE,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,CAAA;IAChE,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class BehaviorExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('BehaviorExtractor not implemented');
4
+ return { interactions: [], scrollBehaviors: [], forms: [] };
5
5
  }
6
6
  }
7
7
  //# sourceMappingURL=behavior.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"behavior.js","sourceRoot":"","sources":["../../src/extractors/behavior.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,iBAAkB,SAAQ,aAAuC;IAC5E,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;CACF"}
1
+ {"version":3,"file":"behavior.js","sourceRoot":"","sources":["../../src/extractors/behavior.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,iBAAkB,SAAQ,aAAuC;IAC5E,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,YAAY,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;IAC7D,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class ComponentExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('ComponentExtractor not implemented');
4
+ return { components: [], totalElements: 0 };
5
5
  }
6
6
  }
7
7
  //# sourceMappingURL=components.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/extractors/components.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,kBAAmB,SAAQ,aAAwC;IAC9E,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;CACF"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/extractors/components.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,kBAAmB,SAAQ,aAAwC;IAC9E,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,CAAA;IAC7C,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../src/extractors/framework.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAEhE,qBAAa,kBAAmB,SAAQ,aAAa,CAAC,kBAAkB,CAAC;IACjE,OAAO,IAAI,OAAO,CAAC,kBAAkB,CAAC;CAG7C"}
1
+ {"version":3,"file":"framework.d.ts","sourceRoot":"","sources":["../../src/extractors/framework.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAEhE,qBAAa,kBAAmB,SAAQ,aAAa,CAAC,kBAAkB,CAAC;IACjE,OAAO,IAAI,OAAO,CAAC,kBAAkB,CAAC;CA0H7C"}
@@ -1,7 +1,154 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class FrameworkExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('FrameworkExtractor not implemented');
4
+ const result = await this.page.evaluate(() => {
5
+ const w = window;
6
+ const frameworks = [];
7
+ const cssMethodology = [];
8
+ const componentLibrary = [];
9
+ const allClasses = Array.from(document.querySelectorAll('[class]'))
10
+ .map(el => el.className)
11
+ .join(' ');
12
+ const scripts = Array.from(document.querySelectorAll('script[src]'))
13
+ .map(s => s.src);
14
+ const links = Array.from(document.querySelectorAll('link[rel="stylesheet"]'))
15
+ .map(l => l.href);
16
+ // Next.js
17
+ {
18
+ const signals = [];
19
+ if (w['__NEXT_DATA__'])
20
+ signals.push('window.__NEXT_DATA__');
21
+ if (document.getElementById('__NEXT_DATA__'))
22
+ signals.push('#__NEXT_DATA__ script tag');
23
+ if (document.querySelector('[data-nextjs-page]'))
24
+ signals.push('data-nextjs-page attribute');
25
+ if (scripts.some(s => s.includes('/_next/')))
26
+ signals.push('/_next/ script paths');
27
+ if (signals.length)
28
+ frameworks.push({ name: 'Next.js', version: null, confidence: Math.min(signals.length / 2, 1), signals });
29
+ }
30
+ // React
31
+ {
32
+ const signals = [];
33
+ if (w['__REACT_DEVTOOLS_GLOBAL_HOOK__'])
34
+ signals.push('__REACT_DEVTOOLS_GLOBAL_HOOK__');
35
+ if (w['React'])
36
+ signals.push('window.React');
37
+ if (document.querySelector('[data-reactroot]'))
38
+ signals.push('data-reactroot attribute');
39
+ if (scripts.some(s => s.includes('react')))
40
+ signals.push('react in script src');
41
+ if (signals.length)
42
+ frameworks.push({ name: 'React', version: null, confidence: Math.min(signals.length / 2, 1), signals });
43
+ }
44
+ // Vue
45
+ {
46
+ const signals = [];
47
+ if (w['__vue_devtools_global_hook__'])
48
+ signals.push('__vue_devtools_global_hook__');
49
+ if (w['Vue'])
50
+ signals.push('window.Vue');
51
+ if (document.querySelector('[data-v-app]'))
52
+ signals.push('data-v-app attribute');
53
+ if (scripts.some(s => s.includes('vue')))
54
+ signals.push('vue in script src');
55
+ if (signals.length)
56
+ frameworks.push({ name: 'Vue', version: null, confidence: Math.min(signals.length / 2, 1), signals });
57
+ }
58
+ // Nuxt
59
+ {
60
+ const signals = [];
61
+ if (w['__NUXT__'])
62
+ signals.push('window.__NUXT__');
63
+ if (w['__nuxt'])
64
+ signals.push('window.__nuxt');
65
+ if (scripts.some(s => s.includes('/_nuxt/')))
66
+ signals.push('/_nuxt/ script paths');
67
+ if (signals.length)
68
+ frameworks.push({ name: 'Nuxt', version: null, confidence: Math.min(signals.length / 2, 1), signals });
69
+ }
70
+ // Angular
71
+ {
72
+ const signals = [];
73
+ if (w['ng'])
74
+ signals.push('window.ng');
75
+ const ngVersion = document.querySelector('[ng-version]');
76
+ if (ngVersion)
77
+ signals.push('ng-version attribute');
78
+ if (document.querySelector('app-root'))
79
+ signals.push('app-root element');
80
+ if (signals.length) {
81
+ frameworks.push({
82
+ name: 'Angular',
83
+ version: ngVersion?.getAttribute('ng-version') ?? null,
84
+ confidence: Math.min(signals.length / 2, 1),
85
+ signals,
86
+ });
87
+ }
88
+ }
89
+ // Svelte
90
+ {
91
+ const signals = [];
92
+ if (w['__svelte'])
93
+ signals.push('window.__svelte');
94
+ if (/svelte-[a-z0-9]{6,}/.test(allClasses))
95
+ signals.push('svelte-HASH class names');
96
+ if (signals.length)
97
+ frameworks.push({ name: 'Svelte', version: null, confidence: Math.min(signals.length, 1), signals });
98
+ }
99
+ // Tailwind CSS
100
+ {
101
+ const signals = [];
102
+ const twPatterns = [/\bflex\b/, /\bgrid\b/, /\btext-[a-z]/, /\bbg-[a-z]/, /\bp-\d/, /\bm-\d/, /\bw-\d/, /\bh-\d/, /\brounded/, /\bshadow/, /\bborder-/];
103
+ const matchCount = twPatterns.filter(p => p.test(allClasses)).length;
104
+ if (matchCount >= 5)
105
+ signals.push(`${matchCount}/${twPatterns.length} Tailwind utility patterns`);
106
+ if (links.some(l => l.includes('tailwind')))
107
+ signals.push('tailwind in stylesheet href');
108
+ if (scripts.some(s => s.includes('tailwind')))
109
+ signals.push('tailwind in script src');
110
+ if (signals.length)
111
+ cssMethodology.push({ name: 'Tailwind CSS', confidence: Math.min(matchCount / 8, 1), signals });
112
+ }
113
+ // Bootstrap
114
+ {
115
+ const signals = [];
116
+ if (w['bootstrap'])
117
+ signals.push('window.bootstrap');
118
+ if (/\b(btn|container|row|col-|navbar|modal|card|dropdown)\b/.test(allClasses))
119
+ signals.push('Bootstrap class patterns');
120
+ if (links.some(l => l.includes('bootstrap')))
121
+ signals.push('bootstrap in stylesheet href');
122
+ if (signals.length)
123
+ cssMethodology.push({ name: 'Bootstrap', confidence: Math.min(signals.length / 2, 1), signals });
124
+ }
125
+ // shadcn/ui (Radix-based)
126
+ {
127
+ const signals = [];
128
+ if (document.querySelector('[data-radix-popper-content-wrapper]'))
129
+ signals.push('data-radix-popper-content-wrapper');
130
+ if (document.querySelectorAll('[data-state]').length > 3)
131
+ signals.push('multiple data-state attributes');
132
+ if (document.querySelector('[data-slot]'))
133
+ signals.push('data-slot attribute');
134
+ if (/\bcmdk-/.test(allClasses))
135
+ signals.push('cmdk- class prefix');
136
+ if (signals.length)
137
+ componentLibrary.push({ name: 'shadcn/ui', confidence: Math.min(signals.length / 2, 1), signals });
138
+ }
139
+ // Material UI
140
+ {
141
+ const signals = [];
142
+ if (w['__MUI_THEME__'])
143
+ signals.push('window.__MUI_THEME__');
144
+ if (/\bMui[A-Z]/.test(allClasses))
145
+ signals.push('MuiXxx class prefix');
146
+ if (signals.length)
147
+ componentLibrary.push({ name: 'Material UI', confidence: Math.min(signals.length, 1), signals });
148
+ }
149
+ return { frameworks, cssMethodology, componentLibrary };
150
+ });
151
+ return result;
5
152
  }
6
153
  }
7
154
  //# sourceMappingURL=framework.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"framework.js","sourceRoot":"","sources":["../../src/extractors/framework.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,kBAAmB,SAAQ,aAAiC;IACvE,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;CACF"}
1
+ {"version":3,"file":"framework.js","sourceRoot":"","sources":["../../src/extractors/framework.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class LayoutExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('LayoutExtractor not implemented');
4
+ return { containers: [], breakpoints: [], rootMaxWidth: null };
5
5
  }
6
6
  }
7
7
  //# sourceMappingURL=layout.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/extractors/layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,eAAgB,SAAQ,aAAqC;IACxE,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/extractors/layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,eAAgB,SAAQ,aAAqC;IACxE,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,CAAA;IAChE,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class NetworkExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('NetworkExtractor not implemented');
4
+ return { endpoints: [], harPath: null };
5
5
  }
6
6
  }
7
7
  //# sourceMappingURL=network.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/extractors/network.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,gBAAiB,SAAQ,aAAsC;IAC1E,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACrD,CAAC;CACF"}
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/extractors/network.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,gBAAiB,SAAQ,aAAsC;IAC1E,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IACzC,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class TypographyExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('TypographyExtractor not implemented');
4
+ return { scale: [], fontFaces: [], fontLoadStrategy: null };
5
5
  }
6
6
  }
7
7
  //# sourceMappingURL=typography.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"typography.js","sourceRoot":"","sources":["../../src/extractors/typography.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,mBAAoB,SAAQ,aAAyC;IAChF,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;CACF"}
1
+ {"version":3,"file":"typography.js","sourceRoot":"","sources":["../../src/extractors/typography.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,mBAAoB,SAAQ,aAAyC;IAChF,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAA;IAC7D,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { BaseExtractor } from './base.js';
2
2
  export class VisualExtractor extends BaseExtractor {
3
3
  async extract() {
4
- throw new Error('VisualExtractor not implemented');
4
+ return { styles: [], colors: [], shadows: [], borderRadii: [] };
5
5
  }
6
6
  }
7
7
  //# sourceMappingURL=visual.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"visual.js","sourceRoot":"","sources":["../../src/extractors/visual.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,eAAgB,SAAQ,aAAqC;IACxE,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"visual.js","sourceRoot":"","sources":["../../src/extractors/visual.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,OAAO,eAAgB,SAAQ,aAAqC;IACxE,KAAK,CAAC,OAAO;QACX,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAA;IACjE,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "designmaxxing",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Pixel-perfect UI reverse engineering toolkit — extract design tokens, components, and layout from any web app",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",