opkg 0.5.0 → 0.6.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.
Files changed (272) hide show
  1. package/README.md +49 -8
  2. package/dist/commands/add.js +11 -276
  3. package/dist/commands/add.js.map +1 -1
  4. package/dist/commands/init.js +73 -145
  5. package/dist/commands/init.js.map +1 -1
  6. package/dist/commands/install.js +26 -668
  7. package/dist/commands/install.js.map +1 -1
  8. package/dist/commands/pack.js +10 -137
  9. package/dist/commands/pack.js.map +1 -1
  10. package/dist/commands/push.js +14 -8
  11. package/dist/commands/push.js.map +1 -1
  12. package/dist/commands/save.js +12 -167
  13. package/dist/commands/save.js.map +1 -1
  14. package/dist/commands/status.js +2 -2
  15. package/dist/commands/status.js.map +1 -1
  16. package/dist/commands/uninstall.js +5 -5
  17. package/dist/commands/uninstall.js.map +1 -1
  18. package/dist/constants/index.js +18 -45
  19. package/dist/constants/index.js.map +1 -1
  20. package/dist/constants/workspace.js +9 -0
  21. package/dist/constants/workspace.js.map +1 -0
  22. package/dist/core/add/add-conflict-handler.js +68 -0
  23. package/dist/core/add/add-conflict-handler.js.map +1 -0
  24. package/dist/core/add/add-pipeline.js +137 -0
  25. package/dist/core/add/add-pipeline.js.map +1 -0
  26. package/dist/core/add/package-index-updater.js +62 -33
  27. package/dist/core/add/package-index-updater.js.map +1 -1
  28. package/dist/core/add/platform-path-transformer.js +47 -0
  29. package/dist/core/add/platform-path-transformer.js.map +1 -0
  30. package/dist/core/add/source-collector.js +57 -0
  31. package/dist/core/add/source-collector.js.map +1 -0
  32. package/dist/core/dependency-resolver.js +3 -1
  33. package/dist/core/dependency-resolver.js.map +1 -1
  34. package/dist/core/directory.js +2 -2
  35. package/dist/core/directory.js.map +1 -1
  36. package/dist/core/discovery/file-discovery.js +55 -54
  37. package/dist/core/discovery/file-discovery.js.map +1 -1
  38. package/dist/core/discovery/platform-files-discovery.js +32 -17
  39. package/dist/core/discovery/platform-files-discovery.js.map +1 -1
  40. package/dist/core/install/bulk-install-pipeline.js +199 -0
  41. package/dist/core/install/bulk-install-pipeline.js.map +1 -0
  42. package/dist/core/install/canonical-plan.js +123 -0
  43. package/dist/core/install/canonical-plan.js.map +1 -0
  44. package/dist/core/install/dry-run.js +2 -2
  45. package/dist/core/install/dry-run.js.map +1 -1
  46. package/dist/core/install/index.js +3 -0
  47. package/dist/core/install/index.js.map +1 -0
  48. package/dist/core/install/install-errors.js +41 -0
  49. package/dist/core/install/install-errors.js.map +1 -0
  50. package/dist/core/install/install-flow.js +2 -5
  51. package/dist/core/install/install-flow.js.map +1 -1
  52. package/dist/core/install/install-pipeline.js +228 -0
  53. package/dist/core/install/install-pipeline.js.map +1 -0
  54. package/dist/core/install/install-reporting.js +99 -0
  55. package/dist/core/install/install-reporting.js.map +1 -0
  56. package/dist/core/install/platform-resolution.js +6 -6
  57. package/dist/core/install/platform-resolution.js.map +1 -1
  58. package/dist/core/install/remote-flow.js +67 -1
  59. package/dist/core/install/remote-flow.js.map +1 -1
  60. package/dist/core/openpackage.js +16 -8
  61. package/dist/core/openpackage.js.map +1 -1
  62. package/dist/core/package-context.js +246 -0
  63. package/dist/core/package-context.js.map +1 -0
  64. package/dist/core/package.js +3 -2
  65. package/dist/core/package.js.map +1 -1
  66. package/dist/core/platforms.js +126 -217
  67. package/dist/core/platforms.js.map +1 -1
  68. package/dist/core/registry/registry-rename.js +2 -1
  69. package/dist/core/registry/registry-rename.js.map +1 -1
  70. package/dist/core/registry.js +10 -3
  71. package/dist/core/registry.js.map +1 -1
  72. package/dist/core/remote-pull.js +2 -1
  73. package/dist/core/remote-pull.js.map +1 -1
  74. package/dist/core/save/constants.js +4 -0
  75. package/dist/core/save/constants.js.map +1 -1
  76. package/dist/core/save/name-resolution.js +31 -0
  77. package/dist/core/save/name-resolution.js.map +1 -0
  78. package/dist/core/save/package-detection.js +147 -0
  79. package/dist/core/save/package-detection.js.map +1 -0
  80. package/dist/core/save/package-saver.js +46 -43
  81. package/dist/core/save/package-saver.js.map +1 -1
  82. package/dist/core/save/package-yml-generator.js +50 -71
  83. package/dist/core/save/package-yml-generator.js.map +1 -1
  84. package/dist/core/save/root-save-candidates.js.map +1 -1
  85. package/dist/core/save/save-candidate-loader.js +89 -0
  86. package/dist/core/save/save-candidate-loader.js.map +1 -0
  87. package/dist/core/save/save-conflict-resolution.js +72 -410
  88. package/dist/core/save/save-conflict-resolution.js.map +1 -1
  89. package/dist/core/save/save-conflict-resolver.js +277 -0
  90. package/dist/core/save/save-conflict-resolver.js.map +1 -0
  91. package/dist/core/save/save-pipeline.js +151 -0
  92. package/dist/core/save/save-pipeline.js.map +1 -0
  93. package/dist/core/save/save-types.js +2 -0
  94. package/dist/core/save/save-types.js.map +1 -0
  95. package/dist/core/save/save-yml-resolution.js +77 -39
  96. package/dist/core/save/save-yml-resolution.js.map +1 -1
  97. package/dist/core/save/workspace-rename.js +6 -6
  98. package/dist/core/save/workspace-rename.js.map +1 -1
  99. package/dist/core/scoping/package-scoping.js +13 -1
  100. package/dist/core/scoping/package-scoping.js.map +1 -1
  101. package/dist/core/status/status-file-discovery.js +12 -30
  102. package/dist/core/status/status-file-discovery.js.map +1 -1
  103. package/dist/core/sync/platform-sync.js +7 -4
  104. package/dist/core/sync/platform-sync.js.map +1 -1
  105. package/dist/core/sync/root-files-sync.js +59 -1
  106. package/dist/core/sync/root-files-sync.js.map +1 -1
  107. package/dist/core/uninstall/uninstall-file-discovery.js +1 -2
  108. package/dist/core/uninstall/uninstall-file-discovery.js.map +1 -1
  109. package/dist/types/index.js.map +1 -1
  110. package/dist/utils/file-processing.js +5 -58
  111. package/dist/utils/file-processing.js.map +1 -1
  112. package/dist/utils/index-based-installer.js +15 -33
  113. package/dist/utils/index-based-installer.js.map +1 -1
  114. package/dist/utils/install-file-discovery.js +3 -3
  115. package/dist/utils/install-file-discovery.js.map +1 -1
  116. package/dist/utils/install-orchestrator.js +21 -21
  117. package/dist/utils/install-orchestrator.js.map +1 -1
  118. package/dist/utils/jsonc.js +44 -0
  119. package/dist/utils/jsonc.js.map +1 -0
  120. package/dist/utils/package-copy.js +199 -0
  121. package/dist/utils/package-copy.js.map +1 -0
  122. package/dist/utils/package-filters.js +125 -0
  123. package/dist/utils/package-filters.js.map +1 -0
  124. package/dist/utils/package-index-yml.js +15 -10
  125. package/dist/utils/package-index-yml.js.map +1 -1
  126. package/dist/utils/package-installation.js +4 -113
  127. package/dist/utils/package-installation.js.map +1 -1
  128. package/dist/utils/package-local-files.js +2 -35
  129. package/dist/utils/package-local-files.js.map +1 -1
  130. package/dist/utils/package-management.js +59 -37
  131. package/dist/utils/package-management.js.map +1 -1
  132. package/dist/utils/package-yml.js +24 -0
  133. package/dist/utils/package-yml.js.map +1 -1
  134. package/dist/utils/path-normalization.js +8 -53
  135. package/dist/utils/path-normalization.js.map +1 -1
  136. package/dist/utils/paths.js +17 -9
  137. package/dist/utils/paths.js.map +1 -1
  138. package/dist/utils/platform-file.js +16 -59
  139. package/dist/utils/platform-file.js.map +1 -1
  140. package/dist/utils/platform-mapper.js +29 -41
  141. package/dist/utils/platform-mapper.js.map +1 -1
  142. package/dist/utils/platform-specific-paths.js.map +1 -1
  143. package/dist/utils/platform-utils.js +28 -139
  144. package/dist/utils/platform-utils.js.map +1 -1
  145. package/dist/utils/platform-yaml-merge.js +13 -6
  146. package/dist/utils/platform-yaml-merge.js.map +1 -1
  147. package/dist/utils/registry-entry-filter.js +38 -24
  148. package/dist/utils/registry-entry-filter.js.map +1 -1
  149. package/dist/utils/registry-paths.js +10 -0
  150. package/dist/utils/registry-paths.js.map +1 -0
  151. package/dist/utils/root-file-installer.js +19 -0
  152. package/dist/utils/root-file-installer.js.map +1 -1
  153. package/dist/utils/root-file-registry.js.map +1 -1
  154. package/package.json +3 -2
  155. package/platforms.jsonc +178 -0
  156. package/specs/package/README.md +60 -0
  157. package/specs/package/nested-packages-and-parent-packages.md +79 -0
  158. package/specs/package/package-index-yml.md +171 -0
  159. package/specs/package/package-root-layout.md +78 -0
  160. package/specs/package/registry-payload-and-copy.md +77 -0
  161. package/specs/package/universal-content.md +144 -0
  162. package/specs/platforms.md +193 -0
  163. package/specs/save/README.md +40 -0
  164. package/specs/save/save-conflict-resolution.md +146 -0
  165. package/specs/save/save-file-discovery.md +101 -0
  166. package/specs/save/save-frontmatter-overrides.md +81 -0
  167. package/specs/save/save-modes-inputs.md +53 -0
  168. package/specs/save/save-naming-scoping.md +93 -0
  169. package/specs/save/save-package-detection.md +60 -0
  170. package/specs/save/save-registry-sync.md +126 -0
  171. package/dist/commands/release.js +0 -33
  172. package/dist/commands/release.js.map +0 -1
  173. package/dist/commands/tag.js +0 -311
  174. package/dist/commands/tag.js.map +0 -1
  175. package/dist/commands/update.js +0 -30
  176. package/dist/commands/update.js.map +0 -1
  177. package/dist/core/add/formula-index-updater.js +0 -290
  178. package/dist/core/add/formula-index-updater.js.map +0 -1
  179. package/dist/core/discovery/ai-files-discovery.js +0 -2
  180. package/dist/core/discovery/ai-files-discovery.js.map +0 -1
  181. package/dist/core/discovery/formula-files-discovery.js +0 -14
  182. package/dist/core/discovery/formula-files-discovery.js.map +0 -1
  183. package/dist/core/discovery/index-files-discovery.js +0 -91
  184. package/dist/core/discovery/index-files-discovery.js.map +0 -1
  185. package/dist/core/discovery/md-files-discovery.js +0 -82
  186. package/dist/core/discovery/md-files-discovery.js.map +0 -1
  187. package/dist/core/discovery/package-files-discovery.js +0 -14
  188. package/dist/core/discovery/package-files-discovery.js.map +0 -1
  189. package/dist/core/discovery/platform-discovery.js +0 -84
  190. package/dist/core/discovery/platform-discovery.js.map +0 -1
  191. package/dist/core/discovery/root-files-discovery.js +0 -2
  192. package/dist/core/discovery/root-files-discovery.js.map +0 -1
  193. package/dist/core/formula.js +0 -170
  194. package/dist/core/formula.js.map +0 -1
  195. package/dist/core/git-registry.js +0 -46
  196. package/dist/core/git-registry.js.map +0 -1
  197. package/dist/core/groundzero.js +0 -277
  198. package/dist/core/groundzero.js.map +0 -1
  199. package/dist/core/install/scenario.js +0 -11
  200. package/dist/core/install/scenario.js.map +0 -1
  201. package/dist/core/package-sync.js +0 -219
  202. package/dist/core/package-sync.js.map +0 -1
  203. package/dist/core/save/formula-file-generator.js +0 -167
  204. package/dist/core/save/formula-file-generator.js.map +0 -1
  205. package/dist/core/save/formula-saver.js +0 -52
  206. package/dist/core/save/formula-saver.js.map +0 -1
  207. package/dist/core/save/formula-yml-generator.js +0 -89
  208. package/dist/core/save/formula-yml-generator.js.map +0 -1
  209. package/dist/core/save/formula-yml-versioning.js +0 -108
  210. package/dist/core/save/formula-yml-versioning.js.map +0 -1
  211. package/dist/core/save/generic-file-sync.js +0 -38
  212. package/dist/core/save/generic-file-sync.js.map +0 -1
  213. package/dist/core/save/md-files-sync.js +0 -33
  214. package/dist/core/save/md-files-sync.js.map +0 -1
  215. package/dist/core/save/package-yml-versioning.js +0 -108
  216. package/dist/core/save/package-yml-versioning.js.map +0 -1
  217. package/dist/core/save/platform-sync.js +0 -95
  218. package/dist/core/save/platform-sync.js.map +0 -1
  219. package/dist/core/save/root-files-sync.js +0 -140
  220. package/dist/core/save/root-files-sync.js.map +0 -1
  221. package/dist/core/save/save-candidate-types.js +0 -2
  222. package/dist/core/save/save-candidate-types.js.map +0 -1
  223. package/dist/core/save/save-conflict-types.js +0 -2
  224. package/dist/core/save/save-conflict-types.js.map +0 -1
  225. package/dist/core/save/save-file-discovery.js +0 -5
  226. package/dist/core/save/save-file-discovery.js.map +0 -1
  227. package/dist/core/status-file-discovery.js +0 -175
  228. package/dist/core/status-file-discovery.js.map +0 -1
  229. package/dist/utils/discovery/file-processing.js +0 -156
  230. package/dist/utils/discovery/file-processing.js.map +0 -1
  231. package/dist/utils/discovery/formula-discovery.js +0 -211
  232. package/dist/utils/discovery/formula-discovery.js.map +0 -1
  233. package/dist/utils/discovery/platform-discovery.js +0 -2
  234. package/dist/utils/discovery/platform-discovery.js.map +0 -1
  235. package/dist/utils/formula-discovery.js +0 -102
  236. package/dist/utils/formula-discovery.js.map +0 -1
  237. package/dist/utils/formula-index-yml.js +0 -122
  238. package/dist/utils/formula-index-yml.js.map +0 -1
  239. package/dist/utils/formula-installation.js +0 -110
  240. package/dist/utils/formula-installation.js.map +0 -1
  241. package/dist/utils/formula-local-files.js +0 -38
  242. package/dist/utils/formula-local-files.js.map +0 -1
  243. package/dist/utils/formula-management.js +0 -191
  244. package/dist/utils/formula-management.js.map +0 -1
  245. package/dist/utils/formula-name.js +0 -97
  246. package/dist/utils/formula-name.js.map +0 -1
  247. package/dist/utils/formula-versioning.js +0 -109
  248. package/dist/utils/formula-versioning.js.map +0 -1
  249. package/dist/utils/formula-yml.js +0 -82
  250. package/dist/utils/formula-yml.js.map +0 -1
  251. package/dist/utils/git.js +0 -54
  252. package/dist/utils/git.js.map +0 -1
  253. package/dist/utils/id-based-discovery.js +0 -126
  254. package/dist/utils/id-based-discovery.js.map +0 -1
  255. package/dist/utils/id-based-installer.js +0 -249
  256. package/dist/utils/id-based-installer.js.map +0 -1
  257. package/dist/utils/index-yml-based-installer.js +0 -375
  258. package/dist/utils/index-yml-based-installer.js.map +0 -1
  259. package/dist/utils/index-yml.js +0 -124
  260. package/dist/utils/index-yml.js.map +0 -1
  261. package/dist/utils/md-frontmatter.js +0 -3
  262. package/dist/utils/md-frontmatter.js.map +0 -1
  263. package/dist/utils/package-link-yml.js +0 -92
  264. package/dist/utils/package-link-yml.js.map +0 -1
  265. package/dist/utils/platform-discovery.js +0 -2
  266. package/dist/utils/platform-discovery.js.map +0 -1
  267. package/dist/utils/platform-frontmatter-split.js +0 -15
  268. package/dist/utils/platform-frontmatter-split.js.map +0 -1
  269. package/dist/utils/timestamp-encoder.js +0 -13
  270. package/dist/utils/timestamp-encoder.js.map +0 -1
  271. package/dist/utils/wip-versioning.js +0 -24
  272. package/dist/utils/wip-versioning.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"formula-index-updater.js","sourceRoot":"","sources":["../../../src/core/add/formula-index-updater.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- "use strict";
2
- //# sourceMappingURL=ai-files-discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-files-discovery.js","sourceRoot":"","sources":["../../../src/core/discovery/ai-files-discovery.ts"],"names":[],"mappings":""}
@@ -1,14 +0,0 @@
1
- import { discoverAllRootFiles } from "../../utils/formula-discovery.js";
2
- import { discoverPlatformFilesUnified } from "./platform-files-discovery.js";
3
- export async function discoverFormulaFiles(formulaName) {
4
- const cwd = process.cwd();
5
- let discoveredFiles = [];
6
- // Discover and include platform files using appropriate logic
7
- const platformFilesDiscovered = await discoverPlatformFilesUnified(cwd, formulaName);
8
- discoveredFiles.push(...platformFilesDiscovered);
9
- // Discover all platform root files (AGENTS.md, CLAUDE.md, GEMINI.md, etc.) at project root
10
- const rootFilesDiscovered = await discoverAllRootFiles(cwd, formulaName);
11
- discoveredFiles.push(...rootFilesDiscovered);
12
- return discoveredFiles;
13
- }
14
- //# sourceMappingURL=formula-files-discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formula-files-discovery.js","sourceRoot":"","sources":["../../../src/core/discovery/formula-files-discovery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAE7E,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,WAAmB;IAGnB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,IAAI,eAAe,GAAqB,EAAE,CAAC;IAE3C,8DAA8D;IAC9D,MAAM,uBAAuB,GAAG,MAAM,4BAA4B,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACrF,eAAe,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,CAAC;IAEjD,2FAA2F;IAC3F,MAAM,mBAAmB,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACzE,eAAe,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC;IAE7C,OAAO,eAAe,CAAC;AACzB,CAAC"}
@@ -1,91 +0,0 @@
1
- import { join } from 'path';
2
- import * as yaml from 'js-yaml';
3
- import { exists, isDirectory, listDirectories, listFiles, readTextFile } from '../../utils/fs.js';
4
- import { calculateFileHash } from '../../utils/hash-utils.js';
5
- import { getFileMtime } from '../../utils/file-processing.js';
6
- import { logger } from '../../utils/logger.js';
7
- import { obtainSourceDirAndRegistryPath } from './file-discovery.js';
8
- import { FILE_PATTERNS } from '../../constants/index.js';
9
- import { areFormulaNamesEquivalent } from '../../utils/formula-name.js';
10
- export async function readIndexYml(path) {
11
- try {
12
- const content = await readTextFile(path);
13
- const parsed = yaml.load(content);
14
- return parsed || null;
15
- }
16
- catch (error) {
17
- logger.warn(`Failed to parse index.yml at ${path}: ${error}`);
18
- return null;
19
- }
20
- }
21
- async function recursivelyListAllFiles(dir, baseDir) {
22
- const results = [];
23
- if (!(await exists(dir)) || !(await isDirectory(dir)))
24
- return results;
25
- const files = await listFiles(dir);
26
- for (const f of files) {
27
- const fullPath = join(dir, f);
28
- results.push({ fullPath, relativePath: fullPath.substring(baseDir.length + 1) });
29
- }
30
- const subdirs = await listDirectories(dir);
31
- for (const sub of subdirs) {
32
- const subdir = join(dir, sub);
33
- const subfiles = await recursivelyListAllFiles(subdir, baseDir);
34
- results.push(...subfiles);
35
- }
36
- return results;
37
- }
38
- export async function findMatchingIndexYmlDirsRecursive(rootDir, formulaName) {
39
- const matches = [];
40
- if (!(await exists(rootDir)) || !(await isDirectory(rootDir)))
41
- return matches;
42
- const indexPath = join(rootDir, FILE_PATTERNS.INDEX_YML);
43
- if (await exists(indexPath)) {
44
- const content = await readIndexYml(indexPath);
45
- if (content && content.formula?.name && areFormulaNamesEquivalent(content.formula.name, formulaName)) {
46
- matches.push(rootDir);
47
- }
48
- }
49
- const subdirs = await listDirectories(rootDir);
50
- for (const sub of subdirs) {
51
- const subdir = join(rootDir, sub);
52
- const subMatches = await findMatchingIndexYmlDirsRecursive(subdir, formulaName);
53
- if (subMatches.length > 0)
54
- matches.push(...subMatches);
55
- }
56
- return matches;
57
- }
58
- export async function discoverIndexYmlMarkedFiles(rootDir, formulaName, platform, registryPathPrefix) {
59
- const candidateDirs = await findMatchingIndexYmlDirsRecursive(rootDir, formulaName);
60
- if (candidateDirs.length === 0)
61
- return [];
62
- const dedupByFullPath = new Map();
63
- for (const dir of candidateDirs) {
64
- const files = await recursivelyListAllFiles(dir, rootDir);
65
- for (const f of files) {
66
- try {
67
- const content = await readTextFile(f.fullPath);
68
- const mtime = await getFileMtime(f.fullPath);
69
- const contentHash = await calculateFileHash(content);
70
- const { sourceDir, registryPath } = await obtainSourceDirAndRegistryPath(f, platform, registryPathPrefix);
71
- const discovered = {
72
- fullPath: f.fullPath,
73
- relativePath: f.relativePath,
74
- sourceDir,
75
- registryPath,
76
- mtime,
77
- contentHash,
78
- discoveredViaIndexYml: true
79
- };
80
- if (!dedupByFullPath.has(f.fullPath)) {
81
- dedupByFullPath.set(f.fullPath, discovered);
82
- }
83
- }
84
- catch (err) {
85
- logger.warn(`Failed to process file for index.yml discovery ${f.fullPath}: ${err}`);
86
- }
87
- }
88
- }
89
- return Array.from(dedupByFullPath.values());
90
- }
91
- //# sourceMappingURL=index-files-discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-files-discovery.js","sourceRoot":"","sources":["../../../src/core/discovery/index-files-discovery.ts"],"names":[],"mappings":"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"}
@@ -1,82 +0,0 @@
1
- import { FILE_PATTERNS } from "../../constants/index.js";
2
- import { getFileMtime } from "../../utils/file-processing.js";
3
- import { exists, isDirectory, readTextFile } from "../../utils/fs.js";
4
- import { findFilesByExtension } from "../../utils/file-processing.js";
5
- import { logger } from "../../utils/logger.js";
6
- import { calculateFileHash } from "../../utils/hash-utils.js";
7
- import { obtainSourceDirAndRegistryPath } from "./file-discovery.js";
8
- import { arePackageNamesEquivalent } from "../../utils/package-name.js";
9
- /**
10
- * Determine if a markdown file should be included based on frontmatter rules
11
- */
12
- export function shouldIncludeMarkdownFile(mdFile, frontmatter, platform, packageName) {
13
- // For directory mode in platform directories, include files without conflicting frontmatter
14
- // if (isDirectoryMode) {
15
- // if (!frontmatter || !frontmatter.pkg || frontmatter.pkg.name === packageName) {
16
- // logger.debug(`Including ${mdFile.relativePath} from ${sourceDir} (directory mode, no conflicting frontmatter)`);
17
- // return true;
18
- // }
19
- // logger.debug(`Skipping ${mdFile.relativePath} from ${sourceDir} (directory mode, conflicting frontmatter)`);
20
- // return false;
21
- // }
22
- // Otherwise, include files with matching frontmatter
23
- if (frontmatter?.pkg?.name && arePackageNamesEquivalent(frontmatter.pkg.name, packageName)) {
24
- logger.debug(`Including ${mdFile.relativePath} from ${platform} (matches package name in frontmatter)`);
25
- return true;
26
- }
27
- logger.debug(`Skipping ${mdFile.relativePath} from ${platform} (no matching frontmatter)`);
28
- return false;
29
- }
30
- /**
31
- * Process a single markdown file for discovery - common logic used by multiple discovery methods
32
- */
33
- async function processMdFileForDiscovery(file, packageName, platform, registryPathPrefix) {
34
- try {
35
- const content = await readTextFile(file.fullPath);
36
- // Frontmatter support removed - always include markdown files
37
- const shouldInclude = true;
38
- if (!shouldInclude) {
39
- return null;
40
- }
41
- try {
42
- const mtime = await getFileMtime(file.fullPath);
43
- const contentHash = await calculateFileHash(content);
44
- const { sourceDir, registryPath } = await obtainSourceDirAndRegistryPath(file, platform, registryPathPrefix);
45
- const result = {
46
- fullPath: file.fullPath,
47
- relativePath: file.relativePath,
48
- sourceDir,
49
- registryPath,
50
- mtime,
51
- contentHash
52
- };
53
- // Frontmatter support removed - platformSpecific detection disabled
54
- return result;
55
- }
56
- catch (error) {
57
- logger.warn(`Failed to process file metadata for ${file.relativePath}: ${error}`);
58
- }
59
- }
60
- catch (error) {
61
- logger.warn(`Failed to read ${file.relativePath}: ${error}`);
62
- }
63
- return null;
64
- }
65
- /**
66
- * Discover markdown files in a directory with specified patterns and inclusion rules
67
- */
68
- export async function discoverMdFiles(directoryPath, packageName, platform, registryPathPrefix = '') {
69
- if (!(await exists(directoryPath)) || !(await isDirectory(directoryPath))) {
70
- return [];
71
- }
72
- // Find files with the specified patterns
73
- const allFiles = [];
74
- // Recursive search using findFilesByExtension
75
- const files = await findFilesByExtension(directoryPath, [...FILE_PATTERNS.MARKDOWN_FILES]);
76
- allFiles.push(...files);
77
- // Process files in parallel using the extracted helper
78
- const processPromises = allFiles.map(async (file) => processMdFileForDiscovery(file, packageName, platform, registryPathPrefix));
79
- const results = await Promise.all(processPromises);
80
- return results.filter((result) => result !== null);
81
- }
82
- //# sourceMappingURL=md-files-discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"md-files-discovery.js","sourceRoot":"","sources":["../../../src/core/discovery/md-files-discovery.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- import { discoverAllRootFiles } from "../../utils/package-discovery.js";
2
- import { discoverPlatformFilesUnified } from "./platform-files-discovery.js";
3
- export async function discoverPackageFiles(packageName) {
4
- const cwd = process.cwd();
5
- let discoveredFiles = [];
6
- // Discover and include platform files using appropriate logic
7
- const platformFilesDiscovered = await discoverPlatformFilesUnified(cwd, packageName);
8
- discoveredFiles.push(...platformFilesDiscovered);
9
- // Discover all platform root files (AGENTS.md, CLAUDE.md, GEMINI.md, etc.) at project root
10
- const rootFilesDiscovered = await discoverAllRootFiles(cwd, packageName);
11
- discoveredFiles.push(...rootFilesDiscovered);
12
- return discoveredFiles;
13
- }
14
- //# sourceMappingURL=package-files-discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"package-files-discovery.js","sourceRoot":"","sources":["../../../src/core/discovery/package-files-discovery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAE7E,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,WAAmB;IAGnB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,IAAI,eAAe,GAAqB,EAAE,CAAC;IAE3C,8DAA8D;IAC9D,MAAM,uBAAuB,GAAG,MAAM,4BAA4B,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACrF,eAAe,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,CAAC;IAEjD,2FAA2F;IAC3F,MAAM,mBAAmB,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACzE,eAAe,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,CAAC;IAE7C,OAAO,eAAe,CAAC;AACzB,CAAC"}
@@ -1,84 +0,0 @@
1
- import { join, normalize } from 'path';
2
- import { FILE_PATTERNS, PLATFORMS, PLATFORM_DIRS, UNIVERSAL_SUBDIRS } from '../../constants/index.js';
3
- import { getDetectedPlatforms, getPlatformDefinition } from '../../core/platforms.js';
4
- import { matchPlatformPattern, isExactPlatformMatch } from '../../utils/path-matching.js';
5
- /**
6
- * Check if a path matches a platform pattern and extract platform info
7
- * This function works across different filesystem types (Windows, macOS, Linux, etc.)
8
- */
9
- function checkPlatformMatch(normalizedPath, platform, platformDir) {
10
- // Use the cross-platform path matching utility
11
- const match = matchPlatformPattern(normalizedPath, platformDir);
12
- if (match) {
13
- return {
14
- platform,
15
- relativePath: match.relativePath,
16
- platformName: platform
17
- };
18
- }
19
- // Check for exact platform directory matches using the utility
20
- if (isExactPlatformMatch(normalizedPath, platformDir)) {
21
- return {
22
- platform,
23
- relativePath: '',
24
- platformName: platform
25
- };
26
- }
27
- return null;
28
- }
29
- /**
30
- * Parse a directory path to determine if it's a platform-specific directory
31
- */
32
- export function parsePlatformDirectory(directoryPath) {
33
- // Use proper path normalization for cross-platform compatibility
34
- const normalizedPath = normalize(directoryPath);
35
- // Check for AI directory first (special case)
36
- const aiMatch = checkPlatformMatch(normalizedPath, PLATFORM_DIRS.AI, PLATFORM_DIRS.AI);
37
- if (aiMatch) {
38
- return aiMatch;
39
- }
40
- // Check for other platforms
41
- const platforms = Object.values(PLATFORMS);
42
- for (const platform of platforms) {
43
- // Map platform name to platform directory using the correct key format
44
- const platformKey = platform.toUpperCase();
45
- const platformDir = PLATFORM_DIRS[platformKey];
46
- const match = checkPlatformMatch(normalizedPath, platform, platformDir);
47
- if (match) {
48
- return match;
49
- }
50
- }
51
- return null;
52
- }
53
- /**
54
- * Build platform-based search configuration for file discovery
55
- */
56
- export async function buildPlatformSearchConfig(cwd) {
57
- const detectedPlatforms = await getDetectedPlatforms(cwd);
58
- const config = [];
59
- // Add AI directory as required feature
60
- config.push({
61
- name: PLATFORM_DIRS.AI,
62
- platform: PLATFORM_DIRS.AI,
63
- rootDir: PLATFORM_DIRS.AI,
64
- rulesDir: join(cwd, PLATFORM_DIRS.AI),
65
- filePatterns: [FILE_PATTERNS.MD_FILES],
66
- registryPath: ''
67
- });
68
- // Add detected platform configurations
69
- for (const platform of detectedPlatforms) {
70
- const definition = getPlatformDefinition(platform);
71
- config.push({
72
- name: platform,
73
- platform,
74
- rootDir: definition.rootDir,
75
- rulesDir: join(cwd, definition.rootDir, definition.subdirs[UNIVERSAL_SUBDIRS.RULES]?.path || ''),
76
- commandsDir: definition.subdirs[UNIVERSAL_SUBDIRS.COMMANDS] ? join(cwd, definition.rootDir, definition.subdirs[UNIVERSAL_SUBDIRS.COMMANDS].path) : undefined,
77
- agentsDir: definition.subdirs[UNIVERSAL_SUBDIRS.AGENTS] ? join(cwd, definition.rootDir, definition.subdirs[UNIVERSAL_SUBDIRS.AGENTS].path) : undefined,
78
- filePatterns: definition.subdirs[UNIVERSAL_SUBDIRS.RULES]?.readExts || [],
79
- registryPath: ''
80
- });
81
- }
82
- return config;
83
- }
84
- //# sourceMappingURL=platform-discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"platform-discovery.js","sourceRoot":"","sources":["../../../src/core/discovery/platform-discovery.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- "use strict";
2
- //# sourceMappingURL=root-files-discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"root-files-discovery.js","sourceRoot":"","sources":["../../../src/core/discovery/root-files-discovery.ts"],"names":[],"mappings":""}
@@ -1,170 +0,0 @@
1
- import { join, relative, dirname, basename } from 'path';
2
- import { isJunk } from 'junk';
3
- import { exists, walkFiles, readTextFile, writeTextFile, remove, ensureDir } from '../utils/fs.js';
4
- import { logger } from '../utils/logger.js';
5
- import { FormulaNotFoundError, InvalidFormulaError, } from '../utils/errors.js';
6
- import { validateFormulaName } from '../utils/formula-name.js';
7
- import { getFormulaPath, getFormulaVersionPath, getLatestFormulaVersion, listFormulaVersions } from './directory.js';
8
- import { parseFormulaYml } from '../utils/formula-yml.js';
9
- import { resolveVersionRange, isExactVersion, } from '../utils/version-ranges.js';
10
- /**
11
- * Formula management operations
12
- */
13
- export class FormulaManager {
14
- /**
15
- * Load a formula from the registry (latest version by default)
16
- */
17
- async loadFormula(formulaName, version) {
18
- logger.debug(`Loading formula: ${formulaName}`, { version });
19
- validateFormulaName(formulaName);
20
- let targetVersion;
21
- if (version) {
22
- // Check if it's a version range or exact version
23
- if (isExactVersion(version)) {
24
- targetVersion = version;
25
- }
26
- else {
27
- // It's a version range - resolve it to a specific version
28
- const availableVersions = await listFormulaVersions(formulaName);
29
- if (availableVersions.length === 0) {
30
- throw new FormulaNotFoundError(formulaName);
31
- }
32
- targetVersion = resolveVersionRange(version, availableVersions);
33
- if (!targetVersion) {
34
- throw new FormulaNotFoundError(`No version of '${formulaName}' satisfies range '${version}'. Available versions: ${availableVersions.join(', ')}`);
35
- }
36
- logger.debug(`Resolved version range '${version}' to '${targetVersion}' for formula '${formulaName}'`);
37
- }
38
- }
39
- else {
40
- // No version specified - get latest
41
- targetVersion = await getLatestFormulaVersion(formulaName);
42
- }
43
- if (!targetVersion) {
44
- throw new FormulaNotFoundError(formulaName);
45
- }
46
- const formulaPath = getFormulaVersionPath(formulaName, targetVersion);
47
- if (!(await exists(formulaPath))) {
48
- throw new FormulaNotFoundError(formulaName);
49
- }
50
- try {
51
- // Load formula.yml for metadata
52
- const formulaYmlPath = join(formulaPath, 'formula.yml');
53
- if (!(await exists(formulaYmlPath))) {
54
- throw new FormulaNotFoundError(formulaName);
55
- }
56
- const metadata = await parseFormulaYml(formulaYmlPath);
57
- // Discover all files in the formula directory
58
- const files = await this.discoverFormulaFiles(formulaPath);
59
- return { metadata, files };
60
- }
61
- catch (error) {
62
- if (error instanceof FormulaNotFoundError) {
63
- throw error;
64
- }
65
- logger.error(`Failed to load formula: ${formulaName}`, { error });
66
- throw new InvalidFormulaError(`Failed to load formula: ${error}`);
67
- }
68
- }
69
- /**
70
- * Save a formula to the registry (versioned)
71
- */
72
- async saveFormula(formula) {
73
- const { metadata, files } = formula;
74
- const formulaPath = getFormulaVersionPath(metadata.name, metadata.version);
75
- logger.debug(`Saving formula: ${metadata.name}@${metadata.version}`, { formulaPath });
76
- try {
77
- // Ensure the version directory exists
78
- await ensureDir(formulaPath);
79
- // Save files
80
- for (const file of files) {
81
- const fullPath = join(formulaPath, file.path);
82
- await ensureDir(dirname(fullPath));
83
- await writeTextFile(fullPath, file.content, file.encoding || 'utf8');
84
- }
85
- logger.info(`Formula '${metadata.name}@${metadata.version}' saved successfully`);
86
- }
87
- catch (error) {
88
- logger.error(`Failed to save formula: ${metadata.name}@${metadata.version}`, { error });
89
- throw new InvalidFormulaError(`Failed to save formula: ${error}`);
90
- }
91
- }
92
- /**
93
- * Delete a specific version of a formula
94
- */
95
- async deleteFormulaVersion(formulaName, version) {
96
- logger.info(`Deleting formula version: ${formulaName}@${version}`);
97
- validateFormulaName(formulaName);
98
- const formulaPath = getFormulaVersionPath(formulaName, version);
99
- if (!(await exists(formulaPath))) {
100
- throw new FormulaNotFoundError(`${formulaName}@${version}`);
101
- }
102
- try {
103
- await remove(formulaPath);
104
- logger.info(`Formula version '${formulaName}@${version}' deleted successfully`);
105
- }
106
- catch (error) {
107
- logger.error(`Failed to delete formula version: ${formulaName}@${version}`, { error });
108
- throw new InvalidFormulaError(`Failed to delete formula version: ${error}`);
109
- }
110
- }
111
- /**
112
- * Delete all versions of a formula
113
- */
114
- async deleteFormula(formulaName) {
115
- logger.info(`Deleting all versions of formula: ${formulaName}`);
116
- validateFormulaName(formulaName);
117
- const formulaPath = getFormulaPath(formulaName);
118
- if (!(await exists(formulaPath))) {
119
- throw new FormulaNotFoundError(formulaName);
120
- }
121
- try {
122
- await remove(formulaPath);
123
- logger.info(`All versions of formula '${formulaName}' deleted successfully`);
124
- }
125
- catch (error) {
126
- logger.error(`Failed to delete formula: ${formulaName}`, { error });
127
- throw new InvalidFormulaError(`Failed to delete formula: ${error}`);
128
- }
129
- }
130
- /**
131
- * Check if a formula exists in the registry (any version)
132
- */
133
- async formulaExists(formulaName) {
134
- validateFormulaName(formulaName);
135
- const latestVersion = await getLatestFormulaVersion(formulaName);
136
- return latestVersion !== null;
137
- }
138
- /**
139
- * Discover all files in a formula directory
140
- */
141
- async discoverFormulaFiles(formulaPath) {
142
- const files = [];
143
- try {
144
- // Include all file types (no filtering)
145
- // Get all files recursively in the formula directory
146
- for await (const fullPath of walkFiles(formulaPath)) {
147
- const relativePath = relative(formulaPath, fullPath);
148
- // Filter out junk files
149
- if (isJunk(basename(relativePath))) {
150
- continue;
151
- }
152
- const content = await readTextFile(fullPath);
153
- files.push({
154
- path: relativePath,
155
- content,
156
- encoding: 'utf8'
157
- });
158
- }
159
- logger.debug(`Discovered ${files.length} files in formula directory`, { formulaPath });
160
- return files;
161
- }
162
- catch (error) {
163
- logger.error(`Failed to discover files in formula directory: ${formulaPath}`, { error });
164
- throw new InvalidFormulaError(`Failed to discover formula files: ${error}`);
165
- }
166
- }
167
- }
168
- // Create and export a singleton instance
169
- export const formulaManager = new FormulaManager();
170
- //# sourceMappingURL=formula.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formula.js","sourceRoot":"","sources":["../../src/core/formula.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- import * as path from 'path';
2
- import { createHash } from 'crypto';
3
- import { ensureRegistryDirectories, getRegistryDirectories } from './directory.js';
4
- import { ensureDir, exists } from '../utils/fs.js';
5
- import { normalizePackageName } from '../utils/package-name.js';
6
- import { runGitCommand } from '../utils/git.js';
7
- import { logger } from '../utils/logger.js';
8
- import { WORKSPACE_GIT } from '../constants/index.js';
9
- export function getRegistryPackagesRoot() {
10
- const { packages } = getRegistryDirectories();
11
- return packages;
12
- }
13
- export function getRegistryRepoPath(packageName) {
14
- const normalizedName = normalizePackageName(packageName);
15
- return path.join(getRegistryPackagesRoot(), `${normalizedName}.git`);
16
- }
17
- export async function ensureRegistryRepo(packageName) {
18
- const repoPath = getRegistryRepoPath(packageName);
19
- await ensureRegistryDirectories();
20
- await ensureDir(path.dirname(repoPath));
21
- if (!(await exists(repoPath))) {
22
- await runGitCommand(['init', '--bare', repoPath]);
23
- await runGitCommand(['config', 'receive.denyNonFastforwards', 'true'], { cwd: repoPath });
24
- await runGitCommand(['symbolic-ref', 'HEAD', 'refs/heads/main'], { cwd: repoPath });
25
- logger.info(`Initialized bare registry repo for ${packageName}`, { repoPath });
26
- }
27
- return repoPath;
28
- }
29
- export function getWorkspacePackagesRoot(cwd) {
30
- return path.join(cwd, WORKSPACE_GIT.ROOT_DIR, WORKSPACE_GIT.PACKAGES_SUBDIR);
31
- }
32
- export async function ensureWorkspacePackagesRoot(cwd) {
33
- const root = getWorkspacePackagesRoot(cwd);
34
- await ensureDir(root);
35
- return root;
36
- }
37
- export function getWorkspacePackagePath(cwd, packageName) {
38
- const normalizedName = normalizePackageName(packageName);
39
- return path.join(getWorkspacePackagesRoot(cwd), normalizedName);
40
- }
41
- export function getWorkspaceBranchName(cwd) {
42
- const absoluteCwd = path.resolve(cwd);
43
- const hash = createHash('sha1').update(absoluteCwd).digest('hex').slice(0, 12);
44
- return `${WORKSPACE_GIT.BRANCH_PREFIX}/${hash}`;
45
- }
46
- //# sourceMappingURL=git-registry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-registry.js","sourceRoot":"","sources":["../../src/core/git-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACnF,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,MAAM,UAAU,uBAAuB;IACrC,MAAM,EAAE,QAAQ,EAAE,GAAG,sBAAsB,EAAE,CAAC;IAC9C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAmB;IACrD,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACzD,OAAO,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,GAAG,cAAc,MAAM,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,WAAmB;IAC1D,MAAM,QAAQ,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,yBAAyB,EAAE,CAAC;IAClC,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAExC,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC9B,MAAM,aAAa,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;QAClD,MAAM,aAAa,CAAC,CAAC,QAAQ,EAAE,6BAA6B,EAAE,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1F,MAAM,aAAa,CAAC,CAAC,cAAc,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpF,MAAM,CAAC,IAAI,CAAC,sCAAsC,WAAW,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IACjF,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,GAAW;IAClD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,QAAQ,EAAE,aAAa,CAAC,eAAe,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,GAAW;IAC3D,MAAM,IAAI,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,SAAS,CAAC,IAAI,CAAC,CAAC;IACtB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,GAAW,EAAE,WAAmB;IACtE,MAAM,cAAc,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACzD,OAAO,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/E,OAAO,GAAG,aAAa,CAAC,aAAa,IAAI,IAAI,EAAE,CAAC;AAClD,CAAC"}