splunk-soar-sdk 1.3.4__tar.gz → 1.4.0__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.
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/PKG-INFO +1 -1
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/pyproject.toml +1 -1
- splunk_soar_sdk-1.4.0/release_notes.txt +21 -0
- splunk_soar_sdk-1.4.0/release_version.txt +1 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/abstract.py +8 -1
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app.py +3 -1
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_client.py +9 -1
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/app.py +2 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_app_action.py +2 -1
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_app_client.py +4 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/uv.lock +1 -1
- splunk_soar_sdk-1.3.4/release_notes.txt +0 -23
- splunk_soar_sdk-1.3.4/release_version.txt +0 -1
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/ISSUE_TEMPLATE/bug.md +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/pull_request_template.md +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/utils/github.js +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/utils/update_version.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/workflows/code_quality.yml +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/workflows/commit_hygiene.yml +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/workflows/generate_docs.yml +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.github/workflows/semantic_release.yml +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.gitignore +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.pre-commit-config.yaml +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/.releaserc +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/LICENSE +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/README.md +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/commitlint.config.js +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/api_reference.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/app_structure/index.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/app_structure/pre-commit-config.yaml.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/app_structure/pyproject.toml.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/app_structure/src_app.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/changelog.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/cli_reference.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/conf.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/custom_views/index.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/custom_views/reusable_components.md +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/custom_views/templates.md +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/custom_views/view_handlers.md +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/getting_started/index.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/getting_started/init_app.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/getting_started/installation.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/index.rst +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/action_results.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/actions_manager.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/apis/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/apis/artifact.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/apis/container.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/apis/utils.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/apis/vault.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_cli_runner.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/.gitignore +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/.pre-commit-config.yaml +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/logo.svg +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/logo_dark.svg +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/src/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/uv.lock +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/asset.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/async_utils.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/init/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/init/cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/manifests/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/manifests/cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/manifests/deserializers.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/manifests/processors.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/manifests/serializers.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/package/cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/package/utils.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/path_utils.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/cli/utils.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/action_renderer.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/app_renderer.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/asset_renderer.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/renderer.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/templates/pyproject.toml.jinja +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/toml_renderer.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/colors.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/compat.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/crypto.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/decorators/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/decorators/action.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/decorators/generic_action.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/decorators/on_poll.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/decorators/test_connectivity.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/decorators/view_handler.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/decorators/webhook.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/exceptions.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/input_spec.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/logging.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/meta/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/meta/actions.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/meta/adapters.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/meta/app.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/meta/datatypes.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/meta/dependencies.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/meta/webhooks.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/models/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/models/artifact.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/models/container.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/models/vault_attachment.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/models/view.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/params.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/paths.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/py.typed +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/action_result.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/app.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/base_connector.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/connector_result.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/consts.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/encryption_helper.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/install_info.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/json_keys.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/ph_ipc.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/vault.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom_common/app_interface/app_interface.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom_common/encryption/encryption_manager_factory.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/base/base_template.html +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/base/error.html +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/base/header.html +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/base/logo_header.html +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/components/pie_chart.html +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/widgets/widget_resize_snippet.html +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/widgets/widget_template.html +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/types.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/views/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/views/component_registry.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/views/components/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/views/components/pie_chart.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/views/template_filters.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/views/template_renderer.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/views/view_parser.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/webhooks/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/webhooks/models.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/webhooks/routing.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/test.png +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/test.txt +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/datapath_parse.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/manifests/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/manifests/test_processors.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_assets/converted_app/actions.py.txt +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_convert_cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_deserializers.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_init_cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_manifests_cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_package_cli.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_serializers.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_utils.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/code_renderers/test_action_renderer.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/conftest.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/app.json +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/example_asset.json +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/logo.svg +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/logo_dark.svg +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/pyproject.toml +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/actions/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/actions/async_action.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/actions/generate_category.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/actions/reverse_string.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/ignoreme.txt +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/templates/reverse_string.html +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/uv.lock +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/app.json +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/logo.svg +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/logo_dark.svg +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/pyproject.toml +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/src/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/src/app.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/uv.lock +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/interfaces/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/interfaces/test_artifact_interface.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/interfaces/test_container_interface.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/interfaces/test_vault_interface.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/meta/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/meta/test_actions.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/meta/test_adapters.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/meta/test_datatypes.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/meta/test_dependencies.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/meta/test_webhooks.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/mocks/__init__.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/mocks/dynamic_mocks.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/mocks/importable_action.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/stubs.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_action_results.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_actions_manager.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_app.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_app_action_params.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_app_action_results.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_app_runner.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_asset.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_assets/splunk-sdk-2.1.0.tar.gz +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_async_integration.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_async_utils.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_code_renderers.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_compat.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_container.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_custom_views.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_encryption.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_generic_action.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_logging.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_on_poll.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_params.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_template_renderer.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_test_connectivity.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/test_view_parser.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/webhooks/test_models.py +0 -0
- {splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/webhooks/test_routing.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: splunk-soar-sdk
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4.0
|
|
4
4
|
Summary: The official framework for developing and testing Splunk SOAR Apps
|
|
5
5
|
Project-URL: Homepage, https://github.com/phantomcyber/splunk-soar-sdk
|
|
6
6
|
Project-URL: Documentation, https://github.com/phantomcyber/splunk-soar-sdk
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# [1.4.0](https://github.com/phantomcyber/splunk-soar-sdk/compare/1.3.4...1.4.0) (2025-09-10)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* function to get container id on soar client ([2329956](https://github.com/phantomcyber/splunk-soar-sdk/commit/232995679cc5c568fc9ebd895c96aaf8f3f6448e))
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
# [1.4.0](https://github.com/phantomcyber/splunk-soar-sdk/compare/1.3.4...1.4.0) (2025-09-10)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* function to get container id on soar client ([2329956](https://github.com/phantomcyber/splunk-soar-sdk/commit/232995679cc5c568fc9ebd895c96aaf8f3f6448e))
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.4.0
|
|
@@ -63,6 +63,11 @@ class SOARClient(Generic[SummaryType]):
|
|
|
63
63
|
"""Object governing interaction with the SOAR container API. Subclasses must define."""
|
|
64
64
|
pass
|
|
65
65
|
|
|
66
|
+
@abstractmethod
|
|
67
|
+
def get_executing_container_id(self) -> int:
|
|
68
|
+
"""Return the current Container ID passed in the Connector Run Action JSON."""
|
|
69
|
+
pass
|
|
70
|
+
|
|
66
71
|
def get(
|
|
67
72
|
self,
|
|
68
73
|
endpoint: str,
|
|
@@ -202,7 +207,9 @@ class SOARClient(Generic[SummaryType]):
|
|
|
202
207
|
return "https://localhost:9999/"
|
|
203
208
|
|
|
204
209
|
@abstractmethod
|
|
205
|
-
def update_client(
|
|
210
|
+
def update_client(
|
|
211
|
+
self, soar_auth: SOARClientAuth, asset_id: str, container_id: int = 0
|
|
212
|
+
) -> None:
|
|
206
213
|
"""Hook to update the SOAR API client before any actions run with the input data.
|
|
207
214
|
|
|
208
215
|
An example of what this function might do is authenticate the API client.
|
|
@@ -187,7 +187,9 @@ class App:
|
|
|
187
187
|
|
|
188
188
|
self.__logger.handler.set_handle(handle)
|
|
189
189
|
soar_auth = App.create_soar_client_auth_object(input_data)
|
|
190
|
-
self.soar_client.update_client(
|
|
190
|
+
self.soar_client.update_client(
|
|
191
|
+
soar_auth, input_data.asset_id, input_data.container_id
|
|
192
|
+
)
|
|
191
193
|
return self.actions_manager.handle(input_data, handle=handle)
|
|
192
194
|
|
|
193
195
|
@staticmethod
|
|
@@ -45,6 +45,7 @@ class AppClient(SOARClient[SummaryType]):
|
|
|
45
45
|
|
|
46
46
|
self._summary: Optional[SummaryType] = None
|
|
47
47
|
self._message: Optional[str] = None
|
|
48
|
+
self.__container_id: int = 0
|
|
48
49
|
|
|
49
50
|
@property
|
|
50
51
|
def client(self) -> httpx.Client:
|
|
@@ -66,10 +67,17 @@ class AppClient(SOARClient[SummaryType]):
|
|
|
66
67
|
"""The SOAR Vault API."""
|
|
67
68
|
return self._vault_api
|
|
68
69
|
|
|
69
|
-
def
|
|
70
|
+
def get_executing_container_id(self) -> int:
|
|
71
|
+
"""Return the current Container ID passed in the Connector Run Action JSON."""
|
|
72
|
+
return self.__container_id
|
|
73
|
+
|
|
74
|
+
def update_client(
|
|
75
|
+
self, soar_auth: SOARClientAuth, asset_id: str, container_id: int = 0
|
|
76
|
+
) -> None:
|
|
70
77
|
"""Update the SOAR client with the given authentication and asset ID."""
|
|
71
78
|
self.authenticate_soar_client(soar_auth)
|
|
72
79
|
self._containers_api.set_executing_asset(asset_id)
|
|
80
|
+
self.__container_id = container_id
|
|
73
81
|
|
|
74
82
|
def authenticate_soar_client(self, soar_auth: SOARClientAuth) -> None:
|
|
75
83
|
"""Authenticate the SOAR client with the given authentication credentials."""
|
|
@@ -43,6 +43,8 @@ app = App(
|
|
|
43
43
|
@app.test_connectivity()
|
|
44
44
|
def test_connectivity(soar: SOARClient, asset: Asset) -> None:
|
|
45
45
|
soar.get("rest/version")
|
|
46
|
+
container_id = soar.get_executing_container_id()
|
|
47
|
+
logger.info(f"current executing container's container_id is: {container_id}")
|
|
46
48
|
logger.info(f"testing connectivity against {asset.base_url}")
|
|
47
49
|
logger.debug("hello")
|
|
48
50
|
logger.warning("this is a warning")
|
|
@@ -198,7 +198,8 @@ def test_action_decoration_uses_meta_identifier_for_action_name(simple_app):
|
|
|
198
198
|
def test_action_with_mocked_client(simple_app, sample_params):
|
|
199
199
|
@simple_app.action()
|
|
200
200
|
def action_function(params: SampleParams, soar: SOARClient) -> ActionOutput:
|
|
201
|
-
soar.
|
|
201
|
+
container_id = str(soar.get_executing_container_id())
|
|
202
|
+
soar.save_progress(f"Container ID is: {container_id}")
|
|
202
203
|
|
|
203
204
|
client_mock = mock.Mock()
|
|
204
205
|
client_mock.save_progress = mock.Mock()
|
|
@@ -31,3 +31,7 @@ def test_authenticate_soar_client_on_platform(
|
|
|
31
31
|
):
|
|
32
32
|
simple_connector.authenticate_soar_client(soar_client_auth_token)
|
|
33
33
|
assert mock_get_any_soar_call.call_count == 1
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def test_get_executing_container_id(simple_connector: AppClient):
|
|
37
|
+
assert simple_connector.get_executing_container_id() == 0
|
|
@@ -1291,7 +1291,7 @@ wheels = [
|
|
|
1291
1291
|
|
|
1292
1292
|
[[package]]
|
|
1293
1293
|
name = "splunk-soar-sdk"
|
|
1294
|
-
version = "1.
|
|
1294
|
+
version = "1.4.0"
|
|
1295
1295
|
source = { editable = "." }
|
|
1296
1296
|
dependencies = [
|
|
1297
1297
|
{ name = "beautifulsoup4", marker = "(python_full_version < '3.10' and platform_machine == 'arm64' and sys_platform == 'darwin') or (python_full_version >= '3.13' and platform_machine == 'arm64' and sys_platform == 'darwin') or (python_full_version < '3.10' and platform_machine == 'x86_64' and sys_platform == 'darwin') or (python_full_version >= '3.13' and platform_machine == 'x86_64' and sys_platform == 'darwin') or (python_full_version < '3.10' and platform_machine == 'aarch64' and sys_platform == 'linux') or (python_full_version >= '3.13' and platform_machine == 'aarch64' and sys_platform == 'linux') or (python_full_version < '3.10' and platform_machine == 'x86_64' and sys_platform == 'linux') or (python_full_version >= '3.13' and platform_machine == 'x86_64' and sys_platform == 'linux')" },
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
## [1.3.4](https://github.com/phantomcyber/splunk-soar-sdk/compare/1.3.3...1.3.4) (2025-09-09)
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
### Bug Fixes
|
|
5
|
-
|
|
6
|
-
* **docs:** fetch a deep changelog when generating docs ([2baf81a](https://github.com/phantomcyber/splunk-soar-sdk/commit/2baf81a334ecf8b1556f79c5a3c8217f6acc696b))
|
|
7
|
-
* **docs:** resolve all remaining pydocstyle warnings and make it fail pre-commit ([b97095f](https://github.com/phantomcyber/splunk-soar-sdk/commit/b97095f0c2ef5dfcb39e9b2cc206afbf56bba403))
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
## [1.3.4](https://github.com/phantomcyber/splunk-soar-sdk/compare/1.3.3...1.3.4) (2025-09-09)
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
### Bug Fixes
|
|
17
|
-
|
|
18
|
-
* **docs:** fetch a deep changelog when generating docs ([2baf81a](https://github.com/phantomcyber/splunk-soar-sdk/commit/2baf81a334ecf8b1556f79c5a3c8217f6acc696b))
|
|
19
|
-
* **docs:** resolve all remaining pydocstyle warnings and make it fail pre-commit ([b97095f](https://github.com/phantomcyber/splunk-soar-sdk/commit/b97095f0c2ef5dfcb39e9b2cc206afbf56bba403))
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
1.3.4
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/docs/app_structure/pre-commit-config.yaml.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/.gitignore
RENAMED
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/logo.svg
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/logo_dark.svg
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/src/__init__.py
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/app_templates/basic_app/uv.lock
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/action_renderer.py
RENAMED
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/asset_renderer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/code_renderers/toml_renderer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/decorators/test_connectivity.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/base_connector.py
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/connector_result.py
RENAMED
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/shims/phantom/encryption_helper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/base/base_template.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/base/logo_header.html
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/components/pie_chart.html
RENAMED
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/src/soar_sdk/templates/widgets/widget_template.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/cli/test_assets/converted_app/actions.py.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/code_renderers/test_action_renderer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/actions/async_action.py
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/actions/generate_category.py
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/src/actions/reverse_string.py
RENAMED
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app/templates/reverse_string.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/logo_dark.svg
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/pyproject.toml
RENAMED
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/example_app_with_webhook/src/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{splunk_soar_sdk-1.3.4 → splunk_soar_sdk-1.4.0}/tests/interfaces/test_container_interface.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|