react-semaphor 0.1.514 → 0.1.516
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analytics-protocol/index.cjs +1 -1
- package/dist/analytics-protocol/index.js +226 -225
- package/dist/brand-studio/index.cjs +1 -1
- package/dist/brand-studio/index.js +4 -4
- package/dist/briefings/index.cjs +1 -1
- package/dist/briefings/index.js +8 -8
- package/dist/chunks/{calculated-field-identity-BiTGmnST.cjs → calculated-field-identity-5bg9oHTw.cjs} +1 -1
- package/dist/chunks/{calculated-field-identity-DnRd4YIY.js → calculated-field-identity-DzJBs2J8.js} +4 -4
- package/dist/chunks/{card-config-utils-B2cDWQqB.js → card-config-utils-Cxnq2R6z.js} +14 -14
- package/dist/chunks/{card-config-utils-CMO4_zVs.cjs → card-config-utils-z86y6tSq.cjs} +1 -1
- package/dist/chunks/column-bands-CU0byntA.cjs +1 -0
- package/dist/chunks/column-bands-RdM-kjDe.js +47 -0
- package/dist/chunks/{dashboard-briefing-launcher-e3s3MuSs.js → dashboard-briefing-launcher-BCEHJ_eD.js} +15 -12
- package/dist/chunks/{dashboard-briefing-launcher-BzPD50QD.cjs → dashboard-briefing-launcher-CjZ4aE34.cjs} +2 -2
- package/dist/chunks/{dashboard-controls-DAOABnks.js → dashboard-controls-DFfit5KH.js} +12 -12
- package/dist/chunks/{dashboard-controls-DQBfOqmC.cjs → dashboard-controls-f9aJ70Zu.cjs} +1 -1
- package/dist/chunks/{dashboard-date-comparison-definition-D7Bl-YAl.js → dashboard-date-comparison-definition-BqNhECUr.js} +6 -6
- package/dist/chunks/{dashboard-date-comparison-definition-C_w-GO_5.cjs → dashboard-date-comparison-definition-Y6JZwpcr.cjs} +1 -1
- package/dist/chunks/{dashboard-json-S5Eq2GAg.js → dashboard-json-DVtcA02f.js} +7 -7
- package/dist/chunks/{dashboard-json-1jZycd5h.cjs → dashboard-json-deqQC-UR.cjs} +1 -1
- package/dist/chunks/edit-dashboard-visual-DK6lSC_p.cjs +172 -0
- package/dist/chunks/{edit-dashboard-visual-Bkm0ciHG.js → edit-dashboard-visual-lJ6rDH3w.js} +4553 -4542
- package/dist/chunks/{editor-action-buttons-Bvv16QA-.js → editor-action-buttons-Bnxxa439.js} +7 -7
- package/dist/chunks/{editor-action-buttons-B2NCSsDw.cjs → editor-action-buttons-CmDaQbPN.cjs} +1 -1
- package/dist/chunks/{field-aggregations-CzuQKtqx.js → field-aggregations-Dl2A3rbV.js} +461 -358
- package/dist/chunks/field-aggregations-pH_3kymD.cjs +1 -0
- package/dist/chunks/{field-dependencies-DIab72rQ.cjs → field-dependencies-EB485TdB.cjs} +1 -1
- package/dist/chunks/{field-dependencies-DXW4jtvJ.js → field-dependencies-v-lJNzC7.js} +1 -1
- package/dist/chunks/{index-nhUr9xBz.js → index-BVVl2JDK.js} +57955 -54696
- package/dist/chunks/{index-CACdoqu3.js → index-C8w91oj4.js} +61 -51
- package/dist/chunks/index-Cw2ypaFl.cjs +1 -0
- package/dist/chunks/index-DfqMtR9S.cjs +4 -0
- package/dist/chunks/index-UNKSfi7s.cjs +1434 -0
- package/dist/chunks/{index-CnGVjyF8.js → index-ylOpKRDu.js} +877 -849
- package/dist/chunks/{matrix-analytical-definition-Ct5Tu8np.cjs → matrix-analytical-definition-BWd159lN.cjs} +1 -1
- package/dist/chunks/{matrix-analytical-definition-BDAK2aEi.js → matrix-analytical-definition-BimC4XIV.js} +1 -1
- package/dist/chunks/{matrix-card-U4c72doZ.cjs → matrix-card-C2RjEYZ8.cjs} +1 -1
- package/dist/chunks/{matrix-card-DOIeTmjh.js → matrix-card-CIlz0Dnp.js} +2 -2
- package/dist/chunks/{matrix-control-sources-FjxGIbqk.cjs → matrix-control-sources-BvEJF7d3.cjs} +1 -1
- package/dist/chunks/{matrix-control-sources-BxKH2yu2.js → matrix-control-sources-KbZe1gj_.js} +51 -51
- package/dist/chunks/{matrix-definition-CBJW_4ii.cjs → matrix-definition-DanUT11P.cjs} +1 -1
- package/dist/chunks/{matrix-definition-I9rHB9zN.js → matrix-definition-E5gXXSTZ.js} +1 -1
- package/dist/chunks/matrix-formatter-BJTO8ky9.cjs +1 -0
- package/dist/chunks/matrix-formatter-CCXNRt3s.js +341 -0
- package/dist/chunks/{matrix-member-presentation-DO1VSqfh.js → matrix-member-presentation-Bw7-JCrr.js} +64 -64
- package/dist/chunks/matrix-member-presentation-DvXDEo0U.cjs +1 -0
- package/dist/chunks/{matrix-operation-contract-DoiWTUbT.cjs → matrix-operation-contract-0RxoU_M3.cjs} +1 -1
- package/dist/chunks/{matrix-operation-contract-D0HfzwZg.js → matrix-operation-contract-D32U2CSw.js} +19 -19
- package/dist/chunks/{metric-comparison-Dqc7_tnW.js → metric-comparison-BphoJ9bq.js} +1 -1
- package/dist/chunks/{metric-comparison-DBQ3EJTz.cjs → metric-comparison-CUmltzpz.cjs} +1 -1
- package/dist/chunks/pivot-header-presentation-BSZhB1g-.js +661 -0
- package/dist/chunks/pivot-header-presentation-EoUS5ze5.cjs +5 -0
- package/dist/chunks/{pivot-result-identity-8M-bZrw9.js → pivot-result-identity-BzUQiCEV.js} +4 -4
- package/dist/chunks/{pivot-result-identity-uTiylUNr.cjs → pivot-result-identity-gquWljbd.cjs} +1 -1
- package/dist/chunks/pivot-result-lifecycle-gl9cBfB-.cjs +1 -0
- package/dist/chunks/{pivot-result-lifecycle-BeOpjAhg.js → pivot-result-lifecycle-kRhiJkzg.js} +208 -149
- package/dist/chunks/{raw-temporal-DrmCX9Wq.js → raw-temporal-BqOfk-xN.js} +471 -361
- package/dist/chunks/{raw-temporal-contract-CFLGwTiI.js → raw-temporal-contract-BQZIJ1fn.js} +1 -1
- package/dist/chunks/{raw-temporal-contract-DECbTuzA.cjs → raw-temporal-contract-CklMVG_1.cjs} +1 -1
- package/dist/chunks/raw-temporal-eJXecCyJ.cjs +1 -0
- package/dist/chunks/{report-preferences-dialog-B2fzQH1T.js → report-preferences-dialog-CHXPEl7v.js} +6 -6
- package/dist/chunks/{report-preferences-dialog-DcLkVqni.cjs → report-preferences-dialog-Cto0vDwI.cjs} +1 -1
- package/dist/chunks/{report-runtime-context-Cs65Mrxj.js → report-runtime-context-CxIoGyNM.js} +1 -1
- package/dist/chunks/{report-runtime-context-DzvHBPxl.cjs → report-runtime-context-CzSrCBsu.cjs} +1 -1
- package/dist/chunks/{selection-reducer-BIiQXbGM.js → selection-reducer-CvCBQbl2.js} +1 -1
- package/dist/chunks/{selection-reducer-CGKKsaPa.cjs → selection-reducer-Kl22OzIk.cjs} +1 -1
- package/dist/chunks/{semantic-format-BZxJLKvw.js → semantic-format-DwqGYx4V.js} +25 -31
- package/dist/chunks/semantic-format-mVI32OJH.cjs +1 -0
- package/dist/chunks/{source-entity-resolution-D7vnmDwm.js → source-entity-resolution-Bzefiive.js} +7 -7
- package/dist/chunks/{source-entity-resolution-CjbgnwyX.cjs → source-entity-resolution-R46X34SE.cjs} +1 -1
- package/dist/chunks/switch-DNbWXEOP.cjs +134 -0
- package/dist/chunks/{switch-QfKb0Iwe.js → switch-DNv-hVmt.js} +8260 -7659
- package/dist/chunks/{temporal-bucket-B9hMwemw.js → temporal-bucket-DlFuhCnT.js} +6 -6
- package/dist/chunks/{temporal-bucket-contract-IWDgyTMw.js → temporal-bucket-contract-DTLDRzgV.js} +1 -1
- package/dist/chunks/{temporal-bucket-contract-ZctiyXYk.cjs → temporal-bucket-contract-nTv6gvX5.cjs} +1 -1
- package/dist/chunks/{token-types-Dl0hcKBX.js → token-types-BC6RcUY8.js} +1 -1
- package/dist/chunks/{token-types-Ahh5u4iT.cjs → token-types-aWrzwonf.cjs} +1 -1
- package/dist/chunks/{update-policy-COjFudhl.cjs → update-policy-DRDLWe7Y.cjs} +1 -1
- package/dist/chunks/{update-policy-BeQqjupC.js → update-policy-DhAUtiC8.js} +2 -2
- package/dist/chunks/{validators-CkHsAvwB.js → validators-CsdOtZI6.js} +411 -397
- package/dist/chunks/validators-DFeDcdpA.cjs +1 -0
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/dashboard-authoring/index.cjs +3 -3
- package/dist/dashboard-authoring/index.js +233 -227
- package/dist/data-app-builder/index.cjs +1 -1
- package/dist/data-app-builder/index.js +3 -3
- package/dist/data-app-codegen/index.cjs +1 -1
- package/dist/data-app-codegen/index.js +2 -2
- package/dist/data-app-codegen-node/index.cjs +1 -1
- package/dist/data-app-codegen-node/index.js +3 -3
- package/dist/data-app-sdk/index.cjs +1 -1
- package/dist/data-app-sdk/index.js +5 -5
- package/dist/data-app-sdk-adapters/index.cjs +1 -1
- package/dist/data-app-sdk-adapters/index.js +2 -2
- package/dist/data-app-sdk-validation/index.cjs +1 -1
- package/dist/data-app-sdk-validation/index.js +5 -5
- package/dist/format-utils/index.cjs +3 -3
- package/dist/format-utils/index.js +291 -397
- package/dist/index.cjs +1 -1
- package/dist/index.js +15 -15
- package/dist/pdf-table-layout/index.cjs +1 -0
- package/dist/pdf-table-layout/index.js +993 -0
- package/dist/report-runtime-context/index.cjs +1 -1
- package/dist/report-runtime-context/index.js +2 -2
- package/dist/style.css +1 -1
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/briefings/index.d.ts +1 -1
- package/dist/types/components/document-sheet/document-input-bar.d.ts +1 -3
- package/dist/types/components/document-sheet/document-insert-picker.d.ts +37 -0
- package/dist/types/components/document-sheet/document-kpi-section.d.ts +17 -0
- package/dist/types/components/document-sheet/document-matrix-layout-context.d.ts +10 -0
- package/dist/types/components/document-sheet/document-matrix-section.d.ts +27 -0
- package/dist/types/components/document-sheet/document-measure-layer.d.ts +45 -0
- package/dist/types/components/document-sheet/document-outline.d.ts +7 -1
- package/dist/types/components/document-sheet/document-page-navigation.d.ts +22 -0
- package/dist/types/components/document-sheet/document-page.d.ts +9 -5
- package/dist/types/components/document-sheet/document-panel/document-side-panel.d.ts +36 -0
- package/dist/types/components/document-sheet/document-panel/inputs-panel.d.ts +9 -0
- package/dist/types/components/document-sheet/document-panel/page-panel.d.ts +5 -0
- package/dist/types/components/document-sheet/document-panel/panel-controls.d.ts +14 -0
- package/dist/types/components/document-sheet/document-panel/region-panels.d.ts +11 -0
- package/dist/types/components/document-sheet/document-panel/section-panel.d.ts +25 -0
- package/dist/types/components/document-sheet/document-section-print-boundary.d.ts +9 -0
- package/dist/types/components/document-sheet/document-table-chrome.d.ts +22 -0
- package/dist/types/components/document-sheet/document-table-section.d.ts +3 -7
- package/dist/types/components/document-sheet/document-text-preview-context.d.ts +8 -0
- package/dist/types/components/document-sheet/use-first-fitting-variant.d.ts +18 -0
- package/dist/types/components/editor/editor-main/dashboard-variable-node.d.ts +12 -2
- package/dist/types/components/explorer/chart-configuration/matrix-authoring-controls.d.ts +7 -2
- package/dist/types/components/text-variables/variable-chip-plugin.d.ts +23 -0
- package/dist/types/components/text-variables/variable-chip.d.ts +18 -0
- package/dist/types/components/text-variables/variable-picker.d.ts +27 -0
- package/dist/types/components/visual/aggregated-table/utils/metric-format-resolver.d.ts +3 -3
- package/dist/types/components/visual/data-table/types/data-table.d.ts +4 -1
- package/dist/types/components/visual/pivot-table/utils/pivot-metric-formatting.d.ts +2 -2
- package/dist/types/components/visual/settings/table-presentation-settings.d.ts +27 -1
- package/dist/types/index.cjs +1 -1
- package/dist/types/index.js +5 -5
- package/dist/types/lib/dashboard-inputs/text-variable-options.d.ts +15 -0
- package/dist/types/lib/document/document-canvas-actions.d.ts +22 -0
- package/dist/types/lib/document/document-edits.d.ts +119 -0
- package/dist/types/lib/document/document-kpi-figure.d.ts +27 -0
- package/dist/types/lib/document/document-kpi-layout.d.ts +29 -0
- package/dist/types/lib/document/document-kpi-section-edits.d.ts +15 -0
- package/dist/types/lib/document/document-matrix-bands.d.ts +66 -0
- package/dist/types/lib/document/document-matrix-print.d.ts +11 -0
- package/dist/types/lib/document/document-pagination.d.ts +56 -3
- package/dist/types/lib/document/document-panel-target.d.ts +19 -0
- package/dist/types/lib/document/document-section-editor.d.ts +8 -7
- package/dist/types/lib/document/document-section-kinds.d.ts +49 -0
- package/dist/types/lib/document/document-section-query-options.d.ts +25 -0
- package/dist/types/lib/document/document-section-render-state.d.ts +26 -0
- package/dist/types/lib/document/document-section-utils.d.ts +11 -4
- package/dist/types/lib/document/document-table-dom.d.ts +4 -6
- package/dist/types/lib/document/document-table-pagination-model.d.ts +0 -5
- package/dist/types/lib/document/document-table-print-model.d.ts +4 -3
- package/dist/types/lib/document/document-table-style.d.ts +15 -4
- package/dist/types/lib/document/document-table-surface.d.ts +15 -0
- package/dist/types/lib/document/document-variables.d.ts +40 -6
- package/dist/types/lib/document/use-document-section-data.d.ts +39 -0
- package/dist/types/lib/document/use-measured-document-table-layout.d.ts +50 -0
- package/dist/types/lib/formatters/kpi-result-values.d.ts +20 -0
- package/dist/types/lib/formatters/metric-formatting.d.ts +3 -3
- package/dist/types/lib/hooks/query-context/use-dashboard-card-execution-snapshot.d.ts +8 -2
- package/dist/types/lib/hooks/use-dashboard-frame-query.d.ts +6 -0
- package/dist/types/lib/hooks/use-dashboard-kpi-actions.d.ts +1 -1
- package/dist/types/lib/hooks/use-document-section-editor.d.ts +2 -2
- package/dist/types/lib/hooks/use-document-section-session.d.ts +36 -0
- package/dist/types/lib/hooks/use-editor-preview.d.ts +17 -0
- package/dist/types/lib/hooks/use-is-editing-card.d.ts +7 -0
- package/dist/types/lib/matrix-table/matrix-card-adapter.d.ts +2 -0
- package/dist/types/lib/matrix-table/matrix-card-draft.d.ts +2 -0
- package/dist/types/lib/matrix-table/matrix-delivery.d.ts +4 -0
- package/dist/types/lib/matrix-table/matrix-layout-read.d.ts +68 -0
- package/dist/types/lib/query-context/build-dashboard-execution-snapshot.d.ts +8 -1
- package/dist/types/lib/query-context/build-dashboard-frame-base-query-contexts.d.ts +4 -2
- package/dist/types/lib/query-context/card-execution.d.ts +30 -0
- package/dist/types/lib/query-context/document-section-card-query.d.ts +37 -0
- package/dist/types/lib/stores/dashboard-store.d.ts +12 -8
- package/dist/types/lib/stores/editor-store.d.ts +2 -0
- package/dist/types/lib/table-formatting/table-presentation-fields.d.ts +1 -0
- package/dist/types/lib/text-variables/text-variable-types.d.ts +39 -0
- package/dist/types/lib/types/common-types.d.ts +34 -1
- package/dist/types/lib/utils/card-definition.d.ts +2 -0
- package/dist/types/lib/utils/card-utils.d.ts +13 -6
- package/dist/types/lib/utils/date-timezone-utils.d.ts +26 -4
- package/dist/types/pdf-table-layout.d.ts +2 -0
- package/dist/types/shared/analytics-protocol/index.d.ts +1 -1
- package/dist/types/shared/analytics-protocol/matrix-definition-contract.d.ts +45 -0
- package/dist/types/shared/analytics-protocol/matrix-member-presentation.d.ts +4 -0
- package/dist/types/shared/dashboard-authoring/document-section-cards.d.ts +56 -0
- package/dist/types/shared/dashboard-authoring/index.d.ts +1 -0
- package/dist/types/shared/dashboard-authoring/matrix-delivery.d.ts +36 -1
- package/dist/types/shared/format-utils/formatters/duration-formatter.d.ts +4 -1
- package/dist/types/shared/format-utils/formatters/index.d.ts +2 -2
- package/dist/types/shared/format-utils/formatters/matrix-formatter.d.ts +5 -0
- package/dist/types/shared/format-utils/formatters/number-formatter.d.ts +8 -2
- package/dist/types/shared/format-utils/index.d.ts +1 -0
- package/dist/types/shared/format-utils/matrix-export-presentation.d.ts +690 -1
- package/dist/types/shared/format-utils/matrix-print.d.ts +38 -0
- package/dist/types/shared/format-utils/pdf-table-layout/column-bands.d.ts +55 -0
- package/dist/types/shared/format-utils/pdf-table-layout/index.d.ts +6 -0
- package/dist/types/shared/format-utils/pdf-table-layout/page-size.d.ts +7 -0
- package/dist/types/shared/format-utils/pdf-table-layout/table-column-semantics.d.ts +106 -0
- package/dist/types/shared/format-utils/pdf-table-layout/table-column-widths.d.ts +13 -0
- package/dist/types/shared/format-utils/pdf-table-layout/table-page-geometry.d.ts +19 -0
- package/dist/types/shared/format-utils/pdf-table-layout/wide-table-layout.d.ts +46 -0
- package/dist/types/shared/format-utils/presentation-execution.d.ts +17 -2
- package/dist/types/shared/format-utils/table-structure.d.ts +9 -0
- package/dist/types/shared/format-utils/types/format-types.d.ts +16 -1
- package/package.json +6 -1
- package/dist/chunks/edit-dashboard-visual-BwJ2Eljw.cjs +0 -172
- package/dist/chunks/field-aggregations-jSi77h9Z.cjs +0 -1
- package/dist/chunks/index-DhlVxvyI.cjs +0 -4
- package/dist/chunks/index-DrOFJOCq.cjs +0 -1424
- package/dist/chunks/index-F25jnH0p.cjs +0 -1
- package/dist/chunks/matrix-formatter-BLunke3R.js +0 -424
- package/dist/chunks/matrix-formatter-CveLJo6S.cjs +0 -1
- package/dist/chunks/matrix-member-presentation-CFHjdrxT.cjs +0 -1
- package/dist/chunks/pivot-header-presentation-Cxz8-06f.cjs +0 -5
- package/dist/chunks/pivot-header-presentation-Dm9dUQsl.js +0 -415
- package/dist/chunks/pivot-result-lifecycle-BiERyXnS.cjs +0 -1
- package/dist/chunks/raw-temporal-BUeTpG76.cjs +0 -1
- package/dist/chunks/semantic-format-BzH69TRq.cjs +0 -1
- package/dist/chunks/switch--Re1K566.cjs +0 -134
- package/dist/chunks/validators-DVYAnnX0.cjs +0 -1
package/dist/chunks/{source-entity-resolution-CjbgnwyX.cjs → source-entity-resolution-R46X34SE.cjs}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const Z=require("./validators-DVYAnnX0.cjs");function y(e){const i=U(e);return i.length>0?i.join("."):void 0}function Q(e){const i=y(e.qualifiedName),t=(i==null?void 0:i.split("."))||[];if(t.length===0)return{};const a={};let s=t.length-1;for(let r=e.capabilities.prefixLevels.length-1;r>=0&&s>=0;r-=1,s-=1)ae(a,e.capabilities.prefixLevels[r],t[s]);return a}function E(e){return!e.left.tableName||!e.right.tableName?!1:e.capabilities.prefixLevels.every(i=>{const t=S(e.left,i),a=S(e.right,i);return!t||!a||t===a})}function ee(e){return e.capabilities.prefixLevels.every(i=>{const t=S(e.requested,i);return t?S(e.allowed,i)===t:!0})}function G(e,i={}){const t=F(e),a={connectionId:i.connectionId,connectionType:e,path:["database","schema","table"],labels:{database:"Database",schema:"Schema",table:"Table"},prefixLevels:["database","schema","table"],dialect:"postgres",supportsFilterClause:!0};return t.includes("postgres")?{...a,prefixLevels:["schema","table"],dialect:"postgres"}:t.includes("mysql")?{...a,prefixLevels:["database","table"],dialect:"mysql",supportsFilterClause:!1}:t.includes("mssql")||t.includes("sqlserver")?{...a,dialect:"mssql",supportsFilterClause:!1}:t.includes("redshift")?{...a,prefixLevels:["schema","table"],dialect:"redshift"}:t.includes("snowflake")?{...a,dialect:"snowflake"}:t.includes("clickhouse")?{connectionId:i.connectionId,connectionType:e,path:["database","table"],labels:{database:"Database",table:"Table"},prefixLevels:["database","table"],dialect:"clickhouse",supportsFilterClause:!1}:t==="s3"||t==="api"?{connectionId:i.connectionId,connectionType:e,path:["table"],labels:{table:t==="api"?"API Table":"File Table"},prefixLevels:["table"],dialect:"duckdb",supportsFilterClause:!0}:t==="googlesheets"||t==="fileupload"?{connectionId:i.connectionId,connectionType:e,path:["table"],labels:{table:"Table"},prefixLevels:["table"],dialect:"postgres",supportsFilterClause:!0}:t==="s3tables"?{...a,labels:{database:"Database",schema:"Namespace",table:"Table"},dialect:"duckdb"}:t==="bigquery"?{...a,labels:{database:"Project",schema:"Dataset",table:"Table"},prefixLevels:["schema","table"],dialect:"bigquery",supportsFilterClause:!1}:a}function v(e,i={}){return j(e)?G(e,i):void 0}function j(e){const i=F(e);if(i.includes("postgres"))return"postgres";if(i.includes("mysql"))return"mysql";if(i.includes("mssql")||i.includes("sqlserver"))return"mssql";if(i.includes("redshift"))return"redshift";if(i.includes("snowflake"))return"snowflake";if(i.includes("clickhouse"))return"clickhouse";if(i==="s3"||i==="api"||i==="googlesheets"||i==="fileupload"||i==="s3tables"||i==="bigquery")return i}function T(e){const i=F(e);switch(i){case"mysql":case"bigquery":case"redshift":case"snowflake":case"clickhouse":case"duckdb":case"sqlite":return i;case"mssql":case"sqlserver":return"mssql";case"postgres":case"postgresql":return"postgres";default:return"unknown"}}function ie(e){return e.capabilities.prefixLevels.every(i=>!!S(e.source,i))}function te(e){const i=e.quoteIdentifier??re;return e.capabilities.prefixLevels.map(t=>S(e.source,t)).filter(t=>!!t).map(t=>i(t,e.capabilities.dialect)).join(".")}function S(e,i){return i==="database"?e.databaseName:i==="schema"?e.schemaName:e.tableName}function ae(e,i,t){i==="database"?e.databaseName=t:i==="schema"?e.schemaName=t:e.tableName=t}const ne=[['"','"'],["`","`"],["[","]"]];function se(e){const i=e.trim();for(const[t,a]of ne)if(i.length>=2&&i.startsWith(t)&&i.endsWith(a))return i.slice(1,-1).split(a+a).join(a);return i}function U(e){const i=e==null?void 0:e.trim();if(!i)return[];const t=i.split(".").map(se);return t.some(a=>!a)?[]:t}function oe(e){const i=U(e??void 0);return i[i.length-1]||""}function re(e,i){return i==="mysql"||i==="bigquery"||i==="clickhouse"||i==="duckdb"?`\`${e.replace(/`/g,"``")}\``:i==="mssql"?`[${e.replace(/]/g,"]]")}]`:`"${e.replace(/"/g,'""')}"`}function F(e){if(typeof e!="string")return"";const i=[];for(const t of e.trim().toLowerCase())ce(t)&&i.push(t);return i.join("")}function ce(e){const i=e.charCodeAt(0);return i>=48&&i<=57||i>=97&&i<=122}function R(e){return e.prefixLevels.length===1&&e.prefixLevels[0]==="table"?["table"]:Array.from(new Set(["database",...e.prefixLevels]))}function le(e){const i=e.source.connectionType?v(e.source.connectionType):void 0,t=e.source.dialect?T(e.source.dialect):void 0,a=e.source.dialect&&e.source.dialect!=="unknown"?v(e.source.dialect):void 0;if(!e.capabilities&&e.source.connectionType&&e.source.dialect&&e.source.dialect!=="unknown"&&(!i||t==="unknown"||i.dialect!==t))return{kind:"incompatible_capabilities"};const s=e.capabilities||i||a;if(!s)return{kind:"incompatible_capabilities"};const r=R(s),o={...r.includes("database")&&e.source.databaseName?{databaseName:e.source.databaseName}:{},...r.includes("schema")&&e.source.schemaName?{schemaName:e.source.schemaName}:{},...e.source.tableName?{tableName:e.source.tableName}:{}},n=r.filter(d=>d==="database"?!o.databaseName:d==="schema"?!o.schemaName:!o.tableName);return n.length>0?{kind:"missing_coordinates",missing:n}:{kind:"resolved",coordinates:o}}function f(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function w(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function $(e){const i=w(e);return!i||!f(i.name)||i.type==="model"?!1:i.type==="dataset"?i.datasetType==="physical":!0}function L(e){const i=w(e);if(!i)return{};const t=f(i.table)||f(i.name);return{...f(i.database)?{databaseName:f(i.database)}:{},...f(i.schema)?{schemaName:f(i.schema)}:{},...t?{tableName:t}:{}}}function J(e){if(me(e))return{kind:"malformed"};const i=e.entities.filter($),t=de(e),a=ue({entities:i,connectionType:e.connectionType,dialect:e.dialect,capabilities:e.capabilities});if(!a)return{kind:"incompatible_capabilities"};const{capabilities:s}=a,r=be({hints:e.qualifiedHints||[],coordinateHint:e.coordinateHint,capabilityAuthority:a});if(r.kind!=="valid")return{kind:r.kind};const o=r.coordinates,n=o?i.filter(c=>E({left:K(L(c),s),right:o,capabilities:s})):i;if(o&&n.length===0)return{kind:"not_found",basis:"qualified",coordinates:o,capabilityAuthority:a};if(o&&n.length===1){const c=n[0],u=D(a,c);return{kind:"resolved",basis:"qualified",entity:c,coordinates:ve(L(c),o,u),capabilityAuthority:u}}const d=X([...e.bareHints||[],...r.bareHints,o==null?void 0:o.tableName]);if(d.size>0){const c=n.filter(u=>{const b=pe(u);return Array.from(d).some(h=>b.has(h))});if(c.length===1){const u=c[0],b=D(a,u);return{kind:"resolved",basis:"bare",entity:u,coordinates:A(L(u),b),capabilityAuthority:b}}return c.length>1?{kind:"ambiguous",basis:"bare"}:{kind:"not_found",basis:"bare",capabilityAuthority:a}}if(o)return{kind:"ambiguous",basis:"qualified"};if(t)return{kind:"not_found",basis:t,capabilityAuthority:a};if(i.length===1){const c=i[0],u=D(a,c);return{kind:"resolved",basis:"unqualified",entity:c,coordinates:A(L(c),u),capabilityAuthority:u}}return{kind:"unqualified"}}function de(e){const i=(e.qualifiedHints||[]).map(f).filter(a=>!!a);return Object.values(e.coordinateHint||{}).some(a=>!!f(a))||i.some(a=>a.includes("."))?"qualified":[...i,...e.bareHints||[]].some(a=>!!f(a))?"bare":void 0}function q(e){return`${e.dialect}:${e.prefixLevels.join(".")}`}function x(e){return{dialect:e.dialect,prefixLevels:[...e.prefixLevels]}}function ue(e){var I;const i=f(e.connectionType),t=f(e.dialect),a=e.capabilities?x(e.capabilities):void 0,s=i?v(i):void 0,r=t?T(t):void 0,o=t&&t!=="unknown"?v(t):void 0;if(i&&!s||t&&t!=="unknown"&&r==="unknown"||a&&s&&q(a)!==q(s))return;const n=a||(s?x(s):o?x(o):void 0);if(n)return r&&r!=="unknown"&&n.dialect!==r?void 0:{capabilities:n,...i?{connectionType:i}:{},dialect:n.dialect,evidence:"explicit"};const d=e.entities.map(m=>{const k=w(m),g=f(k==null?void 0:k.connectionType),p=f(k==null?void 0:k.dialect),C=g?v(g):void 0,H=p?T(p):void 0,B=p&&p!=="unknown"?v(p):void 0;if(g&&!C||p&&p!=="unknown"&&H==="unknown"||p&&p!=="unknown"&&!C&&!B||C&&H&&H!=="unknown"&&C.dialect!==H)return;const V=C||B,P=V?x(V):fe(k);return P?{capabilities:P,connectionType:g,capabilityIdentity:g?j(g):void 0,inferred:!C&&!B,signature:q(P)}:void 0});if(d.some(m=>!m))return;const c=d.filter(m=>!!m);if(new Set(c.map(m=>m.signature)).size>1)return;const u=(I=c[0])==null?void 0:I.capabilities;if(!u||r&&r!=="unknown"&&u.dialect!==r)return;const b=new Set(c.map(m=>m.capabilityIdentity).filter(m=>!!m)),h=c.every(m=>m.connectionType&&m.capabilityIdentity);return{capabilities:u,...h&&b.size===1?{connectionType:c[0].connectionType}:{},dialect:u.dialect,evidence:c.every(m=>m.inferred)?"coordinates":"entity"}}function fe(e){const i=!!f(e==null?void 0:e.database),t=!!f(e==null?void 0:e.schema);if(!(i&&t)){if(t)return{dialect:"unknown",prefixLevels:["schema","table"]};if(i)return{dialect:"unknown",prefixLevels:["database","table"]}}}function D(e,i){var s;if(e.evidence!=="entity")return e;const t=f((s=w(i))==null?void 0:s.connectionType),a=t?v(t):void 0;return a&&q(a)===q(e.capabilities)?{...e,connectionType:t}:e}function me(e){return(e.qualifiedHints||[]).some(t=>{const a=f(t);return!!(a&&a.includes(".")&&!y(a))})?!0:Object.values(e.coordinateHint||{}).some(t=>{const a=f(t);return!!(a&&!y(a))})}function be(e){const{capabilities:i}=e.capabilityAuthority,t=[],a=[];for(const b of e.hints){const h=f(b);if(!h)continue;if(!h.includes(".")){a.push(h);continue}const I=y(h);if(!I)return{kind:"malformed"};t.push(I)}const s=he(e.coordinateHint);if(s.kind==="malformed")return s;const r=Array.from(new Set(t)).map(b=>Q({qualifiedName:b,capabilities:i}));if(!ye(r,i))return{kind:"conflicting"};const o=[...new Set(t)].sort((b,h)=>h.split(".").length-b.split(".").length)[0],n=o?Q({qualifiedName:o,capabilities:i}):void 0,d=K(s.coordinates,i),c=A(s.coordinates,e.capabilityAuthority),u=!!(d.tableName&&(d.databaseName||d.schemaName));return n&&u&&!E({left:n,right:d,capabilities:i})?{kind:"conflicting"}:{kind:"valid",coordinates:n?{...c,...n}:u?c:void 0,bareHints:[...a,...!u&&d.tableName?[d.tableName]:[]]}}function he(e){const i={};for(const[t,a]of Object.entries(e||{})){const s=f(a);if(!s)continue;const r=y(s);if(!r)return{kind:"malformed"};i[t]=r}return{kind:"valid",coordinates:i}}function K(e,i){return{...i.prefixLevels.includes("database")&&e.databaseName?{databaseName:e.databaseName}:{},...i.prefixLevels.includes("schema")&&e.schemaName?{schemaName:e.schemaName}:{},...e.tableName?{tableName:e.tableName}:{}}}function ye(e,i){return e.every((t,a)=>e.slice(a+1).every(s=>E({left:t,right:s,capabilities:i})))}function X(e){return new Set(e.map(f).map(y).filter(i=>!!i))}function pe(e){const i=w(e);return i?X([f(i.name),f(i.table),f(i.id)]):new Set}function ve(e,i,t){return A({...e,...i},t)}function A(e,i){const t=i.evidence==="coordinates"?i.capabilities.prefixLevels:R(i.capabilities);return{...t.includes("database")&&e.databaseName?{databaseName:e.databaseName}:{},...t.includes("schema")&&e.schemaName?{schemaName:e.schemaName}:{},...e.tableName?{tableName:e.tableName}:{}}}function l(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function N(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function ke(e){const i=N(e);return!!(i&&i.type==="dataset"&&l(i.name))}function M(e){const i=N(e);return!!(i&&i.type==="dataset"&&i.datasetType!=="physical"&&l(i.name))}function O(e){const i=new Set;for(const t of e){const a=l(t);if(!a)continue;const s=y(a);if(!s)continue;const r=s.toLowerCase();i.add(r);const o=r.split("."),n=o[o.length-1];n&&i.add(n)}return i}function W(e){var t;const i=l(e);return i?(t=y(i))==null?void 0:t.toLowerCase():void 0}function z(e,i){const t=N(i),a=l(t==null?void 0:t.domainId)||l(e.semanticDomainId),s=l(t==null?void 0:t.name);if(!a||!s)return;const r=(t==null?void 0:t.datasetType)==="physical"?void 0:Z.getSemaphorDatasetEntityId(t||{}),o=l(t==null?void 0:t.connectionId)||l(e.connectionId);return{kind:"semantic",domainId:a,datasetName:s,...r?{datasetId:r}:{},...o?{connectionId:o}:{}}}function Y(e,i={}){const t=l(e.fieldEntityType);if(t&&t!=="dataset")return{kind:"unqualified"};const a=e.entities.filter(o=>i.includePhysicalDatasets?ke(o):M(o)),s=l(e.entityId);if(s){const o=W(s),n=a.filter(d=>{const c=N(d);return!!(o&&W(c==null?void 0:c.id)===o)});if(n.length>1)return{kind:"ambiguous",basis:"bare"};if(n.length===1){const d=z(e,n[0]);return d?{kind:"resolved",basis:"bare",entity:n[0],source:d,matchedById:!0}:{kind:"not_found",basis:"bare"}}}const r=O([e.entityName,...e.qualifiedHints||[],...e.bareHints||[]]);if(r.size>0){const o=a.filter(n=>{const d=N(n);return[...O([d==null?void 0:d.id,d==null?void 0:d.name])].some(u=>r.has(u))});if(o.length>1)return{kind:"ambiguous",basis:"bare"};if(o.length===1){const n=z(e,o[0]);return n?{kind:"resolved",basis:"bare",entity:o[0],source:n,matchedById:!1}:{kind:"not_found",basis:"bare"}}return{kind:"not_found",basis:"bare"}}if(a.length===1){const o=z(e,a[0]);return o?{kind:"resolved",basis:"unqualified",entity:a[0],source:o,matchedById:!1}:{kind:"unqualified"}}return{kind:"unqualified"}}function _(e){const i=e.resolution.kind==="resolved"?N(e.resolution.entity):void 0,t=l(e.connectionId)||l(i==null?void 0:i.connectionId),{connectionType:a,dialect:s}=e.resolution.capabilityAuthority,r=v(s),o=!!(r&&r.dialect===e.resolution.capabilityAuthority.capabilities.dialect&&r.prefixLevels.join(".")===e.resolution.capabilityAuthority.capabilities.prefixLevels.join(".")),n=e.resolution.coordinates;if(!(!t||!(n!=null&&n.tableName)))return{kind:"physical",connectionId:t,...a?{connectionType:a}:{},...!a&&o?{dialect:s}:{},tableName:n.tableName,...n.databaseName?{databaseName:n.databaseName}:{},...n.schemaName?{schemaName:n.schemaName}:{}}}function ge(e){var s,r,o;if(l(e.connectionType)||l(e.dialect)||e.capabilities||l(e.semanticDomainId)||l(e.fieldEntityType)==="dataset"||l((s=e.fallbackCoordinateHint)==null?void 0:s.databaseName)||l((r=e.fallbackCoordinateHint)==null?void 0:r.schemaName))return;const i=[l((o=e.fallbackCoordinateHint)==null?void 0:o.tableName),...(e.qualifiedHints||[]).map(l),...(e.bareHints||[]).map(l),l(e.entityName),...l(e.fieldEntityType)==="table"?[l(e.entityId)]:[]].filter(n=>!!n);if(!i.length||i.some(n=>n.includes(".")))return;const t=i.map(y);return t.some(n=>!n)?void 0:new Set(t.map(n=>n.toLowerCase())).size===1?t[0]:void 0}function Ce(e){const i=e.entities.filter($),t=e.entities.filter(M),a=i.length>0||t.length>0,s=Y(e),r=e.qualifiedHints||[],o=r.some(c=>{var u;return(u=l(c))==null?void 0:u.includes(".")}),n=J({entities:i,connectionType:l(e.connectionType),dialect:e.dialect,capabilities:e.capabilities,qualifiedHints:r,bareHints:[e.entityName,e.entityId,...e.bareHints||[]],...!o&&e.fallbackCoordinateHint?{coordinateHint:e.fallbackCoordinateHint}:{}});if(n.kind==="malformed"||n.kind==="conflicting"||n.kind==="incompatible_capabilities"&&o||n.kind==="ambiguous"&&n.basis==="qualified")return n;if(n.kind==="resolved"&&n.basis==="qualified"){const c=_({resolution:n,connectionId:e.connectionId});return c?{kind:"resolved",basis:n.basis,source:c,entity:n.entity}:{kind:"missing_connection"}}if(n.kind==="not_found"&&n.basis==="qualified"&&n.coordinates){const c=_({resolution:n,connectionId:e.connectionId});return c?a?{kind:"candidate",basis:"qualified",source:c}:{kind:"resolved",basis:"qualified",source:c}:{kind:"missing_connection"}}if(s.kind==="resolved")return n.kind==="resolved"&&n.basis==="bare"&&!s.matchedById?{kind:"ambiguous",basis:"bare"}:{kind:"resolved",basis:s.basis,source:s.source,entity:s.entity};if(s.kind==="ambiguous")return s;if(n.kind==="resolved"){const c=_({resolution:n,connectionId:e.connectionId});return c?{kind:"resolved",basis:n.basis,source:c,entity:n.entity}:{kind:"missing_connection"}}const d=l(e.entityName)||l(e.entityId);if(!a&&!o&&l(e.semanticDomainId)&&(!l(e.fieldEntityType)||l(e.fieldEntityType)==="dataset")&&d)return{kind:"resolved",basis:"historical",source:{kind:"semantic",domainId:l(e.semanticDomainId),datasetName:d,...l(e.connectionId)?{connectionId:l(e.connectionId)}:{}}};if(n.kind==="incompatible_capabilities"){const c=a?void 0:ge(e),u=l(e.connectionId);return c&&u?{kind:"resolved",basis:"historical",source:{kind:"physical",connectionId:u,tableName:c}}:n}return n.kind==="ambiguous"?n:n.kind==="not_found"?{kind:"not_found",basis:n.basis}:{kind:"unqualified"}}exports.buildSemaphorQualifiedSourcePath=te;exports.canonicalizeSemaphorQualifiedSourcePath=y;exports.getSemaphorCatalogCoordinateLevels=R;exports.getSemaphorConnectionCapabilities=G;exports.isSemaphorPhysicalSourceEntity=$;exports.isSemaphorSemanticSourceEntity=M;exports.normalizeSemaphorDialect=T;exports.parseSemaphorQualifiedSourcePath=Q;exports.persistedIdentifierLeafName=oe;exports.resolveSemaphorConnectionCapabilities=v;exports.resolveSemaphorConnectionCapabilityIdentity=j;exports.resolveSemaphorPhysicalCatalogAddress=le;exports.resolveSemaphorPhysicalSourceEntity=J;exports.resolveSemaphorSemanticDatasetEntity=Y;exports.resolveSemaphorSourceEntity=Ce;exports.semaphorPhysicalSourceCoordinatesAreCompatible=E;exports.semaphorPhysicalSourceCoordinatesCover=ee;exports.semaphorSourceHasRequiredCoordinates=ie;
|
|
1
|
+
"use strict";const Z=require("./validators-DFeDcdpA.cjs");function y(e){const i=U(e);return i.length>0?i.join("."):void 0}function Q(e){const i=y(e.qualifiedName),t=(i==null?void 0:i.split("."))||[];if(t.length===0)return{};const a={};let s=t.length-1;for(let r=e.capabilities.prefixLevels.length-1;r>=0&&s>=0;r-=1,s-=1)ae(a,e.capabilities.prefixLevels[r],t[s]);return a}function E(e){return!e.left.tableName||!e.right.tableName?!1:e.capabilities.prefixLevels.every(i=>{const t=S(e.left,i),a=S(e.right,i);return!t||!a||t===a})}function ee(e){return e.capabilities.prefixLevels.every(i=>{const t=S(e.requested,i);return t?S(e.allowed,i)===t:!0})}function G(e,i={}){const t=F(e),a={connectionId:i.connectionId,connectionType:e,path:["database","schema","table"],labels:{database:"Database",schema:"Schema",table:"Table"},prefixLevels:["database","schema","table"],dialect:"postgres",supportsFilterClause:!0};return t.includes("postgres")?{...a,prefixLevels:["schema","table"],dialect:"postgres"}:t.includes("mysql")?{...a,prefixLevels:["database","table"],dialect:"mysql",supportsFilterClause:!1}:t.includes("mssql")||t.includes("sqlserver")?{...a,dialect:"mssql",supportsFilterClause:!1}:t.includes("redshift")?{...a,prefixLevels:["schema","table"],dialect:"redshift"}:t.includes("snowflake")?{...a,dialect:"snowflake"}:t.includes("clickhouse")?{connectionId:i.connectionId,connectionType:e,path:["database","table"],labels:{database:"Database",table:"Table"},prefixLevels:["database","table"],dialect:"clickhouse",supportsFilterClause:!1}:t==="s3"||t==="api"?{connectionId:i.connectionId,connectionType:e,path:["table"],labels:{table:t==="api"?"API Table":"File Table"},prefixLevels:["table"],dialect:"duckdb",supportsFilterClause:!0}:t==="googlesheets"||t==="fileupload"?{connectionId:i.connectionId,connectionType:e,path:["table"],labels:{table:"Table"},prefixLevels:["table"],dialect:"postgres",supportsFilterClause:!0}:t==="s3tables"?{...a,labels:{database:"Database",schema:"Namespace",table:"Table"},dialect:"duckdb"}:t==="bigquery"?{...a,labels:{database:"Project",schema:"Dataset",table:"Table"},prefixLevels:["schema","table"],dialect:"bigquery",supportsFilterClause:!1}:a}function v(e,i={}){return j(e)?G(e,i):void 0}function j(e){const i=F(e);if(i.includes("postgres"))return"postgres";if(i.includes("mysql"))return"mysql";if(i.includes("mssql")||i.includes("sqlserver"))return"mssql";if(i.includes("redshift"))return"redshift";if(i.includes("snowflake"))return"snowflake";if(i.includes("clickhouse"))return"clickhouse";if(i==="s3"||i==="api"||i==="googlesheets"||i==="fileupload"||i==="s3tables"||i==="bigquery")return i}function T(e){const i=F(e);switch(i){case"mysql":case"bigquery":case"redshift":case"snowflake":case"clickhouse":case"duckdb":case"sqlite":return i;case"mssql":case"sqlserver":return"mssql";case"postgres":case"postgresql":return"postgres";default:return"unknown"}}function ie(e){return e.capabilities.prefixLevels.every(i=>!!S(e.source,i))}function te(e){const i=e.quoteIdentifier??re;return e.capabilities.prefixLevels.map(t=>S(e.source,t)).filter(t=>!!t).map(t=>i(t,e.capabilities.dialect)).join(".")}function S(e,i){return i==="database"?e.databaseName:i==="schema"?e.schemaName:e.tableName}function ae(e,i,t){i==="database"?e.databaseName=t:i==="schema"?e.schemaName=t:e.tableName=t}const ne=[['"','"'],["`","`"],["[","]"]];function se(e){const i=e.trim();for(const[t,a]of ne)if(i.length>=2&&i.startsWith(t)&&i.endsWith(a))return i.slice(1,-1).split(a+a).join(a);return i}function U(e){const i=e==null?void 0:e.trim();if(!i)return[];const t=i.split(".").map(se);return t.some(a=>!a)?[]:t}function oe(e){const i=U(e??void 0);return i[i.length-1]||""}function re(e,i){return i==="mysql"||i==="bigquery"||i==="clickhouse"||i==="duckdb"?`\`${e.replace(/`/g,"``")}\``:i==="mssql"?`[${e.replace(/]/g,"]]")}]`:`"${e.replace(/"/g,'""')}"`}function F(e){if(typeof e!="string")return"";const i=[];for(const t of e.trim().toLowerCase())ce(t)&&i.push(t);return i.join("")}function ce(e){const i=e.charCodeAt(0);return i>=48&&i<=57||i>=97&&i<=122}function R(e){return e.prefixLevels.length===1&&e.prefixLevels[0]==="table"?["table"]:Array.from(new Set(["database",...e.prefixLevels]))}function le(e){const i=e.source.connectionType?v(e.source.connectionType):void 0,t=e.source.dialect?T(e.source.dialect):void 0,a=e.source.dialect&&e.source.dialect!=="unknown"?v(e.source.dialect):void 0;if(!e.capabilities&&e.source.connectionType&&e.source.dialect&&e.source.dialect!=="unknown"&&(!i||t==="unknown"||i.dialect!==t))return{kind:"incompatible_capabilities"};const s=e.capabilities||i||a;if(!s)return{kind:"incompatible_capabilities"};const r=R(s),o={...r.includes("database")&&e.source.databaseName?{databaseName:e.source.databaseName}:{},...r.includes("schema")&&e.source.schemaName?{schemaName:e.source.schemaName}:{},...e.source.tableName?{tableName:e.source.tableName}:{}},n=r.filter(d=>d==="database"?!o.databaseName:d==="schema"?!o.schemaName:!o.tableName);return n.length>0?{kind:"missing_coordinates",missing:n}:{kind:"resolved",coordinates:o}}function f(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function w(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function $(e){const i=w(e);return!i||!f(i.name)||i.type==="model"?!1:i.type==="dataset"?i.datasetType==="physical":!0}function L(e){const i=w(e);if(!i)return{};const t=f(i.table)||f(i.name);return{...f(i.database)?{databaseName:f(i.database)}:{},...f(i.schema)?{schemaName:f(i.schema)}:{},...t?{tableName:t}:{}}}function J(e){if(me(e))return{kind:"malformed"};const i=e.entities.filter($),t=de(e),a=ue({entities:i,connectionType:e.connectionType,dialect:e.dialect,capabilities:e.capabilities});if(!a)return{kind:"incompatible_capabilities"};const{capabilities:s}=a,r=be({hints:e.qualifiedHints||[],coordinateHint:e.coordinateHint,capabilityAuthority:a});if(r.kind!=="valid")return{kind:r.kind};const o=r.coordinates,n=o?i.filter(c=>E({left:K(L(c),s),right:o,capabilities:s})):i;if(o&&n.length===0)return{kind:"not_found",basis:"qualified",coordinates:o,capabilityAuthority:a};if(o&&n.length===1){const c=n[0],u=D(a,c);return{kind:"resolved",basis:"qualified",entity:c,coordinates:ve(L(c),o,u),capabilityAuthority:u}}const d=X([...e.bareHints||[],...r.bareHints,o==null?void 0:o.tableName]);if(d.size>0){const c=n.filter(u=>{const b=pe(u);return Array.from(d).some(h=>b.has(h))});if(c.length===1){const u=c[0],b=D(a,u);return{kind:"resolved",basis:"bare",entity:u,coordinates:A(L(u),b),capabilityAuthority:b}}return c.length>1?{kind:"ambiguous",basis:"bare"}:{kind:"not_found",basis:"bare",capabilityAuthority:a}}if(o)return{kind:"ambiguous",basis:"qualified"};if(t)return{kind:"not_found",basis:t,capabilityAuthority:a};if(i.length===1){const c=i[0],u=D(a,c);return{kind:"resolved",basis:"unqualified",entity:c,coordinates:A(L(c),u),capabilityAuthority:u}}return{kind:"unqualified"}}function de(e){const i=(e.qualifiedHints||[]).map(f).filter(a=>!!a);return Object.values(e.coordinateHint||{}).some(a=>!!f(a))||i.some(a=>a.includes("."))?"qualified":[...i,...e.bareHints||[]].some(a=>!!f(a))?"bare":void 0}function q(e){return`${e.dialect}:${e.prefixLevels.join(".")}`}function x(e){return{dialect:e.dialect,prefixLevels:[...e.prefixLevels]}}function ue(e){var I;const i=f(e.connectionType),t=f(e.dialect),a=e.capabilities?x(e.capabilities):void 0,s=i?v(i):void 0,r=t?T(t):void 0,o=t&&t!=="unknown"?v(t):void 0;if(i&&!s||t&&t!=="unknown"&&r==="unknown"||a&&s&&q(a)!==q(s))return;const n=a||(s?x(s):o?x(o):void 0);if(n)return r&&r!=="unknown"&&n.dialect!==r?void 0:{capabilities:n,...i?{connectionType:i}:{},dialect:n.dialect,evidence:"explicit"};const d=e.entities.map(m=>{const k=w(m),g=f(k==null?void 0:k.connectionType),p=f(k==null?void 0:k.dialect),C=g?v(g):void 0,H=p?T(p):void 0,B=p&&p!=="unknown"?v(p):void 0;if(g&&!C||p&&p!=="unknown"&&H==="unknown"||p&&p!=="unknown"&&!C&&!B||C&&H&&H!=="unknown"&&C.dialect!==H)return;const V=C||B,P=V?x(V):fe(k);return P?{capabilities:P,connectionType:g,capabilityIdentity:g?j(g):void 0,inferred:!C&&!B,signature:q(P)}:void 0});if(d.some(m=>!m))return;const c=d.filter(m=>!!m);if(new Set(c.map(m=>m.signature)).size>1)return;const u=(I=c[0])==null?void 0:I.capabilities;if(!u||r&&r!=="unknown"&&u.dialect!==r)return;const b=new Set(c.map(m=>m.capabilityIdentity).filter(m=>!!m)),h=c.every(m=>m.connectionType&&m.capabilityIdentity);return{capabilities:u,...h&&b.size===1?{connectionType:c[0].connectionType}:{},dialect:u.dialect,evidence:c.every(m=>m.inferred)?"coordinates":"entity"}}function fe(e){const i=!!f(e==null?void 0:e.database),t=!!f(e==null?void 0:e.schema);if(!(i&&t)){if(t)return{dialect:"unknown",prefixLevels:["schema","table"]};if(i)return{dialect:"unknown",prefixLevels:["database","table"]}}}function D(e,i){var s;if(e.evidence!=="entity")return e;const t=f((s=w(i))==null?void 0:s.connectionType),a=t?v(t):void 0;return a&&q(a)===q(e.capabilities)?{...e,connectionType:t}:e}function me(e){return(e.qualifiedHints||[]).some(t=>{const a=f(t);return!!(a&&a.includes(".")&&!y(a))})?!0:Object.values(e.coordinateHint||{}).some(t=>{const a=f(t);return!!(a&&!y(a))})}function be(e){const{capabilities:i}=e.capabilityAuthority,t=[],a=[];for(const b of e.hints){const h=f(b);if(!h)continue;if(!h.includes(".")){a.push(h);continue}const I=y(h);if(!I)return{kind:"malformed"};t.push(I)}const s=he(e.coordinateHint);if(s.kind==="malformed")return s;const r=Array.from(new Set(t)).map(b=>Q({qualifiedName:b,capabilities:i}));if(!ye(r,i))return{kind:"conflicting"};const o=[...new Set(t)].sort((b,h)=>h.split(".").length-b.split(".").length)[0],n=o?Q({qualifiedName:o,capabilities:i}):void 0,d=K(s.coordinates,i),c=A(s.coordinates,e.capabilityAuthority),u=!!(d.tableName&&(d.databaseName||d.schemaName));return n&&u&&!E({left:n,right:d,capabilities:i})?{kind:"conflicting"}:{kind:"valid",coordinates:n?{...c,...n}:u?c:void 0,bareHints:[...a,...!u&&d.tableName?[d.tableName]:[]]}}function he(e){const i={};for(const[t,a]of Object.entries(e||{})){const s=f(a);if(!s)continue;const r=y(s);if(!r)return{kind:"malformed"};i[t]=r}return{kind:"valid",coordinates:i}}function K(e,i){return{...i.prefixLevels.includes("database")&&e.databaseName?{databaseName:e.databaseName}:{},...i.prefixLevels.includes("schema")&&e.schemaName?{schemaName:e.schemaName}:{},...e.tableName?{tableName:e.tableName}:{}}}function ye(e,i){return e.every((t,a)=>e.slice(a+1).every(s=>E({left:t,right:s,capabilities:i})))}function X(e){return new Set(e.map(f).map(y).filter(i=>!!i))}function pe(e){const i=w(e);return i?X([f(i.name),f(i.table),f(i.id)]):new Set}function ve(e,i,t){return A({...e,...i},t)}function A(e,i){const t=i.evidence==="coordinates"?i.capabilities.prefixLevels:R(i.capabilities);return{...t.includes("database")&&e.databaseName?{databaseName:e.databaseName}:{},...t.includes("schema")&&e.schemaName?{schemaName:e.schemaName}:{},...e.tableName?{tableName:e.tableName}:{}}}function l(e){return typeof e=="string"&&e.trim()?e.trim():void 0}function N(e){return e&&typeof e=="object"&&!Array.isArray(e)?e:void 0}function ke(e){const i=N(e);return!!(i&&i.type==="dataset"&&l(i.name))}function M(e){const i=N(e);return!!(i&&i.type==="dataset"&&i.datasetType!=="physical"&&l(i.name))}function O(e){const i=new Set;for(const t of e){const a=l(t);if(!a)continue;const s=y(a);if(!s)continue;const r=s.toLowerCase();i.add(r);const o=r.split("."),n=o[o.length-1];n&&i.add(n)}return i}function W(e){var t;const i=l(e);return i?(t=y(i))==null?void 0:t.toLowerCase():void 0}function z(e,i){const t=N(i),a=l(t==null?void 0:t.domainId)||l(e.semanticDomainId),s=l(t==null?void 0:t.name);if(!a||!s)return;const r=(t==null?void 0:t.datasetType)==="physical"?void 0:Z.getSemaphorDatasetEntityId(t||{}),o=l(t==null?void 0:t.connectionId)||l(e.connectionId);return{kind:"semantic",domainId:a,datasetName:s,...r?{datasetId:r}:{},...o?{connectionId:o}:{}}}function Y(e,i={}){const t=l(e.fieldEntityType);if(t&&t!=="dataset")return{kind:"unqualified"};const a=e.entities.filter(o=>i.includePhysicalDatasets?ke(o):M(o)),s=l(e.entityId);if(s){const o=W(s),n=a.filter(d=>{const c=N(d);return!!(o&&W(c==null?void 0:c.id)===o)});if(n.length>1)return{kind:"ambiguous",basis:"bare"};if(n.length===1){const d=z(e,n[0]);return d?{kind:"resolved",basis:"bare",entity:n[0],source:d,matchedById:!0}:{kind:"not_found",basis:"bare"}}}const r=O([e.entityName,...e.qualifiedHints||[],...e.bareHints||[]]);if(r.size>0){const o=a.filter(n=>{const d=N(n);return[...O([d==null?void 0:d.id,d==null?void 0:d.name])].some(u=>r.has(u))});if(o.length>1)return{kind:"ambiguous",basis:"bare"};if(o.length===1){const n=z(e,o[0]);return n?{kind:"resolved",basis:"bare",entity:o[0],source:n,matchedById:!1}:{kind:"not_found",basis:"bare"}}return{kind:"not_found",basis:"bare"}}if(a.length===1){const o=z(e,a[0]);return o?{kind:"resolved",basis:"unqualified",entity:a[0],source:o,matchedById:!1}:{kind:"unqualified"}}return{kind:"unqualified"}}function _(e){const i=e.resolution.kind==="resolved"?N(e.resolution.entity):void 0,t=l(e.connectionId)||l(i==null?void 0:i.connectionId),{connectionType:a,dialect:s}=e.resolution.capabilityAuthority,r=v(s),o=!!(r&&r.dialect===e.resolution.capabilityAuthority.capabilities.dialect&&r.prefixLevels.join(".")===e.resolution.capabilityAuthority.capabilities.prefixLevels.join(".")),n=e.resolution.coordinates;if(!(!t||!(n!=null&&n.tableName)))return{kind:"physical",connectionId:t,...a?{connectionType:a}:{},...!a&&o?{dialect:s}:{},tableName:n.tableName,...n.databaseName?{databaseName:n.databaseName}:{},...n.schemaName?{schemaName:n.schemaName}:{}}}function ge(e){var s,r,o;if(l(e.connectionType)||l(e.dialect)||e.capabilities||l(e.semanticDomainId)||l(e.fieldEntityType)==="dataset"||l((s=e.fallbackCoordinateHint)==null?void 0:s.databaseName)||l((r=e.fallbackCoordinateHint)==null?void 0:r.schemaName))return;const i=[l((o=e.fallbackCoordinateHint)==null?void 0:o.tableName),...(e.qualifiedHints||[]).map(l),...(e.bareHints||[]).map(l),l(e.entityName),...l(e.fieldEntityType)==="table"?[l(e.entityId)]:[]].filter(n=>!!n);if(!i.length||i.some(n=>n.includes(".")))return;const t=i.map(y);return t.some(n=>!n)?void 0:new Set(t.map(n=>n.toLowerCase())).size===1?t[0]:void 0}function Ce(e){const i=e.entities.filter($),t=e.entities.filter(M),a=i.length>0||t.length>0,s=Y(e),r=e.qualifiedHints||[],o=r.some(c=>{var u;return(u=l(c))==null?void 0:u.includes(".")}),n=J({entities:i,connectionType:l(e.connectionType),dialect:e.dialect,capabilities:e.capabilities,qualifiedHints:r,bareHints:[e.entityName,e.entityId,...e.bareHints||[]],...!o&&e.fallbackCoordinateHint?{coordinateHint:e.fallbackCoordinateHint}:{}});if(n.kind==="malformed"||n.kind==="conflicting"||n.kind==="incompatible_capabilities"&&o||n.kind==="ambiguous"&&n.basis==="qualified")return n;if(n.kind==="resolved"&&n.basis==="qualified"){const c=_({resolution:n,connectionId:e.connectionId});return c?{kind:"resolved",basis:n.basis,source:c,entity:n.entity}:{kind:"missing_connection"}}if(n.kind==="not_found"&&n.basis==="qualified"&&n.coordinates){const c=_({resolution:n,connectionId:e.connectionId});return c?a?{kind:"candidate",basis:"qualified",source:c}:{kind:"resolved",basis:"qualified",source:c}:{kind:"missing_connection"}}if(s.kind==="resolved")return n.kind==="resolved"&&n.basis==="bare"&&!s.matchedById?{kind:"ambiguous",basis:"bare"}:{kind:"resolved",basis:s.basis,source:s.source,entity:s.entity};if(s.kind==="ambiguous")return s;if(n.kind==="resolved"){const c=_({resolution:n,connectionId:e.connectionId});return c?{kind:"resolved",basis:n.basis,source:c,entity:n.entity}:{kind:"missing_connection"}}const d=l(e.entityName)||l(e.entityId);if(!a&&!o&&l(e.semanticDomainId)&&(!l(e.fieldEntityType)||l(e.fieldEntityType)==="dataset")&&d)return{kind:"resolved",basis:"historical",source:{kind:"semantic",domainId:l(e.semanticDomainId),datasetName:d,...l(e.connectionId)?{connectionId:l(e.connectionId)}:{}}};if(n.kind==="incompatible_capabilities"){const c=a?void 0:ge(e),u=l(e.connectionId);return c&&u?{kind:"resolved",basis:"historical",source:{kind:"physical",connectionId:u,tableName:c}}:n}return n.kind==="ambiguous"?n:n.kind==="not_found"?{kind:"not_found",basis:n.basis}:{kind:"unqualified"}}exports.buildSemaphorQualifiedSourcePath=te;exports.canonicalizeSemaphorQualifiedSourcePath=y;exports.getSemaphorCatalogCoordinateLevels=R;exports.getSemaphorConnectionCapabilities=G;exports.isSemaphorPhysicalSourceEntity=$;exports.isSemaphorSemanticSourceEntity=M;exports.normalizeSemaphorDialect=T;exports.parseSemaphorQualifiedSourcePath=Q;exports.persistedIdentifierLeafName=oe;exports.resolveSemaphorConnectionCapabilities=v;exports.resolveSemaphorConnectionCapabilityIdentity=j;exports.resolveSemaphorPhysicalCatalogAddress=le;exports.resolveSemaphorPhysicalSourceEntity=J;exports.resolveSemaphorSemanticDatasetEntity=Y;exports.resolveSemaphorSourceEntity=Ce;exports.semaphorPhysicalSourceCoordinatesAreCompatible=E;exports.semaphorPhysicalSourceCoordinatesCover=ee;exports.semaphorSourceHasRequiredCoordinates=ie;
|