nominal-api 0.740.0__py3-none-any.whl → 0.742.0__py3-none-any.whl

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.
nominal_api/__init__.py CHANGED
@@ -77,5 +77,5 @@ __all__ = [
77
77
 
78
78
  __conjure_generator_version__ = "4.17.0"
79
79
 
80
- __version__ = "0.740.0"
80
+ __version__ = "0.742.0"
81
81
 
nominal_api/_impl.py CHANGED
@@ -4428,46 +4428,49 @@ class datasource_api_SearchFilteredChannelsRequest(ConjureBeanType):
4428
4428
  @builtins.classmethod
4429
4429
  def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
4430
4430
  return {
4431
- 'fuzzy_search_text': ConjureFieldDefinition('fuzzySearchText', str),
4432
- 'exact_match': ConjureFieldDefinition('exactMatch', List[str]),
4431
+ 'substrings': ConjureFieldDefinition('substrings', OptionalTypeWrapper[List[str]]),
4432
+ 'subsequences': ConjureFieldDefinition('subsequences', OptionalTypeWrapper[List[str]]),
4433
4433
  'data_sources': ConjureFieldDefinition('dataSources', List[api_rids_DataSourceRid]),
4434
- 'previously_selected_channels': ConjureFieldDefinition('previouslySelectedChannels', OptionalTypeWrapper[Dict[api_rids_DataSourceRid, List[api_Channel]]]),
4435
4434
  'result_size': ConjureFieldDefinition('resultSize', OptionalTypeWrapper[int]),
4436
4435
  'tags': ConjureFieldDefinition('tags', Dict[api_rids_DataSourceRid, Dict[api_TagName, api_TagValue]]),
4437
4436
  'min_data_updated_time': ConjureFieldDefinition('minDataUpdatedTime', OptionalTypeWrapper[scout_run_api_UtcTimestamp]),
4438
- 'max_data_start_time': ConjureFieldDefinition('maxDataStartTime', OptionalTypeWrapper[scout_run_api_UtcTimestamp])
4437
+ 'max_data_start_time': ConjureFieldDefinition('maxDataStartTime', OptionalTypeWrapper[scout_run_api_UtcTimestamp]),
4438
+ 'previously_selected_channels': ConjureFieldDefinition('previouslySelectedChannels', OptionalTypeWrapper[Dict[api_rids_DataSourceRid, List[api_Channel]]]),
4439
+ 'fuzzy_search_text': ConjureFieldDefinition('fuzzySearchText', OptionalTypeWrapper[str]),
4440
+ 'exact_match': ConjureFieldDefinition('exactMatch', OptionalTypeWrapper[List[str]])
4439
4441
  }
4440
4442
 
4441
- __slots__: List[str] = ['_fuzzy_search_text', '_exact_match', '_data_sources', '_previously_selected_channels', '_result_size', '_tags', '_min_data_updated_time', '_max_data_start_time']
4443
+ __slots__: List[str] = ['_substrings', '_subsequences', '_data_sources', '_result_size', '_tags', '_min_data_updated_time', '_max_data_start_time', '_previously_selected_channels', '_fuzzy_search_text', '_exact_match']
4442
4444
 
4443
- def __init__(self, data_sources: List[str], exact_match: List[str], fuzzy_search_text: str, tags: Dict[str, Dict[str, str]], max_data_start_time: Optional["scout_run_api_UtcTimestamp"] = None, min_data_updated_time: Optional["scout_run_api_UtcTimestamp"] = None, previously_selected_channels: Optional[Dict[str, List[str]]] = None, result_size: Optional[int] = None) -> None:
4444
- self._fuzzy_search_text = fuzzy_search_text
4445
- self._exact_match = exact_match
4445
+ def __init__(self, data_sources: List[str], tags: Dict[str, Dict[str, str]], exact_match: Optional[List[str]] = None, fuzzy_search_text: Optional[str] = None, max_data_start_time: Optional["scout_run_api_UtcTimestamp"] = None, min_data_updated_time: Optional["scout_run_api_UtcTimestamp"] = None, previously_selected_channels: Optional[Dict[str, List[str]]] = None, result_size: Optional[int] = None, subsequences: Optional[List[str]] = None, substrings: Optional[List[str]] = None) -> None:
4446
+ self._substrings = substrings
4447
+ self._subsequences = subsequences
4446
4448
  self._data_sources = data_sources
4447
- self._previously_selected_channels = previously_selected_channels
4448
4449
  self._result_size = result_size
4449
4450
  self._tags = tags
4450
4451
  self._min_data_updated_time = min_data_updated_time
4451
4452
  self._max_data_start_time = max_data_start_time
4453
+ self._previously_selected_channels = previously_selected_channels
4454
+ self._fuzzy_search_text = fuzzy_search_text
4455
+ self._exact_match = exact_match
4452
4456
 
4453
4457
  @builtins.property
4454
- def fuzzy_search_text(self) -> str:
4455
- return self._fuzzy_search_text
4458
+ def substrings(self) -> Optional[List[str]]:
4459
+ """All of the strings in the set must appear exactly as substrings within the channel name.
4460
+ """
4461
+ return self._substrings
4456
4462
 
4457
4463
  @builtins.property
4458
- def exact_match(self) -> List[str]:
4459
- """Will return only channels that contain all strings specified as exact matches (case insensitive).
4464
+ def subsequences(self) -> Optional[List[str]]:
4465
+ """All of the characters in the string will appear in the same order (not necessarily adjacently)
4466
+ within the channel name. Only supports one subsequence to match at this time.
4460
4467
  """
4461
- return self._exact_match
4468
+ return self._subsequences
4462
4469
 
4463
4470
  @builtins.property
4464
4471
  def data_sources(self) -> List[str]:
4465
4472
  return self._data_sources
4466
4473
 
4467
- @builtins.property
4468
- def previously_selected_channels(self) -> Optional[Dict[str, List[str]]]:
4469
- return self._previously_selected_channels
4470
-
4471
4474
  @builtins.property
4472
4475
  def result_size(self) -> Optional[int]:
4473
4476
  """Defaults to 200. Will throw if larger than 200.
@@ -4494,6 +4497,20 @@ in this map, or if a data source points to an empty map of tags, it will be sear
4494
4497
  """
4495
4498
  return self._max_data_start_time
4496
4499
 
4500
+ @builtins.property
4501
+ def previously_selected_channels(self) -> Optional[Dict[str, List[str]]]:
4502
+ return self._previously_selected_channels
4503
+
4504
+ @builtins.property
4505
+ def fuzzy_search_text(self) -> Optional[str]:
4506
+ return self._fuzzy_search_text
4507
+
4508
+ @builtins.property
4509
+ def exact_match(self) -> Optional[List[str]]:
4510
+ """Will return only channels that contain all strings specified as exact matches (case insensitive).
4511
+ """
4512
+ return self._exact_match
4513
+
4497
4514
 
4498
4515
  datasource_api_SearchFilteredChannelsRequest.__name__ = "SearchFilteredChannelsRequest"
4499
4516
  datasource_api_SearchFilteredChannelsRequest.__qualname__ = "SearchFilteredChannelsRequest"
@@ -69100,6 +69117,8 @@ class scout_metadata_ResourceType(ConjureEnumType):
69100
69117
  '''ASSET'''
69101
69118
  EVENT = 'EVENT'
69102
69119
  '''EVENT'''
69120
+ DATASET = 'DATASET'
69121
+ '''DATASET'''
69103
69122
  UNKNOWN = 'UNKNOWN'
69104
69123
  '''UNKNOWN'''
69105
69124
 
@@ -81900,6 +81919,74 @@ timeseries_archetype_api_CreateSeriesArchetypeRequest.__qualname__ = "CreateSeri
81900
81919
  timeseries_archetype_api_CreateSeriesArchetypeRequest.__module__ = "nominal_api.timeseries_archetype_api"
81901
81920
 
81902
81921
 
81922
+ class timeseries_archetype_api_CsvLocatorTemplate(ConjureBeanType):
81923
+ """Deprecated in favor of CsvLocatorV2Template
81924
+ """
81925
+
81926
+ @builtins.classmethod
81927
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
81928
+ return {
81929
+ 's3_path': ConjureFieldDefinition('s3Path', api_S3Path),
81930
+ 'index': ConjureFieldDefinition('index', int),
81931
+ 'uses_legacy_format': ConjureFieldDefinition('usesLegacyFormat', OptionalTypeWrapper[bool]),
81932
+ 'x_series_handle': ConjureFieldDefinition('xSeriesHandle', OptionalTypeWrapper[str]),
81933
+ 'y_series_handle': ConjureFieldDefinition('ySeriesHandle', OptionalTypeWrapper[str]),
81934
+ 'type': ConjureFieldDefinition('type', storage_series_api_NominalDataType),
81935
+ 'channel': ConjureFieldDefinition('channel', api_Channel)
81936
+ }
81937
+
81938
+ __slots__: List[str] = ['_s3_path', '_index', '_uses_legacy_format', '_x_series_handle', '_y_series_handle', '_type', '_channel']
81939
+
81940
+ def __init__(self, channel: str, index: int, s3_path: str, type: "storage_series_api_NominalDataType", uses_legacy_format: Optional[bool] = None, x_series_handle: Optional[str] = None, y_series_handle: Optional[str] = None) -> None:
81941
+ self._s3_path = s3_path
81942
+ self._index = index
81943
+ self._uses_legacy_format = uses_legacy_format
81944
+ self._x_series_handle = x_series_handle
81945
+ self._y_series_handle = y_series_handle
81946
+ self._type = type
81947
+ self._channel = channel
81948
+
81949
+ @builtins.property
81950
+ def s3_path(self) -> str:
81951
+ return self._s3_path
81952
+
81953
+ @builtins.property
81954
+ def index(self) -> int:
81955
+ return self._index
81956
+
81957
+ @builtins.property
81958
+ def uses_legacy_format(self) -> Optional[bool]:
81959
+ """If empty, defaults to false. This refers to whether the CSV was ingested using legacy format where the timestamp
81960
+ and values are split into two separate arrow files.
81961
+ """
81962
+ return self._uses_legacy_format
81963
+
81964
+ @builtins.property
81965
+ def x_series_handle(self) -> Optional[str]:
81966
+ """The handle of the x series to use for this logical series.
81967
+ """
81968
+ return self._x_series_handle
81969
+
81970
+ @builtins.property
81971
+ def y_series_handle(self) -> Optional[str]:
81972
+ """The handle of the y series to use for this logical series.
81973
+ """
81974
+ return self._y_series_handle
81975
+
81976
+ @builtins.property
81977
+ def type(self) -> "storage_series_api_NominalDataType":
81978
+ return self._type
81979
+
81980
+ @builtins.property
81981
+ def channel(self) -> str:
81982
+ return self._channel
81983
+
81984
+
81985
+ timeseries_archetype_api_CsvLocatorTemplate.__name__ = "CsvLocatorTemplate"
81986
+ timeseries_archetype_api_CsvLocatorTemplate.__qualname__ = "CsvLocatorTemplate"
81987
+ timeseries_archetype_api_CsvLocatorTemplate.__module__ = "nominal_api.timeseries_archetype_api"
81988
+
81989
+
81903
81990
  class timeseries_archetype_api_CsvLocatorV2Template(ConjureBeanType):
81904
81991
 
81905
81992
  @builtins.classmethod
@@ -82039,6 +82126,7 @@ class timeseries_archetype_api_LocatorTemplate(ConjureUnionType):
82039
82126
  _timestream: Optional["timeseries_archetype_api_TimestreamLocatorTemplate"] = None
82040
82127
  _visual_crossing: Optional["timeseries_archetype_api_VisualCrossingLocatorTemplate"] = None
82041
82128
  _big_query: Optional["timeseries_archetype_api_BigQueryLocatorTemplate"] = None
82129
+ _csv: Optional["timeseries_archetype_api_CsvLocatorTemplate"] = None
82042
82130
  _csv_v2: Optional["timeseries_archetype_api_CsvLocatorV2Template"] = None
82043
82131
 
82044
82132
  @builtins.classmethod
@@ -82051,6 +82139,7 @@ class timeseries_archetype_api_LocatorTemplate(ConjureUnionType):
82051
82139
  'timestream': ConjureFieldDefinition('timestream', timeseries_archetype_api_TimestreamLocatorTemplate),
82052
82140
  'visual_crossing': ConjureFieldDefinition('visualCrossing', timeseries_archetype_api_VisualCrossingLocatorTemplate),
82053
82141
  'big_query': ConjureFieldDefinition('bigQuery', timeseries_archetype_api_BigQueryLocatorTemplate),
82142
+ 'csv': ConjureFieldDefinition('csv', timeseries_archetype_api_CsvLocatorTemplate),
82054
82143
  'csv_v2': ConjureFieldDefinition('csvV2', timeseries_archetype_api_CsvLocatorV2Template)
82055
82144
  }
82056
82145
 
@@ -82063,11 +82152,12 @@ class timeseries_archetype_api_LocatorTemplate(ConjureUnionType):
82063
82152
  timestream: Optional["timeseries_archetype_api_TimestreamLocatorTemplate"] = None,
82064
82153
  visual_crossing: Optional["timeseries_archetype_api_VisualCrossingLocatorTemplate"] = None,
82065
82154
  big_query: Optional["timeseries_archetype_api_BigQueryLocatorTemplate"] = None,
82155
+ csv: Optional["timeseries_archetype_api_CsvLocatorTemplate"] = None,
82066
82156
  csv_v2: Optional["timeseries_archetype_api_CsvLocatorV2Template"] = None,
82067
82157
  type_of_union: Optional[str] = None
82068
82158
  ) -> None:
82069
82159
  if type_of_union is None:
82070
- if (timescale_db is not None) + (influx is not None) + (influx1 is not None) + (nominal is not None) + (timestream is not None) + (visual_crossing is not None) + (big_query is not None) + (csv_v2 is not None) != 1:
82160
+ if (timescale_db is not None) + (influx is not None) + (influx1 is not None) + (nominal is not None) + (timestream is not None) + (visual_crossing is not None) + (big_query is not None) + (csv is not None) + (csv_v2 is not None) != 1:
82071
82161
  raise ValueError('a union must contain a single member')
82072
82162
 
82073
82163
  if timescale_db is not None:
@@ -82091,6 +82181,9 @@ class timeseries_archetype_api_LocatorTemplate(ConjureUnionType):
82091
82181
  if big_query is not None:
82092
82182
  self._big_query = big_query
82093
82183
  self._type = 'bigQuery'
82184
+ if csv is not None:
82185
+ self._csv = csv
82186
+ self._type = 'csv'
82094
82187
  if csv_v2 is not None:
82095
82188
  self._csv_v2 = csv_v2
82096
82189
  self._type = 'csvV2'
@@ -82130,6 +82223,11 @@ class timeseries_archetype_api_LocatorTemplate(ConjureUnionType):
82130
82223
  raise ValueError('a union value must not be None')
82131
82224
  self._big_query = big_query
82132
82225
  self._type = 'bigQuery'
82226
+ elif type_of_union == 'csv':
82227
+ if csv is None:
82228
+ raise ValueError('a union value must not be None')
82229
+ self._csv = csv
82230
+ self._type = 'csv'
82133
82231
  elif type_of_union == 'csvV2':
82134
82232
  if csv_v2 is None:
82135
82233
  raise ValueError('a union value must not be None')
@@ -82164,6 +82262,10 @@ class timeseries_archetype_api_LocatorTemplate(ConjureUnionType):
82164
82262
  def big_query(self) -> Optional["timeseries_archetype_api_BigQueryLocatorTemplate"]:
82165
82263
  return self._big_query
82166
82264
 
82265
+ @builtins.property
82266
+ def csv(self) -> Optional["timeseries_archetype_api_CsvLocatorTemplate"]:
82267
+ return self._csv
82268
+
82167
82269
  @builtins.property
82168
82270
  def csv_v2(self) -> Optional["timeseries_archetype_api_CsvLocatorV2Template"]:
82169
82271
  return self._csv_v2
@@ -82185,6 +82287,8 @@ class timeseries_archetype_api_LocatorTemplate(ConjureUnionType):
82185
82287
  return visitor._visual_crossing(self.visual_crossing)
82186
82288
  if self._type == 'bigQuery' and self.big_query is not None:
82187
82289
  return visitor._big_query(self.big_query)
82290
+ if self._type == 'csv' and self.csv is not None:
82291
+ return visitor._csv(self.csv)
82188
82292
  if self._type == 'csvV2' and self.csv_v2 is not None:
82189
82293
  return visitor._csv_v2(self.csv_v2)
82190
82294
 
@@ -82224,6 +82328,10 @@ class timeseries_archetype_api_LocatorTemplateVisitor:
82224
82328
  def _big_query(self, big_query: "timeseries_archetype_api_BigQueryLocatorTemplate") -> Any:
82225
82329
  pass
82226
82330
 
82331
+ @abstractmethod
82332
+ def _csv(self, csv: "timeseries_archetype_api_CsvLocatorTemplate") -> Any:
82333
+ pass
82334
+
82227
82335
  @abstractmethod
82228
82336
  def _csv_v2(self, csv_v2: "timeseries_archetype_api_CsvLocatorV2Template") -> Any:
82229
82337
  pass
@@ -5,6 +5,7 @@ from .._impl import (
5
5
  timeseries_archetype_api_BatchGetSeriesArchetypeResponse as BatchGetSeriesArchetypeResponse,
6
6
  timeseries_archetype_api_BigQueryLocatorTemplate as BigQueryLocatorTemplate,
7
7
  timeseries_archetype_api_CreateSeriesArchetypeRequest as CreateSeriesArchetypeRequest,
8
+ timeseries_archetype_api_CsvLocatorTemplate as CsvLocatorTemplate,
8
9
  timeseries_archetype_api_CsvLocatorV2Template as CsvLocatorV2Template,
9
10
  timeseries_archetype_api_Influx1LocatorTemplate as Influx1LocatorTemplate,
10
11
  timeseries_archetype_api_Influx2LocatorTemplate as Influx2LocatorTemplate,
@@ -25,6 +26,7 @@ __all__ = [
25
26
  'BatchGetSeriesArchetypeResponse',
26
27
  'BigQueryLocatorTemplate',
27
28
  'CreateSeriesArchetypeRequest',
29
+ 'CsvLocatorTemplate',
28
30
  'CsvLocatorV2Template',
29
31
  'Influx1LocatorTemplate',
30
32
  'Influx2LocatorTemplate',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.740.0
3
+ Version: 0.742.0
4
4
  Requires-Python: >=3.8
5
5
  Requires-Dist: requests
6
6
  Requires-Dist: conjure-python-client<4,>=2.8.0
@@ -1,5 +1,5 @@
1
- nominal_api/__init__.py,sha256=VYbubMIB9hMG6XehwtlEWxwgbzuglIFITD_-b9orGoQ,1990
2
- nominal_api/_impl.py,sha256=KI_EE2AZZy7H5A8vnoyMUCVmPCPBu-8rBmY93zPthfA,3364126
1
+ nominal_api/__init__.py,sha256=HxU-gdKcOVcQ5u26ymv67xzFrqBaliNPT96pGSiGayE,1990
2
+ nominal_api/_impl.py,sha256=WkxwVjj-bvAQsYYUTWP9-l18Lfn1Bo1mJBM2I3dB4B0,3368839
3
3
  nominal_api/py.typed,sha256=eoZ6GfifbqhMLNzjlqRDVil-yyBkOmVN9ujSgJWNBlY,15
4
4
  nominal_api/api/__init__.py,sha256=PMREKP7UhxJ1_gHkrlJET46qlDHksKMm6-woR1p6WnU,1970
5
5
  nominal_api/api_ids/__init__.py,sha256=sxqN5dMk6bOx0SKOd0ANG3_kmx1VtdSVotzEGn_q6sE,114
@@ -66,7 +66,7 @@ nominal_api/storage_series_api/__init__.py,sha256=wq6d_C7M31wVt9CM-bw0DtOBfcrPyv
66
66
  nominal_api/storage_writer_api/__init__.py,sha256=a6EGXk7GgDraTFLYRdJTi4baAYtuRsEX7xrKQTYRydo,2587
67
67
  nominal_api/themes_api/__init__.py,sha256=ep1lghKFHuXCRbvHc4Qsa8O5h-Idr3n9aDTSuKEF4Nk,1341
68
68
  nominal_api/timeseries_archetype/__init__.py,sha256=sZdZCA3nTyv0rF4YHaAZTw4kglrNREcsYTMjjl85hWY,160
69
- nominal_api/timeseries_archetype_api/__init__.py,sha256=chjnzhDWGXCUUxU3hPF1z4kD1cJVYXgBCfxbadjCflw,2040
69
+ nominal_api/timeseries_archetype_api/__init__.py,sha256=xd51luqmUAPR5gn1vVWx6Kzw1EU6rzfit7iK8vYlkB8,2137
70
70
  nominal_api/timeseries_channelmetadata/__init__.py,sha256=K5rQ2FnPxUJJ-763HWInYu0tRfnOyf1V9H232SyliD4,166
71
71
  nominal_api/timeseries_channelmetadata_api/__init__.py,sha256=cnW4lnburn1z58pMO1inqf7DCqbxcTivQmEMCEtqtvQ,1086
72
72
  nominal_api/timeseries_logicalseries/__init__.py,sha256=8GyG6TLiwCUsfooVx8fotkILjCFwsqiDmy9LmSb-OrY,158
@@ -74,7 +74,7 @@ nominal_api/timeseries_logicalseries_api/__init__.py,sha256=BwdqHLq_98LOsRV14JA3
74
74
  nominal_api/timeseries_seriescache/__init__.py,sha256=hL5hN8jKLEGE_fDiZzdASmWIrRjU6tncpmDeuc_47P4,150
75
75
  nominal_api/timeseries_seriescache_api/__init__.py,sha256=USBxFmNnVFdnhTPLvWi3UgsvBZ4Iz4ycNgBTi10F-zI,1603
76
76
  nominal_api/upload_api/__init__.py,sha256=7-XXuZUqKPV4AMWvxNpZPZ5vBun4x-AomXj3Vol_BN4,123
77
- nominal_api-0.740.0.dist-info/METADATA,sha256=-WTN57qVxn8wzCj4HJb3nhkuMM02OYBaPagJ1NSpIGI,199
78
- nominal_api-0.740.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
79
- nominal_api-0.740.0.dist-info/top_level.txt,sha256=gI1ZdNJbuHcJZeKtCzzBXsEtpU1GX6XJKs6ksi_gCRA,12
80
- nominal_api-0.740.0.dist-info/RECORD,,
77
+ nominal_api-0.742.0.dist-info/METADATA,sha256=eO66XMYiBwGRNmibRFjHkbutRRxsn66BmeUgDAj36rA,199
78
+ nominal_api-0.742.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
79
+ nominal_api-0.742.0.dist-info/top_level.txt,sha256=gI1ZdNJbuHcJZeKtCzzBXsEtpU1GX6XJKs6ksi_gCRA,12
80
+ nominal_api-0.742.0.dist-info/RECORD,,