das-cli 1.2.0__tar.gz → 1.2.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. {das_cli-1.2.0/das_cli.egg-info → das_cli-1.2.2}/PKG-INFO +17 -2
  2. {das_cli-1.2.0 → das_cli-1.2.2}/README.md +16 -1
  3. {das_cli-1.2.0 → das_cli-1.2.2}/das/ai/plugins/dasai.py +11 -2
  4. {das_cli-1.2.0 → das_cli-1.2.2}/das/cli.py +1234 -1219
  5. {das_cli-1.2.0 → das_cli-1.2.2}/das/managers/entries_manager.py +17 -0
  6. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/downloads.py +100 -100
  7. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/entries.py +29 -3
  8. {das_cli-1.2.0 → das_cli-1.2.2/das_cli.egg-info}/PKG-INFO +17 -2
  9. {das_cli-1.2.0 → das_cli-1.2.2}/das_cli.egg-info/SOURCES.txt +10 -1
  10. {das_cli-1.2.0 → das_cli-1.2.2}/pyproject.toml +1 -1
  11. das_cli-1.2.2/tests/__init__.py +3 -0
  12. das_cli-1.2.2/tests/attributes_test.py +77 -0
  13. das_cli-1.2.2/tests/download_manager_test.py +34 -0
  14. das_cli-1.2.2/tests/entries_manager_test.py +116 -0
  15. das_cli-1.2.2/tests/entries_service_test.py +86 -0
  16. das_cli-1.2.2/tests/entries_test.py +37 -0
  17. das_cli-1.2.2/tests/file_utils_test.py +115 -0
  18. das_cli-1.2.2/tests/run_tests.py +18 -0
  19. das_cli-1.2.2/tests/search_manager_test.py +35 -0
  20. {das_cli-1.2.0 → das_cli-1.2.2}/LICENSE +0 -0
  21. {das_cli-1.2.0 → das_cli-1.2.2}/MANIFEST.in +0 -0
  22. {das_cli-1.2.0 → das_cli-1.2.2}/das/__init__.py +0 -0
  23. {das_cli-1.2.0 → das_cli-1.2.2}/das/ai/plugins/entries/entries_plugin.py +0 -0
  24. {das_cli-1.2.0 → das_cli-1.2.2}/das/app.py +0 -0
  25. {das_cli-1.2.0 → das_cli-1.2.2}/das/authentication/auth.py +0 -0
  26. {das_cli-1.2.0 → das_cli-1.2.2}/das/authentication/secure_input.py +0 -0
  27. {das_cli-1.2.0 → das_cli-1.2.2}/das/common/api.py +0 -0
  28. {das_cli-1.2.0 → das_cli-1.2.2}/das/common/config.py +0 -0
  29. {das_cli-1.2.0 → das_cli-1.2.2}/das/common/entry_fields_constants.py +0 -0
  30. {das_cli-1.2.0 → das_cli-1.2.2}/das/common/enums.py +0 -0
  31. {das_cli-1.2.0 → das_cli-1.2.2}/das/common/file_utils.py +0 -0
  32. {das_cli-1.2.0 → das_cli-1.2.2}/das/managers/__init__.py +0 -0
  33. {das_cli-1.2.0 → das_cli-1.2.2}/das/managers/digital_objects_manager.py +0 -0
  34. {das_cli-1.2.0 → das_cli-1.2.2}/das/managers/download_manager.py +0 -0
  35. {das_cli-1.2.0 → das_cli-1.2.2}/das/managers/search_manager.py +0 -0
  36. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/attributes.py +0 -0
  37. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/cache.py +0 -0
  38. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/digital_objects.py +0 -0
  39. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/entry_fields.py +0 -0
  40. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/hangfire.py +0 -0
  41. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/search.py +0 -0
  42. {das_cli-1.2.0 → das_cli-1.2.2}/das/services/users.py +0 -0
  43. {das_cli-1.2.0 → das_cli-1.2.2}/das_cli.egg-info/dependency_links.txt +0 -0
  44. {das_cli-1.2.0 → das_cli-1.2.2}/das_cli.egg-info/entry_points.txt +0 -0
  45. {das_cli-1.2.0 → das_cli-1.2.2}/das_cli.egg-info/requires.txt +0 -0
  46. {das_cli-1.2.0 → das_cli-1.2.2}/das_cli.egg-info/top_level.txt +0 -0
  47. {das_cli-1.2.0 → das_cli-1.2.2}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: das-cli
3
- Version: 1.2.0
3
+ Version: 1.2.2
4
4
  Summary: DAS api client.
5
5
  Author: Royal Netherlands Institute for Sea Research
6
6
  License-Expression: MIT
@@ -130,7 +130,11 @@ das entry get --code CODE
130
130
  das entry get --id ID
131
131
 
132
132
  # Delete an entry
133
- das entry delete CODE
133
+ das entry delete --code CODE
134
+ # Or by ID
135
+ das entry delete --id ID
136
+ # Skip confirmation prompt
137
+ das entry delete --code CODE --force
134
138
 
135
139
  # Create entries from file or data
136
140
  das entry create --attribute <AttributeName> <file_path>
@@ -282,6 +286,8 @@ results = search_manager.search_entries(
282
286
  sort_order="asc",
283
287
  )
284
288
 
289
+
290
+
285
291
  # Downloads
286
292
  from das.managers.download_manager import DownloadManager
287
293
  download_manager = DownloadManager()
@@ -358,6 +364,15 @@ das download my-requests --format table
358
364
 
359
365
  # Delete a download request
360
366
  das download delete-request 6b0e68e6-00cd-43a7-9c51-d56c9c091123
367
+
368
+ # Download files for a completed request
369
+ das download files 6b0e68e6-00cd-43a7-9c51-d56c9c091123
370
+
371
+ # Save to a specific folder
372
+ das download files 6b0e68e6-00cd-43a7-9c51-d56c9c091123 --out C:\Downloads
373
+
374
+ # Save to an explicit filename, overwriting if it exists
375
+ das download files 6b0e68e6-00cd-43a7-9c51-d56c9c091123 --out C:\Downloads\bundle.zip --force
361
376
  ```
362
377
 
363
378
  ## Examples
@@ -107,7 +107,11 @@ das entry get --code CODE
107
107
  das entry get --id ID
108
108
 
109
109
  # Delete an entry
110
- das entry delete CODE
110
+ das entry delete --code CODE
111
+ # Or by ID
112
+ das entry delete --id ID
113
+ # Skip confirmation prompt
114
+ das entry delete --code CODE --force
111
115
 
112
116
  # Create entries from file or data
113
117
  das entry create --attribute <AttributeName> <file_path>
@@ -259,6 +263,8 @@ results = search_manager.search_entries(
259
263
  sort_order="asc",
260
264
  )
261
265
 
266
+
267
+
262
268
  # Downloads
263
269
  from das.managers.download_manager import DownloadManager
264
270
  download_manager = DownloadManager()
@@ -335,6 +341,15 @@ das download my-requests --format table
335
341
 
336
342
  # Delete a download request
337
343
  das download delete-request 6b0e68e6-00cd-43a7-9c51-d56c9c091123
344
+
345
+ # Download files for a completed request
346
+ das download files 6b0e68e6-00cd-43a7-9c51-d56c9c091123
347
+
348
+ # Save to a specific folder
349
+ das download files 6b0e68e6-00cd-43a7-9c51-d56c9c091123 --out C:\Downloads
350
+
351
+ # Save to an explicit filename, overwriting if it exists
352
+ das download files 6b0e68e6-00cd-43a7-9c51-d56c9c091123 --out C:\Downloads\bundle.zip --force
338
353
  ```
339
354
 
340
355
  ## Examples
@@ -3,6 +3,7 @@ import logging
3
3
  from dotenv import load_dotenv
4
4
  import asyncio
5
5
  from semantic_kernel import Kernel
6
+ from openai import OpenAI
6
7
  from semantic_kernel.connectors.ai.open_ai import (
7
8
  OpenAIChatCompletion,
8
9
  )
@@ -22,9 +23,17 @@ class DasAI:
22
23
  api_key = os.getenv("OPENAI_API_KEY") or load_openai_api_key()
23
24
  if not api_key:
24
25
  raise ValueError("OpenAI API key is not configured.")
25
- self.openai_chat_completion = OpenAIChatCompletion(ai_model_id="gpt-4o-mini", api_key=api_key)
26
+ self.openai_chat_completion = OpenAIChatCompletion(ai_model_id=os.getenv("OPEN_AI_MODEL_ID"), api_key=api_key)
26
27
  self.kernel.add_service(self.openai_chat_completion)
27
- self.kernel.add_plugin(GetEntryByCodePlugin(), plugin_name="get_entry_by_code")
28
+ self.kernel.add_plugin(GetEntryByCodePlugin(), plugin_name="get_entry_by_code")
29
+ # self.__load_available_models()
30
+
31
+ def __load_available_models(self):
32
+ client = OpenAI(api_key=os.getenv("OPENAI_API_KEY") or load_openai_api_key())
33
+ models = client.models.list()
34
+ for model in models:
35
+ print(model.id)
36
+
28
37
 
29
38
  async def main(self):
30
39
  history = ChatHistory()