remix 3.0.0-beta.2 → 3.0.0-beta.4
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/headers/accept-encoding.d.ts +2 -0
- package/dist/headers/accept-encoding.d.ts.map +1 -0
- package/dist/headers/accept-encoding.js +2 -0
- package/dist/headers/accept-language.d.ts +2 -0
- package/dist/headers/accept-language.d.ts.map +1 -0
- package/dist/headers/accept-language.js +2 -0
- package/dist/headers/accept.d.ts +2 -0
- package/dist/headers/accept.d.ts.map +1 -0
- package/dist/headers/accept.js +2 -0
- package/dist/headers/cache-control.d.ts +2 -0
- package/dist/headers/cache-control.d.ts.map +1 -0
- package/dist/headers/cache-control.js +2 -0
- package/dist/headers/content-disposition.d.ts +2 -0
- package/dist/headers/content-disposition.d.ts.map +1 -0
- package/dist/headers/content-disposition.js +2 -0
- package/dist/headers/content-range.d.ts +2 -0
- package/dist/headers/content-range.d.ts.map +1 -0
- package/dist/headers/content-range.js +2 -0
- package/dist/headers/content-type.d.ts +2 -0
- package/dist/headers/content-type.d.ts.map +1 -0
- package/dist/headers/content-type.js +2 -0
- package/dist/headers/cookie.d.ts +2 -0
- package/dist/headers/cookie.d.ts.map +1 -0
- package/dist/headers/cookie.js +2 -0
- package/dist/headers/if-match.d.ts +2 -0
- package/dist/headers/if-match.d.ts.map +1 -0
- package/dist/headers/if-match.js +2 -0
- package/dist/headers/if-none-match.d.ts +2 -0
- package/dist/headers/if-none-match.d.ts.map +1 -0
- package/dist/headers/if-none-match.js +2 -0
- package/dist/headers/if-range.d.ts +2 -0
- package/dist/headers/if-range.d.ts.map +1 -0
- package/dist/headers/if-range.js +2 -0
- package/dist/headers/range.d.ts +2 -0
- package/dist/headers/range.d.ts.map +1 -0
- package/dist/headers/range.js +2 -0
- package/dist/headers/raw-headers.d.ts +2 -0
- package/dist/headers/raw-headers.d.ts.map +1 -0
- package/dist/headers/raw-headers.js +2 -0
- package/dist/headers/set-cookie.d.ts +2 -0
- package/dist/headers/set-cookie.d.ts.map +1 -0
- package/dist/headers/set-cookie.js +2 -0
- package/dist/headers/vary.d.ts +2 -0
- package/dist/headers/vary.d.ts.map +1 -0
- package/dist/headers/vary.js +2 -0
- package/package.json +96 -35
- package/src/assert/README.md +11 -4
- package/src/csrf-middleware/README.md +5 -12
- package/src/data-schema/README.md +3 -9
- package/src/data-table/README.md +6 -14
- package/src/data-table-mysql/README.md +5 -11
- package/src/data-table-postgres/README.md +2 -4
- package/src/data-table-sqlite/README.md +2 -4
- package/src/fetch-proxy/README.md +1 -2
- package/src/fetch-router/README.md +115 -35
- package/src/file-storage-s3/README.md +1 -2
- package/src/form-data-middleware/README.md +1 -2
- package/src/form-data-parser/README.md +2 -4
- package/src/headers/README.md +10 -0
- package/src/headers/accept-encoding.ts +2 -0
- package/src/headers/accept-language.ts +2 -0
- package/src/headers/accept.ts +2 -0
- package/src/headers/cache-control.ts +2 -0
- package/src/headers/content-disposition.ts +2 -0
- package/src/headers/content-range.ts +2 -0
- package/src/headers/content-type.ts +2 -0
- package/src/headers/cookie.ts +2 -0
- package/src/headers/if-match.ts +2 -0
- package/src/headers/if-none-match.ts +2 -0
- package/src/headers/if-range.ts +2 -0
- package/src/headers/range.ts +2 -0
- package/src/headers/raw-headers.ts +2 -0
- package/src/headers/set-cookie.ts +2 -0
- package/src/headers/vary.ts +2 -0
- package/src/node-fetch-server/README.md +1 -2
- package/src/node-tsx/README.md +3 -8
- package/src/route-pattern/README.md +18 -13
- package/src/session-storage-redis/README.md +1 -2
- package/src/test/README.md +29 -5
- package/src/ui/anchor/README.md +11 -3
- package/src/ui/menu/README.md +26 -2
package/src/ui/menu/README.md
CHANGED
|
@@ -68,6 +68,29 @@ Use `menuLabel` when the menu surface needs a different accessible label from th
|
|
|
68
68
|
</Menu>
|
|
69
69
|
```
|
|
70
70
|
|
|
71
|
+
Use `menu.contextTrigger()` with `menu.Context` and `MenuList` when a menu should open at the right-click location of an element.
|
|
72
|
+
|
|
73
|
+
```tsx
|
|
74
|
+
import * as menu from 'remix/ui/menu'
|
|
75
|
+
import { MenuItem, MenuList } from 'remix/ui/menu'
|
|
76
|
+
|
|
77
|
+
export function FileContextMenu(handle: Handle) {
|
|
78
|
+
return () => (
|
|
79
|
+
<menu.Context label="File actions">
|
|
80
|
+
<div mix={menu.contextTrigger()} tabIndex={0}>
|
|
81
|
+
File.txt
|
|
82
|
+
</div>
|
|
83
|
+
<MenuList>
|
|
84
|
+
<MenuItem name="rename">Rename</MenuItem>
|
|
85
|
+
<MenuItem name="delete">Delete</MenuItem>
|
|
86
|
+
</MenuList>
|
|
87
|
+
</menu.Context>
|
|
88
|
+
)
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Attach `onMenuSelect(...)` to `MenuList` or a shared ancestor when using lower-level context menu composition.
|
|
93
|
+
|
|
71
94
|
## `menu.*`
|
|
72
95
|
|
|
73
96
|
- `Menu`: composed trigger, popover, and list component for the common menu case.
|
|
@@ -77,13 +100,14 @@ Use `menuLabel` when the menu surface needs a different accessible label from th
|
|
|
77
100
|
- `onMenuSelect(...)`: event mixin for the bubbling `MenuSelectEvent`.
|
|
78
101
|
- `MenuSelectEvent`: bubbling event class whose `item` describes the selected item.
|
|
79
102
|
- `MenuSelectItem`: selected item shape with `checked`, `id`, `label`, `name`, `type`, and `value`.
|
|
80
|
-
- `menu.Context`, `menu.trigger()`, `menu.popover()`, `menu.list()`, `menu.item(...)`, and `menu.submenuTrigger(...)`: lower-level composition primitives.
|
|
103
|
+
- `menu.Context`, `menu.trigger()`, `menu.contextTrigger()`, `menu.popover()`, `menu.list()`, `menu.item(...)`, and `menu.submenuTrigger(...)`: lower-level composition primitives.
|
|
81
104
|
- `buttonStyle`, `popoverStyle`, `listStyle`, `itemStyle`, `itemSlotStyle`, `itemLabelStyle`, `itemGlyphStyle`, and `triggerGlyphStyle`: flat style mixins used by the wrappers.
|
|
82
|
-
- `MenuProps`, `MenuItemProps`, `MenuListProps`, `MenuProviderProps`, `MenuTriggerOptions`, `MenuItemOptions`, and `SubmenuProps`: public TypeScript props and option types.
|
|
105
|
+
- `MenuProps`, `MenuItemProps`, `MenuListProps`, `MenuProviderProps`, `MenuTriggerOptions`, `MenuContextTriggerOptions`, `MenuItemOptions`, and `SubmenuProps`: public TypeScript props and option types.
|
|
83
106
|
|
|
84
107
|
## Behavior Notes
|
|
85
108
|
|
|
86
109
|
- Click opens the root menu and focuses the list; clicking the trigger again closes it and restores focus.
|
|
110
|
+
- `menu.contextTrigger()` opens the root menu from a `contextmenu` event at the pointer coordinates and supports keyboard opening with the Context Menu key or Shift+F10.
|
|
87
111
|
- `ArrowDown` opens from the trigger at the first enabled item. `ArrowUp` opens at the last enabled item. Enter and Space open the menu with focus on the list.
|
|
88
112
|
- Keyboard navigation skips disabled items and does not wrap past the first or last enabled item.
|
|
89
113
|
- `Home` and `End` move to the first and last enabled item. Enter and Space activate the highlighted item.
|