@ryanstark24/sfgraph-core 1.1.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/dist/analyze/__tests__/cross-org-two-store.test.d.ts +2 -0
- package/dist/analyze/__tests__/cross-org-two-store.test.d.ts.map +1 -0
- package/dist/analyze/__tests__/cross-org-two-store.test.js +68 -0
- package/dist/analyze/__tests__/cross-org-two-store.test.js.map +1 -0
- package/dist/analyze/__tests__/dead-code-confidence.test.d.ts +2 -0
- package/dist/analyze/__tests__/dead-code-confidence.test.d.ts.map +1 -0
- package/dist/analyze/__tests__/dead-code-confidence.test.js +66 -0
- package/dist/analyze/__tests__/dead-code-confidence.test.js.map +1 -0
- package/dist/analyze/__tests__/deployment-manifest.test.d.ts +2 -0
- package/dist/analyze/__tests__/deployment-manifest.test.d.ts.map +1 -0
- package/dist/analyze/__tests__/deployment-manifest.test.js +66 -0
- package/dist/analyze/__tests__/deployment-manifest.test.js.map +1 -0
- package/dist/analyze/__tests__/governor-risks-detection.test.d.ts +2 -0
- package/dist/analyze/__tests__/governor-risks-detection.test.d.ts.map +1 -0
- package/dist/analyze/__tests__/governor-risks-detection.test.js +70 -0
- package/dist/analyze/__tests__/governor-risks-detection.test.js.map +1 -0
- package/dist/analyze/__tests__/populate.test.d.ts +2 -0
- package/dist/analyze/__tests__/populate.test.d.ts.map +1 -0
- package/dist/analyze/__tests__/populate.test.js +129 -0
- package/dist/analyze/__tests__/populate.test.js.map +1 -0
- package/dist/analyze/__tests__/traversal-caps.test.d.ts +2 -0
- package/dist/analyze/__tests__/traversal-caps.test.d.ts.map +1 -0
- package/dist/analyze/__tests__/traversal-caps.test.js +129 -0
- package/dist/analyze/__tests__/traversal-caps.test.js.map +1 -0
- package/dist/analyze/__tests__/wip-impact.test.d.ts +2 -0
- package/dist/analyze/__tests__/wip-impact.test.d.ts.map +1 -0
- package/dist/analyze/__tests__/wip-impact.test.js +134 -0
- package/dist/analyze/__tests__/wip-impact.test.js.map +1 -0
- package/dist/analyze/cross-org.d.ts +42 -0
- package/dist/analyze/cross-org.d.ts.map +1 -0
- package/dist/analyze/cross-org.js +64 -0
- package/dist/analyze/cross-org.js.map +1 -0
- package/dist/analyze/dead-code.d.ts +8 -0
- package/dist/analyze/dead-code.d.ts.map +1 -0
- package/dist/analyze/dead-code.js +21 -0
- package/dist/analyze/dead-code.js.map +1 -0
- package/dist/analyze/dependencies.d.ts +5 -0
- package/dist/analyze/dependencies.d.ts.map +1 -0
- package/dist/analyze/dependencies.js +40 -0
- package/dist/analyze/dependencies.js.map +1 -0
- package/dist/analyze/dependents.d.ts +19 -0
- package/dist/analyze/dependents.d.ts.map +1 -0
- package/dist/analyze/dependents.js +47 -0
- package/dist/analyze/dependents.js.map +1 -0
- package/dist/analyze/deployment-manifest/generate.d.ts +22 -0
- package/dist/analyze/deployment-manifest/generate.d.ts.map +1 -0
- package/dist/analyze/deployment-manifest/generate.js +91 -0
- package/dist/analyze/deployment-manifest/generate.js.map +1 -0
- package/dist/analyze/deployment-manifest/member-name-formatters.d.ts +8 -0
- package/dist/analyze/deployment-manifest/member-name-formatters.d.ts.map +1 -0
- package/dist/analyze/deployment-manifest/member-name-formatters.js +57 -0
- package/dist/analyze/deployment-manifest/member-name-formatters.js.map +1 -0
- package/dist/analyze/deployment-manifest/member-types.d.ts +6 -0
- package/dist/analyze/deployment-manifest/member-types.d.ts.map +1 -0
- package/dist/analyze/deployment-manifest/member-types.js +47 -0
- package/dist/analyze/deployment-manifest/member-types.js.map +1 -0
- package/dist/analyze/freshness.d.ts +9 -0
- package/dist/analyze/freshness.d.ts.map +1 -0
- package/dist/analyze/freshness.js +31 -0
- package/dist/analyze/freshness.js.map +1 -0
- package/dist/analyze/git-diff.d.ts +6 -0
- package/dist/analyze/git-diff.d.ts.map +1 -0
- package/dist/analyze/git-diff.js +38 -0
- package/dist/analyze/git-diff.js.map +1 -0
- package/dist/analyze/governor.d.ts +14 -0
- package/dist/analyze/governor.d.ts.map +1 -0
- package/dist/analyze/governor.js +28 -0
- package/dist/analyze/governor.js.map +1 -0
- package/dist/analyze/index.d.ts +14 -0
- package/dist/analyze/index.d.ts.map +1 -0
- package/dist/analyze/index.js +14 -0
- package/dist/analyze/index.js.map +1 -0
- package/dist/analyze/path-to-qname.d.ts +3 -0
- package/dist/analyze/path-to-qname.d.ts.map +1 -0
- package/dist/analyze/path-to-qname.js +32 -0
- package/dist/analyze/path-to-qname.js.map +1 -0
- package/dist/analyze/populate.d.ts +15 -0
- package/dist/analyze/populate.d.ts.map +1 -0
- package/dist/analyze/populate.js +188 -0
- package/dist/analyze/populate.js.map +1 -0
- package/dist/analyze/security.d.ts +25 -0
- package/dist/analyze/security.d.ts.map +1 -0
- package/dist/analyze/security.js +70 -0
- package/dist/analyze/security.js.map +1 -0
- package/dist/analyze/test-coverage.d.ts +6 -0
- package/dist/analyze/test-coverage.d.ts.map +1 -0
- package/dist/analyze/test-coverage.js +15 -0
- package/dist/analyze/test-coverage.js.map +1 -0
- package/dist/analyze/wip-impact.d.ts +30 -0
- package/dist/analyze/wip-impact.d.ts.map +1 -0
- package/dist/analyze/wip-impact.js +314 -0
- package/dist/analyze/wip-impact.js.map +1 -0
- package/dist/domain/edge-fact.d.ts +12 -0
- package/dist/domain/edge-fact.d.ts.map +1 -0
- package/dist/domain/edge-fact.js +2 -0
- package/dist/domain/edge-fact.js.map +1 -0
- package/dist/domain/index.d.ts +7 -0
- package/dist/domain/index.d.ts.map +1 -0
- package/dist/domain/index.js +7 -0
- package/dist/domain/index.js.map +1 -0
- package/dist/domain/metadata-category.d.ts +57 -0
- package/dist/domain/metadata-category.d.ts.map +1 -0
- package/dist/domain/metadata-category.js +57 -0
- package/dist/domain/metadata-category.js.map +1 -0
- package/dist/domain/node-fact.d.ts +12 -0
- package/dist/domain/node-fact.d.ts.map +1 -0
- package/dist/domain/node-fact.js +2 -0
- package/dist/domain/node-fact.js.map +1 -0
- package/dist/domain/org.d.ts +10 -0
- package/dist/domain/org.d.ts.map +1 -0
- package/dist/domain/org.js +2 -0
- package/dist/domain/org.js.map +1 -0
- package/dist/domain/rel-types.d.ts +89 -0
- package/dist/domain/rel-types.d.ts.map +1 -0
- package/dist/domain/rel-types.js +99 -0
- package/dist/domain/rel-types.js.map +1 -0
- package/dist/domain/snapshot.d.ts +9 -0
- package/dist/domain/snapshot.d.ts.map +1 -0
- package/dist/domain/snapshot.js +2 -0
- package/dist/domain/snapshot.js.map +1 -0
- package/dist/embedding/__tests__/queue.test.d.ts +2 -0
- package/dist/embedding/__tests__/queue.test.d.ts.map +1 -0
- package/dist/embedding/__tests__/queue.test.js +64 -0
- package/dist/embedding/__tests__/queue.test.js.map +1 -0
- package/dist/embedding/index.d.ts +4 -0
- package/dist/embedding/index.d.ts.map +1 -0
- package/dist/embedding/index.js +3 -0
- package/dist/embedding/index.js.map +1 -0
- package/dist/embedding/pool.d.ts +10 -0
- package/dist/embedding/pool.d.ts.map +1 -0
- package/dist/embedding/pool.js +10 -0
- package/dist/embedding/pool.js.map +1 -0
- package/dist/embedding/queue.d.ts +39 -0
- package/dist/embedding/queue.d.ts.map +1 -0
- package/dist/embedding/queue.js +122 -0
- package/dist/embedding/queue.js.map +1 -0
- package/dist/embedding/worker.d.ts +7 -0
- package/dist/embedding/worker.d.ts.map +1 -0
- package/dist/embedding/worker.js +7 -0
- package/dist/embedding/worker.js.map +1 -0
- package/dist/extractors/__tests__/network-egress.test.d.ts +2 -0
- package/dist/extractors/__tests__/network-egress.test.d.ts.map +1 -0
- package/dist/extractors/__tests__/network-egress.test.js +32 -0
- package/dist/extractors/__tests__/network-egress.test.js.map +1 -0
- package/dist/extractors/filesystem/__tests__/filesystem.test.d.ts +2 -0
- package/dist/extractors/filesystem/__tests__/filesystem.test.d.ts.map +1 -0
- package/dist/extractors/filesystem/__tests__/filesystem.test.js +96 -0
- package/dist/extractors/filesystem/__tests__/filesystem.test.js.map +1 -0
- package/dist/extractors/filesystem/index.d.ts +20 -0
- package/dist/extractors/filesystem/index.d.ts.map +1 -0
- package/dist/extractors/filesystem/index.js +378 -0
- package/dist/extractors/filesystem/index.js.map +1 -0
- package/dist/extractors/interfaces/metadata-source.d.ts +21 -0
- package/dist/extractors/interfaces/metadata-source.d.ts.map +1 -0
- package/dist/extractors/interfaces/metadata-source.js +2 -0
- package/dist/extractors/interfaces/metadata-source.js.map +1 -0
- package/dist/extractors/live-org/__tests__/_jsforce-mock.d.ts +38 -0
- package/dist/extractors/live-org/__tests__/_jsforce-mock.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/_jsforce-mock.js +96 -0
- package/dist/extractors/live-org/__tests__/_jsforce-mock.js.map +1 -0
- package/dist/extractors/live-org/__tests__/auth.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/auth.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/auth.test.js +85 -0
- package/dist/extractors/live-org/__tests__/auth.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/bulk-retrieve.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/bulk-retrieve.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/bulk-retrieve.test.js +150 -0
- package/dist/extractors/live-org/__tests__/bulk-retrieve.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/capabilities.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/capabilities.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/capabilities.test.js +54 -0
- package/dist/extractors/live-org/__tests__/capabilities.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/discovery.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/discovery.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/discovery.test.js +55 -0
- package/dist/extractors/live-org/__tests__/discovery.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/dispatch.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/dispatch.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/dispatch.test.js +68 -0
- package/dist/extractors/live-org/__tests__/dispatch.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/extractor-enrichment.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/extractor-enrichment.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/extractor-enrichment.test.js +312 -0
- package/dist/extractors/live-org/__tests__/extractor-enrichment.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/pools.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/pools.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/pools.test.js +75 -0
- package/dist/extractors/live-org/__tests__/pools.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/rate-limit.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/rate-limit.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/rate-limit.test.js +33 -0
- package/dist/extractors/live-org/__tests__/rate-limit.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/read-only-proxy.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/read-only-proxy.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/read-only-proxy.test.js +376 -0
- package/dist/extractors/live-org/__tests__/read-only-proxy.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/source-member.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/source-member.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/source-member.test.js +84 -0
- package/dist/extractors/live-org/__tests__/source-member.test.js.map +1 -0
- package/dist/extractors/live-org/__tests__/vlocity-runner.test.d.ts +2 -0
- package/dist/extractors/live-org/__tests__/vlocity-runner.test.d.ts.map +1 -0
- package/dist/extractors/live-org/__tests__/vlocity-runner.test.js +88 -0
- package/dist/extractors/live-org/__tests__/vlocity-runner.test.js.map +1 -0
- package/dist/extractors/live-org/auth.d.ts +37 -0
- package/dist/extractors/live-org/auth.d.ts.map +1 -0
- package/dist/extractors/live-org/auth.js +124 -0
- package/dist/extractors/live-org/auth.js.map +1 -0
- package/dist/extractors/live-org/bulk-retrieve.d.ts +51 -0
- package/dist/extractors/live-org/bulk-retrieve.d.ts.map +1 -0
- package/dist/extractors/live-org/bulk-retrieve.js +416 -0
- package/dist/extractors/live-org/bulk-retrieve.js.map +1 -0
- package/dist/extractors/live-org/capabilities.d.ts +18 -0
- package/dist/extractors/live-org/capabilities.d.ts.map +1 -0
- package/dist/extractors/live-org/capabilities.js +72 -0
- package/dist/extractors/live-org/capabilities.js.map +1 -0
- package/dist/extractors/live-org/discovery.d.ts +14 -0
- package/dist/extractors/live-org/discovery.d.ts.map +1 -0
- package/dist/extractors/live-org/discovery.js +22 -0
- package/dist/extractors/live-org/discovery.js.map +1 -0
- package/dist/extractors/live-org/dispatch.d.ts +20 -0
- package/dist/extractors/live-org/dispatch.d.ts.map +1 -0
- package/dist/extractors/live-org/dispatch.js +52 -0
- package/dist/extractors/live-org/dispatch.js.map +1 -0
- package/dist/extractors/live-org/errors.d.ts +2 -0
- package/dist/extractors/live-org/errors.d.ts.map +1 -0
- package/dist/extractors/live-org/errors.js +2 -0
- package/dist/extractors/live-org/errors.js.map +1 -0
- package/dist/extractors/live-org/extractors/apex.d.ts +5 -0
- package/dist/extractors/live-org/extractors/apex.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/apex.js +105 -0
- package/dist/extractors/live-org/extractors/apex.js.map +1 -0
- package/dist/extractors/live-org/extractors/flow.d.ts +9 -0
- package/dist/extractors/live-org/extractors/flow.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/flow.js +65 -0
- package/dist/extractors/live-org/extractors/flow.js.map +1 -0
- package/dist/extractors/live-org/extractors/generic-metadata.d.ts +20 -0
- package/dist/extractors/live-org/extractors/generic-metadata.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/generic-metadata.js +114 -0
- package/dist/extractors/live-org/extractors/generic-metadata.js.map +1 -0
- package/dist/extractors/live-org/extractors/generic-sobject.d.ts +7 -0
- package/dist/extractors/live-org/extractors/generic-sobject.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/generic-sobject.js +31 -0
- package/dist/extractors/live-org/extractors/generic-sobject.js.map +1 -0
- package/dist/extractors/live-org/extractors/integration.d.ts +3 -0
- package/dist/extractors/live-org/extractors/integration.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/integration.js +65 -0
- package/dist/extractors/live-org/extractors/integration.js.map +1 -0
- package/dist/extractors/live-org/extractors/lwc.d.ts +3 -0
- package/dist/extractors/live-org/extractors/lwc.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/lwc.js +107 -0
- package/dist/extractors/live-org/extractors/lwc.js.map +1 -0
- package/dist/extractors/live-org/extractors/object.d.ts +13 -0
- package/dist/extractors/live-org/extractors/object.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/object.js +617 -0
- package/dist/extractors/live-org/extractors/object.js.map +1 -0
- package/dist/extractors/live-org/extractors/omnistudio.d.ts +3 -0
- package/dist/extractors/live-org/extractors/omnistudio.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/omnistudio.js +141 -0
- package/dist/extractors/live-org/extractors/omnistudio.js.map +1 -0
- package/dist/extractors/live-org/extractors/security.d.ts +3 -0
- package/dist/extractors/live-org/extractors/security.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/security.js +76 -0
- package/dist/extractors/live-org/extractors/security.js.map +1 -0
- package/dist/extractors/live-org/extractors/vlocity.d.ts +2 -0
- package/dist/extractors/live-org/extractors/vlocity.d.ts.map +1 -0
- package/dist/extractors/live-org/extractors/vlocity.js +2 -0
- package/dist/extractors/live-org/extractors/vlocity.js.map +1 -0
- package/dist/extractors/live-org/index.d.ts +21 -0
- package/dist/extractors/live-org/index.d.ts.map +1 -0
- package/dist/extractors/live-org/index.js +17 -0
- package/dist/extractors/live-org/index.js.map +1 -0
- package/dist/extractors/live-org/rate-limit.d.ts +114 -0
- package/dist/extractors/live-org/rate-limit.d.ts.map +1 -0
- package/dist/extractors/live-org/rate-limit.js +251 -0
- package/dist/extractors/live-org/rate-limit.js.map +1 -0
- package/dist/extractors/live-org/read-only-proxy.d.ts +2 -0
- package/dist/extractors/live-org/read-only-proxy.d.ts.map +1 -0
- package/dist/extractors/live-org/read-only-proxy.js +299 -0
- package/dist/extractors/live-org/read-only-proxy.js.map +1 -0
- package/dist/extractors/live-org/reports.d.ts +4 -0
- package/dist/extractors/live-org/reports.d.ts.map +1 -0
- package/dist/extractors/live-org/reports.js +10 -0
- package/dist/extractors/live-org/reports.js.map +1 -0
- package/dist/extractors/live-org/source-member.d.ts +8 -0
- package/dist/extractors/live-org/source-member.d.ts.map +1 -0
- package/dist/extractors/live-org/source-member.js +47 -0
- package/dist/extractors/live-org/source-member.js.map +1 -0
- package/dist/extractors/live-org/vlocity/query-definitions.yml +153 -0
- package/dist/extractors/live-org/vlocity/runner.d.ts +21 -0
- package/dist/extractors/live-org/vlocity/runner.d.ts.map +1 -0
- package/dist/extractors/live-org/vlocity/runner.js +214 -0
- package/dist/extractors/live-org/vlocity/runner.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/ingest/__tests__/full-sync-deletion.test.d.ts +2 -0
- package/dist/ingest/__tests__/full-sync-deletion.test.d.ts.map +1 -0
- package/dist/ingest/__tests__/full-sync-deletion.test.js +200 -0
- package/dist/ingest/__tests__/full-sync-deletion.test.js.map +1 -0
- package/dist/ingest/__tests__/incremental-deletion.test.d.ts +2 -0
- package/dist/ingest/__tests__/incremental-deletion.test.d.ts.map +1 -0
- package/dist/ingest/__tests__/incremental-deletion.test.js +92 -0
- package/dist/ingest/__tests__/incremental-deletion.test.js.map +1 -0
- package/dist/ingest/__tests__/live-ingest.test.d.ts +2 -0
- package/dist/ingest/__tests__/live-ingest.test.d.ts.map +1 -0
- package/dist/ingest/__tests__/live-ingest.test.js +155 -0
- package/dist/ingest/__tests__/live-ingest.test.js.map +1 -0
- package/dist/ingest/__tests__/multi-org-orchestrator.test.d.ts +2 -0
- package/dist/ingest/__tests__/multi-org-orchestrator.test.d.ts.map +1 -0
- package/dist/ingest/__tests__/multi-org-orchestrator.test.js +101 -0
- package/dist/ingest/__tests__/multi-org-orchestrator.test.js.map +1 -0
- package/dist/ingest/__tests__/read-only-wrapping.test.d.ts +2 -0
- package/dist/ingest/__tests__/read-only-wrapping.test.d.ts.map +1 -0
- package/dist/ingest/__tests__/read-only-wrapping.test.js +62 -0
- package/dist/ingest/__tests__/read-only-wrapping.test.js.map +1 -0
- package/dist/ingest/index.d.ts +5 -0
- package/dist/ingest/index.d.ts.map +1 -0
- package/dist/ingest/index.js +3 -0
- package/dist/ingest/index.js.map +1 -0
- package/dist/ingest/live-ingest.d.ts +59 -0
- package/dist/ingest/live-ingest.d.ts.map +1 -0
- package/dist/ingest/live-ingest.js +611 -0
- package/dist/ingest/live-ingest.js.map +1 -0
- package/dist/ingest/multi-org.d.ts +43 -0
- package/dist/ingest/multi-org.d.ts.map +1 -0
- package/dist/ingest/multi-org.js +93 -0
- package/dist/ingest/multi-org.js.map +1 -0
- package/dist/parsers/__tests__/_harness.d.ts +13 -0
- package/dist/parsers/__tests__/_harness.d.ts.map +1 -0
- package/dist/parsers/__tests__/_harness.js +84 -0
- package/dist/parsers/__tests__/_harness.js.map +1 -0
- package/dist/parsers/__tests__/apex.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/apex.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/apex.golden.test.js +28 -0
- package/dist/parsers/__tests__/apex.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/cross-flavor.test.d.ts +2 -0
- package/dist/parsers/__tests__/cross-flavor.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/cross-flavor.test.js +56 -0
- package/dist/parsers/__tests__/cross-flavor.test.js.map +1 -0
- package/dist/parsers/__tests__/flow.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/flow.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/flow.golden.test.js +17 -0
- package/dist/parsers/__tests__/flow.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/integration.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/integration.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/integration.golden.test.js +31 -0
- package/dist/parsers/__tests__/integration.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/long-tail.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/long-tail.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/long-tail.golden.test.js +115 -0
- package/dist/parsers/__tests__/long-tail.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/lwc.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/lwc.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/lwc.golden.test.js +16 -0
- package/dist/parsers/__tests__/lwc.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/object-inline-fields.test.d.ts +2 -0
- package/dist/parsers/__tests__/object-inline-fields.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/object-inline-fields.test.js +115 -0
- package/dist/parsers/__tests__/object-inline-fields.test.js.map +1 -0
- package/dist/parsers/__tests__/object.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/object.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/object.golden.test.js +33 -0
- package/dist/parsers/__tests__/object.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/omnistudio.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/omnistudio.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/omnistudio.golden.test.js +6 -0
- package/dist/parsers/__tests__/omnistudio.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/registry.test.d.ts +2 -0
- package/dist/parsers/__tests__/registry.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/registry.test.js +23 -0
- package/dist/parsers/__tests__/registry.test.js.map +1 -0
- package/dist/parsers/__tests__/security.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/security.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/security.golden.test.js +31 -0
- package/dist/parsers/__tests__/security.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/vlocity.golden.test.d.ts +2 -0
- package/dist/parsers/__tests__/vlocity.golden.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/vlocity.golden.test.js +8 -0
- package/dist/parsers/__tests__/vlocity.golden.test.js.map +1 -0
- package/dist/parsers/__tests__/worker-pool.test.d.ts +2 -0
- package/dist/parsers/__tests__/worker-pool.test.d.ts.map +1 -0
- package/dist/parsers/__tests__/worker-pool.test.js +48 -0
- package/dist/parsers/__tests__/worker-pool.test.js.map +1 -0
- package/dist/parsers/_xml-helpers.d.ts +5 -0
- package/dist/parsers/_xml-helpers.d.ts.map +1 -0
- package/dist/parsers/_xml-helpers.js +12 -0
- package/dist/parsers/_xml-helpers.js.map +1 -0
- package/dist/parsers/apex/class.d.ts +13 -0
- package/dist/parsers/apex/class.d.ts.map +1 -0
- package/dist/parsers/apex/class.js +325 -0
- package/dist/parsers/apex/class.js.map +1 -0
- package/dist/parsers/apex/common.d.ts +11 -0
- package/dist/parsers/apex/common.d.ts.map +1 -0
- package/dist/parsers/apex/common.js +55 -0
- package/dist/parsers/apex/common.js.map +1 -0
- package/dist/parsers/apex/index.d.ts +6 -0
- package/dist/parsers/apex/index.d.ts.map +1 -0
- package/dist/parsers/apex/index.js +9 -0
- package/dist/parsers/apex/index.js.map +1 -0
- package/dist/parsers/apex/trigger.d.ts +12 -0
- package/dist/parsers/apex/trigger.d.ts.map +1 -0
- package/dist/parsers/apex/trigger.js +36 -0
- package/dist/parsers/apex/trigger.js.map +1 -0
- package/dist/parsers/apex/visitor.d.ts +2 -0
- package/dist/parsers/apex/visitor.d.ts.map +1 -0
- package/dist/parsers/apex/visitor.js +4 -0
- package/dist/parsers/apex/visitor.js.map +1 -0
- package/dist/parsers/common.d.ts +7 -0
- package/dist/parsers/common.d.ts.map +1 -0
- package/dist/parsers/common.js +37 -0
- package/dist/parsers/common.js.map +1 -0
- package/dist/parsers/contract.d.ts +31 -0
- package/dist/parsers/contract.d.ts.map +1 -0
- package/dist/parsers/contract.js +18 -0
- package/dist/parsers/contract.js.map +1 -0
- package/dist/parsers/cross-flavor-resolver.d.ts +18 -0
- package/dist/parsers/cross-flavor-resolver.d.ts.map +1 -0
- package/dist/parsers/cross-flavor-resolver.js +73 -0
- package/dist/parsers/cross-flavor-resolver.js.map +1 -0
- package/dist/parsers/experience/index.d.ts +2 -0
- package/dist/parsers/experience/index.d.ts.map +1 -0
- package/dist/parsers/experience/index.js +3 -0
- package/dist/parsers/experience/index.js.map +1 -0
- package/dist/parsers/flow/element-visitors.d.ts +2 -0
- package/dist/parsers/flow/element-visitors.d.ts.map +1 -0
- package/dist/parsers/flow/element-visitors.js +3 -0
- package/dist/parsers/flow/element-visitors.js.map +1 -0
- package/dist/parsers/flow/index.d.ts +4 -0
- package/dist/parsers/flow/index.d.ts.map +1 -0
- package/dist/parsers/flow/index.js +6 -0
- package/dist/parsers/flow/index.js.map +1 -0
- package/dist/parsers/flow/parser.d.ts +11 -0
- package/dist/parsers/flow/parser.d.ts.map +1 -0
- package/dist/parsers/flow/parser.js +101 -0
- package/dist/parsers/flow/parser.js.map +1 -0
- package/dist/parsers/genai/index.d.ts +2 -0
- package/dist/parsers/genai/index.d.ts.map +1 -0
- package/dist/parsers/genai/index.js +3 -0
- package/dist/parsers/genai/index.js.map +1 -0
- package/dist/parsers/generic/index.d.ts +4 -0
- package/dist/parsers/generic/index.d.ts.map +1 -0
- package/dist/parsers/generic/index.js +6 -0
- package/dist/parsers/generic/index.js.map +1 -0
- package/dist/parsers/generic/opaque-node-parser.d.ts +16 -0
- package/dist/parsers/generic/opaque-node-parser.d.ts.map +1 -0
- package/dist/parsers/generic/opaque-node-parser.js +18 -0
- package/dist/parsers/generic/opaque-node-parser.js.map +1 -0
- package/dist/parsers/index.d.ts +22 -0
- package/dist/parsers/index.d.ts.map +1 -0
- package/dist/parsers/index.js +23 -0
- package/dist/parsers/index.js.map +1 -0
- package/dist/parsers/integration/index.d.ts +2 -0
- package/dist/parsers/integration/index.d.ts.map +1 -0
- package/dist/parsers/integration/index.js +3 -0
- package/dist/parsers/integration/index.js.map +1 -0
- package/dist/parsers/lwc/bundle.d.ts +11 -0
- package/dist/parsers/lwc/bundle.d.ts.map +1 -0
- package/dist/parsers/lwc/bundle.js +54 -0
- package/dist/parsers/lwc/bundle.js.map +1 -0
- package/dist/parsers/lwc/html-visitor.d.ts +8 -0
- package/dist/parsers/lwc/html-visitor.d.ts.map +1 -0
- package/dist/parsers/lwc/html-visitor.js +57 -0
- package/dist/parsers/lwc/html-visitor.js.map +1 -0
- package/dist/parsers/lwc/index.d.ts +4 -0
- package/dist/parsers/lwc/index.d.ts.map +1 -0
- package/dist/parsers/lwc/index.js +6 -0
- package/dist/parsers/lwc/index.js.map +1 -0
- package/dist/parsers/lwc/js-visitor.d.ts +8 -0
- package/dist/parsers/lwc/js-visitor.d.ts.map +1 -0
- package/dist/parsers/lwc/js-visitor.js +93 -0
- package/dist/parsers/lwc/js-visitor.js.map +1 -0
- package/dist/parsers/lwc/xml-meta.d.ts +2 -0
- package/dist/parsers/lwc/xml-meta.d.ts.map +1 -0
- package/dist/parsers/lwc/xml-meta.js +21 -0
- package/dist/parsers/lwc/xml-meta.js.map +1 -0
- package/dist/parsers/object/field.d.ts +9 -0
- package/dist/parsers/object/field.d.ts.map +1 -0
- package/dist/parsers/object/field.js +14 -0
- package/dist/parsers/object/field.js.map +1 -0
- package/dist/parsers/object/index.d.ts +7 -0
- package/dist/parsers/object/index.d.ts.map +1 -0
- package/dist/parsers/object/index.js +9 -0
- package/dist/parsers/object/index.js.map +1 -0
- package/dist/parsers/object/object.d.ts +14 -0
- package/dist/parsers/object/object.d.ts.map +1 -0
- package/dist/parsers/object/object.js +188 -0
- package/dist/parsers/object/object.js.map +1 -0
- package/dist/parsers/object/record-type.d.ts +7 -0
- package/dist/parsers/object/record-type.d.ts.map +1 -0
- package/dist/parsers/object/record-type.js +12 -0
- package/dist/parsers/object/record-type.js.map +1 -0
- package/dist/parsers/object/validation-rule.d.ts +8 -0
- package/dist/parsers/object/validation-rule.d.ts.map +1 -0
- package/dist/parsers/object/validation-rule.js +13 -0
- package/dist/parsers/object/validation-rule.js.map +1 -0
- package/dist/parsers/omnistudio/data-transform.d.ts +11 -0
- package/dist/parsers/omnistudio/data-transform.d.ts.map +1 -0
- package/dist/parsers/omnistudio/data-transform.js +29 -0
- package/dist/parsers/omnistudio/data-transform.js.map +1 -0
- package/dist/parsers/omnistudio/index.d.ts +10 -0
- package/dist/parsers/omnistudio/index.d.ts.map +1 -0
- package/dist/parsers/omnistudio/index.js +15 -0
- package/dist/parsers/omnistudio/index.js.map +1 -0
- package/dist/parsers/omnistudio/integration-procedure.d.ts +11 -0
- package/dist/parsers/omnistudio/integration-procedure.d.ts.map +1 -0
- package/dist/parsers/omnistudio/integration-procedure.js +44 -0
- package/dist/parsers/omnistudio/integration-procedure.js.map +1 -0
- package/dist/parsers/omnistudio/process.d.ts +11 -0
- package/dist/parsers/omnistudio/process.d.ts.map +1 -0
- package/dist/parsers/omnistudio/process.js +49 -0
- package/dist/parsers/omnistudio/process.js.map +1 -0
- package/dist/parsers/omnistudio/ui-card.d.ts +11 -0
- package/dist/parsers/omnistudio/ui-card.d.ts.map +1 -0
- package/dist/parsers/omnistudio/ui-card.js +44 -0
- package/dist/parsers/omnistudio/ui-card.js.map +1 -0
- package/dist/parsers/presentation/index.d.ts +2 -0
- package/dist/parsers/presentation/index.d.ts.map +1 -0
- package/dist/parsers/presentation/index.js +3 -0
- package/dist/parsers/presentation/index.js.map +1 -0
- package/dist/parsers/registry.d.ts +13 -0
- package/dist/parsers/registry.d.ts.map +1 -0
- package/dist/parsers/registry.js +25 -0
- package/dist/parsers/registry.js.map +1 -0
- package/dist/parsers/reporting/index.d.ts +2 -0
- package/dist/parsers/reporting/index.d.ts.map +1 -0
- package/dist/parsers/reporting/index.js +3 -0
- package/dist/parsers/reporting/index.js.map +1 -0
- package/dist/parsers/rules/__tests__/applies-to.test.d.ts +2 -0
- package/dist/parsers/rules/__tests__/applies-to.test.d.ts.map +1 -0
- package/dist/parsers/rules/__tests__/applies-to.test.js +31 -0
- package/dist/parsers/rules/__tests__/applies-to.test.js.map +1 -0
- package/dist/parsers/rules/__tests__/applies-to.test.ts +40 -0
- package/dist/parsers/rules/__tests__/engine.test.d.ts +2 -0
- package/dist/parsers/rules/__tests__/engine.test.d.ts.map +1 -0
- package/dist/parsers/rules/__tests__/engine.test.js +127 -0
- package/dist/parsers/rules/__tests__/engine.test.js.map +1 -0
- package/dist/parsers/rules/__tests__/engine.test.ts +138 -0
- package/dist/parsers/rules/__tests__/loader.test.d.ts +2 -0
- package/dist/parsers/rules/__tests__/loader.test.d.ts.map +1 -0
- package/dist/parsers/rules/__tests__/loader.test.js +31 -0
- package/dist/parsers/rules/__tests__/loader.test.js.map +1 -0
- package/dist/parsers/rules/__tests__/loader.test.ts +37 -0
- package/dist/parsers/rules/__tests__/schema.test.d.ts +2 -0
- package/dist/parsers/rules/__tests__/schema.test.d.ts.map +1 -0
- package/dist/parsers/rules/__tests__/schema.test.js +33 -0
- package/dist/parsers/rules/__tests__/schema.test.js.map +1 -0
- package/dist/parsers/rules/__tests__/schema.test.ts +37 -0
- package/dist/parsers/rules/__tests__/selectors.test.d.ts +2 -0
- package/dist/parsers/rules/__tests__/selectors.test.d.ts.map +1 -0
- package/dist/parsers/rules/__tests__/selectors.test.js +51 -0
- package/dist/parsers/rules/__tests__/selectors.test.js.map +1 -0
- package/dist/parsers/rules/__tests__/selectors.test.ts +62 -0
- package/dist/parsers/rules/_engine.d.ts +18 -0
- package/dist/parsers/rules/_engine.d.ts.map +1 -0
- package/dist/parsers/rules/_engine.js +159 -0
- package/dist/parsers/rules/_engine.js.map +1 -0
- package/dist/parsers/rules/_engine.ts +171 -0
- package/dist/parsers/rules/_generic-opaque.d.ts +13 -0
- package/dist/parsers/rules/_generic-opaque.d.ts.map +1 -0
- package/dist/parsers/rules/_generic-opaque.js +15 -0
- package/dist/parsers/rules/_generic-opaque.js.map +1 -0
- package/dist/parsers/rules/_generic-opaque.ts +16 -0
- package/dist/parsers/rules/_loader.d.ts +17 -0
- package/dist/parsers/rules/_loader.d.ts.map +1 -0
- package/dist/parsers/rules/_loader.js +58 -0
- package/dist/parsers/rules/_loader.js.map +1 -0
- package/dist/parsers/rules/_loader.ts +65 -0
- package/dist/parsers/rules/_schema.d.ts +143 -0
- package/dist/parsers/rules/_schema.d.ts.map +1 -0
- package/dist/parsers/rules/_schema.js +44 -0
- package/dist/parsers/rules/_schema.js.map +1 -0
- package/dist/parsers/rules/_schema.ts +54 -0
- package/dist/parsers/rules/_selectors.d.ts +37 -0
- package/dist/parsers/rules/_selectors.d.ts.map +1 -0
- package/dist/parsers/rules/_selectors.js +445 -0
- package/dist/parsers/rules/_selectors.js.map +1 -0
- package/dist/parsers/rules/_selectors.ts +416 -0
- package/dist/parsers/rules/apex-component.yml +26 -0
- package/dist/parsers/rules/apex-page.yml +32 -0
- package/dist/parsers/rules/approval-process.yml +25 -0
- package/dist/parsers/rules/custom-labels.yml +16 -0
- package/dist/parsers/rules/custom-metadata-type.yml +26 -0
- package/dist/parsers/rules/dashboard.yml +20 -0
- package/dist/parsers/rules/duplicate-rule.yml +20 -0
- package/dist/parsers/rules/external-service-registration.yml +20 -0
- package/dist/parsers/rules/gen-ai-planner.yml +19 -0
- package/dist/parsers/rules/gen-ai-plugin.yml +19 -0
- package/dist/parsers/rules/layout.yml +20 -0
- package/dist/parsers/rules/lightning-page.yml +21 -0
- package/dist/parsers/rules/named-credential.yml +15 -0
- package/dist/parsers/rules/network.yml +26 -0
- package/dist/parsers/rules/permission-set-group.yml +20 -0
- package/dist/parsers/rules/permission-set.yml +40 -0
- package/dist/parsers/rules/platform-event.yml +15 -0
- package/dist/parsers/rules/profile.yml +55 -0
- package/dist/parsers/rules/report.yml +25 -0
- package/dist/parsers/rules/sharing-rule.yml +78 -0
- package/dist/parsers/rules/workflow.yml +37 -0
- package/dist/parsers/security/index.d.ts +2 -0
- package/dist/parsers/security/index.d.ts.map +1 -0
- package/dist/parsers/security/index.js +5 -0
- package/dist/parsers/security/index.js.map +1 -0
- package/dist/parsers/sf-misc/index.d.ts +4 -0
- package/dist/parsers/sf-misc/index.d.ts.map +1 -0
- package/dist/parsers/sf-misc/index.js +6 -0
- package/dist/parsers/sf-misc/index.js.map +1 -0
- package/dist/parsers/sf-misc/matching-rule.d.ts +11 -0
- package/dist/parsers/sf-misc/matching-rule.d.ts.map +1 -0
- package/dist/parsers/sf-misc/matching-rule.js +17 -0
- package/dist/parsers/sf-misc/matching-rule.js.map +1 -0
- package/dist/parsers/vf/index.d.ts +2 -0
- package/dist/parsers/vf/index.d.ts.map +1 -0
- package/dist/parsers/vf/index.js +3 -0
- package/dist/parsers/vf/index.js.map +1 -0
- package/dist/parsers/vlocity/common.d.ts +26 -0
- package/dist/parsers/vlocity/common.d.ts.map +1 -0
- package/dist/parsers/vlocity/common.js +66 -0
- package/dist/parsers/vlocity/common.js.map +1 -0
- package/dist/parsers/vlocity/data-raptor.d.ts +11 -0
- package/dist/parsers/vlocity/data-raptor.d.ts.map +1 -0
- package/dist/parsers/vlocity/data-raptor.js +46 -0
- package/dist/parsers/vlocity/data-raptor.js.map +1 -0
- package/dist/parsers/vlocity/fallback.d.ts +7 -0
- package/dist/parsers/vlocity/fallback.d.ts.map +1 -0
- package/dist/parsers/vlocity/fallback.js +8 -0
- package/dist/parsers/vlocity/fallback.js.map +1 -0
- package/dist/parsers/vlocity/index.d.ts +7 -0
- package/dist/parsers/vlocity/index.d.ts.map +1 -0
- package/dist/parsers/vlocity/index.js +10 -0
- package/dist/parsers/vlocity/index.js.map +1 -0
- package/dist/parsers/vlocity/integration-procedure.d.ts +11 -0
- package/dist/parsers/vlocity/integration-procedure.d.ts.map +1 -0
- package/dist/parsers/vlocity/integration-procedure.js +53 -0
- package/dist/parsers/vlocity/integration-procedure.js.map +1 -0
- package/dist/parsers/vlocity/omni-script.d.ts +11 -0
- package/dist/parsers/vlocity/omni-script.d.ts.map +1 -0
- package/dist/parsers/vlocity/omni-script.js +50 -0
- package/dist/parsers/vlocity/omni-script.js.map +1 -0
- package/dist/parsers/vlocity/registry.d.ts +3 -0
- package/dist/parsers/vlocity/registry.d.ts.map +1 -0
- package/dist/parsers/vlocity/registry.js +11 -0
- package/dist/parsers/vlocity/registry.js.map +1 -0
- package/dist/parsers/vlocity/vlocity-card.d.ts +11 -0
- package/dist/parsers/vlocity/vlocity-card.d.ts.map +1 -0
- package/dist/parsers/vlocity/vlocity-card.js +55 -0
- package/dist/parsers/vlocity/vlocity-card.js.map +1 -0
- package/dist/parsers/worker-pool.d.ts +30 -0
- package/dist/parsers/worker-pool.d.ts.map +1 -0
- package/dist/parsers/worker-pool.js +57 -0
- package/dist/parsers/worker-pool.js.map +1 -0
- package/dist/render/mermaid/__tests__/mermaid.test.d.ts +2 -0
- package/dist/render/mermaid/__tests__/mermaid.test.d.ts.map +1 -0
- package/dist/render/mermaid/__tests__/mermaid.test.js +74 -0
- package/dist/render/mermaid/__tests__/mermaid.test.js.map +1 -0
- package/dist/render/mermaid/dependency-graph.d.ts +15 -0
- package/dist/render/mermaid/dependency-graph.d.ts.map +1 -0
- package/dist/render/mermaid/dependency-graph.js +43 -0
- package/dist/render/mermaid/dependency-graph.js.map +1 -0
- package/dist/render/mermaid/diff.d.ts +12 -0
- package/dist/render/mermaid/diff.d.ts.map +1 -0
- package/dist/render/mermaid/diff.js +22 -0
- package/dist/render/mermaid/diff.js.map +1 -0
- package/dist/render/mermaid/flow.d.ts +18 -0
- package/dist/render/mermaid/flow.d.ts.map +1 -0
- package/dist/render/mermaid/flow.js +23 -0
- package/dist/render/mermaid/flow.js.map +1 -0
- package/dist/render/mermaid/index.d.ts +6 -0
- package/dist/render/mermaid/index.d.ts.map +1 -0
- package/dist/render/mermaid/index.js +6 -0
- package/dist/render/mermaid/index.js.map +1 -0
- package/dist/render/mermaid/sequence.d.ts +16 -0
- package/dist/render/mermaid/sequence.d.ts.map +1 -0
- package/dist/render/mermaid/sequence.js +20 -0
- package/dist/render/mermaid/sequence.js.map +1 -0
- package/dist/render/mermaid/shared.d.ts +22 -0
- package/dist/render/mermaid/shared.d.ts.map +1 -0
- package/dist/render/mermaid/shared.js +47 -0
- package/dist/render/mermaid/shared.js.map +1 -0
- package/dist/storage/__tests__/analysis-tables-migration.test.d.ts +2 -0
- package/dist/storage/__tests__/analysis-tables-migration.test.d.ts.map +1 -0
- package/dist/storage/__tests__/analysis-tables-migration.test.js +44 -0
- package/dist/storage/__tests__/analysis-tables-migration.test.js.map +1 -0
- package/dist/storage/__tests__/graph-store.test.d.ts +2 -0
- package/dist/storage/__tests__/graph-store.test.d.ts.map +1 -0
- package/dist/storage/__tests__/graph-store.test.js +132 -0
- package/dist/storage/__tests__/graph-store.test.js.map +1 -0
- package/dist/storage/__tests__/identifier.test.d.ts +2 -0
- package/dist/storage/__tests__/identifier.test.d.ts.map +1 -0
- package/dist/storage/__tests__/identifier.test.js +35 -0
- package/dist/storage/__tests__/identifier.test.js.map +1 -0
- package/dist/storage/__tests__/load-better-sqlite3.test.d.ts +2 -0
- package/dist/storage/__tests__/load-better-sqlite3.test.d.ts.map +1 -0
- package/dist/storage/__tests__/load-better-sqlite3.test.js +65 -0
- package/dist/storage/__tests__/load-better-sqlite3.test.js.map +1 -0
- package/dist/storage/__tests__/migrations.test.d.ts +2 -0
- package/dist/storage/__tests__/migrations.test.d.ts.map +1 -0
- package/dist/storage/__tests__/migrations.test.js +93 -0
- package/dist/storage/__tests__/migrations.test.js.map +1 -0
- package/dist/storage/__tests__/perf-50k.test.d.ts +2 -0
- package/dist/storage/__tests__/perf-50k.test.d.ts.map +1 -0
- package/dist/storage/__tests__/perf-50k.test.js +67 -0
- package/dist/storage/__tests__/perf-50k.test.js.map +1 -0
- package/dist/storage/__tests__/snapshot-store.test.d.ts +2 -0
- package/dist/storage/__tests__/snapshot-store.test.d.ts.map +1 -0
- package/dist/storage/__tests__/snapshot-store.test.js +117 -0
- package/dist/storage/__tests__/snapshot-store.test.js.map +1 -0
- package/dist/storage/__tests__/snippets.test.d.ts +2 -0
- package/dist/storage/__tests__/snippets.test.d.ts.map +1 -0
- package/dist/storage/__tests__/snippets.test.js +88 -0
- package/dist/storage/__tests__/snippets.test.js.map +1 -0
- package/dist/storage/__tests__/vector-store-load-failure.test.d.ts +2 -0
- package/dist/storage/__tests__/vector-store-load-failure.test.d.ts.map +1 -0
- package/dist/storage/__tests__/vector-store-load-failure.test.js +42 -0
- package/dist/storage/__tests__/vector-store-load-failure.test.js.map +1 -0
- package/dist/storage/__tests__/vector-store.test.d.ts +2 -0
- package/dist/storage/__tests__/vector-store.test.d.ts.map +1 -0
- package/dist/storage/__tests__/vector-store.test.js +87 -0
- package/dist/storage/__tests__/vector-store.test.js.map +1 -0
- package/dist/storage/identifier.d.ts +5 -0
- package/dist/storage/identifier.d.ts.map +1 -0
- package/dist/storage/identifier.js +21 -0
- package/dist/storage/identifier.js.map +1 -0
- package/dist/storage/index.d.ts +12 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +8 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/interfaces.d.ts +101 -0
- package/dist/storage/interfaces.d.ts.map +1 -0
- package/dist/storage/interfaces.js +2 -0
- package/dist/storage/interfaces.js.map +1 -0
- package/dist/storage/sqlite/graph-store.d.ts +62 -0
- package/dist/storage/sqlite/graph-store.d.ts.map +1 -0
- package/dist/storage/sqlite/graph-store.js +533 -0
- package/dist/storage/sqlite/graph-store.js.map +1 -0
- package/dist/storage/sqlite/load-better-sqlite3.d.ts +50 -0
- package/dist/storage/sqlite/load-better-sqlite3.d.ts.map +1 -0
- package/dist/storage/sqlite/load-better-sqlite3.js +188 -0
- package/dist/storage/sqlite/load-better-sqlite3.js.map +1 -0
- package/dist/storage/sqlite/migrations.d.ts +18 -0
- package/dist/storage/sqlite/migrations.d.ts.map +1 -0
- package/dist/storage/sqlite/migrations.js +291 -0
- package/dist/storage/sqlite/migrations.js.map +1 -0
- package/dist/storage/sqlite/snapshot-store.d.ts +31 -0
- package/dist/storage/sqlite/snapshot-store.d.ts.map +1 -0
- package/dist/storage/sqlite/snapshot-store.js +255 -0
- package/dist/storage/sqlite/snapshot-store.js.map +1 -0
- package/dist/storage/sqlite/vector-store.d.ts +28 -0
- package/dist/storage/sqlite/vector-store.d.ts.map +1 -0
- package/dist/storage/sqlite/vector-store.js +174 -0
- package/dist/storage/sqlite/vector-store.js.map +1 -0
- package/dist/telemetry/__tests__/event-schema.test.d.ts +2 -0
- package/dist/telemetry/__tests__/event-schema.test.d.ts.map +1 -0
- package/dist/telemetry/__tests__/event-schema.test.js +56 -0
- package/dist/telemetry/__tests__/event-schema.test.js.map +1 -0
- package/dist/telemetry/__tests__/machine-id.test.d.ts +2 -0
- package/dist/telemetry/__tests__/machine-id.test.d.ts.map +1 -0
- package/dist/telemetry/__tests__/machine-id.test.js +33 -0
- package/dist/telemetry/__tests__/machine-id.test.js.map +1 -0
- package/dist/telemetry/__tests__/pipeline.test.d.ts +2 -0
- package/dist/telemetry/__tests__/pipeline.test.d.ts.map +1 -0
- package/dist/telemetry/__tests__/pipeline.test.js +68 -0
- package/dist/telemetry/__tests__/pipeline.test.js.map +1 -0
- package/dist/telemetry/__tests__/sanitizer.test.d.ts +2 -0
- package/dist/telemetry/__tests__/sanitizer.test.d.ts.map +1 -0
- package/dist/telemetry/__tests__/sanitizer.test.js +143 -0
- package/dist/telemetry/__tests__/sanitizer.test.js.map +1 -0
- package/dist/telemetry/event-schema.d.ts +47 -0
- package/dist/telemetry/event-schema.d.ts.map +1 -0
- package/dist/telemetry/event-schema.js +64 -0
- package/dist/telemetry/event-schema.js.map +1 -0
- package/dist/telemetry/index.d.ts +6 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +6 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/machine-id.d.ts +7 -0
- package/dist/telemetry/machine-id.d.ts.map +1 -0
- package/dist/telemetry/machine-id.js +30 -0
- package/dist/telemetry/machine-id.js.map +1 -0
- package/dist/telemetry/pipeline.d.ts +17 -0
- package/dist/telemetry/pipeline.d.ts.map +1 -0
- package/dist/telemetry/pipeline.js +33 -0
- package/dist/telemetry/pipeline.js.map +1 -0
- package/dist/telemetry/sanitizer.d.ts +9 -0
- package/dist/telemetry/sanitizer.d.ts.map +1 -0
- package/dist/telemetry/sanitizer.js +87 -0
- package/dist/telemetry/sanitizer.js.map +1 -0
- package/dist/telemetry/sinks.d.ts +22 -0
- package/dist/telemetry/sinks.d.ts.map +1 -0
- package/dist/telemetry/sinks.js +40 -0
- package/dist/telemetry/sinks.js.map +1 -0
- package/dist/tools/types.d.ts +7 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +2 -0
- package/dist/tools/types.js.map +1 -0
- package/package.json +89 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"html-visitor.js","sourceRoot":"","sources":["../../../src/parsers/lwc/html-visitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsers/lwc/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,eAAO,MAAM,eAAe,iBAAwB,CAAC;AAGrD,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsers/lwc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;AACrD,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { EdgeFact, NodeFact } from "../../domain/index.js";
|
|
2
|
+
import type { ParseContext } from "../contract.js";
|
|
3
|
+
export interface JsExtractResult {
|
|
4
|
+
extraEdges: EdgeFact[];
|
|
5
|
+
extraNodes: NodeFact[];
|
|
6
|
+
}
|
|
7
|
+
export declare function extractJsEdges(source: string, lwcQname: string, ctx: ParseContext): JsExtractResult;
|
|
8
|
+
//# sourceMappingURL=js-visitor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-visitor.d.ts","sourceRoot":"","sources":["../../../src/parsers/lwc/js-visitor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAKnD,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,QAAQ,EAAE,CAAC;IACvB,UAAU,EAAE,QAAQ,EAAE,CAAC;CACxB;AAMD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,YAAY,GAChB,eAAe,CAgIjB"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import _parser from "@babel/parser";
|
|
2
|
+
import _traverse from "@babel/traverse";
|
|
3
|
+
import { REL_TYPES } from "../../domain/index.js";
|
|
4
|
+
import { makeEdge, makeNode, stripNs } from "../common.js";
|
|
5
|
+
const parser = _parser.default ?? _parser;
|
|
6
|
+
const traverse = _traverse.default ?? _traverse;
|
|
7
|
+
const APEX_IMPORT_RE = /^@salesforce\/apex\/([A-Za-z_]\w*)\.([A-Za-z_]\w*)$/;
|
|
8
|
+
const SR_IMPORT_RE = /^@salesforce\/resourceUrl\/([A-Za-z_]\w*)$/;
|
|
9
|
+
const LABEL_IMPORT_RE = /^@salesforce\/label\/c\.([A-Za-z_]\w*)$/;
|
|
10
|
+
export function extractJsEdges(source, lwcQname, ctx) {
|
|
11
|
+
const extraEdges = [];
|
|
12
|
+
const extraNodes = [];
|
|
13
|
+
// Map of localName -> { className, methodName } for apex imports.
|
|
14
|
+
const apexImports = {};
|
|
15
|
+
let ast;
|
|
16
|
+
try {
|
|
17
|
+
ast = parser.parse(source, {
|
|
18
|
+
sourceType: "module",
|
|
19
|
+
plugins: ["decorators-legacy", "classProperties", "typescript"],
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
catch (err) {
|
|
23
|
+
extraNodes.push(makeNode(ctx, "ParseError", `ParseError:LWC:${lwcQname}`, {
|
|
24
|
+
message: err instanceof Error ? err.message : String(err),
|
|
25
|
+
}));
|
|
26
|
+
return { extraEdges, extraNodes };
|
|
27
|
+
}
|
|
28
|
+
traverse(ast, {
|
|
29
|
+
ImportDeclaration(path) {
|
|
30
|
+
const src = String(path.node.source?.value ?? "");
|
|
31
|
+
let m = APEX_IMPORT_RE.exec(src);
|
|
32
|
+
if (m) {
|
|
33
|
+
const className = stripNs(m[1] ?? "", ctx.namespace);
|
|
34
|
+
const methodName = m[2] ?? "";
|
|
35
|
+
const localDefault = path.node.specifiers?.find((s) => s.type === "ImportDefaultSpecifier");
|
|
36
|
+
if (localDefault?.local?.name) {
|
|
37
|
+
apexImports[String(localDefault.local.name)] = { className, methodName };
|
|
38
|
+
}
|
|
39
|
+
extraEdges.push(makeEdge(lwcCtx(ctx), lwcQname, REL_TYPES.IMPORTS_APEX, `ApexMethod:${className}.${methodName}(?)`, {
|
|
40
|
+
className,
|
|
41
|
+
methodName,
|
|
42
|
+
}));
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
m = SR_IMPORT_RE.exec(src);
|
|
46
|
+
if (m) {
|
|
47
|
+
extraEdges.push(makeEdge(ctx, lwcQname, REL_TYPES.IMPORTS_STATIC_RESOURCE, `StaticResource:${stripNs(m[1] ?? "", ctx.namespace)}`));
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
m = LABEL_IMPORT_RE.exec(src);
|
|
51
|
+
if (m) {
|
|
52
|
+
extraEdges.push(makeEdge(ctx, lwcQname, REL_TYPES.IMPORTS_CUSTOM_LABEL, `CustomLabel:${stripNs(m[1] ?? "", ctx.namespace)}`));
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
Decorator(path) {
|
|
56
|
+
const expr = path.node.expression;
|
|
57
|
+
if (expr?.type === "CallExpression" && expr.callee?.name === "wire") {
|
|
58
|
+
const arg0 = expr.arguments?.[0];
|
|
59
|
+
if (arg0?.type === "Identifier") {
|
|
60
|
+
const target = apexImports[String(arg0.name)];
|
|
61
|
+
if (target) {
|
|
62
|
+
extraEdges.push(makeEdge(ctx, lwcQname, REL_TYPES.USES_WIRE, `ApexMethod:${target.className}.${target.methodName}(?)`, { kind: "apex" }));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
CallExpression(path) {
|
|
68
|
+
const callee = path.node.callee;
|
|
69
|
+
// Apex imperative call: importedName({...})
|
|
70
|
+
if (callee?.type === "Identifier") {
|
|
71
|
+
const target = apexImports[String(callee.name)];
|
|
72
|
+
if (target) {
|
|
73
|
+
extraEdges.push(makeEdge(ctx, lwcQname, REL_TYPES.CALLS_APEX_FROM_LWC, `ApexMethod:${target.className}.${target.methodName}(?)`));
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// dispatchEvent(new CustomEvent('name', ...))
|
|
77
|
+
if (callee?.type === "MemberExpression" && callee.property?.name === "dispatchEvent") {
|
|
78
|
+
const arg = path.node.arguments?.[0];
|
|
79
|
+
if (arg?.type === "NewExpression" &&
|
|
80
|
+
arg.callee?.name === "CustomEvent" &&
|
|
81
|
+
arg.arguments?.[0]?.type === "StringLiteral") {
|
|
82
|
+
const evtName = String(arg.arguments[0].value);
|
|
83
|
+
extraEdges.push(makeEdge(ctx, lwcQname, REL_TYPES.DISPATCHES_EVENT, `LWCEvent:${evtName}`));
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
});
|
|
88
|
+
return { extraEdges, extraNodes };
|
|
89
|
+
}
|
|
90
|
+
function lwcCtx(ctx) {
|
|
91
|
+
return ctx;
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=js-visitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-visitor.js","sourceRoot":"","sources":["../../../src/parsers/lwc/js-visitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xml-meta.d.ts","sourceRoot":"","sources":["../../../src/parsers/lwc/xml-meta.ts"],"names":[],"mappings":"AAIA,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAanE"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { XMLParser } from "fast-xml-parser";
|
|
2
|
+
const parser = new XMLParser({ ignoreAttributes: false, attributeNamePrefix: "@_" });
|
|
3
|
+
export function extractMetaXml(xml) {
|
|
4
|
+
try {
|
|
5
|
+
const parsed = parser.parse(xml);
|
|
6
|
+
const root = parsed?.LightningComponentBundle ?? {};
|
|
7
|
+
return {
|
|
8
|
+
apiVersion: root.apiVersion ?? null,
|
|
9
|
+
isExposed: root.isExposed ?? null,
|
|
10
|
+
targets: root.targets?.target ? toArray(root.targets.target) : [],
|
|
11
|
+
masterLabel: root.masterLabel ?? null,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
return {};
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
function toArray(v) {
|
|
19
|
+
return Array.isArray(v) ? v : [v];
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=xml-meta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xml-meta.js","sourceRoot":"","sources":["../../../src/parsers/lwc/xml-meta.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;AAErF,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAQ,CAAC;QACxC,MAAM,IAAI,GAAG,MAAM,EAAE,wBAAwB,IAAI,EAAE,CAAC;QACpD,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI;YACnC,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;YACjE,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;SACtC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,OAAO,CAAI,CAAU;IAC5B,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../../src/parsers/object/field.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,GAAG,EAAE,GAAG,CAAC;CACV;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW,CAUpE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { XMLParser } from "fast-xml-parser";
|
|
2
|
+
const xmlParser = new XMLParser({ ignoreAttributes: false, attributeNamePrefix: "@_" });
|
|
3
|
+
export function parseField(apiName, xml) {
|
|
4
|
+
const parsed = xmlParser.parse(xml);
|
|
5
|
+
const f = parsed?.CustomField ?? {};
|
|
6
|
+
return {
|
|
7
|
+
apiName: String(f.fullName ?? apiName),
|
|
8
|
+
type: f.type ? String(f.type) : null,
|
|
9
|
+
formula: f.formula ? String(f.formula) : null,
|
|
10
|
+
required: f.required === true || f.required === "true",
|
|
11
|
+
raw: f,
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"field.js","sourceRoot":"","sources":["../../../src/parsers/object/field.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;AAUxF,MAAM,UAAU,UAAU,CAAC,OAAe,EAAE,GAAW;IACrD,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAQ,CAAC;IAC3C,MAAM,CAAC,GAAG,MAAM,EAAE,WAAW,IAAI,EAAE,CAAC;IACpC,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC;QACtC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QACpC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;QAC7C,QAAQ,EAAE,CAAC,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM;QACtD,GAAG,EAAE,CAAC;KACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CustomObjectParser } from "./object.js";
|
|
2
|
+
export declare const customObjectParser: CustomObjectParser;
|
|
3
|
+
export { CustomObjectParser };
|
|
4
|
+
export { parseField } from "./field.js";
|
|
5
|
+
export { parseRecordType } from "./record-type.js";
|
|
6
|
+
export { parseValidationRule } from "./validation-rule.js";
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsers/object/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,eAAO,MAAM,kBAAkB,oBAA2B,CAAC;AAG3D,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { parserRegistry } from "../registry.js";
|
|
2
|
+
import { CustomObjectParser } from "./object.js";
|
|
3
|
+
export const customObjectParser = new CustomObjectParser();
|
|
4
|
+
parserRegistry.register(customObjectParser);
|
|
5
|
+
export { CustomObjectParser };
|
|
6
|
+
export { parseField } from "./field.js";
|
|
7
|
+
export { parseRecordType } from "./record-type.js";
|
|
8
|
+
export { parseValidationRule } from "./validation-rule.js";
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsers/object/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC;AAC3D,cAAc,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAE5C,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ParseContext, ParseResult, Parser } from "../contract.js";
|
|
2
|
+
export interface ObjectDirInput {
|
|
3
|
+
apiName: string;
|
|
4
|
+
objectXml: string;
|
|
5
|
+
fields?: Record<string, string>;
|
|
6
|
+
recordTypes?: Record<string, string>;
|
|
7
|
+
validationRules?: Record<string, string>;
|
|
8
|
+
}
|
|
9
|
+
export declare class CustomObjectParser implements Parser<ObjectDirInput> {
|
|
10
|
+
readonly category: "CustomObject";
|
|
11
|
+
readonly type = "CustomObject";
|
|
12
|
+
parse(input: ObjectDirInput, ctx: ParseContext): Promise<ParseResult>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=object.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/parsers/object/object.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAKxE,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1C;AAUD,qBAAa,kBAAmB,YAAW,MAAM,CAAC,cAAc,CAAC;IAC/D,QAAQ,CAAC,QAAQ,iBAA4B;IAC7C,QAAQ,CAAC,IAAI,kBAAkB;IAEzB,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;CAoP5E"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { XMLParser } from "fast-xml-parser";
|
|
3
|
+
import { METADATA_CATEGORY, REL_TYPES } from "../../domain/index.js";
|
|
4
|
+
import { makeEdge, makeNode, stripNs } from "../common.js";
|
|
5
|
+
import { parseField } from "./field.js";
|
|
6
|
+
import { parseRecordType } from "./record-type.js";
|
|
7
|
+
import { parseValidationRule } from "./validation-rule.js";
|
|
8
|
+
const xmlParser = new XMLParser({ ignoreAttributes: false, attributeNamePrefix: "@_" });
|
|
9
|
+
function sha256(s) {
|
|
10
|
+
return createHash("sha256").update(s).digest("hex");
|
|
11
|
+
}
|
|
12
|
+
const FORMULA_RE = /\b([A-Z][A-Za-z0-9_]*(?:__r)?)\.([A-Z][A-Za-z0-9_]*(?:__c)?)\b/g;
|
|
13
|
+
export class CustomObjectParser {
|
|
14
|
+
category = METADATA_CATEGORY.OBJECT;
|
|
15
|
+
type = "CustomObject";
|
|
16
|
+
async parse(input, ctx) {
|
|
17
|
+
const nodes = [];
|
|
18
|
+
const edges = [];
|
|
19
|
+
const apiName = stripNs(input.apiName, ctx.namespace);
|
|
20
|
+
const objQname = `CustomObject:${apiName}`;
|
|
21
|
+
let parsed = {};
|
|
22
|
+
try {
|
|
23
|
+
parsed = xmlParser.parse(input.objectXml);
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
// emit ParseError and continue with empty object body
|
|
27
|
+
}
|
|
28
|
+
const obj = parsed?.CustomObject ?? {};
|
|
29
|
+
const isPlatformEvent = apiName.endsWith("__e");
|
|
30
|
+
nodes.push(makeNode(ctx, isPlatformEvent ? "PlatformEvent" : "CustomObject", objQname, {
|
|
31
|
+
apiName,
|
|
32
|
+
label: obj.label ?? null,
|
|
33
|
+
sharingModel: obj.sharingModel ?? null,
|
|
34
|
+
isPlatformEvent,
|
|
35
|
+
}, sha256(input.objectXml)));
|
|
36
|
+
if (isPlatformEvent) {
|
|
37
|
+
// Also emit a discoverable PlatformEvent:Name__e qname
|
|
38
|
+
nodes.push(makeNode(ctx, "PlatformEvent", `PlatformEvent:${apiName}`, { apiName }, sha256(input.objectXml)));
|
|
39
|
+
}
|
|
40
|
+
// Track which field qnames we've already emitted so the separate-file
|
|
41
|
+
// loop below doesn't duplicate the inline ones.
|
|
42
|
+
const emittedFieldQnames = new Set();
|
|
43
|
+
// Inline fields (live-org describe path). The live extractor builds a
|
|
44
|
+
// CustomObject XML with <fields> elements containing fullName/type/
|
|
45
|
+
// referenceTo/relationshipName/formula etc. The filesystem path passes
|
|
46
|
+
// fields separately via input.fields — that loop runs after this one.
|
|
47
|
+
//
|
|
48
|
+
// Without this block, every SObject ingested from a live org becomes
|
|
49
|
+
// a node with zero outgoing edges and zero CustomField children, which
|
|
50
|
+
// breaks trace_downstream / analyze_field for standard objects like
|
|
51
|
+
// Account / Contact / Opportunity.
|
|
52
|
+
const inlineFields = obj.fields
|
|
53
|
+
? Array.isArray(obj.fields)
|
|
54
|
+
? obj.fields
|
|
55
|
+
: [obj.fields]
|
|
56
|
+
: [];
|
|
57
|
+
for (const f of inlineFields) {
|
|
58
|
+
if (!f || typeof f !== "object")
|
|
59
|
+
continue;
|
|
60
|
+
const fieldApi = String(f.fullName ?? f.name ?? "");
|
|
61
|
+
if (!fieldApi)
|
|
62
|
+
continue;
|
|
63
|
+
const fieldQname = `CustomField:${apiName}.${fieldApi}`;
|
|
64
|
+
if (emittedFieldQnames.has(fieldQname))
|
|
65
|
+
continue;
|
|
66
|
+
emittedFieldQnames.add(fieldQname);
|
|
67
|
+
const fieldType = f.type ? String(f.type) : null;
|
|
68
|
+
const formula = f.formula ? String(f.formula) : null;
|
|
69
|
+
const required = f.required === true || f.required === "true";
|
|
70
|
+
// fast-xml-parser collapses array-of-strings differently depending on
|
|
71
|
+
// count: 0 -> undefined, 1 -> string, 2+ -> string[]. Normalise.
|
|
72
|
+
const refRaw = f.referenceTo;
|
|
73
|
+
const referenceTo = Array.isArray(refRaw)
|
|
74
|
+
? refRaw.map((x) => String(x))
|
|
75
|
+
: refRaw
|
|
76
|
+
? [String(refRaw)]
|
|
77
|
+
: [];
|
|
78
|
+
const relationshipName = f.relationshipName ? String(f.relationshipName) : null;
|
|
79
|
+
nodes.push(makeNode(ctx, "CustomField", fieldQname, {
|
|
80
|
+
apiName: fieldApi,
|
|
81
|
+
type: fieldType,
|
|
82
|
+
formula,
|
|
83
|
+
required,
|
|
84
|
+
object: apiName,
|
|
85
|
+
referenceTo,
|
|
86
|
+
relationshipName,
|
|
87
|
+
}, sha256(`${fieldQname}|${fieldType ?? ""}|${formula ?? ""}|${referenceTo.join(",")}`)));
|
|
88
|
+
edges.push(makeEdge(ctx, objQname, REL_TYPES.DEFINES_FIELD, fieldQname));
|
|
89
|
+
// Lookup / Master-Detail relationships: emit one REFERENCES_OBJECT
|
|
90
|
+
// edge per target in the referenceTo array.
|
|
91
|
+
for (const target of referenceTo) {
|
|
92
|
+
if (!target)
|
|
93
|
+
continue;
|
|
94
|
+
edges.push(makeEdge(ctx, fieldQname, REL_TYPES.REFERENCES_OBJECT, `CustomObject:${target}`, {
|
|
95
|
+
...(relationshipName ? { relationshipName } : {}),
|
|
96
|
+
...(fieldType ? { fieldType } : {}),
|
|
97
|
+
}));
|
|
98
|
+
}
|
|
99
|
+
// Formula refs on inline-fields path too (same regex pattern the
|
|
100
|
+
// separate-file branch uses).
|
|
101
|
+
if (formula) {
|
|
102
|
+
const re = new RegExp(FORMULA_RE.source, "g");
|
|
103
|
+
let m = re.exec(formula);
|
|
104
|
+
const seen = new Set();
|
|
105
|
+
while (m !== null) {
|
|
106
|
+
const refObj = (m[1] ?? "").replace(/__r$/, "");
|
|
107
|
+
const refField = m[2] ?? "";
|
|
108
|
+
const key = `${refObj}.${refField}`;
|
|
109
|
+
if (!seen.has(key)) {
|
|
110
|
+
seen.add(key);
|
|
111
|
+
edges.push(makeEdge(ctx, fieldQname, REL_TYPES.READS_FIELD, `CustomField:${refObj}.${refField}`, { via: "formula" }));
|
|
112
|
+
}
|
|
113
|
+
m = re.exec(formula);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
// Fields (separate XML files in source-dir layout)
|
|
118
|
+
for (const [fieldApi, fxml] of Object.entries(input.fields ?? {})) {
|
|
119
|
+
const f = parseField(fieldApi, fxml);
|
|
120
|
+
const fieldQname = `CustomField:${apiName}.${f.apiName}`;
|
|
121
|
+
// Skip if already emitted via the inline-fields path above.
|
|
122
|
+
if (emittedFieldQnames.has(fieldQname))
|
|
123
|
+
continue;
|
|
124
|
+
emittedFieldQnames.add(fieldQname);
|
|
125
|
+
nodes.push(makeNode(ctx, "CustomField", fieldQname, {
|
|
126
|
+
apiName: f.apiName,
|
|
127
|
+
type: f.type,
|
|
128
|
+
formula: f.formula,
|
|
129
|
+
required: f.required,
|
|
130
|
+
object: apiName,
|
|
131
|
+
}, sha256(fxml)));
|
|
132
|
+
edges.push(makeEdge(ctx, objQname, REL_TYPES.DEFINES_FIELD, fieldQname));
|
|
133
|
+
if (f.formula) {
|
|
134
|
+
const re = new RegExp(FORMULA_RE.source, "g");
|
|
135
|
+
let m = re.exec(f.formula);
|
|
136
|
+
const seen = new Set();
|
|
137
|
+
while (m !== null) {
|
|
138
|
+
const refObj = (m[1] ?? "").replace(/__r$/, "");
|
|
139
|
+
const refField = m[2] ?? "";
|
|
140
|
+
const key = `${refObj}.${refField}`;
|
|
141
|
+
if (!seen.has(key)) {
|
|
142
|
+
seen.add(key);
|
|
143
|
+
edges.push(makeEdge(ctx, fieldQname, REL_TYPES.READS_FIELD, `CustomField:${refObj}.${refField}`, {
|
|
144
|
+
via: "formula",
|
|
145
|
+
}));
|
|
146
|
+
}
|
|
147
|
+
m = re.exec(f.formula);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
// Record types
|
|
152
|
+
for (const [rtApi, rxml] of Object.entries(input.recordTypes ?? {})) {
|
|
153
|
+
const rt = parseRecordType(rtApi, rxml);
|
|
154
|
+
const rtQname = `RecordType:${apiName}.${rt.apiName}`;
|
|
155
|
+
nodes.push(makeNode(ctx, "RecordType", rtQname, { apiName: rt.apiName, label: rt.label, active: rt.active, object: apiName }, sha256(rxml)));
|
|
156
|
+
edges.push(makeEdge(ctx, objQname, REL_TYPES.HAS_RECORD_TYPE, rtQname));
|
|
157
|
+
}
|
|
158
|
+
// Validation rules
|
|
159
|
+
for (const [vrApi, vxml] of Object.entries(input.validationRules ?? {})) {
|
|
160
|
+
const vr = parseValidationRule(vrApi, vxml);
|
|
161
|
+
const vrQname = `ValidationRule:${apiName}.${vr.apiName}`;
|
|
162
|
+
nodes.push(makeNode(ctx, "ValidationRule", vrQname, {
|
|
163
|
+
apiName: vr.apiName,
|
|
164
|
+
active: vr.active,
|
|
165
|
+
errorConditionFormula: vr.errorConditionFormula,
|
|
166
|
+
object: apiName,
|
|
167
|
+
}, sha256(vxml)));
|
|
168
|
+
edges.push(makeEdge(ctx, objQname, REL_TYPES.HAS_VALIDATION_RULE, vrQname));
|
|
169
|
+
if (vr.errorConditionFormula) {
|
|
170
|
+
const re = new RegExp(FORMULA_RE.source, "g");
|
|
171
|
+
let m = re.exec(vr.errorConditionFormula);
|
|
172
|
+
const seen = new Set();
|
|
173
|
+
while (m !== null) {
|
|
174
|
+
const refObj = (m[1] ?? "").replace(/__r$/, "");
|
|
175
|
+
const refField = m[2] ?? "";
|
|
176
|
+
const key = `${refObj}.${refField}`;
|
|
177
|
+
if (!seen.has(key)) {
|
|
178
|
+
seen.add(key);
|
|
179
|
+
edges.push(makeEdge(ctx, vrQname, REL_TYPES.READS_FIELD, `CustomField:${refObj}.${refField}`));
|
|
180
|
+
}
|
|
181
|
+
m = re.exec(vr.errorConditionFormula);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
return { nodes, edges };
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
//# sourceMappingURL=object.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../../src/parsers/object/object.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record-type.d.ts","sourceRoot":"","sources":["../../../src/parsers/object/record-type.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB,CAQ9E"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { XMLParser } from "fast-xml-parser";
|
|
2
|
+
const xmlParser = new XMLParser({ ignoreAttributes: false, attributeNamePrefix: "@_" });
|
|
3
|
+
export function parseRecordType(apiName, xml) {
|
|
4
|
+
const parsed = xmlParser.parse(xml);
|
|
5
|
+
const r = parsed?.RecordType ?? {};
|
|
6
|
+
return {
|
|
7
|
+
apiName: String(r.fullName ?? apiName),
|
|
8
|
+
label: r.label ? String(r.label) : null,
|
|
9
|
+
active: r.active === true || r.active === "true",
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=record-type.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"record-type.js","sourceRoot":"","sources":["../../../src/parsers/object/record-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;AAQxF,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,GAAW;IAC1D,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAQ,CAAC;IAC3C,MAAM,CAAC,GAAG,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC;IACnC,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC;QACtC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;QACvC,MAAM,EAAE,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;KACjD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface ParsedValidationRule {
|
|
2
|
+
apiName: string;
|
|
3
|
+
active: boolean;
|
|
4
|
+
errorConditionFormula: string | null;
|
|
5
|
+
errorMessage: string | null;
|
|
6
|
+
}
|
|
7
|
+
export declare function parseValidationRule(apiName: string, xml: string): ParsedValidationRule;
|
|
8
|
+
//# sourceMappingURL=validation-rule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation-rule.d.ts","sourceRoot":"","sources":["../../../src/parsers/object/validation-rule.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAStF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { XMLParser } from "fast-xml-parser";
|
|
2
|
+
const xmlParser = new XMLParser({ ignoreAttributes: false, attributeNamePrefix: "@_" });
|
|
3
|
+
export function parseValidationRule(apiName, xml) {
|
|
4
|
+
const parsed = xmlParser.parse(xml);
|
|
5
|
+
const r = parsed?.ValidationRule ?? {};
|
|
6
|
+
return {
|
|
7
|
+
apiName: String(r.fullName ?? apiName),
|
|
8
|
+
active: r.active === true || r.active === "true",
|
|
9
|
+
errorConditionFormula: r.errorConditionFormula ? String(r.errorConditionFormula) : null,
|
|
10
|
+
errorMessage: r.errorMessage ? String(r.errorMessage) : null,
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=validation-rule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation-rule.js","sourceRoot":"","sources":["../../../src/parsers/object/validation-rule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;AASxF,MAAM,UAAU,mBAAmB,CAAC,OAAe,EAAE,GAAW;IAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAQ,CAAC;IAC3C,MAAM,CAAC,GAAG,MAAM,EAAE,cAAc,IAAI,EAAE,CAAC;IACvC,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC;QACtC,MAAM,EAAE,CAAC,CAAC,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;QAChD,qBAAqB,EAAE,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,IAAI;QACvF,YAAY,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI;KAC7D,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ParseContext, ParseResult, Parser } from "../contract.js";
|
|
2
|
+
export interface OmniDataTransformInput {
|
|
3
|
+
name: string;
|
|
4
|
+
metadata: unknown;
|
|
5
|
+
}
|
|
6
|
+
export declare class OmniDataTransformParser implements Parser<OmniDataTransformInput> {
|
|
7
|
+
readonly category: "OmniDataTransform";
|
|
8
|
+
readonly type = "OmniDataTransform";
|
|
9
|
+
parse(input: OmniDataTransformInput, ctx: ParseContext): Promise<ParseResult>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data-transform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-transform.d.ts","sourceRoot":"","sources":["../../../src/parsers/omnistudio/data-transform.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAGxE,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,uBAAwB,YAAW,MAAM,CAAC,sBAAsB,CAAC;IAC5E,QAAQ,CAAC,QAAQ,sBAAyC;IAC1D,QAAQ,CAAC,IAAI,uBAAuB;IAE9B,KAAK,CAAC,KAAK,EAAE,sBAAsB,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;CA4BpF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { METADATA_CATEGORY, REL_TYPES } from "../../domain/index.js";
|
|
2
|
+
import { makeEdge } from "../common.js";
|
|
3
|
+
import { asJson, buildBaseNode, extractFieldRefs, sha256 } from "../vlocity/common.js";
|
|
4
|
+
export class OmniDataTransformParser {
|
|
5
|
+
category = METADATA_CATEGORY.OMNI_DATA_TRANSFORM;
|
|
6
|
+
type = "OmniDataTransform";
|
|
7
|
+
async parse(input, ctx) {
|
|
8
|
+
const nodes = [];
|
|
9
|
+
const edges = [];
|
|
10
|
+
const md = asJson(input.metadata);
|
|
11
|
+
const hash = sha256(JSON.stringify(md));
|
|
12
|
+
const node = buildBaseNode({
|
|
13
|
+
ctx,
|
|
14
|
+
label: "OmniDataTransform",
|
|
15
|
+
prefix: "OMNI",
|
|
16
|
+
name: input.name,
|
|
17
|
+
raw: md,
|
|
18
|
+
hash,
|
|
19
|
+
});
|
|
20
|
+
nodes.push(node);
|
|
21
|
+
const src = node.qualifiedName;
|
|
22
|
+
const refs = extractFieldRefs(JSON.stringify(md));
|
|
23
|
+
for (const r of refs) {
|
|
24
|
+
edges.push(makeEdge(ctx, src, REL_TYPES.OMNI_USES_DATA_TRANSFORM, `CustomField:${r.object}.${r.field}`));
|
|
25
|
+
}
|
|
26
|
+
return { nodes, edges };
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=data-transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data-transform.js","sourceRoot":"","sources":["../../../src/parsers/omnistudio/data-transform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,iBAAiB,EAAiB,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAOvF,MAAM,OAAO,uBAAuB;IACzB,QAAQ,GAAG,iBAAiB,CAAC,mBAAmB,CAAC;IACjD,IAAI,GAAG,mBAAmB,CAAC;IAEpC,KAAK,CAAC,KAAK,CAAC,KAA6B,EAAE,GAAiB;QAC1D,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,aAAa,CAAC;YACzB,GAAG;YACH,KAAK,EAAE,mBAAmB;YAC1B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,EAAE,EAAE;YACP,IAAI;SACL,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,aAAkC,CAAC;QACpD,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QAClD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CACR,QAAQ,CACN,GAAG,EACH,GAAG,EACH,SAAS,CAAC,wBAAwB,EAClC,eAAe,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,EAAE,CACrC,CACF,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { OmniDataTransformParser } from "./data-transform.js";
|
|
2
|
+
import { OmniIntegrationProcedureParser } from "./integration-procedure.js";
|
|
3
|
+
import { OmniProcessParser } from "./process.js";
|
|
4
|
+
import { OmniUiCardParser } from "./ui-card.js";
|
|
5
|
+
export declare const omniProcessParser: OmniProcessParser;
|
|
6
|
+
export declare const omniDataTransformParser: OmniDataTransformParser;
|
|
7
|
+
export declare const omniIntegrationProcedureParser: OmniIntegrationProcedureParser;
|
|
8
|
+
export declare const omniUiCardParser: OmniUiCardParser;
|
|
9
|
+
export { OmniDataTransformParser, OmniIntegrationProcedureParser, OmniProcessParser, OmniUiCardParser, };
|
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/parsers/omnistudio/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,eAAO,MAAM,iBAAiB,mBAA0B,CAAC;AACzD,eAAO,MAAM,uBAAuB,yBAAgC,CAAC;AACrE,eAAO,MAAM,8BAA8B,gCAAuC,CAAC;AACnF,eAAO,MAAM,gBAAgB,kBAAyB,CAAC;AAOvD,OAAO,EACL,uBAAuB,EACvB,8BAA8B,EAC9B,iBAAiB,EACjB,gBAAgB,GACjB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { parserRegistry } from "../registry.js";
|
|
2
|
+
import { OmniDataTransformParser } from "./data-transform.js";
|
|
3
|
+
import { OmniIntegrationProcedureParser } from "./integration-procedure.js";
|
|
4
|
+
import { OmniProcessParser } from "./process.js";
|
|
5
|
+
import { OmniUiCardParser } from "./ui-card.js";
|
|
6
|
+
export const omniProcessParser = new OmniProcessParser();
|
|
7
|
+
export const omniDataTransformParser = new OmniDataTransformParser();
|
|
8
|
+
export const omniIntegrationProcedureParser = new OmniIntegrationProcedureParser();
|
|
9
|
+
export const omniUiCardParser = new OmniUiCardParser();
|
|
10
|
+
parserRegistry.register(omniProcessParser);
|
|
11
|
+
parserRegistry.register(omniDataTransformParser);
|
|
12
|
+
parserRegistry.register(omniIntegrationProcedureParser);
|
|
13
|
+
parserRegistry.register(omniUiCardParser);
|
|
14
|
+
export { OmniDataTransformParser, OmniIntegrationProcedureParser, OmniProcessParser, OmniUiCardParser, };
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/parsers/omnistudio/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,8BAA8B,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC;AACzD,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,EAAE,CAAC;AACrE,MAAM,CAAC,MAAM,8BAA8B,GAAG,IAAI,8BAA8B,EAAE,CAAC;AACnF,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAEvD,cAAc,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAC3C,cAAc,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;AACjD,cAAc,CAAC,QAAQ,CAAC,8BAA8B,CAAC,CAAC;AACxD,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;AAE1C,OAAO,EACL,uBAAuB,EACvB,8BAA8B,EAC9B,iBAAiB,EACjB,gBAAgB,GACjB,CAAC"}
|