@datatechsolutions/ui 2.11.38 → 2.11.41

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.
@@ -2840,6 +2840,24 @@ var NoteFlowNode = react.memo(function NoteFlowNode2({ data, selected }) {
2840
2840
  }
2841
2841
  );
2842
2842
  });
2843
+ var DATASOURCE_LOGOS = {
2844
+ bigquery: "/logos/datasources/bigquery.svg",
2845
+ postgres: "/logos/datasources/postgres.svg",
2846
+ snowflake: "/logos/datasources/snowflake.svg",
2847
+ mongodb: "/logos/datasources/mongodb.svg",
2848
+ redis: "/logos/datasources/redis.svg",
2849
+ mysql: "/logos/datasources/mysql.svg",
2850
+ clickhouse: "/logos/datasources/clickhouse.svg",
2851
+ elasticsearch: "/logos/datasources/elasticsearch.svg",
2852
+ duckdb: "/logos/datasources/duckdb.svg"
2853
+ };
2854
+ function getDatasourceLogo(datasourceId, dialect) {
2855
+ const search = (dialect ?? datasourceId).toLowerCase();
2856
+ for (const [key, url] of Object.entries(DATASOURCE_LOGOS)) {
2857
+ if (search.includes(key)) return url;
2858
+ }
2859
+ return null;
2860
+ }
2843
2861
  var DatasourceFlowNode = react.memo(function DatasourceFlowNode2({ id, data, selected }) {
2844
2862
  const t = chunkYXN2K77G_js.useTranslations("agents.workflow");
2845
2863
  const { config, label, datasource, readOnly = false, onEdit, onRemoveFromCanvas } = data;
@@ -2862,10 +2880,11 @@ var DatasourceFlowNode = react.memo(function DatasourceFlowNode2({ id, data, sel
2862
2880
  }
2863
2881
  const columnCount = config.selectedColumns?.length ?? 0;
2864
2882
  const filterCount = config.filterVariables ? Object.keys(config.filterVariables).length : 0;
2883
+ const logo = getDatasourceLogo(config.datasourceId, config.dialect);
2865
2884
  const content = /* @__PURE__ */ jsxRuntime.jsxs(NodeCard, { compact: isCompact, selected, nodeType: "datasource", children: [
2866
2885
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start justify-between", children: [
2867
2886
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-3", children: [
2868
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-cyan-500 to-blue-600 shadow-lg", children: /* @__PURE__ */ jsxRuntime.jsx(outline.ServerStackIcon, { className: "h-5 w-5 text-white" }) }),
2887
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-xl bg-gradient-to-br from-cyan-500 to-blue-600 shadow-lg", children: logo ? /* @__PURE__ */ jsxRuntime.jsx("img", { src: logo, alt: config.dialect ?? "", className: "h-5 w-5" }) : /* @__PURE__ */ jsxRuntime.jsx(outline.ServerStackIcon, { className: "h-5 w-5 text-white" }) }),
2869
2888
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
2870
2889
  /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "text-sm font-semibold text-gray-900 dark:text-white", children: label }),
2871
2890
  !isCompact && /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "mt-0.5 line-clamp-1 text-xs text-gray-500 dark:text-gray-400", children: [
@@ -7688,5 +7707,5 @@ exports.useModalStore = useModalStore;
7688
7707
  exports.useWorkflowBuilderClient = useWorkflowBuilderClient;
7689
7708
  exports.useWorkflowBuilderClientOptional = useWorkflowBuilderClientOptional;
7690
7709
  exports.useWorkflowStore = useWorkflowStore;
7691
- //# sourceMappingURL=chunk-TE4XMF4F.js.map
7692
- //# sourceMappingURL=chunk-TE4XMF4F.js.map
7710
+ //# sourceMappingURL=chunk-XFYGRDN3.js.map
7711
+ //# sourceMappingURL=chunk-XFYGRDN3.js.map