gristlabs_grist-core/app/client/widgets/FieldBuilder.css
Jarosław Sadziński bfd7243fe2 (core) Comments
Summary:
First iteration for comments system for Grist.
- Comments are stored in a generic metatable `_grist_Cells`
- Each comment is connected to a particular cell (hence the generic name of the table)
- Access level works naturally for records stored in this table
-- User can add/read comments for cells he can see
-- User can't update/remove comments that he doesn't own, but he can delete them by removing cells (rows/columns)
-- Anonymous users can't see comments at all.
- Each comment can have replies (but replies can't have more replies)

Comments are hidden by default, they can be enabled by COMMENTS=true env variable.
Some things for follow-up
- Avatars, currently the user's profile image is not shown or retrieved from the server
- Virtual rendering for comments list in creator panel. Currently, there is a limit of 200 comments.

Test Plan: New and existing tests

Reviewers: georgegevoian, paulfitz

Reviewed By: georgegevoian

Subscribers: paulfitz

Differential Revision: https://phab.getgrist.com/D3509
2022-10-17 13:38:21 +02:00

48 lines
974 B
CSS

.transform_editor {
width: 90%;
margin: 5px auto;
border: 1px solid #DDDDDD;
}
.transform_menu {
padding: 5px 0;
margin: 5px;
border-top: 1px solid rgba(200, 200, 200, .3);
border-bottom: 1px solid rgba(200, 200, 200, .3);
}
.fieldbuilder_settings {
background-color: var(--grist-theme-right-panel-field-settings-bg, #e8e8e8);
margin: 1rem -1px -4px -1px;
padding-bottom: 1px;
}
.fieldbuilder_settings_header {
height: 2rem;
margin-top: 0px;
margin-bottom: 0px;
}
.fieldbuilder_settings_button {
display: inline-block;
float: right;
padding: 0 1rem;
border-radius: 5px;
background-color: var(--grist-theme-right-panel-field-settings-button-bg, lightgrey);
}
.field-comment-indicator {
display: none;
}
.field-with-comments .field-comment-indicator {
display: block;
position: absolute;
top: 0;
right: 0;
width: 0;
height: 0;
border-top: 11px solid var(--grist-color-orange);
border-left: 11px solid transparent;
}