ingestr 0.10.1__tar.gz → 0.10.2__tar.gz
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.
Potentially problematic release.
This version of ingestr might be problematic. Click here for more details.
- {ingestr-0.10.1 → ingestr-0.10.2}/PKG-INFO +4 -2
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/.vitepress/config.mjs +1 -0
- ingestr-0.10.2/docs/media/athena.png +0 -0
- ingestr-0.10.2/docs/supported-sources/athena.md +36 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/destinations.py +61 -1
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/factory.py +2 -0
- ingestr-0.10.2/ingestr/src/version.py +1 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/package-lock.json +142 -89
- {ingestr-0.10.1 → ingestr-0.10.2}/package.json +1 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/requirements.txt +3 -2
- ingestr-0.10.1/ingestr/src/version.py +0 -1
- {ingestr-0.10.1 → ingestr-0.10.2}/.dockerignore +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/.github/workflows/deploy-docs.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/.github/workflows/tests.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/.gitignore +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/.python-version +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/.vale.ini +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/Dockerfile +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/LICENSE.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/Makefile +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/README.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/.vitepress/theme/custom.css +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/.vitepress/theme/index.js +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/commands/example-uris.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/commands/ingest.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/getting-started/core-concepts.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/getting-started/incremental-loading.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/getting-started/quickstart.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/getting-started/telemetry.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/index.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/adjust.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/airtable.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/appsflyer.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/bigquery.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/chess.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/csv.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/databricks.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/duckdb.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/facebook-ads.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/gorgias.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/gsheets.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/hubspot.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/kafka.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/klaviyo.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/mongodb.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/mssql.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/mysql.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/notion.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/oracle.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/postgres.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/redshift.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/s3.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/sap-hana.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/shopify.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/slack.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/snowflake.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/sqlite.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/stripe.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/docs/supported-sources/zendesk.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/main.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/.gitignore +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/adjust/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/adjust/adjust_helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/airtable/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/appsflyer/_init_.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/appsflyer/client.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/arrow/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/chess/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/chess/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/chess/settings.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/facebook_ads/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/facebook_ads/exceptions.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/facebook_ads/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/facebook_ads/settings.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/filesystem/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/filesystem/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/filesystem/readers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/filters.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/google_sheets/README.md +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/google_sheets/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/google_sheets/helpers/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/google_sheets/helpers/api_calls.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/google_sheets/helpers/data_processing.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/gorgias/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/gorgias/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/hubspot/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/hubspot/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/hubspot/settings.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/kafka/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/kafka/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/klaviyo/_init_.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/klaviyo/client.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/klaviyo/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/mongodb/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/mongodb/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/notion/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/notion/helpers/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/notion/helpers/client.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/notion/helpers/database.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/notion/settings.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/shopify/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/shopify/exceptions.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/shopify/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/shopify/settings.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/slack/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/slack/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/slack/settings.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/sources.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/stripe_analytics/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/stripe_analytics/helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/stripe_analytics/settings.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/table_definition.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/telemetry/event.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/testdata/fakebqcredentials.json +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/zendesk/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/zendesk/helpers/__init__.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/zendesk/helpers/api_helpers.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/zendesk/helpers/credentials.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/zendesk/helpers/talk_api.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/src/zendesk/settings.py +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/testdata/.gitignore +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/testdata/create_replace.csv +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/testdata/delete_insert_expected.csv +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/testdata/delete_insert_part1.csv +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/testdata/delete_insert_part2.csv +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/testdata/merge_expected.csv +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/testdata/merge_part1.csv +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/ingestr/testdata/merge_part2.csv +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/pyproject.toml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/requirements-dev.txt +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/resources/demo.gif +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/resources/demo.tape +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/resources/ingestr.svg +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/AMPM.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Acronyms.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Colons.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Contractions.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/DateFormat.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Ellipses.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/EmDash.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Exclamation.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/FirstPerson.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Gender.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/GenderBias.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/HeadingPunctuation.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Headings.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Latin.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/LyHyphens.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/OptionalPlurals.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Ordinal.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/OxfordComma.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Parens.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Passive.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Periods.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Quotes.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Ranges.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Semicolons.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Slang.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Spacing.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Spelling.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Units.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/We.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/Will.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/WordList.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/meta.json +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/Google/vocab.txt +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/bruin/Ingestr.yml +0 -0
- {ingestr-0.10.1 → ingestr-0.10.2}/styles/config/vocabularies/bruin/accept.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: ingestr
|
|
3
|
-
Version: 0.10.
|
|
3
|
+
Version: 0.10.2
|
|
4
4
|
Summary: ingestr is a command-line application that ingests data from various sources and stores them in any database.
|
|
5
5
|
Project-URL: Homepage, https://github.com/bruin-data/ingestr
|
|
6
6
|
Project-URL: Issues, https://github.com/bruin-data/ingestr/issues
|
|
@@ -26,13 +26,15 @@ Requires-Dist: pendulum==3.0.0
|
|
|
26
26
|
Requires-Dist: psycopg2-binary==2.9.10
|
|
27
27
|
Requires-Dist: py-machineid==0.6.0
|
|
28
28
|
Requires-Dist: pyairtable==2.3.3
|
|
29
|
+
Requires-Dist: pyarrow==18.1.0
|
|
30
|
+
Requires-Dist: pyathena==3.9.0
|
|
29
31
|
Requires-Dist: pymongo==4.10.1
|
|
30
32
|
Requires-Dist: pymysql==1.1.1
|
|
31
33
|
Requires-Dist: pyrate-limiter==3.7.0
|
|
32
34
|
Requires-Dist: redshift-connector==2.1.3
|
|
33
35
|
Requires-Dist: rich==13.9.4
|
|
34
36
|
Requires-Dist: rudder-sdk-python==2.1.4
|
|
35
|
-
Requires-Dist: s3fs==2024.
|
|
37
|
+
Requires-Dist: s3fs==2024.10.0
|
|
36
38
|
Requires-Dist: snowflake-sqlalchemy==1.6.1
|
|
37
39
|
Requires-Dist: sqlalchemy-bigquery==1.12.0
|
|
38
40
|
Requires-Dist: sqlalchemy-hana==2.0.0
|
|
@@ -57,6 +57,7 @@ export default defineConfig({
|
|
|
57
57
|
text: "Databases",
|
|
58
58
|
collapsed: false,
|
|
59
59
|
items: [
|
|
60
|
+
{ text: "Athena", link: "/supported-sources/athena.md" },
|
|
60
61
|
{ text: "AWS Redshift", link: "/supported-sources/redshift.md" },
|
|
61
62
|
{ text: "Databricks", link: "/supported-sources/databricks.md" },
|
|
62
63
|
{ text: "DuckDB", link: "/supported-sources/duckdb.md" },
|
|
Binary file
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Athena
|
|
2
|
+
[Athena](https://aws.amazon.com/athena/) is an interactive query service that allows users to analyze data directly in Amazon S3 using standard SQL.
|
|
3
|
+
|
|
4
|
+
The Athena destination stores data as Parquet files in S3 buckets and creates external tables in AWS Glue Catalog.
|
|
5
|
+
|
|
6
|
+
ingestr supports Athena as a destination.
|
|
7
|
+
|
|
8
|
+
## URI format
|
|
9
|
+
The URI format for Athena is as follows:
|
|
10
|
+
|
|
11
|
+
```plaintext
|
|
12
|
+
athena://?bucket=<your-destination-bucket> \
|
|
13
|
+
query_results_path=<your-query-results-location> \
|
|
14
|
+
access_key_id=<your-aws-access-key-id> \
|
|
15
|
+
secret_access_key=<your-aws-secret-access-key> \
|
|
16
|
+
region_name=<your-aws-region>
|
|
17
|
+
```
|
|
18
|
+
URI parameters:
|
|
19
|
+
- `bucket` (required): The name of the bucket where the data will be stored, containing the Parquet files that Athena will work with, e.g. `your_bucket_name` or `s3://your_bucket_name`.
|
|
20
|
+
- `access_key_id` and `secret_access_key` (required): These are AWS credentials that will be used to authenticate with AWS services like S3 and Athena.
|
|
21
|
+
- `region_name` (required): The AWS region of the Athena service and S3 buckets, e.g. `eu-central-1`
|
|
22
|
+
- `query_results_path` (optional): The query location path where the results of Athena queries will be saved, e.g. `dest_path` or `s3://dest_path`. If not provided, it will default to the bucket specified in the `bucket` parameter.
|
|
23
|
+
- `workgroup` (optional): The name of the Athena workgroup, e.g. `my_group`
|
|
24
|
+
|
|
25
|
+
## Setting up an Athena Integration
|
|
26
|
+
Athena requires a `bucket`, `access_key_id`, `secret_access_key` and `region_name` to access the S3 bucket. Please follow the guide on dltHub to obtain [credentials](https://dlthub.com/docs/dlt-ecosystem/destinations/athena#2-setup-bucket-storage-and-athena-credentials). Once you've completed the guide, you should have all the above-mentioned credentials.
|
|
27
|
+
```
|
|
28
|
+
ingestr ingest \
|
|
29
|
+
--source-uri "stripe://?api_key=key123" \
|
|
30
|
+
--source-table 'event' \
|
|
31
|
+
--dest-uri "athena://?bucket=bucket_123&access_key_id=access_123&secret_access_key=secret_123®ion_name=eu-central-1" \
|
|
32
|
+
--dest-table 'stripe.event'
|
|
33
|
+
```
|
|
34
|
+
This is a sample command that will copy the data from the Stripe source into Athena.
|
|
35
|
+
|
|
36
|
+
<img alt="athena_img" src="../media/athena.png" />
|
|
@@ -5,9 +5,10 @@ import json
|
|
|
5
5
|
import os
|
|
6
6
|
import shutil
|
|
7
7
|
import tempfile
|
|
8
|
-
from urllib.parse import parse_qs, urlparse
|
|
8
|
+
from urllib.parse import parse_qs, quote, urlparse
|
|
9
9
|
|
|
10
10
|
import dlt
|
|
11
|
+
from dlt.common.configuration.specs import AwsCredentials
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
class GenericSqlDestination:
|
|
@@ -194,3 +195,62 @@ class CsvDestination(GenericSqlDestination):
|
|
|
194
195
|
csv_writer.writerow(json_obj)
|
|
195
196
|
|
|
196
197
|
shutil.rmtree(self.temp_path)
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
class AthenaDestination:
|
|
201
|
+
def dlt_dest(self, uri: str, **kwargs):
|
|
202
|
+
encoded_uri = quote(uri, safe=":/?&=")
|
|
203
|
+
source_fields = urlparse(encoded_uri)
|
|
204
|
+
source_params = parse_qs(source_fields.query)
|
|
205
|
+
|
|
206
|
+
bucket = source_params.get("bucket", [None])[0]
|
|
207
|
+
if not bucket:
|
|
208
|
+
raise ValueError("A bucket is required to connect to Athena.")
|
|
209
|
+
|
|
210
|
+
if not bucket.startswith("s3://"):
|
|
211
|
+
bucket = f"s3://{bucket}"
|
|
212
|
+
|
|
213
|
+
query_result_path = source_params.get("query_results_path", [None])[0]
|
|
214
|
+
if query_result_path:
|
|
215
|
+
if not query_result_path.startswith("s3://"):
|
|
216
|
+
query_result_path = f"s3://{query_result_path}"
|
|
217
|
+
else:
|
|
218
|
+
query_result_path = bucket
|
|
219
|
+
|
|
220
|
+
access_key_id = source_params.get("access_key_id", [None])[0]
|
|
221
|
+
if not access_key_id:
|
|
222
|
+
raise ValueError("The AWS access_key_id is required to connect to Athena.")
|
|
223
|
+
|
|
224
|
+
secret_access_key = source_params.get("secret_access_key", [None])[0]
|
|
225
|
+
if not secret_access_key:
|
|
226
|
+
raise ValueError("The AWS secret_access_key is required to connect Athena")
|
|
227
|
+
|
|
228
|
+
work_group = source_params.get("workgroup", [None])[0]
|
|
229
|
+
|
|
230
|
+
region_name = source_params.get("region_name", [None])[0]
|
|
231
|
+
if not region_name:
|
|
232
|
+
raise ValueError("The region_name is required to connect to Athena.")
|
|
233
|
+
|
|
234
|
+
os.environ["DESTINATION__BUCKET_URL"] = bucket
|
|
235
|
+
os.environ["DESTINATION__CREDENTIALS__AWS_ACCESS_KEY_ID"] = access_key_id
|
|
236
|
+
os.environ["DESTINATION__CREDENTIALS__AWS_SECRET_ACCESS_KEY"] = (
|
|
237
|
+
secret_access_key
|
|
238
|
+
)
|
|
239
|
+
|
|
240
|
+
credentials = AwsCredentials(
|
|
241
|
+
aws_access_key_id=access_key_id,
|
|
242
|
+
aws_secret_access_key=secret_access_key,
|
|
243
|
+
region_name=region_name,
|
|
244
|
+
)
|
|
245
|
+
return dlt.destinations.athena(
|
|
246
|
+
query_result_bucket=query_result_path,
|
|
247
|
+
athena_work_group=work_group,
|
|
248
|
+
credentials=credentials,
|
|
249
|
+
destination_name=bucket,
|
|
250
|
+
)
|
|
251
|
+
|
|
252
|
+
def dlt_run_params(self, uri: str, table: str, **kwargs) -> dict:
|
|
253
|
+
return {}
|
|
254
|
+
|
|
255
|
+
def post_load(self):
|
|
256
|
+
pass
|
|
@@ -4,6 +4,7 @@ from urllib.parse import urlparse
|
|
|
4
4
|
from dlt.common.destination import Destination
|
|
5
5
|
|
|
6
6
|
from ingestr.src.destinations import (
|
|
7
|
+
AthenaDestination,
|
|
7
8
|
BigQueryDestination,
|
|
8
9
|
CsvDestination,
|
|
9
10
|
DatabricksDestination,
|
|
@@ -159,6 +160,7 @@ class SourceDestinationFactory:
|
|
|
159
160
|
"snowflake": SnowflakeDestination(),
|
|
160
161
|
"synapse": SynapseDestination(),
|
|
161
162
|
"csv": CsvDestination(),
|
|
163
|
+
"athena": AthenaDestination(),
|
|
162
164
|
}
|
|
163
165
|
|
|
164
166
|
if self.destination_scheme in match:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.10.2"
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
"packages": {
|
|
6
6
|
"": {
|
|
7
7
|
"devDependencies": {
|
|
8
|
+
"rollup": "^4.27.3",
|
|
8
9
|
"vitepress": "^1.3.2"
|
|
9
10
|
}
|
|
10
11
|
},
|
|
@@ -671,208 +672,252 @@
|
|
|
671
672
|
"dev": true
|
|
672
673
|
},
|
|
673
674
|
"node_modules/@rollup/rollup-android-arm-eabi": {
|
|
674
|
-
"version": "4.
|
|
675
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.
|
|
676
|
-
"integrity": "sha512-
|
|
675
|
+
"version": "4.27.3",
|
|
676
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.27.3.tgz",
|
|
677
|
+
"integrity": "sha512-EzxVSkIvCFxUd4Mgm4xR9YXrcp976qVaHnqom/Tgm+vU79k4vV4eYTjmRvGfeoW8m9LVcsAy/lGjcgVegKEhLQ==",
|
|
677
678
|
"cpu": [
|
|
678
679
|
"arm"
|
|
679
680
|
],
|
|
680
681
|
"dev": true,
|
|
682
|
+
"license": "MIT",
|
|
681
683
|
"optional": true,
|
|
682
684
|
"os": [
|
|
683
685
|
"android"
|
|
684
686
|
]
|
|
685
687
|
},
|
|
686
688
|
"node_modules/@rollup/rollup-android-arm64": {
|
|
687
|
-
"version": "4.
|
|
688
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.
|
|
689
|
-
"integrity": "sha512-
|
|
689
|
+
"version": "4.27.3",
|
|
690
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.27.3.tgz",
|
|
691
|
+
"integrity": "sha512-LJc5pDf1wjlt9o/Giaw9Ofl+k/vLUaYsE2zeQGH85giX2F+wn/Cg8b3c5CDP3qmVmeO5NzwVUzQQxwZvC2eQKw==",
|
|
690
692
|
"cpu": [
|
|
691
693
|
"arm64"
|
|
692
694
|
],
|
|
693
695
|
"dev": true,
|
|
696
|
+
"license": "MIT",
|
|
694
697
|
"optional": true,
|
|
695
698
|
"os": [
|
|
696
699
|
"android"
|
|
697
700
|
]
|
|
698
701
|
},
|
|
699
702
|
"node_modules/@rollup/rollup-darwin-arm64": {
|
|
700
|
-
"version": "4.
|
|
701
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.
|
|
702
|
-
"integrity": "sha512-
|
|
703
|
+
"version": "4.27.3",
|
|
704
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.27.3.tgz",
|
|
705
|
+
"integrity": "sha512-OuRysZ1Mt7wpWJ+aYKblVbJWtVn3Cy52h8nLuNSzTqSesYw1EuN6wKp5NW/4eSre3mp12gqFRXOKTcN3AI3LqA==",
|
|
703
706
|
"cpu": [
|
|
704
707
|
"arm64"
|
|
705
708
|
],
|
|
706
709
|
"dev": true,
|
|
710
|
+
"license": "MIT",
|
|
707
711
|
"optional": true,
|
|
708
712
|
"os": [
|
|
709
713
|
"darwin"
|
|
710
714
|
]
|
|
711
715
|
},
|
|
712
716
|
"node_modules/@rollup/rollup-darwin-x64": {
|
|
713
|
-
"version": "4.
|
|
714
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.
|
|
715
|
-
"integrity": "sha512-
|
|
717
|
+
"version": "4.27.3",
|
|
718
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.27.3.tgz",
|
|
719
|
+
"integrity": "sha512-xW//zjJMlJs2sOrCmXdB4d0uiilZsOdlGQIC/jjmMWT47lkLLoB1nsNhPUcnoqyi5YR6I4h+FjBpILxbEy8JRg==",
|
|
716
720
|
"cpu": [
|
|
717
721
|
"x64"
|
|
718
722
|
],
|
|
719
723
|
"dev": true,
|
|
724
|
+
"license": "MIT",
|
|
720
725
|
"optional": true,
|
|
721
726
|
"os": [
|
|
722
727
|
"darwin"
|
|
723
728
|
]
|
|
724
729
|
},
|
|
730
|
+
"node_modules/@rollup/rollup-freebsd-arm64": {
|
|
731
|
+
"version": "4.27.3",
|
|
732
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.27.3.tgz",
|
|
733
|
+
"integrity": "sha512-58E0tIcwZ+12nK1WiLzHOD8I0d0kdrY/+o7yFVPRHuVGY3twBwzwDdTIBGRxLmyjciMYl1B/U515GJy+yn46qw==",
|
|
734
|
+
"cpu": [
|
|
735
|
+
"arm64"
|
|
736
|
+
],
|
|
737
|
+
"dev": true,
|
|
738
|
+
"license": "MIT",
|
|
739
|
+
"optional": true,
|
|
740
|
+
"os": [
|
|
741
|
+
"freebsd"
|
|
742
|
+
]
|
|
743
|
+
},
|
|
744
|
+
"node_modules/@rollup/rollup-freebsd-x64": {
|
|
745
|
+
"version": "4.27.3",
|
|
746
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.27.3.tgz",
|
|
747
|
+
"integrity": "sha512-78fohrpcVwTLxg1ZzBMlwEimoAJmY6B+5TsyAZ3Vok7YabRBUvjYTsRXPTjGEvv/mfgVBepbW28OlMEz4w8wGA==",
|
|
748
|
+
"cpu": [
|
|
749
|
+
"x64"
|
|
750
|
+
],
|
|
751
|
+
"dev": true,
|
|
752
|
+
"license": "MIT",
|
|
753
|
+
"optional": true,
|
|
754
|
+
"os": [
|
|
755
|
+
"freebsd"
|
|
756
|
+
]
|
|
757
|
+
},
|
|
725
758
|
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
|
|
726
|
-
"version": "4.
|
|
727
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.
|
|
728
|
-
"integrity": "sha512-
|
|
759
|
+
"version": "4.27.3",
|
|
760
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.27.3.tgz",
|
|
761
|
+
"integrity": "sha512-h2Ay79YFXyQi+QZKo3ISZDyKaVD7uUvukEHTOft7kh00WF9mxAaxZsNs3o/eukbeKuH35jBvQqrT61fzKfAB/Q==",
|
|
729
762
|
"cpu": [
|
|
730
763
|
"arm"
|
|
731
764
|
],
|
|
732
765
|
"dev": true,
|
|
766
|
+
"license": "MIT",
|
|
733
767
|
"optional": true,
|
|
734
768
|
"os": [
|
|
735
769
|
"linux"
|
|
736
770
|
]
|
|
737
771
|
},
|
|
738
772
|
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
|
|
739
|
-
"version": "4.
|
|
740
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.
|
|
741
|
-
"integrity": "sha512-
|
|
773
|
+
"version": "4.27.3",
|
|
774
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.27.3.tgz",
|
|
775
|
+
"integrity": "sha512-Sv2GWmrJfRY57urktVLQ0VKZjNZGogVtASAgosDZ1aUB+ykPxSi3X1nWORL5Jk0sTIIwQiPH7iE3BMi9zGWfkg==",
|
|
742
776
|
"cpu": [
|
|
743
777
|
"arm"
|
|
744
778
|
],
|
|
745
779
|
"dev": true,
|
|
780
|
+
"license": "MIT",
|
|
746
781
|
"optional": true,
|
|
747
782
|
"os": [
|
|
748
783
|
"linux"
|
|
749
784
|
]
|
|
750
785
|
},
|
|
751
786
|
"node_modules/@rollup/rollup-linux-arm64-gnu": {
|
|
752
|
-
"version": "4.
|
|
753
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.
|
|
754
|
-
"integrity": "sha512-
|
|
787
|
+
"version": "4.27.3",
|
|
788
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.27.3.tgz",
|
|
789
|
+
"integrity": "sha512-FPoJBLsPW2bDNWjSrwNuTPUt30VnfM8GPGRoLCYKZpPx0xiIEdFip3dH6CqgoT0RnoGXptaNziM0WlKgBc+OWQ==",
|
|
755
790
|
"cpu": [
|
|
756
791
|
"arm64"
|
|
757
792
|
],
|
|
758
793
|
"dev": true,
|
|
794
|
+
"license": "MIT",
|
|
759
795
|
"optional": true,
|
|
760
796
|
"os": [
|
|
761
797
|
"linux"
|
|
762
798
|
]
|
|
763
799
|
},
|
|
764
800
|
"node_modules/@rollup/rollup-linux-arm64-musl": {
|
|
765
|
-
"version": "4.
|
|
766
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.
|
|
767
|
-
"integrity": "sha512-
|
|
801
|
+
"version": "4.27.3",
|
|
802
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.27.3.tgz",
|
|
803
|
+
"integrity": "sha512-TKxiOvBorYq4sUpA0JT+Fkh+l+G9DScnG5Dqx7wiiqVMiRSkzTclP35pE6eQQYjP4Gc8yEkJGea6rz4qyWhp3g==",
|
|
768
804
|
"cpu": [
|
|
769
805
|
"arm64"
|
|
770
806
|
],
|
|
771
807
|
"dev": true,
|
|
808
|
+
"license": "MIT",
|
|
772
809
|
"optional": true,
|
|
773
810
|
"os": [
|
|
774
811
|
"linux"
|
|
775
812
|
]
|
|
776
813
|
},
|
|
777
814
|
"node_modules/@rollup/rollup-linux-powerpc64le-gnu": {
|
|
778
|
-
"version": "4.
|
|
779
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.
|
|
780
|
-
"integrity": "sha512-
|
|
815
|
+
"version": "4.27.3",
|
|
816
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.27.3.tgz",
|
|
817
|
+
"integrity": "sha512-v2M/mPvVUKVOKITa0oCFksnQQ/TqGrT+yD0184/cWHIu0LoIuYHwox0Pm3ccXEz8cEQDLk6FPKd1CCm+PlsISw==",
|
|
781
818
|
"cpu": [
|
|
782
819
|
"ppc64"
|
|
783
820
|
],
|
|
784
821
|
"dev": true,
|
|
822
|
+
"license": "MIT",
|
|
785
823
|
"optional": true,
|
|
786
824
|
"os": [
|
|
787
825
|
"linux"
|
|
788
826
|
]
|
|
789
827
|
},
|
|
790
828
|
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
|
|
791
|
-
"version": "4.
|
|
792
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.
|
|
793
|
-
"integrity": "sha512-
|
|
829
|
+
"version": "4.27.3",
|
|
830
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.27.3.tgz",
|
|
831
|
+
"integrity": "sha512-LdrI4Yocb1a/tFVkzmOE5WyYRgEBOyEhWYJe4gsDWDiwnjYKjNs7PS6SGlTDB7maOHF4kxevsuNBl2iOcj3b4A==",
|
|
794
832
|
"cpu": [
|
|
795
833
|
"riscv64"
|
|
796
834
|
],
|
|
797
835
|
"dev": true,
|
|
836
|
+
"license": "MIT",
|
|
798
837
|
"optional": true,
|
|
799
838
|
"os": [
|
|
800
839
|
"linux"
|
|
801
840
|
]
|
|
802
841
|
},
|
|
803
842
|
"node_modules/@rollup/rollup-linux-s390x-gnu": {
|
|
804
|
-
"version": "4.
|
|
805
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.
|
|
806
|
-
"integrity": "sha512-
|
|
843
|
+
"version": "4.27.3",
|
|
844
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.27.3.tgz",
|
|
845
|
+
"integrity": "sha512-d4wVu6SXij/jyiwPvI6C4KxdGzuZOvJ6y9VfrcleHTwo68fl8vZC5ZYHsCVPUi4tndCfMlFniWgwonQ5CUpQcA==",
|
|
807
846
|
"cpu": [
|
|
808
847
|
"s390x"
|
|
809
848
|
],
|
|
810
849
|
"dev": true,
|
|
850
|
+
"license": "MIT",
|
|
811
851
|
"optional": true,
|
|
812
852
|
"os": [
|
|
813
853
|
"linux"
|
|
814
854
|
]
|
|
815
855
|
},
|
|
816
856
|
"node_modules/@rollup/rollup-linux-x64-gnu": {
|
|
817
|
-
"version": "4.
|
|
818
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.
|
|
819
|
-
"integrity": "sha512
|
|
857
|
+
"version": "4.27.3",
|
|
858
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.27.3.tgz",
|
|
859
|
+
"integrity": "sha512-/6bn6pp1fsCGEY5n3yajmzZQAh+mW4QPItbiWxs69zskBzJuheb3tNynEjL+mKOsUSFK11X4LYF2BwwXnzWleA==",
|
|
820
860
|
"cpu": [
|
|
821
861
|
"x64"
|
|
822
862
|
],
|
|
823
863
|
"dev": true,
|
|
864
|
+
"license": "MIT",
|
|
824
865
|
"optional": true,
|
|
825
866
|
"os": [
|
|
826
867
|
"linux"
|
|
827
868
|
]
|
|
828
869
|
},
|
|
829
870
|
"node_modules/@rollup/rollup-linux-x64-musl": {
|
|
830
|
-
"version": "4.
|
|
831
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.
|
|
832
|
-
"integrity": "sha512-
|
|
871
|
+
"version": "4.27.3",
|
|
872
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.27.3.tgz",
|
|
873
|
+
"integrity": "sha512-nBXOfJds8OzUT1qUreT/en3eyOXd2EH5b0wr2bVB5999qHdGKkzGzIyKYaKj02lXk6wpN71ltLIaQpu58YFBoQ==",
|
|
833
874
|
"cpu": [
|
|
834
875
|
"x64"
|
|
835
876
|
],
|
|
836
877
|
"dev": true,
|
|
878
|
+
"license": "MIT",
|
|
837
879
|
"optional": true,
|
|
838
880
|
"os": [
|
|
839
881
|
"linux"
|
|
840
882
|
]
|
|
841
883
|
},
|
|
842
884
|
"node_modules/@rollup/rollup-win32-arm64-msvc": {
|
|
843
|
-
"version": "4.
|
|
844
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.
|
|
845
|
-
"integrity": "sha512-
|
|
885
|
+
"version": "4.27.3",
|
|
886
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.27.3.tgz",
|
|
887
|
+
"integrity": "sha512-ogfbEVQgIZOz5WPWXF2HVb6En+kWzScuxJo/WdQTqEgeyGkaa2ui5sQav9Zkr7bnNCLK48uxmmK0TySm22eiuw==",
|
|
846
888
|
"cpu": [
|
|
847
889
|
"arm64"
|
|
848
890
|
],
|
|
849
891
|
"dev": true,
|
|
892
|
+
"license": "MIT",
|
|
850
893
|
"optional": true,
|
|
851
894
|
"os": [
|
|
852
895
|
"win32"
|
|
853
896
|
]
|
|
854
897
|
},
|
|
855
898
|
"node_modules/@rollup/rollup-win32-ia32-msvc": {
|
|
856
|
-
"version": "4.
|
|
857
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.
|
|
858
|
-
"integrity": "sha512-
|
|
899
|
+
"version": "4.27.3",
|
|
900
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.27.3.tgz",
|
|
901
|
+
"integrity": "sha512-ecE36ZBMLINqiTtSNQ1vzWc5pXLQHlf/oqGp/bSbi7iedcjcNb6QbCBNG73Euyy2C+l/fn8qKWEwxr+0SSfs3w==",
|
|
859
902
|
"cpu": [
|
|
860
903
|
"ia32"
|
|
861
904
|
],
|
|
862
905
|
"dev": true,
|
|
906
|
+
"license": "MIT",
|
|
863
907
|
"optional": true,
|
|
864
908
|
"os": [
|
|
865
909
|
"win32"
|
|
866
910
|
]
|
|
867
911
|
},
|
|
868
912
|
"node_modules/@rollup/rollup-win32-x64-msvc": {
|
|
869
|
-
"version": "4.
|
|
870
|
-
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.
|
|
871
|
-
"integrity": "sha512-
|
|
913
|
+
"version": "4.27.3",
|
|
914
|
+
"resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.27.3.tgz",
|
|
915
|
+
"integrity": "sha512-vliZLrDmYKyaUoMzEbMTg2JkerfBjn03KmAw9CykO0Zzkzoyd7o3iZNam/TpyWNjNT+Cz2iO3P9Smv2wgrR+Eg==",
|
|
872
916
|
"cpu": [
|
|
873
917
|
"x64"
|
|
874
918
|
],
|
|
875
919
|
"dev": true,
|
|
920
|
+
"license": "MIT",
|
|
876
921
|
"optional": true,
|
|
877
922
|
"os": [
|
|
878
923
|
"win32"
|
|
@@ -897,10 +942,11 @@
|
|
|
897
942
|
}
|
|
898
943
|
},
|
|
899
944
|
"node_modules/@types/estree": {
|
|
900
|
-
"version": "1.0.
|
|
901
|
-
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.
|
|
902
|
-
"integrity": "sha512
|
|
903
|
-
"dev": true
|
|
945
|
+
"version": "1.0.6",
|
|
946
|
+
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz",
|
|
947
|
+
"integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==",
|
|
948
|
+
"dev": true,
|
|
949
|
+
"license": "MIT"
|
|
904
950
|
},
|
|
905
951
|
"node_modules/@types/hast": {
|
|
906
952
|
"version": "3.0.4",
|
|
@@ -1473,15 +1519,16 @@
|
|
|
1473
1519
|
"dev": true
|
|
1474
1520
|
},
|
|
1475
1521
|
"node_modules/picocolors": {
|
|
1476
|
-
"version": "1.
|
|
1477
|
-
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.
|
|
1478
|
-
"integrity": "sha512-
|
|
1479
|
-
"dev": true
|
|
1522
|
+
"version": "1.1.1",
|
|
1523
|
+
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
|
|
1524
|
+
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
|
|
1525
|
+
"dev": true,
|
|
1526
|
+
"license": "ISC"
|
|
1480
1527
|
},
|
|
1481
1528
|
"node_modules/postcss": {
|
|
1482
|
-
"version": "8.4.
|
|
1483
|
-
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.
|
|
1484
|
-
"integrity": "sha512-
|
|
1529
|
+
"version": "8.4.49",
|
|
1530
|
+
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz",
|
|
1531
|
+
"integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==",
|
|
1485
1532
|
"dev": true,
|
|
1486
1533
|
"funding": [
|
|
1487
1534
|
{
|
|
@@ -1497,10 +1544,11 @@
|
|
|
1497
1544
|
"url": "https://github.com/sponsors/ai"
|
|
1498
1545
|
}
|
|
1499
1546
|
],
|
|
1547
|
+
"license": "MIT",
|
|
1500
1548
|
"dependencies": {
|
|
1501
1549
|
"nanoid": "^3.3.7",
|
|
1502
|
-
"picocolors": "^1.
|
|
1503
|
-
"source-map-js": "^1.2.
|
|
1550
|
+
"picocolors": "^1.1.1",
|
|
1551
|
+
"source-map-js": "^1.2.1"
|
|
1504
1552
|
},
|
|
1505
1553
|
"engines": {
|
|
1506
1554
|
"node": "^10 || ^12 || >=14"
|
|
@@ -1523,12 +1571,13 @@
|
|
|
1523
1571
|
"dev": true
|
|
1524
1572
|
},
|
|
1525
1573
|
"node_modules/rollup": {
|
|
1526
|
-
"version": "4.
|
|
1527
|
-
"resolved": "https://registry.npmjs.org/rollup/-/rollup-4.
|
|
1528
|
-
"integrity": "sha512-
|
|
1574
|
+
"version": "4.27.3",
|
|
1575
|
+
"resolved": "https://registry.npmjs.org/rollup/-/rollup-4.27.3.tgz",
|
|
1576
|
+
"integrity": "sha512-SLsCOnlmGt9VoZ9Ek8yBK8tAdmPHeppkw+Xa7yDlCEhDTvwYei03JlWo1fdc7YTfLZ4tD8riJCUyAgTbszk1fQ==",
|
|
1529
1577
|
"dev": true,
|
|
1578
|
+
"license": "MIT",
|
|
1530
1579
|
"dependencies": {
|
|
1531
|
-
"@types/estree": "1.0.
|
|
1580
|
+
"@types/estree": "1.0.6"
|
|
1532
1581
|
},
|
|
1533
1582
|
"bin": {
|
|
1534
1583
|
"rollup": "dist/bin/rollup"
|
|
@@ -1538,22 +1587,24 @@
|
|
|
1538
1587
|
"npm": ">=8.0.0"
|
|
1539
1588
|
},
|
|
1540
1589
|
"optionalDependencies": {
|
|
1541
|
-
"@rollup/rollup-android-arm-eabi": "4.
|
|
1542
|
-
"@rollup/rollup-android-arm64": "4.
|
|
1543
|
-
"@rollup/rollup-darwin-arm64": "4.
|
|
1544
|
-
"@rollup/rollup-darwin-x64": "4.
|
|
1545
|
-
"@rollup/rollup-
|
|
1546
|
-
"@rollup/rollup-
|
|
1547
|
-
"@rollup/rollup-linux-
|
|
1548
|
-
"@rollup/rollup-linux-
|
|
1549
|
-
"@rollup/rollup-linux-
|
|
1550
|
-
"@rollup/rollup-linux-
|
|
1551
|
-
"@rollup/rollup-linux-
|
|
1552
|
-
"@rollup/rollup-linux-
|
|
1553
|
-
"@rollup/rollup-linux-
|
|
1554
|
-
"@rollup/rollup-
|
|
1555
|
-
"@rollup/rollup-
|
|
1556
|
-
"@rollup/rollup-win32-
|
|
1590
|
+
"@rollup/rollup-android-arm-eabi": "4.27.3",
|
|
1591
|
+
"@rollup/rollup-android-arm64": "4.27.3",
|
|
1592
|
+
"@rollup/rollup-darwin-arm64": "4.27.3",
|
|
1593
|
+
"@rollup/rollup-darwin-x64": "4.27.3",
|
|
1594
|
+
"@rollup/rollup-freebsd-arm64": "4.27.3",
|
|
1595
|
+
"@rollup/rollup-freebsd-x64": "4.27.3",
|
|
1596
|
+
"@rollup/rollup-linux-arm-gnueabihf": "4.27.3",
|
|
1597
|
+
"@rollup/rollup-linux-arm-musleabihf": "4.27.3",
|
|
1598
|
+
"@rollup/rollup-linux-arm64-gnu": "4.27.3",
|
|
1599
|
+
"@rollup/rollup-linux-arm64-musl": "4.27.3",
|
|
1600
|
+
"@rollup/rollup-linux-powerpc64le-gnu": "4.27.3",
|
|
1601
|
+
"@rollup/rollup-linux-riscv64-gnu": "4.27.3",
|
|
1602
|
+
"@rollup/rollup-linux-s390x-gnu": "4.27.3",
|
|
1603
|
+
"@rollup/rollup-linux-x64-gnu": "4.27.3",
|
|
1604
|
+
"@rollup/rollup-linux-x64-musl": "4.27.3",
|
|
1605
|
+
"@rollup/rollup-win32-arm64-msvc": "4.27.3",
|
|
1606
|
+
"@rollup/rollup-win32-ia32-msvc": "4.27.3",
|
|
1607
|
+
"@rollup/rollup-win32-x64-msvc": "4.27.3",
|
|
1557
1608
|
"fsevents": "~2.3.2"
|
|
1558
1609
|
}
|
|
1559
1610
|
},
|
|
@@ -1575,10 +1626,11 @@
|
|
|
1575
1626
|
}
|
|
1576
1627
|
},
|
|
1577
1628
|
"node_modules/source-map-js": {
|
|
1578
|
-
"version": "1.2.
|
|
1579
|
-
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.
|
|
1580
|
-
"integrity": "sha512-
|
|
1629
|
+
"version": "1.2.1",
|
|
1630
|
+
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
|
|
1631
|
+
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
|
|
1581
1632
|
"dev": true,
|
|
1633
|
+
"license": "BSD-3-Clause",
|
|
1582
1634
|
"engines": {
|
|
1583
1635
|
"node": ">=0.10.0"
|
|
1584
1636
|
}
|
|
@@ -1620,14 +1672,15 @@
|
|
|
1620
1672
|
}
|
|
1621
1673
|
},
|
|
1622
1674
|
"node_modules/vite": {
|
|
1623
|
-
"version": "5.4.
|
|
1624
|
-
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.
|
|
1625
|
-
"integrity": "sha512-
|
|
1675
|
+
"version": "5.4.11",
|
|
1676
|
+
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz",
|
|
1677
|
+
"integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==",
|
|
1626
1678
|
"dev": true,
|
|
1679
|
+
"license": "MIT",
|
|
1627
1680
|
"dependencies": {
|
|
1628
1681
|
"esbuild": "^0.21.3",
|
|
1629
|
-
"postcss": "^8.4.
|
|
1630
|
-
"rollup": "^4.
|
|
1682
|
+
"postcss": "^8.4.43",
|
|
1683
|
+
"rollup": "^4.20.0"
|
|
1631
1684
|
},
|
|
1632
1685
|
"bin": {
|
|
1633
1686
|
"vite": "bin/vite.js"
|