@datarecce/ui 0.1.40 → 0.2.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/README.md +28 -133
- package/dist/AuthModal-C8LetZNB.js +23 -0
- package/dist/AuthModal-C8LetZNB.js.map +1 -0
- package/dist/LineageCanvas-CR38SDYr.d.ts +41 -0
- package/dist/LineageCanvas-CR38SDYr.d.ts.map +1 -0
- package/dist/ResultErrorFallback-C7c-TN1p.js +3 -0
- package/dist/ResultErrorFallback-C7c-TN1p.js.map +1 -0
- package/dist/RouteConfigContext-z8YNimdP.d.ts +172 -0
- package/dist/RouteConfigContext-z8YNimdP.d.ts.map +1 -0
- package/dist/RunProgress-DyFIALbI.d.ts +429 -0
- package/dist/RunProgress-DyFIALbI.d.ts.map +1 -0
- package/dist/ScreenshotDataGrid-BfxYUThx.d.ts +64 -0
- package/dist/ScreenshotDataGrid-BfxYUThx.d.ts.map +1 -0
- package/dist/SplitPane-B-BLxZaQ.d.ts +1427 -0
- package/dist/SplitPane-B-BLxZaQ.d.ts.map +1 -0
- package/dist/advanced.d.ts +18 -0
- package/dist/advanced.d.ts.map +1 -0
- package/dist/advanced.js +3 -0
- package/dist/advanced.js.map +1 -0
- package/dist/api-ZZ4cc9b9.d.ts +255 -0
- package/dist/api-ZZ4cc9b9.d.ts.map +1 -0
- package/dist/api-_i6BZPkM.js +3 -0
- package/dist/api-_i6BZPkM.js.map +1 -0
- package/dist/api.d.ts +3 -2
- package/dist/api.js +2 -100
- package/dist/colors--47Kkns4.js +3 -0
- package/dist/colors--47Kkns4.js.map +1 -0
- package/dist/colors-vY9Yzui0.d.ts +255 -0
- package/dist/colors-vY9Yzui0.d.ts.map +1 -0
- package/dist/components-run.d.ts +8 -0
- package/dist/components-run.js +2 -0
- package/dist/components.d.ts +22 -2
- package/dist/components.js +2 -86
- package/dist/const-DbXBkrxT.js +3 -0
- package/dist/const-DbXBkrxT.js.map +1 -0
- package/dist/constants-DD5vJv2q.js +3 -0
- package/dist/constants-DD5vJv2q.js.map +1 -0
- package/dist/constants.d.ts +3 -0
- package/dist/constants.js +2 -0
- package/dist/contexts.d.ts +7 -0
- package/dist/contexts.js +2 -0
- package/dist/flag-CiR2E5oz.d.ts +898 -0
- package/dist/flag-CiR2E5oz.d.ts.map +1 -0
- package/dist/flag-koeDAqr3.js +3 -0
- package/dist/flag-koeDAqr3.js.map +1 -0
- package/dist/hooks.d.ts +15 -2
- package/dist/hooks.js +2 -43
- package/dist/index-BFkbe0aF.d.ts +698 -0
- package/dist/index-BFkbe0aF.d.ts.map +1 -0
- package/dist/index-Ba3hp2Ng.d.ts +471 -0
- package/dist/index-Ba3hp2Ng.d.ts.map +1 -0
- package/dist/index-C_kD4ZQ3.d.ts +1079 -0
- package/dist/index-C_kD4ZQ3.d.ts.map +1 -0
- package/dist/index-CiPcALu4.d.ts +146 -0
- package/dist/index-CiPcALu4.d.ts.map +1 -0
- package/dist/index-CkXLPYZY.d.ts +13 -0
- package/dist/index-CkXLPYZY.d.ts.map +1 -0
- package/dist/index-DTCpHvX_.d.ts +211 -0
- package/dist/index-DTCpHvX_.d.ts.map +1 -0
- package/dist/index-DVoQsx5c.d.ts +349 -0
- package/dist/index-DVoQsx5c.d.ts.map +1 -0
- package/dist/index-DmwYRgDR.d.ts +192 -0
- package/dist/index-DmwYRgDR.d.ts.map +1 -0
- package/dist/index-N8N7XmRj.d.ts +130 -0
- package/dist/index-N8N7XmRj.d.ts.map +1 -0
- package/dist/index-h_fw6R9U.d.ts +1501 -0
- package/dist/index-h_fw6R9U.d.ts.map +1 -0
- package/dist/index-o48TPoFN.d.ts +734 -0
- package/dist/index-o48TPoFN.d.ts.map +1 -0
- package/dist/index.d.ts +24 -2
- package/dist/index.js +2 -198
- package/dist/keepAlive-CEzyrDfg.js +3 -0
- package/dist/keepAlive-CEzyrDfg.js.map +1 -0
- package/dist/lib/api/axiosClient.d.ts +8 -0
- package/dist/lib/api/axiosClient.d.ts.map +1 -0
- package/dist/lib/api/axiosClient.js +3 -0
- package/dist/lib/api/axiosClient.js.map +1 -0
- package/dist/lib/api/track.d.ts +137 -0
- package/dist/lib/api/track.d.ts.map +1 -0
- package/dist/lib/api/track.js +2 -0
- package/dist/lib/api/user.d.ts +16 -0
- package/dist/lib/api/user.d.ts.map +1 -0
- package/dist/lib/api/user.js +2 -0
- package/dist/lib/const.d.ts +8 -0
- package/dist/lib/const.d.ts.map +1 -0
- package/dist/lib/const.js +2 -0
- package/dist/lib/result/ResultErrorFallback.d.ts +8 -0
- package/dist/lib/result/ResultErrorFallback.d.ts.map +1 -0
- package/dist/lib/result/ResultErrorFallback.js +2 -0
- package/dist/primitives-CgGUvwHB.d.ts +914 -0
- package/dist/primitives-CgGUvwHB.d.ts.map +1 -0
- package/dist/primitives.d.ts +12 -0
- package/dist/primitives.js +2 -0
- package/dist/result.d.ts +4 -0
- package/dist/result.js +2 -0
- package/dist/src-BgHSbbHk.js +67 -0
- package/dist/src-BgHSbbHk.js.map +1 -0
- package/dist/styles.css +478 -4
- package/dist/theme-CeWzymUn.js +64 -0
- package/dist/theme-CeWzymUn.js.map +1 -0
- package/dist/theme.d.ts +3 -2
- package/dist/theme.js +2 -9
- package/dist/track-9ZQpBlUK.js +3 -0
- package/dist/track-9ZQpBlUK.js.map +1 -0
- package/dist/types-CFbNxrx2.d.ts +171 -0
- package/dist/types-CFbNxrx2.d.ts.map +1 -0
- package/dist/types-CZre3j02.d.ts +231 -0
- package/dist/types-CZre3j02.d.ts.map +1 -0
- package/dist/types.d.ts +14 -2
- package/dist/types.js +3 -9
- package/dist/types.js.map +1 -0
- package/dist/useRecceServerFlag-Bg5R67J4.js +3 -0
- package/dist/useRecceServerFlag-Bg5R67J4.js.map +1 -0
- package/dist/useThemeColors--prVbMmM.js +3 -0
- package/dist/useThemeColors--prVbMmM.js.map +1 -0
- package/dist/useThemeColors-DHEroo8f.d.ts +104 -0
- package/dist/useThemeColors-DHEroo8f.d.ts.map +1 -0
- package/dist/user-DMT7E0fc.js +3 -0
- package/dist/user-DMT7E0fc.js.map +1 -0
- package/dist/utils-CW2skXm_.js +3 -0
- package/dist/utils-CW2skXm_.js.map +1 -0
- package/dist/utils-CXWhfyxC.js +5 -0
- package/dist/utils-CXWhfyxC.js.map +1 -0
- package/dist/utils.d.ts +7 -0
- package/dist/utils.js +2 -0
- package/package.json +115 -107
- package/LICENSE +0 -201
- package/dist/RecceCheckContext-BJprb2xR.js +0 -7968
- package/dist/RecceCheckContext-BJprb2xR.js.map +0 -1
- package/dist/RecceCheckContext-DPnWB_aU.css +0 -215
- package/dist/RecceCheckContext-DPnWB_aU.css.map +0 -1
- package/dist/RecceCheckContext-DbZ7BdRy.mjs +0 -7426
- package/dist/RecceCheckContext-DbZ7BdRy.mjs.map +0 -1
- package/dist/RecceCheckContext-DyxOeUsX.css +0 -215
- package/dist/RecceCheckContext-DyxOeUsX.css.map +0 -1
- package/dist/api.d.mts +0 -3
- package/dist/api.js.map +0 -1
- package/dist/api.mjs +0 -46
- package/dist/api.mjs.map +0 -1
- package/dist/components-B6oaPB5f.mjs +0 -11769
- package/dist/components-B6oaPB5f.mjs.map +0 -1
- package/dist/components-BeAjVBV3.css +0 -70
- package/dist/components-BeAjVBV3.css.map +0 -1
- package/dist/components-DTLQ2djq.js +0 -14110
- package/dist/components-DTLQ2djq.js.map +0 -1
- package/dist/components-iUxcqtUB.css +0 -70
- package/dist/components-iUxcqtUB.css.map +0 -1
- package/dist/components.d.mts +0 -3
- package/dist/components.mjs +0 -9
- package/dist/const-CaIm1Z8g.mjs +0 -12
- package/dist/const-CaIm1Z8g.mjs.map +0 -1
- package/dist/const-CvdZO0FN.js +0 -24
- package/dist/const-CvdZO0FN.js.map +0 -1
- package/dist/hooks-cQsBXBd1.js +0 -40
- package/dist/hooks-cQsBXBd1.js.map +0 -1
- package/dist/hooks-eaHm_yEp.mjs +0 -33
- package/dist/hooks-eaHm_yEp.mjs.map +0 -1
- package/dist/hooks.d.mts +0 -3
- package/dist/hooks.mjs +0 -8
- package/dist/html2canvas-pro.esm-CsuSOHXp.js +0 -7250
- package/dist/html2canvas-pro.esm-CsuSOHXp.js.map +0 -1
- package/dist/html2canvas-pro.esm-E7kpobrC.mjs +0 -7249
- package/dist/html2canvas-pro.esm-E7kpobrC.mjs.map +0 -1
- package/dist/index-B9lSPJTi.d.ts +0 -2170
- package/dist/index-B9lSPJTi.d.ts.map +0 -1
- package/dist/index-CbF0x3kW.d.mts +0 -2172
- package/dist/index-CbF0x3kW.d.mts.map +0 -1
- package/dist/index.d.mts +0 -3
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -20
- package/dist/index.mjs.map +0 -1
- package/dist/mui-theme-CUhybmBq.mjs +0 -696
- package/dist/mui-theme-CUhybmBq.mjs.map +0 -1
- package/dist/mui-theme-iBHkjXJq.js +0 -732
- package/dist/mui-theme-iBHkjXJq.js.map +0 -1
- package/dist/state-CTITyT0R.js +0 -795
- package/dist/state-CTITyT0R.js.map +0 -1
- package/dist/state-Sc2b4jri.mjs +0 -382
- package/dist/state-Sc2b4jri.mjs.map +0 -1
- package/dist/theme.d.mts +0 -3
- package/dist/theme.mjs +0 -4
- package/dist/tooltipMessage-BC5W7H3X.js +0 -13
- package/dist/tooltipMessage-BC5W7H3X.js.map +0 -1
- package/dist/tooltipMessage-B_xMIKWL.mjs +0 -7
- package/dist/tooltipMessage-B_xMIKWL.mjs.map +0 -1
- package/dist/types.d.mts +0 -3
- package/dist/types.mjs +0 -6
- package/dist/urls-BQW5wjg-.js +0 -13
- package/dist/urls-BQW5wjg-.js.map +0 -1
- package/dist/urls-DT7FVEcS.mjs +0 -7
- package/dist/urls-DT7FVEcS.mjs.map +0 -1
- package/dist/version-B9s8yne-.js +0 -300
- package/dist/version-B9s8yne-.js.map +0 -1
- package/dist/version-DP1kU_7v.mjs +0 -162
- package/dist/version-DP1kU_7v.mjs.map +0 -1
- package/recce-source/.editorconfig +0 -26
- package/recce-source/.flake8 +0 -37
- package/recce-source/.github/ISSUE_TEMPLATE/bug_report.yml +0 -67
- package/recce-source/.github/ISSUE_TEMPLATE/custom.md +0 -10
- package/recce-source/.github/ISSUE_TEMPLATE/feature_request.yml +0 -42
- package/recce-source/.github/PULL_REQUEST_TEMPLATE.md +0 -21
- package/recce-source/.github/copilot-instructions.md +0 -331
- package/recce-source/.github/instructions/backend-instructions.md +0 -541
- package/recce-source/.github/instructions/frontend-instructions.md +0 -317
- package/recce-source/.github/workflows/build-statics.yaml +0 -72
- package/recce-source/.github/workflows/bump.yaml +0 -48
- package/recce-source/.github/workflows/integration-tests-cloud.yaml +0 -92
- package/recce-source/.github/workflows/integration-tests-sqlmesh.yaml +0 -33
- package/recce-source/.github/workflows/integration-tests.yaml +0 -52
- package/recce-source/.github/workflows/nightly.yaml +0 -246
- package/recce-source/.github/workflows/release.yaml +0 -196
- package/recce-source/.github/workflows/tests-js.yaml +0 -58
- package/recce-source/.github/workflows/tests-python.yaml +0 -128
- package/recce-source/.pre-commit-config.yaml +0 -26
- package/recce-source/CLAUDE.md +0 -483
- package/recce-source/CODE_OF_CONDUCT.md +0 -128
- package/recce-source/CONTRIBUTING.md +0 -107
- package/recce-source/LICENSE +0 -201
- package/recce-source/Makefile +0 -126
- package/recce-source/README.md +0 -182
- package/recce-source/RECCE_CLOUD.md +0 -81
- package/recce-source/SECURITY.md +0 -25
- package/recce-source/docs/PACKAGING.md +0 -340
- package/recce-source/docs/README.md +0 -1
- package/recce-source/integration_tests/dbt/dbt_project.yml +0 -26
- package/recce-source/integration_tests/dbt/models/customers.sql +0 -69
- package/recce-source/integration_tests/dbt/models/docs.md +0 -14
- package/recce-source/integration_tests/dbt/models/orders.sql +0 -56
- package/recce-source/integration_tests/dbt/models/schema.yml +0 -82
- package/recce-source/integration_tests/dbt/models/staging/schema.yml +0 -31
- package/recce-source/integration_tests/dbt/models/staging/stg_customers.sql +0 -22
- package/recce-source/integration_tests/dbt/models/staging/stg_orders.sql +0 -23
- package/recce-source/integration_tests/dbt/models/staging/stg_payments.sql +0 -25
- package/recce-source/integration_tests/dbt/packages.yml +0 -7
- package/recce-source/integration_tests/dbt/profiles.yml +0 -8
- package/recce-source/integration_tests/dbt/seeds/raw_customers.csv +0 -101
- package/recce-source/integration_tests/dbt/seeds/raw_orders.csv +0 -100
- package/recce-source/integration_tests/dbt/seeds/raw_payments.csv +0 -114
- package/recce-source/integration_tests/dbt/seeds/raw_statuses.csv +0 -5
- package/recce-source/integration_tests/dbt/smoke_test.sh +0 -72
- package/recce-source/integration_tests/dbt/smoke_test_cloud.sh +0 -71
- package/recce-source/integration_tests/sqlmesh/__init__.py +0 -0
- package/recce-source/integration_tests/sqlmesh/audits/assert_item_price_above_zero.sql +0 -9
- package/recce-source/integration_tests/sqlmesh/audits/items.sql +0 -7
- package/recce-source/integration_tests/sqlmesh/audits/order_items.sql +0 -7
- package/recce-source/integration_tests/sqlmesh/config.py +0 -171
- package/recce-source/integration_tests/sqlmesh/helper.py +0 -20
- package/recce-source/integration_tests/sqlmesh/hooks/__init__.py +0 -0
- package/recce-source/integration_tests/sqlmesh/macros/__init__.py +0 -0
- package/recce-source/integration_tests/sqlmesh/macros/macros.py +0 -8
- package/recce-source/integration_tests/sqlmesh/macros/macros.sql +0 -8
- package/recce-source/integration_tests/sqlmesh/macros/utils.py +0 -11
- package/recce-source/integration_tests/sqlmesh/metrics/metrics.sql +0 -25
- package/recce-source/integration_tests/sqlmesh/models/customer_revenue_by_day.sql +0 -41
- package/recce-source/integration_tests/sqlmesh/models/customer_revenue_lifetime.sql +0 -60
- package/recce-source/integration_tests/sqlmesh/models/customers.sql +0 -32
- package/recce-source/integration_tests/sqlmesh/models/items.py +0 -95
- package/recce-source/integration_tests/sqlmesh/models/marketing.sql +0 -15
- package/recce-source/integration_tests/sqlmesh/models/order_items.py +0 -95
- package/recce-source/integration_tests/sqlmesh/models/orders.py +0 -70
- package/recce-source/integration_tests/sqlmesh/models/raw_marketing.py +0 -62
- package/recce-source/integration_tests/sqlmesh/models/top_waiters.sql +0 -23
- package/recce-source/integration_tests/sqlmesh/models/waiter_as_customer_by_day.sql +0 -29
- package/recce-source/integration_tests/sqlmesh/models/waiter_names.sql +0 -10
- package/recce-source/integration_tests/sqlmesh/models/waiter_revenue_by_day.sql +0 -29
- package/recce-source/integration_tests/sqlmesh/models/waiters.py +0 -62
- package/recce-source/integration_tests/sqlmesh/prep_env.sh +0 -16
- package/recce-source/integration_tests/sqlmesh/schema.yaml +0 -5
- package/recce-source/integration_tests/sqlmesh/seeds/waiter_names.csv +0 -11
- package/recce-source/integration_tests/sqlmesh/test_server.sh +0 -29
- package/recce-source/integration_tests/sqlmesh/tests/test_customer_revenue_by_day.yaml +0 -63
- package/recce-source/integration_tests/sqlmesh/tests/test_order_items.yaml +0 -72
- package/recce-source/js/.editorconfig +0 -27
- package/recce-source/js/.env.development +0 -5
- package/recce-source/js/.husky/pre-commit +0 -29
- package/recce-source/js/.nvmrc +0 -1
- package/recce-source/js/README.md +0 -39
- package/recce-source/js/app/(mainComponents)/DisplayModeToggle.tsx +0 -65
- package/recce-source/js/app/(mainComponents)/NavBar.tsx +0 -228
- package/recce-source/js/app/(mainComponents)/RecceVersionBadge.tsx +0 -107
- package/recce-source/js/app/(mainComponents)/TopBar.tsx +0 -252
- package/recce-source/js/app/@lineage/default.tsx +0 -20
- package/recce-source/js/app/@lineage/page.tsx +0 -14
- package/recce-source/js/app/MainLayout.tsx +0 -170
- package/recce-source/js/app/Providers.tsx +0 -49
- package/recce-source/js/app/checks/page.tsx +0 -296
- package/recce-source/js/app/error.tsx +0 -93
- package/recce-source/js/app/favicon.ico +0 -0
- package/recce-source/js/app/global-error.tsx +0 -115
- package/recce-source/js/app/global.css +0 -82
- package/recce-source/js/app/layout.tsx +0 -48
- package/recce-source/js/app/lineage/page.tsx +0 -15
- package/recce-source/js/app/page.tsx +0 -12
- package/recce-source/js/app/query/page.tsx +0 -8
- package/recce-source/js/biome.json +0 -313
- package/recce-source/js/jest.config.js +0 -34
- package/recce-source/js/jest.globals.d.ts +0 -32
- package/recce-source/js/jest.setup.js +0 -91
- package/recce-source/js/next.config.js +0 -16
- package/recce-source/js/package-lock.json +0 -13843
- package/recce-source/js/package.json +0 -123
- package/recce-source/js/pnpm-lock.yaml +0 -9235
- package/recce-source/js/pnpm-workspace.yaml +0 -6
- package/recce-source/js/postcss.config.js +0 -5
- package/recce-source/js/public/auth_callback.html +0 -68
- package/recce-source/js/public/imgs/feedback/thumbs-down.png +0 -0
- package/recce-source/js/public/imgs/feedback/thumbs-up.png +0 -0
- package/recce-source/js/public/imgs/reload-image.svg +0 -4
- package/recce-source/js/public/logo/recce-logo-white.png +0 -0
- package/recce-source/js/src/components/AuthModal/AuthModal.tsx +0 -202
- package/recce-source/js/src/components/app/AvatarDropdown.tsx +0 -159
- package/recce-source/js/src/components/app/EnvInfo.tsx +0 -357
- package/recce-source/js/src/components/app/Filename.tsx +0 -388
- package/recce-source/js/src/components/app/SetupConnectionPopover.tsx +0 -91
- package/recce-source/js/src/components/app/StateExporter.tsx +0 -57
- package/recce-source/js/src/components/app/StateImporter.tsx +0 -198
- package/recce-source/js/src/components/app/StateSharing.tsx +0 -145
- package/recce-source/js/src/components/app/StateSynchronizer.tsx +0 -205
- package/recce-source/js/src/components/charts/HistogramChart.tsx +0 -291
- package/recce-source/js/src/components/charts/SquareIcon.tsx +0 -51
- package/recce-source/js/src/components/charts/TopKSummaryList.tsx +0 -457
- package/recce-source/js/src/components/charts/chartTheme.ts +0 -74
- package/recce-source/js/src/components/check/CheckBreadcrumb.tsx +0 -97
- package/recce-source/js/src/components/check/CheckDescription.tsx +0 -134
- package/recce-source/js/src/components/check/CheckDetail.tsx +0 -797
- package/recce-source/js/src/components/check/CheckEmptyState.tsx +0 -84
- package/recce-source/js/src/components/check/CheckList.tsx +0 -320
- package/recce-source/js/src/components/check/LineageDiffView.tsx +0 -32
- package/recce-source/js/src/components/check/PresetCheckTemplateView.tsx +0 -48
- package/recce-source/js/src/components/check/SchemaDiffView.tsx +0 -290
- package/recce-source/js/src/components/check/check.ts +0 -25
- package/recce-source/js/src/components/check/timeline/CheckTimeline.tsx +0 -163
- package/recce-source/js/src/components/check/timeline/CommentInput.tsx +0 -84
- package/recce-source/js/src/components/check/timeline/TimelineEvent.tsx +0 -468
- package/recce-source/js/src/components/check/timeline/index.ts +0 -12
- package/recce-source/js/src/components/check/utils.ts +0 -12
- package/recce-source/js/src/components/data-grid/ScreenshotDataGrid.tsx +0 -333
- package/recce-source/js/src/components/data-grid/agGridStyles.css +0 -55
- package/recce-source/js/src/components/data-grid/agGridTheme.ts +0 -43
- package/recce-source/js/src/components/editor/CodeEditor.tsx +0 -107
- package/recce-source/js/src/components/editor/DiffEditor.tsx +0 -162
- package/recce-source/js/src/components/editor/index.ts +0 -12
- package/recce-source/js/src/components/errorboundary/ErrorBoundary.tsx +0 -87
- package/recce-source/js/src/components/histogram/HistogramDiffForm.tsx +0 -147
- package/recce-source/js/src/components/histogram/HistogramDiffResultView.tsx +0 -63
- package/recce-source/js/src/components/icons/index.tsx +0 -142
- package/recce-source/js/src/components/lineage/ActionControl.tsx +0 -63
- package/recce-source/js/src/components/lineage/ActionTag.tsx +0 -141
- package/recce-source/js/src/components/lineage/ChangeStatusLegend.tsx +0 -46
- package/recce-source/js/src/components/lineage/ColumnLevelLineageControl.tsx +0 -327
- package/recce-source/js/src/components/lineage/ColumnLevelLineageLegend.tsx +0 -57
- package/recce-source/js/src/components/lineage/GraphColumnNode.tsx +0 -199
- package/recce-source/js/src/components/lineage/GraphEdge.tsx +0 -59
- package/recce-source/js/src/components/lineage/GraphNode.tsx +0 -555
- package/recce-source/js/src/components/lineage/LineagePage.tsx +0 -10
- package/recce-source/js/src/components/lineage/LineageView.tsx +0 -1384
- package/recce-source/js/src/components/lineage/LineageViewContext.tsx +0 -86
- package/recce-source/js/src/components/lineage/LineageViewContextMenu.tsx +0 -637
- package/recce-source/js/src/components/lineage/LineageViewNotification.tsx +0 -64
- package/recce-source/js/src/components/lineage/LineageViewTopBar.tsx +0 -596
- package/recce-source/js/src/components/lineage/NodeSqlView.tsx +0 -136
- package/recce-source/js/src/components/lineage/NodeTag.tsx +0 -278
- package/recce-source/js/src/components/lineage/NodeView.tsx +0 -642
- package/recce-source/js/src/components/lineage/SandboxView.tsx +0 -436
- package/recce-source/js/src/components/lineage/ServerDisconnectedModalContent.tsx +0 -105
- package/recce-source/js/src/components/lineage/SetupConnectionBanner.tsx +0 -52
- package/recce-source/js/src/components/lineage/SingleEnvironmentQueryView.tsx +0 -152
- package/recce-source/js/src/components/lineage/graph.test.ts +0 -31
- package/recce-source/js/src/components/lineage/graph.ts +0 -58
- package/recce-source/js/src/components/lineage/lineage.test.ts +0 -169
- package/recce-source/js/src/components/lineage/lineage.ts +0 -521
- package/recce-source/js/src/components/lineage/styles.css +0 -42
- package/recce-source/js/src/components/lineage/styles.tsx +0 -165
- package/recce-source/js/src/components/lineage/useMultiNodesAction.ts +0 -352
- package/recce-source/js/src/components/lineage/useValueDiffAlertDialog.tsx +0 -108
- package/recce-source/js/src/components/onboarding-guide/Notification.tsx +0 -62
- package/recce-source/js/src/components/profile/ProfileDiffForm.tsx +0 -134
- package/recce-source/js/src/components/profile/ProfileDiffResultView.tsx +0 -243
- package/recce-source/js/src/components/query/ChangedOnlyCheckbox.tsx +0 -29
- package/recce-source/js/src/components/query/DiffText.tsx +0 -120
- package/recce-source/js/src/components/query/QueryDiffResultView.tsx +0 -468
- package/recce-source/js/src/components/query/QueryForm.tsx +0 -80
- package/recce-source/js/src/components/query/QueryPage.tsx +0 -282
- package/recce-source/js/src/components/query/QueryResultView.tsx +0 -180
- package/recce-source/js/src/components/query/SetupConnectionGuide.tsx +0 -57
- package/recce-source/js/src/components/query/SqlEditor.tsx +0 -245
- package/recce-source/js/src/components/query/ToggleSwitch.tsx +0 -84
- package/recce-source/js/src/components/query/styles.css +0 -21
- package/recce-source/js/src/components/routing/DirectUrlAccess.test.tsx +0 -428
- package/recce-source/js/src/components/routing/LineageStatePreservation.test.tsx +0 -311
- package/recce-source/js/src/components/routing/Navigation.test.tsx +0 -256
- package/recce-source/js/src/components/rowcount/RowCountDiffResultView.tsx +0 -108
- package/recce-source/js/src/components/rowcount/delta.test.ts +0 -51
- package/recce-source/js/src/components/rowcount/delta.ts +0 -16
- package/recce-source/js/src/components/run/RunList.tsx +0 -303
- package/recce-source/js/src/components/run/RunModal.tsx +0 -191
- package/recce-source/js/src/components/run/RunPage.tsx +0 -26
- package/recce-source/js/src/components/run/RunResultPane.tsx +0 -454
- package/recce-source/js/src/components/run/RunStatusAndDate.tsx +0 -106
- package/recce-source/js/src/components/run/RunToolbar.tsx +0 -70
- package/recce-source/js/src/components/run/RunView.tsx +0 -196
- package/recce-source/js/src/components/run/registry.ts +0 -214
- package/recce-source/js/src/components/run/types.ts +0 -14
- package/recce-source/js/src/components/schema/ColumnNameCell.test.tsx +0 -169
- package/recce-source/js/src/components/schema/ColumnNameCell.tsx +0 -198
- package/recce-source/js/src/components/schema/SchemaView.tsx +0 -336
- package/recce-source/js/src/components/schema/schemaDiff.ts +0 -32
- package/recce-source/js/src/components/schema/style.css +0 -134
- package/recce-source/js/src/components/screenshot/ScreenshotBox.tsx +0 -39
- package/recce-source/js/src/components/shared/HistoryToggle.tsx +0 -35
- package/recce-source/js/src/components/split/Split.tsx +0 -40
- package/recce-source/js/src/components/split/styles.css +0 -24
- package/recce-source/js/src/components/summary/ChangeSummary.tsx +0 -264
- package/recce-source/js/src/components/summary/SchemaSummary.tsx +0 -123
- package/recce-source/js/src/components/summary/SummaryView.tsx +0 -29
- package/recce-source/js/src/components/timeout/IdleTimeoutBadge.tsx +0 -48
- package/recce-source/js/src/components/top-k/TopKDiffForm.tsx +0 -58
- package/recce-source/js/src/components/top-k/TopKDiffResultView.tsx +0 -73
- package/recce-source/js/src/components/ui/dataGrid/DataFrameColumnGroupHeader.tsx +0 -228
- package/recce-source/js/src/components/ui/dataGrid/DataFrameColumnHeader.tsx +0 -113
- package/recce-source/js/src/components/ui/dataGrid/defaultRenderCell.tsx +0 -72
- package/recce-source/js/src/components/ui/dataGrid/index.ts +0 -23
- package/recce-source/js/src/components/ui/dataGrid/inlineRenderCell.test.tsx +0 -607
- package/recce-source/js/src/components/ui/dataGrid/inlineRenderCell.tsx +0 -211
- package/recce-source/js/src/components/ui/dataGrid/schemaCells.test.tsx +0 -452
- package/recce-source/js/src/components/ui/dataGrid/schemaCells.tsx +0 -142
- package/recce-source/js/src/components/ui/dataGrid/valueDiffCells.test.tsx +0 -178
- package/recce-source/js/src/components/ui/dataGrid/valueDiffCells.tsx +0 -275
- package/recce-source/js/src/components/ui/markdown/ExternalLinkConfirmDialog.tsx +0 -134
- package/recce-source/js/src/components/ui/markdown/MarkdownContent.tsx +0 -364
- package/recce-source/js/src/components/ui/mui/index.ts +0 -13
- package/recce-source/js/src/components/ui/mui-provider.tsx +0 -67
- package/recce-source/js/src/components/ui/mui-theme.ts +0 -1039
- package/recce-source/js/src/components/ui/mui-utils.ts +0 -113
- package/recce-source/js/src/components/ui/toaster.tsx +0 -288
- package/recce-source/js/src/components/valuediff/ValueDiffDetailResultView.tsx +0 -216
- package/recce-source/js/src/components/valuediff/ValueDiffForm.tsx +0 -246
- package/recce-source/js/src/components/valuediff/ValueDiffResultView.tsx +0 -81
- package/recce-source/js/src/components/valuediff/shared.ts +0 -33
- package/recce-source/js/src/constants/tooltipMessage.ts +0 -3
- package/recce-source/js/src/constants/urls.ts +0 -1
- package/recce-source/js/src/lib/UrlHash.ts +0 -12
- package/recce-source/js/src/lib/api/adhocQuery.ts +0 -70
- package/recce-source/js/src/lib/api/axiosClient.ts +0 -9
- package/recce-source/js/src/lib/api/cacheKeys.ts +0 -13
- package/recce-source/js/src/lib/api/checkEvents.ts +0 -252
- package/recce-source/js/src/lib/api/checks.ts +0 -129
- package/recce-source/js/src/lib/api/cll.ts +0 -53
- package/recce-source/js/src/lib/api/connectToCloud.ts +0 -13
- package/recce-source/js/src/lib/api/flag.ts +0 -37
- package/recce-source/js/src/lib/api/info.ts +0 -198
- package/recce-source/js/src/lib/api/instanceInfo.ts +0 -25
- package/recce-source/js/src/lib/api/keepAlive.ts +0 -108
- package/recce-source/js/src/lib/api/lineagecheck.ts +0 -35
- package/recce-source/js/src/lib/api/localStorageKeys.ts +0 -7
- package/recce-source/js/src/lib/api/models.ts +0 -59
- package/recce-source/js/src/lib/api/profile.ts +0 -65
- package/recce-source/js/src/lib/api/rowcount.ts +0 -19
- package/recce-source/js/src/lib/api/runs.ts +0 -174
- package/recce-source/js/src/lib/api/schemacheck.ts +0 -31
- package/recce-source/js/src/lib/api/select.ts +0 -25
- package/recce-source/js/src/lib/api/sessionStorageKeys.ts +0 -8
- package/recce-source/js/src/lib/api/state.ts +0 -117
- package/recce-source/js/src/lib/api/track.ts +0 -281
- package/recce-source/js/src/lib/api/types.ts +0 -284
- package/recce-source/js/src/lib/api/user.ts +0 -42
- package/recce-source/js/src/lib/api/valuediff.ts +0 -46
- package/recce-source/js/src/lib/api/version.ts +0 -40
- package/recce-source/js/src/lib/const.ts +0 -9
- package/recce-source/js/src/lib/dataGrid/crossFunctionConsistency.test.ts +0 -626
- package/recce-source/js/src/lib/dataGrid/dataGridFactory.test.ts +0 -2140
- package/recce-source/js/src/lib/dataGrid/dataGridFactory.ts +0 -397
- package/recce-source/js/src/lib/dataGrid/generators/rowCountUtils.test.ts +0 -132
- package/recce-source/js/src/lib/dataGrid/generators/rowCountUtils.ts +0 -126
- package/recce-source/js/src/lib/dataGrid/generators/toDataDiffGrid.test.ts +0 -1627
- package/recce-source/js/src/lib/dataGrid/generators/toDataDiffGrid.ts +0 -140
- package/recce-source/js/src/lib/dataGrid/generators/toDataGrid.ts +0 -67
- package/recce-source/js/src/lib/dataGrid/generators/toRowCountDataGrid.test.ts +0 -142
- package/recce-source/js/src/lib/dataGrid/generators/toRowCountDataGrid.ts +0 -71
- package/recce-source/js/src/lib/dataGrid/generators/toRowCountDiffDataGrid.test.ts +0 -258
- package/recce-source/js/src/lib/dataGrid/generators/toRowCountDiffDataGrid.ts +0 -153
- package/recce-source/js/src/lib/dataGrid/generators/toSchemaDataGrid.test.ts +0 -951
- package/recce-source/js/src/lib/dataGrid/generators/toSchemaDataGrid.ts +0 -221
- package/recce-source/js/src/lib/dataGrid/generators/toValueDataGrid.test.ts +0 -395
- package/recce-source/js/src/lib/dataGrid/generators/toValueDataGrid.ts +0 -184
- package/recce-source/js/src/lib/dataGrid/generators/toValueDiffGrid.test.ts +0 -884
- package/recce-source/js/src/lib/dataGrid/generators/toValueDiffGrid.ts +0 -113
- package/recce-source/js/src/lib/dataGrid/index.ts +0 -51
- package/recce-source/js/src/lib/dataGrid/propertyBased.test.ts +0 -858
- package/recce-source/js/src/lib/dataGrid/shared/columnBuilders.test.ts +0 -482
- package/recce-source/js/src/lib/dataGrid/shared/columnBuilders.ts +0 -345
- package/recce-source/js/src/lib/dataGrid/shared/dataTypeEdgeCases.test.ts +0 -698
- package/recce-source/js/src/lib/dataGrid/shared/diffColumnBuilder.test.tsx +0 -820
- package/recce-source/js/src/lib/dataGrid/shared/diffColumnBuilder.tsx +0 -277
- package/recce-source/js/src/lib/dataGrid/shared/gridUtils.test.ts +0 -785
- package/recce-source/js/src/lib/dataGrid/shared/gridUtils.ts +0 -370
- package/recce-source/js/src/lib/dataGrid/shared/index.ts +0 -81
- package/recce-source/js/src/lib/dataGrid/shared/rowBuilders.test.ts +0 -909
- package/recce-source/js/src/lib/dataGrid/shared/rowBuilders.ts +0 -325
- package/recce-source/js/src/lib/dataGrid/shared/simpleColumnBuilder.tsx +0 -240
- package/recce-source/js/src/lib/dataGrid/shared/toDiffColumn.test.tsx +0 -719
- package/recce-source/js/src/lib/dataGrid/shared/toDiffColumn.tsx +0 -231
- package/recce-source/js/src/lib/dataGrid/shared/validation.test.ts +0 -559
- package/recce-source/js/src/lib/dataGrid/shared/validation.ts +0 -367
- package/recce-source/js/src/lib/dataGrid/warehouseNamingConventions.test.ts +0 -1117
- package/recce-source/js/src/lib/formatSelect.ts +0 -50
- package/recce-source/js/src/lib/hooks/ApiConfigContext.tsx +0 -181
- package/recce-source/js/src/lib/hooks/IdleTimeoutContext.tsx +0 -177
- package/recce-source/js/src/lib/hooks/LineageGraphContext.tsx +0 -512
- package/recce-source/js/src/lib/hooks/RecceActionContext.tsx +0 -269
- package/recce-source/js/src/lib/hooks/RecceCheckContext.tsx +0 -33
- package/recce-source/js/src/lib/hooks/RecceContextProvider.tsx +0 -54
- package/recce-source/js/src/lib/hooks/RecceInstanceContext.tsx +0 -129
- package/recce-source/js/src/lib/hooks/RecceQueryContext.tsx +0 -98
- package/recce-source/js/src/lib/hooks/RecceShareStateContext.tsx +0 -59
- package/recce-source/js/src/lib/hooks/ScreenShot.tsx +0 -399
- package/recce-source/js/src/lib/hooks/useAppRouter.test.ts +0 -211
- package/recce-source/js/src/lib/hooks/useAppRouter.ts +0 -200
- package/recce-source/js/src/lib/hooks/useCheckEvents.ts +0 -99
- package/recce-source/js/src/lib/hooks/useCheckToast.tsx +0 -14
- package/recce-source/js/src/lib/hooks/useClipBoardToast.tsx +0 -27
- package/recce-source/js/src/lib/hooks/useCountdownToast.tsx +0 -102
- package/recce-source/js/src/lib/hooks/useFeedbackCollectionToast.tsx +0 -130
- package/recce-source/js/src/lib/hooks/useGuideToast.tsx +0 -45
- package/recce-source/js/src/lib/hooks/useIdleDetection.tsx +0 -185
- package/recce-source/js/src/lib/hooks/useModelColumns.tsx +0 -113
- package/recce-source/js/src/lib/hooks/useRecceInstanceInfo.tsx +0 -13
- package/recce-source/js/src/lib/hooks/useRecceServerFlag.tsx +0 -13
- package/recce-source/js/src/lib/hooks/useRun.tsx +0 -89
- package/recce-source/js/src/lib/hooks/useThemeColors.ts +0 -115
- package/recce-source/js/src/lib/mergeKeys.test.ts +0 -89
- package/recce-source/js/src/lib/mergeKeys.ts +0 -86
- package/recce-source/js/src/lib/result/ResultErrorFallback.tsx +0 -9
- package/recce-source/js/src/lib/utils/formatTime.ts +0 -84
- package/recce-source/js/src/lib/utils/urls.ts +0 -16
- package/recce-source/js/src/utils/DropdownValuesInput.tsx +0 -297
- package/recce-source/js/src/utils/formatters.tsx +0 -237
- package/recce-source/js/src/utils/transforms.ts +0 -81
- package/recce-source/js/tsconfig.json +0 -47
- package/recce-source/macros/README.md +0 -8
- package/recce-source/macros/recce_athena.sql +0 -73
- package/recce-source/pyproject.toml +0 -109
- package/recce-source/recce/VERSION +0 -1
- package/recce-source/recce/__init__.py +0 -84
- package/recce-source/recce/adapter/__init__.py +0 -0
- package/recce-source/recce/adapter/base.py +0 -109
- package/recce-source/recce/adapter/dbt_adapter/__init__.py +0 -1699
- package/recce-source/recce/adapter/dbt_adapter/dbt_version.py +0 -42
- package/recce-source/recce/adapter/sqlmesh_adapter.py +0 -141
- package/recce-source/recce/apis/__init__.py +0 -0
- package/recce-source/recce/apis/check_api.py +0 -203
- package/recce-source/recce/apis/check_events_api.py +0 -353
- package/recce-source/recce/apis/check_func.py +0 -130
- package/recce-source/recce/apis/run_api.py +0 -130
- package/recce-source/recce/apis/run_func.py +0 -258
- package/recce-source/recce/artifact.py +0 -266
- package/recce-source/recce/cli.py +0 -1846
- package/recce-source/recce/config.py +0 -127
- package/recce-source/recce/connect_to_cloud.py +0 -138
- package/recce-source/recce/core.py +0 -334
- package/recce-source/recce/diff.py +0 -26
- package/recce-source/recce/event/CONFIG +0 -1
- package/recce-source/recce/event/SENTRY_DNS +0 -1
- package/recce-source/recce/event/__init__.py +0 -304
- package/recce-source/recce/event/collector.py +0 -184
- package/recce-source/recce/event/track.py +0 -158
- package/recce-source/recce/exceptions.py +0 -21
- package/recce-source/recce/git.py +0 -77
- package/recce-source/recce/github.py +0 -222
- package/recce-source/recce/mcp_server.py +0 -861
- package/recce-source/recce/models/__init__.py +0 -6
- package/recce-source/recce/models/check.py +0 -473
- package/recce-source/recce/models/run.py +0 -46
- package/recce-source/recce/models/types.py +0 -218
- package/recce-source/recce/pull_request.py +0 -124
- package/recce-source/recce/run.py +0 -390
- package/recce-source/recce/server.py +0 -877
- package/recce-source/recce/state/__init__.py +0 -31
- package/recce-source/recce/state/cloud.py +0 -644
- package/recce-source/recce/state/const.py +0 -26
- package/recce-source/recce/state/local.py +0 -56
- package/recce-source/recce/state/state.py +0 -119
- package/recce-source/recce/state/state_loader.py +0 -174
- package/recce-source/recce/summary.py +0 -575
- package/recce-source/recce/tasks/__init__.py +0 -23
- package/recce-source/recce/tasks/core.py +0 -134
- package/recce-source/recce/tasks/dataframe.py +0 -170
- package/recce-source/recce/tasks/histogram.py +0 -433
- package/recce-source/recce/tasks/lineage.py +0 -19
- package/recce-source/recce/tasks/profile.py +0 -298
- package/recce-source/recce/tasks/query.py +0 -450
- package/recce-source/recce/tasks/rowcount.py +0 -277
- package/recce-source/recce/tasks/schema.py +0 -65
- package/recce-source/recce/tasks/top_k.py +0 -172
- package/recce-source/recce/tasks/utils.py +0 -147
- package/recce-source/recce/tasks/valuediff.py +0 -497
- package/recce-source/recce/util/__init__.py +0 -4
- package/recce-source/recce/util/api_token.py +0 -80
- package/recce-source/recce/util/breaking.py +0 -330
- package/recce-source/recce/util/cache.py +0 -25
- package/recce-source/recce/util/cll.py +0 -355
- package/recce-source/recce/util/cloud/__init__.py +0 -15
- package/recce-source/recce/util/cloud/base.py +0 -115
- package/recce-source/recce/util/cloud/check_events.py +0 -190
- package/recce-source/recce/util/cloud/checks.py +0 -242
- package/recce-source/recce/util/io.py +0 -120
- package/recce-source/recce/util/lineage.py +0 -83
- package/recce-source/recce/util/logger.py +0 -25
- package/recce-source/recce/util/onboarding_state.py +0 -45
- package/recce-source/recce/util/perf_tracking.py +0 -85
- package/recce-source/recce/util/pydantic_model.py +0 -22
- package/recce-source/recce/util/recce_cloud.py +0 -454
- package/recce-source/recce/util/singleton.py +0 -18
- package/recce-source/recce/util/startup_perf.py +0 -121
- package/recce-source/recce/yaml/__init__.py +0 -58
- package/recce-source/recce_cloud/README.md +0 -780
- package/recce-source/recce_cloud/VERSION +0 -1
- package/recce-source/recce_cloud/__init__.py +0 -24
- package/recce-source/recce_cloud/api/__init__.py +0 -17
- package/recce-source/recce_cloud/api/base.py +0 -132
- package/recce-source/recce_cloud/api/client.py +0 -186
- package/recce-source/recce_cloud/api/exceptions.py +0 -26
- package/recce-source/recce_cloud/api/factory.py +0 -63
- package/recce-source/recce_cloud/api/github.py +0 -106
- package/recce-source/recce_cloud/api/gitlab.py +0 -111
- package/recce-source/recce_cloud/artifact.py +0 -57
- package/recce-source/recce_cloud/ci_providers/__init__.py +0 -9
- package/recce-source/recce_cloud/ci_providers/base.py +0 -82
- package/recce-source/recce_cloud/ci_providers/detector.py +0 -147
- package/recce-source/recce_cloud/ci_providers/github_actions.py +0 -136
- package/recce-source/recce_cloud/ci_providers/gitlab_ci.py +0 -130
- package/recce-source/recce_cloud/cli.py +0 -434
- package/recce-source/recce_cloud/download.py +0 -230
- package/recce-source/recce_cloud/hatch_build.py +0 -20
- package/recce-source/recce_cloud/pyproject.toml +0 -49
- package/recce-source/recce_cloud/upload.py +0 -214
- package/recce-source/test.py +0 -0
- package/recce-source/tests/__init__.py +0 -0
- package/recce-source/tests/adapter/__init__.py +0 -0
- package/recce-source/tests/adapter/dbt_adapter/__init__.py +0 -0
- package/recce-source/tests/adapter/dbt_adapter/conftest.py +0 -17
- package/recce-source/tests/adapter/dbt_adapter/dbt_test_helper.py +0 -298
- package/recce-source/tests/adapter/dbt_adapter/test_dbt_adapter.py +0 -25
- package/recce-source/tests/adapter/dbt_adapter/test_dbt_cll.py +0 -717
- package/recce-source/tests/adapter/dbt_adapter/test_proj/dbt_project.yml +0 -4
- package/recce-source/tests/adapter/dbt_adapter/test_proj/manifest.json +0 -1
- package/recce-source/tests/adapter/dbt_adapter/test_proj/package-lock.yml +0 -8
- package/recce-source/tests/adapter/dbt_adapter/test_proj/packages.yml +0 -7
- package/recce-source/tests/adapter/dbt_adapter/test_proj/profiles.yml +0 -6
- package/recce-source/tests/adapter/dbt_adapter/test_selector.py +0 -205
- package/recce-source/tests/apis/__init__.py +0 -0
- package/recce-source/tests/apis/row_count_diff.json +0 -59
- package/recce-source/tests/apis/test_check_events_api.py +0 -615
- package/recce-source/tests/apis/test_run_func.py +0 -433
- package/recce-source/tests/catalog.json +0 -527
- package/recce-source/tests/data/manifest/base/catalog.json +0 -1
- package/recce-source/tests/data/manifest/base/manifest.json +0 -1
- package/recce-source/tests/data/manifest/pr2/catalog.json +0 -1
- package/recce-source/tests/data/manifest/pr2/manifest.json +0 -1
- package/recce-source/tests/manifest.json +0 -10655
- package/recce-source/tests/models/__init__.py +0 -0
- package/recce-source/tests/models/test_check.py +0 -731
- package/recce-source/tests/models/test_run_models.py +0 -295
- package/recce-source/tests/recce_cloud/__init__.py +0 -0
- package/recce-source/tests/recce_cloud/test_ci_providers.py +0 -351
- package/recce-source/tests/recce_cloud/test_cli.py +0 -735
- package/recce-source/tests/recce_cloud/test_client.py +0 -379
- package/recce-source/tests/recce_cloud/test_platform_clients.py +0 -483
- package/recce-source/tests/recce_state.json +0 -1
- package/recce-source/tests/state/test_cloud.py +0 -719
- package/recce-source/tests/state/test_local.py +0 -164
- package/recce-source/tests/state/test_state_loader.py +0 -211
- package/recce-source/tests/tasks/__init__.py +0 -0
- package/recce-source/tests/tasks/conftest.py +0 -4
- package/recce-source/tests/tasks/test_histogram.py +0 -129
- package/recce-source/tests/tasks/test_lineage.py +0 -55
- package/recce-source/tests/tasks/test_preset_checks.py +0 -64
- package/recce-source/tests/tasks/test_profile.py +0 -397
- package/recce-source/tests/tasks/test_query.py +0 -528
- package/recce-source/tests/tasks/test_row_count.py +0 -133
- package/recce-source/tests/tasks/test_schema.py +0 -122
- package/recce-source/tests/tasks/test_top_k.py +0 -77
- package/recce-source/tests/tasks/test_utils.py +0 -439
- package/recce-source/tests/tasks/test_valuediff.py +0 -361
- package/recce-source/tests/test_cli.py +0 -236
- package/recce-source/tests/test_cli_mcp_optional.py +0 -45
- package/recce-source/tests/test_cloud_listing_cli.py +0 -324
- package/recce-source/tests/test_config.py +0 -43
- package/recce-source/tests/test_connect_to_cloud.py +0 -82
- package/recce-source/tests/test_core.py +0 -174
- package/recce-source/tests/test_dbt.py +0 -36
- package/recce-source/tests/test_mcp_server.py +0 -505
- package/recce-source/tests/test_pull_request.py +0 -130
- package/recce-source/tests/test_server.py +0 -202
- package/recce-source/tests/test_server_lifespan.py +0 -138
- package/recce-source/tests/test_summary.py +0 -73
- package/recce-source/tests/util/__init__.py +0 -0
- package/recce-source/tests/util/cloud/__init__.py +0 -0
- package/recce-source/tests/util/cloud/test_check_events.py +0 -255
- package/recce-source/tests/util/cloud/test_checks.py +0 -204
- package/recce-source/tests/util/test_api_token.py +0 -119
- package/recce-source/tests/util/test_breaking.py +0 -1427
- package/recce-source/tests/util/test_cll.py +0 -706
- package/recce-source/tests/util/test_lineage.py +0 -122
- package/recce-source/tests/util/test_onboarding_state.py +0 -84
- package/recce-source/tests/util/test_recce_cloud.py +0 -231
- package/recce-source/tox.ini +0 -40
- package/recce-source/uv.lock +0 -3928
- package/src/api/index.ts +0 -32
- package/src/components/index.ts +0 -154
- package/src/global.d.ts +0 -14
- package/src/hooks/index.ts +0 -56
- package/src/index.ts +0 -17
- package/src/lib/hooks/RouteConfigContext.ts +0 -139
- package/src/lib/hooks/useAppRouter.ts +0 -240
- package/src/mui-augmentation.d.ts +0 -139
- package/src/theme/index.ts +0 -13
- package/src/theme.ts +0 -23
- package/src/types/index.ts +0 -23
|
@@ -0,0 +1,914 @@
|
|
|
1
|
+
|
|
2
|
+
import { B as LineageViewRef } from "./SplitPane-B-BLxZaQ.js";
|
|
3
|
+
import * as react30 from "react";
|
|
4
|
+
import * as react_jsx_runtime42 from "react/jsx-runtime";
|
|
5
|
+
import { BoxProps } from "@mui/material/Box";
|
|
6
|
+
import { SplitProps } from "react-split";
|
|
7
|
+
|
|
8
|
+
//#region src/components/check/CheckBreadcrumb.d.ts
|
|
9
|
+
/**
|
|
10
|
+
* Props for the CheckBreadcrumb component
|
|
11
|
+
*/
|
|
12
|
+
interface CheckBreadcrumbProps {
|
|
13
|
+
/** Current name value */
|
|
14
|
+
name: string;
|
|
15
|
+
/** Callback when name is saved */
|
|
16
|
+
onNameChange?: (name: string) => void;
|
|
17
|
+
/** Placeholder text when empty */
|
|
18
|
+
placeholder?: string;
|
|
19
|
+
/** Whether editing is disabled */
|
|
20
|
+
disabled?: boolean;
|
|
21
|
+
/** Optional CSS class name */
|
|
22
|
+
className?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* CheckBreadcrumb Component
|
|
26
|
+
*
|
|
27
|
+
* A pure presentation component for displaying and editing a check name inline.
|
|
28
|
+
* Supports click-to-edit behavior with Enter to save and Escape to cancel.
|
|
29
|
+
* Also commits changes when clicking outside the input.
|
|
30
|
+
*
|
|
31
|
+
* @example Basic usage
|
|
32
|
+
* ```tsx
|
|
33
|
+
* import { CheckBreadcrumb } from '@datarecce/ui/primitives';
|
|
34
|
+
*
|
|
35
|
+
* function CheckHeader({ check }) {
|
|
36
|
+
* return (
|
|
37
|
+
* <CheckBreadcrumb
|
|
38
|
+
* name={check.name}
|
|
39
|
+
* onNameChange={(name) => updateCheck(check.id, { name })}
|
|
40
|
+
* />
|
|
41
|
+
* );
|
|
42
|
+
* }
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* @example Disabled state
|
|
46
|
+
* ```tsx
|
|
47
|
+
* <CheckBreadcrumb
|
|
48
|
+
* name={check.name}
|
|
49
|
+
* disabled
|
|
50
|
+
* placeholder="Unnamed check"
|
|
51
|
+
* />
|
|
52
|
+
* ```
|
|
53
|
+
*
|
|
54
|
+
* @example With placeholder
|
|
55
|
+
* ```tsx
|
|
56
|
+
* <CheckBreadcrumb
|
|
57
|
+
* name=""
|
|
58
|
+
* placeholder="Enter check name..."
|
|
59
|
+
* onNameChange={(name) => updateCheck(check.id, { name })}
|
|
60
|
+
* />
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
declare function CheckBreadcrumbComponent({
|
|
64
|
+
name,
|
|
65
|
+
onNameChange,
|
|
66
|
+
placeholder,
|
|
67
|
+
disabled,
|
|
68
|
+
className
|
|
69
|
+
}: CheckBreadcrumbProps): react_jsx_runtime42.JSX.Element;
|
|
70
|
+
declare const CheckBreadcrumb: react30.MemoExoticComponent<typeof CheckBreadcrumbComponent>;
|
|
71
|
+
//#endregion
|
|
72
|
+
//#region src/components/check/LineageDiffView.d.ts
|
|
73
|
+
/**
|
|
74
|
+
* View options for lineage diff checks
|
|
75
|
+
*/
|
|
76
|
+
interface LineageDiffViewOptions {
|
|
77
|
+
view_mode?: "changed_models" | "all";
|
|
78
|
+
node_ids?: string[];
|
|
79
|
+
select?: string;
|
|
80
|
+
exclude?: string;
|
|
81
|
+
packages?: string[];
|
|
82
|
+
column_level_lineage?: {
|
|
83
|
+
node_id?: string;
|
|
84
|
+
column?: string;
|
|
85
|
+
change_analysis?: boolean;
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Props for the LineageDiffView component
|
|
90
|
+
*/
|
|
91
|
+
interface LineageDiffViewProps {
|
|
92
|
+
/**
|
|
93
|
+
* Parameters from the check, merged with view options
|
|
94
|
+
*/
|
|
95
|
+
params?: Record<string, unknown>;
|
|
96
|
+
/**
|
|
97
|
+
* View options for the lineage display
|
|
98
|
+
*/
|
|
99
|
+
viewOptions?: LineageDiffViewOptions;
|
|
100
|
+
/**
|
|
101
|
+
* Whether the view is interactive (allows user input)
|
|
102
|
+
* @default false
|
|
103
|
+
*/
|
|
104
|
+
interactive?: boolean;
|
|
105
|
+
/**
|
|
106
|
+
* Optional height for the view
|
|
107
|
+
*/
|
|
108
|
+
height?: number | string;
|
|
109
|
+
/**
|
|
110
|
+
* Optional dagre instance for layout
|
|
111
|
+
*/
|
|
112
|
+
dagre?: any;
|
|
113
|
+
}
|
|
114
|
+
declare const LineageDiffView: react30.ForwardRefExoticComponent<LineageDiffViewProps & react30.RefAttributes<LineageViewRef>>;
|
|
115
|
+
//#endregion
|
|
116
|
+
//#region src/components/check/PresetCheckTemplateView.d.ts
|
|
117
|
+
/**
|
|
118
|
+
* Props for generating a preset check template
|
|
119
|
+
*/
|
|
120
|
+
interface GenerateCheckTemplateOptions {
|
|
121
|
+
/** Check name */
|
|
122
|
+
name: string;
|
|
123
|
+
/** Check description */
|
|
124
|
+
description: string;
|
|
125
|
+
/** Check type (e.g., "row_count_diff", "schema_diff") */
|
|
126
|
+
type: string;
|
|
127
|
+
/** Check parameters */
|
|
128
|
+
params: Record<string, unknown>;
|
|
129
|
+
/** View options (optional) */
|
|
130
|
+
viewOptions?: Record<string, unknown>;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Generates a YAML template for a preset check configuration.
|
|
134
|
+
* This can be used to export checks to recce.yml.
|
|
135
|
+
*
|
|
136
|
+
* @example
|
|
137
|
+
* ```ts
|
|
138
|
+
* const template = generateCheckTemplate({
|
|
139
|
+
* name: "Schema Check",
|
|
140
|
+
* description: "Check for schema changes",
|
|
141
|
+
* type: "schema_diff",
|
|
142
|
+
* params: { select: "state:modified" },
|
|
143
|
+
* });
|
|
144
|
+
* // Returns:
|
|
145
|
+
* // checks:
|
|
146
|
+
* // - name: Schema Check
|
|
147
|
+
* // description: Check for schema changes
|
|
148
|
+
* // type: schema_diff
|
|
149
|
+
* // params:
|
|
150
|
+
* // select: state:modified
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
declare function generateCheckTemplate({
|
|
154
|
+
name,
|
|
155
|
+
description,
|
|
156
|
+
type,
|
|
157
|
+
params,
|
|
158
|
+
viewOptions
|
|
159
|
+
}: GenerateCheckTemplateOptions): string;
|
|
160
|
+
/**
|
|
161
|
+
* Props for the PresetCheckTemplateView component
|
|
162
|
+
*/
|
|
163
|
+
interface PresetCheckTemplateViewProps {
|
|
164
|
+
/** The YAML template string to display */
|
|
165
|
+
yamlTemplate: string;
|
|
166
|
+
/** Optional height for the editor */
|
|
167
|
+
height?: string;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* PresetCheckTemplateView Component
|
|
171
|
+
*
|
|
172
|
+
* A presentation component for displaying a preset check YAML template
|
|
173
|
+
* in a read-only code editor. Used in modals to show users how to
|
|
174
|
+
* add checks to their recce.yml file.
|
|
175
|
+
*
|
|
176
|
+
* @example Basic usage
|
|
177
|
+
* ```tsx
|
|
178
|
+
* import { PresetCheckTemplateView, generateCheckTemplate } from '@datarecce/ui/primitives';
|
|
179
|
+
*
|
|
180
|
+
* function CheckTemplateDialog({ check }) {
|
|
181
|
+
* const template = generateCheckTemplate({
|
|
182
|
+
* name: check.name,
|
|
183
|
+
* description: check.description,
|
|
184
|
+
* type: check.type,
|
|
185
|
+
* params: check.params,
|
|
186
|
+
* });
|
|
187
|
+
*
|
|
188
|
+
* return (
|
|
189
|
+
* <Dialog open>
|
|
190
|
+
* <DialogContent>
|
|
191
|
+
* <PresetCheckTemplateView yamlTemplate={template} />
|
|
192
|
+
* </DialogContent>
|
|
193
|
+
* </Dialog>
|
|
194
|
+
* );
|
|
195
|
+
* }
|
|
196
|
+
* ```
|
|
197
|
+
*/
|
|
198
|
+
declare function PresetCheckTemplateViewComponent({
|
|
199
|
+
yamlTemplate,
|
|
200
|
+
height
|
|
201
|
+
}: PresetCheckTemplateViewProps): react_jsx_runtime42.JSX.Element;
|
|
202
|
+
declare const PresetCheckTemplateView: react30.MemoExoticComponent<typeof PresetCheckTemplateViewComponent>;
|
|
203
|
+
//#endregion
|
|
204
|
+
//#region src/components/check/timeline/CommentInput.d.ts
|
|
205
|
+
/**
|
|
206
|
+
* Props for the CommentInput component
|
|
207
|
+
*/
|
|
208
|
+
interface CommentInputProps {
|
|
209
|
+
/** Callback when comment is submitted */
|
|
210
|
+
onSubmit: (content: string) => void;
|
|
211
|
+
/** Whether submission is in progress */
|
|
212
|
+
isSubmitting?: boolean;
|
|
213
|
+
/** Placeholder text for the input */
|
|
214
|
+
placeholder?: string;
|
|
215
|
+
/** Button text (defaults to "Comment") */
|
|
216
|
+
submitLabel?: string;
|
|
217
|
+
/** Submitting button text (defaults to "Submitting...") */
|
|
218
|
+
submittingLabel?: string;
|
|
219
|
+
/** Optional CSS class name */
|
|
220
|
+
className?: string;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* CommentInput Component
|
|
224
|
+
*
|
|
225
|
+
* A pure presentation component for adding comments to a timeline.
|
|
226
|
+
* Supports Cmd+Enter (Mac) or Ctrl+Enter (Windows) keyboard shortcut to submit.
|
|
227
|
+
*
|
|
228
|
+
* @example Basic usage
|
|
229
|
+
* ```tsx
|
|
230
|
+
* import { CommentInput } from '@datarecce/ui/primitives';
|
|
231
|
+
*
|
|
232
|
+
* function CheckTimeline({ checkId }) {
|
|
233
|
+
* const [isSubmitting, setIsSubmitting] = useState(false);
|
|
234
|
+
*
|
|
235
|
+
* const handleSubmit = async (content: string) => {
|
|
236
|
+
* setIsSubmitting(true);
|
|
237
|
+
* await addComment(checkId, content);
|
|
238
|
+
* setIsSubmitting(false);
|
|
239
|
+
* };
|
|
240
|
+
*
|
|
241
|
+
* return (
|
|
242
|
+
* <CommentInput
|
|
243
|
+
* onSubmit={handleSubmit}
|
|
244
|
+
* isSubmitting={isSubmitting}
|
|
245
|
+
* />
|
|
246
|
+
* );
|
|
247
|
+
* }
|
|
248
|
+
* ```
|
|
249
|
+
*
|
|
250
|
+
* @example Custom labels
|
|
251
|
+
* ```tsx
|
|
252
|
+
* <CommentInput
|
|
253
|
+
* onSubmit={handleSubmit}
|
|
254
|
+
* placeholder="Leave feedback..."
|
|
255
|
+
* submitLabel="Send"
|
|
256
|
+
* submittingLabel="Sending..."
|
|
257
|
+
* />
|
|
258
|
+
* ```
|
|
259
|
+
*/
|
|
260
|
+
declare function CommentInputComponent({
|
|
261
|
+
onSubmit,
|
|
262
|
+
isSubmitting,
|
|
263
|
+
placeholder,
|
|
264
|
+
submitLabel,
|
|
265
|
+
submittingLabel,
|
|
266
|
+
className
|
|
267
|
+
}: CommentInputProps): react_jsx_runtime42.JSX.Element;
|
|
268
|
+
declare const CommentInput: react30.MemoExoticComponent<typeof CommentInputComponent>;
|
|
269
|
+
//#endregion
|
|
270
|
+
//#region src/components/check/timeline/TimelineEvent.d.ts
|
|
271
|
+
/**
|
|
272
|
+
* Actor information for timeline events
|
|
273
|
+
*/
|
|
274
|
+
interface TimelineActor {
|
|
275
|
+
/** User ID */
|
|
276
|
+
user_id?: string | number;
|
|
277
|
+
/** Full name of the actor */
|
|
278
|
+
fullname?: string;
|
|
279
|
+
/** Login/username of the actor */
|
|
280
|
+
login?: string;
|
|
281
|
+
/** Avatar URL (props-driven, consumer provides) */
|
|
282
|
+
avatarUrl?: string;
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Event types supported by the timeline
|
|
286
|
+
*/
|
|
287
|
+
type TimelineEventType = "check_created" | "comment" | "approval_change" | "description_change" | "name_change" | "preset_applied";
|
|
288
|
+
/**
|
|
289
|
+
* Timeline event data structure
|
|
290
|
+
*/
|
|
291
|
+
interface TimelineEventData {
|
|
292
|
+
/** Unique event ID */
|
|
293
|
+
id: string;
|
|
294
|
+
/** Type of event */
|
|
295
|
+
event_type: TimelineEventType;
|
|
296
|
+
/** Actor who performed the event */
|
|
297
|
+
actor: TimelineActor;
|
|
298
|
+
/** Event creation timestamp (ISO string) */
|
|
299
|
+
created_at: string;
|
|
300
|
+
/** Event content (for comments) */
|
|
301
|
+
content?: string;
|
|
302
|
+
/** New value (for change events) */
|
|
303
|
+
new_value?: string;
|
|
304
|
+
/** Whether the event was edited */
|
|
305
|
+
is_edited?: boolean;
|
|
306
|
+
/** Whether the event was deleted */
|
|
307
|
+
is_deleted?: boolean;
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Props for the TimelineEvent component
|
|
311
|
+
*/
|
|
312
|
+
interface TimelineEventProps {
|
|
313
|
+
/** Event data to render */
|
|
314
|
+
event: TimelineEventData;
|
|
315
|
+
/** Current user ID (to show edit/delete for own comments) */
|
|
316
|
+
currentUserId?: string;
|
|
317
|
+
/** Callback when editing a comment */
|
|
318
|
+
onEdit?: (eventId: string, content: string) => Promise<void>;
|
|
319
|
+
/** Callback when deleting a comment */
|
|
320
|
+
onDelete?: (eventId: string) => Promise<void>;
|
|
321
|
+
/** Optional markdown renderer component */
|
|
322
|
+
markdownRenderer?: React.ComponentType<{
|
|
323
|
+
content: string;
|
|
324
|
+
}>;
|
|
325
|
+
/** Optional CSS class name */
|
|
326
|
+
className?: string;
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* TimelineEvent Component
|
|
330
|
+
*
|
|
331
|
+
* A pure presentation component for rendering timeline events.
|
|
332
|
+
* Supports different event types including comments with edit/delete functionality.
|
|
333
|
+
*
|
|
334
|
+
* @example Basic usage with state change events
|
|
335
|
+
* ```tsx
|
|
336
|
+
* import { TimelineEvent } from '@datarecce/ui/primitives';
|
|
337
|
+
*
|
|
338
|
+
* function CheckTimeline({ events }) {
|
|
339
|
+
* return (
|
|
340
|
+
* <div>
|
|
341
|
+
* {events.map(event => (
|
|
342
|
+
* <TimelineEvent key={event.id} event={event} />
|
|
343
|
+
* ))}
|
|
344
|
+
* </div>
|
|
345
|
+
* );
|
|
346
|
+
* }
|
|
347
|
+
* ```
|
|
348
|
+
*
|
|
349
|
+
* @example With comment editing
|
|
350
|
+
* ```tsx
|
|
351
|
+
* <TimelineEvent
|
|
352
|
+
* event={commentEvent}
|
|
353
|
+
* currentUserId={currentUser.id}
|
|
354
|
+
* onEdit={async (eventId, content) => {
|
|
355
|
+
* await updateComment(eventId, content);
|
|
356
|
+
* }}
|
|
357
|
+
* onDelete={async (eventId) => {
|
|
358
|
+
* await deleteComment(eventId);
|
|
359
|
+
* }}
|
|
360
|
+
* />
|
|
361
|
+
* ```
|
|
362
|
+
*
|
|
363
|
+
* @example With custom markdown renderer
|
|
364
|
+
* ```tsx
|
|
365
|
+
* import { MarkdownContent } from '@/components/ui/markdown/MarkdownContent';
|
|
366
|
+
*
|
|
367
|
+
* <TimelineEvent
|
|
368
|
+
* event={event}
|
|
369
|
+
* markdownRenderer={({ content }) => (
|
|
370
|
+
* <MarkdownContent content={content} fontSize="sm" />
|
|
371
|
+
* )}
|
|
372
|
+
* />
|
|
373
|
+
* ```
|
|
374
|
+
*/
|
|
375
|
+
declare function TimelineEventComponent({
|
|
376
|
+
event,
|
|
377
|
+
currentUserId,
|
|
378
|
+
onEdit,
|
|
379
|
+
onDelete,
|
|
380
|
+
markdownRenderer,
|
|
381
|
+
className
|
|
382
|
+
}: TimelineEventProps): react_jsx_runtime42.JSX.Element;
|
|
383
|
+
declare const TimelineEvent: react30.MemoExoticComponent<typeof TimelineEventComponent>;
|
|
384
|
+
//#endregion
|
|
385
|
+
//#region src/components/check/utils.d.ts
|
|
386
|
+
/**
|
|
387
|
+
* Utility functions for check components
|
|
388
|
+
*/
|
|
389
|
+
/**
|
|
390
|
+
* Build a title string for a check with optional approval indicator
|
|
391
|
+
*
|
|
392
|
+
* @example
|
|
393
|
+
* ```ts
|
|
394
|
+
* const title = buildCheckTitle({ name: "Schema check", isChecked: true });
|
|
395
|
+
* // Returns: "✅ Schema check"
|
|
396
|
+
* ```
|
|
397
|
+
*/
|
|
398
|
+
declare function buildCheckTitle({
|
|
399
|
+
name,
|
|
400
|
+
isChecked
|
|
401
|
+
}: {
|
|
402
|
+
name: string;
|
|
403
|
+
isChecked?: boolean;
|
|
404
|
+
}): string;
|
|
405
|
+
/**
|
|
406
|
+
* Build a description string with fallback for empty descriptions
|
|
407
|
+
*
|
|
408
|
+
* @example
|
|
409
|
+
* ```ts
|
|
410
|
+
* const desc = buildCheckDescription({ description: "" });
|
|
411
|
+
* // Returns: "_(no description)_"
|
|
412
|
+
* ```
|
|
413
|
+
*/
|
|
414
|
+
declare function buildCheckDescription({
|
|
415
|
+
description,
|
|
416
|
+
fallback
|
|
417
|
+
}: {
|
|
418
|
+
description?: string | null;
|
|
419
|
+
fallback?: string;
|
|
420
|
+
}): string;
|
|
421
|
+
/**
|
|
422
|
+
* Check if a run result is missing or has an error
|
|
423
|
+
*
|
|
424
|
+
* Certain check types (schema_diff, lineage_diff) don't require results
|
|
425
|
+
* to enable approval functionality.
|
|
426
|
+
*
|
|
427
|
+
* @example
|
|
428
|
+
* ```ts
|
|
429
|
+
* const disabled = isDisabledByNoResult({
|
|
430
|
+
* type: "row_count_diff",
|
|
431
|
+
* hasResult: false,
|
|
432
|
+
* hasError: false,
|
|
433
|
+
* });
|
|
434
|
+
* // Returns: true
|
|
435
|
+
*
|
|
436
|
+
* const enabled = isDisabledByNoResult({
|
|
437
|
+
* type: "schema_diff",
|
|
438
|
+
* hasResult: false,
|
|
439
|
+
* hasError: false,
|
|
440
|
+
* });
|
|
441
|
+
* // Returns: false (schema_diff doesn't require results)
|
|
442
|
+
* ```
|
|
443
|
+
*/
|
|
444
|
+
declare function isDisabledByNoResult({
|
|
445
|
+
type,
|
|
446
|
+
hasResult,
|
|
447
|
+
hasError
|
|
448
|
+
}: {
|
|
449
|
+
type: string;
|
|
450
|
+
hasResult: boolean;
|
|
451
|
+
hasError: boolean;
|
|
452
|
+
}): boolean;
|
|
453
|
+
/**
|
|
454
|
+
* Format SQL as a markdown code block
|
|
455
|
+
*
|
|
456
|
+
* @example
|
|
457
|
+
* ```ts
|
|
458
|
+
* const markdown = formatSqlAsMarkdown({ sql: "SELECT * FROM users" });
|
|
459
|
+
* // Returns:
|
|
460
|
+
* // **SQL**
|
|
461
|
+
* // ```sql
|
|
462
|
+
* // SELECT * FROM users
|
|
463
|
+
* // ```
|
|
464
|
+
* ```
|
|
465
|
+
*/
|
|
466
|
+
declare function formatSqlAsMarkdown({
|
|
467
|
+
sql,
|
|
468
|
+
label
|
|
469
|
+
}: {
|
|
470
|
+
sql: string;
|
|
471
|
+
label?: string;
|
|
472
|
+
}): string;
|
|
473
|
+
//#endregion
|
|
474
|
+
//#region src/components/editor/CodeEditor.d.ts
|
|
475
|
+
/**
|
|
476
|
+
* Supported languages for the code editor
|
|
477
|
+
*/
|
|
478
|
+
type CodeEditorLanguage = "sql" | "yaml" | "text";
|
|
479
|
+
/**
|
|
480
|
+
* Theme options for the code editor
|
|
481
|
+
*/
|
|
482
|
+
type CodeEditorTheme = "light" | "dark";
|
|
483
|
+
/**
|
|
484
|
+
* Props for the CodeEditor component
|
|
485
|
+
*/
|
|
486
|
+
interface CodeEditorProps {
|
|
487
|
+
/** The code content to display */
|
|
488
|
+
value: string;
|
|
489
|
+
/** Callback when content changes */
|
|
490
|
+
onChange?: (value: string) => void;
|
|
491
|
+
/** Language for syntax highlighting */
|
|
492
|
+
language?: CodeEditorLanguage;
|
|
493
|
+
/** Whether editor is read-only */
|
|
494
|
+
readOnly?: boolean;
|
|
495
|
+
/** Show line numbers */
|
|
496
|
+
lineNumbers?: boolean;
|
|
497
|
+
/** Enable word wrap */
|
|
498
|
+
wordWrap?: boolean;
|
|
499
|
+
/** Font size in pixels */
|
|
500
|
+
fontSize?: number;
|
|
501
|
+
/** Editor height */
|
|
502
|
+
height?: string;
|
|
503
|
+
/** Optional CSS class */
|
|
504
|
+
className?: string;
|
|
505
|
+
/** Theme mode */
|
|
506
|
+
theme?: CodeEditorTheme;
|
|
507
|
+
/** Custom keyboard shortcuts */
|
|
508
|
+
keyBindings?: Array<{
|
|
509
|
+
key: string;
|
|
510
|
+
run: () => boolean;
|
|
511
|
+
}>;
|
|
512
|
+
}
|
|
513
|
+
/**
|
|
514
|
+
* CodeEditor Component
|
|
515
|
+
*
|
|
516
|
+
* A code editor component using CodeMirror with React integration.
|
|
517
|
+
* Supports SQL and YAML syntax highlighting with customizable theming.
|
|
518
|
+
*
|
|
519
|
+
* @example Basic usage
|
|
520
|
+
* ```tsx
|
|
521
|
+
* import { CodeEditor } from '@datarecce/ui/primitives';
|
|
522
|
+
*
|
|
523
|
+
* function SqlEditor({ sql, onSqlChange }) {
|
|
524
|
+
* return (
|
|
525
|
+
* <CodeEditor
|
|
526
|
+
* value={sql}
|
|
527
|
+
* onChange={onSqlChange}
|
|
528
|
+
* language="sql"
|
|
529
|
+
* />
|
|
530
|
+
* );
|
|
531
|
+
* }
|
|
532
|
+
* ```
|
|
533
|
+
*
|
|
534
|
+
* @example Read-only with dark theme
|
|
535
|
+
* ```tsx
|
|
536
|
+
* <CodeEditor
|
|
537
|
+
* value={yamlContent}
|
|
538
|
+
* language="yaml"
|
|
539
|
+
* readOnly
|
|
540
|
+
* theme="dark"
|
|
541
|
+
* height="300px"
|
|
542
|
+
* />
|
|
543
|
+
* ```
|
|
544
|
+
*
|
|
545
|
+
* @example With custom key bindings
|
|
546
|
+
* ```tsx
|
|
547
|
+
* const keyBindings = [
|
|
548
|
+
* { key: "Mod-Enter", run: () => { handleSubmit(); return true; } }
|
|
549
|
+
* ];
|
|
550
|
+
*
|
|
551
|
+
* <CodeEditor
|
|
552
|
+
* value={sql}
|
|
553
|
+
* onChange={setSql}
|
|
554
|
+
* language="sql"
|
|
555
|
+
* keyBindings={keyBindings}
|
|
556
|
+
* />
|
|
557
|
+
* ```
|
|
558
|
+
*/
|
|
559
|
+
declare function CodeEditor({
|
|
560
|
+
value,
|
|
561
|
+
onChange,
|
|
562
|
+
language,
|
|
563
|
+
readOnly,
|
|
564
|
+
lineNumbers,
|
|
565
|
+
wordWrap,
|
|
566
|
+
fontSize,
|
|
567
|
+
height,
|
|
568
|
+
className,
|
|
569
|
+
theme,
|
|
570
|
+
keyBindings
|
|
571
|
+
}: CodeEditorProps): react_jsx_runtime42.JSX.Element;
|
|
572
|
+
//#endregion
|
|
573
|
+
//#region src/components/ui/DiffText.d.ts
|
|
574
|
+
/**
|
|
575
|
+
* Props for the DiffText component
|
|
576
|
+
*/
|
|
577
|
+
interface DiffTextProps {
|
|
578
|
+
/** The text value to display */
|
|
579
|
+
value: string;
|
|
580
|
+
/** Color palette for the diff indicator */
|
|
581
|
+
colorPalette: "red" | "green";
|
|
582
|
+
/** Whether to gray out the text (for null/missing values) */
|
|
583
|
+
grayOut?: boolean;
|
|
584
|
+
/** Hide the copy button */
|
|
585
|
+
noCopy?: boolean;
|
|
586
|
+
/** Custom font size */
|
|
587
|
+
fontSize?: string;
|
|
588
|
+
/**
|
|
589
|
+
* Callback when copy button is clicked.
|
|
590
|
+
* If provided, the component will use this for copy functionality.
|
|
591
|
+
* If not provided, uses navigator.clipboard.writeText.
|
|
592
|
+
*/
|
|
593
|
+
onCopy?: (value: string) => void;
|
|
594
|
+
}
|
|
595
|
+
/**
|
|
596
|
+
* DiffText Component
|
|
597
|
+
*
|
|
598
|
+
* Displays a text value with diff styling (red for removed, green for added).
|
|
599
|
+
* Includes an optional copy-to-clipboard button on hover.
|
|
600
|
+
*
|
|
601
|
+
* @example Basic usage
|
|
602
|
+
* ```tsx
|
|
603
|
+
* import { DiffText } from '@datarecce/ui';
|
|
604
|
+
*
|
|
605
|
+
* // Show a value that was added (green)
|
|
606
|
+
* <DiffText value="new_value" colorPalette="green" />
|
|
607
|
+
*
|
|
608
|
+
* // Show a value that was removed (red)
|
|
609
|
+
* <DiffText value="old_value" colorPalette="red" />
|
|
610
|
+
* ```
|
|
611
|
+
*
|
|
612
|
+
* @example With custom copy callback
|
|
613
|
+
* ```tsx
|
|
614
|
+
* <DiffText
|
|
615
|
+
* value="copy_me"
|
|
616
|
+
* colorPalette="green"
|
|
617
|
+
* onCopy={(value) => {
|
|
618
|
+
* navigator.clipboard.writeText(value);
|
|
619
|
+
* showToast(`${value} copied!`);
|
|
620
|
+
* }}
|
|
621
|
+
* />
|
|
622
|
+
* ```
|
|
623
|
+
*
|
|
624
|
+
* @example Grayed out (null value)
|
|
625
|
+
* ```tsx
|
|
626
|
+
* <DiffText value="null" colorPalette="red" grayOut />
|
|
627
|
+
* ```
|
|
628
|
+
*/
|
|
629
|
+
declare function DiffText({
|
|
630
|
+
value,
|
|
631
|
+
colorPalette,
|
|
632
|
+
grayOut,
|
|
633
|
+
noCopy,
|
|
634
|
+
fontSize,
|
|
635
|
+
onCopy
|
|
636
|
+
}: DiffTextProps): react_jsx_runtime42.JSX.Element;
|
|
637
|
+
//#endregion
|
|
638
|
+
//#region src/components/ui/DropdownValuesInput.d.ts
|
|
639
|
+
/**
|
|
640
|
+
* @file DropdownValuesInput.tsx
|
|
641
|
+
* @description Multi-select dropdown input component with filtering and custom value support
|
|
642
|
+
*
|
|
643
|
+
* Features:
|
|
644
|
+
* - Dropdown menu with suggestion list
|
|
645
|
+
* - Filter/search functionality (case-insensitive)
|
|
646
|
+
* - Chip-based value display with removal
|
|
647
|
+
* - Keyboard navigation (Enter, comma, Backspace)
|
|
648
|
+
* - Custom value addition
|
|
649
|
+
* - Configurable size variants
|
|
650
|
+
*/
|
|
651
|
+
/**
|
|
652
|
+
* Size variants for the dropdown input
|
|
653
|
+
*/
|
|
654
|
+
type DropdownValuesInputSize = "2xs" | "xs" | "sm" | "md" | "lg";
|
|
655
|
+
/**
|
|
656
|
+
* Props for the DropdownValuesInput component
|
|
657
|
+
*/
|
|
658
|
+
interface DropdownValuesInputProps {
|
|
659
|
+
/** Unit name for pluralization in "X {unitName}s selected" display */
|
|
660
|
+
unitName: string;
|
|
661
|
+
/** List of suggested values to show in dropdown */
|
|
662
|
+
suggestionList?: string[];
|
|
663
|
+
/** Initial selected values */
|
|
664
|
+
defaultValues?: string[];
|
|
665
|
+
/** Callback when selected values change */
|
|
666
|
+
onValuesChange: (values: string[]) => void;
|
|
667
|
+
/** Optional CSS class name */
|
|
668
|
+
className?: string;
|
|
669
|
+
/** Size variant for the input */
|
|
670
|
+
size?: DropdownValuesInputSize;
|
|
671
|
+
/** Width of the input (CSS value or number in pixels) */
|
|
672
|
+
width?: string | number;
|
|
673
|
+
/** Placeholder text when no values are selected */
|
|
674
|
+
placeholder?: string;
|
|
675
|
+
/** Whether the input is disabled */
|
|
676
|
+
disabled?: boolean;
|
|
677
|
+
}
|
|
678
|
+
/**
|
|
679
|
+
* A multi-select dropdown input component for selecting multiple values.
|
|
680
|
+
*
|
|
681
|
+
* Provides a dropdown menu with suggestion list, filtering, and the ability
|
|
682
|
+
* to add custom values. Selected values are displayed as chips that can be
|
|
683
|
+
* removed individually.
|
|
684
|
+
*
|
|
685
|
+
* @example
|
|
686
|
+
* ```tsx
|
|
687
|
+
* <DropdownValuesInput
|
|
688
|
+
* unitName="key"
|
|
689
|
+
* suggestionList={["id", "name", "email"]}
|
|
690
|
+
* defaultValues={["id"]}
|
|
691
|
+
* onValuesChange={(values) => console.log(values)}
|
|
692
|
+
* placeholder="Select or type to add keys"
|
|
693
|
+
* size="sm"
|
|
694
|
+
* width={240}
|
|
695
|
+
* />
|
|
696
|
+
* ```
|
|
697
|
+
*/
|
|
698
|
+
declare const DropdownValuesInput: (props: DropdownValuesInputProps) => react_jsx_runtime42.JSX.Element;
|
|
699
|
+
//#endregion
|
|
700
|
+
//#region src/components/ui/ExternalLinkConfirmDialog.d.ts
|
|
701
|
+
/**
|
|
702
|
+
* Props for ExternalLinkConfirmDialog
|
|
703
|
+
*/
|
|
704
|
+
interface ExternalLinkConfirmDialogProps {
|
|
705
|
+
/** Whether the dialog is open */
|
|
706
|
+
isOpen: boolean;
|
|
707
|
+
/** The external URL the user is trying to navigate to */
|
|
708
|
+
url: string;
|
|
709
|
+
/** Callback when user confirms navigation */
|
|
710
|
+
onConfirm: () => void;
|
|
711
|
+
/** Callback when user cancels navigation */
|
|
712
|
+
onCancel: () => void;
|
|
713
|
+
}
|
|
714
|
+
/**
|
|
715
|
+
* Truncate a URL for display, keeping the domain visible
|
|
716
|
+
*/
|
|
717
|
+
declare function truncateUrl(url: string, maxLength?: number): string;
|
|
718
|
+
/**
|
|
719
|
+
* ExternalLinkConfirmDialog Component
|
|
720
|
+
*
|
|
721
|
+
* A dialog that asks users to confirm before navigating to external URLs.
|
|
722
|
+
*
|
|
723
|
+
* @example Basic usage
|
|
724
|
+
* ```tsx
|
|
725
|
+
* import { ExternalLinkConfirmDialog } from '@datarecce/ui/primitives';
|
|
726
|
+
*
|
|
727
|
+
* function MyComponent() {
|
|
728
|
+
* const [isOpen, setIsOpen] = useState(false);
|
|
729
|
+
* const [pendingUrl, setPendingUrl] = useState('');
|
|
730
|
+
*
|
|
731
|
+
* return (
|
|
732
|
+
* <ExternalLinkConfirmDialog
|
|
733
|
+
* isOpen={isOpen}
|
|
734
|
+
* url={pendingUrl}
|
|
735
|
+
* onConfirm={() => {
|
|
736
|
+
* window.open(pendingUrl, '_blank');
|
|
737
|
+
* setIsOpen(false);
|
|
738
|
+
* }}
|
|
739
|
+
* onCancel={() => setIsOpen(false)}
|
|
740
|
+
* />
|
|
741
|
+
* );
|
|
742
|
+
* }
|
|
743
|
+
* ```
|
|
744
|
+
*/
|
|
745
|
+
declare function ExternalLinkConfirmDialog({
|
|
746
|
+
isOpen,
|
|
747
|
+
url,
|
|
748
|
+
onConfirm,
|
|
749
|
+
onCancel
|
|
750
|
+
}: ExternalLinkConfirmDialogProps): react_jsx_runtime42.JSX.Element;
|
|
751
|
+
//#endregion
|
|
752
|
+
//#region src/components/ui/MarkdownContent.d.ts
|
|
753
|
+
/**
|
|
754
|
+
* Props for MarkdownContent component
|
|
755
|
+
*/
|
|
756
|
+
interface MarkdownContentProps {
|
|
757
|
+
/** The markdown content to render */
|
|
758
|
+
content: string;
|
|
759
|
+
/** Font size for the rendered content */
|
|
760
|
+
fontSize?: string;
|
|
761
|
+
/** Additional domains to treat as internal (not showing confirmation) */
|
|
762
|
+
internalDomains?: string[];
|
|
763
|
+
}
|
|
764
|
+
/**
|
|
765
|
+
* MarkdownContent Component
|
|
766
|
+
*
|
|
767
|
+
* A component for rendering GitHub-flavored Markdown with syntax highlighting
|
|
768
|
+
* and external link confirmation.
|
|
769
|
+
*
|
|
770
|
+
* @example Basic usage
|
|
771
|
+
* ```tsx
|
|
772
|
+
* import { MarkdownContent } from '@datarecce/ui/primitives';
|
|
773
|
+
*
|
|
774
|
+
* function Description({ text }) {
|
|
775
|
+
* return <MarkdownContent content={text} />;
|
|
776
|
+
* }
|
|
777
|
+
* ```
|
|
778
|
+
*
|
|
779
|
+
* @example With custom font size
|
|
780
|
+
* ```tsx
|
|
781
|
+
* <MarkdownContent content={markdown} fontSize="1rem" />
|
|
782
|
+
* ```
|
|
783
|
+
*
|
|
784
|
+
* @example With additional internal domains
|
|
785
|
+
* ```tsx
|
|
786
|
+
* <MarkdownContent
|
|
787
|
+
* content={markdown}
|
|
788
|
+
* internalDomains={['company.com', 'docs.company.com']}
|
|
789
|
+
* />
|
|
790
|
+
* ```
|
|
791
|
+
*/
|
|
792
|
+
declare function MarkdownContent({
|
|
793
|
+
content,
|
|
794
|
+
fontSize,
|
|
795
|
+
internalDomains
|
|
796
|
+
}: MarkdownContentProps): react_jsx_runtime42.JSX.Element;
|
|
797
|
+
//#endregion
|
|
798
|
+
//#region src/components/ui/ScreenshotBox.d.ts
|
|
799
|
+
interface ScreenshotBoxProps extends BoxProps {
|
|
800
|
+
/** Background color for the screenshot area */
|
|
801
|
+
backgroundColor?: string;
|
|
802
|
+
/** Block size (height in block direction) */
|
|
803
|
+
blockSize?: string;
|
|
804
|
+
/** Content to render inside the screenshot area */
|
|
805
|
+
children?: React.ReactNode;
|
|
806
|
+
}
|
|
807
|
+
/**
|
|
808
|
+
* A container component that can be captured as a screenshot.
|
|
809
|
+
*
|
|
810
|
+
* The component forwards its ref to the outer container, allowing parent
|
|
811
|
+
* components to capture the element using html-to-image or similar libraries.
|
|
812
|
+
*
|
|
813
|
+
* @example
|
|
814
|
+
* ```tsx
|
|
815
|
+
* const ref = useRef<HTMLDivElement>(null);
|
|
816
|
+
*
|
|
817
|
+
* const captureScreenshot = async () => {
|
|
818
|
+
* if (ref.current) {
|
|
819
|
+
* const dataUrl = await toPng(ref.current);
|
|
820
|
+
* // Use dataUrl...
|
|
821
|
+
* }
|
|
822
|
+
* };
|
|
823
|
+
*
|
|
824
|
+
* return (
|
|
825
|
+
* <ScreenshotBox ref={ref} backgroundColor="white">
|
|
826
|
+
* <Chart data={data} />
|
|
827
|
+
* </ScreenshotBox>
|
|
828
|
+
* );
|
|
829
|
+
* ```
|
|
830
|
+
*/
|
|
831
|
+
declare const ScreenshotBox: react30.ForwardRefExoticComponent<Omit<ScreenshotBoxProps, "ref"> & react30.RefAttributes<HTMLDivElement>>;
|
|
832
|
+
//#endregion
|
|
833
|
+
//#region src/components/ui/Split.d.ts
|
|
834
|
+
/**
|
|
835
|
+
* Props for HSplit and VSplit components
|
|
836
|
+
*
|
|
837
|
+
* These components provide backward-compatible wrappers around SplitPane,
|
|
838
|
+
* accepting the same props as react-split's SplitProps.
|
|
839
|
+
*/
|
|
840
|
+
type SplitProps$1 = SplitProps;
|
|
841
|
+
/**
|
|
842
|
+
* Horizontal Split Component
|
|
843
|
+
*
|
|
844
|
+
* A convenience wrapper around SplitPane that creates a horizontal (left-right) split.
|
|
845
|
+
* Maintains backward compatibility with react-split's SplitProps interface.
|
|
846
|
+
*
|
|
847
|
+
* @example Basic horizontal split
|
|
848
|
+
* ```tsx
|
|
849
|
+
* import { HSplit } from '@datarecce/ui';
|
|
850
|
+
*
|
|
851
|
+
* function TwoColumnLayout() {
|
|
852
|
+
* return (
|
|
853
|
+
* <HSplit sizes={[30, 70]} minSize={100}>
|
|
854
|
+
* <div>Left Panel</div>
|
|
855
|
+
* <div>Right Panel</div>
|
|
856
|
+
* </HSplit>
|
|
857
|
+
* );
|
|
858
|
+
* }
|
|
859
|
+
* ```
|
|
860
|
+
*
|
|
861
|
+
* @example With custom styling
|
|
862
|
+
* ```tsx
|
|
863
|
+
* <HSplit
|
|
864
|
+
* sizes={[20, 80]}
|
|
865
|
+
* minSize={50}
|
|
866
|
+
* style={{ height: "100%" }}
|
|
867
|
+
* >
|
|
868
|
+
* <nav>Navigation</nav>
|
|
869
|
+
* <main>Content</main>
|
|
870
|
+
* </HSplit>
|
|
871
|
+
* ```
|
|
872
|
+
*/
|
|
873
|
+
declare function HSplit(props: SplitProps$1): react_jsx_runtime42.JSX.Element;
|
|
874
|
+
/**
|
|
875
|
+
* Vertical Split Component
|
|
876
|
+
*
|
|
877
|
+
* A convenience wrapper around SplitPane that creates a vertical (top-bottom) split.
|
|
878
|
+
* Maintains backward compatibility with react-split's SplitProps interface.
|
|
879
|
+
*
|
|
880
|
+
* @example Basic vertical split
|
|
881
|
+
* ```tsx
|
|
882
|
+
* import { VSplit } from '@datarecce/ui';
|
|
883
|
+
*
|
|
884
|
+
* function TwoRowLayout() {
|
|
885
|
+
* return (
|
|
886
|
+
* <VSplit sizes={[60, 40]} minSize={100}>
|
|
887
|
+
* <div>Top Panel</div>
|
|
888
|
+
* <div>Bottom Panel</div>
|
|
889
|
+
* </VSplit>
|
|
890
|
+
* );
|
|
891
|
+
* }
|
|
892
|
+
* ```
|
|
893
|
+
*
|
|
894
|
+
* @example Nested splits
|
|
895
|
+
* ```tsx
|
|
896
|
+
* <HSplit sizes={[30, 70]}>
|
|
897
|
+
* <div>Sidebar</div>
|
|
898
|
+
* <VSplit sizes={[70, 30]}>
|
|
899
|
+
* <div>Main Content</div>
|
|
900
|
+
* <div>Footer</div>
|
|
901
|
+
* </VSplit>
|
|
902
|
+
* </HSplit>
|
|
903
|
+
* ```
|
|
904
|
+
*/
|
|
905
|
+
declare function VSplit(props: SplitProps$1): react_jsx_runtime42.JSX.Element;
|
|
906
|
+
//#endregion
|
|
907
|
+
//#region src/primitives.d.ts
|
|
908
|
+
/**
|
|
909
|
+
* Version marker for the primitives surface.
|
|
910
|
+
*/
|
|
911
|
+
declare const PRIMITIVES_API_VERSION = "0.1.0";
|
|
912
|
+
//#endregion
|
|
913
|
+
export { CommentInput as A, CheckBreadcrumbProps as B, formatSqlAsMarkdown as C, TimelineEventData as D, TimelineEvent as E, generateCheckTemplate as F, LineageDiffView as I, LineageDiffViewOptions as L, GenerateCheckTemplateOptions as M, PresetCheckTemplateView as N, TimelineEventProps as O, PresetCheckTemplateViewProps as P, LineageDiffViewProps as R, buildCheckTitle as S, TimelineActor as T, CodeEditor as _, ScreenshotBox as a, CodeEditorTheme as b, MarkdownContentProps as c, truncateUrl as d, DropdownValuesInput as f, DiffTextProps as g, DiffText as h, VSplit as i, CommentInputProps as j, TimelineEventType as k, ExternalLinkConfirmDialog as l, DropdownValuesInputSize as m, HSplit as n, ScreenshotBoxProps as o, DropdownValuesInputProps as p, SplitProps$1 as r, MarkdownContent as s, PRIMITIVES_API_VERSION as t, ExternalLinkConfirmDialogProps as u, CodeEditorLanguage as v, isDisabledByNoResult as w, buildCheckDescription as x, CodeEditorProps as y, CheckBreadcrumb as z };
|
|
914
|
+
//# sourceMappingURL=primitives-CgGUvwHB.d.ts.map
|