* Initial scaffolding for comments CRUD APIs
* add actions
* add assets
* state management for existing comments and creating new
* add ui components
* add overlay comments wrapper to baseWidget
* add toggle comment mode button at editor header
* trigger tests
* Disallow commenting as someone else
* Add applicationId for comments
* lint
* Add overlay blacklist to prevent component interaction while adding comments
* Comment thread style updates
* Placeholder comment context menu
* Controlled comment thread visibility for making new comments visible by default
* Update comment type description
* Reset input on save
* Resolve comment thread button ui
* fix close on esc key, dont create new comment on outside click
* Submit on enter
* add emoji picker
* Attempt at adding a websocket server in Java
* CRUD APIs for comment threads
* Add API for getting all threads in application
* Move types to a separate file
* Initial commit for real time server (RTS)
* Add script to start RTS
* Fix position property
* Use create comment thread API
* Use add comment to thread API
* Add custom cursor
* Dispatch logout init on 401 errors
* Allow CORS for real time connection
* Add more logs to RTS
* Fix construction of MongoClient
* WIP: Real time comments
* Enable comments
* Minor updates
* Read backend API base URL from environment
* Escape to reset comments mode
* Set popover position as auto and boundary as scroll parent
* Disable warning
* Added permissions for comment threads
* Add resolved API for comment threads
* Migration to set commenting permission on existing apps
* Fix updates bringing the RTS down
* Show view latest button, scroll to bottom on creating a new comment
* Cleanup comment reducer
* Move to typescript for RTS
* Add missing server.ts and tsconfig files
* Resolve / unresolve comment
* Scaffold app comments
* Minor fixes: comment on top of all widgets, add toggle button at viewer header
* Reconnect socket on creating a new app, set connected status in store
* Retry socket connection flow
* Integration tests for comments with api mocks using msw
* Fix circular depependency
* rm file
* Minor cleanup and comments
* Minor refactors: move isScrolledToBottom to common hooks, decouple prevent interactions overlay from comments wrapper
* Use policies when pushing updates in RTS
* ENV var to set if comments are enabled
* Fix: check if editor/viewer is initialised before waiting for init action
* Add tests for comments reducer
* Revert "ENV var to set if comments are enabled"
This reverts commit 988efeaa69d378d943a387e1e73510334958adc5.
* Enable comments for users with appsmith email
* lint
* fix
* Try running a socket.io server inside backend
* Update comment reducer tests
* Init mentions within comments
* Fix comment thread updates with email rooms
* Minor fixes
* Refactors / review suggestions
* lint
* increase cache limit for builds
* Comment out tests for feature that's under development
* Add Dockerfile for RTS
* Fix policies missing for first comment in threads
* Use draftJS for comments input with mentions support
* fix fixtures
* Use thread's policies when querying for threads
* Update socket.io to v4
* Add support for richer body with mentions
* Update comment body type to RawDraftContentState
* fix stale method
* Fix mentions search
* Minor cleanups
* Comment context menu and thread UI updates
* revert: Scaffold app comments
* Yarn dependencies
* Delete comment using id api added
* Init app comments
* Add test for creating thread
* Api for delete comment with id
* Test comment creation response and policies
* Copy comment links
* Fix reset editor state
* Delete valid comment testcase added
* Delete comment TC : code refactor
* Don't allow creating comments with an empty body
* Pin comments WIP[]
* Ignore dependency-reduced-pom.xml files from VCS
* Cleanup of some dev-only files, for review
* Delete comment
* Update socket.io to v4 in RTS
* Pin and resolve comment thread object added in commentThread
* Pin and resolve comment thread object added in commentThread
* Update comment thread API
* Added creationTime and updationTime in comment thread response
* Added creationTime and updationTime in comment thread response
* Added human readable id to comment threads, fallback to username for null name in user document
* Refactor
* lint
* fix test, rm duplicate selector
* comment out saga used for dev
* CommentThread viewed status, username fallback for getName=null, username field added in pin & resolve status
* lint
* trigger tests
Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
* Updated test
* updated assertions
* Resizing image to take full width of table cell
* updated assertion
* Stop updating dynamicBindingPathList directly from widget
* Fix selectedRow and selectedRows computations
* Fix primaryColumns computations
* Updated test for derived column
* Added tests for computed value
* Added check clear data
* Reordering of test
* updated common method
* Made image size as 100% of table cell size
* add templating logic
* Updated flow and dsl
* Clear old primary columns
* Updated testname
* updated assertion
* use evaluated values for children
* Fix primary columns update on component mount and component update
* add isArray check
* remove property pane enhancement reducer
* add property pane enhancement reducer
* disable items other than template + fix running property enchancment on drop of list widget
* disbled drag, resize, settingsControl, drag for items other than template
* add grid options
* uncomment the widget operation for add child for grid children
* handle delete scenario for child widget in list widget
* WIP: Use the new delete and update property features
* add listdsl.json for testcases
* add test cases for correct no. of items being rendered
* add test cases currentItem binding in list widget
* change dragEnabled to dragDisabled
* change resizeEnabled to resizeDisabled
* change settingsControlEnabled to settingsControlDisabled
* change dropEnabled to dropDisabled
* update settingsControlDisabled default value
* Use deleteProperties in propertyControls
* Fix unsetting of array indices when deleting widget properties
* remove old TableWidget.tsx file
* Fix derived column property update on primary column property update
* Handle undefined primary columns
* Fix filepicker immutable prop issue
* Fix object.freeze issue when adding ids to the property pane configuration
* fix widget issue in grid
* Fix column actions dynamicBindingPathList inclusion issue
* remove consoles + fix typo around batch update
* Remove redundant tests
* js binding test for date picker
* hydate enhancement map on copy list widget
* check for dynamicleaf
* fixes
* improve check
* fix getNextWidgetName
* update template in list widget when copying
* updating template copy logic when copying widget
* update dynamicBindingPathList in copied widget
* Add path parameter to hidden functions in property pane configs
* fix copy bug when copying list widget
* add computed list property control
* Remove time column type
Fix editor prompt for currentRow
Fix undefined derivedColumns scenario
Remove validations for primaryColums and derivedColumns
Fix section toggle for video, image and button column types
* Fix table widget actions and custom column migrations
* Add logs for cyclical dependency map ♻️
* Process array differences
* add property control for list widget
* Fix onClick migrations
* Property pane config parity
* binding and trigger paths from the property pane config (#2920)
* try react virtualized library
* Fix unit test
* Fix unit test ✅
* Fix minor issues in table widget
* Add default meta props to binding paths to ensure eval and validation
* Dummy commit 🎉
* Remove unnecessary datepicker test
Fix chart data as string issue
* Achieve table column sorting and resizing parity with release
* handle scenario where last column isn't available to access
* Fix for panel config path not existing in the widget
* Fix bindings in currentRow (default)
Add dummy property pane config for canvas widget
* Update canvas widgets with dynamicPathLists on delete of property paths
* Add all diffs to change paths and trim later
* Add back default properties 🚶🏻♂️
* Use object based paths instead of arrays for primaryColumns and derivedColumns
* Fix issue in reordered columns
* Fix inccorect update order
* add virtualized list
* Fix failing property pane tests
* minor change
* minor list widget change
* Remove .vscode from git
* Rename ads to alloy
Fix isVisible in list widget
* move grid component to widget folder
* fix import in widget registry
* add sticky row in virtualized list
* add sticky container
* Fix Height of grid widget items container
* fix dragging of items in children other than template children
* update list widget
* update list widget
* Fix padding in list widget
* hide scrollbar in list widget list
* fix copy bug in list widget
* regenrate enhancement map on undo delete widget
* Use enhancementmap for autocomplete in list widget
Basic styles for list widget scrollbar
* add custom control in widget config
* minor commit
* update scrollbar styles
* remove unused variable
* fix typo in custom control
* comment out test cases
* remove unused imports
* remove unused imports
* add JSON stringify in interweave
* add noPad styling in dragLayer for noPad prop
* implement grid gap
* add list item background color prop
* add white color in color picker control
* fix gap in last list item
* remove onBeforeParse in textcomponent
* remove virtualization in grid widget
* allow overflow-y
* add onListItemClick action
* add beta label
* add pagination
* fix actions in pagination in list widget
* add list widget icon
* add list background color default value
* remove extra div
* fix pagination issue
* fix list widget crashing on perpage change
* extract child operation function to widgetblueprint saga
* refactor enhancements
* add enhancement hook
* refactor propertyUpdate hook enhancment
* remove enhacement map
* revert renaming ads to alloy
* add autopagination
* Cleanup unused vars
Re-write loop using map
Fix binding with external input widget
* update default background color
* remove unnessary scrol + fix pagination per page
* remove console.log
* use grid gap in pixel instead of snap
* fix list widget tests for binding
* add tests for on click action and pagination
* remove unnecessary imports
* remove overflow hidden in list component
* Add feature to enable template actions
* update property pane help text for list widget
* disable pagination in editor view
* update property pane options
* add test case for action
* uncomment tests
* fix grid gap validation
* update test cases
* fix property pane opening issue for list tempalte
* Disable form widgets in list widget
* fix template issue for actions
* add validation tests for list data
* update starting template
* add selectedRow + enable pagination in edit mode
* remove extra padding in list widget + popper fix on settingDisabled
* add stop propagation for button click
* fix click event in edit mode
* disallow filepicker widget for list widget
* add test for list widget entity definition for selectItem
* remove unused imports
* fix test
* remove evaluated value for list child widgets
* add comment
* remove log
* fix copying bug in list widget
* add check for not allowing template to copy
* fix test
* add test for property pane actions
* remove unused import
* add draglayercomponent test
* add test for draggable component
* add test for evaluatedvalue popup
* add test for messages.ts
* add test for widgeticons
* add test for property pane selector
* add test for widget config response
* start testing widget configresponse
* add test for enhancements in widget config
* add test for codeeditor
* add test for base widget + list widget
* add test for executeWidgetBlueprintChildOperations
* remove unused import
* add test for widget operation utils
* remove unused import
* add test for handleSpecificCasesWhilePasting
* remove unused function
* remove unused import
* add empty list styling
* resolve all review comments
* fix message test
* add test for widget operation utils
* fix merge conflicts
* move validations in property config
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
Co-authored-by: nandan.anantharamu <nandan.anantharamu@thoughtspot.com>
Co-authored-by: vicky-primathon.in <vicky.bansal@primathon.in>
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
Co-authored-by: Piyush <piyush@codeitout.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
Co-authored-by: Hetu Nandu <hetunandu@gmail.com>
Co-authored-by: root <root@DESKTOP-9GENCK0.localdomain>
* Property pane enhancements
- Property pane sections are collapsible
- Property pane controls can be hidden conditionally
- Property pane configurations now come from the widget instead of a global config file
- Property pane property updates can be hooked with other related updates
- Property pane control and section ids are generated dynamically now.
* Add chart type: "Custom FusionChart" (#2996)
Co-authored-by: Zeger Hoogeboom <zegerhoogeboom@users.noreply.github.com>
Co-authored-by: zeger <zeger@equinoxai.com>
* update green shade and set border-radius 0 for table buttons
* updated color code for assertion
Co-authored-by: Pawan Kumar <pawankumar@Pawans-MacBook-Pro.local>
Co-authored-by: nandan.anantharamu <nandan.anantharamu@thoughtspot.com>
- Each column has more options and can be configured in the property pane instead of the table
- Table level styles can now be set in the property pane
- Property sections are collapsible
Co-authored-by: vicky-primathon.in <vicky.bansal@primathon.in>
Co-authored-by: nandan.anantharamu <nandan.anantharamu@thoughtspot.com>
Co-authored-by: Abhinav Jha <abhinav@appsmith.com>
Co-authored-by: hetunandu <hetu@appsmith.com>
This reverts commit e84699e7ba.
Reverting this commit because this flow requires more changes before it's ready for prime-time.
Will continue development on this feature in a different branch
* light and dark mode added in Invite modal
* warnings removed
* create org and invite user test cases fixed
* Application invite design implemented
* manage user icon added
* button width fixed
* PR feedback implemented
* test cases fixed
* used blueprint classes
* used calc for width distribution
* copy button width fixed
* prop passing fixed
* copy button size reduced
* readonly input field background color fixed
* input background theme name ordering changed
* TagInputComponent moved to ads
* created DropdownWrapper for select field in orgInviteForm
* Warnings created due to unique key and depdencies is fixed
* Warning fixed in dropdown component
* correct prop name used
Co-authored-by: Rohit Kumawat <rohit.kumawat@primathon.in>
* Working version of video player.
* Adding default video url
* Reducing the default widget of video widget
* Fixed tests
* Adding video icon.
* Removing commented code.
* Adding playState, onPause, onStart, onEnd.
* Adding onPlay event.
* Fixing onPlay
* Adding isVisible field.
* Changing video icon.
* Fixing Popover table video.
* Adding an error message for no url.
* Updating homepage body color
* WIP: Fixing scrolls and adding anchors
* Removing divider from bottom of the page.
* Adding hover background color to app card
* Changing edit and launch icons.
* Fixing app name paddding in card.
* Fixing workspaces overflow
* Adding right padding to applications view
* Adding share icon to share btn
* Fixing Application card styles.
* Fixing text decoration in button.
* Adding new workspace button
* Fixing new workspace and new app styles.
* Adding icon sizes.
* Fixing Org Name and Org settings menu.
* Application menu working
* Fixing overlay visibility on app card
* Fixing settings page content width.
* Fixing workspace icon
* Changing app card colors.
* Removing debugger
* Adding app icon.
* Fixing the spaces in application card
* Adding storybook-static folder to gitignore.
* Adding other storybook files.
* Adding menu items for app
* Removing cypress selector from text.
* Menu width issue fixed
* Default app icon color added
* Removing hardcoded colors
* Removing hardcoded colors.
* Light Mode on!
* Showing correct icon and color in menu
* Update color working properly.
* Updating appIcon
* Editable text working.
* Adding validator
* Adding edit permissions to menu
* Removing box shadow on app card.
* Fixing context menu fill color
* Fixing Menu hover issues.
* Fixing menu open close hover issues.
* Fixing settings pages
* Changed Workspace to org.
* Fix: State management in EditableText Component (#540)
* Error state height is fixed as per design
* savingState prop condition fixed
* Fixing createnew.
* Fixing saving state for application card.
* Fixed application card editable text error.
* Fixing issue caused during merge.
* Fixing tests in create org.
* Removing commented code.
* Removing unwanted vars.
* Fixing delete duplicate tests.
* Latest color palette.
* Fixing form and table widget.
* Removing switcher from header
* Removing unused files
* Fixing app card context dropdown
* Show overlay fix
* Adding localStorage support to theme.
* Making dark mode the default.
Co-authored-by: Rohit Kumawat <rohit.kumawat@primathon.in>
* Members and org settings page.
* Adding link back to applications
* Making UI look better.
* Fixing some more css
* Table dropdown onBlur, UI transparency, Popover issue fixed. Added sort arrow (#413)
* table dropdown ui issue and onblur click fixed
* position props value fixed
* tabs tripple click fixed
* Position props in table dropdown made optional
* tabs background color bug removed
* General settings page is bug free.
* Getting the manage users page to work.
* Moving general settings into its own file.
* Removing some unwanted URLs
* User cant change their role or remove themselves
* Changing onClick prop for Icon.
* Fixing tests
* Added loading states to text inputs.
* Added validators for text input
* Fixed border of skeleton for text input
* Adding a loader for Members screen
* Adding Noop to icon button
* Removing console.log
* Fixing imports.
* Moving org reducer to immer.
* Using utils email validator.
* Removing placeholder from text input props.
Co-authored-by: devrk96 <rohit.kumawat@primathon.in>
* search input implemented with both variant
* classname bug resolved in icon component
* PR comments resolved
* ellipsis added for long search keywords
* Adds the `APPSMITH_MAIL_ENABLED` flag on client
* Shows warning if email service not configured for inviting users in an org
* Shows warning if email service not configured for password reset
Add a default help menu with
* Report a Github issues link
* Documentation link
* Github discussions link
* Intercom link support
* App version id support
* Adding blank components.
* Adding Todo note for tree
* Adding todo note for LighteningMenu
* ads button component
* Adding storybook support.
* storybook integrated with button component
* ads button component props completed
* button component icon and loading logic implemented
* button component completed
* Added a text knob.
* Adding default text for button.
* tabs component implemented and theme type added
* Merging theme and other fixes.
* Fixed info button.
* Better types.
* Adding background param to components.
* Re-using vsariant for callount.
* Added props for Text input.
* Adding text component.
* tab props fixed
* feedback changes added in button and icon component
* type any removed in button component
* key prop fixed and icon margin corrected
* Fixing spinner issues
* Removing unwanted files.
* tab header icon size fixed and story updated
* new tab added in tabs story
Co-authored-by: Satbir Singh <satbir121@gmail.com>
Co-authored-by: satbir121 <39981226+satbir121@users.noreply.github.com>
# New Feature: Entity Explorer
- Entities are actions (apis and queries), datasources, pages, and widgets
- With this new feature, all entities in the application will be available
to view in the new entity explorer sidebar
- All existing application features from the api sidebar, query sidebar, datasource sidebar and pages sidebar
now are avialable on the entity explorer sidebar
- Users are now able to quickly switch to any entity in the application from the entity explorer sidebar.
- Users can also search all entities in the application from the new sidebar. Use cmd + f or ctrl + f to focus on the search input
- Users can rename entities from the new sidebar
- Users can also perform contextual actions on these entities like set a page as home page, copy/move actions, delete entity, etc from the context menu available alongside the entities in the sidebar
- Users can view the properties of the entities in the sidebar, as well as copy bindings to use in the application.
* Fixed tabs widget bugs and other updates:
1. Moved drag icon to the left of tab name field in the tabs widget property pane
2. Change drag icon
3. Add scroll when the tabs occupy more width than the width of tabs widget.
4. Add selected tab name validation.
5. Hide overflow tabs.
6. Avoid vertical scrollbars in tabs widget header
* Query pane refactor and fixes
* Check if body exists
* Get pluginId from the datasource
* Move plugin image logic to selector
* Show info in new line on the datasource form page
* Update link text to Docs
* Handle string as run api response body
* Remove harcoded height
* Remove all references to ImageAlt except in selector
* Updata info text
* Created header for common functionalities in Table Widget
* Client side searching added in Table Widget. Action created for server side searching also.
* Columns visibility feature initial commit
* Column visibility list added in Table Widget
* Changed pagination designs in accordance with new layout. This enable user to jump page as well.
* Using colors values from constants
* Table widget pagination, numeric input page number clamped between 1 and total pages
* Adding tool tip to truncated values in table widget. Added AutoToolTipComponent that adds tooltip when text is truncated.
* Table data download changes. Added downlaod icon and button to table widget.
* Table data download changes
* Download table data as CSV implemented
* table data download, unused code removed
* Code review changes
* code review changes
Co-authored-by: Arpit Mohan <me@arpitmohan.com>
* Feat: Implement page not found UI
* fix: check user login status and minor code refactoring
- Check if user is logged in or not in page header.
- Based on login status show relevant CTAs
- Fix ESLint errors
- Move RoleNameCell and DeleteActionCell as seperate components.
* fix: Add catch all for pagenotfound
* fix: Use constants and update css syntax.
Co-authored-by: Arpit Mohan <me@arpitmohan.com>
* Created header for common functionalities in Table Widget
* Client side searching added in Table Widget. Action created for server side searching also.
* added onSearch to getTriggerPropertyMap
* debouncing search fixed
* Client side search key made as case insensitive and property of table search value names as searchKey
* Removed unused function form SearchComponent
* Feature/table ui update column visibility (#14)
* Columns visibility feature initial commit
* Column visibility list added in Table Widget
* Colors used from constants
Co-authored-by: Arpit Mohan <me@arpitmohan.com>
Co-authored-by: Arpit Mohan <me@arpitmohan.com>
- Show path along with url in the api pane for embedded datasource
- Add store as datasource menu option for embedded datasource
- Allow users to type the path for global datasources
- Show the base url as a tag along with the path for global datasource.
- Prefill datasource title
- Decrease field width
- Save button should have loading state
- Back button in form screen
- Right align save button
- Add new plugin images
and other fixes
- avoid using any or undefined types in the code
- fix ui issues for api home screen
- update naming convensions
- remove unwanted code
- use color variables