nominal-api 0.758.0__py3-none-any.whl → 0.760.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.

Potentially problematic release.


This version of nominal-api might be problematic. Click here for more details.

nominal_api/__init__.py CHANGED
@@ -17,6 +17,7 @@ __all__ = [
17
17
  'ingest_api',
18
18
  'ingest_workflow_api',
19
19
  'module',
20
+ 'module_internal',
20
21
  'modules_api',
21
22
  'persistent_compute_api',
22
23
  'scout',
@@ -77,5 +78,5 @@ __all__ = [
77
78
 
78
79
  __conjure_generator_version__ = "4.17.0"
79
80
 
80
- __version__ = "0.758.0"
81
+ __version__ = "0.760.0"
81
82
 
nominal_api/_impl.py CHANGED
@@ -9192,6 +9192,8 @@ class ingest_api_FileOutputFormat(ConjureEnumType):
9192
9192
  '''PARQUET_TAR'''
9193
9193
  AVRO_STREAM = 'AVRO_STREAM'
9194
9194
  '''AVRO_STREAM'''
9195
+ JSON_L = 'JSON_L'
9196
+ '''JSON_L'''
9195
9197
  UNKNOWN = 'UNKNOWN'
9196
9198
  '''UNKNOWN'''
9197
9199
 
@@ -15239,44 +15241,187 @@ module_ModuleVersionMetadata.__qualname__ = "ModuleVersionMetadata"
15239
15241
  module_ModuleVersionMetadata.__module__ = "nominal_api.module"
15240
15242
 
15241
15243
 
15242
- class module_SearchModuleApplicationsRequest(ConjureBeanType):
15244
+ class module_SearchModuleApplicationsQuery(ConjureUnionType):
15245
+ _module_rid: Optional[str] = None
15246
+ _asset_rid: Optional[str] = None
15247
+ _workspace: Optional[str] = None
15248
+ _and_: Optional[List["module_SearchModuleApplicationsQuery"]] = None
15249
+ _or_: Optional[List["module_SearchModuleApplicationsQuery"]] = None
15250
+ _not_: Optional["module_SearchModuleApplicationsQuery"] = None
15243
15251
 
15244
15252
  @builtins.classmethod
15245
- def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
15253
+ def _options(cls) -> Dict[str, ConjureFieldDefinition]:
15246
15254
  return {
15247
- 'search_text': ConjureFieldDefinition('searchText', str),
15248
- 'asset_rids': ConjureFieldDefinition('assetRids', OptionalTypeWrapper[List[scout_rids_api_AssetRid]]),
15249
- 'module_rids': ConjureFieldDefinition('moduleRids', OptionalTypeWrapper[List[modules_api_ModuleRid]]),
15250
- 'workspaces': ConjureFieldDefinition('workspaces', OptionalTypeWrapper[List[api_rids_WorkspaceRid]]),
15251
- 'page_size': ConjureFieldDefinition('pageSize', int),
15252
- 'next_page_token': ConjureFieldDefinition('nextPageToken', OptionalTypeWrapper[api_Token])
15255
+ 'module_rid': ConjureFieldDefinition('moduleRid', modules_api_ModuleRid),
15256
+ 'asset_rid': ConjureFieldDefinition('assetRid', scout_rids_api_AssetRid),
15257
+ 'workspace': ConjureFieldDefinition('workspace', api_rids_WorkspaceRid),
15258
+ 'and_': ConjureFieldDefinition('and', List[module_SearchModuleApplicationsQuery]),
15259
+ 'or_': ConjureFieldDefinition('or', List[module_SearchModuleApplicationsQuery]),
15260
+ 'not_': ConjureFieldDefinition('not', module_SearchModuleApplicationsQuery)
15253
15261
  }
15254
15262
 
15255
- __slots__: List[str] = ['_search_text', '_asset_rids', '_module_rids', '_workspaces', '_page_size', '_next_page_token']
15263
+ def __init__(
15264
+ self,
15265
+ module_rid: Optional[str] = None,
15266
+ asset_rid: Optional[str] = None,
15267
+ workspace: Optional[str] = None,
15268
+ and_: Optional[List["module_SearchModuleApplicationsQuery"]] = None,
15269
+ or_: Optional[List["module_SearchModuleApplicationsQuery"]] = None,
15270
+ not_: Optional["module_SearchModuleApplicationsQuery"] = None,
15271
+ type_of_union: Optional[str] = None
15272
+ ) -> None:
15273
+ if type_of_union is None:
15274
+ if (module_rid is not None) + (asset_rid is not None) + (workspace is not None) + (and_ is not None) + (or_ is not None) + (not_ is not None) != 1:
15275
+ raise ValueError('a union must contain a single member')
15256
15276
 
15257
- def __init__(self, page_size: int, search_text: str, asset_rids: Optional[List[str]] = None, module_rids: Optional[List[str]] = None, next_page_token: Optional[str] = None, workspaces: Optional[List[str]] = None) -> None:
15258
- self._search_text = search_text
15259
- self._asset_rids = asset_rids
15260
- self._module_rids = module_rids
15261
- self._workspaces = workspaces
15262
- self._page_size = page_size
15263
- self._next_page_token = next_page_token
15277
+ if module_rid is not None:
15278
+ self._module_rid = module_rid
15279
+ self._type = 'moduleRid'
15280
+ if asset_rid is not None:
15281
+ self._asset_rid = asset_rid
15282
+ self._type = 'assetRid'
15283
+ if workspace is not None:
15284
+ self._workspace = workspace
15285
+ self._type = 'workspace'
15286
+ if and_ is not None:
15287
+ self._and_ = and_
15288
+ self._type = 'and'
15289
+ if or_ is not None:
15290
+ self._or_ = or_
15291
+ self._type = 'or'
15292
+ if not_ is not None:
15293
+ self._not_ = not_
15294
+ self._type = 'not'
15295
+
15296
+ elif type_of_union == 'moduleRid':
15297
+ if module_rid is None:
15298
+ raise ValueError('a union value must not be None')
15299
+ self._module_rid = module_rid
15300
+ self._type = 'moduleRid'
15301
+ elif type_of_union == 'assetRid':
15302
+ if asset_rid is None:
15303
+ raise ValueError('a union value must not be None')
15304
+ self._asset_rid = asset_rid
15305
+ self._type = 'assetRid'
15306
+ elif type_of_union == 'workspace':
15307
+ if workspace is None:
15308
+ raise ValueError('a union value must not be None')
15309
+ self._workspace = workspace
15310
+ self._type = 'workspace'
15311
+ elif type_of_union == 'and':
15312
+ if and_ is None:
15313
+ raise ValueError('a union value must not be None')
15314
+ self._and_ = and_
15315
+ self._type = 'and'
15316
+ elif type_of_union == 'or':
15317
+ if or_ is None:
15318
+ raise ValueError('a union value must not be None')
15319
+ self._or_ = or_
15320
+ self._type = 'or'
15321
+ elif type_of_union == 'not':
15322
+ if not_ is None:
15323
+ raise ValueError('a union value must not be None')
15324
+ self._not_ = not_
15325
+ self._type = 'not'
15264
15326
 
15265
15327
  @builtins.property
15266
- def search_text(self) -> str:
15267
- return self._search_text
15328
+ def module_rid(self) -> Optional[str]:
15329
+ return self._module_rid
15268
15330
 
15269
15331
  @builtins.property
15270
- def asset_rids(self) -> Optional[List[str]]:
15271
- return self._asset_rids
15332
+ def asset_rid(self) -> Optional[str]:
15333
+ return self._asset_rid
15272
15334
 
15273
15335
  @builtins.property
15274
- def module_rids(self) -> Optional[List[str]]:
15275
- return self._module_rids
15336
+ def workspace(self) -> Optional[str]:
15337
+ return self._workspace
15276
15338
 
15277
15339
  @builtins.property
15278
- def workspaces(self) -> Optional[List[str]]:
15279
- return self._workspaces
15340
+ def and_(self) -> Optional[List["module_SearchModuleApplicationsQuery"]]:
15341
+ return self._and_
15342
+
15343
+ @builtins.property
15344
+ def or_(self) -> Optional[List["module_SearchModuleApplicationsQuery"]]:
15345
+ return self._or_
15346
+
15347
+ @builtins.property
15348
+ def not_(self) -> Optional["module_SearchModuleApplicationsQuery"]:
15349
+ return self._not_
15350
+
15351
+ def accept(self, visitor) -> Any:
15352
+ if not isinstance(visitor, module_SearchModuleApplicationsQueryVisitor):
15353
+ raise ValueError('{} is not an instance of module_SearchModuleApplicationsQueryVisitor'.format(visitor.__class__.__name__))
15354
+ if self._type == 'moduleRid' and self.module_rid is not None:
15355
+ return visitor._module_rid(self.module_rid)
15356
+ if self._type == 'assetRid' and self.asset_rid is not None:
15357
+ return visitor._asset_rid(self.asset_rid)
15358
+ if self._type == 'workspace' and self.workspace is not None:
15359
+ return visitor._workspace(self.workspace)
15360
+ if self._type == 'and' and self.and_ is not None:
15361
+ return visitor._and(self.and_)
15362
+ if self._type == 'or' and self.or_ is not None:
15363
+ return visitor._or(self.or_)
15364
+ if self._type == 'not' and self.not_ is not None:
15365
+ return visitor._not(self.not_)
15366
+
15367
+
15368
+ module_SearchModuleApplicationsQuery.__name__ = "SearchModuleApplicationsQuery"
15369
+ module_SearchModuleApplicationsQuery.__qualname__ = "SearchModuleApplicationsQuery"
15370
+ module_SearchModuleApplicationsQuery.__module__ = "nominal_api.module"
15371
+
15372
+
15373
+ class module_SearchModuleApplicationsQueryVisitor:
15374
+
15375
+ @abstractmethod
15376
+ def _module_rid(self, module_rid: str) -> Any:
15377
+ pass
15378
+
15379
+ @abstractmethod
15380
+ def _asset_rid(self, asset_rid: str) -> Any:
15381
+ pass
15382
+
15383
+ @abstractmethod
15384
+ def _workspace(self, workspace: str) -> Any:
15385
+ pass
15386
+
15387
+ @abstractmethod
15388
+ def _and(self, and_: List["module_SearchModuleApplicationsQuery"]) -> Any:
15389
+ pass
15390
+
15391
+ @abstractmethod
15392
+ def _or(self, or_: List["module_SearchModuleApplicationsQuery"]) -> Any:
15393
+ pass
15394
+
15395
+ @abstractmethod
15396
+ def _not(self, not_: "module_SearchModuleApplicationsQuery") -> Any:
15397
+ pass
15398
+
15399
+
15400
+ module_SearchModuleApplicationsQueryVisitor.__name__ = "SearchModuleApplicationsQueryVisitor"
15401
+ module_SearchModuleApplicationsQueryVisitor.__qualname__ = "SearchModuleApplicationsQueryVisitor"
15402
+ module_SearchModuleApplicationsQueryVisitor.__module__ = "nominal_api.module"
15403
+
15404
+
15405
+ class module_SearchModuleApplicationsRequest(ConjureBeanType):
15406
+
15407
+ @builtins.classmethod
15408
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
15409
+ return {
15410
+ 'query': ConjureFieldDefinition('query', module_SearchModuleApplicationsQuery),
15411
+ 'page_size': ConjureFieldDefinition('pageSize', int),
15412
+ 'next_page_token': ConjureFieldDefinition('nextPageToken', OptionalTypeWrapper[api_Token])
15413
+ }
15414
+
15415
+ __slots__: List[str] = ['_query', '_page_size', '_next_page_token']
15416
+
15417
+ def __init__(self, page_size: int, query: "module_SearchModuleApplicationsQuery", next_page_token: Optional[str] = None) -> None:
15418
+ self._query = query
15419
+ self._page_size = page_size
15420
+ self._next_page_token = next_page_token
15421
+
15422
+ @builtins.property
15423
+ def query(self) -> "module_SearchModuleApplicationsQuery":
15424
+ return self._query
15280
15425
 
15281
15426
  @builtins.property
15282
15427
  def page_size(self) -> int:
@@ -15786,6 +15931,148 @@ module_ValueType.__qualname__ = "ValueType"
15786
15931
  module_ValueType.__module__ = "nominal_api.module"
15787
15932
 
15788
15933
 
15934
+ class module_internal_BatchGetResolvedModuleDefinitionsRequest(ConjureBeanType):
15935
+
15936
+ @builtins.classmethod
15937
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
15938
+ return {
15939
+ 'requests': ConjureFieldDefinition('requests', List[module_internal_ModuleApplicationReference])
15940
+ }
15941
+
15942
+ __slots__: List[str] = ['_requests']
15943
+
15944
+ def __init__(self, requests: List["module_internal_ModuleApplicationReference"]) -> None:
15945
+ self._requests = requests
15946
+
15947
+ @builtins.property
15948
+ def requests(self) -> List["module_internal_ModuleApplicationReference"]:
15949
+ return self._requests
15950
+
15951
+
15952
+ module_internal_BatchGetResolvedModuleDefinitionsRequest.__name__ = "BatchGetResolvedModuleDefinitionsRequest"
15953
+ module_internal_BatchGetResolvedModuleDefinitionsRequest.__qualname__ = "BatchGetResolvedModuleDefinitionsRequest"
15954
+ module_internal_BatchGetResolvedModuleDefinitionsRequest.__module__ = "nominal_api.module_internal"
15955
+
15956
+
15957
+ class module_internal_InternalModuleService(Service):
15958
+ """This service provides internal APIs related to modules.
15959
+ """
15960
+
15961
+ def batch_get_resolved_module_definitions(self, auth_header: str, request: "module_internal_BatchGetResolvedModuleDefinitionsRequest") -> List["module_internal_ResolvedModuleVersionDefinition"]:
15962
+ """Returns the resolved module definitions for the given module-asset pairs. If any of modules have not been
15963
+ applied to their corresponding asset, this will throw.
15964
+ """
15965
+ _conjure_encoder = ConjureEncoder()
15966
+
15967
+ _headers: Dict[str, Any] = {
15968
+ 'Accept': 'application/json',
15969
+ 'Content-Type': 'application/json',
15970
+ 'Authorization': auth_header,
15971
+ }
15972
+
15973
+ _params: Dict[str, Any] = {
15974
+ }
15975
+
15976
+ _path_params: Dict[str, str] = {
15977
+ }
15978
+
15979
+ _json: Any = _conjure_encoder.default(request)
15980
+
15981
+ _path = '/internal/scout/v2/module/resolved-module/batch-get'
15982
+ _path = _path.format(**_path_params)
15983
+
15984
+ _response: Response = self._request(
15985
+ 'POST',
15986
+ self._uri + _path,
15987
+ params=_params,
15988
+ headers=_headers,
15989
+ json=_json)
15990
+
15991
+ _decoder = ConjureDecoder()
15992
+ return _decoder.decode(_response.json(), List[module_internal_ResolvedModuleVersionDefinition], self._return_none_for_unknown_union_types)
15993
+
15994
+
15995
+ module_internal_InternalModuleService.__name__ = "InternalModuleService"
15996
+ module_internal_InternalModuleService.__qualname__ = "InternalModuleService"
15997
+ module_internal_InternalModuleService.__module__ = "nominal_api.module_internal"
15998
+
15999
+
16000
+ class module_internal_ModuleApplicationReference(ConjureBeanType):
16001
+
16002
+ @builtins.classmethod
16003
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
16004
+ return {
16005
+ 'module_name': ConjureFieldDefinition('moduleName', str),
16006
+ 'asset_rid': ConjureFieldDefinition('assetRid', scout_rids_api_AssetRid)
16007
+ }
16008
+
16009
+ __slots__: List[str] = ['_module_name', '_asset_rid']
16010
+
16011
+ def __init__(self, asset_rid: str, module_name: str) -> None:
16012
+ self._module_name = module_name
16013
+ self._asset_rid = asset_rid
16014
+
16015
+ @builtins.property
16016
+ def module_name(self) -> str:
16017
+ return self._module_name
16018
+
16019
+ @builtins.property
16020
+ def asset_rid(self) -> str:
16021
+ return self._asset_rid
16022
+
16023
+
16024
+ module_internal_ModuleApplicationReference.__name__ = "ModuleApplicationReference"
16025
+ module_internal_ModuleApplicationReference.__qualname__ = "ModuleApplicationReference"
16026
+ module_internal_ModuleApplicationReference.__module__ = "nominal_api.module_internal"
16027
+
16028
+
16029
+ class module_internal_ResolvedModuleVersionDefinition(ConjureBeanType):
16030
+
16031
+ @builtins.classmethod
16032
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
16033
+ return {
16034
+ 'module_name': ConjureFieldDefinition('moduleName', str),
16035
+ 'asset_rid': ConjureFieldDefinition('assetRid', scout_rids_api_AssetRid),
16036
+ 'resolved_parameters': ConjureFieldDefinition('resolvedParameters', List[module_ModuleVariable]),
16037
+ 'default_variables': ConjureFieldDefinition('defaultVariables', List[module_ModuleVariable]),
16038
+ 'functions': ConjureFieldDefinition('functions', List[module_Function])
16039
+ }
16040
+
16041
+ __slots__: List[str] = ['_module_name', '_asset_rid', '_resolved_parameters', '_default_variables', '_functions']
16042
+
16043
+ def __init__(self, asset_rid: str, default_variables: List["module_ModuleVariable"], functions: List["module_Function"], module_name: str, resolved_parameters: List["module_ModuleVariable"]) -> None:
16044
+ self._module_name = module_name
16045
+ self._asset_rid = asset_rid
16046
+ self._resolved_parameters = resolved_parameters
16047
+ self._default_variables = default_variables
16048
+ self._functions = functions
16049
+
16050
+ @builtins.property
16051
+ def module_name(self) -> str:
16052
+ return self._module_name
16053
+
16054
+ @builtins.property
16055
+ def asset_rid(self) -> str:
16056
+ return self._asset_rid
16057
+
16058
+ @builtins.property
16059
+ def resolved_parameters(self) -> List["module_ModuleVariable"]:
16060
+ return self._resolved_parameters
16061
+
16062
+ @builtins.property
16063
+ def default_variables(self) -> List["module_ModuleVariable"]:
16064
+ return self._default_variables
16065
+
16066
+ @builtins.property
16067
+ def functions(self) -> List["module_Function"]:
16068
+ return self._functions
16069
+
16070
+
16071
+ module_internal_ResolvedModuleVersionDefinition.__name__ = "ResolvedModuleVersionDefinition"
16072
+ module_internal_ResolvedModuleVersionDefinition.__qualname__ = "ResolvedModuleVersionDefinition"
16073
+ module_internal_ResolvedModuleVersionDefinition.__module__ = "nominal_api.module_internal"
16074
+
16075
+
15789
16076
  class persistent_compute_api_AppendResult(ConjureBeanType):
15790
16077
  """An append result won't cover the full `StreamingComputeNodeRequest#windowWidth` but rather just a smaller
15791
16078
  window. The end of the window that the append covers is guaranteed to be later than previously sent results.
@@ -55508,6 +55795,7 @@ class scout_compute_resolved_api_NumericSeriesNode(ConjureUnionType):
55508
55795
  _unit_conversion: Optional["scout_compute_resolved_api_UnitConversionSeriesNode"] = None
55509
55796
  _value_difference: Optional["scout_compute_resolved_api_ValueDifferenceSeriesNode"] = None
55510
55797
  _filter_transformation: Optional["scout_compute_resolved_api_NumericFilterTransformationSeriesNode"] = None
55798
+ _threshold_filter: Optional["scout_compute_resolved_api_NumericThresholdFilterSeriesNode"] = None
55511
55799
  _array_select: Optional["scout_compute_resolved_api_SelectIndexFromNumericArraySeriesNode"] = None
55512
55800
  _absolute_timestamp: Optional["scout_compute_resolved_api_AbsoluteTimestampSeriesNode"] = None
55513
55801
 
@@ -55541,6 +55829,7 @@ class scout_compute_resolved_api_NumericSeriesNode(ConjureUnionType):
55541
55829
  'unit_conversion': ConjureFieldDefinition('unitConversion', scout_compute_resolved_api_UnitConversionSeriesNode),
55542
55830
  'value_difference': ConjureFieldDefinition('valueDifference', scout_compute_resolved_api_ValueDifferenceSeriesNode),
55543
55831
  'filter_transformation': ConjureFieldDefinition('filterTransformation', scout_compute_resolved_api_NumericFilterTransformationSeriesNode),
55832
+ 'threshold_filter': ConjureFieldDefinition('thresholdFilter', scout_compute_resolved_api_NumericThresholdFilterSeriesNode),
55544
55833
  'array_select': ConjureFieldDefinition('arraySelect', scout_compute_resolved_api_SelectIndexFromNumericArraySeriesNode),
55545
55834
  'absolute_timestamp': ConjureFieldDefinition('absoluteTimestamp', scout_compute_resolved_api_AbsoluteTimestampSeriesNode)
55546
55835
  }
@@ -55574,12 +55863,13 @@ class scout_compute_resolved_api_NumericSeriesNode(ConjureUnionType):
55574
55863
  unit_conversion: Optional["scout_compute_resolved_api_UnitConversionSeriesNode"] = None,
55575
55864
  value_difference: Optional["scout_compute_resolved_api_ValueDifferenceSeriesNode"] = None,
55576
55865
  filter_transformation: Optional["scout_compute_resolved_api_NumericFilterTransformationSeriesNode"] = None,
55866
+ threshold_filter: Optional["scout_compute_resolved_api_NumericThresholdFilterSeriesNode"] = None,
55577
55867
  array_select: Optional["scout_compute_resolved_api_SelectIndexFromNumericArraySeriesNode"] = None,
55578
55868
  absolute_timestamp: Optional["scout_compute_resolved_api_AbsoluteTimestampSeriesNode"] = None,
55579
55869
  type_of_union: Optional[str] = None
55580
55870
  ) -> None:
55581
55871
  if type_of_union is None:
55582
- if (arithmetic is not None) + (bit_operation is not None) + (count_duplicate is not None) + (cumulative_sum is not None) + (derivative is not None) + (integral is not None) + (max is not None) + (mean is not None) + (min is not None) + (offset is not None) + (product is not None) + (raw is not None) + (resample is not None) + (rolling_operation is not None) + (aggregate is not None) + (signal_filter is not None) + (sum is not None) + (scale is not None) + (time_difference is not None) + (time_range_filter is not None) + (time_shift is not None) + (unary_arithmetic is not None) + (binary_arithmetic is not None) + (union is not None) + (unit_conversion is not None) + (value_difference is not None) + (filter_transformation is not None) + (array_select is not None) + (absolute_timestamp is not None) != 1:
55872
+ if (arithmetic is not None) + (bit_operation is not None) + (count_duplicate is not None) + (cumulative_sum is not None) + (derivative is not None) + (integral is not None) + (max is not None) + (mean is not None) + (min is not None) + (offset is not None) + (product is not None) + (raw is not None) + (resample is not None) + (rolling_operation is not None) + (aggregate is not None) + (signal_filter is not None) + (sum is not None) + (scale is not None) + (time_difference is not None) + (time_range_filter is not None) + (time_shift is not None) + (unary_arithmetic is not None) + (binary_arithmetic is not None) + (union is not None) + (unit_conversion is not None) + (value_difference is not None) + (filter_transformation is not None) + (threshold_filter is not None) + (array_select is not None) + (absolute_timestamp is not None) != 1:
55583
55873
  raise ValueError('a union must contain a single member')
55584
55874
 
55585
55875
  if arithmetic is not None:
@@ -55663,6 +55953,9 @@ class scout_compute_resolved_api_NumericSeriesNode(ConjureUnionType):
55663
55953
  if filter_transformation is not None:
55664
55954
  self._filter_transformation = filter_transformation
55665
55955
  self._type = 'filterTransformation'
55956
+ if threshold_filter is not None:
55957
+ self._threshold_filter = threshold_filter
55958
+ self._type = 'thresholdFilter'
55666
55959
  if array_select is not None:
55667
55960
  self._array_select = array_select
55668
55961
  self._type = 'arraySelect'
@@ -55805,6 +56098,11 @@ class scout_compute_resolved_api_NumericSeriesNode(ConjureUnionType):
55805
56098
  raise ValueError('a union value must not be None')
55806
56099
  self._filter_transformation = filter_transformation
55807
56100
  self._type = 'filterTransformation'
56101
+ elif type_of_union == 'thresholdFilter':
56102
+ if threshold_filter is None:
56103
+ raise ValueError('a union value must not be None')
56104
+ self._threshold_filter = threshold_filter
56105
+ self._type = 'thresholdFilter'
55808
56106
  elif type_of_union == 'arraySelect':
55809
56107
  if array_select is None:
55810
56108
  raise ValueError('a union value must not be None')
@@ -55924,6 +56222,10 @@ class scout_compute_resolved_api_NumericSeriesNode(ConjureUnionType):
55924
56222
  def filter_transformation(self) -> Optional["scout_compute_resolved_api_NumericFilterTransformationSeriesNode"]:
55925
56223
  return self._filter_transformation
55926
56224
 
56225
+ @builtins.property
56226
+ def threshold_filter(self) -> Optional["scout_compute_resolved_api_NumericThresholdFilterSeriesNode"]:
56227
+ return self._threshold_filter
56228
+
55927
56229
  @builtins.property
55928
56230
  def array_select(self) -> Optional["scout_compute_resolved_api_SelectIndexFromNumericArraySeriesNode"]:
55929
56231
  return self._array_select
@@ -55989,6 +56291,8 @@ class scout_compute_resolved_api_NumericSeriesNode(ConjureUnionType):
55989
56291
  return visitor._value_difference(self.value_difference)
55990
56292
  if self._type == 'filterTransformation' and self.filter_transformation is not None:
55991
56293
  return visitor._filter_transformation(self.filter_transformation)
56294
+ if self._type == 'thresholdFilter' and self.threshold_filter is not None:
56295
+ return visitor._threshold_filter(self.threshold_filter)
55992
56296
  if self._type == 'arraySelect' and self.array_select is not None:
55993
56297
  return visitor._array_select(self.array_select)
55994
56298
  if self._type == 'absoluteTimestamp' and self.absolute_timestamp is not None:
@@ -56110,6 +56414,10 @@ class scout_compute_resolved_api_NumericSeriesNodeVisitor:
56110
56414
  def _filter_transformation(self, filter_transformation: "scout_compute_resolved_api_NumericFilterTransformationSeriesNode") -> Any:
56111
56415
  pass
56112
56416
 
56417
+ @abstractmethod
56418
+ def _threshold_filter(self, threshold_filter: "scout_compute_resolved_api_NumericThresholdFilterSeriesNode") -> Any:
56419
+ pass
56420
+
56113
56421
  @abstractmethod
56114
56422
  def _array_select(self, array_select: "scout_compute_resolved_api_SelectIndexFromNumericArraySeriesNode") -> Any:
56115
56423
  pass
@@ -56124,6 +56432,44 @@ scout_compute_resolved_api_NumericSeriesNodeVisitor.__qualname__ = "NumericSerie
56124
56432
  scout_compute_resolved_api_NumericSeriesNodeVisitor.__module__ = "nominal_api.scout_compute_resolved_api"
56125
56433
 
56126
56434
 
56435
+ class scout_compute_resolved_api_NumericThresholdFilterSeriesNode(ConjureBeanType):
56436
+ """Even though this could be implementing using a filter transformation, handling it alone gives
56437
+ easier pushdown instead of indirecting through ranges nodes
56438
+ """
56439
+
56440
+ @builtins.classmethod
56441
+ def _fields(cls) -> Dict[str, ConjureFieldDefinition]:
56442
+ return {
56443
+ 'input': ConjureFieldDefinition('input', scout_compute_resolved_api_NumericSeriesNode),
56444
+ 'threshold': ConjureFieldDefinition('threshold', float),
56445
+ 'threshold_operator': ConjureFieldDefinition('thresholdOperator', scout_compute_api_ThresholdOperator)
56446
+ }
56447
+
56448
+ __slots__: List[str] = ['_input', '_threshold', '_threshold_operator']
56449
+
56450
+ def __init__(self, input: "scout_compute_resolved_api_NumericSeriesNode", threshold: float, threshold_operator: "scout_compute_api_ThresholdOperator") -> None:
56451
+ self._input = input
56452
+ self._threshold = threshold
56453
+ self._threshold_operator = threshold_operator
56454
+
56455
+ @builtins.property
56456
+ def input(self) -> "scout_compute_resolved_api_NumericSeriesNode":
56457
+ return self._input
56458
+
56459
+ @builtins.property
56460
+ def threshold(self) -> float:
56461
+ return self._threshold
56462
+
56463
+ @builtins.property
56464
+ def threshold_operator(self) -> "scout_compute_api_ThresholdOperator":
56465
+ return self._threshold_operator
56466
+
56467
+
56468
+ scout_compute_resolved_api_NumericThresholdFilterSeriesNode.__name__ = "NumericThresholdFilterSeriesNode"
56469
+ scout_compute_resolved_api_NumericThresholdFilterSeriesNode.__qualname__ = "NumericThresholdFilterSeriesNode"
56470
+ scout_compute_resolved_api_NumericThresholdFilterSeriesNode.__module__ = "nominal_api.scout_compute_resolved_api"
56471
+
56472
+
56127
56473
  class scout_compute_resolved_api_NumericTimeRangeFilterSeriesNode(ConjureBeanType):
56128
56474
 
56129
56475
  @builtins.classmethod
@@ -86282,6 +86628,8 @@ api_ErrorType = str
86282
86628
 
86283
86629
  scout_compute_api_ComputeWithUnitsRequest = scout_compute_api_ComputeNodeRequest
86284
86630
 
86631
+ scout_rids_api_GroupRid = str
86632
+
86285
86633
  scout_rids_api_Version = int
86286
86634
 
86287
86635
  scout_versioning_api_BranchName = str
@@ -27,6 +27,8 @@ from .._impl import (
27
27
  module_ModuleVersionDefinition as ModuleVersionDefinition,
28
28
  module_ModuleVersionMetadata as ModuleVersionMetadata,
29
29
  module_ParameterName as ParameterName,
30
+ module_SearchModuleApplicationsQuery as SearchModuleApplicationsQuery,
31
+ module_SearchModuleApplicationsQueryVisitor as SearchModuleApplicationsQueryVisitor,
30
32
  module_SearchModuleApplicationsRequest as SearchModuleApplicationsRequest,
31
33
  module_SearchModuleApplicationsResponse as SearchModuleApplicationsResponse,
32
34
  module_SearchModulesQuery as SearchModulesQuery,
@@ -70,6 +72,8 @@ __all__ = [
70
72
  'ModuleVersionDefinition',
71
73
  'ModuleVersionMetadata',
72
74
  'ParameterName',
75
+ 'SearchModuleApplicationsQuery',
76
+ 'SearchModuleApplicationsQueryVisitor',
73
77
  'SearchModuleApplicationsRequest',
74
78
  'SearchModuleApplicationsResponse',
75
79
  'SearchModulesQuery',
@@ -0,0 +1,15 @@
1
+ # coding=utf-8
2
+ from .._impl import (
3
+ module_internal_BatchGetResolvedModuleDefinitionsRequest as BatchGetResolvedModuleDefinitionsRequest,
4
+ module_internal_InternalModuleService as InternalModuleService,
5
+ module_internal_ModuleApplicationReference as ModuleApplicationReference,
6
+ module_internal_ResolvedModuleVersionDefinition as ResolvedModuleVersionDefinition,
7
+ )
8
+
9
+ __all__ = [
10
+ 'BatchGetResolvedModuleDefinitionsRequest',
11
+ 'ModuleApplicationReference',
12
+ 'ResolvedModuleVersionDefinition',
13
+ 'InternalModuleService',
14
+ ]
15
+
@@ -85,6 +85,7 @@ from .._impl import (
85
85
  scout_compute_resolved_api_NumericResampleSeriesNode as NumericResampleSeriesNode,
86
86
  scout_compute_resolved_api_NumericSeriesNode as NumericSeriesNode,
87
87
  scout_compute_resolved_api_NumericSeriesNodeVisitor as NumericSeriesNodeVisitor,
88
+ scout_compute_resolved_api_NumericThresholdFilterSeriesNode as NumericThresholdFilterSeriesNode,
88
89
  scout_compute_resolved_api_NumericTimeRangeFilterSeriesNode as NumericTimeRangeFilterSeriesNode,
89
90
  scout_compute_resolved_api_NumericTimeShiftSeriesNode as NumericTimeShiftSeriesNode,
90
91
  scout_compute_resolved_api_NumericUnionSeriesNode as NumericUnionSeriesNode,
@@ -239,6 +240,7 @@ __all__ = [
239
240
  'NumericResampleSeriesNode',
240
241
  'NumericSeriesNode',
241
242
  'NumericSeriesNodeVisitor',
243
+ 'NumericThresholdFilterSeriesNode',
242
244
  'NumericTimeRangeFilterSeriesNode',
243
245
  'NumericTimeShiftSeriesNode',
244
246
  'NumericUnionSeriesNode',
@@ -14,6 +14,7 @@ from .._impl import (
14
14
  scout_rids_api_DataReviewRid as DataReviewRid,
15
15
  scout_rids_api_FunctionLineageRid as FunctionLineageRid,
16
16
  scout_rids_api_FunctionRid as FunctionRid,
17
+ scout_rids_api_GroupRid as GroupRid,
17
18
  scout_rids_api_NotebookRid as NotebookRid,
18
19
  scout_rids_api_PendingReviewAlertState as PendingReviewAlertState,
19
20
  scout_rids_api_SnapshotRid as SnapshotRid,
@@ -40,6 +41,7 @@ __all__ = [
40
41
  'DataReviewRid',
41
42
  'FunctionLineageRid',
42
43
  'FunctionRid',
44
+ 'GroupRid',
43
45
  'NotebookRid',
44
46
  'PendingReviewAlertState',
45
47
  'SnapshotRid',
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nominal-api
3
- Version: 0.758.0
3
+ Version: 0.760.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=wl-qVmkS-3sVbH9OVfYkUNQhhDdbFzqD0znG6dus6CQ,1989
2
- nominal_api/_impl.py,sha256=CKOH-4X6q0Yeg4OsQjzf9ZU4Q2cxpDVY7JdtNodztdQ,3391967
1
+ nominal_api/__init__.py,sha256=am5uus2gUqrSCtj8OoUcwZaJrWGoO-b9P_QpJHXe08s,2012
2
+ nominal_api/_impl.py,sha256=zbDCvJsApmmli8LYz63v_L3gYpjcqOWIKDwWZhaoIyA,3406068
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
@@ -17,7 +17,8 @@ nominal_api/datasource_pagination_api/__init__.py,sha256=WeENj6yqi2XfInU8YgjFwqw
17
17
  nominal_api/event/__init__.py,sha256=t5q8N5ozj3tHwRVhwtL6kwu-1-FMIoTGJT1RX75pwZM,2830
18
18
  nominal_api/ingest_api/__init__.py,sha256=vkOFk6X2S4jpv0FBwsT9JpaK7Hb7lk9nkMNwcTi4zTw,11266
19
19
  nominal_api/ingest_workflow_api/__init__.py,sha256=lTCb7s4VCrpur0TDpTy_EDvUdHJ4UKqcTv8MYiEeeko,2954
20
- nominal_api/module/__init__.py,sha256=6b_oA-UVtnOS1kJQzzTnzZX7MRxIe3DEY-IpNyri8E8,3405
20
+ nominal_api/module/__init__.py,sha256=lM3ETKLddEed2ZeQgjz1eb0C_AEU0qnGX_sceK05sc0,3650
21
+ nominal_api/module_internal/__init__.py,sha256=qEQ3cxDc78ImuKO1Fr59cnMZvAvidMgjatZAJMsyUKc,545
21
22
  nominal_api/modules_api/__init__.py,sha256=V8ccEclLTh6CbzZvpRhcncPFqFBU-sSUSkfr4KzXL6w,112
22
23
  nominal_api/persistent_compute_api/__init__.py,sha256=bOWBiRLJbl3winMP9EowCUpPpRIUYyejua3059wJWQk,3314
23
24
  nominal_api/scout/__init__.py,sha256=dZzrrqBeio2l0txhlNoHSfv6QsA9a3EVDp0_XpubUGk,481
@@ -34,7 +35,7 @@ nominal_api/scout_comparisonnotebook_api/__init__.py,sha256=RpTvc8WqNxOuDSXWs-xV
34
35
  nominal_api/scout_comparisonrun_api/__init__.py,sha256=y5SlDoXvskyTKjg2O8o3cBhGSN-KA7iVlVjyy3vb3Co,652
35
36
  nominal_api/scout_compute_api/__init__.py,sha256=YuZBcMy3WbAVThmYpZWZTr534ptbYa8o4iI-qmI1DTI,29605
36
37
  nominal_api/scout_compute_api_deprecated/__init__.py,sha256=JrZKbt1ulYECTdUSkXn6On22Alu_cPUBjCRWTN3ctxk,5041
37
- nominal_api/scout_compute_resolved_api/__init__.py,sha256=BW4jT78H0_xrK1BP6anvZQxTNUE6Xv_pAIinJup7eWY,16090
38
+ nominal_api/scout_compute_resolved_api/__init__.py,sha256=Q1cKCbGdqm_adVh-NitZa8FCjJRC7NDvYMXveLUs4cY,16231
38
39
  nominal_api/scout_dataexport_api/__init__.py,sha256=CF2vuo8kUXLJ4B7w95STrU0UMoBGuziacH5Eo3uxYf4,2068
39
40
  nominal_api/scout_datareview_api/__init__.py,sha256=kTDvcuav5bBm3IPhvmDrBTYyVD26iQVkyzdZnu75omE,11695
40
41
  nominal_api/scout_datasource/__init__.py,sha256=Z1Msu1Daf8GlLuM3w5imyB-6DhTNZojxI6xpH1sSvhM,141
@@ -50,7 +51,7 @@ nominal_api/scout_layout_api/__init__.py,sha256=sUWO0V8Y0I0pa-nmKAjkeoIgTpP9tSG1
50
51
  nominal_api/scout_metadata/__init__.py,sha256=m8UNk53xgDtiZCLU2ZyfDxwwFC6_XztE9INJM2R1ApA,475
51
52
  nominal_api/scout_notebook_api/__init__.py,sha256=b-4ONsrgT2NziNHq8em09YxbZcQcKLWmPYkpxBFHPFA,1820
52
53
  nominal_api/scout_plotting/__init__.py,sha256=RJK9HlPmNW_dxSz7CprwjfNKke86x11rQ7BF5pwrBv4,127
53
- nominal_api/scout_rids_api/__init__.py,sha256=inHWSfRXEH29EMMmNW7uWGAd7WGTYoeNs-oD35UA8IE,1747
54
+ nominal_api/scout_rids_api/__init__.py,sha256=g0Ki940X9P5GEU6e68mfLTBhbxb7WpRSi8GALDQ7nXg,1804
54
55
  nominal_api/scout_run_api/__init__.py,sha256=DOerd1dppDM4RLDgPrjh-3i-VAaXtp6XPEqkET0N5W0,4051
55
56
  nominal_api/scout_template_api/__init__.py,sha256=Yu7FHTypJv09dBKqnWS_dDeXdwI1hgGGZNDbMOHZKr8,1550
56
57
  nominal_api/scout_units_api/__init__.py,sha256=gf47pW6JIcP3FgL1UuHwkibj266FCRszL9q6PGx0-Rg,512
@@ -74,7 +75,7 @@ nominal_api/timeseries_logicalseries_api/__init__.py,sha256=BwdqHLq_98LOsRV14JA3
74
75
  nominal_api/timeseries_seriescache/__init__.py,sha256=hL5hN8jKLEGE_fDiZzdASmWIrRjU6tncpmDeuc_47P4,150
75
76
  nominal_api/timeseries_seriescache_api/__init__.py,sha256=USBxFmNnVFdnhTPLvWi3UgsvBZ4Iz4ycNgBTi10F-zI,1603
76
77
  nominal_api/upload_api/__init__.py,sha256=7-XXuZUqKPV4AMWvxNpZPZ5vBun4x-AomXj3Vol_BN4,123
77
- nominal_api-0.758.0.dist-info/METADATA,sha256=tPLBIwdLK3kACO5JBdOxj1uIB7qDgm8jzxBqxwOfsjI,199
78
- nominal_api-0.758.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
79
- nominal_api-0.758.0.dist-info/top_level.txt,sha256=gI1ZdNJbuHcJZeKtCzzBXsEtpU1GX6XJKs6ksi_gCRA,12
80
- nominal_api-0.758.0.dist-info/RECORD,,
78
+ nominal_api-0.760.0.dist-info/METADATA,sha256=mQt7WcDGVsuE6FDrhOkalWYOJvSy2EQ0ejsI7t81loo,199
79
+ nominal_api-0.760.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
80
+ nominal_api-0.760.0.dist-info/top_level.txt,sha256=gI1ZdNJbuHcJZeKtCzzBXsEtpU1GX6XJKs6ksi_gCRA,12
81
+ nominal_api-0.760.0.dist-info/RECORD,,