@bearmenu/ui 0.8.12 → 0.8.14
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/{chunk-66MAPLXS.js → chunk-2ADCZXZJ.js} +1 -1
- package/dist/{chunk-2DEIXTBN.js → chunk-2ZXIXQIU.js} +1 -1
- package/dist/{chunk-YOKHBAIH.js → chunk-4OF4T4AI.js} +12 -11
- package/dist/{chunk-MZL7CGCL.js → chunk-4XDJXMLF.js} +2 -2
- package/dist/{chunk-YYGB4G4Q.js → chunk-CZK2MRS2.js} +1 -1
- package/dist/chunk-DJD3EMPK.js +126 -0
- package/dist/chunk-EZG2NELX.js +5 -0
- package/dist/{chunk-VAXOQS7W.js → chunk-F76NCVVR.js} +1 -1
- package/dist/{chunk-VG3PND3D.js → chunk-FMTJGO76.js} +1 -1
- package/dist/{chunk-UXWAOISG.js → chunk-FVSKGCK3.js} +2 -2
- package/dist/{chunk-2XCZJWTV.js → chunk-GNCWJWFE.js} +1 -1
- package/dist/{chunk-X3WMRKOW.js → chunk-HDR7V6IZ.js} +1 -1
- package/dist/{chunk-HSIYYA2E.js → chunk-HQU6QVAN.js} +5 -5
- package/dist/chunk-I5V446BX.js +27 -0
- package/dist/{chunk-WCTHZKU7.js → chunk-ICOU5QHT.js} +1 -1
- package/dist/{chunk-G7IFL4Z4.js → chunk-L3VEMP5A.js} +57 -9
- package/dist/chunk-LQWGZIYA.js +5 -0
- package/dist/{chunk-XNA2INVQ.js → chunk-MCOHLWRS.js} +2 -2
- package/dist/{chunk-3GWWZKX7.js → chunk-MMUBH76A.js} +21 -1
- package/dist/{chunk-ZDAHKI3A.js → chunk-MWB7S54O.js} +1 -1
- package/dist/{chunk-D5QHEHXJ.js → chunk-NMEVJT5Q.js} +1 -1
- package/dist/{chunk-3TNPSN4D.js → chunk-NSNEANOQ.js} +2 -2
- package/dist/{chunk-WSRWFA6K.js → chunk-NWZGSLPU.js} +1 -1
- package/dist/{chunk-LEAYBICI.js → chunk-OIV7B44M.js} +1 -1
- package/dist/{chunk-2CXU5WZO.js → chunk-P43B3ONY.js} +1 -1
- package/dist/{chunk-FRPPIXMY.js → chunk-PDTPO6NG.js} +1 -1
- package/dist/{chunk-6XMYEZVR.js → chunk-PX6RICS5.js} +1 -1
- package/dist/{chunk-6TEEY5YA.js → chunk-S33K4RC5.js} +1 -1
- package/dist/{chunk-3VMDCCCX.js → chunk-SC2VUTUI.js} +1 -1
- package/dist/{chunk-24RFI4RQ.js → chunk-SXQZ7DLH.js} +4 -4
- package/dist/{chunk-UDTG3RSE.js → chunk-T6S2ZBV6.js} +2 -2
- package/dist/{chunk-DTXNDLSE.js → chunk-WYTJR2YU.js} +16 -1
- package/dist/{chunk-QXHMPJ35.js → chunk-XBBEX4SF.js} +1 -1
- package/dist/chunk-XCB3F6SF.js +16 -0
- package/dist/{chunk-7BWTYWM3.js → chunk-ZLMRVBD7.js} +1 -1
- package/dist/{chunk-7A42J73Q.js → chunk-ZLPWEHZO.js} +1 -1
- package/dist/components/accordion.js +1 -1
- package/dist/components/alert-dialog.js +2 -2
- package/dist/components/alert.d.ts +2 -2
- package/dist/components/alert.js +2 -2
- package/dist/components/aspect-ratio.js +2 -2
- package/dist/components/avatar.js +1 -1
- package/dist/components/badge.d.ts +1 -1
- package/dist/components/badge.js +2 -2
- package/dist/components/breadcrumb.js +1 -1
- package/dist/components/button-group.js +1 -1
- package/dist/components/button.d.ts +1 -1
- package/dist/components/button.js +2 -2
- package/dist/components/calendar.js +2 -2
- package/dist/components/card.d.ts +2 -2
- package/dist/components/card.js +3 -3
- package/dist/components/carousel.js +2 -2
- package/dist/components/category-deck.js +2 -2
- package/dist/components/checkbox.js +2 -2
- package/dist/components/circular-progress.js +1 -1
- package/dist/components/collapsible.js +1 -1
- package/dist/components/combobox.js +5 -5
- package/dist/components/command.d.ts +15 -15
- package/dist/components/command.js +3 -3
- package/dist/components/concept-card.js +2 -2
- package/dist/components/concept-compare-rail.js +3 -3
- package/dist/components/concept-compare.d.ts +2 -1
- package/dist/components/concept-compare.js +5 -5
- package/dist/components/concept-convergence.js +4 -4
- package/dist/components/convergence.js +3 -3
- package/dist/components/coverflow.js +1 -1
- package/dist/components/currency-input.js +2 -2
- package/dist/components/date-input.d.ts +1 -1
- package/dist/components/date-input.js +2 -2
- package/dist/components/day-rail-chip.js +2 -2
- package/dist/components/description-list.js +1 -1
- package/dist/components/dialog.js +2 -2
- package/dist/components/doorway-tiles.d.ts +57 -0
- package/dist/components/doorway-tiles.js +86 -0
- package/dist/components/drawer.js +1 -1
- package/dist/components/drift-rail.js +1 -1
- package/dist/components/dropdown-menu.js +1 -1
- package/dist/components/empty-state.js +3 -3
- package/dist/components/event-card.js +4 -4
- package/dist/components/event-compact-row.js +4 -4
- package/dist/components/event-day-header.js +2 -2
- package/dist/components/event-day-separator.js +3 -3
- package/dist/components/event-detail-panel.js +4 -4
- package/dist/components/event-hub-hero.js +2 -2
- package/dist/components/event-index-row.js +4 -4
- package/dist/components/event-list-row-wide.js +5 -5
- package/dist/components/event-list-row.js +5 -5
- package/dist/components/event-poster-fallback.js +1 -1
- package/dist/components/event-types.js +1 -1
- package/dist/components/events-empty-state.js +1 -1
- package/dist/components/explainer-steps.js +1 -1
- package/dist/components/facet-group.js +2 -2
- package/dist/components/featured-rail-item.js +2 -2
- package/dist/components/field.js +2 -2
- package/dist/components/filter-category-row.js +3 -3
- package/dist/components/form.js +2 -2
- package/dist/components/glass-ground.js +2 -2
- package/dist/components/grade-atom.d.ts +3 -0
- package/dist/components/grade-atom.js +4 -0
- package/dist/components/haptic-button.js +2 -2
- package/dist/components/hour-band.js +4 -4
- package/dist/components/hour-group.js +4 -4
- package/dist/components/hub-surface.js +1 -1
- package/dist/components/hue-chip.js +1 -1
- package/dist/components/icon.js +1 -1
- package/dist/components/input-group.js +1 -1
- package/dist/components/input-otp.js +1 -1
- package/dist/components/input.js +2 -2
- package/dist/components/item.d.ts +2 -2
- package/dist/components/item.js +1 -1
- package/dist/components/kbd.js +1 -1
- package/dist/components/kitchen-dossier.d.ts +2 -1
- package/dist/components/kitchen-dossier.js +3 -3
- package/dist/components/label.js +2 -2
- package/dist/components/lazy-markdown.js +1 -1
- package/dist/components/link-button.js +2 -2
- package/dist/components/markdown-renderer.js +1 -1
- package/dist/components/menu-dead-end.d.ts +2 -1
- package/dist/components/menu-dead-end.js +1 -1
- package/dist/components/menu-family-block.d.ts +2 -1
- package/dist/components/menu-family-block.js +14 -8
- package/dist/components/menu-family-card.d.ts +2 -1
- package/dist/components/menu-family-card.js +1 -1
- package/dist/components/menu-field.js +1 -1
- package/dist/components/menu-filter-chips.d.ts +2 -1
- package/dist/components/menu-filter-chips.js +3 -3
- package/dist/components/menu-group-rows.d.ts +2 -1
- package/dist/components/menu-group-rows.js +2 -2
- package/dist/components/menu-hub-hero.js +1 -1
- package/dist/components/menu-index-header.d.ts +2 -1
- package/dist/components/menu-index-header.js +2 -2
- package/dist/components/menu-index-list.d.ts +9 -8
- package/dist/components/menu-index-list.js +4 -4
- package/dist/components/menu-intent-hero.d.ts +3 -2
- package/dist/components/menu-intent-hero.js +1 -1
- package/dist/components/menu-item.d.ts +2 -1
- package/dist/components/menu-item.js +4 -4
- package/dist/components/menu-kitchen-list.d.ts +2 -1
- package/dist/components/menu-kitchen-list.js +4 -4
- package/dist/components/menu-mocks.d.ts +16 -5
- package/dist/components/menu-mocks.js +23 -2
- package/dist/components/menu-types.d.ts +21 -34
- package/dist/components/motion-icon-actions.d.ts +27 -0
- package/dist/components/motion-icon-actions.js +336 -0
- package/dist/components/motion-icon-controls.js +3 -3
- package/dist/components/motion-icon-set.d.ts +13 -1
- package/dist/components/motion-icon-set.js +197 -6
- package/dist/components/motion-icon.d.ts +15 -1
- package/dist/components/motion-icon.js +2 -2
- package/dist/components/multi-select-combobox.js +7 -7
- package/dist/components/multi-select-menu.js +2 -2
- package/dist/components/native-select.js +1 -1
- package/dist/components/open-now-list.d.ts +2 -1
- package/dist/components/open-now-list.js +2 -2
- package/dist/components/pagination.js +2 -2
- package/dist/components/phone-frame.js +1 -1
- package/dist/components/photo-ground.js +1 -1
- package/dist/components/place-about-tab.d.ts +2 -1
- package/dist/components/place-about-tab.js +6 -6
- package/dist/components/place-card.d.ts +94 -12
- package/dist/components/place-card.js +203 -128
- package/dist/components/place-details-mobile.d.ts +2 -1
- package/dist/components/place-details-mobile.js +7 -7
- package/dist/components/place-schedule-week.d.ts +2 -1
- package/dist/components/place-schedule-week.js +3 -3
- package/dist/components/place-types.d.ts +3 -265
- package/dist/components/popover.js +2 -2
- package/dist/components/poster-stack.js +1 -1
- package/dist/components/poster-tape.js +1 -1
- package/dist/components/poster-wall.d.ts +22 -6
- package/dist/components/poster-wall.js +197 -12
- package/dist/components/progress.js +1 -1
- package/dist/components/qa-block.d.ts +2 -1
- package/dist/components/qa-block.js +1 -1
- package/dist/components/quiet-stretch.js +1 -1
- package/dist/components/radio-group.js +1 -1
- package/dist/components/rating.js +1 -1
- package/dist/components/scroll-area.js +1 -1
- package/dist/components/scroll-fade.js +2 -2
- package/dist/components/search-bar.js +1 -1
- package/dist/components/searchable-select.js +5 -5
- package/dist/components/section-header.js +2 -2
- package/dist/components/segmented-nav.d.ts +24 -4
- package/dist/components/segmented-nav.js +11 -2
- package/dist/components/select.js +1 -1
- package/dist/components/selection-bar.js +1 -1
- package/dist/components/separator.js +2 -2
- package/dist/components/sheet.js +1 -1
- package/dist/components/signature-chip.js +3 -3
- package/dist/components/skeleton-card.js +3 -3
- package/dist/components/skeleton.js +2 -2
- package/dist/components/slider.js +1 -1
- package/dist/components/sliding-panels.js +2 -2
- package/dist/components/snap-rail.d.ts +0 -5
- package/dist/components/snap-rail.js +2 -2
- package/dist/components/sonner.js +1 -1
- package/dist/components/sort-option-list.js +1 -1
- package/dist/components/spinner.d.ts +2 -2
- package/dist/components/spinner.js +1 -1
- package/dist/components/stat-banner.js +1 -1
- package/dist/components/stepper.js +1 -1
- package/dist/components/sticky-container.js +1 -1
- package/dist/components/story.js +1 -1
- package/dist/components/switch.js +1 -1
- package/dist/components/table.js +1 -1
- package/dist/components/tabs.js +2 -2
- package/dist/components/tag-group.js +2 -2
- package/dist/components/tag.d.ts +2 -2
- package/dist/components/tag.js +2 -2
- package/dist/components/text.d.ts +3 -3
- package/dist/components/text.js +2 -2
- package/dist/components/textarea.js +1 -1
- package/dist/components/timeline-band.js +4 -4
- package/dist/components/timeline-playhead.js +4 -4
- package/dist/components/toggle-group.js +2 -2
- package/dist/components/toggle.js +2 -2
- package/dist/components/tooltip.js +1 -1
- package/dist/components/top-comparison.d.ts +2 -1
- package/dist/components/top-comparison.js +1 -1
- package/dist/components/top-cross-link.d.ts +2 -1
- package/dist/components/top-cross-link.js +1 -1
- package/dist/components/top-ranking-entry.d.ts +2 -1
- package/dist/components/top-ranking-entry.js +6 -6
- package/dist/components/top-ranking-hero.d.ts +2 -1
- package/dist/components/top-ranking-hero.js +1 -1
- package/dist/components/top-ranking-legend.js +1 -1
- package/dist/components/top-types.d.ts +3 -1
- package/dist/components/use-mobile.js +1 -1
- package/dist/components/venue-events-block.js +5 -5
- package/dist/components/venue-grade-dimensions.d.ts +2 -1
- package/dist/components/venue-grade-dimensions.js +1 -1
- package/dist/components/venue-quotes.d.ts +2 -1
- package/dist/components/venue-quotes.js +1 -1
- package/dist/components/venue-wall.d.ts +2 -1
- package/dist/components/venue-wall.js +1 -1
- package/dist/components/weekday-theme-banner.js +1 -1
- package/dist/components/weekend-panel.js +4 -4
- package/dist/hooks/use-drag-swipe.js +1 -1
- package/dist/hooks/use-haptic.js +1 -1
- package/dist/hooks/use-media-query.js +1 -1
- package/dist/hooks/use-mobile.js +1 -1
- package/dist/hooks/use-mounted-theme.js +1 -1
- package/dist/hooks/use-sticky.js +1 -1
- package/dist/lib/card-hover.js +2 -18
- package/dist/lib/grade.d.ts +54 -0
- package/dist/lib/grade.js +2 -0
- package/dist/lib/icon-depth.d.ts +35 -0
- package/dist/lib/icon-depth.js +2 -0
- package/dist/lib/icon-registry.js +1 -1
- package/dist/lib/motion.js +2 -2
- package/dist/lib/overlay-pill.d.ts +30 -0
- package/dist/lib/overlay-pill.js +2 -0
- package/dist/lib/utils.js +1 -1
- package/dist/place-types-BHdeMMiG.d.ts +317 -0
- package/package.json +1 -1
- package/src/components/colour-dictionary.stories.tsx +268 -82
- package/src/components/doorway-tiles.stories.tsx +83 -0
- package/src/components/doorway-tiles.test.tsx +51 -0
- package/src/components/doorway-tiles.tsx +225 -0
- package/src/components/grade-atom.stories.tsx +81 -0
- package/src/components/grade-atom.tsx +256 -0
- package/src/components/hue-chip.stories.tsx +2 -2
- package/src/components/menu-family-block.stories.tsx +29 -0
- package/src/components/menu-family-block.test.tsx +51 -0
- package/src/components/menu-family-block.tsx +20 -4
- package/src/components/menu-index-list.tsx +7 -7
- package/src/components/menu-intent-hero.tsx +1 -1
- package/src/components/menu-kitchen-list.tsx +4 -1
- package/src/components/menu-mocks.ts +39 -3
- package/src/components/menu-types.ts +17 -33
- package/src/components/motion-icon-actions.test.tsx +115 -0
- package/src/components/motion-icon-actions.tsx +580 -0
- package/src/components/motion-icon-controls.test.tsx +1 -0
- package/src/components/motion-icon-controls.tsx +18 -13
- package/src/components/motion-icon-set.stories.tsx +62 -3
- package/src/components/motion-icon-set.tsx +349 -2
- package/src/components/motion-icon.test.tsx +180 -1
- package/src/components/motion-icon.tsx +97 -8
- package/src/components/place-card.stories.tsx +66 -76
- package/src/components/place-card.test.tsx +188 -100
- package/src/components/place-card.tsx +356 -148
- package/src/components/place-types.ts +17 -4
- package/src/components/poster-wall.stories.tsx +84 -0
- package/src/components/poster-wall.test.tsx +94 -3
- package/src/components/poster-wall.tsx +257 -9
- package/src/components/segmented-nav.stories.tsx +72 -1
- package/src/components/segmented-nav.test.tsx +96 -0
- package/src/components/segmented-nav.tsx +36 -4
- package/src/components/snap-rail.tsx +19 -0
- package/src/globals.css +26 -0
- package/src/lib/grade.test.ts +82 -0
- package/src/lib/grade.ts +76 -0
- package/src/lib/icon-depth.ts +35 -0
- package/src/lib/overlay-pill.ts +29 -0
- package/dist/components/menu-family-tiles.d.ts +0 -19
- package/dist/components/menu-family-tiles.js +0 -57
- package/src/components/menu-family-tiles.stories.tsx +0 -54
- package/src/components/menu-family-tiles.test.tsx +0 -30
- package/src/components/menu-family-tiles.tsx +0 -132
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ScrollFade } from '../chunk-
|
|
1
|
+
import { ScrollFade } from '../chunk-GNCWJWFE.js';
|
|
2
2
|
import { cn } from '../chunk-FEK5XGZW.js';
|
|
3
|
-
import { __objRest, __spreadValues } from '../chunk-
|
|
3
|
+
import { __objRest, __spreadValues } from '../chunk-MMUBH76A.js';
|
|
4
4
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
5
5
|
|
|
6
6
|
function DefaultLink(_a) {
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { MenuIndexEntry, MenuLinkComponent, MenuLinkProps } from './menu-types.js';
|
|
3
3
|
import 'react';
|
|
4
|
-
import '
|
|
4
|
+
import '../place-types-BHdeMMiG.js';
|
|
5
|
+
import '../lib/grade.js';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* MenuIndexList — the complete set: one column on a phone, three from `lg`.
|
|
@@ -9,19 +10,19 @@ import './place-types.js';
|
|
|
9
10
|
* ## This block is why the page can afford to be progressive
|
|
10
11
|
*
|
|
11
12
|
* It carries a crawlable link to EVERY destination the city has — all
|
|
12
|
-
* thirty-eight cuisines,
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
13
|
+
* thirty-eight cuisines, in the markup at every width. That makes it the
|
|
14
|
+
* page's entire link-equity job, which in turn means the rich cards above
|
|
15
|
+
* are free to be a swipe rail on a phone: nothing a crawler needs waits on a
|
|
16
|
+
* swipe, because it is all here.
|
|
16
17
|
*
|
|
17
18
|
* The phone's own "show all" is CSS, not markup: every row is in the DOM and
|
|
18
19
|
* the ones past `collapsedCount` are hidden below `lg` until the button is
|
|
19
20
|
* pressed. A list that mounted its tail on tap would have taken twenty-six
|
|
20
21
|
* links out of the page for the crawler that never taps.
|
|
21
22
|
*
|
|
22
|
-
* Get this backwards —
|
|
23
|
-
*
|
|
24
|
-
*
|
|
23
|
+
* Get this backwards — mount the rows behind the expander on tap — and the
|
|
24
|
+
* page silently stops linking to twenty-six pages it is supposed to be the
|
|
25
|
+
* index for.
|
|
25
26
|
*
|
|
26
27
|
* ## Ordered by count, and the counts overlap
|
|
27
28
|
*
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Separator } from '../chunk-
|
|
2
|
-
import { Skeleton } from '../chunk-
|
|
3
|
-
import { Button } from '../chunk-
|
|
1
|
+
import { Separator } from '../chunk-NWZGSLPU.js';
|
|
2
|
+
import { Skeleton } from '../chunk-XBBEX4SF.js';
|
|
3
|
+
import { Button } from '../chunk-F76NCVVR.js';
|
|
4
4
|
import '../chunk-R47NEOSI.js';
|
|
5
5
|
import { cn } from '../chunk-FEK5XGZW.js';
|
|
6
|
-
import { __objRest, __spreadValues } from '../chunk-
|
|
6
|
+
import { __objRest, __spreadValues } from '../chunk-MMUBH76A.js';
|
|
7
7
|
import { useState } from 'react';
|
|
8
8
|
import { ChevronRight, ChevronDown } from 'lucide-react';
|
|
9
9
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { MenuIntentFigure, MenuLinkComponent } from './menu-types.js';
|
|
3
3
|
import 'react';
|
|
4
|
-
import '
|
|
4
|
+
import '../place-types-BHdeMMiG.js';
|
|
5
|
+
import '../lib/grade.js';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* MenuIntentHero — the head of an intent page (`/menu/cuisines/italian`).
|
|
@@ -52,7 +53,7 @@ type MenuIntentHeroProps = {
|
|
|
52
53
|
* Finished CSS gradient for the ground, e.g. `linear-gradient(140deg, …)`.
|
|
53
54
|
*
|
|
54
55
|
* A gradient rather than a token name, for the same reason `<MenuField>` and
|
|
55
|
-
* `<
|
|
56
|
+
* `<DoorwayTiles>` take one: the hue tables are app-owned, and a component
|
|
56
57
|
* referencing `var(--h-pizza)` renders an unstyled panel in any consumer that
|
|
57
58
|
* does not define it. Missing, the panel falls back to the foreground colour
|
|
58
59
|
* — visibly unstyled rather than white text on white.
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
3
|
import { MenuItemPreview, MenuLinkComponent, MenuLinkProps } from './menu-types.js';
|
|
4
|
-
import '
|
|
4
|
+
import '../place-types-BHdeMMiG.js';
|
|
5
|
+
import '../lib/grade.js';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* MenuItem — THE menu row.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { MentionSignal, MenuItem } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { MentionSignal, MenuItem } from '../chunk-T6S2ZBV6.js';
|
|
2
|
+
import '../chunk-S33K4RC5.js';
|
|
3
|
+
import '../chunk-P43B3ONY.js';
|
|
4
4
|
import '../chunk-FEK5XGZW.js';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-MMUBH76A.js';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import { MenuKitchenPreview, MenuLinkComponent, MenuLinkProps } from './menu-types.js';
|
|
3
3
|
import 'react';
|
|
4
|
-
import '
|
|
4
|
+
import '../place-types-BHdeMMiG.js';
|
|
5
|
+
import '../lib/grade.js';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* MenuKitchenList — the intent page's spine.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { MenuKitchenList, MenuKitchenListSkeleton } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
3
|
-
import '../chunk-
|
|
1
|
+
export { MenuKitchenList, MenuKitchenListSkeleton } from '../chunk-SXQZ7DLH.js';
|
|
2
|
+
import '../chunk-NWZGSLPU.js';
|
|
3
|
+
import '../chunk-XBBEX4SF.js';
|
|
4
4
|
import '../chunk-FEK5XGZW.js';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-MMUBH76A.js';
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
import { MenuFamilyBlockPreview, MenuConceptPreview, MenuFamilyPreview,
|
|
2
|
-
import {
|
|
1
|
+
import { MenuFamilyBlockPreview, MenuConceptPreview, MenuFamilyPreview, MenuFilterChip, MenuIndexEntry, MenuIntentFigure, MenuItemPreview, MenuKitchenPreview, MenuLoosenOption, QaItem, MenuVenuePreview } from './menu-types.js';
|
|
2
|
+
import { DoorwayTile } from './doorway-tiles.js';
|
|
3
|
+
import { P as PlacePreview } from '../place-types-BHdeMMiG.js';
|
|
3
4
|
import 'react';
|
|
5
|
+
import 'react/jsx-runtime';
|
|
6
|
+
import '../lib/grade.js';
|
|
4
7
|
|
|
5
8
|
/**
|
|
6
9
|
* Fixtures for the menu-hub surfaces — used by their stories, and shipped so
|
|
@@ -41,9 +44,17 @@ declare const mockDrinkFamily: MenuFamilyPreview;
|
|
|
41
44
|
* venue's, never a plate's; the last one ships without, so the story shows
|
|
42
45
|
* the initial fallback beside six real tiles.
|
|
43
46
|
*/
|
|
44
|
-
declare const mockFamilyTiles:
|
|
47
|
+
declare const mockFamilyTiles: DoorwayTile[];
|
|
45
48
|
/** The closing tile: stone, so it reads as the index and not as an eighth cuisine. */
|
|
46
|
-
declare const mockFamilyTilesAll:
|
|
49
|
+
declare const mockFamilyTilesAll: DoorwayTile;
|
|
50
|
+
/**
|
|
51
|
+
* The homepage's seven occasions in the day's order, ground treatment: the
|
|
52
|
+
* mood's hue multiplied over a room. The last one ships without a photograph
|
|
53
|
+
* so the story shows the initial on the bare hue.
|
|
54
|
+
*/
|
|
55
|
+
declare const mockOccasionTiles: DoorwayTile[];
|
|
56
|
+
/** The closing tile: stone, so it reads as the index and not as an eighth mood. */
|
|
57
|
+
declare const mockOccasionTilesAll: DoorwayTile;
|
|
47
58
|
/** Formatters the stories pass. Real callers inject locale-aware ones. */
|
|
48
59
|
declare const mockFormatters: {
|
|
49
60
|
price: (value: number) => string;
|
|
@@ -94,4 +105,4 @@ declare const mockFamilyBlock: MenuFamilyBlockPreview;
|
|
|
94
105
|
declare const mockBareFamilyBlock: MenuFamilyBlockPreview;
|
|
95
106
|
declare const mockQa: QaItem[];
|
|
96
107
|
|
|
97
|
-
export { mockBareFamilyBlock, mockConcept, mockDrinkFamily, mockFamily, mockFamilyBlock, mockFamilyTiles, mockFamilyTilesAll, mockFilterChips, mockFormatters, mockGradients, mockHubLabels, mockIndexEntries, mockIntentFigures, mockItems, mockKitchens, mockLoosenOptions, mockMatchedKitchens, mockPlaces, mockQa, mockVenues };
|
|
108
|
+
export { mockBareFamilyBlock, mockConcept, mockDrinkFamily, mockFamily, mockFamilyBlock, mockFamilyTiles, mockFamilyTilesAll, mockFilterChips, mockFormatters, mockGradients, mockHubLabels, mockIndexEntries, mockIntentFigures, mockItems, mockKitchens, mockLoosenOptions, mockMatchedKitchens, mockOccasionTiles, mockOccasionTilesAll, mockPlaces, mockQa, mockVenues };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __spreadProps, __spreadValues } from '../chunk-
|
|
1
|
+
import { __spreadProps, __spreadValues } from '../chunk-MMUBH76A.js';
|
|
2
2
|
|
|
3
3
|
// src/components/menu-mocks.ts
|
|
4
4
|
var mockGradients = {
|
|
@@ -351,6 +351,27 @@ var mockFamilyTilesAll = {
|
|
|
351
351
|
gradient: "linear-gradient(150deg, oklch(0.50 0.03 70), oklch(0.40 0.028 64))",
|
|
352
352
|
photoUrl: familyPhoto(60)
|
|
353
353
|
};
|
|
354
|
+
var occasionGradient = (l, c, h) => `linear-gradient(150deg, oklch(${l} ${c} ${h}), color-mix(in oklab, oklch(${l} ${c} ${h}) 82%, black))`;
|
|
355
|
+
var occasionPhoto = (hue) => "data:image/svg+xml;utf8," + encodeURIComponent(
|
|
356
|
+
`<svg xmlns="http://www.w3.org/2000/svg" width="640" height="320"><defs><linearGradient id="g" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="hsl(${hue} 20% 88%)"/><stop offset="1" stop-color="hsl(${hue} 18% 52%)"/></linearGradient></defs><rect width="640" height="320" fill="url(#g)"/><circle cx="420" cy="120" r="70" fill="white" opacity=".6"/><rect x="60" y="200" width="220" height="80" fill="hsl(${hue} 15% 40%)" opacity=".5"/></svg>`
|
|
357
|
+
);
|
|
358
|
+
var mockOccasionTiles = [
|
|
359
|
+
{ slug: "brunch", label: "Brunch", countLabel: "314 places", href: "/menu/cuisines/breakfast-brunch", gradient: occasionGradient(0.62, 0.14, 82), photoUrl: occasionPhoto(40) },
|
|
360
|
+
{ slug: "laptop-and-coffee", label: "Laptop and coffee", countLabel: "52 places", href: "/occasions/laptop-and-coffee", gradient: occasionGradient(0.44, 0.1, 52), photoUrl: occasionPhoto(30) },
|
|
361
|
+
{ slug: "quiet", label: "Somewhere quiet", countLabel: "108 places", href: "/occasions/quiet", gradient: occasionGradient(0.38, 0.09, 255), photoUrl: occasionPhoto(210) },
|
|
362
|
+
{ slug: "something-sweet", label: "Something sweet", countLabel: "120 places", href: "/occasions/something-sweet", gradient: occasionGradient(0.5, 0.08, 335), photoUrl: occasionPhoto(330) },
|
|
363
|
+
{ slug: "with-friends", label: "With friends", countLabel: "158 places", href: "/occasions/with-friends", gradient: occasionGradient(0.6, 0.14, 358), photoUrl: occasionPhoto(10) },
|
|
364
|
+
{ slug: "date-night", label: "Date night", countLabel: "53 places", href: "/occasions/date-night", gradient: occasionGradient(0.44, 0.15, 18), photoUrl: occasionPhoto(0) },
|
|
365
|
+
{ slug: "late-night", label: "Late night", countLabel: "59 places", href: "/occasions/late-night", gradient: occasionGradient(0.34, 0.1, 300) }
|
|
366
|
+
];
|
|
367
|
+
var mockOccasionTilesAll = {
|
|
368
|
+
slug: "all",
|
|
369
|
+
label: "All occasions",
|
|
370
|
+
countLabel: "14 sets",
|
|
371
|
+
href: "/occasions",
|
|
372
|
+
gradient: "linear-gradient(150deg, oklch(0.50 0.03 70), oklch(0.40 0.028 64))",
|
|
373
|
+
photoUrl: occasionPhoto(60)
|
|
374
|
+
};
|
|
354
375
|
var mockFormatters = {
|
|
355
376
|
price: (value) => `${value} lei`,
|
|
356
377
|
number: (value) => value.toLocaleString("en-US"),
|
|
@@ -513,4 +534,4 @@ var mockQa = [
|
|
|
513
534
|
}
|
|
514
535
|
];
|
|
515
536
|
|
|
516
|
-
export { mockBareFamilyBlock, mockConcept, mockDrinkFamily, mockFamily, mockFamilyBlock, mockFamilyTiles, mockFamilyTilesAll, mockFilterChips, mockFormatters, mockGradients, mockHubLabels, mockIndexEntries, mockIntentFigures, mockItems, mockKitchens, mockLoosenOptions, mockMatchedKitchens, mockPlaces, mockQa, mockVenues };
|
|
537
|
+
export { mockBareFamilyBlock, mockConcept, mockDrinkFamily, mockFamily, mockFamilyBlock, mockFamilyTiles, mockFamilyTilesAll, mockFilterChips, mockFormatters, mockGradients, mockHubLabels, mockIndexEntries, mockIntentFigures, mockItems, mockKitchens, mockLoosenOptions, mockMatchedKitchens, mockOccasionTiles, mockOccasionTilesAll, mockPlaces, mockQa, mockVenues };
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { ComponentType, CSSProperties, ReactNode } from 'react';
|
|
2
|
-
import { MenuSizeAndPrice, PlacePreview } from '
|
|
2
|
+
import { M as MenuSizeAndPrice, P as PlacePreview } from '../place-types-BHdeMMiG.js';
|
|
3
|
+
import 'react/jsx-runtime';
|
|
4
|
+
import '../lib/grade.js';
|
|
3
5
|
|
|
4
6
|
/**
|
|
5
7
|
* Structural mirror of the openapi `Dish` / `Drink` schemas, decoupled from any
|
|
@@ -203,37 +205,6 @@ type MenuVenueSignature = {
|
|
|
203
205
|
/** The digest called this the venue's signature rather than merely frequent. */
|
|
204
206
|
isSignature?: boolean;
|
|
205
207
|
};
|
|
206
|
-
/**
|
|
207
|
-
* A family tile — a cuisine on the dishes tab, a going-out family on the
|
|
208
|
-
* drinks tab — as the hub's doorway grid draws it: a hue, a name, a venue
|
|
209
|
-
* count and one venue's photograph.
|
|
210
|
-
*
|
|
211
|
-
* `href` is required: a tile that cannot resolve to a real destination is not
|
|
212
|
-
* rendered rather than linking nowhere.
|
|
213
|
-
*/
|
|
214
|
-
type MenuFamilyTile = {
|
|
215
|
-
slug: string;
|
|
216
|
-
label: string;
|
|
217
|
-
/**
|
|
218
|
-
* The venue count, already formatted by the caller — "64", "1,204" — because
|
|
219
|
-
* thousands separators are locale-dependent and the DS owns no locale.
|
|
220
|
-
*/
|
|
221
|
-
countLabel?: string;
|
|
222
|
-
href: string;
|
|
223
|
-
/**
|
|
224
|
-
* Finished CSS gradient for the tile's ground, e.g.
|
|
225
|
-
* `linear-gradient(150deg, …)`.
|
|
226
|
-
*
|
|
227
|
-
* A gradient rather than a token name, for the same reason `<MenuField>`
|
|
228
|
-
* takes one: the hue tables are app-owned, and a component referencing
|
|
229
|
-
* `var(--h-pizza)` renders an invisible tile in any consumer that does not
|
|
230
|
-
* happen to define that variable. A missing gradient falls back to `bg-muted`
|
|
231
|
-
* — visible and obviously unstyled, rather than white text on white.
|
|
232
|
-
*/
|
|
233
|
-
gradient?: string;
|
|
234
|
-
/** Pre-resolved VENUE photograph. Venue photography is real; item photography is not. */
|
|
235
|
-
photoUrl?: string;
|
|
236
|
-
};
|
|
237
208
|
/**
|
|
238
209
|
* One figure in the intent hero — a number the reader can tap to filter by.
|
|
239
210
|
*
|
|
@@ -361,7 +332,9 @@ type MenuIndexEntry = {
|
|
|
361
332
|
gradient?: string;
|
|
362
333
|
};
|
|
363
334
|
/**
|
|
364
|
-
* A family on the cuisines index — the hub's card, opened out sideways
|
|
335
|
+
* A family on the cuisines index — the hub's card, opened out sideways — and,
|
|
336
|
+
* with `kicker` / `facts` / `badge`, a concept on the dishes index: the same
|
|
337
|
+
* card with the unit swapped, as the design draws it.
|
|
365
338
|
*
|
|
366
339
|
* Deliberately thin. The reader here is choosing a cuisine, not a venue, and
|
|
367
340
|
* every field the block does NOT carry is a decision the next page owns.
|
|
@@ -369,7 +342,21 @@ type MenuIndexEntry = {
|
|
|
369
342
|
type MenuFamilyBlockPreview = {
|
|
370
343
|
slug: string;
|
|
371
344
|
name: string;
|
|
345
|
+
/** Small caps over the name, e.g. "DESSERT CONCEPT". Composed by the caller. */
|
|
346
|
+
kicker?: string;
|
|
372
347
|
venueCount: number;
|
|
348
|
+
/**
|
|
349
|
+
* Further pre-formatted facts on the count line, after the unit and before
|
|
350
|
+
* the price band, e.g. `["50 names"]`. Each is one fact; the block draws the
|
|
351
|
+
* separators.
|
|
352
|
+
*/
|
|
353
|
+
facts?: string[];
|
|
354
|
+
/**
|
|
355
|
+
* The pill in the photo's corner, e.g. "168 mentions". When given it replaces
|
|
356
|
+
* the "+N more" overflow pill, which the concept card has no room for beside
|
|
357
|
+
* a name-chip overflow that already says it.
|
|
358
|
+
*/
|
|
359
|
+
badge?: string;
|
|
373
360
|
/** Facet chips. Labels only — the block never prints their counts. */
|
|
374
361
|
chips?: MenuFamilyChip[];
|
|
375
362
|
/** Composed price band, e.g. "22–86 lei". */
|
|
@@ -441,4 +428,4 @@ type MenuHubLabels = {
|
|
|
441
428
|
until: string;
|
|
442
429
|
};
|
|
443
430
|
|
|
444
|
-
export { type MenuConceptPreview, type MenuConceptRow, type MenuFamilyBlockPreview, type MenuFamilyChip, type MenuFamilyPreview, type
|
|
431
|
+
export { type MenuConceptPreview, type MenuConceptRow, type MenuFamilyBlockPreview, type MenuFamilyChip, type MenuFamilyPreview, type MenuFilterChip, type MenuFormatters, type MenuHubLabels, type MenuIndexEntry, type MenuIntentFigure, type MenuItemPlaceRef, type MenuItemPreview, type MenuKitchenDish, type MenuKitchenPreview, type MenuLinkComponent, type MenuLinkProps, type MenuLoosenOption, MenuSizeAndPrice, type MenuVenuePreview, type MenuVenueSignature, type QaItem };
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { MotionIconProps } from './motion-icon.js';
|
|
3
|
+
import 'framer-motion';
|
|
4
|
+
import 'react';
|
|
5
|
+
|
|
6
|
+
type MotionDirection = "right" | "left";
|
|
7
|
+
declare function MotionArrow({ direction, ...props }: MotionIconProps & {
|
|
8
|
+
direction?: MotionDirection;
|
|
9
|
+
}): react_jsx_runtime.JSX.Element;
|
|
10
|
+
declare function MotionCaret({ direction, ...props }: MotionIconProps & {
|
|
11
|
+
direction?: MotionDirection;
|
|
12
|
+
}): react_jsx_runtime.JSX.Element;
|
|
13
|
+
declare function MotionX(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
14
|
+
declare function MotionCircleX(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
15
|
+
declare function MotionExternalLink(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
16
|
+
declare function MotionSend(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
17
|
+
declare function MotionNavigation(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
18
|
+
declare function MotionLocate(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
19
|
+
declare function MotionMaximize(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
20
|
+
declare function MotionPhone(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
21
|
+
declare function MotionMail(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
22
|
+
declare function MotionFlag(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
23
|
+
declare function MotionLogIn(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
24
|
+
declare function MotionLogOut(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
25
|
+
declare function MotionSettings(props: MotionIconProps): react_jsx_runtime.JSX.Element;
|
|
26
|
+
|
|
27
|
+
export { MotionArrow, MotionCaret, MotionCircleX, type MotionDirection, MotionExternalLink, MotionFlag, MotionLocate, MotionLogIn, MotionLogOut, MotionMail, MotionMaximize, MotionNavigation, MotionPhone, MotionSend, MotionSettings, MotionX };
|