termcast 1.3.19 → 1.3.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ai.d.ts +104 -0
- package/dist/ai.d.ts.map +1 -0
- package/dist/ai.js +135 -0
- package/dist/ai.js.map +1 -0
- package/dist/apis/browser-extension.d.ts +18 -0
- package/dist/apis/browser-extension.d.ts.map +1 -0
- package/dist/apis/browser-extension.js +14 -0
- package/dist/apis/browser-extension.js.map +1 -0
- package/dist/apis/localstorage.d.ts.map +1 -1
- package/dist/apis/localstorage.js +4 -7
- package/dist/apis/localstorage.js.map +1 -1
- package/dist/apis/oauth.d.ts.map +1 -1
- package/dist/apis/oauth.js +5 -1
- package/dist/apis/oauth.js.map +1 -1
- package/dist/apis/preferences.d.ts.map +1 -1
- package/dist/apis/preferences.js +38 -19
- package/dist/apis/preferences.js.map +1 -1
- package/dist/build.d.ts.map +1 -1
- package/dist/build.js +2 -1
- package/dist/build.js.map +1 -1
- package/dist/cache.d.ts +32 -0
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +205 -0
- package/dist/cache.js.map +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +69 -33
- package/dist/cli.js.map +1 -1
- package/dist/clipboard.d.ts +36 -0
- package/dist/clipboard.d.ts.map +1 -0
- package/dist/clipboard.js +154 -0
- package/dist/clipboard.js.map +1 -0
- package/dist/compile.d.ts.map +1 -1
- package/dist/compile.js +24 -6
- package/dist/compile.js.map +1 -1
- package/dist/components/actions.d.ts.map +1 -1
- package/dist/components/actions.js +56 -30
- package/dist/components/actions.js.map +1 -1
- package/dist/components/detail.d.ts.map +1 -1
- package/dist/components/detail.js +4 -0
- package/dist/components/detail.js.map +1 -1
- package/dist/components/dropdown.d.ts.map +1 -1
- package/dist/components/dropdown.js +38 -15
- package/dist/components/dropdown.js.map +1 -1
- package/dist/components/extension-preferences.d.ts.map +1 -1
- package/dist/components/extension-preferences.js +40 -13
- package/dist/components/extension-preferences.js.map +1 -1
- package/dist/components/form/checkbox.d.ts.map +1 -1
- package/dist/components/form/checkbox.js +5 -3
- package/dist/components/form/checkbox.js.map +1 -1
- package/dist/components/form/date-picker.d.ts.map +1 -1
- package/dist/components/form/date-picker.js +5 -3
- package/dist/components/form/date-picker.js.map +1 -1
- package/dist/components/form/description.d.ts.map +1 -1
- package/dist/components/form/description.js +2 -2
- package/dist/components/form/description.js.map +1 -1
- package/dist/components/form/dropdown.d.ts.map +1 -1
- package/dist/components/form/dropdown.js +84 -80
- package/dist/components/form/dropdown.js.map +1 -1
- package/dist/components/form/file-autocomplete.d.ts +3 -6
- package/dist/components/form/file-autocomplete.d.ts.map +1 -1
- package/dist/components/form/file-autocomplete.js +61 -66
- package/dist/components/form/file-autocomplete.js.map +1 -1
- package/dist/components/form/file-picker.d.ts.map +1 -1
- package/dist/components/form/file-picker.js +33 -30
- package/dist/components/form/file-picker.js.map +1 -1
- package/dist/components/form/form-end.d.ts.map +1 -1
- package/dist/components/form/form-end.js +21 -1
- package/dist/components/form/form-end.js.map +1 -1
- package/dist/components/form/form-type-only.d.ts +174 -0
- package/dist/components/form/form-type-only.d.ts.map +1 -0
- package/dist/components/form/form-type-only.js +2 -0
- package/dist/components/form/form-type-only.js.map +1 -0
- package/dist/components/form/index.d.ts +3 -1
- package/dist/components/form/index.d.ts.map +1 -1
- package/dist/components/form/index.js +100 -28
- package/dist/components/form/index.js.map +1 -1
- package/dist/components/form/password-field.d.ts.map +1 -1
- package/dist/components/form/password-field.js +5 -3
- package/dist/components/form/password-field.js.map +1 -1
- package/dist/components/form/text-area.d.ts.map +1 -1
- package/dist/components/form/text-area.js +5 -3
- package/dist/components/form/text-area.js.map +1 -1
- package/dist/components/form/text-field.d.ts.map +1 -1
- package/dist/components/form/text-field.js +6 -4
- package/dist/components/form/text-field.js.map +1 -1
- package/dist/components/form/types.d.ts +5 -0
- package/dist/components/form/types.d.ts.map +1 -1
- package/dist/components/form/use-form-handling.d.ts +4 -0
- package/dist/components/form/use-form-handling.d.ts.map +1 -0
- package/dist/components/form/use-form-handling.js +37 -0
- package/dist/components/form/use-form-handling.js.map +1 -0
- package/dist/components/form/with-left-border.d.ts +2 -1
- package/dist/components/form/with-left-border.d.ts.map +1 -1
- package/dist/components/form/with-left-border.js +27 -3
- package/dist/components/form/with-left-border.js.map +1 -1
- package/dist/components/icon.d.ts +1 -0
- package/dist/components/icon.d.ts.map +1 -1
- package/dist/components/icon.js +24 -8
- package/dist/components/icon.js.map +1 -1
- package/dist/components/list.d.ts +2 -2
- package/dist/components/list.d.ts.map +1 -1
- package/dist/components/list.js +140 -62
- package/dist/components/list.js.map +1 -1
- package/dist/components/loading-bar.d.ts.map +1 -1
- package/dist/components/loading-bar.js +2 -2
- package/dist/components/loading-bar.js.map +1 -1
- package/dist/components/loading-text.d.ts +8 -0
- package/dist/components/loading-text.d.ts.map +1 -0
- package/dist/components/loading-text.js +58 -0
- package/dist/components/loading-text.js.map +1 -0
- package/dist/descendants.js +1 -1
- package/dist/descendants.js.map +1 -1
- package/dist/dev-ui.d.ts +7 -0
- package/dist/dev-ui.d.ts.map +1 -0
- package/dist/dev-ui.js +118 -0
- package/dist/dev-ui.js.map +1 -0
- package/dist/environment.d.ts +63 -0
- package/dist/environment.d.ts.map +1 -0
- package/dist/environment.js +189 -0
- package/dist/environment.js.map +1 -0
- package/dist/examples/datepicker.d.ts +2 -0
- package/dist/examples/datepicker.d.ts.map +1 -0
- package/dist/examples/datepicker.js +344 -0
- package/dist/examples/datepicker.js.map +1 -0
- package/dist/examples/file-autocomplete.vitest.d.ts +2 -0
- package/dist/examples/file-autocomplete.vitest.d.ts.map +1 -0
- package/dist/examples/file-autocomplete.vitest.js +223 -0
- package/dist/examples/file-autocomplete.vitest.js.map +1 -0
- package/dist/examples/form-basic-arrow-keys.vitest.d.ts +2 -0
- package/dist/examples/form-basic-arrow-keys.vitest.d.ts.map +1 -0
- package/dist/examples/form-basic-arrow-keys.vitest.js +46 -0
- package/dist/examples/form-basic-arrow-keys.vitest.js.map +1 -0
- package/dist/examples/form-basic.vitest.d.ts +2 -0
- package/dist/examples/form-basic.vitest.d.ts.map +1 -0
- package/dist/examples/form-basic.vitest.js +630 -0
- package/dist/examples/form-basic.vitest.js.map +1 -0
- package/dist/examples/form-dropdown-with-sections.d.ts +2 -0
- package/dist/examples/form-dropdown-with-sections.d.ts.map +1 -0
- package/dist/examples/form-dropdown-with-sections.js +13 -0
- package/dist/examples/form-dropdown-with-sections.js.map +1 -0
- package/dist/examples/form-dropdown-with-sections.vitest.d.ts +2 -0
- package/dist/examples/form-dropdown-with-sections.vitest.d.ts.map +1 -0
- package/dist/examples/form-dropdown-with-sections.vitest.js +75 -0
- package/dist/examples/form-dropdown-with-sections.vitest.js.map +1 -0
- package/dist/examples/form-dropdown.vitest.d.ts +2 -0
- package/dist/examples/form-dropdown.vitest.d.ts.map +1 -0
- package/dist/examples/form-dropdown.vitest.js +854 -0
- package/dist/examples/form-dropdown.vitest.js.map +1 -0
- package/dist/examples/form-multiselect-dropdown.d.ts +2 -0
- package/dist/examples/form-multiselect-dropdown.d.ts.map +1 -0
- package/dist/examples/form-multiselect-dropdown.js +13 -0
- package/dist/examples/form-multiselect-dropdown.js.map +1 -0
- package/dist/examples/form-scroll.d.ts.map +1 -1
- package/dist/examples/form-scroll.js +7 -1
- package/dist/examples/form-scroll.js.map +1 -1
- package/dist/examples/form-scroll.vitest.d.ts +2 -0
- package/dist/examples/form-scroll.vitest.d.ts.map +1 -0
- package/dist/examples/form-scroll.vitest.js +211 -0
- package/dist/examples/form-scroll.vitest.js.map +1 -0
- package/dist/examples/form-tagpicker.vitest.d.ts +2 -0
- package/dist/examples/form-tagpicker.vitest.d.ts.map +1 -0
- package/dist/examples/form-tagpicker.vitest.js +736 -0
- package/dist/examples/form-tagpicker.vitest.js.map +1 -0
- package/dist/examples/internal/descendants-filtering.js +1 -1
- package/dist/examples/internal/descendants-filtering.js.map +1 -1
- package/dist/examples/internal/descendants.js +1 -1
- package/dist/examples/internal/descendants.js.map +1 -1
- package/dist/examples/internal/nested-boxes.d.ts +2 -0
- package/dist/examples/internal/nested-boxes.d.ts.map +1 -0
- package/dist/examples/internal/nested-boxes.js +7 -0
- package/dist/examples/internal/nested-boxes.js.map +1 -0
- package/dist/examples/internal/rhf-custom-ref.js +2 -2
- package/dist/examples/internal/rhf-custom-ref.js.map +1 -1
- package/dist/examples/internal/scrollbox-demo.js +3 -22
- package/dist/examples/internal/scrollbox-demo.js.map +1 -1
- package/dist/examples/internal/scrollbox-descendants.d.ts +2 -0
- package/dist/examples/internal/scrollbox-descendants.d.ts.map +1 -0
- package/dist/examples/internal/scrollbox-descendants.js +83 -0
- package/dist/examples/internal/scrollbox-descendants.js.map +1 -0
- package/dist/examples/internal/scrollbox-with-descendants.js +4 -8
- package/dist/examples/internal/scrollbox-with-descendants.js.map +1 -1
- package/dist/examples/internal/simple-scrollbox.vitest.d.ts +2 -0
- package/dist/examples/internal/simple-scrollbox.vitest.d.ts.map +1 -0
- package/dist/examples/internal/simple-scrollbox.vitest.js +96 -0
- package/dist/examples/internal/simple-scrollbox.vitest.js.map +1 -0
- package/dist/examples/internal/unicode-square-repro.d.ts +2 -0
- package/dist/examples/internal/unicode-square-repro.d.ts.map +1 -0
- package/dist/examples/internal/unicode-square-repro.js +7 -0
- package/dist/examples/internal/unicode-square-repro.js.map +1 -0
- package/dist/examples/list-detail-metadata.d.ts +2 -0
- package/dist/examples/list-detail-metadata.d.ts.map +1 -0
- package/dist/examples/list-detail-metadata.js +8 -0
- package/dist/examples/list-detail-metadata.js.map +1 -0
- package/dist/examples/list-dropdown-default.vitest.d.ts +2 -0
- package/dist/examples/list-dropdown-default.vitest.d.ts.map +1 -0
- package/dist/examples/list-dropdown-default.vitest.js +234 -0
- package/dist/examples/list-dropdown-default.vitest.js.map +1 -0
- package/dist/examples/list-fetch-data.vitest.d.ts +2 -0
- package/dist/examples/list-fetch-data.vitest.d.ts.map +1 -0
- package/dist/examples/list-fetch-data.vitest.js +111 -0
- package/dist/examples/list-fetch-data.vitest.js.map +1 -0
- package/dist/examples/list-filter-navigation.d.ts +2 -0
- package/dist/examples/list-filter-navigation.d.ts.map +1 -0
- package/dist/examples/list-filter-navigation.js +8 -0
- package/dist/examples/list-filter-navigation.js.map +1 -0
- package/dist/examples/list-scrollbox.vitest.d.ts +2 -0
- package/dist/examples/list-scrollbox.vitest.d.ts.map +1 -0
- package/dist/examples/list-scrollbox.vitest.js +93 -0
- package/dist/examples/list-scrollbox.vitest.js.map +1 -0
- package/dist/examples/list-with-detail-long.d.ts +2 -0
- package/dist/examples/list-with-detail-long.d.ts.map +1 -0
- package/dist/examples/list-with-detail-long.js +53 -0
- package/dist/examples/list-with-detail-long.js.map +1 -0
- package/dist/examples/list-with-detail.vitest.d.ts +2 -0
- package/dist/examples/list-with-detail.vitest.d.ts.map +1 -0
- package/dist/examples/list-with-detail.vitest.js +434 -0
- package/dist/examples/list-with-detail.vitest.js.map +1 -0
- package/dist/examples/list-with-dropdown.vitest.d.ts +2 -0
- package/dist/examples/list-with-dropdown.vitest.d.ts.map +1 -0
- package/dist/examples/list-with-dropdown.vitest.js +337 -0
- package/dist/examples/list-with-dropdown.vitest.js.map +1 -0
- package/dist/examples/list-with-sections.js +5 -1
- package/dist/examples/list-with-sections.js.map +1 -1
- package/dist/examples/list-with-sections.vitest.d.ts +2 -0
- package/dist/examples/list-with-sections.vitest.d.ts.map +1 -0
- package/dist/examples/list-with-sections.vitest.js +601 -0
- package/dist/examples/list-with-sections.vitest.js.map +1 -0
- package/dist/examples/scrollbox-vertical-centering.d.ts +6 -0
- package/dist/examples/scrollbox-vertical-centering.d.ts.map +1 -0
- package/dist/examples/scrollbox-vertical-centering.js +17 -0
- package/dist/examples/scrollbox-vertical-centering.js.map +1 -0
- package/dist/examples/simple-file-picker.vitest.d.ts +2 -0
- package/dist/examples/simple-file-picker.vitest.d.ts.map +1 -0
- package/dist/examples/simple-file-picker.vitest.js +678 -0
- package/dist/examples/simple-file-picker.vitest.js.map +1 -0
- package/dist/examples/simple-grid.vitest.d.ts +2 -0
- package/dist/examples/simple-grid.vitest.d.ts.map +1 -0
- package/dist/examples/simple-grid.vitest.js +521 -0
- package/dist/examples/simple-grid.vitest.js.map +1 -0
- package/dist/examples/simple-navigation.js +10 -4
- package/dist/examples/simple-navigation.js.map +1 -1
- package/dist/examples/simple-navigation.vitest.d.ts +2 -0
- package/dist/examples/simple-navigation.vitest.d.ts.map +1 -0
- package/dist/examples/simple-navigation.vitest.js +718 -0
- package/dist/examples/simple-navigation.vitest.js.map +1 -0
- package/dist/examples/store.vitest.d.ts +2 -0
- package/dist/examples/store.vitest.d.ts.map +1 -0
- package/dist/examples/store.vitest.js +69 -0
- package/dist/examples/store.vitest.js.map +1 -0
- package/dist/extensions/dev.d.ts +4 -2
- package/dist/extensions/dev.d.ts.map +1 -1
- package/dist/extensions/dev.js +61 -10
- package/dist/extensions/dev.js.map +1 -1
- package/dist/extensions/dev.vitest.d.ts +2 -0
- package/dist/extensions/dev.vitest.d.ts.map +1 -0
- package/dist/extensions/dev.vitest.js +197 -0
- package/dist/extensions/dev.vitest.js.map +1 -0
- package/dist/extensions/home.d.ts.map +1 -1
- package/dist/extensions/home.js +3 -0
- package/dist/extensions/home.js.map +1 -1
- package/dist/home-command.d.ts +8 -0
- package/dist/home-command.d.ts.map +1 -0
- package/dist/home-command.js +181 -0
- package/dist/home-command.js.map +1 -0
- package/dist/hover-repro.d.ts +2 -0
- package/dist/hover-repro.d.ts.map +1 -0
- package/dist/hover-repro.js +20 -0
- package/dist/hover-repro.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/dialog.d.ts +1 -0
- package/dist/internal/dialog.d.ts.map +1 -1
- package/dist/internal/dialog.js +27 -18
- package/dist/internal/dialog.js.map +1 -1
- package/dist/internal/navigation.d.ts +9 -1
- package/dist/internal/navigation.d.ts.map +1 -1
- package/dist/internal/navigation.js +5 -5
- package/dist/internal/navigation.js.map +1 -1
- package/dist/internal/offscreen.d.ts +6 -0
- package/dist/internal/offscreen.d.ts.map +1 -0
- package/dist/internal/offscreen.js +10 -0
- package/dist/internal/offscreen.js.map +1 -0
- package/dist/internal/providers.d.ts.map +1 -1
- package/dist/internal/providers.js +2 -2
- package/dist/internal/providers.js.map +1 -1
- package/dist/internal/scrollbox.d.ts +1 -10
- package/dist/internal/scrollbox.d.ts.map +1 -1
- package/dist/internal/scrollbox.js +2 -1
- package/dist/internal/scrollbox.js.map +1 -1
- package/dist/localstorage.d.ts +13 -0
- package/dist/localstorage.d.ts.map +1 -0
- package/dist/localstorage.js +190 -0
- package/dist/localstorage.js.map +1 -0
- package/dist/oauth.d.ts +142 -0
- package/dist/oauth.d.ts.map +1 -0
- package/dist/oauth.js +551 -0
- package/dist/oauth.js.map +1 -0
- package/dist/preferences.d.ts +23 -0
- package/dist/preferences.d.ts.map +1 -0
- package/dist/preferences.js +105 -0
- package/dist/preferences.js.map +1 -0
- package/dist/state.d.ts +2 -0
- package/dist/state.d.ts.map +1 -1
- package/dist/state.js +3 -0
- package/dist/state.js.map +1 -1
- package/dist/store.d.ts +21 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/store.js +84 -0
- package/dist/store.js.map +1 -0
- package/dist/swift-loader.d.ts +3 -0
- package/dist/swift-loader.d.ts.map +1 -0
- package/dist/swift-loader.js +193 -0
- package/dist/swift-loader.js.map +1 -0
- package/dist/swift-runtime.d.ts +2 -0
- package/dist/swift-runtime.d.ts.map +1 -0
- package/dist/swift-runtime.js +27 -0
- package/dist/swift-runtime.js.map +1 -0
- package/dist/toast.d.ts +44 -0
- package/dist/toast.d.ts.map +1 -0
- package/dist/toast.js +221 -0
- package/dist/toast.js.map +1 -0
- package/dist/utils/file-system.d.ts +9 -0
- package/dist/utils/file-system.d.ts.map +1 -1
- package/dist/utils/file-system.js +49 -0
- package/dist/utils/file-system.js.map +1 -1
- package/dist/utils/run-command.d.ts +25 -1
- package/dist/utils/run-command.d.ts.map +1 -1
- package/dist/utils/run-command.js +47 -4
- package/dist/utils/run-command.js.map +1 -1
- package/dist/window.d.ts +12 -0
- package/dist/window.d.ts.map +1 -0
- package/dist/window.js +48 -0
- package/dist/window.js.map +1 -0
- package/package.json +13 -11
- package/src/apis/browser-extension.tsx +29 -0
- package/src/apis/localstorage.test.ts +14 -6
- package/src/apis/localstorage.tsx +8 -5
- package/src/apis/oauth.tsx +5 -1
- package/src/apis/preferences.tsx +48 -22
- package/src/build.test.tsx +52 -0
- package/src/build.tsx +2 -1
- package/src/cli.tsx +80 -39
- package/src/compile.tsx +24 -6
- package/src/components/actions.tsx +94 -32
- package/src/components/detail.tsx +4 -0
- package/src/components/dropdown.tsx +47 -14
- package/src/components/extension-preferences.tsx +44 -16
- package/src/components/form/checkbox.tsx +12 -6
- package/src/components/form/date-picker.tsx +12 -6
- package/src/components/form/description.tsx +7 -2
- package/src/components/form/dropdown.tsx +131 -119
- package/src/components/form/file-autocomplete.tsx +90 -108
- package/src/components/form/file-picker.tsx +54 -43
- package/src/components/form/form-end.tsx +23 -2
- package/src/components/form/index.tsx +152 -34
- package/src/components/form/password-field.tsx +12 -6
- package/src/components/form/text-area.tsx +13 -6
- package/src/components/form/text-field.tsx +13 -6
- package/src/components/form/types.tsx +6 -0
- package/src/components/form/with-left-border.tsx +41 -8
- package/src/components/icon.tsx +27 -8
- package/src/components/list.tsx +193 -74
- package/src/components/loading-bar.tsx +3 -2
- package/src/components/loading-text.tsx +79 -0
- package/src/descendants.tsx +1 -0
- package/src/examples/file-autocomplete.vitest.tsx +130 -125
- package/src/examples/form-basic.vitest.tsx +376 -176
- package/src/examples/form-dropdown.vitest.tsx +126 -126
- package/src/examples/form-scroll.tsx +2 -0
- package/src/examples/form-scroll.vitest.tsx +58 -58
- package/src/examples/form-tagpicker.vitest.tsx +99 -99
- package/src/examples/internal/descendants-filtering.tsx +1 -0
- package/src/examples/internal/descendants.tsx +1 -0
- package/src/examples/internal/rhf-custom-ref.tsx +2 -0
- package/src/examples/internal/scrollbox-demo.tsx +3 -27
- package/src/examples/internal/scrollbox-with-descendants.tsx +4 -7
- package/src/examples/internal/simple-scrollbox.vitest.tsx +7 -5
- package/src/examples/list-detail-metadata.tsx +49 -0
- package/src/examples/list-detail-metadata.vitest.tsx +88 -0
- package/src/examples/list-dropdown-default.vitest.tsx +51 -51
- package/src/examples/list-fetch-data.vitest.tsx +4 -4
- package/src/examples/list-scrollbox.vitest.tsx +73 -14
- package/src/examples/list-with-detail-long.tsx +70 -0
- package/src/examples/list-with-detail.vitest.tsx +198 -92
- package/src/examples/list-with-dropdown.vitest.tsx +53 -53
- package/src/examples/list-with-sections.tsx +1 -0
- package/src/examples/list-with-sections.vitest.tsx +213 -89
- package/src/examples/list-with-toast.vitest.tsx +4 -4
- package/src/examples/simple-file-picker.vitest.tsx +61 -471
- package/src/examples/simple-grid.vitest.tsx +238 -233
- package/src/examples/simple-navigation.tsx +15 -7
- package/src/examples/simple-navigation.vitest.tsx +121 -210
- package/src/examples/store.vitest.tsx +1 -1
- package/src/examples/swift-extension.vitest.tsx +148 -0
- package/src/examples/synonyms.vitest.tsx +159 -0
- package/src/extensions/dev.tsx +74 -7
- package/src/extensions/dev.vitest.tsx +97 -31
- package/src/extensions/home.tsx +6 -0
- package/src/index.tsx +3 -0
- package/src/internal/dialog.tsx +43 -30
- package/src/internal/navigation.tsx +3 -1
- package/src/internal/offscreen.tsx +15 -0
- package/src/internal/providers.tsx +4 -2
- package/src/internal/scrollbox.tsx +4 -8
- package/src/keyboard.test.tsx +69 -0
- package/src/state.tsx +7 -0
- package/src/swift-loader.tsx +239 -0
- package/src/swift-runtime.tsx +36 -0
- package/src/utils/file-system.ts +61 -0
- package/src/utils/run-command.tsx +75 -6
|
@@ -24,7 +24,7 @@ test('list with detail view display and navigation', async () => {
|
|
|
24
24
|
text.includes('›bulbasaur') &&
|
|
25
25
|
text.includes('Grass / Poison') &&
|
|
26
26
|
text.includes('Height: 0.7m') &&
|
|
27
|
-
|
|
27
|
+
/↵.*navigate/i.test(text)
|
|
28
28
|
)
|
|
29
29
|
},
|
|
30
30
|
})
|
|
@@ -39,7 +39,7 @@ test('list with detail view display and navigation', async () => {
|
|
|
39
39
|
|
|
40
40
|
›bulbasaur #001
|
|
41
41
|
ivysaur #002 │ bulbasaur ▲
|
|
42
|
-
charmander #004 │
|
|
42
|
+
charmander #004 │ ▀
|
|
43
43
|
charmeleon #005 │ Illustration
|
|
44
44
|
squirtle #007 │
|
|
45
45
|
wartortle #008 │ Types
|
|
@@ -47,18 +47,18 @@ test('list with detail view display and navigation', async () => {
|
|
|
47
47
|
│
|
|
48
48
|
│ Characteristics
|
|
49
49
|
│ - Height: 0.7m
|
|
50
|
-
│ -
|
|
51
|
-
│
|
|
52
|
-
│ Abilities
|
|
53
|
-
│ - Chlorophyll
|
|
54
|
-
│ - Overgrow
|
|
55
|
-
│ ─────────────────────────────────
|
|
50
|
+
│ - ───────────────
|
|
56
51
|
│
|
|
57
|
-
│
|
|
52
|
+
│ Characteristics:
|
|
53
|
+
│ Height:
|
|
54
|
+
│ 0.7m
|
|
58
55
|
│
|
|
59
|
-
│ Grass:
|
|
60
56
|
│ ─────────────────
|
|
61
|
-
|
|
57
|
+
│ Weight:
|
|
58
|
+
│ 6.9kg
|
|
59
|
+
│
|
|
60
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
61
|
+
│ Abilities: ▼"
|
|
62
62
|
`)
|
|
63
63
|
|
|
64
64
|
await session.press('down')
|
|
@@ -76,7 +76,7 @@ test('list with detail view display and navigation', async () => {
|
|
|
76
76
|
|
|
77
77
|
bulbasaur #001
|
|
78
78
|
›ivysaur #002 │ ivysaur ▲
|
|
79
|
-
charmander #004 │
|
|
79
|
+
charmander #004 │ ▀
|
|
80
80
|
charmeleon #005 │ Illustration
|
|
81
81
|
squirtle #007 │
|
|
82
82
|
wartortle #008 │ Types
|
|
@@ -94,8 +94,8 @@ test('list with detail view display and navigation', async () => {
|
|
|
94
94
|
│ Types:
|
|
95
95
|
│
|
|
96
96
|
│ Grass:
|
|
97
|
-
|
|
98
|
-
|
|
97
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
98
|
+
│ ▼"
|
|
99
99
|
`)
|
|
100
100
|
|
|
101
101
|
await session.press('down')
|
|
@@ -129,8 +129,8 @@ test('list with detail view display and navigation', async () => {
|
|
|
129
129
|
│ Types:
|
|
130
130
|
│
|
|
131
131
|
│ Fire:
|
|
132
|
-
|
|
133
|
-
|
|
132
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
133
|
+
│ ▼"
|
|
134
134
|
`)
|
|
135
135
|
|
|
136
136
|
await session.press(['ctrl', 'k'])
|
|
@@ -146,26 +146,27 @@ test('list with detail view display and navigation', async () => {
|
|
|
146
146
|
|
|
147
147
|
bulbasaur #001
|
|
148
148
|
ivysaur #002 │ charmander ▲
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
149
|
+
›charmander #004 │ █
|
|
150
|
+
c┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
151
|
+
s┃ ┃
|
|
152
|
+
w┃ esc ┃
|
|
153
|
+
┃ ┃
|
|
154
|
+
┃ Search actions... ┃
|
|
155
|
+
┃ ┃
|
|
156
|
+
┃ ›Toggle Detail ┃
|
|
157
|
+
┃ View on Pokemon.com ┃
|
|
158
|
+
┃ ┃
|
|
159
|
+
┃ ┃
|
|
160
|
+
┃ ┃
|
|
161
|
+
┃ ┃
|
|
162
|
+
┃ ┃
|
|
163
|
+
┃ ┃
|
|
164
|
+
┃ ┃
|
|
165
|
+
┃ ┃
|
|
166
|
+
┃ ┃
|
|
167
|
+
↵┃ ↵ select ↑↓ navigate ┃
|
|
168
|
+
┃ ┃
|
|
169
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
169
170
|
`)
|
|
170
171
|
|
|
171
172
|
await session.press('enter')
|
|
@@ -204,7 +205,7 @@ test('list with detail view display and navigation', async () => {
|
|
|
204
205
|
|
|
205
206
|
|
|
206
207
|
|
|
207
|
-
↵
|
|
208
|
+
↵ toggle detail ↑↓ navigate ^k actions"
|
|
208
209
|
`)
|
|
209
210
|
|
|
210
211
|
await session.press(['ctrl', 'k'])
|
|
@@ -243,8 +244,8 @@ test('list with detail view display and navigation', async () => {
|
|
|
243
244
|
│ Types:
|
|
244
245
|
│
|
|
245
246
|
│ Fire:
|
|
246
|
-
|
|
247
|
-
|
|
247
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
248
|
+
│ ▼"
|
|
248
249
|
`)
|
|
249
250
|
}, 15000)
|
|
250
251
|
|
|
@@ -271,27 +272,27 @@ test('list detail view search functionality', async () => {
|
|
|
271
272
|
char
|
|
272
273
|
|
|
273
274
|
charmander #004
|
|
274
|
-
charmeleon #005 │
|
|
275
|
-
│
|
|
276
|
-
│
|
|
277
|
-
│ Types: █
|
|
278
|
-
│ █
|
|
279
|
-
│ Grass: ▀
|
|
280
|
-
│ ─────────────────
|
|
275
|
+
charmeleon #005 │ bulbasaur ▲
|
|
276
|
+
│ ▀
|
|
277
|
+
│ Illustration
|
|
281
278
|
│
|
|
282
|
-
│
|
|
283
|
-
│
|
|
279
|
+
│ Types
|
|
280
|
+
│ Grass / Poison
|
|
284
281
|
│
|
|
285
|
-
│ Characteristics
|
|
286
|
-
│ Height:
|
|
282
|
+
│ Characteristics
|
|
283
|
+
│ - Height: 0.7m
|
|
284
|
+
│ - Weight: 6.9kg
|
|
287
285
|
│
|
|
288
|
-
│
|
|
289
|
-
│
|
|
286
|
+
│ Abilities
|
|
287
|
+
│ - Chlorophyll
|
|
288
|
+
│ - Overgrow
|
|
289
|
+
│ ─────────────────────────────────
|
|
290
290
|
│
|
|
291
|
-
│
|
|
292
|
-
│ Abilities:
|
|
291
|
+
│ Types:
|
|
293
292
|
│
|
|
294
|
-
|
|
293
|
+
│ Grass:
|
|
294
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
295
|
+
│ ▼"
|
|
295
296
|
`)
|
|
296
297
|
|
|
297
298
|
await session.press('backspace')
|
|
@@ -315,27 +316,27 @@ test('list detail view search functionality', async () => {
|
|
|
315
316
|
water
|
|
316
317
|
|
|
317
318
|
|
|
318
|
-
│
|
|
319
|
+
│ wartortle ▲
|
|
319
320
|
│ █
|
|
320
321
|
│ Illustration
|
|
321
322
|
│
|
|
322
323
|
│ Types
|
|
323
|
-
│
|
|
324
|
+
│ Water
|
|
324
325
|
│
|
|
325
326
|
│ Characteristics
|
|
326
|
-
│ - Height:
|
|
327
|
-
│ - Weight:
|
|
327
|
+
│ - Height: 1m
|
|
328
|
+
│ - Weight: 22.5kg
|
|
328
329
|
│
|
|
329
330
|
│ Abilities
|
|
330
|
-
│ -
|
|
331
|
-
│ -
|
|
331
|
+
│ - Torrent
|
|
332
|
+
│ - Rain Dish
|
|
332
333
|
│ ─────────────────────────────────
|
|
333
334
|
│
|
|
334
335
|
│ Types:
|
|
335
336
|
│
|
|
336
|
-
│
|
|
337
|
-
|
|
338
|
-
|
|
337
|
+
│ Water:
|
|
338
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
339
|
+
│ ▼"
|
|
339
340
|
`)
|
|
340
341
|
|
|
341
342
|
await session.press('down')
|
|
@@ -350,27 +351,27 @@ test('list detail view search functionality', async () => {
|
|
|
350
351
|
water
|
|
351
352
|
|
|
352
353
|
|
|
353
|
-
│
|
|
354
|
+
│ wartortle ▲
|
|
354
355
|
│ █
|
|
355
356
|
│ Illustration
|
|
356
357
|
│
|
|
357
358
|
│ Types
|
|
358
|
-
│
|
|
359
|
+
│ Water
|
|
359
360
|
│
|
|
360
361
|
│ Characteristics
|
|
361
|
-
│ - Height:
|
|
362
|
-
│ - Weight:
|
|
362
|
+
│ - Height: 1m
|
|
363
|
+
│ - Weight: 22.5kg
|
|
363
364
|
│
|
|
364
365
|
│ Abilities
|
|
365
|
-
│ -
|
|
366
|
-
│ -
|
|
366
|
+
│ - Torrent
|
|
367
|
+
│ - Rain Dish
|
|
367
368
|
│ ─────────────────────────────────
|
|
368
369
|
│
|
|
369
370
|
│ Types:
|
|
370
371
|
│
|
|
371
|
-
│
|
|
372
|
-
|
|
373
|
-
|
|
372
|
+
│ Water:
|
|
373
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
374
|
+
│ ▼"
|
|
374
375
|
`)
|
|
375
376
|
}, 10000)
|
|
376
377
|
|
|
@@ -397,27 +398,27 @@ test('list detail metadata rendering', async () => {
|
|
|
397
398
|
Search Pokemon...
|
|
398
399
|
|
|
399
400
|
›bulbasaur #001
|
|
400
|
-
ivysaur #002 │
|
|
401
|
-
charmander #004 │
|
|
402
|
-
charmeleon #005 │
|
|
403
|
-
squirtle #007 │
|
|
404
|
-
wartortle #008 │
|
|
405
|
-
│ Grass
|
|
406
|
-
│ ─────────────────
|
|
407
|
-
│
|
|
408
|
-
│ Poison:
|
|
409
|
-
│ ─────────────────
|
|
401
|
+
ivysaur #002 │ bulbasaur ▲
|
|
402
|
+
charmander #004 │ ▀
|
|
403
|
+
charmeleon #005 │ Illustration
|
|
404
|
+
squirtle #007 │
|
|
405
|
+
wartortle #008 │ Types
|
|
406
|
+
│ Grass / Poison
|
|
410
407
|
│
|
|
411
|
-
│ Characteristics
|
|
412
|
-
│ Height:
|
|
408
|
+
│ Characteristics
|
|
409
|
+
│ - Height: 0.7m
|
|
410
|
+
│ - Weight: 6.9kg
|
|
413
411
|
│
|
|
414
|
-
│
|
|
415
|
-
│
|
|
412
|
+
│ Abilities
|
|
413
|
+
│ - Chlorophyll
|
|
414
|
+
│ - Overgrow
|
|
415
|
+
│ ─────────────────────────────────
|
|
416
416
|
│
|
|
417
|
-
│
|
|
418
|
-
│ Abilities:
|
|
417
|
+
│ Types:
|
|
419
418
|
│
|
|
420
|
-
|
|
419
|
+
│ Grass:
|
|
420
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
421
|
+
│ ▼"
|
|
421
422
|
`)
|
|
422
423
|
|
|
423
424
|
await session.press('down')
|
|
@@ -458,7 +459,112 @@ test('list detail metadata rendering', async () => {
|
|
|
458
459
|
│ Types:
|
|
459
460
|
│
|
|
460
461
|
│ Water:
|
|
461
|
-
|
|
462
|
-
|
|
462
|
+
↵toggle detail ↑↓ navigate ^kactions │ ─────────────────
|
|
463
|
+
│ ▼"
|
|
463
464
|
`)
|
|
464
465
|
}, 10000)
|
|
466
|
+
|
|
467
|
+
test('list with detail layout consistency - short vs long detail content', async () => {
|
|
468
|
+
// Use the long-detail example to test layout shift with very long content
|
|
469
|
+
const testSession = await launchTerminal({
|
|
470
|
+
command: 'bun',
|
|
471
|
+
args: ['src/examples/list-with-detail-long.tsx'],
|
|
472
|
+
cols: 80,
|
|
473
|
+
rows: 25,
|
|
474
|
+
})
|
|
475
|
+
|
|
476
|
+
// First item has SHORT detail - should fit without overflow
|
|
477
|
+
const shortDetailSnapshot = await testSession.text({
|
|
478
|
+
waitFor: (text) => {
|
|
479
|
+
return (
|
|
480
|
+
text.includes('›Short Detail') &&
|
|
481
|
+
text.includes('Brief content')
|
|
482
|
+
)
|
|
483
|
+
},
|
|
484
|
+
})
|
|
485
|
+
|
|
486
|
+
// Navigate to second item which has LONG detail - will overflow
|
|
487
|
+
await testSession.press('down')
|
|
488
|
+
|
|
489
|
+
const longDetailSnapshot = await testSession.text({
|
|
490
|
+
waitFor: (text) => {
|
|
491
|
+
return (
|
|
492
|
+
text.includes('›Long Detail') &&
|
|
493
|
+
text.includes('extensive')
|
|
494
|
+
)
|
|
495
|
+
},
|
|
496
|
+
})
|
|
497
|
+
|
|
498
|
+
testSession.close()
|
|
499
|
+
|
|
500
|
+
// Compare list item positions - they should be consistent
|
|
501
|
+
expect(shortDetailSnapshot).toMatchInlineSnapshot(`
|
|
502
|
+
"
|
|
503
|
+
|
|
504
|
+
|
|
505
|
+
Detail Length Test ───────────────────────────────────────────────────────
|
|
506
|
+
|
|
507
|
+
Search...
|
|
508
|
+
|
|
509
|
+
›Short Detail
|
|
510
|
+
Long Detail │ Brief content
|
|
511
|
+
Another Item │
|
|
512
|
+
│ This is short.
|
|
513
|
+
│
|
|
514
|
+
│
|
|
515
|
+
│
|
|
516
|
+
│
|
|
517
|
+
│
|
|
518
|
+
│
|
|
519
|
+
│
|
|
520
|
+
│
|
|
521
|
+
│
|
|
522
|
+
│
|
|
523
|
+
│
|
|
524
|
+
│
|
|
525
|
+
↑↓ navigate ^k actions │"
|
|
526
|
+
`)
|
|
527
|
+
expect(longDetailSnapshot).toMatchInlineSnapshot(`
|
|
528
|
+
"
|
|
529
|
+
|
|
530
|
+
|
|
531
|
+
Detail Length Test ───────────────────────────────────────────────────────
|
|
532
|
+
|
|
533
|
+
Search...
|
|
534
|
+
|
|
535
|
+
Short Detail
|
|
536
|
+
›Long Detail │ This item has extensive detail ▲
|
|
537
|
+
Another Item │ content ▀
|
|
538
|
+
│
|
|
539
|
+
│ Section 1
|
|
540
|
+
│ This is a very long description
|
|
541
|
+
│ that contains multiple paragraphs
|
|
542
|
+
│ and sections to test how the
|
|
543
|
+
│ layout behaves when the detail
|
|
544
|
+
│ panel content overflows.
|
|
545
|
+
│
|
|
546
|
+
│ Section 2
|
|
547
|
+
│ More content here to ensure we
|
|
548
|
+
│ have enough text to cause
|
|
549
|
+
│ vertical overflow in the detail
|
|
550
|
+
│ panel scrollbox.
|
|
551
|
+
↑↓ navigate ^k actions │ ▼"
|
|
552
|
+
`)
|
|
553
|
+
|
|
554
|
+
// Extract the LINE NUMBER (vertical position) of list items to verify no layout shift
|
|
555
|
+
const getListItemLineNumber = (snapshot: string, itemText: string) => {
|
|
556
|
+
const lines = snapshot.split('\n')
|
|
557
|
+
const lineIndex = lines.findIndex((line) => line.includes(itemText))
|
|
558
|
+
return lineIndex
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
// Check vertical position - the "Short Detail" item should be at the same line number
|
|
562
|
+
// regardless of whether the detail panel has overflow or not
|
|
563
|
+
const shortLineNum = getListItemLineNumber(shortDetailSnapshot, 'Short Detail')
|
|
564
|
+
const longLineNum = getListItemLineNumber(longDetailSnapshot, 'Short Detail')
|
|
565
|
+
|
|
566
|
+
// BUG: The list items shift vertically when detail content overflows
|
|
567
|
+
// When detail doesn't overflow: there's a blank line after navigation title
|
|
568
|
+
// When detail overflows: the blank line disappears, shifting all content up
|
|
569
|
+
expect(shortLineNum).toBe(longLineNum)
|
|
570
|
+
}, 20000)
|
|
@@ -52,7 +52,7 @@ test('list with dropdown navigation', async () => {
|
|
|
52
52
|
|
|
53
53
|
|
|
54
54
|
|
|
55
|
-
|
|
55
|
+
↑↓ navigate ^k actions"
|
|
56
56
|
`)
|
|
57
57
|
|
|
58
58
|
await session.press(['ctrl', 'p'])
|
|
@@ -62,7 +62,9 @@ test('list with dropdown navigation', async () => {
|
|
|
62
62
|
"
|
|
63
63
|
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
Search Beers ───────────────────────────────────────────────────
|
|
66
|
+
|
|
67
|
+
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
66
68
|
┃ ┃
|
|
67
69
|
┃ Select Drink Type esc ┃
|
|
68
70
|
┃ ┃
|
|
@@ -80,9 +82,7 @@ test('list with dropdown navigation', async () => {
|
|
|
80
82
|
┃ ┃
|
|
81
83
|
┃ ↵ select ↑↓ navigate ┃
|
|
82
84
|
┃ ┃
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
↵ select ↑↓ navigate ^k actions"
|
|
85
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
86
86
|
`)
|
|
87
87
|
|
|
88
88
|
const afterCtrlPSnapshot = await session.text({
|
|
@@ -94,7 +94,9 @@ test('list with dropdown navigation', async () => {
|
|
|
94
94
|
"
|
|
95
95
|
|
|
96
96
|
|
|
97
|
-
|
|
97
|
+
Search Beers ───────────────────────────────────────────────────
|
|
98
|
+
|
|
99
|
+
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
98
100
|
┃ ┃
|
|
99
101
|
┃ Select Drink Type esc ┃
|
|
100
102
|
┃ ┃
|
|
@@ -112,9 +114,7 @@ test('list with dropdown navigation', async () => {
|
|
|
112
114
|
┃ ┃
|
|
113
115
|
┃ ↵ select ↑↓ navigate ┃
|
|
114
116
|
┃ ┃
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
↵ select ↑↓ navigate ^k actions"
|
|
117
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
118
118
|
`)
|
|
119
119
|
|
|
120
120
|
await session.press('down')
|
|
@@ -124,7 +124,9 @@ test('list with dropdown navigation', async () => {
|
|
|
124
124
|
"
|
|
125
125
|
|
|
126
126
|
|
|
127
|
-
|
|
127
|
+
Search Beers ───────────────────────────────────────────────────
|
|
128
|
+
|
|
129
|
+
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
128
130
|
┃ ┃
|
|
129
131
|
┃ Select Drink Type esc ┃
|
|
130
132
|
┃ ┃
|
|
@@ -142,9 +144,7 @@ test('list with dropdown navigation', async () => {
|
|
|
142
144
|
┃ ┃
|
|
143
145
|
┃ ↵ select ↑↓ navigate ┃
|
|
144
146
|
┃ ┃
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
↵ select ↑↓ navigate ^k actions"
|
|
147
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
148
148
|
`)
|
|
149
149
|
|
|
150
150
|
await session.press('down')
|
|
@@ -154,7 +154,9 @@ test('list with dropdown navigation', async () => {
|
|
|
154
154
|
"
|
|
155
155
|
|
|
156
156
|
|
|
157
|
-
|
|
157
|
+
Search Beers ───────────────────────────────────────────────────
|
|
158
|
+
|
|
159
|
+
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
158
160
|
┃ ┃
|
|
159
161
|
┃ Select Drink Type esc ┃
|
|
160
162
|
┃ ┃
|
|
@@ -172,9 +174,7 @@ test('list with dropdown navigation', async () => {
|
|
|
172
174
|
┃ ┃
|
|
173
175
|
┃ ↵ select ↑↓ navigate ┃
|
|
174
176
|
┃ ┃
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
↵ select ↑↓ navigate ^k actions"
|
|
177
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
178
178
|
`)
|
|
179
179
|
|
|
180
180
|
await session.press('enter')
|
|
@@ -208,7 +208,7 @@ test('list with dropdown navigation', async () => {
|
|
|
208
208
|
|
|
209
209
|
|
|
210
210
|
|
|
211
|
-
|
|
211
|
+
↑↓ navigate ^k actions"
|
|
212
212
|
`)
|
|
213
213
|
}, 10000)
|
|
214
214
|
|
|
@@ -231,27 +231,27 @@ test('list with dropdown search and filter', async () => {
|
|
|
231
231
|
"
|
|
232
232
|
|
|
233
233
|
|
|
234
|
-
|
|
234
|
+
Search Beers ───────────────────────────────────────────────────
|
|
235
|
+
|
|
236
|
+
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
235
237
|
┃ ┃
|
|
236
238
|
┃ Select Drink Type esc ┃
|
|
237
239
|
┃ ┃
|
|
238
|
-
┃
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
↵ select ↑↓ navigate ^k actions"
|
|
240
|
+
┃ Search... ┃
|
|
241
|
+
┃ ┃
|
|
242
|
+
┃ ┃
|
|
243
|
+
┃ Alcoholic Beverages ┃
|
|
244
|
+
┃ ›Beer ┃
|
|
245
|
+
┃ Wine ┃
|
|
246
|
+
┃ ┃
|
|
247
|
+
┃ Non-Alcoholic ┃
|
|
248
|
+
┃ Soda ┃
|
|
249
|
+
┃ Juice ┃
|
|
250
|
+
┃ ┃
|
|
251
|
+
┃ ┃
|
|
252
|
+
┃ ↵ select ↑↓ navigate ┃
|
|
253
|
+
┃ ┃
|
|
254
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
|
255
255
|
`)
|
|
256
256
|
|
|
257
257
|
await session.text({
|
|
@@ -271,27 +271,27 @@ test('list with dropdown search and filter', async () => {
|
|
|
271
271
|
"
|
|
272
272
|
|
|
273
273
|
|
|
274
|
-
|
|
274
|
+
Search Beers ───────────────────────────────────────────────────
|
|
275
|
+
|
|
276
|
+
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
275
277
|
┃ ┃
|
|
276
278
|
┃ Select Drink Type esc ┃
|
|
277
279
|
┃ ┃
|
|
278
280
|
┃ wine ┃
|
|
279
281
|
┃ ┃
|
|
280
|
-
┃
|
|
282
|
+
┃ ›Wine ┃
|
|
281
283
|
┃ ┃
|
|
282
284
|
┃ ┃
|
|
283
285
|
┃ ↵ select ↑↓ navigate ┃
|
|
284
286
|
┃ ┃
|
|
285
|
-
┃
|
|
286
|
-
|
|
287
|
-
Orange Juice Juice
|
|
288
|
-
Apple Juice Juice
|
|
287
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ┃
|
|
288
|
+
Apple Juice Juice
|
|
289
289
|
|
|
290
290
|
|
|
291
291
|
|
|
292
292
|
|
|
293
293
|
|
|
294
|
-
|
|
294
|
+
↑↓ navigate ^k actions"
|
|
295
295
|
`)
|
|
296
296
|
|
|
297
297
|
await session.press('enter')
|
|
@@ -308,12 +308,11 @@ test('list with dropdown search and filter', async () => {
|
|
|
308
308
|
Search Beers ───────────────────────────────────────────────────
|
|
309
309
|
|
|
310
310
|
|
|
311
|
-
Search...
|
|
311
|
+
Search... Wine ▾
|
|
312
|
+
|
|
313
|
+
›Chateau Margaux Wine
|
|
314
|
+
Pinot Noir Wine
|
|
312
315
|
|
|
313
|
-
›Augustiner Helles Beer
|
|
314
|
-
Camden Hells Beer
|
|
315
|
-
Leffe Blonde Beer
|
|
316
|
-
Sierra Nevada IPA Beer
|
|
317
316
|
|
|
318
317
|
|
|
319
318
|
|
|
@@ -325,7 +324,8 @@ test('list with dropdown search and filter', async () => {
|
|
|
325
324
|
|
|
326
325
|
|
|
327
326
|
|
|
328
|
-
|
|
327
|
+
|
|
328
|
+
↑↓ navigate ^k actions"
|
|
329
329
|
`)
|
|
330
330
|
|
|
331
331
|
await session.type('pinot')
|
|
@@ -339,12 +339,12 @@ test('list with dropdown search and filter', async () => {
|
|
|
339
339
|
"
|
|
340
340
|
|
|
341
341
|
|
|
342
|
-
|
|
343
|
-
|
|
342
|
+
Search Beers ───────────────────────────────────────────────────
|
|
344
343
|
|
|
345
|
-
pinot Beer ▾
|
|
346
344
|
|
|
345
|
+
pinot Wine ▾
|
|
347
346
|
|
|
347
|
+
›Pinot Noir Wine
|
|
348
348
|
|
|
349
349
|
|
|
350
350
|
|
|
@@ -359,6 +359,6 @@ test('list with dropdown search and filter', async () => {
|
|
|
359
359
|
|
|
360
360
|
|
|
361
361
|
|
|
362
|
-
|
|
362
|
+
↑↓ navigate ^k actions"
|
|
363
363
|
`)
|
|
364
364
|
}, 10000)
|