Conversation
- Extract default device buttons + orientation into new dot-uve-device-controls pill component - Strip dot-uve-device-selector down to the "more" button only (custom devices, social media, search engines) - Move device controls into the editor's browser toolbar alongside URL bar and zoom controls - Change zoom reset icon from pi-expand to pi-undo - Unify device selector change handling: toolbar emits output, editor is the single store writer - Replace [class.active] bindings with PrimeNG PT API + Tailwind bg-primary-50 for active state - Increase pill padding (px-3 py-1) and URL bar pill vertical padding for better proportions - Fix copy-mode buttons alignment with justify-start! Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add spec for DotUveDeviceControlsComponent covering device selection, orientation toggle, disabled states, and active device computed - Use it.each for per-device button rendering assertions - Update toolbar spec: replace handleDeviceSelectorChange store-call tests with deviceSelectorChange output emission tests Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Claude finished @zJaaal's task in 4m 18s —— View job PR Review
Clean refactor overall. Three things worth a second look: 1.
|
…olbar-and-update-zoom-reset-control
- defaultDevices: was used for default device buttons which moved to dot-uve-device-controls - $actions and $workflowLoding (typo): duplicate of $workflowIsLoading, never referenced in template Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ntrols Avoids the transitive dependency through dot-uve-device-selector.component Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ype re-export shim - data-testId → data-testid (lowercase) on device and orientation buttons - track $index → track device.inode (inodes are unique stable constants) - Remove duplicate data-testid from decorative <use> element - Remove export type re-export shim from dot-uve-device-selector.component - Update all callers (toolbar ts/spec, device-selector spec) to import DeviceSelectorChange/DeviceSelectorState directly from .models file Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…olbar-and-update-zoom-reset-control
Summary
dot-uve-device-controlspill component placed in the editor's browser toolbardot-uve-device-selectordown to the "more" button only (custom devices, social media, search engines)pi-expandtopi-undodeviceSelectorChangeoutput, and the editor is the single point that writes to the store (removes the duplicatehandleDeviceSelectorChange+$deviceSelectorStatefrom both components)[class.active]bindings (broken after Tailwind migration) with PrimeNG PT API +bg-primary-50!applied directly to the inner button elementpx-3 py-1) and URL bar pill padding for better visual proportionsjustify-start!) in quick-edit panelTest plan
portlets-edit-ema-portlettests pass (63 suites, 1325 tests)dot-uve-device-controls.component.spec.tscovers device selection, orientation toggle, disabled state, and active state computed signalshandleDeviceSelectorChangestore-call tests replaced withdeviceSelectorChangeoutput emission testsbg-primary-50background via PT APIpi-undoicon🤖 Generated with Claude Code
This PR fixes: #35417
This PR fixes: #35417