@empline/preflight 1.1.34 → 1.1.36

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.
Files changed (35) hide show
  1. package/dist/checks/auth/client-only-protected-pages.d.ts.map +1 -1
  2. package/dist/checks/auth/client-only-protected-pages.js +4 -2
  3. package/dist/checks/auth/client-only-protected-pages.js.map +1 -1
  4. package/dist/checks/auth/store-page-auth-guard.d.ts.map +1 -1
  5. package/dist/checks/auth/store-page-auth-guard.js +77 -29
  6. package/dist/checks/auth/store-page-auth-guard.js.map +1 -1
  7. package/dist/checks/data-integrity/api-route-reference-validation.d.ts +14 -0
  8. package/dist/checks/data-integrity/api-route-reference-validation.d.ts.map +1 -0
  9. package/dist/checks/data-integrity/api-route-reference-validation.js +219 -0
  10. package/dist/checks/data-integrity/api-route-reference-validation.js.map +1 -0
  11. package/dist/checks/system/active-preflight-migration-tracker.d.ts +13 -0
  12. package/dist/checks/system/active-preflight-migration-tracker.d.ts.map +1 -0
  13. package/dist/checks/system/active-preflight-migration-tracker.js +244 -0
  14. package/dist/checks/system/active-preflight-migration-tracker.js.map +1 -0
  15. package/dist/checks/ui/filter-option-coverage.d.ts +14 -0
  16. package/dist/checks/ui/filter-option-coverage.d.ts.map +1 -0
  17. package/dist/checks/ui/filter-option-coverage.js +286 -0
  18. package/dist/checks/ui/filter-option-coverage.js.map +1 -0
  19. package/dist/checks/ui/query-param-state-sync.d.ts +14 -0
  20. package/dist/checks/ui/query-param-state-sync.d.ts.map +1 -0
  21. package/dist/checks/ui/query-param-state-sync.js +251 -0
  22. package/dist/checks/ui/query-param-state-sync.js.map +1 -0
  23. package/dist/checks/ui/unimplemented-action-handler.d.ts +14 -0
  24. package/dist/checks/ui/unimplemented-action-handler.d.ts.map +1 -0
  25. package/dist/checks/ui/unimplemented-action-handler.js +230 -0
  26. package/dist/checks/ui/unimplemented-action-handler.js.map +1 -0
  27. package/dist/index.d.ts +1 -0
  28. package/dist/index.d.ts.map +1 -1
  29. package/dist/index.js +12 -1
  30. package/dist/index.js.map +1 -1
  31. package/dist/utils/performance-cache.d.ts +91 -0
  32. package/dist/utils/performance-cache.d.ts.map +1 -0
  33. package/dist/utils/performance-cache.js +233 -0
  34. package/dist/utils/performance-cache.js.map +1 -0
  35. package/package.json +1 -1
@@ -0,0 +1,91 @@
1
+ /**
2
+ * LRU cache for file contents to avoid redundant reads
3
+ */
4
+ declare class FileContentCache {
5
+ private cache;
6
+ private maxSize;
7
+ private maxAge;
8
+ private totalSize;
9
+ private maxTotalSize;
10
+ constructor(options?: {
11
+ maxSize?: number;
12
+ maxAge?: number;
13
+ maxTotalSize?: number;
14
+ });
15
+ /**
16
+ * Read file with caching
17
+ */
18
+ read(filePath: string): Promise<string | null>;
19
+ /**
20
+ * Check if file exists (uses cache if available)
21
+ */
22
+ exists(filePath: string): boolean;
23
+ /**
24
+ * Evict old entries to make room
25
+ */
26
+ private evictIfNeeded;
27
+ /**
28
+ * Clear all cached content
29
+ */
30
+ clear(): void;
31
+ /**
32
+ * Get cache statistics
33
+ */
34
+ stats(): {
35
+ entries: number;
36
+ totalSize: number;
37
+ };
38
+ }
39
+ /**
40
+ * Cache for glob results to avoid redundant directory scans
41
+ */
42
+ declare class GlobResultCache {
43
+ private cache;
44
+ private maxAge;
45
+ constructor(options?: {
46
+ maxAge?: number;
47
+ });
48
+ /**
49
+ * Run glob with caching
50
+ */
51
+ glob(pattern: string | string[], options?: {
52
+ cwd?: string;
53
+ ignore?: string[];
54
+ }): Promise<string[]>;
55
+ /**
56
+ * Clear all cached results
57
+ */
58
+ clear(): void;
59
+ }
60
+ interface ParallelOptions {
61
+ concurrency?: number;
62
+ onProgress?: (completed: number, total: number) => void;
63
+ }
64
+ /**
65
+ * Process items in parallel with concurrency limit
66
+ */
67
+ declare function parallelProcess<T, R>(items: T[], processor: (item: T, index: number) => Promise<R>, options?: ParallelOptions): Promise<R[]>;
68
+ /**
69
+ * Process items in batches
70
+ */
71
+ declare function batchProcess<T, R>(items: T[], processor: (batch: T[]) => Promise<R[]>, batchSize?: number): Promise<R[]>;
72
+ export declare const FileCache: FileContentCache;
73
+ export declare const GlobCache: GlobResultCache;
74
+ export { FileContentCache, GlobResultCache, parallelProcess, batchProcess, };
75
+ /**
76
+ * Clear all caches - call at start of preflight run
77
+ */
78
+ export declare function clearAllCaches(): void;
79
+ /**
80
+ * Get combined cache statistics
81
+ */
82
+ export declare function getCacheStats(): {
83
+ fileCache: {
84
+ entries: number;
85
+ totalSize: number;
86
+ };
87
+ globCache: {
88
+ entries: number;
89
+ };
90
+ };
91
+ //# sourceMappingURL=performance-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"performance-cache.d.ts","sourceRoot":"","sources":["../../src/utils/performance-cache.ts"],"names":[],"mappings":"AAiCA;;GAEG;AACH,cAAM,gBAAgB;IACpB,OAAO,CAAC,KAAK,CAAyC;IACtD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAS;gBAEjB,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAO;IAMtF;;OAEG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAkCpD;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAQjC;;OAEG;IACH,OAAO,CAAC,aAAa;IAsBrB;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE;CAMhD;AAMD;;GAEG;AACH,cAAM,eAAe;IACnB,OAAO,CAAC,KAAK,CAA2C;IACxD,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO;IAI7C;;OAEG;IACG,IAAI,CACR,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAC1B,OAAO,GAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAO,GAChD,OAAO,CAAC,MAAM,EAAE,CAAC;IAyBpB;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd;AAMD,UAAU,eAAe;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzD;AAED;;GAEG;AACH,iBAAe,eAAe,CAAC,CAAC,EAAE,CAAC,EACjC,KAAK,EAAE,CAAC,EAAE,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EACjD,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,CAAC,EAAE,CAAC,CAuBd;AAED;;GAEG;AACH,iBAAe,YAAY,CAAC,CAAC,EAAE,CAAC,EAC9B,KAAK,EAAE,CAAC,EAAE,EACV,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,EACvC,SAAS,SAAK,GACb,OAAO,CAAC,CAAC,EAAE,CAAC,CAUd;AAOD,eAAO,MAAM,SAAS,kBAAyB,CAAC;AAChD,eAAO,MAAM,SAAS,iBAAwB,CAAC;AAM/C,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,YAAY,GACb,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAGrC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI;IAC/B,SAAS,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,SAAS,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAChC,CAKA"}
@@ -0,0 +1,233 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GlobResultCache = exports.FileContentCache = exports.GlobCache = exports.FileCache = void 0;
7
+ exports.parallelProcess = parallelProcess;
8
+ exports.batchProcess = batchProcess;
9
+ exports.clearAllCaches = clearAllCaches;
10
+ exports.getCacheStats = getCacheStats;
11
+ /**
12
+ * Performance Cache Utilities
13
+ *
14
+ * Shared caching and parallel processing utilities for preflight checks.
15
+ * These reduce redundant file reads and glob operations when running
16
+ * multiple preflights in a single session.
17
+ *
18
+ * Usage:
19
+ * import { FileCache, GlobCache, parallelProcess } from './performance-cache';
20
+ *
21
+ * // Use cached file reads
22
+ * const content = await FileCache.read(filePath);
23
+ *
24
+ * // Use cached glob results
25
+ * const files = await GlobCache.glob('app/** /page.tsx');
26
+ *
27
+ * // Process files in parallel with concurrency limit
28
+ * await parallelProcess(files, async (file) => { ... }, { concurrency: 10 });
29
+ */
30
+ const fs_1 = __importDefault(require("fs"));
31
+ const path_1 = __importDefault(require("path"));
32
+ const glob_1 = require("glob");
33
+ /**
34
+ * LRU cache for file contents to avoid redundant reads
35
+ */
36
+ class FileContentCache {
37
+ cache = new Map();
38
+ maxSize;
39
+ maxAge;
40
+ totalSize = 0;
41
+ maxTotalSize;
42
+ constructor(options = {}) {
43
+ this.maxSize = options.maxSize ?? 1000; // Max number of files
44
+ this.maxAge = options.maxAge ?? 30000; // 30 seconds
45
+ this.maxTotalSize = options.maxTotalSize ?? 50 * 1024 * 1024; // 50MB
46
+ }
47
+ /**
48
+ * Read file with caching
49
+ */
50
+ async read(filePath) {
51
+ const absolutePath = path_1.default.resolve(filePath);
52
+ const cached = this.cache.get(absolutePath);
53
+ // Check if cached and still valid
54
+ if (cached && Date.now() - cached.timestamp < this.maxAge) {
55
+ // Move to end (LRU)
56
+ this.cache.delete(absolutePath);
57
+ this.cache.set(absolutePath, cached);
58
+ return cached.value;
59
+ }
60
+ // Read from disk
61
+ try {
62
+ const content = fs_1.default.readFileSync(absolutePath, "utf-8");
63
+ const size = Buffer.byteLength(content, "utf-8");
64
+ // Evict if needed
65
+ this.evictIfNeeded(size);
66
+ // Store in cache
67
+ this.cache.set(absolutePath, {
68
+ value: content,
69
+ timestamp: Date.now(),
70
+ size,
71
+ });
72
+ this.totalSize += size;
73
+ return content;
74
+ }
75
+ catch {
76
+ return null;
77
+ }
78
+ }
79
+ /**
80
+ * Check if file exists (uses cache if available)
81
+ */
82
+ exists(filePath) {
83
+ const absolutePath = path_1.default.resolve(filePath);
84
+ if (this.cache.has(absolutePath)) {
85
+ return true;
86
+ }
87
+ return fs_1.default.existsSync(absolutePath);
88
+ }
89
+ /**
90
+ * Evict old entries to make room
91
+ */
92
+ evictIfNeeded(newSize) {
93
+ // Evict by count
94
+ while (this.cache.size >= this.maxSize) {
95
+ const firstKey = this.cache.keys().next().value;
96
+ if (firstKey) {
97
+ const entry = this.cache.get(firstKey);
98
+ if (entry?.size)
99
+ this.totalSize -= entry.size;
100
+ this.cache.delete(firstKey);
101
+ }
102
+ }
103
+ // Evict by total size
104
+ while (this.totalSize + newSize > this.maxTotalSize && this.cache.size > 0) {
105
+ const firstKey = this.cache.keys().next().value;
106
+ if (firstKey) {
107
+ const entry = this.cache.get(firstKey);
108
+ if (entry?.size)
109
+ this.totalSize -= entry.size;
110
+ this.cache.delete(firstKey);
111
+ }
112
+ }
113
+ }
114
+ /**
115
+ * Clear all cached content
116
+ */
117
+ clear() {
118
+ this.cache.clear();
119
+ this.totalSize = 0;
120
+ }
121
+ /**
122
+ * Get cache statistics
123
+ */
124
+ stats() {
125
+ return {
126
+ entries: this.cache.size,
127
+ totalSize: this.totalSize,
128
+ };
129
+ }
130
+ }
131
+ exports.FileContentCache = FileContentCache;
132
+ // =============================================================================
133
+ // GLOB RESULT CACHE
134
+ // =============================================================================
135
+ /**
136
+ * Cache for glob results to avoid redundant directory scans
137
+ */
138
+ class GlobResultCache {
139
+ cache = new Map();
140
+ maxAge;
141
+ constructor(options = {}) {
142
+ this.maxAge = options.maxAge ?? 60000; // 1 minute
143
+ }
144
+ /**
145
+ * Run glob with caching
146
+ */
147
+ async glob(pattern, options = {}) {
148
+ const cwd = options.cwd ?? process.cwd();
149
+ const cacheKey = JSON.stringify({ pattern, cwd, ignore: options.ignore });
150
+ const cached = this.cache.get(cacheKey);
151
+ if (cached && Date.now() - cached.timestamp < this.maxAge) {
152
+ return cached.value;
153
+ }
154
+ // Run glob
155
+ const results = await (0, glob_1.glob)(pattern, {
156
+ cwd,
157
+ ignore: options.ignore,
158
+ nodir: true,
159
+ });
160
+ // Cache results
161
+ this.cache.set(cacheKey, {
162
+ value: results,
163
+ timestamp: Date.now(),
164
+ });
165
+ return results;
166
+ }
167
+ /**
168
+ * Clear all cached results
169
+ */
170
+ clear() {
171
+ this.cache.clear();
172
+ }
173
+ }
174
+ exports.GlobResultCache = GlobResultCache;
175
+ /**
176
+ * Process items in parallel with concurrency limit
177
+ */
178
+ async function parallelProcess(items, processor, options = {}) {
179
+ const { concurrency = 10, onProgress } = options;
180
+ const results = new Array(items.length);
181
+ let completed = 0;
182
+ let current = 0;
183
+ async function processNext() {
184
+ while (current < items.length) {
185
+ const index = current++;
186
+ const item = items[index];
187
+ results[index] = await processor(item, index);
188
+ completed++;
189
+ onProgress?.(completed, items.length);
190
+ }
191
+ }
192
+ // Start workers up to concurrency limit
193
+ const workers = Array(Math.min(concurrency, items.length))
194
+ .fill(null)
195
+ .map(() => processNext());
196
+ await Promise.all(workers);
197
+ return results;
198
+ }
199
+ /**
200
+ * Process items in batches
201
+ */
202
+ async function batchProcess(items, processor, batchSize = 50) {
203
+ const results = [];
204
+ for (let i = 0; i < items.length; i += batchSize) {
205
+ const batch = items.slice(i, i + batchSize);
206
+ const batchResults = await processor(batch);
207
+ results.push(...batchResults);
208
+ }
209
+ return results;
210
+ }
211
+ // =============================================================================
212
+ // SINGLETON INSTANCES
213
+ // =============================================================================
214
+ // Global cache instances for shared use across preflights
215
+ exports.FileCache = new FileContentCache();
216
+ exports.GlobCache = new GlobResultCache();
217
+ /**
218
+ * Clear all caches - call at start of preflight run
219
+ */
220
+ function clearAllCaches() {
221
+ exports.FileCache.clear();
222
+ exports.GlobCache.clear();
223
+ }
224
+ /**
225
+ * Get combined cache statistics
226
+ */
227
+ function getCacheStats() {
228
+ return {
229
+ fileCache: exports.FileCache.stats(),
230
+ globCache: { entries: 0 }, // GlobCache doesn't expose this
231
+ };
232
+ }
233
+ //# sourceMappingURL=performance-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"performance-cache.js","sourceRoot":"","sources":["../../src/utils/performance-cache.ts"],"names":[],"mappings":";;;;;;AA8QE,0CAAe;AACf,oCAAY;AAMd,wCAGC;AAKD,sCAQC;AArSD;;;;;;;;;;;;;;;;;;GAkBG;AACH,4CAAoB;AACpB,gDAAwB;AACxB,+BAA4B;AAY5B;;GAEG;AACH,MAAM,gBAAgB;IACZ,KAAK,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC9C,OAAO,CAAS;IAChB,MAAM,CAAS;IACf,SAAS,GAAG,CAAC,CAAC;IACd,YAAY,CAAS;IAE7B,YAAY,UAAwE,EAAE;QACpF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,sBAAsB;QAC9D,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,aAAa;QACpD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,QAAgB;QACzB,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAE5C,kCAAkC;QAClC,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1D,oBAAoB;YACpB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;YACrC,OAAO,MAAM,CAAC,KAAK,CAAC;QACtB,CAAC;QAED,iBAAiB;QACjB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAEjD,kBAAkB;YAClB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAEzB,iBAAiB;YACjB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE;gBAC3B,KAAK,EAAE,OAAO;gBACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;gBACrB,IAAI;aACL,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC;YAEvB,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAgB;QACrB,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,OAAe;QACnC,iBAAiB;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAChD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACvC,IAAI,KAAK,EAAE,IAAI;oBAAE,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC;gBAC9C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,sBAAsB;QACtB,OAAO,IAAI,CAAC,SAAS,GAAG,OAAO,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC3E,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YAChD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACvC,IAAI,KAAK,EAAE,IAAI;oBAAE,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC;gBAC9C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACxB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF;AAiIC,4CAAgB;AA/HlB,gFAAgF;AAChF,oBAAoB;AACpB,gFAAgF;AAEhF;;GAEG;AACH,MAAM,eAAe;IACX,KAAK,GAAG,IAAI,GAAG,EAAgC,CAAC;IAChD,MAAM,CAAS;IAEvB,YAAY,UAA+B,EAAE;QAC3C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW;IACpD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CACR,OAA0B,EAC1B,UAA+C,EAAE;QAEjD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAE1E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxC,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1D,OAAO,MAAM,CAAC,KAAK,CAAC;QACtB,CAAC;QAED,WAAW;QACX,MAAM,OAAO,GAAG,MAAM,IAAA,WAAI,EAAC,OAAO,EAAE;YAClC,GAAG;YACH,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QAEH,gBAAgB;QAChB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE;YACvB,KAAK,EAAE,OAAO;YACd,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AA4EC,0CAAe;AAjEjB;;GAEG;AACH,KAAK,UAAU,eAAe,CAC5B,KAAU,EACV,SAAiD,EACjD,UAA2B,EAAE;IAE7B,MAAM,EAAE,WAAW,GAAG,EAAE,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IACjD,MAAM,OAAO,GAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,KAAK,UAAU,WAAW;QACxB,OAAO,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9C,SAAS,EAAE,CAAC;YACZ,UAAU,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SACvD,IAAI,CAAC,IAAI,CAAC;SACV,GAAG,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;IAE5B,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC3B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,YAAY,CACzB,KAAU,EACV,SAAuC,EACvC,SAAS,GAAG,EAAE;IAEd,MAAM,OAAO,GAAQ,EAAE,CAAC;IAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QACjD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF,0DAA0D;AAC7C,QAAA,SAAS,GAAG,IAAI,gBAAgB,EAAE,CAAC;AACnC,QAAA,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;AAa/C;;GAEG;AACH,SAAgB,cAAc;IAC5B,iBAAS,CAAC,KAAK,EAAE,CAAC;IAClB,iBAAS,CAAC,KAAK,EAAE,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,SAAgB,aAAa;IAI3B,OAAO;QACL,SAAS,EAAE,iBAAS,CAAC,KAAK,EAAE;QAC5B,SAAS,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,gCAAgC;KAC5D,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@empline/preflight",
3
- "version": "1.1.34",
3
+ "version": "1.1.36",
4
4
  "description": "Distributable preflight validation system with app-specific plugin support",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",