LICENSE
MANIFEST.in
README.md
pyproject.toml
py-src/data_formulator/__init__.py
py-src/data_formulator/__main__.py
py-src/data_formulator/app.py
py-src/data_formulator/data_connector.py
py-src/data_formulator/error_handler.py
py-src/data_formulator/errors.py
py-src/data_formulator/example_datasets_config.py
py-src/data_formulator/model_registry.py
py-src/data_formulator/workspace_factory.py
py-src/data_formulator.egg-info/PKG-INFO
py-src/data_formulator.egg-info/SOURCES.txt
py-src/data_formulator.egg-info/dependency_links.txt
py-src/data_formulator.egg-info/entry_points.txt
py-src/data_formulator.egg-info/requires.txt
py-src/data_formulator.egg-info/top_level.txt
py-src/data_formulator/agents/__init__.py
py-src/data_formulator/agents/agent_chart_insight.py
py-src/data_formulator/agents/agent_chart_restyle.py
py-src/data_formulator/agents/agent_code_explanation.py
py-src/data_formulator/agents/agent_data_clean_stream.py
py-src/data_formulator/agents/agent_data_load.py
py-src/data_formulator/agents/agent_data_loading_chat.py
py-src/data_formulator/agents/agent_data_rec.py
py-src/data_formulator/agents/agent_data_transform.py
py-src/data_formulator/agents/agent_diagnostics.py
py-src/data_formulator/agents/agent_experience_distill.py
py-src/data_formulator/agents/agent_interactive_explore.py
py-src/data_formulator/agents/agent_language.py
py-src/data_formulator/agents/agent_report_gen.py
py-src/data_formulator/agents/agent_simple.py
py-src/data_formulator/agents/agent_sort_data.py
py-src/data_formulator/agents/agent_utils.py
py-src/data_formulator/agents/agent_utils_sql.py
py-src/data_formulator/agents/client_utils.py
py-src/data_formulator/agents/context.py
py-src/data_formulator/agents/data_agent.py
py-src/data_formulator/agents/reasoning_log.py
py-src/data_formulator/agents/semantic_types.py
py-src/data_formulator/agents/web_utils.py
py-src/data_formulator/auth/__init__.py
py-src/data_formulator/auth/identity.py
py-src/data_formulator/auth/token_store.py
py-src/data_formulator/auth/gateways/__init__.py
py-src/data_formulator/auth/gateways/github_gateway.py
py-src/data_formulator/auth/gateways/oidc_gateway.py
py-src/data_formulator/auth/providers/__init__.py
py-src/data_formulator/auth/providers/azure_easyauth.py
py-src/data_formulator/auth/providers/base.py
py-src/data_formulator/auth/providers/github_oauth.py
py-src/data_formulator/auth/providers/oidc.py
py-src/data_formulator/auth/vault/__init__.py
py-src/data_formulator/auth/vault/base.py
py-src/data_formulator/auth/vault/local_vault.py
py-src/data_formulator/data_loader/__init__.py
py-src/data_formulator/data_loader/athena_data_loader.py
py-src/data_formulator/data_loader/azure_blob_data_loader.py
py-src/data_formulator/data_loader/bigquery_data_loader.py
py-src/data_formulator/data_loader/connector_errors.py
py-src/data_formulator/data_loader/cosmosdb_data_loader.py
py-src/data_formulator/data_loader/external_data_loader.py
py-src/data_formulator/data_loader/kusto_data_loader.py
py-src/data_formulator/data_loader/local_folder_data_loader.py
py-src/data_formulator/data_loader/mongodb_data_loader.py
py-src/data_formulator/data_loader/mssql_data_loader.py
py-src/data_formulator/data_loader/mysql_data_loader.py
py-src/data_formulator/data_loader/postgresql_data_loader.py
py-src/data_formulator/data_loader/s3_data_loader.py
py-src/data_formulator/data_loader/superset_auth_bridge.py
py-src/data_formulator/data_loader/superset_client.py
py-src/data_formulator/data_loader/superset_data_loader.py
py-src/data_formulator/datalake/__init__.py
py-src/data_formulator/datalake/azure_blob_workspace.py
py-src/data_formulator/datalake/azure_blob_workspace_manager.py
py-src/data_formulator/datalake/cache_manager.py
py-src/data_formulator/datalake/cached_azure_blob_workspace.py
py-src/data_formulator/datalake/catalog_cache.py
py-src/data_formulator/datalake/ephemeral_workspace.py
py-src/data_formulator/datalake/file_manager.py
py-src/data_formulator/datalake/naming.py
py-src/data_formulator/datalake/parquet_utils.py
py-src/data_formulator/datalake/table_names.py
py-src/data_formulator/datalake/workspace.py
py-src/data_formulator/datalake/workspace_manager.py
py-src/data_formulator/datalake/workspace_metadata.py
py-src/data_formulator/dist/DataFormulator.js
py-src/data_formulator/dist/data-formulator-screenshot.png
py-src/data_formulator/dist/df_gas_prices.json
py-src/data_formulator/dist/df_global_energy.json
py-src/data_formulator/dist/df_movies.json
py-src/data_formulator/dist/df_stock_prices_live.json
py-src/data_formulator/dist/df_unemployment.json
py-src/data_formulator/dist/favicon.ico
py-src/data_formulator/dist/feature-agent-mode.mp4
py-src/data_formulator/dist/feature-extract-data.mp4
py-src/data_formulator/dist/feature-generate-report.mp4
py-src/data_formulator/dist/feature-interactive-control.mp4
py-src/data_formulator/dist/gas_prices-thumbnail.webp
py-src/data_formulator/dist/global_energy-thumbnail.webp
py-src/data_formulator/dist/index.html
py-src/data_formulator/dist/manifest.json
py-src/data_formulator/dist/movies-thumbnail.webp
py-src/data_formulator/dist/pip-logo.svg
py-src/data_formulator/dist/robots.txt
py-src/data_formulator/dist/screenshot-claude-performance.webp
py-src/data_formulator/dist/screenshot-movies-report.webp
py-src/data_formulator/dist/screenshot-renewable-energy.webp
py-src/data_formulator/dist/screenshot-stock-price-live-thumbnail.webp
py-src/data_formulator/dist/screenshot-stock-price-live.webp
py-src/data_formulator/dist/screenshot-unemployment.webp
py-src/data_formulator/dist/unemployment-thumbnail.webp
py-src/data_formulator/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2
py-src/data_formulator/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff
py-src/data_formulator/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf
py-src/data_formulator/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf
py-src/data_formulator/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff
py-src/data_formulator/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2
py-src/data_formulator/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff
py-src/data_formulator/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2
py-src/data_formulator/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf
py-src/data_formulator/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf
py-src/data_formulator/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff
py-src/data_formulator/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2
py-src/data_formulator/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf
py-src/data_formulator/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2
py-src/data_formulator/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff
py-src/data_formulator/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2
py-src/data_formulator/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff
py-src/data_formulator/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf
py-src/data_formulator/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2
py-src/data_formulator/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf
py-src/data_formulator/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff
py-src/data_formulator/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf
py-src/data_formulator/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff
py-src/data_formulator/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2
py-src/data_formulator/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2
py-src/data_formulator/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff
py-src/data_formulator/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf
py-src/data_formulator/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf
py-src/data_formulator/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2
py-src/data_formulator/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff
py-src/data_formulator/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff
py-src/data_formulator/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf
py-src/data_formulator/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff
py-src/data_formulator/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2
py-src/data_formulator/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf
py-src/data_formulator/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2
py-src/data_formulator/dist/assets/KaTeX_Script-Regular-D5yQViql.woff
py-src/data_formulator/dist/assets/KaTeX_Size1-Regular-C195tn64.woff
py-src/data_formulator/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf
py-src/data_formulator/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2
py-src/data_formulator/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf
py-src/data_formulator/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2
py-src/data_formulator/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff
py-src/data_formulator/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff
py-src/data_formulator/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf
py-src/data_formulator/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff
py-src/data_formulator/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf
py-src/data_formulator/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2
py-src/data_formulator/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff
py-src/data_formulator/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2
py-src/data_formulator/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf
py-src/data_formulator/dist/assets/chart-icon-dotted-line-min-iiUsajLi.png
py-src/data_formulator/dist/assets/chart-icon-pie-min-OPN8AStu.png
py-src/data_formulator/dist/assets/chart-icon-us-map-min-CBKwYuWG.png
py-src/data_formulator/dist/assets/chart-icon-world-map-min-JGUoZPzz.png
py-src/data_formulator/dist/assets/df-logo-7DDRLOPN.png
py-src/data_formulator/dist/assets/example-image-table-Dt9uSzww.png
py-src/data_formulator/dist/assets/index-CrNgULR5.js
py-src/data_formulator/dist/assets/index-N0lNNMfR.css
py-src/data_formulator/dist/assets/jszip.min-gFyVuGYE.js
py-src/data_formulator/dist/assets/oidcConfig-CynfmwbH.js
py-src/data_formulator/dist/assets/roboto-all-300-normal-lRRuIfal.woff
py-src/data_formulator/dist/assets/roboto-all-400-normal-BZJ9QssU.woff
py-src/data_formulator/dist/assets/roboto-all-500-normal-B0NPRryQ.woff
py-src/data_formulator/dist/assets/roboto-all-700-normal-BfaNsj0k.woff
py-src/data_formulator/dist/assets/roboto-cyrillic-300-normal-D6mjswgs.woff2
py-src/data_formulator/dist/assets/roboto-cyrillic-400-normal-DVDTZtmW.woff2
py-src/data_formulator/dist/assets/roboto-cyrillic-500-normal-DAkZhMOh.woff2
py-src/data_formulator/dist/assets/roboto-cyrillic-700-normal-B5ZBKWCH.woff2
py-src/data_formulator/dist/assets/roboto-cyrillic-ext-300-normal-TzZWIuiO.woff2
py-src/data_formulator/dist/assets/roboto-cyrillic-ext-400-normal-DORK9bGA.woff2
py-src/data_formulator/dist/assets/roboto-cyrillic-ext-500-normal-G9W8hgzQ.woff2
py-src/data_formulator/dist/assets/roboto-cyrillic-ext-700-normal-CsrCEJIc.woff2
py-src/data_formulator/dist/assets/roboto-greek-300-normal-ndiuWqED.woff2
py-src/data_formulator/dist/assets/roboto-greek-400-normal-BRWHCUYo.woff2
py-src/data_formulator/dist/assets/roboto-greek-500-normal-CpESfwfG.woff2
py-src/data_formulator/dist/assets/roboto-greek-700-normal-Cc2Tq8FV.woff2
py-src/data_formulator/dist/assets/roboto-latin-300-normal-ThHrQhYb.woff2
py-src/data_formulator/dist/assets/roboto-latin-400-normal-mTIRXP6Y.woff2
py-src/data_formulator/dist/assets/roboto-latin-500-normal-Dxdx3aXO.woff2
py-src/data_formulator/dist/assets/roboto-latin-700-normal-CeM5gOv8.woff2
py-src/data_formulator/dist/assets/roboto-latin-ext-300-normal-DEsNdRC-.woff2
py-src/data_formulator/dist/assets/roboto-latin-ext-400-normal-4bLplyDh.woff2
py-src/data_formulator/dist/assets/roboto-latin-ext-500-normal-BWKy6SgX.woff2
py-src/data_formulator/dist/assets/roboto-latin-ext-700-normal-BYGCo3Go.woff2
py-src/data_formulator/dist/assets/roboto-vietnamese-300-normal-CnPrVvBs.woff2
py-src/data_formulator/dist/assets/roboto-vietnamese-400-normal-kCRe3VZk.woff2
py-src/data_formulator/dist/assets/roboto-vietnamese-500-normal-CcijQRVW.woff2
py-src/data_formulator/dist/assets/roboto-vietnamese-700-normal-SekShQfT.woff2
py-src/data_formulator/dist/assets/vendor-d3-BxC6hFFh.js
py-src/data_formulator/dist/assets/vendor-editor-CcEKY5MS.js
py-src/data_formulator/dist/assets/vendor-markdown-tTyJYi7m.js
py-src/data_formulator/dist/assets/vendor-misc-C3p-jaG0.js
py-src/data_formulator/dist/assets/vendor-mui-ByrRwq9x.js
py-src/data_formulator/dist/assets/vendor-react-mCmx2-il.js
py-src/data_formulator/dist/assets/vendor-utils-vvlyGmlL.js
py-src/data_formulator/dist/assets/vendor-vega-EuLziQB6.js
py-src/data_formulator/knowledge/__init__.py
py-src/data_formulator/knowledge/store.py
py-src/data_formulator/prompts/__init__.py
py-src/data_formulator/prompts/chart_creation_guide.py
py-src/data_formulator/routes/__init__.py
py-src/data_formulator/routes/agents.py
py-src/data_formulator/routes/credentials.py
py-src/data_formulator/routes/demo_stream.py
py-src/data_formulator/routes/knowledge.py
py-src/data_formulator/routes/sessions.py
py-src/data_formulator/routes/tables.py
py-src/data_formulator/sandbox/__init__.py
py-src/data_formulator/sandbox/base.py
py-src/data_formulator/sandbox/docker_sandbox.py
py-src/data_formulator/sandbox/local_sandbox.py
py-src/data_formulator/sandbox/not_a_sandbox.py
py-src/data_formulator/security/__init__.py
py-src/data_formulator/security/code_signing.py
py-src/data_formulator/security/log_sanitizer.py
py-src/data_formulator/security/path_safety.py
py-src/data_formulator/security/sanitize.py
py-src/data_formulator/security/url_allowlist.py
py-src/data_formulator/workflows/__init__.py
py-src/data_formulator/workflows/chart_semantics.py
py-src/data_formulator/workflows/create_vl_plots.py