Skip to content
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

feat(pte): add hideToolbar and fullscreen props to PortableTextInput #6621

Merged
merged 5 commits into from
May 10, 2024

Conversation

robinpyon
Copy link
Contributor

Description

This PR introduces additional props to <PortableTextInput>:

  • hideToolbar – whether the input's toolbar is hidden
  • fullscreen – whether the input is initially full screen on mount

... that's it! Both of these are used by the various PTE inputs used in Create.

What to review

Existing PTE inputs in the studio should be unaffected. Fullscreen toggling should work as normal.

Testing

AFAIK there aren't any dedicated component tests for <PortableTextInput> – we only have some for <FormBuilder>. Please correct me if otherwise! Let me know if you need specific integration tests here.

I've also created an example document type in the test studio (Standard Inputs > Portable Text > BlockEditor examples) which demonstrates hideToolbar in action (I'd have included an example for fullscreen, but opening a document will open you into a fullscreened-PTE input, which wasn't super intuitive!)

Notes for release

N/A

Copy link

vercel bot commented May 10, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
performance-studio ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 10, 2024 7:41pm
test-next-studio ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 10, 2024 7:41pm
test-studio ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 10, 2024 7:41pm
1 Ignored Deployment
Name Status Preview Comments Updated (UTC)
studio-workshop ⬜️ Ignored (Inspect) Visit Preview May 10, 2024 7:41pm

@robinpyon robinpyon changed the title feat(pte): add hideToolbar and fullscreen props to PortableTextInput feat(pte): add hideToolbar and fullscreen props to PortableTextInput May 10, 2024
@robinpyon robinpyon marked this pull request as ready for review May 10, 2024 15:10
@robinpyon robinpyon requested review from a team as code owners May 10, 2024 15:10
Copy link
Contributor

No changes to documentation

Copy link
Contributor

github-actions bot commented May 10, 2024

Component Testing Report Updated May 10, 2024 7:47 PM (UTC)

File Status Duration Passed Skipped Failed
comments/CommentInput.spec.tsx ✅ Passed (Inspect) 36s 15 0 0
formBuilder/ArrayInput.spec.tsx ✅ Passed (Inspect) 6s 3 0 0
formBuilder/inputs/PortableText/Annotations.spec.tsx ✅ Passed (Inspect) 26s 6 0 0
formBuilder/inputs/PortableText/copyPaste/CopyPaste.spec.tsx ✅ Passed (Inspect) 31s 11 7 0
formBuilder/inputs/PortableText/Decorators.spec.tsx ✅ Passed (Inspect) 14s 6 0 0
formBuilder/inputs/PortableText/FocusTracking.spec.tsx ✅ Passed (Inspect) 36s 15 0 0
formBuilder/inputs/PortableText/Input.spec.tsx ❌ Failed (Inspect) 1m 4s 13 0 1
formBuilder/inputs/PortableText/ObjectBlock.spec.tsx ✅ Passed (Inspect) 1m 4s 18 0 0
formBuilder/inputs/PortableText/PresenceCursors.spec.tsx ✅ Passed (Inspect) 7s 3 9 0
formBuilder/inputs/PortableText/RangeDecoration.spec.tsx ✅ Passed (Inspect) 20s 9 0 0
formBuilder/inputs/PortableText/Styles.spec.tsx ✅ Passed (Inspect) 14s 6 0 0
formBuilder/inputs/PortableText/Toolbar.spec.tsx ✅ Passed (Inspect) 22s 9 0 0

ricokahler
ricokahler previously approved these changes May 10, 2024
Copy link
Contributor

@ricokahler ricokahler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

had a non-blocking comment but looks good!

jordanl17
jordanl17 previously approved these changes May 10, 2024
@robinpyon robinpyon removed the request for review from hermanwikner May 10, 2024 19:37
@robinpyon robinpyon merged commit d4ad9b0 into next May 10, 2024
39 checks passed
@robinpyon robinpyon deleted the crx-662 branch May 10, 2024 19:48
ricokahler pushed a commit that referenced this pull request May 14, 2024
…nput` (#6621)

* feat(form/inputs): add prop to hide the toolbar in PT-input

* feat(form/inputs): control PT-input fullscreen from props

* chore(test-studio): add example document type with custom block editor variants

* refactor: rename `fullscreen` to `initialFullscreen`

* refactor: don't unnecessarily alias `initialFullscreen` prop

---------

Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>
github-merge-queue bot pushed a commit that referenced this pull request May 20, 2024
* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* fix(studio): adding tooltip to read-only bool inputs (#6580)

* fix(studio): adding tooltip to read-only bool inputs

* fix(studio): testing for tooltip on boolean read-only inputs

* fix(studio): removing memoisation as it was useless

* chore(deps): dedupe pnpm-lock.yaml (#6607)

Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>

* feat: add canHandleIntent to Structure Builder component (#6516)

* feat: add canHandleIntent to S.component

* fix: properly type canHandleIntent

* Update packages/sanity/src/structure/structureBuilder/Component.ts

Co-authored-by: Ash <ash@sanity.io>

---------

Co-authored-by: Ash <ash@sanity.io>

* {wip} saved 2024-05-8 16:18

* fix(structure): use case insensitive search for inspect dialog (#6588)

* test(core): await publish action to prevent test flakiness (#6609)

* fix(deps): update dependency get-it to ^8.4.29 (#6603)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(vision): add "save result as json/csv" buttons (#6158)

* feat(vision): add download as json/csv buttons

* fix(vision): use blob urls for downloads (#6213)

* fix(vision): use Translate component to avoid splitting i18n strings

* fix(vision): clean up i18n resources for result saving feature

---------

Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>

* fix(core/form): prevent onFocus for root object paths being called by editing form (#6610)

This will prevent any input calling element.onFocus() on any opened block or inline-object
inside the PT-input, as that will close the editing modal for them (through DocumentPaneProvider)

* feat(core): add useEditStateList hook

* feat(sheet-list): add table view

* feat(structure): rendering columns in sheet list

* Merge branch 'edx-1284' into EDX-1308

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* test(core, desk): add tests for keyvalue storage (#6587)

* test(core): add tests for document list sort and display

* test(structure): add test for inspect dialog

* test(core): add tests for saved searches

* v3.41.0

* test(core): fixes flaky test with document publish (#6595)

* test(core): fixes flaky test with document publish

* test(core): use more realistic fix for flaky test

* chore(deps): update linters (#6590)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency styled-components to ^6.1.10 (#6585)

* chore(deps): update dependency styled-components to ^6.1.10

* chore: update test snapshot

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Cody Olsen <stipsan@gmail.com>

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(lockfile): update dependency @sanity/react-loader to v1.9.17 (#6584)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(presentation): regression causing a crash when in an embedded studio (#6606)

* v3.41.1

* fix(studio): adding tooltip to read-only bool inputs (#6580)

* fix(studio): adding tooltip to read-only bool inputs

* fix(studio): testing for tooltip on boolean read-only inputs

* fix(studio): removing memoisation as it was useless

* chore(deps): dedupe pnpm-lock.yaml (#6607)

Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>

* feat: add canHandleIntent to Structure Builder component (#6516)

* feat: add canHandleIntent to S.component

* fix: properly type canHandleIntent

* Update packages/sanity/src/structure/structureBuilder/Component.ts

Co-authored-by: Ash <ash@sanity.io>

---------

Co-authored-by: Ash <ash@sanity.io>

* fix(structure): use case insensitive search for inspect dialog (#6588)

* test(core): await publish action to prevent test flakiness (#6609)

* fix(deps): update dependency get-it to ^8.4.29 (#6603)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(vision): add "save result as json/csv" buttons (#6158)

* feat(vision): add download as json/csv buttons

* fix(vision): use blob urls for downloads (#6213)

* fix(vision): use Translate component to avoid splitting i18n strings

* fix(vision): clean up i18n resources for result saving feature

---------

Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>

* fix(core/form): prevent onFocus for root object paths being called by editing form (#6610)

This will prevent any input calling element.onFocus() on any opened block or inline-object
inside the PT-input, as that will close the editing modal for them (through DocumentPaneProvider)

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* v3.41.0

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(presentation): regression causing a crash when in an embedded studio (#6606)

* v3.41.1

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(sheet-list): add paginated sheet list view

* feat(structure): control column visibility in sheet list

* feat(structure): control column visibility in sheet list

* feat(structure): control column visibility in sheet list

* feat(structure): row selection

* chore(bundle): remove unnecessary bundles and make root imports index (#6616)

* chore(bundle): remove unnecessary bundles and make root imports index

* chore: remove unnecessary depcheck updates

* feat(pte): add `hideToolbar` and `fullscreen` props to `PortableTextInput` (#6621)

* feat(form/inputs): add prop to hide the toolbar in PT-input

* feat(form/inputs): control PT-input fullscreen from props

* chore(test-studio): add example document type with custom block editor variants

* refactor: rename `fullscreen` to `initialFullscreen`

* refactor: don't unnecessarily alias `initialFullscreen` prop

---------

Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>

* fix(pte): don't render the PTE block extras container when not in use, disable pointer events on highlights (#6620)

* fix(pte): don't unnecessarily render PTE block actions container

* fix: remove pointer-events from validation + change highlight blocks

* chore(lockfile): update dependency @sanity/assist to v3.0.4 (#6601)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* skip recalling invokePrepare (#6608)

* feat(structure): only showing the column select for hideable columns

* fix(core): update test snapshots (#6629)

* fix(e2e): support headless/headful env var toggle (#6558)

* fix(deps): update dependency @sanity/presentation to v1.15.2 (#6632)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(structure): booleans render as selects

* feat: add icon to BlockStyleDefinition (#6613)

* feat(pte): initial support for `renderEditable` in portable text inputs (#6627)

* feat(form/inputs): support rendering PTE Editable through PortableTextInput

* fix(form/inputs): render with props, but without defaultRender

defaultRender is not part of the PortableTextEditor's Editable props

* refactor: rename useSpellcheck hook for consistency

* refactor: prefer importing react MutableRefObject type directly

* chore(test-studio): update custom block editor schema

* chore: mark renderEditable as hidden and in beta

---------

Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>

* chore(ci): add a circleci config to bundle packages (#6446)

* chore(ci): add a circleci config to bundle packages

* fix: store escaped package names in the manifest

* chore: run job only on current

* chore(lockfile): update dependency esbuild to v0.21.2 (#6602)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(structure): add virtualised documentSheetList and sheetListStore

* feat(core): add useEditStateList hook

* feat(sheet-list): add table view

* feat(sheet-list): add paginated sheet list view

* feat(structure): clean files and implement paginated sheet list with filter

* fix(core): remove useEditStateList hook

* chore(core): refactor search elements for export and reusability

* feat(structure): adding columns control back in

* fix(structure): update documentSheetList test

* chore(structure): rename useDocumentSheetListStore properties

* feat(structure): refactor for cols control

* feat(structure): always require 1 column visible

* feat(structure): testing for Columns Control

* feat(structure): spreadsheet styling on sheetlistcell

* fix(deps): Update dev-non-major (#6659)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(scheduled-publishing): don't include it if it's the only plugin available (#6530)

* fix(scheduled-publishing): don't include the tool if it's the plugin available

* chore(core): add tests for resolve default plugins

* feat(structure): add virtualised documentSheetList and sheetListStore

* feat(core): add useEditStateList hook

* feat(sheet-list): add table view

* feat(sheet-list): add paginated sheet list view

* feat(structure): clean files and implement paginated sheet list with filter

* fix(core): remove useEditStateList hook

* chore(core): refactor search elements for export and reusability

* fix(structure): update documentSheetList test

* chore(structure): rename useDocumentSheetListStore properties

* chore(structure): rename documentSheet* to documentSheetList*

* Merge branch 'edx-1284' into EDX-1308

* Merge branch 'edx-1284' into EDX-1308

* Merge branch 'edx-1284' into EDX-1308

* feat(structure): removing changes to book schema

* fix(structure): remove useEffect and set table columns as initial state (#6712)

* fix(structure): remove useEffect and set table columns as initial state

* fix(structure): use resetColumnVisibility() helper

* feat(structure): testing for useDocumentSheetColumns with initial cols

* feat(structure): PR comments to improve types and remove WIP

* feat(structure): fixing broken test for init col visibilities

---------

Co-authored-by: ecospark[bot] <128108030+ecospark[bot]@users.noreply.github.com>
Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>
Co-authored-by: Carolina Gonzalez <carolina.nicole.gonzalez@gmail.com>
Co-authored-by: Ash <ash@sanity.io>
Co-authored-by: Pedro Bonamin <pedrobonamin@gmail.com>
Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Rostislav Melkumyan <hello@rosti.no>
Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>
Co-authored-by: Binoy Patel <me@binoy.io>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Cody Olsen <stipsan@gmail.com>
Co-authored-by: Cody Olsen <81981+stipsan@users.noreply.github.com>
Co-authored-by: Robin Pyon <robinpyon@users.noreply.github.com>
Co-authored-by: Evensix <93653507+evensix-dev@users.noreply.github.com>
Co-authored-by: Bjørge Næss <bjoerge@gmail.com>
Co-authored-by: Pedro Bonamin <46196328+pedrobonamin@users.noreply.github.com>
github-merge-queue bot pushed a commit that referenced this pull request May 22, 2024
* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* fix(studio): adding tooltip to read-only bool inputs (#6580)

* fix(studio): adding tooltip to read-only bool inputs

* fix(studio): testing for tooltip on boolean read-only inputs

* fix(studio): removing memoisation as it was useless

* chore(deps): dedupe pnpm-lock.yaml (#6607)

Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>

* feat: add canHandleIntent to Structure Builder component (#6516)

* feat: add canHandleIntent to S.component

* fix: properly type canHandleIntent

* Update packages/sanity/src/structure/structureBuilder/Component.ts

Co-authored-by: Ash <ash@sanity.io>

---------

Co-authored-by: Ash <ash@sanity.io>

* {wip} saved 2024-05-8 16:18

* fix(structure): use case insensitive search for inspect dialog (#6588)

* test(core): await publish action to prevent test flakiness (#6609)

* fix(deps): update dependency get-it to ^8.4.29 (#6603)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(vision): add "save result as json/csv" buttons (#6158)

* feat(vision): add download as json/csv buttons

* fix(vision): use blob urls for downloads (#6213)

* fix(vision): use Translate component to avoid splitting i18n strings

* fix(vision): clean up i18n resources for result saving feature

---------

Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>

* fix(core/form): prevent onFocus for root object paths being called by editing form (#6610)

This will prevent any input calling element.onFocus() on any opened block or inline-object
inside the PT-input, as that will close the editing modal for them (through DocumentPaneProvider)

* feat(core): add useEditStateList hook

* feat(sheet-list): add table view

* feat(structure): rendering columns in sheet list

* Merge branch 'edx-1284' into EDX-1308

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* test(core, desk): add tests for keyvalue storage (#6587)

* test(core): add tests for document list sort and display

* test(structure): add test for inspect dialog

* test(core): add tests for saved searches

* v3.41.0

* test(core): fixes flaky test with document publish (#6595)

* test(core): fixes flaky test with document publish

* test(core): use more realistic fix for flaky test

* chore(deps): update linters (#6590)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency styled-components to ^6.1.10 (#6585)

* chore(deps): update dependency styled-components to ^6.1.10

* chore: update test snapshot

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Cody Olsen <stipsan@gmail.com>

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(lockfile): update dependency @sanity/react-loader to v1.9.17 (#6584)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(presentation): regression causing a crash when in an embedded studio (#6606)

* v3.41.1

* fix(studio): adding tooltip to read-only bool inputs (#6580)

* fix(studio): adding tooltip to read-only bool inputs

* fix(studio): testing for tooltip on boolean read-only inputs

* fix(studio): removing memoisation as it was useless

* chore(deps): dedupe pnpm-lock.yaml (#6607)

Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>

* feat: add canHandleIntent to Structure Builder component (#6516)

* feat: add canHandleIntent to S.component

* fix: properly type canHandleIntent

* Update packages/sanity/src/structure/structureBuilder/Component.ts

Co-authored-by: Ash <ash@sanity.io>

---------

Co-authored-by: Ash <ash@sanity.io>

* fix(structure): use case insensitive search for inspect dialog (#6588)

* test(core): await publish action to prevent test flakiness (#6609)

* fix(deps): update dependency get-it to ^8.4.29 (#6603)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(vision): add "save result as json/csv" buttons (#6158)

* feat(vision): add download as json/csv buttons

* fix(vision): use blob urls for downloads (#6213)

* fix(vision): use Translate component to avoid splitting i18n strings

* fix(vision): clean up i18n resources for result saving feature

---------

Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>

* fix(core/form): prevent onFocus for root object paths being called by editing form (#6610)

This will prevent any input calling element.onFocus() on any opened block or inline-object
inside the PT-input, as that will close the editing modal for them (through DocumentPaneProvider)

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* v3.41.0

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(presentation): regression causing a crash when in an embedded studio (#6606)

* v3.41.1

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(sheet-list): add paginated sheet list view

* feat(structure): control column visibility in sheet list

* feat(structure): control column visibility in sheet list

* feat(structure): control column visibility in sheet list

* feat(structure): row selection

* chore(bundle): remove unnecessary bundles and make root imports index (#6616)

* chore(bundle): remove unnecessary bundles and make root imports index

* chore: remove unnecessary depcheck updates

* feat(pte): add `hideToolbar` and `fullscreen` props to `PortableTextInput` (#6621)

* feat(form/inputs): add prop to hide the toolbar in PT-input

* feat(form/inputs): control PT-input fullscreen from props

* chore(test-studio): add example document type with custom block editor variants

* refactor: rename `fullscreen` to `initialFullscreen`

* refactor: don't unnecessarily alias `initialFullscreen` prop

---------

Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>

* fix(pte): don't render the PTE block extras container when not in use, disable pointer events on highlights (#6620)

* fix(pte): don't unnecessarily render PTE block actions container

* fix: remove pointer-events from validation + change highlight blocks

* featu(strucuture): allowing shift selecting across multiple sheet list rows

* chore(lockfile): update dependency @sanity/assist to v3.0.4 (#6601)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* skip recalling invokePrepare (#6608)

* feat(structure): only showing the column select for hideable columns

* fix(core): update test snapshots (#6629)

* fix(e2e): support headless/headful env var toggle (#6558)

* fix(deps): update dependency @sanity/presentation to v1.15.2 (#6632)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(structure): booleans render as selects

* feat: add icon to BlockStyleDefinition (#6613)

* feat(pte): initial support for `renderEditable` in portable text inputs (#6627)

* feat(form/inputs): support rendering PTE Editable through PortableTextInput

* fix(form/inputs): render with props, but without defaultRender

defaultRender is not part of the PortableTextEditor's Editable props

* refactor: rename useSpellcheck hook for consistency

* refactor: prefer importing react MutableRefObject type directly

* chore(test-studio): update custom block editor schema

* chore: mark renderEditable as hidden and in beta

---------

Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>

* chore(ci): add a circleci config to bundle packages (#6446)

* chore(ci): add a circleci config to bundle packages

* fix: store escaped package names in the manifest

* chore: run job only on current

* chore(lockfile): update dependency esbuild to v0.21.2 (#6602)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(structure): add virtualised documentSheetList and sheetListStore

* feat(core): add useEditStateList hook

* feat(sheet-list): add table view

* feat(sheet-list): add paginated sheet list view

* feat(structure): clean files and implement paginated sheet list with filter

* fix(core): remove useEditStateList hook

* chore(core): refactor search elements for export and reusability

* feat(structure): adding columns control back in

* fix(structure): update documentSheetList test

* chore(structure): rename useDocumentSheetListStore properties

* feat(structure): refactor for cols control

* feat(structure): always require 1 column visible

* feat(structure): testing for Columns Control

* feat(structure): spreadsheet styling on sheetlistcell

* fix(deps): Update dev-non-major (#6659)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(scheduled-publishing): don't include it if it's the only plugin available (#6530)

* fix(scheduled-publishing): don't include the tool if it's the plugin available

* chore(core): add tests for resolve default plugins

* feat(structure): add virtualised documentSheetList and sheetListStore

* feat(core): add useEditStateList hook

* feat(sheet-list): add table view

* feat(sheet-list): add paginated sheet list view

* feat(structure): clean files and implement paginated sheet list with filter

* fix(core): remove useEditStateList hook

* chore(core): refactor search elements for export and reusability

* fix(structure): update documentSheetList test

* chore(structure): rename useDocumentSheetListStore properties

* chore(structure): rename documentSheet* to documentSheetList*

* Merge branch 'edx-1284' into EDX-1308

* Merge branch 'edx-1284' into EDX-1308

* Merge branch 'edx-1284' into EDX-1308

* feat(structure): removing changes to book schema

* feat(structure): state for selected anchor

* fix(structure): remove useEffect and set table columns as initial state (#6712)

* fix(structure): remove useEffect and set table columns as initial state

* fix(structure): use resetColumnVisibility() helper

* feat(structure): testing for useDocumentSheetColumns with initial cols

* feat(structure): fixing import of afterAll

* feat(structure): PR comments to improve types and remove WIP

* feat(structure): fixing broken test for init col visibilities

* feat(structure): redirectory of sheet list modules

* feat(structure): testing row selector

* feat(structure): refactor of additional selection rows

* feat(structure): refactor of additional selection rows

* feat(structure): fixing issue with nested fields and separator

* fix(structure): fixing incorrect way of setting col visibility

* feat(structure): removing incorrectly placed hook

* feat(structure): codeowners for doc list

* feat(structure): fixing type issue

* feat(structure): rename of options.meta fnc

---------

Co-authored-by: ecospark[bot] <128108030+ecospark[bot]@users.noreply.github.com>
Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>
Co-authored-by: Carolina Gonzalez <carolina.nicole.gonzalez@gmail.com>
Co-authored-by: Ash <ash@sanity.io>
Co-authored-by: Pedro Bonamin <pedrobonamin@gmail.com>
Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Rostislav Melkumyan <hello@rosti.no>
Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>
Co-authored-by: Binoy Patel <me@binoy.io>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Cody Olsen <stipsan@gmail.com>
Co-authored-by: Cody Olsen <81981+stipsan@users.noreply.github.com>
Co-authored-by: Robin Pyon <robinpyon@users.noreply.github.com>
Co-authored-by: Evensix <93653507+evensix-dev@users.noreply.github.com>
Co-authored-by: Bjørge Næss <bjoerge@gmail.com>
Co-authored-by: Pedro Bonamin <46196328+pedrobonamin@users.noreply.github.com>
github-merge-queue bot pushed a commit that referenced this pull request May 24, 2024
* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* fix(studio): adding tooltip to read-only bool inputs (#6580)

* fix(studio): adding tooltip to read-only bool inputs

* fix(studio): testing for tooltip on boolean read-only inputs

* fix(studio): removing memoisation as it was useless

* chore(deps): dedupe pnpm-lock.yaml (#6607)

Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>

* feat: add canHandleIntent to Structure Builder component (#6516)

* feat: add canHandleIntent to S.component

* fix: properly type canHandleIntent

* Update packages/sanity/src/structure/structureBuilder/Component.ts

Co-authored-by: Ash <ash@sanity.io>

---------

Co-authored-by: Ash <ash@sanity.io>

* {wip} saved 2024-05-8 16:18

* fix(structure): use case insensitive search for inspect dialog (#6588)

* test(core): await publish action to prevent test flakiness (#6609)

* fix(deps): update dependency get-it to ^8.4.29 (#6603)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(vision): add "save result as json/csv" buttons (#6158)

* feat(vision): add download as json/csv buttons

* fix(vision): use blob urls for downloads (#6213)

* fix(vision): use Translate component to avoid splitting i18n strings

* fix(vision): clean up i18n resources for result saving feature

---------

Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>

* fix(core/form): prevent onFocus for root object paths being called by editing form (#6610)

This will prevent any input calling element.onFocus() on any opened block or inline-object
inside the PT-input, as that will close the editing modal for them (through DocumentPaneProvider)

* feat(core): add useEditStateList hook

* feat(sheet-list): add table view

* feat(structure): rendering columns in sheet list

* Merge branch 'edx-1284' into EDX-1308

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* test(core, desk): add tests for keyvalue storage (#6587)

* test(core): add tests for document list sort and display

* test(structure): add test for inspect dialog

* test(core): add tests for saved searches

* v3.41.0

* test(core): fixes flaky test with document publish (#6595)

* test(core): fixes flaky test with document publish

* test(core): use more realistic fix for flaky test

* chore(deps): update linters (#6590)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency styled-components to ^6.1.10 (#6585)

* chore(deps): update dependency styled-components to ^6.1.10

* chore: update test snapshot

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Cody Olsen <stipsan@gmail.com>

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(lockfile): update dependency @sanity/react-loader to v1.9.17 (#6584)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(presentation): regression causing a crash when in an embedded studio (#6606)

* v3.41.1

* fix(studio): adding tooltip to read-only bool inputs (#6580)

* fix(studio): adding tooltip to read-only bool inputs

* fix(studio): testing for tooltip on boolean read-only inputs

* fix(studio): removing memoisation as it was useless

* chore(deps): dedupe pnpm-lock.yaml (#6607)

Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>

* feat: add canHandleIntent to Structure Builder component (#6516)

* feat: add canHandleIntent to S.component

* fix: properly type canHandleIntent

* Update packages/sanity/src/structure/structureBuilder/Component.ts

Co-authored-by: Ash <ash@sanity.io>

---------

Co-authored-by: Ash <ash@sanity.io>

* fix(structure): use case insensitive search for inspect dialog (#6588)

* test(core): await publish action to prevent test flakiness (#6609)

* fix(deps): update dependency get-it to ^8.4.29 (#6603)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(vision): add "save result as json/csv" buttons (#6158)

* feat(vision): add download as json/csv buttons

* fix(vision): use blob urls for downloads (#6213)

* fix(vision): use Translate component to avoid splitting i18n strings

* fix(vision): clean up i18n resources for result saving feature

---------

Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>

* fix(core/form): prevent onFocus for root object paths being called by editing form (#6610)

This will prevent any input calling element.onFocus() on any opened block or inline-object
inside the PT-input, as that will close the editing modal for them (through DocumentPaneProvider)

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* v3.41.0

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* fix(presentation): regression causing a crash when in an embedded studio (#6606)

* v3.41.1

* fix(deps): update dependency @sanity/client to ^6.18.0 (#6604)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(core, structure) sheet list menu option (#6593)

* feat(structure): Rendering sheet list layout option in test-studio

* feat(structure): branching the rendering of different document list panes

* feat(structure): renaming of generic pane components

* feat(structure): fixing typing for new sheetList

* feat(structure): resolving a default export to named

* feat(structure): testing sheet view pane display logcic

* fix(structure): resolving testing for useStructureTool

* chore(lockfile): update dependency zod to v3.23.7 (#6527)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/pkg-utils to v6.8.13 (#6599)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* chore(deps): update dependency @sanity/tsdoc to v1.0.51 (#6600)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(sheet-list): add paginated sheet list view

* feat(structure): control column visibility in sheet list

* feat(structure): control column visibility in sheet list

* feat(structure): control column visibility in sheet list

* feat(structure): row selection

* chore(bundle): remove unnecessary bundles and make root imports index (#6616)

* chore(bundle): remove unnecessary bundles and make root imports index

* chore: remove unnecessary depcheck updates

* feat(pte): add `hideToolbar` and `fullscreen` props to `PortableTextInput` (#6621)

* feat(form/inputs): add prop to hide the toolbar in PT-input

* feat(form/inputs): control PT-input fullscreen from props

* chore(test-studio): add example document type with custom block editor variants

* refactor: rename `fullscreen` to `initialFullscreen`

* refactor: don't unnecessarily alias `initialFullscreen` prop

---------

Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>

* fix(pte): don't render the PTE block extras container when not in use, disable pointer events on highlights (#6620)

* fix(pte): don't unnecessarily render PTE block actions container

* fix: remove pointer-events from validation + change highlight blocks

* chore(lockfile): update dependency @sanity/assist to v3.0.4 (#6601)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* skip recalling invokePrepare (#6608)

* feat(structure): only showing the column select for hideable columns

* fix(core): update test snapshots (#6629)

* fix(e2e): support headless/headful env var toggle (#6558)

* fix(deps): update dependency @sanity/presentation to v1.15.2 (#6632)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(structure): booleans render as selects

* feat: add icon to BlockStyleDefinition (#6613)

* feat(pte): initial support for `renderEditable` in portable text inputs (#6627)

* feat(form/inputs): support rendering PTE Editable through PortableTextInput

* fix(form/inputs): render with props, but without defaultRender

defaultRender is not part of the PortableTextEditor's Editable props

* refactor: rename useSpellcheck hook for consistency

* refactor: prefer importing react MutableRefObject type directly

* chore(test-studio): update custom block editor schema

* chore: mark renderEditable as hidden and in beta

---------

Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>

* chore(ci): add a circleci config to bundle packages (#6446)

* chore(ci): add a circleci config to bundle packages

* fix: store escaped package names in the manifest

* chore: run job only on current

* chore(lockfile): update dependency esbuild to v0.21.2 (#6602)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>

* feat(structure): add virtualised documentSheetList and sheetListStore

* feat(core): add useEditStateList hook

* feat(sheet-list): add table view

* feat(sheet-list): add paginated sheet list view

* feat(structure): clean files and implement paginated sheet list with filter

* fix(core): remove useEditStateList hook

* chore(core): refactor search elements for export and reusability

* feat(structure): adding columns control back in

* fix(structure): update documentSheetList test

* chore(structure): rename useDocumentSheetListStore properties

* feat(structure): refactor for cols control

* feat(structure): always require 1 column visible

* feat(structure): testing for Columns Control

* feat(structure): spreadsheet styling on sheetlistcell

* feat(structure): POC for cell value copy/paste

* feat(structure): handling up and down selection of cells

* feat(structure): handling up and down selection of cells

* feat(structure): handling up and down selection of cells

* feat(structure): handling up and down selection of cells

* feat(structure): handling up and down selection of cells

* feat(structure): simplifying handler for keyDown

* feat(structure): return types for SheetListContext

* feat(structure): fixing all key down issue on focused cell

* feat(structure): starting support for left and right arrows

* feat(structure): starting to branch on double clicks

* feat(structure): supporting arrow right/left for col navigation

* feat(structure): using singleton alias import

* feat(structure): merge with latest next

* feat(structure): handling enter clicks

* feat(structure): handling enter clicks

* feat(structure): single cell paste

* feat(structure): handling batch pastes

* feat(structure): handling copy when selected

* feat(structure): copy only handled in addition to default on anchor select

* feat(structure): improvement to readability; enter to blur and submit

* feat(structure): testing for keyboard nav on cells

* feat(structure): testing for keyboard nav on cells

* feat(structure): fixing mock for pane test

* feat(structure): fixing mock for pane test

* feat(structure): fixing for react compiler

* feat(structure): refactor of name for selection provider

* feat(structure): supporting keyboard on select; refactor of provider name

---------

Co-authored-by: ecospark[bot] <128108030+ecospark[bot]@users.noreply.github.com>
Co-authored-by: juice49 <1454914+juice49@users.noreply.github.com>
Co-authored-by: Carolina Gonzalez <carolina.nicole.gonzalez@gmail.com>
Co-authored-by: Ash <ash@sanity.io>
Co-authored-by: Pedro Bonamin <pedrobonamin@gmail.com>
Co-authored-by: Espen Hovlandsdal <espen@hovlandsdal.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Rostislav Melkumyan <hello@rosti.no>
Co-authored-by: Per-Kristian Nordnes <per.kristian.nordnes@gmail.com>
Co-authored-by: Binoy Patel <me@binoy.io>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Cody Olsen <stipsan@gmail.com>
Co-authored-by: Cody Olsen <81981+stipsan@users.noreply.github.com>
Co-authored-by: Robin Pyon <robinpyon@users.noreply.github.com>
Co-authored-by: Evensix <93653507+evensix-dev@users.noreply.github.com>
Co-authored-by: Bjørge Næss <bjoerge@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants