cognite-toolkit 0.7.32__tar.gz → 0.7.34__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.
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/PKG-INFO +1 -1
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_migrate_app.py +76 -2
- cognite_toolkit-0.7.34/cognite_toolkit/_cdf_tk/client/api/three_d.py +131 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/base.py +4 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/instance_api.py +17 -12
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/three_d.py +3 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/testing.py +6 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/data_classes.py +32 -1
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/data_mapper.py +93 -7
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/issues.py +18 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/migration_io.py +107 -1
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/__init__.py +10 -1
- cognite_toolkit-0.7.34/cognite_toolkit/_cdf_tk/storageio/selectors/_three_d.py +34 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/http_client/_tracker.py +5 -2
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/interactive_select.py +47 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_repo_files/GitHub/.github/workflows/deploy.yaml +1 -1
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_repo_files/GitHub/.github/workflows/dry-run.yaml +1 -1
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_resources/cdf.toml +1 -1
- cognite_toolkit-0.7.34/cognite_toolkit/_version.py +1 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/pyproject.toml +2 -1
- cognite_toolkit-0.7.32/cognite_toolkit/_cdf_tk/client/api/three_d.py +0 -50
- cognite_toolkit-0.7.32/cognite_toolkit/_version.py +0 -1
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/README.md +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_auth_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_core_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_data_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_dev_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_download_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_dump_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_import_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_landing_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_modules_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_profile_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_purge.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_repo_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_run.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_upload_app.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/_base.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/_datamodels.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/_file.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/_function.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/_location.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/_raw.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/_streamlit.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/builders/_transformation.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cdf_toml.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/_constants.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/_toolkit_client.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/canvas.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/charts.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/dml.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/extended_data_modeling.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/extended_files.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/extended_functions.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/extended_raw.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/extended_timeseries.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/fixed_transformations.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/infield.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/location_filters.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/lookup.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/migration.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/project.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/api.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/capabilities.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/data_postprocessing.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/frames.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/locations.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/maps.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/robots.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/robotics/utlis.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/search.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/search_config.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/streams.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/token.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api/verify.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/api_client.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/config.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/api_classes.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/apm_config_v1.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/canvas.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/capabilities.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/charts.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/charts_data.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/extendable_cognite_file.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/extended_filemetadata.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/extended_filemetdata.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/extended_timeseries.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/functions.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/graphql_data_models.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/infield.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/instances.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/location_filters.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/migration.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/pending_instances_ids.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/project.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/raw.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/robotics.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/search_config.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/sequences.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/streamlit_.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/data_classes/streams.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/utils/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/utils/_concurrency.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/client/utils/_http_client.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_base.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_changes.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_cli_commands.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_download.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_import_cmd.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/command.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/conversion.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/creators.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/data_model.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/default_mappings.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/prepare.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_migrate/selectors.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_profile.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_purge.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_questionary_style.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_upload.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_utils.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/_virtual_env.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/about.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/auth.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/build_cmd.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/build_v2/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/build_v2/build_cmd.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/build_v2/build_input.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/build_v2/build_issues.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/clean.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/collect.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/deploy.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/dump_resource.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/init.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/modules.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/pull.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/repo.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/resources.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/commands/run.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/constants.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_base_cruds.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_data_cruds.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/agent.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/auth.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/classic.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/configuration.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/data_organization.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/datamodel.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/extraction_pipeline.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/fieldops.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/file.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/function.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/group_scoped.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/hosted_extractors.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/industrial_tool.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/location.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/migration.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/raw.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/relationship.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/robotics.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/streams.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/three_d_model.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/timeseries.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/transformation.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_resource_cruds/workflow.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/cruds/_worker.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_base.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_build_files.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_build_variables.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_built_modules.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_built_resources.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_config_yaml.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_deploy_results.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_module_directories.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_module_resources.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_module_toml.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_packages.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_tracking_info.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/data_classes/_yaml_comments.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/exceptions.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/feature_flags.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/hints.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/plugins.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/protocols.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/agent.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/agent_tools.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/asset.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/authentication.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/base.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/capabilities.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/cognitefile.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/container_field_definitions.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/containers.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/data_model.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/datapoint_subscription.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/dataset.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/event.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/extraction_pipeline.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/extraction_pipeline_config.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/filemetadata.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/function_schedule.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/functions.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/graphql_model.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/groups.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_destination.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_job.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_mapping.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/hosted_extractor_source.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/infield_cdm_location_config.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/infield_location_config.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/infield_v1.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/instance.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/labels.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/location.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/migration.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/raw_database_table.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/relationship.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/robotics/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/robotics/capability.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/robotics/data_postprocessing.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/robotics/frame.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/robotics/location.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/robotics/map.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/search_config.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/securitycategories.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/sequence.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/space.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/streamlit_.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/streams.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/threedmodels.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/timeseries.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/transformation_destination.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/transformation_notification.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/transformation_schedule.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/transformations.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/view_field_definitions.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/views.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/workflow.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/workflow_trigger.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/resource_classes/workflow_version.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_annotations.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_applications.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_asset_centric.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_base.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_data_classes.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_datapoints.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_file_content.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_instances.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/_raw.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/_asset_centric.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/_base.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/_canvas.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/_charts.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/_datapoints.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/_file_content.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/_instances.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/storageio/selectors/_raw.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/tk_warnings/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/tk_warnings/base.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/tk_warnings/fileread.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/tk_warnings/other.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/tracker.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/_auxiliary.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/aggregators.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/auth.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/auxiliary.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/cdf.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/cicd.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/cli_args.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/collection.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/diff_list.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/dtype_conversion.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/file.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/fileio/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/fileio/_base.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/fileio/_compression.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/fileio/_readers.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/fileio/_writers.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/graphql_parser.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/hashing.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/http_client/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/http_client/_client.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/http_client/_data_classes.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/http_client/_data_classes2.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/http_client/_exception.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/modules.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/producer_worker.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/progress_tracker.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/repository.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/sentry_utils.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/sql_parser.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/text.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/thread_safe_dict.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/useful_types.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/utils/validate_access.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/validation.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_repo_files/.env.tmpl +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_repo_files/.gitignore +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_repo_files/AzureDevOps/.devops/README.md +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_repo_files/AzureDevOps/.devops/deploy-pipeline.yml +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_repo_files/AzureDevOps/.devops/dry-run-pipeline.yml +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/config.dev.yaml +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/demo/__init__.py +0 -0
- {cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/demo/_base.py +0 -0
{cognite_toolkit-0.7.32 → cognite_toolkit-0.7.34}/cognite_toolkit/_cdf_tk/apps/_migrate_app.py
RENAMED
|
@@ -15,10 +15,16 @@ from cognite_toolkit._cdf_tk.commands._migrate.creators import (
|
|
|
15
15
|
InstanceSpaceCreator,
|
|
16
16
|
SourceSystemCreator,
|
|
17
17
|
)
|
|
18
|
-
from cognite_toolkit._cdf_tk.commands._migrate.data_mapper import
|
|
18
|
+
from cognite_toolkit._cdf_tk.commands._migrate.data_mapper import (
|
|
19
|
+
AssetCentricMapper,
|
|
20
|
+
CanvasMapper,
|
|
21
|
+
ChartMapper,
|
|
22
|
+
ThreeDMapper,
|
|
23
|
+
)
|
|
19
24
|
from cognite_toolkit._cdf_tk.commands._migrate.migration_io import (
|
|
20
25
|
AnnotationMigrationIO,
|
|
21
26
|
AssetCentricMigrationIO,
|
|
27
|
+
ThreeDMigrationIO,
|
|
22
28
|
)
|
|
23
29
|
from cognite_toolkit._cdf_tk.commands._migrate.selectors import (
|
|
24
30
|
AssetCentricMigrationSelector,
|
|
@@ -26,7 +32,11 @@ from cognite_toolkit._cdf_tk.commands._migrate.selectors import (
|
|
|
26
32
|
MigrationCSVFileSelector,
|
|
27
33
|
)
|
|
28
34
|
from cognite_toolkit._cdf_tk.storageio import CanvasIO, ChartIO
|
|
29
|
-
from cognite_toolkit._cdf_tk.storageio.selectors import
|
|
35
|
+
from cognite_toolkit._cdf_tk.storageio.selectors import (
|
|
36
|
+
CanvasExternalIdSelector,
|
|
37
|
+
ChartExternalIdSelector,
|
|
38
|
+
ThreeDModelIdSelector,
|
|
39
|
+
)
|
|
30
40
|
from cognite_toolkit._cdf_tk.utils.auth import EnvironmentVariables
|
|
31
41
|
from cognite_toolkit._cdf_tk.utils.cli_args import parse_view_str
|
|
32
42
|
from cognite_toolkit._cdf_tk.utils.interactive_select import (
|
|
@@ -36,6 +46,7 @@ from cognite_toolkit._cdf_tk.utils.interactive_select import (
|
|
|
36
46
|
InteractiveCanvasSelect,
|
|
37
47
|
InteractiveChartSelect,
|
|
38
48
|
ResourceViewMappingInteractiveSelect,
|
|
49
|
+
ThreeDInteractiveSelect,
|
|
39
50
|
)
|
|
40
51
|
from cognite_toolkit._cdf_tk.utils.useful_types import AssetCentricKind
|
|
41
52
|
|
|
@@ -56,6 +67,7 @@ class MigrateApp(typer.Typer):
|
|
|
56
67
|
self.command("annotations")(self.annotations)
|
|
57
68
|
self.command("canvas")(self.canvas)
|
|
58
69
|
self.command("charts")(self.charts)
|
|
70
|
+
self.command("3d")(self.three_d)
|
|
59
71
|
# Uncomment when infield v2 config migration is ready
|
|
60
72
|
# self.command("infield-configs")(self.infield_configs)
|
|
61
73
|
|
|
@@ -980,6 +992,68 @@ class MigrateApp(typer.Typer):
|
|
|
980
992
|
)
|
|
981
993
|
)
|
|
982
994
|
|
|
995
|
+
@staticmethod
|
|
996
|
+
def three_d(
|
|
997
|
+
ctx: typer.Context,
|
|
998
|
+
id: Annotated[
|
|
999
|
+
list[int] | None,
|
|
1000
|
+
typer.Argument(
|
|
1001
|
+
help="The ID of the 3D Model to migrate. If not provided, an interactive selection will be "
|
|
1002
|
+
"performed to select the 3D Models to migrate."
|
|
1003
|
+
),
|
|
1004
|
+
] = None,
|
|
1005
|
+
log_dir: Annotated[
|
|
1006
|
+
Path,
|
|
1007
|
+
typer.Option(
|
|
1008
|
+
"--log-dir",
|
|
1009
|
+
"-l",
|
|
1010
|
+
help="Path to the directory where migration logs will be stored.",
|
|
1011
|
+
),
|
|
1012
|
+
] = Path(f"migration_logs_{TODAY}"),
|
|
1013
|
+
dry_run: Annotated[
|
|
1014
|
+
bool,
|
|
1015
|
+
typer.Option(
|
|
1016
|
+
"--dry-run",
|
|
1017
|
+
"-d",
|
|
1018
|
+
help="If set, the migration will not be executed, but only a report of "
|
|
1019
|
+
"what would be done is printed. This is useful for checking that all resources referenced by the 3D Models "
|
|
1020
|
+
"have been migrated to the new data modeling resources in CDF.",
|
|
1021
|
+
),
|
|
1022
|
+
] = False,
|
|
1023
|
+
verbose: Annotated[
|
|
1024
|
+
bool,
|
|
1025
|
+
typer.Option(
|
|
1026
|
+
"--verbose",
|
|
1027
|
+
"-v",
|
|
1028
|
+
help="Turn on to get more verbose output when running the command",
|
|
1029
|
+
),
|
|
1030
|
+
] = False,
|
|
1031
|
+
) -> None:
|
|
1032
|
+
"""Migrate 3D Models from Asset-Centric to data modeling in CDF.
|
|
1033
|
+
|
|
1034
|
+
This command expects that the CogniteMigration data model is already deployed, and that the Mapping view
|
|
1035
|
+
is populated with the mapping from Asset-Centric resources to the new data modeling resources.
|
|
1036
|
+
"""
|
|
1037
|
+
client = EnvironmentVariables.create_from_environment().get_client()
|
|
1038
|
+
selected_ids: list[int]
|
|
1039
|
+
if id:
|
|
1040
|
+
selected_ids = id
|
|
1041
|
+
else:
|
|
1042
|
+
selected_models = ThreeDInteractiveSelect(client, "migrate").select_three_d_models("classic")
|
|
1043
|
+
selected_ids = [model.id for model in selected_models]
|
|
1044
|
+
|
|
1045
|
+
cmd = MigrationCommand()
|
|
1046
|
+
cmd.run(
|
|
1047
|
+
lambda: cmd.migrate(
|
|
1048
|
+
selected=ThreeDModelIdSelector(ids=tuple(selected_ids)),
|
|
1049
|
+
data=ThreeDMigrationIO(client),
|
|
1050
|
+
mapper=ThreeDMapper(client),
|
|
1051
|
+
log_dir=log_dir,
|
|
1052
|
+
dry_run=dry_run,
|
|
1053
|
+
verbose=verbose,
|
|
1054
|
+
)
|
|
1055
|
+
)
|
|
1056
|
+
|
|
983
1057
|
@staticmethod
|
|
984
1058
|
def infield_configs(
|
|
985
1059
|
ctx: typer.Context,
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
from collections.abc import Sequence
|
|
2
|
+
|
|
3
|
+
from rich.console import Console
|
|
4
|
+
|
|
5
|
+
from cognite_toolkit._cdf_tk.client.data_classes.api_classes import PagedResponse
|
|
6
|
+
from cognite_toolkit._cdf_tk.client.data_classes.three_d import ThreeDModelClassicRequest, ThreeDModelResponse
|
|
7
|
+
from cognite_toolkit._cdf_tk.utils.http_client import (
|
|
8
|
+
HTTPClient,
|
|
9
|
+
ItemsRequest,
|
|
10
|
+
RequestMessage2,
|
|
11
|
+
SimpleBodyRequest,
|
|
12
|
+
)
|
|
13
|
+
from cognite_toolkit._cdf_tk.utils.useful_types import PrimitiveType
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
class ThreeDModelAPI:
|
|
17
|
+
ENDPOINT = "/3d/models"
|
|
18
|
+
MAX_CLASSIC_MODELS_PER_CREATE_REQUEST = 1000
|
|
19
|
+
MAX_MODELS_PER_DELETE_REQUEST = 1000
|
|
20
|
+
_LIST_REQUEST_MAX_LIMIT = 1000
|
|
21
|
+
|
|
22
|
+
def __init__(self, http_client: HTTPClient, console: Console) -> None:
|
|
23
|
+
self._http_client = http_client
|
|
24
|
+
self._console = console
|
|
25
|
+
self._config = http_client.config
|
|
26
|
+
|
|
27
|
+
def create(self, models: Sequence[ThreeDModelClassicRequest]) -> list[ThreeDModelResponse]:
|
|
28
|
+
"""Create 3D models in classic format.
|
|
29
|
+
|
|
30
|
+
Args:
|
|
31
|
+
models (Sequence[ThreeDModelClassicRequest]): The 3D model(s) to create.
|
|
32
|
+
|
|
33
|
+
Returns:
|
|
34
|
+
list[ThreeDModelResponse]: The created 3D model(s).
|
|
35
|
+
"""
|
|
36
|
+
if not models:
|
|
37
|
+
return []
|
|
38
|
+
if len(models) > self.MAX_CLASSIC_MODELS_PER_CREATE_REQUEST:
|
|
39
|
+
raise ValueError("Cannot create more than 1000 3D models in a single request.")
|
|
40
|
+
responses = self._http_client.request_with_retries(
|
|
41
|
+
ItemsRequest(
|
|
42
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT),
|
|
43
|
+
method="POST",
|
|
44
|
+
items=list(models),
|
|
45
|
+
)
|
|
46
|
+
)
|
|
47
|
+
responses.raise_for_status()
|
|
48
|
+
body = responses.get_first_body()
|
|
49
|
+
return PagedResponse[ThreeDModelResponse].model_validate(body).items
|
|
50
|
+
|
|
51
|
+
def delete(self, ids: Sequence[int]) -> None:
|
|
52
|
+
"""Delete 3D models by their IDs.
|
|
53
|
+
|
|
54
|
+
Args:
|
|
55
|
+
ids (Sequence[int]): The IDs of the 3D models to delete.
|
|
56
|
+
"""
|
|
57
|
+
if not ids:
|
|
58
|
+
return None
|
|
59
|
+
if len(ids) > self.MAX_MODELS_PER_DELETE_REQUEST:
|
|
60
|
+
raise ValueError("Cannot delete more than 1000 3D models in a single request.")
|
|
61
|
+
responses = self._http_client.request_with_retries(
|
|
62
|
+
SimpleBodyRequest(
|
|
63
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT + "/delete"),
|
|
64
|
+
method="POST",
|
|
65
|
+
body_content={"items": [{"id": id_} for id_ in ids]},
|
|
66
|
+
)
|
|
67
|
+
)
|
|
68
|
+
responses.raise_for_status()
|
|
69
|
+
|
|
70
|
+
def iterate(
|
|
71
|
+
self,
|
|
72
|
+
published: bool | None = None,
|
|
73
|
+
include_revision_info: bool = False,
|
|
74
|
+
limit: int = 100,
|
|
75
|
+
cursor: str | None = None,
|
|
76
|
+
) -> PagedResponse[ThreeDModelResponse]:
|
|
77
|
+
if not (0 < limit <= self._LIST_REQUEST_MAX_LIMIT):
|
|
78
|
+
raise ValueError(f"Limit must be between 1 and {self._LIST_REQUEST_MAX_LIMIT}, got {limit}.")
|
|
79
|
+
parameters: dict[str, PrimitiveType] = {
|
|
80
|
+
# There is a bug in the API. The parameter includeRevisionInfo is expected to be lower case and not
|
|
81
|
+
# camel case as documented. You get error message: Unrecognized query parameter includeRevisionInfo,
|
|
82
|
+
# did you mean includerevisioninfo?
|
|
83
|
+
"includerevisioninfo": include_revision_info,
|
|
84
|
+
"limit": limit,
|
|
85
|
+
}
|
|
86
|
+
if published is not None:
|
|
87
|
+
parameters["published"] = published
|
|
88
|
+
if cursor is not None:
|
|
89
|
+
parameters["cursor"] = cursor
|
|
90
|
+
responses = self._http_client.request_single_retries(
|
|
91
|
+
RequestMessage2(
|
|
92
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT),
|
|
93
|
+
method="GET",
|
|
94
|
+
parameters=parameters,
|
|
95
|
+
)
|
|
96
|
+
)
|
|
97
|
+
success_response = responses.get_success_or_raise()
|
|
98
|
+
return PagedResponse[ThreeDModelResponse].model_validate(success_response.body_json)
|
|
99
|
+
|
|
100
|
+
def list(
|
|
101
|
+
self,
|
|
102
|
+
published: bool | None = None,
|
|
103
|
+
include_revision_info: bool = False,
|
|
104
|
+
limit: int | None = 100,
|
|
105
|
+
cursor: str | None = None,
|
|
106
|
+
) -> list[ThreeDModelResponse]:
|
|
107
|
+
results: list[ThreeDModelResponse] = []
|
|
108
|
+
while True:
|
|
109
|
+
request_limit = (
|
|
110
|
+
self._LIST_REQUEST_MAX_LIMIT
|
|
111
|
+
if limit is None
|
|
112
|
+
else min(limit - len(results), self._LIST_REQUEST_MAX_LIMIT)
|
|
113
|
+
)
|
|
114
|
+
if request_limit <= 0:
|
|
115
|
+
break
|
|
116
|
+
page = self.iterate(
|
|
117
|
+
published=published,
|
|
118
|
+
include_revision_info=include_revision_info,
|
|
119
|
+
limit=request_limit,
|
|
120
|
+
cursor=cursor,
|
|
121
|
+
)
|
|
122
|
+
results.extend(page.items)
|
|
123
|
+
if page.next_cursor is None:
|
|
124
|
+
break
|
|
125
|
+
cursor = page.next_cursor
|
|
126
|
+
return results
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
class ThreeDAPI:
|
|
130
|
+
def __init__(self, http_client: HTTPClient, console: Console) -> None:
|
|
131
|
+
self.models = ThreeDModelAPI(http_client, console)
|
|
@@ -26,6 +26,10 @@ class ResponseResource(BaseModelObject, Generic[T_RequestResource], ABC):
|
|
|
26
26
|
"""Convert the response resource to a request resource."""
|
|
27
27
|
...
|
|
28
28
|
|
|
29
|
+
def as_write(self) -> T_RequestResource:
|
|
30
|
+
"""Alias for as_request_resource to match protocol signature."""
|
|
31
|
+
return self.as_request_resource()
|
|
32
|
+
|
|
29
33
|
|
|
30
34
|
class Identifier(BaseModel):
|
|
31
35
|
"""Base class for all identifier classes."""
|
|
@@ -7,7 +7,7 @@ from .base import BaseModelObject, Identifier, RequestResource
|
|
|
7
7
|
InstanceType: TypeAlias = Literal["node", "edge"]
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class TypedInstanceIdentifier(Identifier):
|
|
11
11
|
"""Identifier for an Instance instance."""
|
|
12
12
|
|
|
13
13
|
instance_type: InstanceType
|
|
@@ -15,11 +15,16 @@ class InstanceIdentifier(Identifier):
|
|
|
15
15
|
external_id: str
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
class
|
|
18
|
+
class InstanceIdentifier(Identifier):
|
|
19
|
+
space: str
|
|
20
|
+
external_id: str
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class NodeIdentifier(TypedInstanceIdentifier):
|
|
19
24
|
instance_type: Literal["node"] = "node"
|
|
20
25
|
|
|
21
26
|
|
|
22
|
-
class EdgeIdentifier(
|
|
27
|
+
class EdgeIdentifier(TypedInstanceIdentifier):
|
|
23
28
|
instance_type: Literal["edge"] = "edge"
|
|
24
29
|
|
|
25
30
|
|
|
@@ -32,8 +37,8 @@ class InstanceResult(BaseModelObject):
|
|
|
32
37
|
created_time: int
|
|
33
38
|
last_updated_time: int
|
|
34
39
|
|
|
35
|
-
def as_id(self) ->
|
|
36
|
-
return
|
|
40
|
+
def as_id(self) -> TypedInstanceIdentifier:
|
|
41
|
+
return TypedInstanceIdentifier(
|
|
37
42
|
instance_type=self.instance_type,
|
|
38
43
|
space=self.space,
|
|
39
44
|
external_id=self.external_id,
|
|
@@ -62,8 +67,8 @@ class InstanceRequestResource(RequestResource):
|
|
|
62
67
|
space: str
|
|
63
68
|
external_id: str
|
|
64
69
|
|
|
65
|
-
def as_id(self) ->
|
|
66
|
-
return
|
|
70
|
+
def as_id(self) -> TypedInstanceIdentifier:
|
|
71
|
+
return TypedInstanceIdentifier(
|
|
67
72
|
instance_type=self.instance_type,
|
|
68
73
|
space=self.space,
|
|
69
74
|
external_id=self.external_id,
|
|
@@ -115,8 +120,8 @@ class InstanceRequestItem(RequestResource):
|
|
|
115
120
|
existing_version: int | None = None
|
|
116
121
|
sources: list[InstanceSource] | None = None
|
|
117
122
|
|
|
118
|
-
def as_id(self) ->
|
|
119
|
-
return
|
|
123
|
+
def as_id(self) -> TypedInstanceIdentifier:
|
|
124
|
+
return TypedInstanceIdentifier(
|
|
120
125
|
instance_type=self.instance_type,
|
|
121
126
|
space=self.space,
|
|
122
127
|
external_id=self.external_id,
|
|
@@ -128,7 +133,7 @@ class InstanceResponseItem(BaseModelObject):
|
|
|
128
133
|
space: str
|
|
129
134
|
external_id: str
|
|
130
135
|
version: int
|
|
131
|
-
type:
|
|
136
|
+
type: TypedInstanceIdentifier | None = None
|
|
132
137
|
created_time: int
|
|
133
138
|
last_updated_time: int
|
|
134
139
|
deleted_time: int | None = None
|
|
@@ -149,8 +154,8 @@ class InstanceResponseItem(BaseModelObject):
|
|
|
149
154
|
output.update(space_properties.get(view_version, {}))
|
|
150
155
|
return output
|
|
151
156
|
|
|
152
|
-
def as_id(self) ->
|
|
153
|
-
return
|
|
157
|
+
def as_id(self) -> TypedInstanceIdentifier:
|
|
158
|
+
return TypedInstanceIdentifier(
|
|
154
159
|
instance_type=self.instance_type,
|
|
155
160
|
space=self.space,
|
|
156
161
|
external_id=self.external_id,
|
|
@@ -13,6 +13,7 @@ from rich.console import Console
|
|
|
13
13
|
|
|
14
14
|
from cognite_toolkit._cdf_tk.client._toolkit_client import ToolkitClient
|
|
15
15
|
|
|
16
|
+
from ._toolkit_client import ToolAPI
|
|
16
17
|
from .api.canvas import CanvasAPI, IndustrialCanvasAPI
|
|
17
18
|
from .api.charts import ChartsAPI
|
|
18
19
|
from .api.dml import DMLAPI
|
|
@@ -53,6 +54,7 @@ from .api.robotics.maps import MapsAPI
|
|
|
53
54
|
from .api.search import SearchAPI
|
|
54
55
|
from .api.search_config import SearchConfigurationsAPI
|
|
55
56
|
from .api.streams import StreamsAPI
|
|
57
|
+
from .api.three_d import ThreeDAPI, ThreeDModelAPI
|
|
56
58
|
from .api.token import TokenAPI
|
|
57
59
|
from .api.verify import VerifyAPI
|
|
58
60
|
|
|
@@ -131,6 +133,10 @@ class ToolkitClientMock(CogniteClientMock):
|
|
|
131
133
|
self.time_series.data.synthetic = MagicMock(spec_set=SyntheticDatapointsAPI)
|
|
132
134
|
self.time_series.subscriptions = MagicMock(spec_set=DatapointsSubscriptionAPI)
|
|
133
135
|
|
|
136
|
+
self.tool = MagicMock(spec=ToolAPI)
|
|
137
|
+
self.tool.three_d = MagicMock(spec=ThreeDAPI)
|
|
138
|
+
self.tool.three_d.models = MagicMock(spec_set=ThreeDModelAPI)
|
|
139
|
+
|
|
134
140
|
self.streams = MagicMock(spec=StreamsAPI)
|
|
135
141
|
|
|
136
142
|
# This is a helper API, not a real API.
|
|
@@ -9,8 +9,10 @@ from cognite.client.data_classes._base import (
|
|
|
9
9
|
from cognite.client.data_classes.data_modeling import EdgeId, InstanceApply, NodeId, ViewId
|
|
10
10
|
from cognite.client.utils._identifier import InstanceId
|
|
11
11
|
from cognite.client.utils._text import to_camel_case
|
|
12
|
-
from pydantic import BaseModel, BeforeValidator, field_validator, model_validator
|
|
12
|
+
from pydantic import BaseModel, BeforeValidator, Field, field_validator, model_validator
|
|
13
13
|
|
|
14
|
+
from cognite_toolkit._cdf_tk.client.data_classes.base import BaseModelObject, RequestResource
|
|
15
|
+
from cognite_toolkit._cdf_tk.client.data_classes.instance_api import InstanceIdentifier
|
|
14
16
|
from cognite_toolkit._cdf_tk.client.data_classes.instances import InstanceApplyList
|
|
15
17
|
from cognite_toolkit._cdf_tk.client.data_classes.migration import AssetCentricId
|
|
16
18
|
from cognite_toolkit._cdf_tk.client.data_classes.pending_instances_ids import PendingInstanceId
|
|
@@ -261,3 +263,32 @@ class AssetCentricMappingList(
|
|
|
261
263
|
|
|
262
264
|
def as_write(self) -> InstanceApplyList:
|
|
263
265
|
return InstanceApplyList([item.as_write() for item in self])
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
class Model(BaseModelObject):
|
|
269
|
+
instance_id: InstanceIdentifier
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
class Thumbnail(BaseModelObject):
|
|
273
|
+
instance_id: InstanceIdentifier
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
class ThreeDRevisionMigrationRequest(RequestResource):
|
|
277
|
+
space: str
|
|
278
|
+
type: Literal["CAD", "PointCloud", "Image360"]
|
|
279
|
+
revision_id: int
|
|
280
|
+
model: Model
|
|
281
|
+
|
|
282
|
+
def as_id(self) -> int:
|
|
283
|
+
return self.revision_id
|
|
284
|
+
|
|
285
|
+
|
|
286
|
+
class ThreeDMigrationRequest(RequestResource):
|
|
287
|
+
model_id: int
|
|
288
|
+
type: Literal["CAD", "PointCloud", "Image360"]
|
|
289
|
+
space: str
|
|
290
|
+
thumbnail: Thumbnail | None = None
|
|
291
|
+
revision: ThreeDRevisionMigrationRequest = Field(exclude=True)
|
|
292
|
+
|
|
293
|
+
def as_id(self) -> int:
|
|
294
|
+
return self.model_id
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from abc import ABC, abstractmethod
|
|
2
2
|
from collections import defaultdict
|
|
3
3
|
from collections.abc import Callable, Sequence
|
|
4
|
-
from typing import Generic, cast
|
|
4
|
+
from typing import Generic, Literal, cast
|
|
5
5
|
from uuid import uuid4
|
|
6
6
|
|
|
7
7
|
from cognite.client.data_classes.data_modeling import (
|
|
@@ -27,26 +27,33 @@ from cognite_toolkit._cdf_tk.client.data_classes.charts_data import (
|
|
|
27
27
|
ChartSource,
|
|
28
28
|
ChartTimeseries,
|
|
29
29
|
)
|
|
30
|
+
from cognite_toolkit._cdf_tk.client.data_classes.instance_api import InstanceIdentifier
|
|
30
31
|
from cognite_toolkit._cdf_tk.client.data_classes.migration import ResourceViewMappingApply
|
|
32
|
+
from cognite_toolkit._cdf_tk.client.data_classes.three_d import RevisionStatus, ThreeDModelResponse
|
|
31
33
|
from cognite_toolkit._cdf_tk.commands._migrate.conversion import DirectRelationCache, asset_centric_to_dm
|
|
32
|
-
from cognite_toolkit._cdf_tk.commands._migrate.data_classes import
|
|
34
|
+
from cognite_toolkit._cdf_tk.commands._migrate.data_classes import (
|
|
35
|
+
Model,
|
|
36
|
+
ThreeDMigrationRequest,
|
|
37
|
+
ThreeDRevisionMigrationRequest,
|
|
38
|
+
)
|
|
33
39
|
from cognite_toolkit._cdf_tk.commands._migrate.default_mappings import create_default_mappings
|
|
34
40
|
from cognite_toolkit._cdf_tk.commands._migrate.issues import (
|
|
35
41
|
CanvasMigrationIssue,
|
|
36
42
|
ChartMigrationIssue,
|
|
37
43
|
ConversionIssue,
|
|
38
44
|
MigrationIssue,
|
|
45
|
+
ThreeDModelMigrationIssue,
|
|
39
46
|
)
|
|
40
|
-
from cognite_toolkit._cdf_tk.commands._migrate.selectors import AssetCentricMigrationSelector
|
|
41
47
|
from cognite_toolkit._cdf_tk.constants import MISSING_INSTANCE_SPACE
|
|
42
48
|
from cognite_toolkit._cdf_tk.exceptions import ToolkitMigrationError, ToolkitValueError
|
|
43
49
|
from cognite_toolkit._cdf_tk.protocols import T_ResourceRequest, T_ResourceResponse
|
|
44
50
|
from cognite_toolkit._cdf_tk.storageio._base import T_Selector
|
|
45
|
-
from cognite_toolkit._cdf_tk.storageio.selectors import CanvasSelector, ChartSelector
|
|
51
|
+
from cognite_toolkit._cdf_tk.storageio.selectors import CanvasSelector, ChartSelector, ThreeDSelector
|
|
46
52
|
from cognite_toolkit._cdf_tk.utils import humanize_collection
|
|
47
|
-
from cognite_toolkit._cdf_tk.utils.useful_types import
|
|
48
|
-
|
|
49
|
-
|
|
53
|
+
from cognite_toolkit._cdf_tk.utils.useful_types import T_AssetCentricResourceExtended
|
|
54
|
+
|
|
55
|
+
from .data_classes import AssetCentricMapping
|
|
56
|
+
from .selectors import AssetCentricMigrationSelector
|
|
50
57
|
|
|
51
58
|
|
|
52
59
|
class DataMapper(Generic[T_Selector, T_ResourceResponse, T_ResourceRequest], ABC):
|
|
@@ -383,3 +390,82 @@ class CanvasMapper(DataMapper[CanvasSelector, IndustrialCanvas, IndustrialCanvas
|
|
|
383
390
|
max_width=reference.max_width,
|
|
384
391
|
max_height=reference.max_height,
|
|
385
392
|
)
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
class ThreeDMapper(DataMapper[ThreeDSelector, ThreeDModelResponse, ThreeDMigrationRequest]):
|
|
396
|
+
def __init__(self, client: ToolkitClient) -> None:
|
|
397
|
+
self.client = client
|
|
398
|
+
|
|
399
|
+
def map(
|
|
400
|
+
self, source: Sequence[ThreeDModelResponse]
|
|
401
|
+
) -> Sequence[tuple[ThreeDMigrationRequest | None, MigrationIssue]]:
|
|
402
|
+
self._populate_cache(source)
|
|
403
|
+
output: list[tuple[ThreeDMigrationRequest | None, MigrationIssue]] = []
|
|
404
|
+
for item in source:
|
|
405
|
+
mapped_item, issue = self._map_single_item(item)
|
|
406
|
+
output.append((mapped_item, issue))
|
|
407
|
+
return output
|
|
408
|
+
|
|
409
|
+
def _populate_cache(self, source: Sequence[ThreeDModelResponse]) -> None:
|
|
410
|
+
dataset_ids: set[int] = set()
|
|
411
|
+
for model in source:
|
|
412
|
+
if model.data_set_id is not None:
|
|
413
|
+
dataset_ids.add(model.data_set_id)
|
|
414
|
+
self.client.migration.space_source.retrieve(list(dataset_ids))
|
|
415
|
+
|
|
416
|
+
def _map_single_item(
|
|
417
|
+
self, item: ThreeDModelResponse
|
|
418
|
+
) -> tuple[ThreeDMigrationRequest | None, ThreeDModelMigrationIssue]:
|
|
419
|
+
issue = ThreeDModelMigrationIssue(model_name=item.name, model_id=item.id)
|
|
420
|
+
instance_space: str | None = None
|
|
421
|
+
last_revision_id: int | None = None
|
|
422
|
+
model_type: Literal["CAD", "PointCloud", "Image360"] | None = None
|
|
423
|
+
if item.data_set_id is None:
|
|
424
|
+
issue.error_message.append("3D model is not associated with any dataset.")
|
|
425
|
+
else:
|
|
426
|
+
space_source = self.client.migration.space_source.retrieve(item.data_set_id)
|
|
427
|
+
if space_source is not None:
|
|
428
|
+
instance_space = space_source.instance_space
|
|
429
|
+
if instance_space is None and item.data_set_id is not None:
|
|
430
|
+
issue.error_message.append(f"Missing instance space for dataset ID {item.data_set_id!r}")
|
|
431
|
+
if item.last_revision_info is None:
|
|
432
|
+
issue.error_message.append("3D model has no revisions.")
|
|
433
|
+
else:
|
|
434
|
+
model_type = self._get_type(item.last_revision_info)
|
|
435
|
+
last_revision_id = item.last_revision_info.revision_id
|
|
436
|
+
if last_revision_id is None:
|
|
437
|
+
issue.error_message.append("3D model's last revision has no revision ID.")
|
|
438
|
+
|
|
439
|
+
if model_type is None:
|
|
440
|
+
issue.error_message.append("3D model's last revision has no recognized type.")
|
|
441
|
+
|
|
442
|
+
if instance_space is None or last_revision_id is None or model_type is None or issue.has_issues:
|
|
443
|
+
return None, issue
|
|
444
|
+
|
|
445
|
+
mapped_request = ThreeDMigrationRequest(
|
|
446
|
+
model_id=item.id,
|
|
447
|
+
type=model_type,
|
|
448
|
+
space=instance_space,
|
|
449
|
+
revision=ThreeDRevisionMigrationRequest(
|
|
450
|
+
space=instance_space,
|
|
451
|
+
type=model_type,
|
|
452
|
+
revision_id=last_revision_id,
|
|
453
|
+
model=Model(
|
|
454
|
+
instance_id=InstanceIdentifier(
|
|
455
|
+
space=instance_space,
|
|
456
|
+
external_id=f"cog_3d_model_{item.id!s}",
|
|
457
|
+
)
|
|
458
|
+
),
|
|
459
|
+
),
|
|
460
|
+
)
|
|
461
|
+
return mapped_request, issue
|
|
462
|
+
|
|
463
|
+
@staticmethod
|
|
464
|
+
def _get_type(revision: RevisionStatus) -> Literal["CAD", "PointCloud", "Image360"] | None:
|
|
465
|
+
types = revision.types or []
|
|
466
|
+
if any("gltf-directory" in t for t in types):
|
|
467
|
+
return "CAD"
|
|
468
|
+
elif any("ept-pointcloud" in t for t in types):
|
|
469
|
+
return "PointCloud"
|
|
470
|
+
else:
|
|
471
|
+
return None
|
|
@@ -30,6 +30,24 @@ class MigrationIssue(MigrationObject):
|
|
|
30
30
|
return True
|
|
31
31
|
|
|
32
32
|
|
|
33
|
+
class ThreeDModelMigrationIssue(MigrationIssue):
|
|
34
|
+
"""Represents a 3D model migration issue encountered during migration.
|
|
35
|
+
|
|
36
|
+
Attributes:
|
|
37
|
+
model_external_id (str): The external ID of the 3D model that could not be migrated.
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
type: ClassVar[str] = "threeDModelMigration"
|
|
41
|
+
model_name: str
|
|
42
|
+
model_id: int
|
|
43
|
+
error_message: list[str] = Field(default_factory=list)
|
|
44
|
+
|
|
45
|
+
@property
|
|
46
|
+
def has_issues(self) -> bool:
|
|
47
|
+
"""Check if there are any issues recorded in this ThreeDModelMigrationIssue."""
|
|
48
|
+
return bool(self.error_message)
|
|
49
|
+
|
|
50
|
+
|
|
33
51
|
class ChartMigrationIssue(MigrationIssue):
|
|
34
52
|
"""Represents a chart migration issue encountered during migration.
|
|
35
53
|
|