h2o-lightwave 0.24.2__py3-none-any.whl → 0.25.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.
h2o_lightwave/types.py CHANGED
@@ -3711,6 +3711,8 @@ class Table:
3711
3711
  groups: Optional[List[TableGroup]] = None,
3712
3712
  pagination: Optional[TablePagination] = None,
3713
3713
  events: Optional[List[str]] = None,
3714
+ single: Optional[bool] = None,
3715
+ value: Optional[str] = None,
3714
3716
  ):
3715
3717
  _guard_scalar('Table.name', name, (str,), True, False, False)
3716
3718
  _guard_vector('Table.columns', columns, (TableColumn,), False, False, False)
@@ -3728,6 +3730,8 @@ class Table:
3728
3730
  _guard_vector('Table.groups', groups, (TableGroup,), False, True, False)
3729
3731
  _guard_scalar('Table.pagination', pagination, (TablePagination,), False, True, False)
3730
3732
  _guard_vector('Table.events', events, (str,), False, True, False)
3733
+ _guard_scalar('Table.single', single, (bool,), False, True, False)
3734
+ _guard_scalar('Table.value', value, (str,), False, True, False)
3731
3735
  self.name = name
3732
3736
  """An identifying name for this component."""
3733
3737
  self.columns = columns
@@ -3735,9 +3739,9 @@ class Table:
3735
3739
  self.rows = rows
3736
3740
  """The rows in this table. Mutually exclusive with `groups` attr."""
3737
3741
  self.multiple = multiple
3738
- """True to allow multiple rows to be selected."""
3742
+ """True to allow multiple rows to be selected. Mutually exclusive with `single` attr."""
3739
3743
  self.groupable = groupable
3740
- """True to allow group by feature. Not applicable when `pagination` is set."""
3744
+ """True to allow group by feature."""
3741
3745
  self.downloadable = downloadable
3742
3746
  """Indicates whether the table rows can be downloaded as a CSV file. Defaults to False."""
3743
3747
  self.resettable = resettable
@@ -3759,7 +3763,11 @@ class Table:
3759
3763
  self.pagination = pagination
3760
3764
  """Display a pagination control at the bottom of the table. Set this value using `ui.table_pagination()`."""
3761
3765
  self.events = events
3762
- """The events to capture on this table. One of 'search' | 'sort' | 'filter' | 'download' | 'page_change' | 'reset'."""
3766
+ """The events to capture on this table. One of 'search' | 'sort' | 'filter' | 'download' | 'page_change' | 'reset' | 'select'."""
3767
+ self.single = single
3768
+ """True to allow only one row to be selected at time. Mutually exclusive with `multiple` attr."""
3769
+ self.value = value
3770
+ """The name of the selected row. If this parameter is set, single selection will be allowed (`single` is assumed to be `True`)."""
3763
3771
 
3764
3772
  def dump(self) -> Dict:
3765
3773
  """Returns the contents of this object as a dict."""
@@ -3779,6 +3787,8 @@ class Table:
3779
3787
  _guard_vector('Table.groups', self.groups, (TableGroup,), False, True, False)
3780
3788
  _guard_scalar('Table.pagination', self.pagination, (TablePagination,), False, True, False)
3781
3789
  _guard_vector('Table.events', self.events, (str,), False, True, False)
3790
+ _guard_scalar('Table.single', self.single, (bool,), False, True, False)
3791
+ _guard_scalar('Table.value', self.value, (str,), False, True, False)
3782
3792
  return _dump(
3783
3793
  name=self.name,
3784
3794
  columns=[__e.dump() for __e in self.columns],
@@ -3796,6 +3806,8 @@ class Table:
3796
3806
  groups=None if self.groups is None else [__e.dump() for __e in self.groups],
3797
3807
  pagination=None if self.pagination is None else self.pagination.dump(),
3798
3808
  events=self.events,
3809
+ single=self.single,
3810
+ value=self.value,
3799
3811
  )
3800
3812
 
3801
3813
  @staticmethod
@@ -3833,6 +3845,10 @@ class Table:
3833
3845
  _guard_scalar('Table.pagination', __d_pagination, (dict,), False, True, False)
3834
3846
  __d_events: Any = __d.get('events')
3835
3847
  _guard_vector('Table.events', __d_events, (str,), False, True, False)
3848
+ __d_single: Any = __d.get('single')
3849
+ _guard_scalar('Table.single', __d_single, (bool,), False, True, False)
3850
+ __d_value: Any = __d.get('value')
3851
+ _guard_scalar('Table.value', __d_value, (str,), False, True, False)
3836
3852
  name: str = __d_name
3837
3853
  columns: List[TableColumn] = [TableColumn.load(__e) for __e in __d_columns]
3838
3854
  rows: Optional[List[TableRow]] = None if __d_rows is None else [TableRow.load(__e) for __e in __d_rows]
@@ -3849,6 +3865,8 @@ class Table:
3849
3865
  groups: Optional[List[TableGroup]] = None if __d_groups is None else [TableGroup.load(__e) for __e in __d_groups]
3850
3866
  pagination: Optional[TablePagination] = None if __d_pagination is None else TablePagination.load(__d_pagination)
3851
3867
  events: Optional[List[str]] = __d_events
3868
+ single: Optional[bool] = __d_single
3869
+ value: Optional[str] = __d_value
3852
3870
  return Table(
3853
3871
  name,
3854
3872
  columns,
@@ -3866,6 +3884,8 @@ class Table:
3866
3884
  groups,
3867
3885
  pagination,
3868
3886
  events,
3887
+ single,
3888
+ value,
3869
3889
  )
3870
3890
 
3871
3891
 
@@ -5953,6 +5973,14 @@ class InlineAlign:
5953
5973
  BASELINE = 'baseline'
5954
5974
 
5955
5975
 
5976
+ _InlineDirection = ['row', 'column']
5977
+
5978
+
5979
+ class InlineDirection:
5980
+ ROW = 'row'
5981
+ COLUMN = 'column'
5982
+
5983
+
5956
5984
  class Inline:
5957
5985
  """Create an inline (horizontal) list of components.
5958
5986
  """
@@ -5962,11 +5990,15 @@ class Inline:
5962
5990
  justify: Optional[str] = None,
5963
5991
  align: Optional[str] = None,
5964
5992
  inset: Optional[bool] = None,
5993
+ height: Optional[str] = None,
5994
+ direction: Optional[str] = None,
5965
5995
  ):
5966
5996
  _guard_vector('Inline.items', items, (Component,), False, False, False)
5967
5997
  _guard_enum('Inline.justify', justify, _InlineJustify, True)
5968
5998
  _guard_enum('Inline.align', align, _InlineAlign, True)
5969
5999
  _guard_scalar('Inline.inset', inset, (bool,), False, True, False)
6000
+ _guard_scalar('Inline.height', height, (str,), False, True, False)
6001
+ _guard_enum('Inline.direction', direction, _InlineDirection, True)
5970
6002
  self.items = items
5971
6003
  """The components laid out inline."""
5972
6004
  self.justify = justify
@@ -5975,6 +6007,10 @@ class Inline:
5975
6007
  """Specifies how the individual components are aligned on the vertical axis. Defaults to 'center'. One of 'start', 'end', 'center', 'baseline'. See enum h2o_wave.ui.InlineAlign."""
5976
6008
  self.inset = inset
5977
6009
  """Whether to display the components inset from the parent form, with a contrasting background."""
6010
+ self.height = height
6011
+ """Height of the inline container. Accepts any valid CSS unit e.g. '100vh', '300px'. Use '1' to fill the remaining card space."""
6012
+ self.direction = direction
6013
+ """Container direction. Defaults to 'row'. One of 'row', 'column'. See enum h2o_wave.ui.InlineDirection."""
5978
6014
 
5979
6015
  def dump(self) -> Dict:
5980
6016
  """Returns the contents of this object as a dict."""
@@ -5982,11 +6018,15 @@ class Inline:
5982
6018
  _guard_enum('Inline.justify', self.justify, _InlineJustify, True)
5983
6019
  _guard_enum('Inline.align', self.align, _InlineAlign, True)
5984
6020
  _guard_scalar('Inline.inset', self.inset, (bool,), False, True, False)
6021
+ _guard_scalar('Inline.height', self.height, (str,), False, True, False)
6022
+ _guard_enum('Inline.direction', self.direction, _InlineDirection, True)
5985
6023
  return _dump(
5986
6024
  items=[__e.dump() for __e in self.items],
5987
6025
  justify=self.justify,
5988
6026
  align=self.align,
5989
6027
  inset=self.inset,
6028
+ height=self.height,
6029
+ direction=self.direction,
5990
6030
  )
5991
6031
 
5992
6032
  @staticmethod
@@ -6000,15 +6040,23 @@ class Inline:
6000
6040
  _guard_enum('Inline.align', __d_align, _InlineAlign, True)
6001
6041
  __d_inset: Any = __d.get('inset')
6002
6042
  _guard_scalar('Inline.inset', __d_inset, (bool,), False, True, False)
6043
+ __d_height: Any = __d.get('height')
6044
+ _guard_scalar('Inline.height', __d_height, (str,), False, True, False)
6045
+ __d_direction: Any = __d.get('direction')
6046
+ _guard_enum('Inline.direction', __d_direction, _InlineDirection, True)
6003
6047
  items: List['Component'] = [Component.load(__e) for __e in __d_items]
6004
6048
  justify: Optional[str] = __d_justify
6005
6049
  align: Optional[str] = __d_align
6006
6050
  inset: Optional[bool] = __d_inset
6051
+ height: Optional[str] = __d_height
6052
+ direction: Optional[str] = __d_direction
6007
6053
  return Inline(
6008
6054
  items,
6009
6055
  justify,
6010
6056
  align,
6011
6057
  inset,
6058
+ height,
6059
+ direction,
6012
6060
  )
6013
6061
 
6014
6062
 
@@ -6885,13 +6933,13 @@ class Menu:
6885
6933
  self.items = items
6886
6934
  """Commands to render."""
6887
6935
  self.icon = icon
6888
- """The card's icon. Mutually exclusive with the image and label."""
6936
+ """The card's icon."""
6889
6937
  self.image = image
6890
- """The card’s image, preferably user avatar. Mutually exclusive with the icon and label."""
6938
+ """The card’s image, preferably user avatar."""
6891
6939
  self.name = name
6892
6940
  """An identifying name for this component."""
6893
6941
  self.label = label
6894
- """The text displayed next to the chevron. Mutually exclusive with the icon and image."""
6942
+ """The text displayed next to the chevron."""
6895
6943
 
6896
6944
  def dump(self) -> Dict:
6897
6945
  """Returns the contents of this object as a dict."""
h2o_lightwave/ui.py CHANGED
@@ -1414,6 +1414,8 @@ def table(
1414
1414
  groups: Optional[List[TableGroup]] = None,
1415
1415
  pagination: Optional[TablePagination] = None,
1416
1416
  events: Optional[List[str]] = None,
1417
+ single: Optional[bool] = None,
1418
+ value: Optional[str] = None,
1417
1419
  ) -> Component:
1418
1420
  """Create an interactive table.
1419
1421
 
@@ -1439,8 +1441,8 @@ def table(
1439
1441
  name: An identifying name for this component.
1440
1442
  columns: The columns in this table.
1441
1443
  rows: The rows in this table. Mutually exclusive with `groups` attr.
1442
- multiple: True to allow multiple rows to be selected.
1443
- groupable: True to allow group by feature. Not applicable when `pagination` is set.
1444
+ multiple: True to allow multiple rows to be selected. Mutually exclusive with `single` attr.
1445
+ groupable: True to allow group by feature.
1444
1446
  downloadable: Indicates whether the table rows can be downloaded as a CSV file. Defaults to False.
1445
1447
  resettable: Indicates whether a Reset button should be displayed to reset search / filter / group-by values to their defaults. Defaults to False.
1446
1448
  height: The height of the table, e.g. '400px', '50%', etc.
@@ -1451,7 +1453,9 @@ def table(
1451
1453
  tooltip: An optional tooltip message displayed when a user clicks the help icon to the right of the component.
1452
1454
  groups: Creates collapsible / expandable groups of data rows. Mutually exclusive with `rows` attr.
1453
1455
  pagination: Display a pagination control at the bottom of the table. Set this value using `ui.table_pagination()`.
1454
- events: The events to capture on this table. One of 'search' | 'sort' | 'filter' | 'download' | 'page_change' | 'reset'.
1456
+ events: The events to capture on this table. One of 'search' | 'sort' | 'filter' | 'download' | 'page_change' | 'reset' | 'select'.
1457
+ single: True to allow only one row to be selected at time. Mutually exclusive with `multiple` attr.
1458
+ value: The name of the selected row. If this parameter is set, single selection will be allowed (`single` is assumed to be `True`).
1455
1459
  Returns:
1456
1460
  A `h2o_wave.types.Table` instance.
1457
1461
  """
@@ -1472,6 +1476,8 @@ def table(
1472
1476
  groups,
1473
1477
  pagination,
1474
1478
  events,
1479
+ single,
1480
+ value,
1475
1481
  ))
1476
1482
 
1477
1483
 
@@ -2202,6 +2208,8 @@ def inline(
2202
2208
  justify: Optional[str] = None,
2203
2209
  align: Optional[str] = None,
2204
2210
  inset: Optional[bool] = None,
2211
+ height: Optional[str] = None,
2212
+ direction: Optional[str] = None,
2205
2213
  ) -> Component:
2206
2214
  """Create an inline (horizontal) list of components.
2207
2215
 
@@ -2210,6 +2218,8 @@ def inline(
2210
2218
  justify: Specifies how to lay out the individual components. Defaults to 'start'. One of 'start', 'end', 'center', 'between', 'around'. See enum h2o_wave.ui.InlineJustify.
2211
2219
  align: Specifies how the individual components are aligned on the vertical axis. Defaults to 'center'. One of 'start', 'end', 'center', 'baseline'. See enum h2o_wave.ui.InlineAlign.
2212
2220
  inset: Whether to display the components inset from the parent form, with a contrasting background.
2221
+ height: Height of the inline container. Accepts any valid CSS unit e.g. '100vh', '300px'. Use '1' to fill the remaining card space.
2222
+ direction: Container direction. Defaults to 'row'. One of 'row', 'column'. See enum h2o_wave.ui.InlineDirection.
2213
2223
  Returns:
2214
2224
  A `h2o_wave.types.Inline` instance.
2215
2225
  """
@@ -2218,6 +2228,8 @@ def inline(
2218
2228
  justify,
2219
2229
  align,
2220
2230
  inset,
2231
+ height,
2232
+ direction,
2221
2233
  ))
2222
2234
 
2223
2235
 
@@ -2560,10 +2572,10 @@ def menu(
2560
2572
 
2561
2573
  Args:
2562
2574
  items: Commands to render.
2563
- icon: The card's icon. Mutually exclusive with the image and label.
2564
- image: The card’s image, preferably user avatar. Mutually exclusive with the icon and label.
2575
+ icon: The card's icon.
2576
+ image: The card’s image, preferably user avatar.
2565
2577
  name: An identifying name for this component.
2566
- label: The text displayed next to the chevron. Mutually exclusive with the icon and image.
2578
+ label: The text displayed next to the chevron.
2567
2579
  Returns:
2568
2580
  A `h2o_wave.types.Menu` instance.
2569
2581
  """
h2o_lightwave/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = '0.24.0'
1
+ __version__ = '0.25.0'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: h2o-lightwave
3
- Version: 0.24.2
3
+ Version: 0.25.0
4
4
  Summary: H2O Wave Python driver for integration with arbitrary python web frameworks.
5
5
  Home-page: https://h2o.ai/products/h2o-wave
6
6
  Author: Martin Turoci
@@ -26,7 +26,7 @@ Classifier: Topic :: System :: Distributed Computing
26
26
  Requires-Python: >=3.7.1
27
27
  Description-Content-Type: text/markdown
28
28
  Provides-Extra: web
29
- Requires-Dist: h2o-lightwave-web (==0.24.2) ; extra == 'web'
29
+ Requires-Dist: h2o-lightwave-web (==0.25.0) ; extra == 'web'
30
30
 
31
31
  # H2O Lightwave
32
32
 
@@ -3,12 +3,12 @@ h2o_lightwave/core.py,sha256=CzBHE8dBQEXgsgc1W4dcMpNaJ_yUBFEQf4NzPPtrAIE,13407
3
3
  h2o_lightwave/graphics.py,sha256=HLYrX-lwsMKbyLmy2ClG5L46DA2_hSCEPTsv0gPVoyg,25866
4
4
  h2o_lightwave/routing.py,sha256=hfxb33dpK5MvIEvxdPyodjTkMLH-anP9FG3Xl1_h4n4,7895
5
5
  h2o_lightwave/server.py,sha256=2Pwq5sZbODSbLyLFA-Q1SmYc7Xo-i2zUCFrS3ywFp34,3850
6
- h2o_lightwave/types.py,sha256=qaeYb5hmG-ylrAg2wu0kcxrowtokPH6Ng7MN-i3FfjY,626816
7
- h2o_lightwave/ui.py,sha256=CmRdHF-0rmWaqr0Iov-rC2liGQvd4r2DoOqO5FN0hqQ,163618
6
+ h2o_lightwave/types.py,sha256=ZaYdqL60TA1UXnEVBGKUefVPjS2sKiiHXL9Ch9n06mE,629082
7
+ h2o_lightwave/ui.py,sha256=sf7VQAt7G7qqLeDa9MqyVv_PLrhy341b72Sag0TdoCg,164224
8
8
  h2o_lightwave/ui_ext.py,sha256=zx_2Ec2-p_ztm8brfVaVF0fTQWVDrb_YxcGfVb-wA10,2325
9
- h2o_lightwave/version.py,sha256=lbgaUA9yL_X3wnFgvRc5nIlmJ4gFm6Ala6TbPHN-5aY,23
10
- h2o_lightwave-0.24.2.dist-info/LICENSE,sha256=hpuFayniDwysSKD0tHGELH2KJDVyhUrKS29torRIpqY,53
11
- h2o_lightwave-0.24.2.dist-info/METADATA,sha256=sHxy5Tl5WfklqswHgGLV2f0bmAThMdBujgCCN5Haqkc,6000
12
- h2o_lightwave-0.24.2.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
13
- h2o_lightwave-0.24.2.dist-info/top_level.txt,sha256=1ZH7jcWsnca5BnX2d9scu4t0ohD50aeA2ceYXY8M2c8,14
14
- h2o_lightwave-0.24.2.dist-info/RECORD,,
9
+ h2o_lightwave/version.py,sha256=ZXwoHOJ1nuRTdGrZbLNxvqbzWWkFvDkI3L0gzEDgw-w,23
10
+ h2o_lightwave-0.25.0.dist-info/LICENSE,sha256=hpuFayniDwysSKD0tHGELH2KJDVyhUrKS29torRIpqY,53
11
+ h2o_lightwave-0.25.0.dist-info/METADATA,sha256=7ex_Tz3lc1K0Rlx8Y-cCOpEFBPGp-4I6PNFTNYuGETE,6000
12
+ h2o_lightwave-0.25.0.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
13
+ h2o_lightwave-0.25.0.dist-info/top_level.txt,sha256=1ZH7jcWsnca5BnX2d9scu4t0ohD50aeA2ceYXY8M2c8,14
14
+ h2o_lightwave-0.25.0.dist-info/RECORD,,