Proto commits in google/mesop

These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)

Commit:b082ab4
Author:Richard To
Committer:GitHub

Add coordinate values for click events + add right click event + add context menu example (#1273)

The documentation is generated from this commit.

Commit:be13918
Author:Richard To
Committer:GitHub

Allow multiple uploads with uploader component. (#1261)

Commit:7771d33
Author:Will Chen
Committer:GitHub

Unship devtools/editor-related code (#1135)

Commit:04995df
Author:Will Chen
Committer:GitHub

Runs onload handler for browser navigations (backwards and forwards) (#1101)

Commit:8efc807
Author:Will Chen
Committer:GitHub

Send experiment settings on initial page load (#1093)

Commit:96a47bb
Author:Richard To
Committer:GitHub

Add expansion panel component. (#1089) * Add expansion panel component. Also adds support for the accordion component which uses multiple grouped expansion panels. The accordion behavior needs to be manually implemented through event handlers on the expansion panels. Closes #1081

Commit:7a54883
Author:Richard To
Committer:GitHub

Add Angular Material Card component (#1082) * Add Angular Material Card component This component consists of the following components: - card - card_header - card_content - card_actions I did not include card_footer since I couldn't tell what benefit it added, but we can added later if needed. I did not include an card_image component since it was easy enough to use image with width 100%. Closes #1080

Commit:e9cc63e
Author:Richard To
Committer:GitHub

Add content_button equivalent to uploader (#1074) * Add content_button equivalent to uploader This change adds content_uploader which works similar to content_button. This change allows a little bit more freedom to style the uploader, especially for using icons which is a common use case. Closes #1068

Commit:4a48fec
Author:Will Chen
Committer:GitHub

Add basic websockets support (#1027)

Commit:9bbb62e
Author:Richard To
Committer:GitHub

Fix sidenav "escape" key bug (#1024) * Fix sidenav "escape" key bug Changes: - Add on opened change event handler (so user can update state) when escape pressed - Add disable_close property to prevent escape from being used - Drive bys: - Add position property so sidenav can be rendered on the right side - Minor style adjustments to sidenav demo Closes #1019

Commit:4fe6bfa
Author:Richard To
Committer:GitHub

Button toggle (#1014) Closes #343

Commit:4c32c42
Author:Richard To
Committer:GitHub

Fix bug where multiple select values could not be initialized. (#1013) * Fix bug where multiple select values could not be initialized. Drive by adjustments: - Add appearance property to select - Update autocomplete/input/textarea/select to use outline appearance. Closes #681

Commit:c490a2e
Author:Richard To
Committer:GitHub

Add set page title command (#1004)

Commit:f60e66e
Author:Richard To
Committer:GitHub

Add CSS class support for box component (#995)

Commit:429fa93
Author:Richard To
Committer:GitHub

Add date picker and date range picker components. (#982)

Commit:a39bc6d
Author:Will Chen
Committer:GitHub

Support `MESOP_CONCURRENT_UPDATES_ENABLED` env var (#868)

Commit:8cbdb49
Author:Richard To
Committer:GitHub

Update me.markdown to render on frontend + copy code (#930) * Update me.markdown to render on frontend + copy code - Updates me.markdown to markedjs and highlightjs for markdown and code highlighting. - Adds copy code button - Also update markdown rendering to be a bit closer to me.text rendering - Although I didn't want to match the headline types since the defaults are very large - Update markdown rendering to work better with dark themes (mainly links) - I do have some concerns about downstream compatibility, but will try to make adjustments as needed. - I also considered adding a copy all markdown output button, but that seems like it could be better decoupled from the actual markdown place to give users freedom to place it where they want. The question is mainly how to do it since using the command approach does not work with Safari. Right now we can use a web component to do this, but maybe nice to be able to provide native support since this is a fairly common ask. Closes #275 Ref #926 Ref #591 Ref #224

Commit:a0585a3
Author:Richard To
Committer:GitHub

Add hotkey shortcuts for text areas (#922) Also updates fancy_chat and textarea demos to show usage of shortcuts

Commit:d22087d
Author:Richard To
Committer:GitHub

Add is_target to Click event (#913) * Add is_target to Click event Usage of is_target mainly works for me.box. For me.button / me.content_button it will almost always be false since the buttons are composed of other sub elements. There may be cases where it is true. Updated dialog usages to utilize `is_target`. Closes #268

Commit:4bb6260
Author:Will Chen
Committer:GitHub

Plumb experimental editor toolbar env var to client-side (#879)

Commit:ef9d8ba
Author:Will Chen
Committer:GitHub

Add more style properties (#831)

Commit:3ffd914
Author:Will Chen
Committer:GitHub

Support query params (#676)

Commit:9948a4d
Author:Richard To
Committer:GitHub

Add pointer-events and place-items to styles. (#736) - Updates snackbar example to use pointer events property - Updates dialog to use place-items - Closes #629 - Closes #731

Commit:b09a0a1
Author:Will Chen
Committer:GitHub

Load JS modules for web components as-needed [BREAKING CHANGE] (#723)

Commit:9c6aea4
Author:Richard To
Committer:GitHub

Add focus command. (#718)

Commit:8d0108f
Author:Will Chen
Committer:GitHub

Make Material density configurable (#716)

Commit:8a9b0bc
Author:Richard To
Committer:GitHub

Add basic autocomplete component. (#677) This adds support for the autocomplete Angular Component. Supported features: - Option groups It has some limitations: - Does not allow the custom display selections (only text is allow) - Key and values are text only - Filtering is done on client side but limited for now to "case insensitive contains" - Filtering can also be done on the server side by manually filtering the input on input (but we do not explicitly call this out for now) - Had to remove require selection since it does not work well with filtering. There are workarounds online but seemed better to keep it simple for now unless people really want require selection.

Commit:4ecb26d
Author:Will Chen
Committer:GitHub

Support dark theming (#663)

Commit:c3e52bd
Author:Will Chen
Committer:GitHub

Add link component (#640)

Commit:1d629c7
Author:Will Chen
Committer:GitHub

Add {min, max}-{height, width} to Style (#632)

Commit:9340aca
Author:Richard To
Committer:GitHub

Add button attributes to uploader (#570) To make the experience more consistent, this change copies the same parameters from button to uploader. This will allow users to customize the button colors / type / style and disable it.

Commit:412cd8e
Author:Will Chen
Committer:GitHub

Add sandboxed mode to HTML component (#544)

Commit:beac6a8
Author:Richard To
Committer:GitHub

State sessions (#496) - Add the ability to store state sessions on the server in memory - This will can be configured through environment variables - MESOP_STATE_SESSION_BACKEND - A state token is generated in each response to be passed in on the subsequent request - If key is not found, then retry with by sending the full state in the request - Add hook for clearing stale sessions

Commit:c7f0e9f
Author:Will Chen
Committer:GitHub

Add `on_blur` for input / textarea components (#517)

Commit:0ff0ccb
Author:Richard To
Committer:GitHub

Allow multiple selections on select box (#481) * Allow multiple selections on select box * Fix typing

Commit:da98c93
Author:Will Chen
Committer:GitHub

Unship editing functionality from dev tools (#457) - Removes version pinning on Pydantic v1

Commit:9efab77
Author:Will Chen
Committer:GitHub

Support web components (MVP for labs) (#416)

Commit:f5f0cf3
Author:Will Chen
Committer:GitHub

Remove generator code + angular_components git submodule (#425)

Commit:7400eb7
Author:Zaid Bin Shahab
Committer:GitHub

Implement autoplay option for audio component (#398)

Commit:75ccefa
Author:Will Chen
Committer:GitHub

Add HTML component (#237)

Commit:50cd862
Author:Will Chen
Committer:GitHub

Set viewport size for all user events (#399)

Commit:6d63ba0
Author:Richard To
Committer:GitHub

Improve state performance by diffing state (#389) * Improve state performance - Uses DeepDiff to diff state objects - Updates code to return state as final data stream response

Commit:273591e
Author:Will Chen
Committer:GitHub

Support viewport size (#379)

Commit:a10f247
Author:Will Chen
Committer:GitHub

Add scroll_into_view command (#315)

Commit:60c788a
Author:orangerd
Committer:GitHub

Add an on_enter handler for input type components (#296) Allow an on_enter handler for input types so that input boxes can be 'submitted' using the keyboard.

Commit:7718dff
Author:Richard To
Committer:GitHub

Add some new style properties (#306) Properties added: - rotate - transform - justify_self - align_self One thing to note here is that I noticed justify_self/justify_items and align_self/align_items do not have the exact same property values. Also there were some property values missing from the ItemAlignmentValues Literal definition. I ended up adding the missing values and creating a separate Literal definition for justify_self/justify_items. I believe this should be ok since it's just a Literal definition, so API should be the same still. Also added some animation examples using rotate and transform.

Commit:7302e44
Author:Richard To
Committer:GitHub

Allow user to set value for slider. (#307) This change allows the value to be set for the slider. The implemented behavior here is similar to the input/textarea value field. The value will update the value of the slider only if the value being passed in changes. This is for the following use cases: 1. Setting an initial value 2. Updating the value programmatically. For example if you wanted a textbox to control the slider value 3. Only updating the value if it changes, allows the slider to move smoothly (same issue as the text inputs)

Commit:536351c
Author:Richard To
Committer:GitHub

Add some new style properties to the Style class (#300) New properties - visibility - opacity - top / left / right / bottom - Add remaining grid properties: - grid_auto_columns - grid_auto_flow - grid_auto_rows - grid_column - grid_row - Exception: left out grid_template property Also update animations using opacity and position properties Also some minor style property fixes - Allow string values for: - grid_column_start - grid_column_end - grid_row_start - grid_row_end - Fix potential bug with direct str conversions - If the value is not set, setting str(property) would yield 'None' - That seems undesirable, so add _int_str and _float_str wrappers

Commit:95f0b1e
Author:Will Chen
Committer:GitHub

Supports syntax highlighting in markdown files by using python-markdown and pygments (#203)

Commit:c6be6b5
Author:Richard To
Committer:GitHub

Add sticky headers and columns for Table component (#194)

Commit:a77be98
Author:Richard To
Committer:GitHub

Add component diffing on event responses. (#167) This change is gated by a flag called `enable_component_tree_diffs`. When enabled, the full component tree will not be returned in event responses. Instead only the changed compnent fields will be returned to the frontend. The frontend will then apply the diff to update its copy of the component tree.

Commit:80fe546
Author:Richard To
Committer:GitHub

Change table component protos to use int32 instead of int64 (#174)

Commit:b161b5a
Author:Richard To
Committer:GitHub

Add Uploader Component (#124) This component will render a basic file input. On upload the component will send the data to the Mesop server where the user can then validate the data and use it for their application. Use cases include multi-modal use cases where you want to upload an image, audio, or video to an multimodal model. The uploader does not support the following features: - Drag and drop - Image/audio/video preview - Multi file upload - Does not try to limit file size on the frontend - Image will be uploaded immediately on upload (i.e. no click event to trigger the upload) - Also no styling exposed yet.

Commit:5fb5d19
Author:Will Chen
Committer:GitHub

Add embed (iframe) component (closes #140) (#143)

Commit:c453656
Author:Will Chen
Committer:GitHub

Add aspect_ratio and overflow_wrap to Style (#136)

Commit:a186e02
Author:Richard To
Committer:GitHub

Add on table cell click event (#125) The table cell click event return the column name and row Index which will allow us to refer back to the same row or column in the Pandas data frame.

Commit:b59f6b9
Author:Richard To
Committer:GitHub

Add basic table with Pandas support. (#103) This change adds a barebones Angular table that can take a Pandas DataFrame as input.

Commit:2af4d05
Author:Richard To
Committer:GitHub

Allow columns CSS property to accept int/str vals. (#86) The columns property allows int/strs according to https://developer.mozilla.org/en-US/docs/Web/CSS/columns We want to keep the int value for backwards compatibility. Fixes #79

Commit:c3b977b
Author:Richard To
Committer:GitHub

Allow `flex-shrink` to be set to 0. (#78) The `flex-shrink` css property could not be set to 0 since Mesop will ignore styles that are "empty". Normally this is fine, but `flex-shrink` defaults to 1, which means the "empty" state will make `flex-shrink` equal to 1. This means that 0 cannot be set for `flex-shrink`. To resolve this, we can change the data type to a string in the UI proto. Example: ``` import mesop as me @me.page(path="/flex_shrink") def main(): with me.box(style=me.Style(display="flex", flex_shrink="0")): me.text("Testing flex shrink") ```

Commit:cf7eae7
Author:Will Chen

Update native_input -> native_textarea because it's more flexible

Commit:7669746
Author:Will Chen

Add box-sizing and z-index to Style

Commit:f90d2b7
Author:Will Chen
Committer:Will Chen

Add cursor as Style property

Commit:08652de
Author:Will Chen
Committer:Will Chen

Create sidenav component

Commit:c3fb785
Author:Will Chen

Add font family as a style property

Commit:ee5b22c
Author:Will Chen

Define native_input for advanced use cases

Commit:727e573
Author:Will Chen

Add outline as style property

Commit:05898cd
Author:Will Chen

Add grid properties to style

Commit:f297409
Author:Will Chen
Committer:Will Chen

Add line height as a style prop

Commit:25144c0
Author:Will Chen

Allow configuring page title (browser)

Commit:5e66579
Author:Will Chen

Define gap in style

Commit:4717f8b
Author:Will Chen

Textarea: fix bug where rows not set; add autosize and min/max rows to API

Commit:648cd2a
Author:Will Chen

Update style API: support box shadow and more justify_content variants

Commit:a6c0a37
Author:Will Chen

Add border radius to style

Commit:8c14d7d
Author:Will Chen

Add new fields to Style proto (and re-number fields)

Commit:7f06a5a
Author:Will Chen

Alphabetize Style proto fields

Commit:a9cea1b
Author:Will Chen

Create video component

Commit:3e404cd
Author:Will Chen
Committer:Will Chen

Create audio component

Commit:218277b
Author:Will Chen

Create image component

Commit:7d2b11c
Author:Will Chen
Committer:Will Chen

Split textarea and component for: 1) cleaner API and 2) editor support

Commit:a9be6f1
Author:Will Chen
Committer:Will Chen

Clean up tooltip API

Commit:ca3e132
Author:Will Chen
Committer:Will Chen

Clean up Select API

Commit:9871fa3
Author:Will Chen

Clean up radio API

Commit:1f9d8e5
Author:Will Chen

Clean up input API

Commit:d0cc699
Author:Will Chen

Clean up icon API & make proto consistent (for editor support)

Commit:ed0ff44
Author:Will Chen
Committer:Will Chen

Clean up divider API (vertical doesn't seem to do anything) & update examples/index.py

Commit:a457223
Author:Will Chen
Committer:Will Chen

Clean checkbox API

Commit:151772a
Author:Will Chen

Add type property to button proto for editor

Commit:734b802
Author:Will Chen
Committer:Will Chen

Plumb args for custom components to FE (logger/editor)

Commit:e4950a9
Author:Will Chen

Refactor component name to make it easier to support user-defined-components for editor codemod

Commit:ef359fb
Author:Will Chen

Create UserDefinedComponent as an actual entity to support tooling (e.g. editor/devtools)

Commit:b5ee238
Author:Will Chen

Set whether component accepts child in component config

Commit:eb25111
Author:Will Chen

Editor codemod: support new component as child

Commit:6b5b08b
Author:Will Chen
Committer:Will Chen

Support delete component in editor codemod

Commit:772bb1a
Author:Will Chen
Committer:Will Chen

Support columns in style

Commit:7e9e133
Author:Will Chen

Support new component editor codemod

Commit:e32f7eb
Author:Will Chen
Committer:Will Chen

Change text API to use string literal for type (more consistent and supported in editor)

Commit:70ac6d2
Author:Will Chen

Editor codemod: support list append element

Commit:2b03ce2
Author:Will Chen

Editor codemod supports updating list element

Commit:a314c63
Author:Will Chen

Make proto field name consistent with Python API otherwise editor-fields doesn't work properly

Commit:1f00043
Author:Will Chen

Support deleting code in editor update callsite