-
Notifications
You must be signed in to change notification settings - Fork 4.8k
feat: add font family control to the RTE toolbar #42215
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: release
Are you sure you want to change the base?
Changes from 5 commits
57c8986
acf246a
633fd08
e1a6973
e4670b8
36db45a
2daa123
0191ffb
4afac8b
eaa31b8
f681b17
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -49,8 +49,11 @@ export class CommonLocators { | |
| )}`; | ||
| _textWidget = ".t--draggable-textwidget .t--text-widget-container span"; | ||
| _tableWidget = ".t--widget-tablewidgetv2"; | ||
| _tabWidget = (tabNumber: string) => `.t--tabid-tab${tabNumber}`; | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win 🔎 Supported by static analysis🤖 get_repo_knowledge executed:
Length of output: 35112 🏁 Script executed: #!/bin/bash
set -e
file="app/client/cypress/support/Objects/CommonLocators.ts"
printf '%s\n' "=== changed-file context ==="
cat -n "$file" | sed -n '35,80p;315,390p'
printf '%s\n' "=== selector definitions in the cited ranges ==="
rg -n -C 2 'tabWidget|aria-label|role=|name=|t--|data-(testid|cy)|mce-' "$file"Repository: appsmithorg/appsmith Length of output: 22941 🏁 Script executed: #!/bin/bash
set -e
file="app/client/cypress/support/Objects/CommonLocators.ts"
printf '%s\n' "=== patch for the cited file ==="
git diff --unified=5 -- "$file"
printf '%s\n' "=== application references for the cited selector contracts ==="
rg -n -C 2 --glob '*.{ts,tsx,js,jsx}' \
't--tabid-tab|t--deploy-popup-option-trigger|t--current-deployed-preview-btn|t--widget-imagewidget|Reveal or hide additional toolbar items|APPSMITH_DB_CONNECTION_INFO|t--appsmith-logo|role=.table.|t--cypress-table-overlay-connectdata' \
app/client/src app/client/cypress 2>/dev/null | head -n 240Repository: appsmithorg/appsmith Length of output: 21514 🏁 Script executed: #!/bin/bash
set -e
printf '%s\n' "=== TinyMCE selector and toolbar configuration references ==="
rg -n -C 3 --glob '*.{ts,tsx,js,jsx,json,md}' \
'data-mce-name|Reveal or hide additional toolbar items|fontfamily|toolbar.*overflow|TinyMCE|tinymce' \
app/client/src app/client/cypress app/client/package.json package.json 2>/dev/null | head -n 300
printf '%s\n' "=== repository state for the reviewed file ==="
git status --short -- app/client/cypress/support/Objects/CommonLocators.ts
git diff --cached --unified=3 -- app/client/cypress/support/Objects/CommonLocators.tsRepository: appsmithorg/appsmith Length of output: 27657 Use stable data- hooks for the new application-owned locators.* The cited non-TinyMCE locators use CSS classes, For TinyMCE controls, use a stable 🤖 Prompt for AI AgentsSource: Path instructions |
||
| _inputWidget = ".t--draggable-inputwidgetv2 input"; | ||
| _publishButton = ".t--application-publish-btn"; | ||
| _deployPopup = ".t--deploy-popup-option-trigger"; | ||
| _currentDeployPreview = ".t--current-deployed-preview-btn"; | ||
| _widgetInCanvas = (widgetType: string) => `.t--draggable-${widgetType}`; | ||
| _widgetInDeployed = (widgetType: string) => `.t--widget-${widgetType}`; | ||
| _widgetInputSelector = (widgetType: string) => | ||
|
|
@@ -64,6 +67,7 @@ export class CommonLocators { | |
| _textAreainputWidgetv2InDeployed = | ||
| this._widgetInDeployed("inputwidgetv2") + " textarea"; | ||
| _imageWidget = ".t--draggable-imagewidget"; | ||
| _imageWidgetInDeployed = ".t--widget-imagewidget"; | ||
| _backToEditor = ".t--back-to-editor"; | ||
| _toastMsg = "div.Toastify__toast"; | ||
| _toastContainer = "div.Toastify__toast-container"; | ||
|
|
@@ -201,6 +205,7 @@ export class CommonLocators { | |
| _jsonToggle = (fieldName: string) => | ||
| `//p[text()='${fieldName}']/parent::div//following-sibling::div//input[@type='checkbox']`; | ||
| _deployedPage = `.t--page-switch-tab`; | ||
| _navigationMenuItem = "[data-testid='t--pages-switcher']"; | ||
| _hints = "ul.CodeMirror-hints li"; | ||
| _hints_apis = "ul.CodeMirror-hints li.Codemirror-commands-apis"; | ||
| _tern_doc = ".t--tern-doc"; | ||
|
|
@@ -318,6 +323,12 @@ export class CommonLocators { | |
| _richText_TitleBlock = "[aria-label='Block Paragraph']"; | ||
| _richText_Heading = "[aria-label='Heading 1']"; | ||
| _richText_Label_Text = ".tox-tbtn__select-label"; | ||
| // TinyMCE 7.9.3: data-mce-name is stable; aria-label is "Font {current}" (default "Font System Font") | ||
| _richText_FontFamily = "[data-mce-name='fontfamily']"; | ||
| _richText_FontFamilyOption = (font: string) => | ||
| `.tox-collection__item[aria-label="${font}"]`; | ||
| _richText_ToolbarOverflow = | ||
| '[aria-label="Reveal or hide additional toolbar items"]'; | ||
| _richText_Text_Color = (color: string) => | ||
| `[aria-label="Text color ${color}"] .tox-split-button__chevron`; | ||
| _richText_color = (value: string) => | ||
|
|
@@ -352,6 +363,7 @@ export class CommonLocators { | |
| _entityItem = "[data-testid='t--entity-item-Api1']"; | ||
| _rowData = "[data-colindex='0'][data-rowindex='0']"; | ||
| _visualNonIdeaState = ".bp3-non-ideal-state"; | ||
| _mongoDBConnectionInfo = "input[name='APPSMITH_DB_CONNECTION_INFO']"; | ||
| _editorTab = ".editor-tab"; | ||
| _entityTestId = (entity: string) => | ||
| `[data-testid="t--entity-item-${entity}"]`; | ||
|
|
@@ -360,5 +372,8 @@ export class CommonLocators { | |
| _dropdownActiveOption = ".rc-select-dropdown .rc-select-item-option-active"; | ||
| _rcVirtualListHolder = ".rc-virtual-list-holder"; | ||
| _homeIcon = "[data-testid='t--default-home-icon']"; | ||
| _appsmithLogo = ".t--appsmith-logo"; | ||
| _widget = (widgetName: string) => `.t--widget-${widgetName}`; | ||
| _settingPaneWrapper = "[role='table']"; | ||
| _tableOverlayConnectData = ".t--cypress-table-overlay-connectdata"; | ||
| } | ||
Uh oh!
There was an error while loading. Please reload this page.