@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
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
# Recce Cloud CLI
|
|
2
|
-
|
|
3
|
-
A lightweight, standalone CLI for managing Recce Cloud operations in CI/CD environments.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
The `recce-cloud` package provides a minimal CLI tool specifically designed for cloud operations, without the heavy dependencies of the full `recce` package. This makes it ideal for CI/CD pipelines where installation speed matters.
|
|
8
|
-
|
|
9
|
-
## Dependency Comparison
|
|
10
|
-
|
|
11
|
-
**recce-cloud** (3 dependencies):
|
|
12
|
-
- click
|
|
13
|
-
- requests
|
|
14
|
-
- rich
|
|
15
|
-
|
|
16
|
-
**recce** (20+ dependencies):
|
|
17
|
-
- boto3, click, deepdiff, fastapi, GitPython, itsdangerous, jinja2, packaging, portalocker, py-markdown-table, pydantic, PyGithub, python-dateutil, python-multipart, pytz, requests, rich, ruamel.yaml, sentry-sdk, sqlglot, uvicorn, watchdog, websockets
|
|
18
|
-
|
|
19
|
-
## Installation
|
|
20
|
-
|
|
21
|
-
### Development Mode
|
|
22
|
-
|
|
23
|
-
From the repository root:
|
|
24
|
-
|
|
25
|
-
```bash
|
|
26
|
-
python setup_cloud.py develop
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
### Production Install (when published to PyPI)
|
|
30
|
-
|
|
31
|
-
```bash
|
|
32
|
-
pip install recce-cloud
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
## Usage
|
|
36
|
-
|
|
37
|
-
```bash
|
|
38
|
-
# Check version
|
|
39
|
-
recce-cloud --version
|
|
40
|
-
|
|
41
|
-
# Get help
|
|
42
|
-
recce-cloud --help
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
## Package Structure
|
|
46
|
-
|
|
47
|
-
```
|
|
48
|
-
recce_cloud/
|
|
49
|
-
├── __init__.py # Package initialization and version
|
|
50
|
-
├── cli.py # Main CLI entry point
|
|
51
|
-
└── VERSION # Version file (synced with main recce)
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
## CI/CD Integration Example
|
|
55
|
-
|
|
56
|
-
```yaml
|
|
57
|
-
# GitHub Actions example
|
|
58
|
-
- name: Install recce-cloud
|
|
59
|
-
run: pip install recce-cloud
|
|
60
|
-
|
|
61
|
-
- name: Use recce-cloud
|
|
62
|
-
run: recce-cloud --version
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
## Development
|
|
66
|
-
|
|
67
|
-
The `recce-cloud` package is developed within the same repository as `recce` but is packaged and distributed separately:
|
|
68
|
-
|
|
69
|
-
- **Main package**: `setup.py` → installs `recce` command
|
|
70
|
-
- **Cloud package**: `setup_cloud.py` → installs `recce-cloud` command
|
|
71
|
-
|
|
72
|
-
Both packages share the same VERSION file to keep versions synchronized.
|
|
73
|
-
|
|
74
|
-
## Future Commands
|
|
75
|
-
|
|
76
|
-
The CLI is designed to be extended with cloud-specific commands such as:
|
|
77
|
-
- `recce-cloud list-sessions` - List Recce Cloud sessions
|
|
78
|
-
- `recce-cloud purge` - Purge cloud state files
|
|
79
|
-
- `recce-cloud upload` - Upload state files to cloud
|
|
80
|
-
|
|
81
|
-
Currently, only the basic CLI structure with version command is implemented.
|
package/recce-source/SECURITY.md
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
# Security Policy
|
|
2
|
-
|
|
3
|
-
## Supported Versions
|
|
4
|
-
|
|
5
|
-
| Version | Supported |
|
|
6
|
-
| ------- | ------------------ |
|
|
7
|
-
| 0.x | :white_check_mark: |
|
|
8
|
-
|
|
9
|
-
## Reporting a Vulnerability
|
|
10
|
-
|
|
11
|
-
Please report (suspected) security vulnerabilities to **dev@infuseai.io**. You will receive a response from us within 48 hours. In the response, we will confirm whether the vulnerability was indeed found, and we will discuss the steps towards a solution.
|
|
12
|
-
|
|
13
|
-
It's important to never publicly disclose a security vulnerability before it has been fully resolved, as this can potentially put the wider community at risk.
|
|
14
|
-
|
|
15
|
-
### Security Vulnerability Response
|
|
16
|
-
|
|
17
|
-
* Acknowledgement of receipt of the report
|
|
18
|
-
* Regular updates about the progress towards fixing the vulnerability
|
|
19
|
-
* An announced release date for the patch fixing the vulnerability
|
|
20
|
-
|
|
21
|
-
### Public Disclosure Timing
|
|
22
|
-
|
|
23
|
-
After the initial reply to your report, we will keep you informed of the progress towards a fix and full announcement. We aim to handle all security vulnerabilities in a timely manner. After the vulnerability has been fixed, we will publish a security advisory along with credit to the reporter if desired.
|
|
24
|
-
|
|
25
|
-
Thank you for helping to keep Recce and its users safe!
|
|
@@ -1,340 +0,0 @@
|
|
|
1
|
-
# Recce Packaging Guide
|
|
2
|
-
|
|
3
|
-
This document explains how `recce` and `recce-cloud` packages are structured, built, and published.
|
|
4
|
-
|
|
5
|
-
## Overview
|
|
6
|
-
|
|
7
|
-
The Recce repository contains two separate Python packages:
|
|
8
|
-
|
|
9
|
-
1. **`recce`** - Full-featured CLI for local development and review
|
|
10
|
-
2. **`recce-cloud`** - Lightweight CLI for CI/CD environments
|
|
11
|
-
|
|
12
|
-
Both packages share the same version number from `recce/VERSION`.
|
|
13
|
-
|
|
14
|
-
## Package Structure
|
|
15
|
-
|
|
16
|
-
```
|
|
17
|
-
recce/
|
|
18
|
-
├── recce/ # Main package (full-featured)
|
|
19
|
-
│ ├── VERSION # Single source of truth for both packages
|
|
20
|
-
│ └── ...
|
|
21
|
-
├── recce_cloud/ # Lightweight cloud package
|
|
22
|
-
│ ├── VERSION # Synced from recce/VERSION during build
|
|
23
|
-
│ ├── __init__.py # Reads VERSION with fallback
|
|
24
|
-
│ └── ...
|
|
25
|
-
├── setup.py # Build config for 'recce' package
|
|
26
|
-
├── setup_cloud.py # Build config for 'recce-cloud' package
|
|
27
|
-
├── pyproject.toml # Modern Python build system config
|
|
28
|
-
└── Makefile # Build automation
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
## Version Management
|
|
32
|
-
|
|
33
|
-
### Single Source of Truth
|
|
34
|
-
|
|
35
|
-
All version information comes from `recce/VERSION`:
|
|
36
|
-
|
|
37
|
-
```
|
|
38
|
-
1.24.0
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
### How Versioning Works
|
|
42
|
-
|
|
43
|
-
1. **Build time**: `setup.py` and `setup_cloud.py` read `recce/VERSION`
|
|
44
|
-
2. **Build process**: `make build-cloud` copies `recce/VERSION` to `recce_cloud/VERSION`
|
|
45
|
-
3. **Runtime**: `recce_cloud/__init__.py` reads VERSION with fallback logic:
|
|
46
|
-
- First tries `recce_cloud/VERSION` (for installed package)
|
|
47
|
-
- Falls back to `../recce/VERSION` (for development)
|
|
48
|
-
|
|
49
|
-
### Updating Version
|
|
50
|
-
|
|
51
|
-
To release a new version:
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
# 1. Update the version file
|
|
55
|
-
echo "1.25.0" > recce/VERSION
|
|
56
|
-
|
|
57
|
-
# 2. Commit the change
|
|
58
|
-
git add recce/VERSION
|
|
59
|
-
git commit -m "chore: bump version to 1.25.0"
|
|
60
|
-
|
|
61
|
-
# 3. Tag the release
|
|
62
|
-
git tag v1.25.0
|
|
63
|
-
git push && git push --tags
|
|
64
|
-
```
|
|
65
|
-
|
|
66
|
-
## Development Workflow
|
|
67
|
-
|
|
68
|
-
### Installing for Development
|
|
69
|
-
|
|
70
|
-
**Install recce (full package):**
|
|
71
|
-
```bash
|
|
72
|
-
make install-dev
|
|
73
|
-
# OR
|
|
74
|
-
pip install -e .[dev]
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
**Install recce-cloud (lightweight package):**
|
|
78
|
-
```bash
|
|
79
|
-
make install-cloud-dev
|
|
80
|
-
# OR
|
|
81
|
-
cd /path/to/recce
|
|
82
|
-
python setup_cloud.py develop
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
**Install both packages:**
|
|
86
|
-
```bash
|
|
87
|
-
make install-dev
|
|
88
|
-
make install-cloud-dev
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
### Running Tests
|
|
92
|
-
|
|
93
|
-
```bash
|
|
94
|
-
# Test recce
|
|
95
|
-
make test
|
|
96
|
-
|
|
97
|
-
# Test recce-cloud
|
|
98
|
-
pytest tests/recce_cloud/
|
|
99
|
-
|
|
100
|
-
# Test with coverage
|
|
101
|
-
make test-coverage
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
### Code Quality
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
# Format code (both packages)
|
|
108
|
-
make format
|
|
109
|
-
make format-cloud
|
|
110
|
-
|
|
111
|
-
# Check code quality (both packages)
|
|
112
|
-
make check
|
|
113
|
-
make check-cloud
|
|
114
|
-
|
|
115
|
-
# Lint (both packages)
|
|
116
|
-
make flake8
|
|
117
|
-
make flake8-cloud
|
|
118
|
-
```
|
|
119
|
-
|
|
120
|
-
## Build Process
|
|
121
|
-
|
|
122
|
-
### Building Packages
|
|
123
|
-
|
|
124
|
-
**Build recce only:**
|
|
125
|
-
```bash
|
|
126
|
-
make build
|
|
127
|
-
```
|
|
128
|
-
This will:
|
|
129
|
-
1. Clean build artifacts
|
|
130
|
-
2. Build frontend (pnpm install + pnpm build)
|
|
131
|
-
3. Build Python package (python setup.py sdist bdist_wheel)
|
|
132
|
-
|
|
133
|
-
**Build recce-cloud only:**
|
|
134
|
-
```bash
|
|
135
|
-
make build-cloud
|
|
136
|
-
```
|
|
137
|
-
This will:
|
|
138
|
-
1. Clean build artifacts
|
|
139
|
-
2. Sync VERSION file to recce_cloud/
|
|
140
|
-
3. Build Python package (python setup_cloud.py sdist bdist_wheel)
|
|
141
|
-
|
|
142
|
-
**Build both packages:**
|
|
143
|
-
```bash
|
|
144
|
-
make build-all
|
|
145
|
-
```
|
|
146
|
-
This will:
|
|
147
|
-
1. Clean build artifacts
|
|
148
|
-
2. Build frontend
|
|
149
|
-
3. Build both recce and recce-cloud packages
|
|
150
|
-
|
|
151
|
-
**Build frontend only:**
|
|
152
|
-
```bash
|
|
153
|
-
make build-frontend
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
**Clean build artifacts:**
|
|
157
|
-
```bash
|
|
158
|
-
make clean-build
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
This creates packages in `dist/`:
|
|
162
|
-
- `recce-1.24.0.tar.gz` (source distribution)
|
|
163
|
-
- `recce-1.24.0-py3-none-any.whl` (wheel)
|
|
164
|
-
- `recce-cloud-1.24.0.tar.gz` (source distribution)
|
|
165
|
-
- `recce_cloud-1.24.0-py3-none-any.whl` (wheel)
|
|
166
|
-
|
|
167
|
-
## Publishing to PyPI
|
|
168
|
-
|
|
169
|
-
### Prerequisites
|
|
170
|
-
|
|
171
|
-
1. Install publishing tools:
|
|
172
|
-
```bash
|
|
173
|
-
pip install twine
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
2. Configure PyPI credentials:
|
|
177
|
-
```bash
|
|
178
|
-
# Create ~/.pypirc with:
|
|
179
|
-
[pypi]
|
|
180
|
-
username = __token__
|
|
181
|
-
password = pypi-<your-token>
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
### Publishing Workflow
|
|
185
|
-
|
|
186
|
-
**1. Build both packages:**
|
|
187
|
-
```bash
|
|
188
|
-
make build-all
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
**2. Check packages:**
|
|
192
|
-
```bash
|
|
193
|
-
twine check dist/*
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
**3. Upload to TestPyPI (optional):**
|
|
197
|
-
```bash
|
|
198
|
-
twine upload --repository testpypi dist/*
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
**4. Upload to PyPI:**
|
|
202
|
-
```bash
|
|
203
|
-
# Upload recce-cloud first
|
|
204
|
-
twine upload dist/recce-cloud-*
|
|
205
|
-
|
|
206
|
-
# Then upload recce
|
|
207
|
-
twine upload dist/recce-*
|
|
208
|
-
```
|
|
209
|
-
|
|
210
|
-
**Note:** Always publish `recce-cloud` before `recce` to ensure the dependency is available.
|
|
211
|
-
|
|
212
|
-
### Future: Add recce → recce-cloud Dependency
|
|
213
|
-
|
|
214
|
-
When ready, update `setup.py`:
|
|
215
|
-
|
|
216
|
-
```python
|
|
217
|
-
install_requires=[
|
|
218
|
-
"recce-cloud", # Add this line
|
|
219
|
-
"boto3",
|
|
220
|
-
# ... other deps
|
|
221
|
-
]
|
|
222
|
-
```
|
|
223
|
-
|
|
224
|
-
This makes `pip install recce` automatically install `recce-cloud`.
|
|
225
|
-
|
|
226
|
-
## Installation Scenarios
|
|
227
|
-
|
|
228
|
-
### Scenario 1: Lightweight (CI/CD)
|
|
229
|
-
|
|
230
|
-
```bash
|
|
231
|
-
pip install recce-cloud
|
|
232
|
-
```
|
|
233
|
-
|
|
234
|
-
**Result:**
|
|
235
|
-
- Only `recce-cloud` installed
|
|
236
|
-
- 3 dependencies (click, requests, rich)
|
|
237
|
-
- ~5MB installed size
|
|
238
|
-
- Only `recce-cloud` command available
|
|
239
|
-
|
|
240
|
-
### Scenario 2: Full (Development)
|
|
241
|
-
|
|
242
|
-
```bash
|
|
243
|
-
pip install recce
|
|
244
|
-
```
|
|
245
|
-
|
|
246
|
-
**Result:**
|
|
247
|
-
- Only `recce` installed (currently)
|
|
248
|
-
- 20+ dependencies
|
|
249
|
-
- ~50MB+ installed size
|
|
250
|
-
- Only `recce` command available
|
|
251
|
-
|
|
252
|
-
**Future (when dependency added):**
|
|
253
|
-
- Both `recce` and `recce-cloud` installed
|
|
254
|
-
- `recce-cloud` downloaded automatically from PyPI
|
|
255
|
-
- Both commands available
|
|
256
|
-
|
|
257
|
-
## Troubleshooting
|
|
258
|
-
|
|
259
|
-
### VERSION file not found
|
|
260
|
-
|
|
261
|
-
**Error:**
|
|
262
|
-
```
|
|
263
|
-
FileNotFoundError: [Errno 2] No such file or directory: 'VERSION'
|
|
264
|
-
```
|
|
265
|
-
|
|
266
|
-
**Solution:**
|
|
267
|
-
Ensure you're running build commands from the repository root, or use Makefile targets.
|
|
268
|
-
|
|
269
|
-
### recce-cloud command not found after install
|
|
270
|
-
|
|
271
|
-
**Cause:** Package not installed correctly or not in PATH
|
|
272
|
-
|
|
273
|
-
**Solution:**
|
|
274
|
-
```bash
|
|
275
|
-
# Verify installation
|
|
276
|
-
pip show recce-cloud
|
|
277
|
-
|
|
278
|
-
# Check entry point
|
|
279
|
-
pip show -f recce-cloud | grep recce-cloud
|
|
280
|
-
|
|
281
|
-
# Reinstall
|
|
282
|
-
pip uninstall recce-cloud
|
|
283
|
-
pip install recce-cloud
|
|
284
|
-
```
|
|
285
|
-
|
|
286
|
-
### Development install doesn't work
|
|
287
|
-
|
|
288
|
-
**Issue:** `python setup_cloud.py develop` fails with path errors
|
|
289
|
-
|
|
290
|
-
**Solution:**
|
|
291
|
-
Run from repository root:
|
|
292
|
-
```bash
|
|
293
|
-
cd /path/to/recce
|
|
294
|
-
python setup_cloud.py develop
|
|
295
|
-
```
|
|
296
|
-
|
|
297
|
-
Or use Makefile:
|
|
298
|
-
```bash
|
|
299
|
-
make install-cloud-dev
|
|
300
|
-
```
|
|
301
|
-
|
|
302
|
-
## Reference
|
|
303
|
-
|
|
304
|
-
### Makefile Targets
|
|
305
|
-
|
|
306
|
-
| Command | Description |
|
|
307
|
-
|---------|-------------|
|
|
308
|
-
| `make install` | Install recce package |
|
|
309
|
-
| `make install-dev` | Install recce with dev dependencies |
|
|
310
|
-
| `make install-cloud` | Install recce-cloud package |
|
|
311
|
-
| `make install-cloud-dev` | Install recce-cloud in development mode |
|
|
312
|
-
| `make build` | Build recce package |
|
|
313
|
-
| `make build-cloud` | Build recce-cloud package |
|
|
314
|
-
| `make build-all` | Build both packages |
|
|
315
|
-
| `make clean-build` | Clean build artifacts |
|
|
316
|
-
| `make test` | Run tests |
|
|
317
|
-
| `make format` | Format code (recce) |
|
|
318
|
-
| `make format-cloud` | Format code (recce-cloud) |
|
|
319
|
-
| `make check` | Check code quality (recce) |
|
|
320
|
-
| `make check-cloud` | Check code quality (recce-cloud) |
|
|
321
|
-
|
|
322
|
-
### Package Dependencies
|
|
323
|
-
|
|
324
|
-
**recce-cloud:**
|
|
325
|
-
- `click>=7.1`
|
|
326
|
-
- `requests>=2.28.1`
|
|
327
|
-
- `rich>=12.0.0`
|
|
328
|
-
|
|
329
|
-
**recce:**
|
|
330
|
-
- All recce-cloud dependencies (when dependency added)
|
|
331
|
-
- Plus: boto3, fastapi, uvicorn, pydantic, dbt, etc.
|
|
332
|
-
|
|
333
|
-
## Best Practices
|
|
334
|
-
|
|
335
|
-
1. **Always build both packages together** using `make build-all`
|
|
336
|
-
2. **Test installation** in a clean virtual environment before publishing
|
|
337
|
-
3. **Publish recce-cloud first** to ensure dependency is available
|
|
338
|
-
4. **Use Makefile targets** for consistent builds
|
|
339
|
-
5. **Keep VERSION in sync** by only editing `recce/VERSION`
|
|
340
|
-
6. **Run tests** before publishing: `make test && pytest tests/recce_cloud/`
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Please check the [Recce documentation](https://datarecce.io/docs/)
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
name: "jaffle_shop"
|
|
2
|
-
|
|
3
|
-
config-version: 2
|
|
4
|
-
version: "0.1"
|
|
5
|
-
|
|
6
|
-
profile: "jaffle_shop"
|
|
7
|
-
|
|
8
|
-
model-paths: ["models"]
|
|
9
|
-
seed-paths: ["seeds"]
|
|
10
|
-
test-paths: ["tests"]
|
|
11
|
-
analysis-paths: ["analysis"]
|
|
12
|
-
macro-paths: ["macros"]
|
|
13
|
-
|
|
14
|
-
target-path: "target"
|
|
15
|
-
clean-targets:
|
|
16
|
-
- "target"
|
|
17
|
-
- "dbt_modules"
|
|
18
|
-
- "logs"
|
|
19
|
-
|
|
20
|
-
require-dbt-version: [">=1.0.0", "<2.0.0"]
|
|
21
|
-
|
|
22
|
-
models:
|
|
23
|
-
jaffle_shop:
|
|
24
|
-
materialized: table
|
|
25
|
-
staging:
|
|
26
|
-
materialized: view
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
with customers as (
|
|
2
|
-
|
|
3
|
-
select * from {{ ref('stg_customers') }}
|
|
4
|
-
|
|
5
|
-
),
|
|
6
|
-
|
|
7
|
-
orders as (
|
|
8
|
-
|
|
9
|
-
select * from {{ ref('stg_orders') }}
|
|
10
|
-
|
|
11
|
-
),
|
|
12
|
-
|
|
13
|
-
payments as (
|
|
14
|
-
|
|
15
|
-
select * from {{ ref('stg_payments') }}
|
|
16
|
-
|
|
17
|
-
),
|
|
18
|
-
|
|
19
|
-
customer_orders as (
|
|
20
|
-
|
|
21
|
-
select
|
|
22
|
-
customer_id,
|
|
23
|
-
|
|
24
|
-
min(order_date) as first_order,
|
|
25
|
-
max(order_date) as most_recent_order,
|
|
26
|
-
count(order_id) as number_of_orders
|
|
27
|
-
from orders
|
|
28
|
-
|
|
29
|
-
group by customer_id
|
|
30
|
-
|
|
31
|
-
),
|
|
32
|
-
|
|
33
|
-
customer_payments as (
|
|
34
|
-
|
|
35
|
-
select
|
|
36
|
-
orders.customer_id,
|
|
37
|
-
sum(amount) as total_amount
|
|
38
|
-
|
|
39
|
-
from payments
|
|
40
|
-
|
|
41
|
-
left join orders on
|
|
42
|
-
payments.order_id = orders.order_id
|
|
43
|
-
|
|
44
|
-
group by orders.customer_id
|
|
45
|
-
|
|
46
|
-
),
|
|
47
|
-
|
|
48
|
-
final as (
|
|
49
|
-
|
|
50
|
-
select
|
|
51
|
-
customers.customer_id,
|
|
52
|
-
customers.first_name,
|
|
53
|
-
customers.last_name,
|
|
54
|
-
customer_orders.first_order,
|
|
55
|
-
customer_orders.most_recent_order,
|
|
56
|
-
customer_orders.number_of_orders,
|
|
57
|
-
customer_payments.total_amount as customer_lifetime_value
|
|
58
|
-
|
|
59
|
-
from customers
|
|
60
|
-
|
|
61
|
-
left join customer_orders
|
|
62
|
-
on customers.customer_id = customer_orders.customer_id
|
|
63
|
-
|
|
64
|
-
left join customer_payments
|
|
65
|
-
on customers.customer_id = customer_payments.customer_id
|
|
66
|
-
|
|
67
|
-
)
|
|
68
|
-
|
|
69
|
-
select * from final
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
{% docs orders_status %}
|
|
2
|
-
|
|
3
|
-
Orders can be one of the following statuses:
|
|
4
|
-
|
|
5
|
-
| status | description |
|
|
6
|
-
|----------------|------------------------------------------------------------------------------------------------------------------------|
|
|
7
|
-
| placed | The order has been placed but has not yet left the warehouse |
|
|
8
|
-
| shipped | The order has ben shipped to the customer and is currently in transit |
|
|
9
|
-
| completed | The order has been received by the customer |
|
|
10
|
-
| return_pending | The customer has indicated that they would like to return the order, but it has not yet been received at the warehouse |
|
|
11
|
-
| returned | The order has been returned by the customer and received at the warehouse |
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
{% enddocs %}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
{% set payment_methods = ['credit_card', 'coupon', 'bank_transfer', 'gift_card'] %}
|
|
2
|
-
|
|
3
|
-
with orders as (
|
|
4
|
-
|
|
5
|
-
select * from {{ ref('stg_orders') }}
|
|
6
|
-
|
|
7
|
-
),
|
|
8
|
-
|
|
9
|
-
payments as (
|
|
10
|
-
|
|
11
|
-
select * from {{ ref('stg_payments') }}
|
|
12
|
-
|
|
13
|
-
),
|
|
14
|
-
|
|
15
|
-
order_payments as (
|
|
16
|
-
|
|
17
|
-
select
|
|
18
|
-
order_id,
|
|
19
|
-
|
|
20
|
-
{% for payment_method in payment_methods -%}
|
|
21
|
-
sum(case when payment_method = '{{ payment_method }}' then amount else 0 end) as {{ payment_method }}_amount,
|
|
22
|
-
{% endfor -%}
|
|
23
|
-
|
|
24
|
-
sum(amount) as total_amount
|
|
25
|
-
|
|
26
|
-
from payments
|
|
27
|
-
|
|
28
|
-
group by order_id
|
|
29
|
-
|
|
30
|
-
),
|
|
31
|
-
|
|
32
|
-
final as (
|
|
33
|
-
|
|
34
|
-
select
|
|
35
|
-
orders.order_id,
|
|
36
|
-
orders.customer_id,
|
|
37
|
-
orders.order_date,
|
|
38
|
-
orders.status,
|
|
39
|
-
|
|
40
|
-
{% for payment_method in payment_methods -%}
|
|
41
|
-
|
|
42
|
-
order_payments.{{ payment_method }}_amount,
|
|
43
|
-
|
|
44
|
-
{% endfor -%}
|
|
45
|
-
|
|
46
|
-
order_payments.total_amount as amount
|
|
47
|
-
|
|
48
|
-
from orders
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
left join order_payments
|
|
52
|
-
on orders.order_id = order_payments.order_id
|
|
53
|
-
|
|
54
|
-
)
|
|
55
|
-
|
|
56
|
-
select * from final
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
version: 2
|
|
2
|
-
|
|
3
|
-
models:
|
|
4
|
-
- name: customers
|
|
5
|
-
description: This table has basic information about a customer, as well as some derived facts based on a customer's orders
|
|
6
|
-
|
|
7
|
-
columns:
|
|
8
|
-
- name: customer_id
|
|
9
|
-
description: This is a unique identifier for a customer
|
|
10
|
-
data_tests:
|
|
11
|
-
- unique
|
|
12
|
-
- not_null
|
|
13
|
-
|
|
14
|
-
- name: first_name
|
|
15
|
-
description: Customer's first name. PII.
|
|
16
|
-
|
|
17
|
-
- name: last_name
|
|
18
|
-
description: Customer's last name. PII.
|
|
19
|
-
|
|
20
|
-
- name: first_order
|
|
21
|
-
description: Date (UTC) of a customer's first order
|
|
22
|
-
|
|
23
|
-
- name: most_recent_order
|
|
24
|
-
description: Date (UTC) of a customer's most recent order
|
|
25
|
-
|
|
26
|
-
- name: number_of_orders
|
|
27
|
-
description: Count of the number of orders a customer has placed
|
|
28
|
-
|
|
29
|
-
- name: total_order_amount
|
|
30
|
-
description: Total value (AUD) of a customer's orders
|
|
31
|
-
|
|
32
|
-
- name: orders
|
|
33
|
-
description: This table has basic information about orders, as well as some derived facts based on payments
|
|
34
|
-
|
|
35
|
-
columns:
|
|
36
|
-
- name: order_id
|
|
37
|
-
data_tests:
|
|
38
|
-
- unique
|
|
39
|
-
- not_null
|
|
40
|
-
description: This is a unique identifier for an order
|
|
41
|
-
|
|
42
|
-
- name: customer_id
|
|
43
|
-
description: Foreign key to the customers table
|
|
44
|
-
data_tests:
|
|
45
|
-
- not_null
|
|
46
|
-
- relationships:
|
|
47
|
-
to: ref('customers')
|
|
48
|
-
field: customer_id
|
|
49
|
-
|
|
50
|
-
- name: order_date
|
|
51
|
-
description: Date (UTC) that the order was placed
|
|
52
|
-
|
|
53
|
-
- name: status
|
|
54
|
-
description: '{{ doc("orders_status") }}'
|
|
55
|
-
data_tests:
|
|
56
|
-
- accepted_values:
|
|
57
|
-
values: ['placed', 'shipped', 'completed', 'return_pending', 'returned']
|
|
58
|
-
|
|
59
|
-
- name: amount
|
|
60
|
-
description: Total amount (AUD) of the order
|
|
61
|
-
data_tests:
|
|
62
|
-
- not_null
|
|
63
|
-
|
|
64
|
-
- name: credit_card_amount
|
|
65
|
-
description: Amount of the order (AUD) paid for by credit card
|
|
66
|
-
data_tests:
|
|
67
|
-
- not_null
|
|
68
|
-
|
|
69
|
-
- name: coupon_amount
|
|
70
|
-
description: Amount of the order (AUD) paid for by coupon
|
|
71
|
-
data_tests:
|
|
72
|
-
- not_null
|
|
73
|
-
|
|
74
|
-
- name: bank_transfer_amount
|
|
75
|
-
description: Amount of the order (AUD) paid for by bank transfer
|
|
76
|
-
data_tests:
|
|
77
|
-
- not_null
|
|
78
|
-
|
|
79
|
-
- name: gift_card_amount
|
|
80
|
-
description: Amount of the order (AUD) paid for by gift card
|
|
81
|
-
data_tests:
|
|
82
|
-
- not_null
|