@zbigniewsobiecki/squint 1.0.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.
- package/LICENSE +21 -0
- package/README.md +1065 -0
- package/bin/dev.js +5 -0
- package/bin/run.js +5 -0
- package/dist/commands/_shared/db-helper.d.ts +18 -0
- package/dist/commands/_shared/db-helper.d.ts.map +1 -0
- package/dist/commands/_shared/db-helper.js +72 -0
- package/dist/commands/_shared/db-helper.js.map +1 -0
- package/dist/commands/_shared/flags.d.ts +20 -0
- package/dist/commands/_shared/flags.d.ts.map +1 -0
- package/dist/commands/_shared/flags.js +38 -0
- package/dist/commands/_shared/flags.js.map +1 -0
- package/dist/commands/_shared/index.d.ts +6 -0
- package/dist/commands/_shared/index.d.ts.map +1 -0
- package/dist/commands/_shared/index.js +6 -0
- package/dist/commands/_shared/index.js.map +1 -0
- package/dist/commands/_shared/output.d.ts +22 -0
- package/dist/commands/_shared/output.d.ts.map +1 -0
- package/dist/commands/_shared/output.js +36 -0
- package/dist/commands/_shared/output.js.map +1 -0
- package/dist/commands/_shared/source-reader.d.ts +23 -0
- package/dist/commands/_shared/source-reader.d.ts.map +1 -0
- package/dist/commands/_shared/source-reader.js +45 -0
- package/dist/commands/_shared/source-reader.js.map +1 -0
- package/dist/commands/_shared/symbol-resolver.d.ts +35 -0
- package/dist/commands/_shared/symbol-resolver.d.ts.map +1 -0
- package/dist/commands/_shared/symbol-resolver.js +102 -0
- package/dist/commands/_shared/symbol-resolver.js.map +1 -0
- package/dist/commands/browse.d.ts +13 -0
- package/dist/commands/browse.d.ts.map +1 -0
- package/dist/commands/browse.js +106 -0
- package/dist/commands/browse.js.map +1 -0
- package/dist/commands/domains/create.d.ts +15 -0
- package/dist/commands/domains/create.d.ts.map +1 -0
- package/dist/commands/domains/create.js +34 -0
- package/dist/commands/domains/create.js.map +1 -0
- package/dist/commands/domains/delete.d.ts +14 -0
- package/dist/commands/domains/delete.d.ts.map +1 -0
- package/dist/commands/domains/delete.js +41 -0
- package/dist/commands/domains/delete.js.map +1 -0
- package/dist/commands/domains/index.d.ts +2 -0
- package/dist/commands/domains/index.d.ts.map +1 -0
- package/dist/commands/domains/index.js +2 -0
- package/dist/commands/domains/index.js.map +1 -0
- package/dist/commands/domains/list.d.ts +12 -0
- package/dist/commands/domains/list.d.ts.map +1 -0
- package/dist/commands/domains/list.js +67 -0
- package/dist/commands/domains/list.js.map +1 -0
- package/dist/commands/domains/merge.d.ts +14 -0
- package/dist/commands/domains/merge.d.ts.map +1 -0
- package/dist/commands/domains/merge.js +40 -0
- package/dist/commands/domains/merge.js.map +1 -0
- package/dist/commands/domains/rename.d.ts +14 -0
- package/dist/commands/domains/rename.d.ts.map +1 -0
- package/dist/commands/domains/rename.js +33 -0
- package/dist/commands/domains/rename.js.map +1 -0
- package/dist/commands/domains/show.d.ts +14 -0
- package/dist/commands/domains/show.d.ts.map +1 -0
- package/dist/commands/domains/show.js +47 -0
- package/dist/commands/domains/show.js.map +1 -0
- package/dist/commands/domains/sync.d.ts +11 -0
- package/dist/commands/domains/sync.d.ts.map +1 -0
- package/dist/commands/domains/sync.js +33 -0
- package/dist/commands/domains/sync.js.map +1 -0
- package/dist/commands/domains/update.d.ts +14 -0
- package/dist/commands/domains/update.d.ts.map +1 -0
- package/dist/commands/domains/update.js +28 -0
- package/dist/commands/domains/update.js.map +1 -0
- package/dist/commands/features/assign.d.ts +16 -0
- package/dist/commands/features/assign.d.ts.map +1 -0
- package/dist/commands/features/assign.js +51 -0
- package/dist/commands/features/assign.js.map +1 -0
- package/dist/commands/features/create.d.ts +15 -0
- package/dist/commands/features/create.d.ts.map +1 -0
- package/dist/commands/features/create.js +30 -0
- package/dist/commands/features/create.js.map +1 -0
- package/dist/commands/features/delete.d.ts +14 -0
- package/dist/commands/features/delete.d.ts.map +1 -0
- package/dist/commands/features/delete.js +37 -0
- package/dist/commands/features/delete.js.map +1 -0
- package/dist/commands/features/generate.d.ts +34 -0
- package/dist/commands/features/generate.d.ts.map +1 -0
- package/dist/commands/features/generate.js +178 -0
- package/dist/commands/features/generate.js.map +1 -0
- package/dist/commands/features/index.d.ts +2 -0
- package/dist/commands/features/index.d.ts.map +1 -0
- package/dist/commands/features/index.js +2 -0
- package/dist/commands/features/index.js.map +1 -0
- package/dist/commands/features/list.d.ts +11 -0
- package/dist/commands/features/list.d.ts.map +1 -0
- package/dist/commands/features/list.js +45 -0
- package/dist/commands/features/list.js.map +1 -0
- package/dist/commands/features/show.d.ts +15 -0
- package/dist/commands/features/show.d.ts.map +1 -0
- package/dist/commands/features/show.js +61 -0
- package/dist/commands/features/show.js.map +1 -0
- package/dist/commands/features/unassign.d.ts +16 -0
- package/dist/commands/features/unassign.d.ts.map +1 -0
- package/dist/commands/features/unassign.js +55 -0
- package/dist/commands/features/unassign.js.map +1 -0
- package/dist/commands/features/update.d.ts +16 -0
- package/dist/commands/features/update.d.ts.map +1 -0
- package/dist/commands/features/update.js +54 -0
- package/dist/commands/features/update.js.map +1 -0
- package/dist/commands/files/imported-by.d.ts +13 -0
- package/dist/commands/files/imported-by.d.ts.map +1 -0
- package/dist/commands/files/imported-by.js +40 -0
- package/dist/commands/files/imported-by.js.map +1 -0
- package/dist/commands/files/imports.d.ts +14 -0
- package/dist/commands/files/imports.d.ts.map +1 -0
- package/dist/commands/files/imports.js +48 -0
- package/dist/commands/files/imports.js.map +1 -0
- package/dist/commands/files/index.d.ts +2 -0
- package/dist/commands/files/index.d.ts.map +1 -0
- package/dist/commands/files/index.js +2 -0
- package/dist/commands/files/index.js.map +1 -0
- package/dist/commands/files/list.d.ts +11 -0
- package/dist/commands/files/list.d.ts.map +1 -0
- package/dist/commands/files/list.js +35 -0
- package/dist/commands/files/list.js.map +1 -0
- package/dist/commands/files/orphans.d.ts +12 -0
- package/dist/commands/files/orphans.d.ts.map +1 -0
- package/dist/commands/files/orphans.js +43 -0
- package/dist/commands/files/orphans.js.map +1 -0
- package/dist/commands/files/show.d.ts +14 -0
- package/dist/commands/files/show.d.ts.map +1 -0
- package/dist/commands/files/show.js +95 -0
- package/dist/commands/files/show.js.map +1 -0
- package/dist/commands/flows/add-step.d.ts +19 -0
- package/dist/commands/flows/add-step.d.ts.map +1 -0
- package/dist/commands/flows/add-step.js +46 -0
- package/dist/commands/flows/add-step.js.map +1 -0
- package/dist/commands/flows/create.d.ts +17 -0
- package/dist/commands/flows/create.d.ts.map +1 -0
- package/dist/commands/flows/create.js +39 -0
- package/dist/commands/flows/create.js.map +1 -0
- package/dist/commands/flows/delete.d.ts +14 -0
- package/dist/commands/flows/delete.d.ts.map +1 -0
- package/dist/commands/flows/delete.js +37 -0
- package/dist/commands/flows/delete.js.map +1 -0
- package/dist/commands/flows/generate.d.ts +50 -0
- package/dist/commands/flows/generate.d.ts.map +1 -0
- package/dist/commands/flows/generate.js +438 -0
- package/dist/commands/flows/generate.js.map +1 -0
- package/dist/commands/flows/index.d.ts +2 -0
- package/dist/commands/flows/index.d.ts.map +1 -0
- package/dist/commands/flows/index.js +2 -0
- package/dist/commands/flows/index.js.map +1 -0
- package/dist/commands/flows/list.d.ts +12 -0
- package/dist/commands/flows/list.d.ts.map +1 -0
- package/dist/commands/flows/list.js +98 -0
- package/dist/commands/flows/list.js.map +1 -0
- package/dist/commands/flows/remove-step.d.ts +18 -0
- package/dist/commands/flows/remove-step.d.ts.map +1 -0
- package/dist/commands/flows/remove-step.js +41 -0
- package/dist/commands/flows/remove-step.js.map +1 -0
- package/dist/commands/flows/show.d.ts +17 -0
- package/dist/commands/flows/show.d.ts.map +1 -0
- package/dist/commands/flows/show.js +136 -0
- package/dist/commands/flows/show.js.map +1 -0
- package/dist/commands/flows/trace.d.ts +22 -0
- package/dist/commands/flows/trace.d.ts.map +1 -0
- package/dist/commands/flows/trace.js +217 -0
- package/dist/commands/flows/trace.js.map +1 -0
- package/dist/commands/flows/update.d.ts +17 -0
- package/dist/commands/flows/update.d.ts.map +1 -0
- package/dist/commands/flows/update.js +60 -0
- package/dist/commands/flows/update.js.map +1 -0
- package/dist/commands/flows/verify.d.ts +21 -0
- package/dist/commands/flows/verify.d.ts.map +1 -0
- package/dist/commands/flows/verify.js +123 -0
- package/dist/commands/flows/verify.js.map +1 -0
- package/dist/commands/gaps.d.ts +14 -0
- package/dist/commands/gaps.d.ts.map +1 -0
- package/dist/commands/gaps.js +184 -0
- package/dist/commands/gaps.js.map +1 -0
- package/dist/commands/hierarchy/index.d.ts +20 -0
- package/dist/commands/hierarchy/index.d.ts.map +1 -0
- package/dist/commands/hierarchy/index.js +344 -0
- package/dist/commands/hierarchy/index.js.map +1 -0
- package/dist/commands/ingest.d.ts +23 -0
- package/dist/commands/ingest.d.ts.map +1 -0
- package/dist/commands/ingest.js +249 -0
- package/dist/commands/ingest.js.map +1 -0
- package/dist/commands/interactions/create.d.ts +16 -0
- package/dist/commands/interactions/create.d.ts.map +1 -0
- package/dist/commands/interactions/create.js +58 -0
- package/dist/commands/interactions/create.js.map +1 -0
- package/dist/commands/interactions/delete.d.ts +16 -0
- package/dist/commands/interactions/delete.d.ts.map +1 -0
- package/dist/commands/interactions/delete.js +28 -0
- package/dist/commands/interactions/delete.js.map +1 -0
- package/dist/commands/interactions/generate.d.ts +62 -0
- package/dist/commands/interactions/generate.d.ts.map +1 -0
- package/dist/commands/interactions/generate.js +870 -0
- package/dist/commands/interactions/generate.js.map +1 -0
- package/dist/commands/interactions/index.d.ts +2 -0
- package/dist/commands/interactions/index.d.ts.map +1 -0
- package/dist/commands/interactions/index.js +2 -0
- package/dist/commands/interactions/index.js.map +1 -0
- package/dist/commands/interactions/list.d.ts +15 -0
- package/dist/commands/interactions/list.d.ts.map +1 -0
- package/dist/commands/interactions/list.js +127 -0
- package/dist/commands/interactions/list.js.map +1 -0
- package/dist/commands/interactions/show.d.ts +17 -0
- package/dist/commands/interactions/show.d.ts.map +1 -0
- package/dist/commands/interactions/show.js +80 -0
- package/dist/commands/interactions/show.js.map +1 -0
- package/dist/commands/interactions/update.d.ts +20 -0
- package/dist/commands/interactions/update.d.ts.map +1 -0
- package/dist/commands/interactions/update.js +57 -0
- package/dist/commands/interactions/update.js.map +1 -0
- package/dist/commands/interactions/validate.d.ts +12 -0
- package/dist/commands/interactions/validate.d.ts.map +1 -0
- package/dist/commands/interactions/validate.js +94 -0
- package/dist/commands/interactions/validate.js.map +1 -0
- package/dist/commands/interactions/verify.d.ts +18 -0
- package/dist/commands/interactions/verify.d.ts.map +1 -0
- package/dist/commands/interactions/verify.js +127 -0
- package/dist/commands/interactions/verify.js.map +1 -0
- package/dist/commands/llm/_shared/base-llm-command.d.ts +44 -0
- package/dist/commands/llm/_shared/base-llm-command.d.ts.map +1 -0
- package/dist/commands/llm/_shared/base-llm-command.js +73 -0
- package/dist/commands/llm/_shared/base-llm-command.js.map +1 -0
- package/dist/commands/llm/_shared/coverage.d.ts +61 -0
- package/dist/commands/llm/_shared/coverage.d.ts.map +1 -0
- package/dist/commands/llm/_shared/coverage.js +161 -0
- package/dist/commands/llm/_shared/coverage.js.map +1 -0
- package/dist/commands/llm/_shared/csv-utils.d.ts +65 -0
- package/dist/commands/llm/_shared/csv-utils.d.ts.map +1 -0
- package/dist/commands/llm/_shared/csv-utils.js +231 -0
- package/dist/commands/llm/_shared/csv-utils.js.map +1 -0
- package/dist/commands/llm/_shared/csv.d.ts +44 -0
- package/dist/commands/llm/_shared/csv.d.ts.map +1 -0
- package/dist/commands/llm/_shared/csv.js +76 -0
- package/dist/commands/llm/_shared/csv.js.map +1 -0
- package/dist/commands/llm/_shared/entity-utils.d.ts +11 -0
- package/dist/commands/llm/_shared/entity-utils.d.ts.map +1 -0
- package/dist/commands/llm/_shared/entity-utils.js +87 -0
- package/dist/commands/llm/_shared/entity-utils.js.map +1 -0
- package/dist/commands/llm/_shared/flow-csv.d.ts +74 -0
- package/dist/commands/llm/_shared/flow-csv.d.ts.map +1 -0
- package/dist/commands/llm/_shared/flow-csv.js +198 -0
- package/dist/commands/llm/_shared/flow-csv.js.map +1 -0
- package/dist/commands/llm/_shared/flow-prompts.d.ts +61 -0
- package/dist/commands/llm/_shared/flow-prompts.d.ts.map +1 -0
- package/dist/commands/llm/_shared/flow-prompts.js +281 -0
- package/dist/commands/llm/_shared/flow-prompts.js.map +1 -0
- package/dist/commands/llm/_shared/flow-validation.d.ts +69 -0
- package/dist/commands/llm/_shared/flow-validation.d.ts.map +1 -0
- package/dist/commands/llm/_shared/flow-validation.js +176 -0
- package/dist/commands/llm/_shared/flow-validation.js.map +1 -0
- package/dist/commands/llm/_shared/llm-utils.d.ts +88 -0
- package/dist/commands/llm/_shared/llm-utils.d.ts.map +1 -0
- package/dist/commands/llm/_shared/llm-utils.js +256 -0
- package/dist/commands/llm/_shared/llm-utils.js.map +1 -0
- package/dist/commands/llm/_shared/module-csv.d.ts +76 -0
- package/dist/commands/llm/_shared/module-csv.d.ts.map +1 -0
- package/dist/commands/llm/_shared/module-csv.js +196 -0
- package/dist/commands/llm/_shared/module-csv.js.map +1 -0
- package/dist/commands/llm/_shared/module-prompts.d.ts +107 -0
- package/dist/commands/llm/_shared/module-prompts.d.ts.map +1 -0
- package/dist/commands/llm/_shared/module-prompts.js +395 -0
- package/dist/commands/llm/_shared/module-prompts.js.map +1 -0
- package/dist/commands/llm/_shared/process-utils.d.ts +52 -0
- package/dist/commands/llm/_shared/process-utils.d.ts.map +1 -0
- package/dist/commands/llm/_shared/process-utils.js +214 -0
- package/dist/commands/llm/_shared/process-utils.js.map +1 -0
- package/dist/commands/llm/_shared/prompts.d.ts +132 -0
- package/dist/commands/llm/_shared/prompts.d.ts.map +1 -0
- package/dist/commands/llm/_shared/prompts.js +391 -0
- package/dist/commands/llm/_shared/prompts.js.map +1 -0
- package/dist/commands/llm/_shared/pure-check.d.ts +10 -0
- package/dist/commands/llm/_shared/pure-check.d.ts.map +1 -0
- package/dist/commands/llm/_shared/pure-check.js +449 -0
- package/dist/commands/llm/_shared/pure-check.js.map +1 -0
- package/dist/commands/llm/_shared/verify/content-verifier.d.ts +40 -0
- package/dist/commands/llm/_shared/verify/content-verifier.d.ts.map +1 -0
- package/dist/commands/llm/_shared/verify/content-verifier.js +247 -0
- package/dist/commands/llm/_shared/verify/content-verifier.js.map +1 -0
- package/dist/commands/llm/_shared/verify/coverage-checker.d.ts +34 -0
- package/dist/commands/llm/_shared/verify/coverage-checker.d.ts.map +1 -0
- package/dist/commands/llm/_shared/verify/coverage-checker.js +1096 -0
- package/dist/commands/llm/_shared/verify/coverage-checker.js.map +1 -0
- package/dist/commands/llm/_shared/verify/verify-prompts.d.ts +30 -0
- package/dist/commands/llm/_shared/verify/verify-prompts.d.ts.map +1 -0
- package/dist/commands/llm/_shared/verify/verify-prompts.js +118 -0
- package/dist/commands/llm/_shared/verify/verify-prompts.js.map +1 -0
- package/dist/commands/llm/_shared/verify/verify-types.d.ts +47 -0
- package/dist/commands/llm/_shared/verify/verify-types.d.ts.map +1 -0
- package/dist/commands/llm/_shared/verify/verify-types.js +2 -0
- package/dist/commands/llm/_shared/verify/verify-types.js.map +1 -0
- package/dist/commands/llm/annotate.d.ts +7 -0
- package/dist/commands/llm/annotate.d.ts.map +1 -0
- package/dist/commands/llm/annotate.js +11 -0
- package/dist/commands/llm/annotate.js.map +1 -0
- package/dist/commands/llm/features/feature-grouper.d.ts +31 -0
- package/dist/commands/llm/features/feature-grouper.d.ts.map +1 -0
- package/dist/commands/llm/features/feature-grouper.js +223 -0
- package/dist/commands/llm/features/feature-grouper.js.map +1 -0
- package/dist/commands/llm/features/index.d.ts +6 -0
- package/dist/commands/llm/features/index.d.ts.map +1 -0
- package/dist/commands/llm/features/index.js +6 -0
- package/dist/commands/llm/features/index.js.map +1 -0
- package/dist/commands/llm/features/types.d.ts +10 -0
- package/dist/commands/llm/features/types.d.ts.map +1 -0
- package/dist/commands/llm/features/types.js +5 -0
- package/dist/commands/llm/features/types.js.map +1 -0
- package/dist/commands/llm/features.d.ts +7 -0
- package/dist/commands/llm/features.d.ts.map +1 -0
- package/dist/commands/llm/features.js +11 -0
- package/dist/commands/llm/features.js.map +1 -0
- package/dist/commands/llm/flows/atomic-flow-builder.d.ts +51 -0
- package/dist/commands/llm/flows/atomic-flow-builder.d.ts.map +1 -0
- package/dist/commands/llm/flows/atomic-flow-builder.js +247 -0
- package/dist/commands/llm/flows/atomic-flow-builder.js.map +1 -0
- package/dist/commands/llm/flows/dedup.d.ts +18 -0
- package/dist/commands/llm/flows/dedup.d.ts.map +1 -0
- package/dist/commands/llm/flows/dedup.js +76 -0
- package/dist/commands/llm/flows/dedup.js.map +1 -0
- package/dist/commands/llm/flows/entry-point-detector.d.ts +41 -0
- package/dist/commands/llm/flows/entry-point-detector.d.ts.map +1 -0
- package/dist/commands/llm/flows/entry-point-detector.js +388 -0
- package/dist/commands/llm/flows/entry-point-detector.js.map +1 -0
- package/dist/commands/llm/flows/flow-enhancer.d.ts +21 -0
- package/dist/commands/llm/flows/flow-enhancer.d.ts.map +1 -0
- package/dist/commands/llm/flows/flow-enhancer.js +166 -0
- package/dist/commands/llm/flows/flow-enhancer.js.map +1 -0
- package/dist/commands/llm/flows/flow-tracer.d.ts +50 -0
- package/dist/commands/llm/flows/flow-tracer.d.ts.map +1 -0
- package/dist/commands/llm/flows/flow-tracer.js +271 -0
- package/dist/commands/llm/flows/flow-tracer.js.map +1 -0
- package/dist/commands/llm/flows/flow-validator.d.ts +31 -0
- package/dist/commands/llm/flows/flow-validator.d.ts.map +1 -0
- package/dist/commands/llm/flows/flow-validator.js +262 -0
- package/dist/commands/llm/flows/flow-validator.js.map +1 -0
- package/dist/commands/llm/flows/gap-flow-generator.d.ts +13 -0
- package/dist/commands/llm/flows/gap-flow-generator.d.ts.map +1 -0
- package/dist/commands/llm/flows/gap-flow-generator.js +48 -0
- package/dist/commands/llm/flows/gap-flow-generator.js.map +1 -0
- package/dist/commands/llm/flows/index.d.ts +12 -0
- package/dist/commands/llm/flows/index.d.ts.map +1 -0
- package/dist/commands/llm/flows/index.js +12 -0
- package/dist/commands/llm/flows/index.js.map +1 -0
- package/dist/commands/llm/flows/types.d.ts +87 -0
- package/dist/commands/llm/flows/types.d.ts.map +1 -0
- package/dist/commands/llm/flows/types.js +5 -0
- package/dist/commands/llm/flows/types.js.map +1 -0
- package/dist/commands/llm/flows.d.ts +7 -0
- package/dist/commands/llm/flows.d.ts.map +1 -0
- package/dist/commands/llm/flows.js +11 -0
- package/dist/commands/llm/flows.js.map +1 -0
- package/dist/commands/llm/interactions.d.ts +7 -0
- package/dist/commands/llm/interactions.d.ts.map +1 -0
- package/dist/commands/llm/interactions.js +11 -0
- package/dist/commands/llm/interactions.js.map +1 -0
- package/dist/commands/llm/modules.d.ts +7 -0
- package/dist/commands/llm/modules.d.ts.map +1 -0
- package/dist/commands/llm/modules.js +11 -0
- package/dist/commands/llm/modules.js.map +1 -0
- package/dist/commands/llm/relationships.d.ts +7 -0
- package/dist/commands/llm/relationships.d.ts.map +1 -0
- package/dist/commands/llm/relationships.js +11 -0
- package/dist/commands/llm/relationships.js.map +1 -0
- package/dist/commands/modules/assign.d.ts +14 -0
- package/dist/commands/modules/assign.d.ts.map +1 -0
- package/dist/commands/modules/assign.js +54 -0
- package/dist/commands/modules/assign.js.map +1 -0
- package/dist/commands/modules/create.d.ts +16 -0
- package/dist/commands/modules/create.d.ts.map +1 -0
- package/dist/commands/modules/create.js +37 -0
- package/dist/commands/modules/create.js.map +1 -0
- package/dist/commands/modules/delete.d.ts +14 -0
- package/dist/commands/modules/delete.d.ts.map +1 -0
- package/dist/commands/modules/delete.js +54 -0
- package/dist/commands/modules/delete.js.map +1 -0
- package/dist/commands/modules/generate.d.ts +84 -0
- package/dist/commands/modules/generate.d.ts.map +1 -0
- package/dist/commands/modules/generate.js +1234 -0
- package/dist/commands/modules/generate.js.map +1 -0
- package/dist/commands/modules/index.d.ts +2 -0
- package/dist/commands/modules/index.d.ts.map +1 -0
- package/dist/commands/modules/index.js +2 -0
- package/dist/commands/modules/index.js.map +1 -0
- package/dist/commands/modules/list.d.ts +13 -0
- package/dist/commands/modules/list.d.ts.map +1 -0
- package/dist/commands/modules/list.js +92 -0
- package/dist/commands/modules/list.js.map +1 -0
- package/dist/commands/modules/prune.d.ts +10 -0
- package/dist/commands/modules/prune.d.ts.map +1 -0
- package/dist/commands/modules/prune.js +23 -0
- package/dist/commands/modules/prune.js.map +1 -0
- package/dist/commands/modules/show.d.ts +15 -0
- package/dist/commands/modules/show.d.ts.map +1 -0
- package/dist/commands/modules/show.js +95 -0
- package/dist/commands/modules/show.js.map +1 -0
- package/dist/commands/modules/unassign.d.ts +13 -0
- package/dist/commands/modules/unassign.d.ts.map +1 -0
- package/dist/commands/modules/unassign.js +49 -0
- package/dist/commands/modules/unassign.js.map +1 -0
- package/dist/commands/modules/update.d.ts +15 -0
- package/dist/commands/modules/update.d.ts.map +1 -0
- package/dist/commands/modules/update.js +50 -0
- package/dist/commands/modules/update.js.map +1 -0
- package/dist/commands/modules/verify.d.ts +18 -0
- package/dist/commands/modules/verify.d.ts.map +1 -0
- package/dist/commands/modules/verify.js +114 -0
- package/dist/commands/modules/verify.js.map +1 -0
- package/dist/commands/overview.d.ts +12 -0
- package/dist/commands/overview.d.ts.map +1 -0
- package/dist/commands/overview.js +219 -0
- package/dist/commands/overview.js.map +1 -0
- package/dist/commands/parse.d.ts +30 -0
- package/dist/commands/parse.d.ts.map +1 -0
- package/dist/commands/parse.js +211 -0
- package/dist/commands/parse.js.map +1 -0
- package/dist/commands/process-groups/index.d.ts +2 -0
- package/dist/commands/process-groups/index.d.ts.map +1 -0
- package/dist/commands/process-groups/index.js +2 -0
- package/dist/commands/process-groups/index.js.map +1 -0
- package/dist/commands/process-groups/list.d.ts +11 -0
- package/dist/commands/process-groups/list.d.ts.map +1 -0
- package/dist/commands/process-groups/list.js +98 -0
- package/dist/commands/process-groups/list.js.map +1 -0
- package/dist/commands/relationships/annotate.d.ts +27 -0
- package/dist/commands/relationships/annotate.d.ts.map +1 -0
- package/dist/commands/relationships/annotate.js +453 -0
- package/dist/commands/relationships/annotate.js.map +1 -0
- package/dist/commands/relationships/index.d.ts +2 -0
- package/dist/commands/relationships/index.d.ts.map +1 -0
- package/dist/commands/relationships/index.js +2 -0
- package/dist/commands/relationships/index.js.map +1 -0
- package/dist/commands/relationships/list.d.ts +18 -0
- package/dist/commands/relationships/list.d.ts.map +1 -0
- package/dist/commands/relationships/list.js +147 -0
- package/dist/commands/relationships/list.js.map +1 -0
- package/dist/commands/relationships/next.d.ts +17 -0
- package/dist/commands/relationships/next.d.ts.map +1 -0
- package/dist/commands/relationships/next.js +178 -0
- package/dist/commands/relationships/next.js.map +1 -0
- package/dist/commands/relationships/set.d.ts +19 -0
- package/dist/commands/relationships/set.d.ts.map +1 -0
- package/dist/commands/relationships/set.js +65 -0
- package/dist/commands/relationships/set.js.map +1 -0
- package/dist/commands/relationships/show.d.ts +13 -0
- package/dist/commands/relationships/show.d.ts.map +1 -0
- package/dist/commands/relationships/show.js +59 -0
- package/dist/commands/relationships/show.js.map +1 -0
- package/dist/commands/relationships/unset.d.ts +16 -0
- package/dist/commands/relationships/unset.d.ts.map +1 -0
- package/dist/commands/relationships/unset.js +62 -0
- package/dist/commands/relationships/unset.js.map +1 -0
- package/dist/commands/relationships/verify.d.ts +24 -0
- package/dist/commands/relationships/verify.d.ts.map +1 -0
- package/dist/commands/relationships/verify.js +328 -0
- package/dist/commands/relationships/verify.js.map +1 -0
- package/dist/commands/stats.d.ts +11 -0
- package/dist/commands/stats.d.ts.map +1 -0
- package/dist/commands/stats.js +207 -0
- package/dist/commands/stats.js.map +1 -0
- package/dist/commands/symbols/annotate.d.ts +32 -0
- package/dist/commands/symbols/annotate.d.ts.map +1 -0
- package/dist/commands/symbols/annotate.js +862 -0
- package/dist/commands/symbols/annotate.js.map +1 -0
- package/dist/commands/symbols/deps.d.ts +18 -0
- package/dist/commands/symbols/deps.d.ts.map +1 -0
- package/dist/commands/symbols/deps.js +104 -0
- package/dist/commands/symbols/deps.js.map +1 -0
- package/dist/commands/symbols/index.d.ts +2 -0
- package/dist/commands/symbols/index.d.ts.map +1 -0
- package/dist/commands/symbols/index.js +2 -0
- package/dist/commands/symbols/index.js.map +1 -0
- package/dist/commands/symbols/list.d.ts +17 -0
- package/dist/commands/symbols/list.d.ts.map +1 -0
- package/dist/commands/symbols/list.js +136 -0
- package/dist/commands/symbols/list.js.map +1 -0
- package/dist/commands/symbols/next.d.ts +15 -0
- package/dist/commands/symbols/next.d.ts.map +1 -0
- package/dist/commands/symbols/next.js +147 -0
- package/dist/commands/symbols/next.js.map +1 -0
- package/dist/commands/symbols/prereqs.d.ts +18 -0
- package/dist/commands/symbols/prereqs.d.ts.map +1 -0
- package/dist/commands/symbols/prereqs.js +107 -0
- package/dist/commands/symbols/prereqs.js.map +1 -0
- package/dist/commands/symbols/ready.d.ts +17 -0
- package/dist/commands/symbols/ready.d.ts.map +1 -0
- package/dist/commands/symbols/ready.js +126 -0
- package/dist/commands/symbols/ready.js.map +1 -0
- package/dist/commands/symbols/set.d.ts +27 -0
- package/dist/commands/symbols/set.d.ts.map +1 -0
- package/dist/commands/symbols/set.js +241 -0
- package/dist/commands/symbols/set.js.map +1 -0
- package/dist/commands/symbols/show.d.ts +19 -0
- package/dist/commands/symbols/show.d.ts.map +1 -0
- package/dist/commands/symbols/show.js +182 -0
- package/dist/commands/symbols/show.js.map +1 -0
- package/dist/commands/symbols/understood.d.ts +15 -0
- package/dist/commands/symbols/understood.d.ts.map +1 -0
- package/dist/commands/symbols/understood.js +101 -0
- package/dist/commands/symbols/understood.js.map +1 -0
- package/dist/commands/symbols/unset.d.ts +16 -0
- package/dist/commands/symbols/unset.d.ts.map +1 -0
- package/dist/commands/symbols/unset.js +48 -0
- package/dist/commands/symbols/unset.js.map +1 -0
- package/dist/commands/symbols/verify.d.ts +25 -0
- package/dist/commands/symbols/verify.d.ts.map +1 -0
- package/dist/commands/symbols/verify.js +360 -0
- package/dist/commands/symbols/verify.js.map +1 -0
- package/dist/db/connection.d.ts +14 -0
- package/dist/db/connection.d.ts.map +1 -0
- package/dist/db/connection.js +37 -0
- package/dist/db/connection.js.map +1 -0
- package/dist/db/database-facade.d.ts +125 -0
- package/dist/db/database-facade.d.ts.map +1 -0
- package/dist/db/database-facade.js +347 -0
- package/dist/db/database-facade.js.map +1 -0
- package/dist/db/database.d.ts +9 -0
- package/dist/db/database.d.ts.map +1 -0
- package/dist/db/database.js +11 -0
- package/dist/db/database.js.map +1 -0
- package/dist/db/index.d.ts +7 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +11 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/repositories/_shared/call-graph-query.d.ts +10 -0
- package/dist/db/repositories/_shared/call-graph-query.d.ts.map +1 -0
- package/dist/db/repositories/_shared/call-graph-query.js +59 -0
- package/dist/db/repositories/_shared/call-graph-query.js.map +1 -0
- package/dist/db/repositories/call-graph-service.d.ts +28 -0
- package/dist/db/repositories/call-graph-service.d.ts.map +1 -0
- package/dist/db/repositories/call-graph-service.js +223 -0
- package/dist/db/repositories/call-graph-service.js.map +1 -0
- package/dist/db/repositories/definition-repository.d.ts +99 -0
- package/dist/db/repositories/definition-repository.d.ts.map +1 -0
- package/dist/db/repositories/definition-repository.js +317 -0
- package/dist/db/repositories/definition-repository.js.map +1 -0
- package/dist/db/repositories/dependency-repository.d.ts +78 -0
- package/dist/db/repositories/dependency-repository.d.ts.map +1 -0
- package/dist/db/repositories/dependency-repository.js +446 -0
- package/dist/db/repositories/dependency-repository.js.map +1 -0
- package/dist/db/repositories/domain-repository.d.ts +97 -0
- package/dist/db/repositories/domain-repository.d.ts.map +1 -0
- package/dist/db/repositories/domain-repository.js +261 -0
- package/dist/db/repositories/domain-repository.js.map +1 -0
- package/dist/db/repositories/feature-repository.d.ts +64 -0
- package/dist/db/repositories/feature-repository.d.ts.map +1 -0
- package/dist/db/repositories/feature-repository.js +189 -0
- package/dist/db/repositories/feature-repository.js.map +1 -0
- package/dist/db/repositories/file-repository.d.ts +67 -0
- package/dist/db/repositories/file-repository.d.ts.map +1 -0
- package/dist/db/repositories/file-repository.js +179 -0
- package/dist/db/repositories/file-repository.js.map +1 -0
- package/dist/db/repositories/flow-repository.d.ts +172 -0
- package/dist/db/repositories/flow-repository.d.ts.map +1 -0
- package/dist/db/repositories/flow-repository.js +599 -0
- package/dist/db/repositories/flow-repository.js.map +1 -0
- package/dist/db/repositories/graph-repository.d.ts +93 -0
- package/dist/db/repositories/graph-repository.d.ts.map +1 -0
- package/dist/db/repositories/graph-repository.js +413 -0
- package/dist/db/repositories/graph-repository.js.map +1 -0
- package/dist/db/repositories/index.d.ts +20 -0
- package/dist/db/repositories/index.d.ts.map +1 -0
- package/dist/db/repositories/index.js +15 -0
- package/dist/db/repositories/index.js.map +1 -0
- package/dist/db/repositories/interaction-analysis.d.ts +78 -0
- package/dist/db/repositories/interaction-analysis.d.ts.map +1 -0
- package/dist/db/repositories/interaction-analysis.js +340 -0
- package/dist/db/repositories/interaction-analysis.js.map +1 -0
- package/dist/db/repositories/interaction-repository.d.ts +145 -0
- package/dist/db/repositories/interaction-repository.d.ts.map +1 -0
- package/dist/db/repositories/interaction-repository.js +395 -0
- package/dist/db/repositories/interaction-repository.js.map +1 -0
- package/dist/db/repositories/metadata-repository.d.ts +110 -0
- package/dist/db/repositories/metadata-repository.d.ts.map +1 -0
- package/dist/db/repositories/metadata-repository.js +294 -0
- package/dist/db/repositories/metadata-repository.js.map +1 -0
- package/dist/db/repositories/module-repository.d.ts +162 -0
- package/dist/db/repositories/module-repository.d.ts.map +1 -0
- package/dist/db/repositories/module-repository.js +519 -0
- package/dist/db/repositories/module-repository.js.map +1 -0
- package/dist/db/repositories/relationship-repository.d.ts +98 -0
- package/dist/db/repositories/relationship-repository.d.ts.map +1 -0
- package/dist/db/repositories/relationship-repository.js +421 -0
- package/dist/db/repositories/relationship-repository.js.map +1 -0
- package/dist/db/schema-manager.d.ts +31 -0
- package/dist/db/schema-manager.d.ts.map +1 -0
- package/dist/db/schema-manager.js +398 -0
- package/dist/db/schema-manager.js.map +1 -0
- package/dist/db/schema.d.ts +404 -0
- package/dist/db/schema.d.ts.map +1 -0
- package/dist/db/schema.js +234 -0
- package/dist/db/schema.js.map +1 -0
- package/dist/db/utils/tree-builder.d.ts +25 -0
- package/dist/db/utils/tree-builder.d.ts.map +1 -0
- package/dist/db/utils/tree-builder.js +38 -0
- package/dist/db/utils/tree-builder.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/parser/ast-parser.d.ts +23 -0
- package/dist/parser/ast-parser.d.ts.map +1 -0
- package/dist/parser/ast-parser.js +65 -0
- package/dist/parser/ast-parser.js.map +1 -0
- package/dist/parser/definition-extractor.d.ts +29 -0
- package/dist/parser/definition-extractor.d.ts.map +1 -0
- package/dist/parser/definition-extractor.js +379 -0
- package/dist/parser/definition-extractor.js.map +1 -0
- package/dist/parser/reference-extractor.d.ts +72 -0
- package/dist/parser/reference-extractor.d.ts.map +1 -0
- package/dist/parser/reference-extractor.js +759 -0
- package/dist/parser/reference-extractor.js.map +1 -0
- package/dist/utils/file-scanner.d.ts +6 -0
- package/dist/utils/file-scanner.d.ts.map +1 -0
- package/dist/utils/file-scanner.js +33 -0
- package/dist/utils/file-scanner.js.map +1 -0
- package/dist/web/api-transforms.d.ts +4 -0
- package/dist/web/api-transforms.d.ts.map +1 -0
- package/dist/web/api-transforms.js +4 -0
- package/dist/web/api-transforms.js.map +1 -0
- package/dist/web/server.d.ts +16 -0
- package/dist/web/server.d.ts.map +1 -0
- package/dist/web/server.js +229 -0
- package/dist/web/server.js.map +1 -0
- package/dist/web/server.test.d.ts +2 -0
- package/dist/web/server.test.d.ts.map +1 -0
- package/dist/web/server.test.js +505 -0
- package/dist/web/server.test.js.map +1 -0
- package/dist/web/transforms/flow-transforms.d.ts +117 -0
- package/dist/web/transforms/flow-transforms.d.ts.map +1 -0
- package/dist/web/transforms/flow-transforms.js +202 -0
- package/dist/web/transforms/flow-transforms.js.map +1 -0
- package/dist/web/transforms/index.d.ts +4 -0
- package/dist/web/transforms/index.d.ts.map +1 -0
- package/dist/web/transforms/index.js +4 -0
- package/dist/web/transforms/index.js.map +1 -0
- package/dist/web/transforms/module-transforms.d.ts +42 -0
- package/dist/web/transforms/module-transforms.d.ts.map +1 -0
- package/dist/web/transforms/module-transforms.js +64 -0
- package/dist/web/transforms/module-transforms.js.map +1 -0
- package/dist/web/transforms/symbol-transforms.d.ts +31 -0
- package/dist/web/transforms/symbol-transforms.d.ts.map +1 -0
- package/dist/web/transforms/symbol-transforms.js +95 -0
- package/dist/web/transforms/symbol-transforms.js.map +1 -0
- package/package.json +96 -0
- package/ui/dist/assets/index-DP3dRMlh.js +268 -0
- package/ui/dist/assets/index-DP3dRMlh.js.map +1 -0
- package/ui/dist/assets/index-Db204Xn1.css +1 -0
- package/ui/dist/index.html +67 -0
|
@@ -0,0 +1,398 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Ensure the modules and module_members tables exist with the current schema.
|
|
3
|
+
*/
|
|
4
|
+
export function ensureModulesTables(db) {
|
|
5
|
+
const tableExists = db
|
|
6
|
+
.prepare(`
|
|
7
|
+
SELECT name FROM sqlite_master WHERE type='table' AND name='modules'
|
|
8
|
+
`)
|
|
9
|
+
.get();
|
|
10
|
+
if (!tableExists) {
|
|
11
|
+
db.exec(`
|
|
12
|
+
CREATE TABLE modules (
|
|
13
|
+
id INTEGER PRIMARY KEY,
|
|
14
|
+
parent_id INTEGER REFERENCES modules(id) ON DELETE CASCADE,
|
|
15
|
+
slug TEXT NOT NULL,
|
|
16
|
+
full_path TEXT NOT NULL UNIQUE,
|
|
17
|
+
name TEXT NOT NULL,
|
|
18
|
+
description TEXT,
|
|
19
|
+
depth INTEGER NOT NULL DEFAULT 0,
|
|
20
|
+
color_index INTEGER NOT NULL DEFAULT 0,
|
|
21
|
+
is_test INTEGER NOT NULL DEFAULT 0,
|
|
22
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
23
|
+
UNIQUE(parent_id, slug)
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
CREATE INDEX idx_modules_parent ON modules(parent_id);
|
|
27
|
+
CREATE INDEX idx_modules_path ON modules(full_path);
|
|
28
|
+
CREATE INDEX idx_modules_depth ON modules(depth);
|
|
29
|
+
|
|
30
|
+
CREATE TABLE module_members (
|
|
31
|
+
module_id INTEGER NOT NULL REFERENCES modules(id) ON DELETE CASCADE,
|
|
32
|
+
definition_id INTEGER NOT NULL REFERENCES definitions(id) ON DELETE CASCADE,
|
|
33
|
+
assigned_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
34
|
+
PRIMARY KEY (definition_id)
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
CREATE INDEX idx_module_members_module ON module_members(module_id);
|
|
38
|
+
`);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// Check if we need to migrate from old schema to new schema
|
|
42
|
+
const hasSlug = db
|
|
43
|
+
.prepare(`
|
|
44
|
+
SELECT COUNT(*) as count FROM pragma_table_info('modules') WHERE name='slug'
|
|
45
|
+
`)
|
|
46
|
+
.get();
|
|
47
|
+
if (hasSlug.count === 0) {
|
|
48
|
+
// Old schema detected - drop and recreate
|
|
49
|
+
db.exec(`
|
|
50
|
+
DROP TABLE IF EXISTS module_members;
|
|
51
|
+
DROP TABLE IF EXISTS modules;
|
|
52
|
+
|
|
53
|
+
CREATE TABLE modules (
|
|
54
|
+
id INTEGER PRIMARY KEY,
|
|
55
|
+
parent_id INTEGER REFERENCES modules(id) ON DELETE CASCADE,
|
|
56
|
+
slug TEXT NOT NULL,
|
|
57
|
+
full_path TEXT NOT NULL UNIQUE,
|
|
58
|
+
name TEXT NOT NULL,
|
|
59
|
+
description TEXT,
|
|
60
|
+
depth INTEGER NOT NULL DEFAULT 0,
|
|
61
|
+
color_index INTEGER NOT NULL DEFAULT 0,
|
|
62
|
+
is_test INTEGER NOT NULL DEFAULT 0,
|
|
63
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
64
|
+
UNIQUE(parent_id, slug)
|
|
65
|
+
);
|
|
66
|
+
|
|
67
|
+
CREATE INDEX idx_modules_parent ON modules(parent_id);
|
|
68
|
+
CREATE INDEX idx_modules_path ON modules(full_path);
|
|
69
|
+
CREATE INDEX idx_modules_depth ON modules(depth);
|
|
70
|
+
|
|
71
|
+
CREATE TABLE module_members (
|
|
72
|
+
module_id INTEGER NOT NULL REFERENCES modules(id) ON DELETE CASCADE,
|
|
73
|
+
definition_id INTEGER NOT NULL REFERENCES definitions(id) ON DELETE CASCADE,
|
|
74
|
+
assigned_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
75
|
+
PRIMARY KEY (definition_id)
|
|
76
|
+
);
|
|
77
|
+
|
|
78
|
+
CREATE INDEX idx_module_members_module ON module_members(module_id);
|
|
79
|
+
`);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
// Check if we need to add color_index column
|
|
83
|
+
const hasColorIndex = db
|
|
84
|
+
.prepare(`
|
|
85
|
+
SELECT COUNT(*) as count FROM pragma_table_info('modules') WHERE name='color_index'
|
|
86
|
+
`)
|
|
87
|
+
.get();
|
|
88
|
+
if (hasColorIndex.count === 0) {
|
|
89
|
+
db.exec('ALTER TABLE modules ADD COLUMN color_index INTEGER NOT NULL DEFAULT 0');
|
|
90
|
+
}
|
|
91
|
+
// Check if we need to add is_test column
|
|
92
|
+
const hasIsTest = db
|
|
93
|
+
.prepare(`
|
|
94
|
+
SELECT COUNT(*) as count FROM pragma_table_info('modules') WHERE name='is_test'
|
|
95
|
+
`)
|
|
96
|
+
.get();
|
|
97
|
+
if (hasIsTest.count === 0) {
|
|
98
|
+
db.exec('ALTER TABLE modules ADD COLUMN is_test INTEGER NOT NULL DEFAULT 0');
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Ensure the interactions table exists.
|
|
105
|
+
*/
|
|
106
|
+
export function ensureInteractionsTables(db) {
|
|
107
|
+
const tableExists = db
|
|
108
|
+
.prepare(`
|
|
109
|
+
SELECT name FROM sqlite_master WHERE type='table' AND name='interactions'
|
|
110
|
+
`)
|
|
111
|
+
.get();
|
|
112
|
+
if (!tableExists) {
|
|
113
|
+
db.exec(`
|
|
114
|
+
CREATE TABLE interactions (
|
|
115
|
+
id INTEGER PRIMARY KEY,
|
|
116
|
+
from_module_id INTEGER NOT NULL REFERENCES modules(id) ON DELETE CASCADE,
|
|
117
|
+
to_module_id INTEGER NOT NULL REFERENCES modules(id) ON DELETE CASCADE,
|
|
118
|
+
direction TEXT NOT NULL DEFAULT 'uni',
|
|
119
|
+
weight INTEGER NOT NULL DEFAULT 1,
|
|
120
|
+
pattern TEXT,
|
|
121
|
+
symbols TEXT,
|
|
122
|
+
semantic TEXT,
|
|
123
|
+
source TEXT NOT NULL DEFAULT 'ast',
|
|
124
|
+
confidence TEXT DEFAULT NULL,
|
|
125
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
126
|
+
UNIQUE(from_module_id, to_module_id)
|
|
127
|
+
);
|
|
128
|
+
|
|
129
|
+
CREATE INDEX idx_interactions_from_module ON interactions(from_module_id);
|
|
130
|
+
CREATE INDEX idx_interactions_to_module ON interactions(to_module_id);
|
|
131
|
+
CREATE INDEX idx_interactions_pattern ON interactions(pattern);
|
|
132
|
+
CREATE INDEX idx_interactions_source ON interactions(source);
|
|
133
|
+
`);
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
// Check if we need to add source column
|
|
137
|
+
const hasSource = db
|
|
138
|
+
.prepare(`
|
|
139
|
+
SELECT COUNT(*) as count FROM pragma_table_info('interactions') WHERE name='source'
|
|
140
|
+
`)
|
|
141
|
+
.get();
|
|
142
|
+
if (hasSource.count === 0) {
|
|
143
|
+
db.exec(`
|
|
144
|
+
ALTER TABLE interactions ADD COLUMN source TEXT NOT NULL DEFAULT 'ast';
|
|
145
|
+
CREATE INDEX idx_interactions_source ON interactions(source);
|
|
146
|
+
`);
|
|
147
|
+
}
|
|
148
|
+
// Check if we need to add confidence column
|
|
149
|
+
const hasConfidence = db
|
|
150
|
+
.prepare(`
|
|
151
|
+
SELECT COUNT(*) as count FROM pragma_table_info('interactions') WHERE name='confidence'
|
|
152
|
+
`)
|
|
153
|
+
.get();
|
|
154
|
+
if (hasConfidence.count === 0) {
|
|
155
|
+
db.exec('ALTER TABLE interactions ADD COLUMN confidence TEXT DEFAULT NULL');
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Ensure the flows and flow_steps tables exist.
|
|
161
|
+
*/
|
|
162
|
+
export function ensureFlowsTables(db) {
|
|
163
|
+
const flowsTableExists = db
|
|
164
|
+
.prepare(`
|
|
165
|
+
SELECT name FROM sqlite_master WHERE type='table' AND name='flows'
|
|
166
|
+
`)
|
|
167
|
+
.get();
|
|
168
|
+
if (!flowsTableExists) {
|
|
169
|
+
db.exec(`
|
|
170
|
+
CREATE TABLE flows (
|
|
171
|
+
id INTEGER PRIMARY KEY,
|
|
172
|
+
name TEXT NOT NULL,
|
|
173
|
+
slug TEXT NOT NULL UNIQUE,
|
|
174
|
+
entry_point_module_id INTEGER REFERENCES modules(id) ON DELETE SET NULL,
|
|
175
|
+
entry_point_id INTEGER REFERENCES definitions(id) ON DELETE SET NULL,
|
|
176
|
+
entry_path TEXT,
|
|
177
|
+
stakeholder TEXT,
|
|
178
|
+
description TEXT,
|
|
179
|
+
action_type TEXT,
|
|
180
|
+
target_entity TEXT,
|
|
181
|
+
tier INTEGER NOT NULL DEFAULT 0,
|
|
182
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
183
|
+
);
|
|
184
|
+
|
|
185
|
+
CREATE INDEX idx_flows_slug ON flows(slug);
|
|
186
|
+
CREATE INDEX idx_flows_entry_point_module ON flows(entry_point_module_id);
|
|
187
|
+
CREATE INDEX idx_flows_entry_point ON flows(entry_point_id);
|
|
188
|
+
CREATE INDEX idx_flows_stakeholder ON flows(stakeholder);
|
|
189
|
+
`);
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
// Check if we need to migrate from old schema to new schema
|
|
193
|
+
const hasEntryPointId = db
|
|
194
|
+
.prepare(`
|
|
195
|
+
SELECT COUNT(*) as count FROM pragma_table_info('flows') WHERE name='entry_point_id'
|
|
196
|
+
`)
|
|
197
|
+
.get();
|
|
198
|
+
if (hasEntryPointId.count === 0) {
|
|
199
|
+
// Old schema detected - drop and recreate
|
|
200
|
+
db.exec(`
|
|
201
|
+
DROP TABLE IF EXISTS flow_subflow_steps;
|
|
202
|
+
DROP TABLE IF EXISTS flow_definition_steps;
|
|
203
|
+
DROP TABLE IF EXISTS flow_steps;
|
|
204
|
+
DROP TABLE IF EXISTS flows;
|
|
205
|
+
|
|
206
|
+
CREATE TABLE flows (
|
|
207
|
+
id INTEGER PRIMARY KEY,
|
|
208
|
+
name TEXT NOT NULL,
|
|
209
|
+
slug TEXT NOT NULL UNIQUE,
|
|
210
|
+
entry_point_module_id INTEGER REFERENCES modules(id) ON DELETE SET NULL,
|
|
211
|
+
entry_point_id INTEGER REFERENCES definitions(id) ON DELETE SET NULL,
|
|
212
|
+
entry_path TEXT,
|
|
213
|
+
stakeholder TEXT,
|
|
214
|
+
description TEXT,
|
|
215
|
+
action_type TEXT,
|
|
216
|
+
target_entity TEXT,
|
|
217
|
+
tier INTEGER NOT NULL DEFAULT 0,
|
|
218
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
219
|
+
);
|
|
220
|
+
|
|
221
|
+
CREATE INDEX idx_flows_slug ON flows(slug);
|
|
222
|
+
CREATE INDEX idx_flows_entry_point_module ON flows(entry_point_module_id);
|
|
223
|
+
CREATE INDEX idx_flows_entry_point ON flows(entry_point_id);
|
|
224
|
+
CREATE INDEX idx_flows_stakeholder ON flows(stakeholder);
|
|
225
|
+
`);
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
// Check if we need to add entry_point_module_id column
|
|
229
|
+
const hasEntryPointModuleId = db
|
|
230
|
+
.prepare(`
|
|
231
|
+
SELECT COUNT(*) as count FROM pragma_table_info('flows') WHERE name='entry_point_module_id'
|
|
232
|
+
`)
|
|
233
|
+
.get();
|
|
234
|
+
if (hasEntryPointModuleId.count === 0) {
|
|
235
|
+
// Add the new column and index
|
|
236
|
+
db.exec(`
|
|
237
|
+
ALTER TABLE flows ADD COLUMN entry_point_module_id INTEGER REFERENCES modules(id) ON DELETE SET NULL;
|
|
238
|
+
CREATE INDEX idx_flows_entry_point_module ON flows(entry_point_module_id);
|
|
239
|
+
`);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
// Check for action_type column
|
|
243
|
+
const hasActionType = db
|
|
244
|
+
.prepare("SELECT COUNT(*) as count FROM pragma_table_info('flows') WHERE name='action_type'")
|
|
245
|
+
.get();
|
|
246
|
+
if (hasActionType.count === 0) {
|
|
247
|
+
db.exec(`
|
|
248
|
+
ALTER TABLE flows ADD COLUMN action_type TEXT;
|
|
249
|
+
ALTER TABLE flows ADD COLUMN target_entity TEXT;
|
|
250
|
+
`);
|
|
251
|
+
}
|
|
252
|
+
// Check for tier column
|
|
253
|
+
const hasTier = db.prepare("SELECT COUNT(*) as count FROM pragma_table_info('flows') WHERE name='tier'").get();
|
|
254
|
+
if (hasTier.count === 0) {
|
|
255
|
+
db.exec('ALTER TABLE flows ADD COLUMN tier INTEGER NOT NULL DEFAULT 0');
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
// Ensure flow_steps table exists
|
|
259
|
+
const flowStepsTableExists = db
|
|
260
|
+
.prepare(`
|
|
261
|
+
SELECT name FROM sqlite_master WHERE type='table' AND name='flow_steps'
|
|
262
|
+
`)
|
|
263
|
+
.get();
|
|
264
|
+
if (!flowStepsTableExists) {
|
|
265
|
+
db.exec(`
|
|
266
|
+
CREATE TABLE flow_steps (
|
|
267
|
+
flow_id INTEGER NOT NULL REFERENCES flows(id) ON DELETE CASCADE,
|
|
268
|
+
step_order INTEGER NOT NULL,
|
|
269
|
+
interaction_id INTEGER NOT NULL REFERENCES interactions(id) ON DELETE CASCADE,
|
|
270
|
+
PRIMARY KEY (flow_id, step_order)
|
|
271
|
+
);
|
|
272
|
+
|
|
273
|
+
CREATE INDEX idx_flow_steps_interaction ON flow_steps(interaction_id);
|
|
274
|
+
`);
|
|
275
|
+
}
|
|
276
|
+
// Ensure flow_definition_steps table exists (definition-level flow steps)
|
|
277
|
+
const flowDefStepsTableExists = db
|
|
278
|
+
.prepare(`
|
|
279
|
+
SELECT name FROM sqlite_master WHERE type='table' AND name='flow_definition_steps'
|
|
280
|
+
`)
|
|
281
|
+
.get();
|
|
282
|
+
if (!flowDefStepsTableExists) {
|
|
283
|
+
db.exec(`
|
|
284
|
+
CREATE TABLE flow_definition_steps (
|
|
285
|
+
flow_id INTEGER NOT NULL REFERENCES flows(id) ON DELETE CASCADE,
|
|
286
|
+
step_order INTEGER NOT NULL,
|
|
287
|
+
from_definition_id INTEGER NOT NULL REFERENCES definitions(id) ON DELETE CASCADE,
|
|
288
|
+
to_definition_id INTEGER NOT NULL REFERENCES definitions(id) ON DELETE CASCADE,
|
|
289
|
+
PRIMARY KEY (flow_id, step_order)
|
|
290
|
+
);
|
|
291
|
+
|
|
292
|
+
CREATE INDEX idx_flow_def_steps_from ON flow_definition_steps(from_definition_id);
|
|
293
|
+
CREATE INDEX idx_flow_def_steps_to ON flow_definition_steps(to_definition_id);
|
|
294
|
+
`);
|
|
295
|
+
}
|
|
296
|
+
// Ensure flow_subflow_steps table exists (subflow references for composite flows)
|
|
297
|
+
const flowSubflowStepsTableExists = db
|
|
298
|
+
.prepare(`
|
|
299
|
+
SELECT name FROM sqlite_master WHERE type='table' AND name='flow_subflow_steps'
|
|
300
|
+
`)
|
|
301
|
+
.get();
|
|
302
|
+
if (!flowSubflowStepsTableExists) {
|
|
303
|
+
db.exec(`
|
|
304
|
+
CREATE TABLE flow_subflow_steps (
|
|
305
|
+
flow_id INTEGER NOT NULL REFERENCES flows(id) ON DELETE CASCADE,
|
|
306
|
+
step_order INTEGER NOT NULL,
|
|
307
|
+
subflow_id INTEGER NOT NULL REFERENCES flows(id) ON DELETE CASCADE,
|
|
308
|
+
PRIMARY KEY (flow_id, step_order)
|
|
309
|
+
);
|
|
310
|
+
|
|
311
|
+
CREATE INDEX idx_flow_subflow_steps_subflow ON flow_subflow_steps(subflow_id);
|
|
312
|
+
`);
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Ensure the features and feature_flows tables exist.
|
|
317
|
+
*/
|
|
318
|
+
export function ensureFeaturesTables(db) {
|
|
319
|
+
const tableExists = db
|
|
320
|
+
.prepare(`
|
|
321
|
+
SELECT name FROM sqlite_master WHERE type='table' AND name='features'
|
|
322
|
+
`)
|
|
323
|
+
.get();
|
|
324
|
+
if (!tableExists) {
|
|
325
|
+
db.exec(`
|
|
326
|
+
CREATE TABLE features (
|
|
327
|
+
id INTEGER PRIMARY KEY,
|
|
328
|
+
name TEXT NOT NULL,
|
|
329
|
+
slug TEXT NOT NULL UNIQUE,
|
|
330
|
+
description TEXT,
|
|
331
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
332
|
+
);
|
|
333
|
+
|
|
334
|
+
CREATE INDEX idx_features_slug ON features(slug);
|
|
335
|
+
|
|
336
|
+
CREATE TABLE feature_flows (
|
|
337
|
+
feature_id INTEGER NOT NULL REFERENCES features(id) ON DELETE CASCADE,
|
|
338
|
+
flow_id INTEGER NOT NULL REFERENCES flows(id) ON DELETE CASCADE,
|
|
339
|
+
PRIMARY KEY (feature_id, flow_id)
|
|
340
|
+
);
|
|
341
|
+
|
|
342
|
+
CREATE INDEX idx_feature_flows_feature ON feature_flows(feature_id);
|
|
343
|
+
CREATE INDEX idx_feature_flows_flow ON feature_flows(flow_id);
|
|
344
|
+
`);
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Ensure the domains table exists.
|
|
349
|
+
*/
|
|
350
|
+
export function ensureDomainsTable(db) {
|
|
351
|
+
const tableExists = db
|
|
352
|
+
.prepare(`
|
|
353
|
+
SELECT name FROM sqlite_master WHERE type='table' AND name='domains'
|
|
354
|
+
`)
|
|
355
|
+
.get();
|
|
356
|
+
if (!tableExists) {
|
|
357
|
+
db.exec(`
|
|
358
|
+
CREATE TABLE domains (
|
|
359
|
+
id INTEGER PRIMARY KEY,
|
|
360
|
+
name TEXT UNIQUE NOT NULL,
|
|
361
|
+
description TEXT,
|
|
362
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
363
|
+
);
|
|
364
|
+
CREATE INDEX idx_domains_name ON domains(name);
|
|
365
|
+
`);
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
/**
|
|
369
|
+
* Ensure the declaration_end_line/column columns exist on definitions.
|
|
370
|
+
* For existing databases, defaults them to end_line/end_column.
|
|
371
|
+
*/
|
|
372
|
+
export function ensureDeclarationEndColumns(db) {
|
|
373
|
+
const hasColumn = db
|
|
374
|
+
.prepare("SELECT COUNT(*) as count FROM pragma_table_info('definitions') WHERE name='declaration_end_line'")
|
|
375
|
+
.get();
|
|
376
|
+
if (hasColumn.count === 0) {
|
|
377
|
+
db.exec(`
|
|
378
|
+
ALTER TABLE definitions ADD COLUMN declaration_end_line INTEGER NOT NULL DEFAULT 0;
|
|
379
|
+
ALTER TABLE definitions ADD COLUMN declaration_end_column INTEGER NOT NULL DEFAULT 0;
|
|
380
|
+
UPDATE definitions SET declaration_end_line = end_line, declaration_end_column = end_column;
|
|
381
|
+
`);
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* Ensure the relationship_type column exists on relationship_annotations.
|
|
386
|
+
*/
|
|
387
|
+
export function ensureRelationshipTypeColumn(db) {
|
|
388
|
+
try {
|
|
389
|
+
// Check if column exists by trying to select it
|
|
390
|
+
db.prepare('SELECT relationship_type FROM relationship_annotations LIMIT 1').get();
|
|
391
|
+
}
|
|
392
|
+
catch {
|
|
393
|
+
// Column doesn't exist, add it
|
|
394
|
+
db.exec(`ALTER TABLE relationship_annotations ADD COLUMN relationship_type TEXT NOT NULL DEFAULT 'uses'`);
|
|
395
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_relationship_annotations_type ON relationship_annotations(relationship_type)');
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
//# sourceMappingURL=schema-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-manager.js","sourceRoot":"","sources":["../../src/db/schema-manager.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAAqB;IACvD,MAAM,WAAW,GAAG,EAAE;SACnB,OAAO,CAAC;;GAEV,CAAC;SACC,GAAG,EAAE,CAAC;IAET,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;KA2BP,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,4DAA4D;QAC5D,MAAM,OAAO,GAAG,EAAE;aACf,OAAO,CAAC;;KAEV,CAAC;aACC,GAAG,EAAuB,CAAC;QAE9B,IAAI,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACxB,0CAA0C;YAC1C,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BP,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,6CAA6C;YAC7C,MAAM,aAAa,GAAG,EAAE;iBACrB,OAAO,CAAC;;OAEV,CAAC;iBACC,GAAG,EAAuB,CAAC;YAE9B,IAAI,aAAa,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;gBAC9B,EAAE,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;YACnF,CAAC;YAED,yCAAyC;YACzC,MAAM,SAAS,GAAG,EAAE;iBACjB,OAAO,CAAC;;OAEV,CAAC;iBACC,GAAG,EAAuB,CAAC;YAE9B,IAAI,SAAS,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;gBAC1B,EAAE,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,EAAqB;IAC5D,MAAM,WAAW,GAAG,EAAE;SACnB,OAAO,CAAC;;GAEV,CAAC;SACC,GAAG,EAAE,CAAC;IAET,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;KAoBP,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,wCAAwC;QACxC,MAAM,SAAS,GAAG,EAAE;aACjB,OAAO,CAAC;;KAEV,CAAC;aACC,GAAG,EAAuB,CAAC;QAE9B,IAAI,SAAS,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YAC1B,EAAE,CAAC,IAAI,CAAC;;;OAGP,CAAC,CAAC;QACL,CAAC;QAED,4CAA4C;QAC5C,MAAM,aAAa,GAAG,EAAE;aACrB,OAAO,CAAC;;KAEV,CAAC;aACC,GAAG,EAAuB,CAAC;QAE9B,IAAI,aAAa,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAqB;IACrD,MAAM,gBAAgB,GAAG,EAAE;SACxB,OAAO,CAAC;;GAEV,CAAC;SACC,GAAG,EAAE,CAAC;IAET,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;KAoBP,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,4DAA4D;QAC5D,MAAM,eAAe,GAAG,EAAE;aACvB,OAAO,CAAC;;KAEV,CAAC;aACC,GAAG,EAAuB,CAAC;QAE9B,IAAI,eAAe,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YAChC,0CAA0C;YAC1C,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;OAyBP,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,MAAM,qBAAqB,GAAG,EAAE;iBAC7B,OAAO,CAAC;;OAEV,CAAC;iBACC,GAAG,EAAuB,CAAC;YAE9B,IAAI,qBAAqB,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;gBACtC,+BAA+B;gBAC/B,EAAE,CAAC,IAAI,CAAC;;;SAGP,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,MAAM,aAAa,GAAG,EAAE;aACrB,OAAO,CAAC,mFAAmF,CAAC;aAC5F,GAAG,EAAuB,CAAC;QAC9B,IAAI,aAAa,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,IAAI,CAAC;;;OAGP,CAAC,CAAC;QACL,CAAC;QAED,wBAAwB;QACxB,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,4EAA4E,CAAC,CAAC,GAAG,EAE3G,CAAC;QACF,IAAI,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACxB,EAAE,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,MAAM,oBAAoB,GAAG,EAAE;SAC5B,OAAO,CAAC;;GAEV,CAAC;SACC,GAAG,EAAE,CAAC;IAET,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC1B,EAAE,CAAC,IAAI,CAAC;;;;;;;;;KASP,CAAC,CAAC;IACL,CAAC;IAED,0EAA0E;IAC1E,MAAM,uBAAuB,GAAG,EAAE;SAC/B,OAAO,CAAC;;GAEV,CAAC;SACC,GAAG,EAAE,CAAC;IAET,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC7B,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;KAWP,CAAC,CAAC;IACL,CAAC;IAED,kFAAkF;IAClF,MAAM,2BAA2B,GAAG,EAAE;SACnC,OAAO,CAAC;;GAEV,CAAC;SACC,GAAG,EAAE,CAAC;IAET,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACjC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;KASP,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,EAAqB;IACxD,MAAM,WAAW,GAAG,EAAE;SACnB,OAAO,CAAC;;GAEV,CAAC;SACC,GAAG,EAAE,CAAC;IAET,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;KAmBP,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,EAAqB;IACtD,MAAM,WAAW,GAAG,EAAE;SACnB,OAAO,CAAC;;GAEV,CAAC;SACC,GAAG,EAAE,CAAC;IAET,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,EAAE,CAAC,IAAI,CAAC;;;;;;;;KAQP,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,EAAqB;IAC/D,MAAM,SAAS,GAAG,EAAE;SACjB,OAAO,CAAC,kGAAkG,CAAC;SAC3G,GAAG,EAAuB,CAAC;IAE9B,IAAI,SAAS,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;QAC1B,EAAE,CAAC,IAAI,CAAC;;;;KAIP,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAC,EAAqB;IAChE,IAAI,CAAC;QACH,gDAAgD;QAChD,EAAE,CAAC,OAAO,CAAC,gEAAgE,CAAC,CAAC,GAAG,EAAE,CAAC;IACrF,CAAC;IAAC,MAAM,CAAC;QACP,+BAA+B;QAC/B,EAAE,CAAC,IAAI,CAAC,gGAAgG,CAAC,CAAC;QAC1G,EAAE,CAAC,IAAI,CACL,6GAA6G,CAC9G,CAAC;IACJ,CAAC;AACH,CAAC"}
|