@vamos-ui/react 0.0.0-stage → 0.2.0
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/LICENSE +21 -0
- package/README.md +27 -2
- package/dist/blocks/block-heading.d.ts +29 -0
- package/dist/blocks/block-heading.js +39 -0
- package/dist/blocks/block-image.d.ts +52 -0
- package/dist/blocks/block-image.js +48 -0
- package/dist/blocks/block-link.d.ts +30 -0
- package/dist/blocks/block-link.js +36 -0
- package/dist/blocks/create-blocks.d.ts +54 -0
- package/dist/blocks/create-blocks.js +52 -0
- package/dist/blocks/index.d.ts +55 -0
- package/dist/blocks/index.js +59 -0
- package/dist/blocks/json-ld.d.ts +18 -0
- package/dist/blocks/json-ld.js +44 -0
- package/dist/blocks/labels.d.ts +20 -0
- package/dist/blocks/labels.js +43 -0
- package/dist/blocks/rich-text.d.ts +36 -0
- package/dist/blocks/rich-text.js +106 -0
- package/dist/blocks/schema/define-block.d.ts +151 -0
- package/dist/blocks/schema/define-block.js +120 -0
- package/dist/blocks/schema/emphasis.d.ts +17 -0
- package/dist/blocks/schema/emphasis.js +69 -0
- package/dist/blocks/schema/fields.d.ts +497 -0
- package/dist/blocks/schema/fields.js +240 -0
- package/dist/blocks/schema/icons.d.ts +2 -0
- package/dist/blocks/schema/icons.js +26 -0
- package/dist/blocks/schema/index.d.ts +18 -0
- package/dist/blocks/schema/index.js +21 -0
- package/dist/blocks/schema/lint-types.d.ts +16 -0
- package/dist/blocks/schema/lint-types.js +2 -0
- package/dist/blocks/schema/lint.d.ts +32 -0
- package/dist/blocks/schema/lint.js +164 -0
- package/dist/blocks/schema/localize.d.ts +20 -0
- package/dist/blocks/schema/localize.js +29 -0
- package/dist/blocks/schema/localized.d.ts +25 -0
- package/dist/blocks/schema/localized.js +53 -0
- package/dist/blocks/schema/migrate.d.ts +24 -0
- package/dist/blocks/schema/migrate.js +75 -0
- package/dist/blocks/schema/nodes.d.ts +196 -0
- package/dist/blocks/schema/nodes.js +78 -0
- package/dist/blocks/schema/rich-doc-schema.d.ts +32 -0
- package/dist/blocks/schema/rich-doc-schema.js +66 -0
- package/dist/blocks/schema/rich-doc.d.ts +90 -0
- package/dist/blocks/schema/rich-doc.js +62 -0
- package/dist/blocks/schema/safety.d.ts +20 -0
- package/dist/blocks/schema/safety.js +49 -0
- package/dist/blocks/schema/types.d.ts +172 -0
- package/dist/blocks/schema/types.js +3 -0
- package/dist/blocks/schema/validate.d.ts +17 -0
- package/dist/blocks/schema/validate.js +32 -0
- package/dist/blocks/schema/walk.d.ts +22 -0
- package/dist/blocks/schema/walk.js +60 -0
- package/dist/blocks/section-header.d.ts +38 -0
- package/dist/blocks/section-header.js +22 -0
- package/dist/blocks/section.d.ts +59 -0
- package/dist/blocks/section.js +66 -0
- package/dist/blocks/site/_kit-1.d.ts +100 -0
- package/dist/blocks/site/_kit-1.js +135 -0
- package/dist/blocks/site/_site-icon-1.d.ts +6 -0
- package/dist/blocks/site/_site-icon-1.js +15 -0
- package/dist/blocks/site/announcement-bar.d.ts +42 -0
- package/dist/blocks/site/announcement-bar.js +38 -0
- package/dist/blocks/site/announcement-dismiss.d.ts +18 -0
- package/dist/blocks/site/announcement-dismiss.js +28 -0
- package/dist/blocks/site/article-layout.d.ts +65 -0
- package/dist/blocks/site/article-layout.js +88 -0
- package/dist/blocks/site/blog-list.d.ts +79 -0
- package/dist/blocks/site/blog-list.js +78 -0
- package/dist/blocks/site/comparison-table.d.ts +54 -0
- package/dist/blocks/site/comparison-table.js +38 -0
- package/dist/blocks/site/consent-banner.d.ts +52 -0
- package/dist/blocks/site/consent-banner.js +33 -0
- package/dist/blocks/site/contact-dock.d.ts +52 -0
- package/dist/blocks/site/contact-dock.js +55 -0
- package/dist/blocks/site/contact-form.d.ts +60 -0
- package/dist/blocks/site/contact-form.js +45 -0
- package/dist/blocks/site/cta-booking.d.ts +43 -0
- package/dist/blocks/site/cta-booking.js +69 -0
- package/dist/blocks/site/cta.d.ts +74 -0
- package/dist/blocks/site/cta.js +112 -0
- package/dist/blocks/site/embed-facade.d.ts +20 -0
- package/dist/blocks/site/embed-facade.js +21 -0
- package/dist/blocks/site/faq.d.ts +48 -0
- package/dist/blocks/site/faq.js +51 -0
- package/dist/blocks/site/feature-grid.d.ts +46 -0
- package/dist/blocks/site/feature-grid.js +49 -0
- package/dist/blocks/site/feature-tabs.d.ts +22 -0
- package/dist/blocks/site/feature-tabs.js +11 -0
- package/dist/blocks/site/footer.d.ts +68 -0
- package/dist/blocks/site/footer.js +61 -0
- package/dist/blocks/site/gallery-section.d.ts +42 -0
- package/dist/blocks/site/gallery-section.js +47 -0
- package/dist/blocks/site/hero-video.d.ts +15 -0
- package/dist/blocks/site/hero-video.js +31 -0
- package/dist/blocks/site/hero.d.ts +64 -0
- package/dist/blocks/site/hero.js +67 -0
- package/dist/blocks/site/logo-strip.d.ts +42 -0
- package/dist/blocks/site/logo-strip.js +26 -0
- package/dist/blocks/site/map-hours.d.ts +83 -0
- package/dist/blocks/site/map-hours.js +125 -0
- package/dist/blocks/site/media-text.d.ts +45 -0
- package/dist/blocks/site/media-text.js +55 -0
- package/dist/blocks/site/menu-list.d.ts +74 -0
- package/dist/blocks/site/menu-list.js +84 -0
- package/dist/blocks/site/navbar-submenu.d.ts +18 -0
- package/dist/blocks/site/navbar-submenu.js +51 -0
- package/dist/blocks/site/navbar.d.ts +67 -0
- package/dist/blocks/site/navbar.js +64 -0
- package/dist/blocks/site/not-found.d.ts +40 -0
- package/dist/blocks/site/not-found.js +38 -0
- package/dist/blocks/site/page-intro.d.ts +46 -0
- package/dist/blocks/site/page-intro.js +44 -0
- package/dist/blocks/site/pricing-table.d.ts +67 -0
- package/dist/blocks/site/pricing-table.js +82 -0
- package/dist/blocks/site/process.d.ts +36 -0
- package/dist/blocks/site/process.js +41 -0
- package/dist/blocks/site/registry-1.d.ts +720 -0
- package/dist/blocks/site/registry-1.js +783 -0
- package/dist/blocks/site/registry-2.d.ts +914 -0
- package/dist/blocks/site/registry-2.js +563 -0
- package/dist/blocks/site/rich-text-section.d.ts +34 -0
- package/dist/blocks/site/rich-text-section.js +32 -0
- package/dist/blocks/site/shared/brand-icons.d.ts +21 -0
- package/dist/blocks/site/shared/brand-icons.js +56 -0
- package/dist/blocks/site/shared/consent-gate.d.ts +41 -0
- package/dist/blocks/site/shared/consent-gate.js +43 -0
- package/dist/blocks/site/shared/consent-island.d.ts +38 -0
- package/dist/blocks/site/shared/consent-island.js +63 -0
- package/dist/blocks/site/shared/consent.d.ts +49 -0
- package/dist/blocks/site/shared/consent.js +130 -0
- package/dist/blocks/site/shared/contact-form-island.d.ts +41 -0
- package/dist/blocks/site/shared/contact-form-island.js +100 -0
- package/dist/blocks/site/shared/copy-link.d.ts +10 -0
- package/dist/blocks/site/shared/copy-link.js +25 -0
- package/dist/blocks/site/shared/dock-avoid.d.ts +15 -0
- package/dist/blocks/site/shared/dock-avoid.js +107 -0
- package/dist/blocks/site/shared/dock-hours.d.ts +13 -0
- package/dist/blocks/site/shared/dock-hours.js +25 -0
- package/dist/blocks/site/shared/gallery-lightbox.d.ts +12 -0
- package/dist/blocks/site/shared/gallery-lightbox.js +10 -0
- package/dist/blocks/site/shared/island-keys.d.ts +10 -0
- package/dist/blocks/site/shared/island-keys.js +44 -0
- package/dist/blocks/site/shared/kit-2.d.ts +55 -0
- package/dist/blocks/site/shared/kit-2.js +84 -0
- package/dist/blocks/site/shared/labels-2.d.ts +209 -0
- package/dist/blocks/site/shared/labels-2.js +427 -0
- package/dist/blocks/site/shared/open-now.d.ts +22 -0
- package/dist/blocks/site/shared/open-now.js +27 -0
- package/dist/blocks/site/shared/opening-hours.d.ts +117 -0
- package/dist/blocks/site/shared/opening-hours.js +245 -0
- package/dist/blocks/site/shared/site-accent.d.ts +48 -0
- package/dist/blocks/site/shared/site-accent.js +249 -0
- package/dist/blocks/site/shared/site-form.d.ts +79 -0
- package/dist/blocks/site/shared/site-form.js +111 -0
- package/dist/blocks/site/shared/site-routing.d.ts +54 -0
- package/dist/blocks/site/shared/site-routing.js +86 -0
- package/dist/blocks/site/shared/testimonials-carousel.d.ts +17 -0
- package/dist/blocks/site/shared/testimonials-carousel.js +64 -0
- package/dist/blocks/site/site-shell.d.ts +97 -0
- package/dist/blocks/site/site-shell.js +227 -0
- package/dist/blocks/site/stats-band.d.ts +40 -0
- package/dist/blocks/site/stats-band.js +41 -0
- package/dist/blocks/site/team.d.ts +44 -0
- package/dist/blocks/site/team.js +48 -0
- package/dist/blocks/site/testimonials.d.ts +68 -0
- package/dist/blocks/site/testimonials.js +65 -0
- package/dist/blocks/types.d.ts +63 -0
- package/dist/blocks/types.js +2 -0
- package/dist/business/approval-flow.d.ts +152 -0
- package/dist/business/approval-flow.js +221 -0
- package/dist/business/export-core.d.ts +55 -0
- package/dist/business/export-core.js +101 -0
- package/dist/business/export.d.ts +148 -0
- package/dist/business/export.js +264 -0
- package/dist/business/import-core.d.ts +104 -0
- package/dist/business/import-core.js +281 -0
- package/dist/business/import-wizard.d.ts +186 -0
- package/dist/business/import-wizard.js +401 -0
- package/dist/business/index.d.ts +11 -0
- package/dist/business/index.js +20 -0
- package/dist/business/line-items-core.d.ts +129 -0
- package/dist/business/line-items-core.js +183 -0
- package/dist/business/line-items.d.ts +119 -0
- package/dist/business/line-items.js +299 -0
- package/dist/business/multi-step-form.d.ts +131 -0
- package/dist/business/multi-step-form.js +337 -0
- package/dist/business/permission-core.d.ts +59 -0
- package/dist/business/permission-core.js +99 -0
- package/dist/business/permission-matrix.d.ts +158 -0
- package/dist/business/permission-matrix.js +341 -0
- package/dist/business/setup-checklist.d.ts +80 -0
- package/dist/business/setup-checklist.js +92 -0
- package/dist/charts/area-chart.d.ts +35 -0
- package/dist/charts/area-chart.js +33 -0
- package/dist/charts/bar-chart.d.ts +27 -0
- package/dist/charts/bar-chart.js +42 -0
- package/dist/charts/bar-list.d.ts +47 -0
- package/dist/charts/bar-list.js +60 -0
- package/dist/charts/chart-shell.d.ts +173 -0
- package/dist/charts/chart-shell.js +205 -0
- package/dist/charts/chart.d.ts +73 -0
- package/dist/charts/chart.js +106 -0
- package/dist/charts/combo-chart.d.ts +29 -0
- package/dist/charts/combo-chart.js +47 -0
- package/dist/charts/donut-chart.d.ts +33 -0
- package/dist/charts/donut-chart.js +113 -0
- package/dist/charts/funnel.d.ts +51 -0
- package/dist/charts/funnel.js +69 -0
- package/dist/charts/gauge.d.ts +62 -0
- package/dist/charts/gauge.js +104 -0
- package/dist/charts/heatmap.d.ts +81 -0
- package/dist/charts/heatmap.js +338 -0
- package/dist/charts/index.d.ts +12 -0
- package/dist/charts/index.js +14 -0
- package/dist/charts/line-chart.d.ts +21 -0
- package/dist/charts/line-chart.js +36 -0
- package/dist/charts/test-utils.d.ts +2 -0
- package/dist/charts/test-utils.js +38 -0
- package/dist/charts/utils.d.ts +130 -0
- package/dist/charts/utils.js +262 -0
- package/dist/components/accordion.d.ts +47 -0
- package/dist/components/accordion.js +70 -0
- package/dist/components/activity-timeline.d.ts +149 -0
- package/dist/components/activity-timeline.js +122 -0
- package/dist/components/address-field.d.ts +116 -0
- package/dist/components/address-field.js +219 -0
- package/dist/components/alert-dialog.d.ts +99 -0
- package/dist/components/alert-dialog.js +192 -0
- package/dist/components/alert.d.ts +42 -0
- package/dist/components/alert.js +82 -0
- package/dist/components/app-shell.d.ts +159 -0
- package/dist/components/app-shell.js +289 -0
- package/dist/components/attachment-list.d.ts +96 -0
- package/dist/components/attachment-list.js +196 -0
- package/dist/components/audit-log.d.ts +150 -0
- package/dist/components/audit-log.js +205 -0
- package/dist/components/avatar.d.ts +87 -0
- package/dist/components/avatar.js +126 -0
- package/dist/components/badge.d.ts +41 -0
- package/dist/components/badge.js +68 -0
- package/dist/components/breadcrumb.d.ts +78 -0
- package/dist/components/breadcrumb.js +106 -0
- package/dist/components/button-group.d.ts +52 -0
- package/dist/components/button-group.js +77 -0
- package/dist/components/button.d.ts +58 -0
- package/dist/components/button.js +107 -0
- package/dist/components/calendar.d.ts +240 -0
- package/dist/components/calendar.js +483 -0
- package/dist/components/card.d.ts +66 -0
- package/dist/components/card.js +76 -0
- package/dist/components/carousel.d.ts +170 -0
- package/dist/components/carousel.js +348 -0
- package/dist/components/checkbox.d.ts +78 -0
- package/dist/components/checkbox.js +138 -0
- package/dist/components/color-picker.d.ts +112 -0
- package/dist/components/color-picker.js +235 -0
- package/dist/components/combobox.d.ts +136 -0
- package/dist/components/combobox.js +294 -0
- package/dist/components/command.d.ts +275 -0
- package/dist/components/command.js +493 -0
- package/dist/components/comment-thread.d.ts +252 -0
- package/dist/components/comment-thread.js +449 -0
- package/dist/components/context-menu.d.ts +77 -0
- package/dist/components/context-menu.js +82 -0
- package/dist/components/currency-input.d.ts +43 -0
- package/dist/components/currency-input.js +85 -0
- package/dist/components/date-picker.d.ts +141 -0
- package/dist/components/date-picker.js +241 -0
- package/dist/components/date-range-picker.d.ts +91 -0
- package/dist/components/date-range-picker.js +251 -0
- package/dist/components/description-list.d.ts +92 -0
- package/dist/components/description-list.js +42 -0
- package/dist/components/dialog.d.ts +139 -0
- package/dist/components/dialog.js +185 -0
- package/dist/components/dropdown-menu.d.ts +100 -0
- package/dist/components/dropdown-menu.js +102 -0
- package/dist/components/editor-layout.d.ts +166 -0
- package/dist/components/editor-layout.js +237 -0
- package/dist/components/empty-state.d.ts +49 -0
- package/dist/components/empty-state.js +68 -0
- package/dist/components/entity-card.d.ts +83 -0
- package/dist/components/entity-card.js +92 -0
- package/dist/components/file-upload.d.ts +256 -0
- package/dist/components/file-upload.js +490 -0
- package/dist/components/formatted-input.d.ts +177 -0
- package/dist/components/formatted-input.js +399 -0
- package/dist/components/hierarchy-chart.d.ts +190 -0
- package/dist/components/hierarchy-chart.js +890 -0
- package/dist/components/hover-card.d.ts +21 -0
- package/dist/components/hover-card.js +32 -0
- package/dist/components/iban-input.d.ts +38 -0
- package/dist/components/iban-input.js +112 -0
- package/dist/components/id-input.d.ts +65 -0
- package/dist/components/id-input.js +130 -0
- package/dist/components/image.d.ts +130 -0
- package/dist/components/image.js +168 -0
- package/dist/components/input-otp.d.ts +62 -0
- package/dist/components/input-otp.js +73 -0
- package/dist/components/input.d.ts +141 -0
- package/dist/components/input.js +187 -0
- package/dist/components/item.d.ts +96 -0
- package/dist/components/item.js +113 -0
- package/dist/components/kbd.d.ts +64 -0
- package/dist/components/kbd.js +119 -0
- package/dist/components/list-layout.d.ts +144 -0
- package/dist/components/list-layout.js +210 -0
- package/dist/components/native-select.d.ts +33 -0
- package/dist/components/native-select.js +48 -0
- package/dist/components/navigation-menu.d.ts +127 -0
- package/dist/components/navigation-menu.js +129 -0
- package/dist/components/notification-center.d.ts +164 -0
- package/dist/components/notification-center.js +399 -0
- package/dist/components/page-header.d.ts +60 -0
- package/dist/components/page-header.js +60 -0
- package/dist/components/pagination.d.ts +121 -0
- package/dist/components/pagination.js +174 -0
- package/dist/components/phone-input.d.ts +49 -0
- package/dist/components/phone-input.js +266 -0
- package/dist/components/popover.d.ts +38 -0
- package/dist/components/popover.js +69 -0
- package/dist/components/progress.d.ts +79 -0
- package/dist/components/progress.js +97 -0
- package/dist/components/radio-group.d.ts +43 -0
- package/dist/components/radio-group.js +81 -0
- package/dist/components/record-detail-layout.d.ts +167 -0
- package/dist/components/record-detail-layout.js +233 -0
- package/dist/components/record-picker.d.ts +199 -0
- package/dist/components/record-picker.js +650 -0
- package/dist/components/resizable.d.ts +50 -0
- package/dist/components/resizable.js +88 -0
- package/dist/components/scroll-area.d.ts +40 -0
- package/dist/components/scroll-area.js +56 -0
- package/dist/components/select.d.ts +126 -0
- package/dist/components/select.js +137 -0
- package/dist/components/separator.d.ts +31 -0
- package/dist/components/separator.js +41 -0
- package/dist/components/settings-layout.d.ts +134 -0
- package/dist/components/settings-layout.js +180 -0
- package/dist/components/sheet.d.ts +103 -0
- package/dist/components/sheet.js +165 -0
- package/dist/components/sidebar.d.ts +171 -0
- package/dist/components/sidebar.js +421 -0
- package/dist/components/signature-pad.d.ts +85 -0
- package/dist/components/signature-pad.js +283 -0
- package/dist/components/skeleton.d.ts +64 -0
- package/dist/components/skeleton.js +53 -0
- package/dist/components/slider.d.ts +57 -0
- package/dist/components/slider.js +133 -0
- package/dist/components/slug-input.d.ts +69 -0
- package/dist/components/slug-input.js +201 -0
- package/dist/components/sparkline.d.ts +54 -0
- package/dist/components/sparkline.js +122 -0
- package/dist/components/spinner.d.ts +34 -0
- package/dist/components/spinner.js +34 -0
- package/dist/components/stat.d.ts +135 -0
- package/dist/components/stat.js +130 -0
- package/dist/components/status-picker.d.ts +107 -0
- package/dist/components/status-picker.js +175 -0
- package/dist/components/stepper.d.ts +86 -0
- package/dist/components/stepper.js +103 -0
- package/dist/components/switch.d.ts +34 -0
- package/dist/components/switch.js +70 -0
- package/dist/components/table.d.ts +101 -0
- package/dist/components/table.js +72 -0
- package/dist/components/tabs.d.ts +103 -0
- package/dist/components/tabs.js +173 -0
- package/dist/components/tag-input.d.ts +77 -0
- package/dist/components/tag-input.js +305 -0
- package/dist/components/task-list.d.ts +89 -0
- package/dist/components/task-list.js +238 -0
- package/dist/components/time-picker.d.ts +119 -0
- package/dist/components/time-picker.js +399 -0
- package/dist/components/toast.d.ts +87 -0
- package/dist/components/toast.js +142 -0
- package/dist/components/toggle.d.ts +77 -0
- package/dist/components/toggle.js +109 -0
- package/dist/components/tooltip.d.ts +69 -0
- package/dist/components/tooltip.js +105 -0
- package/dist/components/top-bar.d.ts +87 -0
- package/dist/components/top-bar.js +99 -0
- package/dist/components/tree-select.d.ts +89 -0
- package/dist/components/tree-select.js +243 -0
- package/dist/components/tree-view.d.ts +109 -0
- package/dist/components/tree-view.js +170 -0
- package/dist/components/typography.d.ts +107 -0
- package/dist/components/typography.js +128 -0
- package/dist/components/user-picker.d.ts +89 -0
- package/dist/components/user-picker.js +162 -0
- package/dist/components/version-history.d.ts +191 -0
- package/dist/components/version-history.js +431 -0
- package/dist/data-table/csv.d.ts +27 -0
- package/dist/data-table/csv.js +68 -0
- package/dist/data-table/data-table.d.ts +423 -0
- package/dist/data-table/data-table.js +1259 -0
- package/dist/data-table/filter-bar.d.ts +146 -0
- package/dist/data-table/filter-bar.js +569 -0
- package/dist/data-table/filter-fns.d.ts +65 -0
- package/dist/data-table/filter-fns.js +382 -0
- package/dist/data-table/index.d.ts +8 -0
- package/dist/data-table/index.js +9 -0
- package/dist/data-table/saved-views.d.ts +100 -0
- package/dist/data-table/saved-views.js +251 -0
- package/dist/data-table/types.d.ts +168 -0
- package/dist/data-table/types.js +87 -0
- package/dist/data-table/url-state.d.ts +94 -0
- package/dist/data-table/url-state.js +303 -0
- package/dist/data-table/view-state.d.ts +16 -0
- package/dist/data-table/view-state.js +81 -0
- package/dist/editor/_test-setup.d.ts +1 -0
- package/dist/editor/_test-setup.js +33 -0
- package/dist/editor/block-editor.d.ts +137 -0
- package/dist/editor/block-editor.js +280 -0
- package/dist/editor/commands.d.ts +31 -0
- package/dist/editor/commands.js +150 -0
- package/dist/editor/context.d.ts +108 -0
- package/dist/editor/context.js +30 -0
- package/dist/editor/convert.d.ts +66 -0
- package/dist/editor/convert.js +567 -0
- package/dist/editor/drag-handle.d.ts +10 -0
- package/dist/editor/drag-handle.js +69 -0
- package/dist/editor/extensions.d.ts +34 -0
- package/dist/editor/extensions.js +239 -0
- package/dist/editor/index.d.ts +14 -0
- package/dist/editor/index.js +17 -0
- package/dist/editor/inserter.d.ts +12 -0
- package/dist/editor/inserter.js +88 -0
- package/dist/editor/inspector.d.ts +17 -0
- package/dist/editor/inspector.js +65 -0
- package/dist/editor/items.d.ts +62 -0
- package/dist/editor/items.js +195 -0
- package/dist/editor/labels.d.ts +119 -0
- package/dist/editor/labels.js +130 -0
- package/dist/editor/markdown.d.ts +14 -0
- package/dist/editor/markdown.js +209 -0
- package/dist/editor/menus.d.ts +20 -0
- package/dist/editor/menus.js +236 -0
- package/dist/editor/nodes.d.ts +14 -0
- package/dist/editor/nodes.js +201 -0
- package/dist/editor/outline.d.ts +11 -0
- package/dist/editor/outline.js +52 -0
- package/dist/editor/schema-form.d.ts +64 -0
- package/dist/editor/schema-form.js +290 -0
- package/dist/editor/slash-menu.d.ts +15 -0
- package/dist/editor/slash-menu.js +119 -0
- package/dist/fonts/catalog.d.ts +53 -0
- package/dist/fonts/catalog.js +121 -0
- package/dist/fonts/font-picker.d.ts +70 -0
- package/dist/fonts/font-picker.js +225 -0
- package/dist/fonts/index.d.ts +6 -0
- package/dist/fonts/index.js +7 -0
- package/dist/fonts/loader.d.ts +66 -0
- package/dist/fonts/loader.js +161 -0
- package/dist/fonts/pairing-picker.d.ts +31 -0
- package/dist/fonts/pairing-picker.js +81 -0
- package/dist/fonts/pairings.d.ts +84 -0
- package/dist/fonts/pairings.js +149 -0
- package/dist/fonts/provider.d.ts +34 -0
- package/dist/fonts/provider.js +51 -0
- package/dist/form/index.d.ts +1 -0
- package/dist/form/index.js +1 -0
- package/dist/format/core.d.ts +149 -0
- package/dist/format/core.js +357 -0
- package/dist/format/index.d.ts +4 -0
- package/dist/format/index.js +5 -0
- package/dist/format/use-format.d.ts +1 -0
- package/dist/format/use-format.js +3 -0
- package/dist/index.d.ts +86 -0
- package/dist/index.js +87 -0
- package/dist/lib/cn.d.ts +3 -0
- package/dist/lib/cn.js +16 -0
- package/dist/lib/color.d.ts +64 -0
- package/dist/lib/color.js +177 -0
- package/dist/lib/compose-refs.d.ts +24 -0
- package/dist/lib/compose-refs.js +45 -0
- package/dist/lib/data-islands.d.ts +194 -0
- package/dist/lib/data-islands.js +368 -0
- package/dist/lib/date.d.ts +129 -0
- package/dist/lib/date.js +386 -0
- package/dist/lib/field-context.d.ts +64 -0
- package/dist/lib/field-context.js +62 -0
- package/dist/lib/floating-arrow.d.ts +18 -0
- package/dist/lib/floating-arrow.js +15 -0
- package/dist/lib/islands.d.ts +38 -0
- package/dist/lib/islands.js +40 -0
- package/dist/lib/labels.d.ts +51 -0
- package/dist/lib/labels.js +56 -0
- package/dist/lib/layer.d.ts +36 -0
- package/dist/lib/layer.js +42 -0
- package/dist/lib/locale.d.ts +85 -0
- package/dist/lib/locale.js +105 -0
- package/dist/lib/menu.d.ts +58 -0
- package/dist/lib/menu.js +99 -0
- package/dist/lib/message-format.d.ts +20 -0
- package/dist/lib/message-format.js +116 -0
- package/dist/lib/nav.d.ts +132 -0
- package/dist/lib/nav.js +178 -0
- package/dist/lib/provider.d.ts +100 -0
- package/dist/lib/provider.js +105 -0
- package/dist/lib/public.d.ts +22 -0
- package/dist/lib/public.js +33 -0
- package/dist/lib/sr-name.d.ts +18 -0
- package/dist/lib/sr-name.js +17 -0
- package/dist/lib/text.d.ts +100 -0
- package/dist/lib/text.js +233 -0
- package/dist/lib/theme-scope.d.ts +58 -0
- package/dist/lib/theme-scope.js +59 -0
- package/dist/lib/use-async-list.d.ts +60 -0
- package/dist/lib/use-async-list.js +119 -0
- package/dist/lib/use-container-width.d.ts +19 -0
- package/dist/lib/use-container-width.js +39 -0
- package/dist/lib/use-controllable-state.d.ts +33 -0
- package/dist/lib/use-controllable-state.js +56 -0
- package/dist/lib/use-edge-fade.d.ts +13 -0
- package/dist/lib/use-edge-fade.js +43 -0
- package/dist/lib/use-formatted-input.d.ts +69 -0
- package/dist/lib/use-formatted-input.js +152 -0
- package/dist/lib/use-hotkeys.d.ts +80 -0
- package/dist/lib/use-hotkeys.js +221 -0
- package/dist/lib/use-hover-intent.d.ts +44 -0
- package/dist/lib/use-hover-intent.js +119 -0
- package/dist/lib/use-media-query.d.ts +21 -0
- package/dist/lib/use-media-query.js +28 -0
- package/dist/lib/use-reduced-motion.d.ts +8 -0
- package/dist/lib/use-reduced-motion.js +13 -0
- package/dist/lib/use-tree.d.ts +153 -0
- package/dist/lib/use-tree.js +534 -0
- package/dist/lib/value-format.d.ts +25 -0
- package/dist/lib/value-format.js +56 -0
- package/dist/lib/variants.d.ts +131 -0
- package/dist/lib/variants.js +109 -0
- package/dist/locale-data/core/date.d.ts +24 -0
- package/dist/locale-data/core/date.js +68 -0
- package/dist/locale-data/core/decimal.d.ts +19 -0
- package/dist/locale-data/core/decimal.js +79 -0
- package/dist/locale-data/core/holidays.d.ts +30 -0
- package/dist/locale-data/core/holidays.js +79 -0
- package/dist/locale-data/core/iban.d.ts +29 -0
- package/dist/locale-data/core/iban.js +74 -0
- package/dist/locale-data/core/index.d.ts +7 -0
- package/dist/locale-data/core/index.js +6 -0
- package/dist/locale-data/core/types.d.ts +173 -0
- package/dist/locale-data/core/types.js +6 -0
- package/dist/locale-data/core/week-info.d.ts +23 -0
- package/dist/locale-data/core/week-info.js +85 -0
- package/dist/locale-data/core/working-days.d.ts +27 -0
- package/dist/locale-data/core/working-days.js +133 -0
- package/dist/locale-data/index.d.ts +2 -0
- package/dist/locale-data/index.js +4 -0
- package/dist/locale-data/tr/address-tr.json +1 -0
- package/dist/locale-data/tr/address.d.ts +23 -0
- package/dist/locale-data/tr/address.js +52 -0
- package/dist/locale-data/tr/holidays.d.ts +31 -0
- package/dist/locale-data/tr/holidays.js +81 -0
- package/dist/locale-data/tr/iban.d.ts +21 -0
- package/dist/locale-data/tr/iban.js +45 -0
- package/dist/locale-data/tr/id.d.ts +36 -0
- package/dist/locale-data/tr/id.js +120 -0
- package/dist/locale-data/tr/index.d.ts +12 -0
- package/dist/locale-data/tr/index.js +33 -0
- package/dist/locale-data/tr/kdv.d.ts +91 -0
- package/dist/locale-data/tr/kdv.js +222 -0
- package/dist/locales/en.d.ts +2102 -0
- package/dist/locales/en.js +2088 -0
- package/dist/locales/tr.d.ts +2086 -0
- package/dist/locales/tr.js +2087 -0
- package/dist/media/focal-point.d.ts +42 -0
- package/dist/media/focal-point.js +96 -0
- package/dist/media/gallery-layout.d.ts +19 -0
- package/dist/media/gallery-layout.js +61 -0
- package/dist/media/gallery.d.ts +64 -0
- package/dist/media/gallery.js +138 -0
- package/dist/media/image-cropper.d.ts +86 -0
- package/dist/media/image-cropper.js +170 -0
- package/dist/media/image-field.d.ts +115 -0
- package/dist/media/image-field.js +212 -0
- package/dist/media/index.d.ts +19 -0
- package/dist/media/index.js +23 -0
- package/dist/media/lightbox.d.ts +82 -0
- package/dist/media/lightbox.js +171 -0
- package/dist/media/link-preview.d.ts +97 -0
- package/dist/media/link-preview.js +177 -0
- package/dist/media/media-library.d.ts +244 -0
- package/dist/media/media-library.js +776 -0
- package/dist/media/media-picker.d.ts +96 -0
- package/dist/media/media-picker.js +209 -0
- package/dist/media/media-provider.d.ts +23 -0
- package/dist/media/media-provider.js +44 -0
- package/dist/media/media-utils.d.ts +39 -0
- package/dist/media/media-utils.js +145 -0
- package/dist/media/memory-adapter.d.ts +22 -0
- package/dist/media/memory-adapter.js +162 -0
- package/dist/media/rest-adapter.d.ts +90 -0
- package/dist/media/rest-adapter.js +208 -0
- package/dist/media/serp.d.ts +62 -0
- package/dist/media/serp.js +108 -0
- package/dist/media/test-fixtures.d.ts +3 -0
- package/dist/media/test-fixtures.js +37 -0
- package/dist/media/types.d.ts +183 -0
- package/dist/media/types.js +3 -0
- package/dist/media/use-pan-zoom.d.ts +51 -0
- package/dist/media/use-pan-zoom.js +156 -0
- package/dist/media/use-upload-queue.d.ts +64 -0
- package/dist/media/use-upload-queue.js +115 -0
- package/dist/media/video-player.d.ts +135 -0
- package/dist/media/video-player.js +319 -0
- package/dist/next/index.d.ts +42 -0
- package/dist/next/index.js +36 -0
- package/dist/render/block-renderer.d.ts +56 -0
- package/dist/render/block-renderer.js +137 -0
- package/dist/render/index.d.ts +6 -0
- package/dist/render/index.js +7 -0
- package/dist/render/prepare.d.ts +61 -0
- package/dist/render/prepare.js +119 -0
- package/dist/scheduler/core/duration.d.ts +83 -0
- package/dist/scheduler/core/duration.js +174 -0
- package/dist/scheduler/core/gantt.d.ts +63 -0
- package/dist/scheduler/core/gantt.js +226 -0
- package/dist/scheduler/core/index.d.ts +6 -0
- package/dist/scheduler/core/index.js +7 -0
- package/dist/scheduler/core/layout.d.ts +97 -0
- package/dist/scheduler/core/layout.js +249 -0
- package/dist/scheduler/core/time-scale.d.ts +89 -0
- package/dist/scheduler/core/time-scale.js +173 -0
- package/dist/scheduler/gantt.d.ts +125 -0
- package/dist/scheduler/gantt.js +532 -0
- package/dist/scheduler/index.d.ts +6 -0
- package/dist/scheduler/index.js +7 -0
- package/dist/scheduler/resource-calendar.d.ts +218 -0
- package/dist/scheduler/resource-calendar.js +661 -0
- package/dist/scheduler/scheduler.d.ts +168 -0
- package/dist/scheduler/scheduler.js +768 -0
- package/dist/scheduler/shared.d.ts +63 -0
- package/dist/scheduler/shared.js +145 -0
- package/dist/scheduler/time-tracker.d.ts +138 -0
- package/dist/scheduler/time-tracker.js +403 -0
- package/dist/sortable/core.d.ts +67 -0
- package/dist/sortable/core.js +167 -0
- package/dist/sortable/index.d.ts +8 -0
- package/dist/sortable/index.js +10 -0
- package/dist/sortable/kanban-core.d.ts +70 -0
- package/dist/sortable/kanban-core.js +67 -0
- package/dist/sortable/kanban.d.ts +147 -0
- package/dist/sortable/kanban.js +472 -0
- package/dist/sortable/sortable-list.d.ts +71 -0
- package/dist/sortable/sortable-list.js +76 -0
- package/dist/sortable/sortable-tree.d.ts +101 -0
- package/dist/sortable/sortable-tree.js +450 -0
- package/dist/sortable/sortable.d.ts +188 -0
- package/dist/sortable/sortable.js +485 -0
- package/dist/sortable/use-pointer-drag.d.ts +75 -0
- package/dist/sortable/use-pointer-drag.js +173 -0
- package/dist/sortable/use-time-scale.d.ts +11 -0
- package/dist/sortable/use-time-scale.js +19 -0
- package/dist/styles/base.css +51 -0
- package/dist/styles/blocks.css +949 -0
- package/dist/styles/calendar.css +642 -0
- package/dist/styles/charts.css +264 -0
- package/dist/styles/data.css +474 -0
- package/dist/styles/editors.css +1022 -0
- package/dist/styles/forms.css +406 -0
- package/dist/styles/media.css +515 -0
- package/dist/styles/navigation.css +293 -0
- package/dist/styles/overlays.css +244 -0
- package/dist/styles.css +742 -0
- package/package.json +156 -4
|
@@ -0,0 +1,427 @@
|
|
|
1
|
+
// Built-in strings for the registry-2 site blocks (pricing, menu, map & hours, consent, footer…).
|
|
2
|
+
// Server-safe: no context. Blocks take `labels`; `createBlocks({ labels })` binds them once.
|
|
3
|
+
import { formatMessage } from "../../../lib/message-format.js";
|
|
4
|
+
import { blockLabels } from "../../labels.js";
|
|
5
|
+
/** English defaults. */
|
|
6
|
+
export const site2Labels = {
|
|
7
|
+
// Pricing / comparison
|
|
8
|
+
billingPeriod: "Billing period",
|
|
9
|
+
monthly: "Monthly",
|
|
10
|
+
yearly: "Yearly",
|
|
11
|
+
perMonth: "/mo",
|
|
12
|
+
perYear: "/yr",
|
|
13
|
+
oneOff: "one-off",
|
|
14
|
+
priceFrom: "from",
|
|
15
|
+
priceFree: "Free",
|
|
16
|
+
included: "Included",
|
|
17
|
+
notIncluded: "Not included",
|
|
18
|
+
yes: "Yes",
|
|
19
|
+
no: "No",
|
|
20
|
+
comparePlans: "Compare plans",
|
|
21
|
+
showPlan: "Show plan",
|
|
22
|
+
feature: "Feature",
|
|
23
|
+
// Testimonials
|
|
24
|
+
quoteOpen: "“",
|
|
25
|
+
quoteClose: "”",
|
|
26
|
+
ratingOutOf: "{rating} out of 5",
|
|
27
|
+
ratingSummary: "{rating} on {source}",
|
|
28
|
+
ratingSummaryDirect: "Rated {rating} out of 5",
|
|
29
|
+
reviewCount: "{count, plural, one {# review} other {# reviews}}",
|
|
30
|
+
readAllReviews: "Read all reviews",
|
|
31
|
+
previous: "Previous",
|
|
32
|
+
next: "Next",
|
|
33
|
+
slideCounter: "{index} / {total}",
|
|
34
|
+
slideLabel: "{index} of {total}",
|
|
35
|
+
carousel: "carousel",
|
|
36
|
+
slide: "slide",
|
|
37
|
+
// Team
|
|
38
|
+
profileOf: "{name} on {network}",
|
|
39
|
+
// Blog
|
|
40
|
+
minRead: "{count} min read",
|
|
41
|
+
noPosts: "No posts here yet",
|
|
42
|
+
noPostsHint: "New articles land here first. Check back soon.",
|
|
43
|
+
categories: "Categories",
|
|
44
|
+
allPosts: "All posts",
|
|
45
|
+
pagination: "Pagination",
|
|
46
|
+
previousPage: "Previous page",
|
|
47
|
+
nextPage: "Next page",
|
|
48
|
+
pageOf: "Page {page} of {total}",
|
|
49
|
+
by: "By {name}",
|
|
50
|
+
// Article
|
|
51
|
+
onThisPage: "On this page",
|
|
52
|
+
breadcrumb: "Breadcrumb",
|
|
53
|
+
tags: "Tags",
|
|
54
|
+
share: "Share",
|
|
55
|
+
copyLink: "Copy link",
|
|
56
|
+
linkCopied: "Link copied",
|
|
57
|
+
shareOn: "Share on {network}",
|
|
58
|
+
shareByEmail: "Share by email",
|
|
59
|
+
updated: "Updated {date}",
|
|
60
|
+
published: "Published {date}",
|
|
61
|
+
preview: "Preview",
|
|
62
|
+
previewNotice: "Draft preview — not visible to visitors.",
|
|
63
|
+
writtenBy: "Written by",
|
|
64
|
+
relatedPosts: "Related reading",
|
|
65
|
+
// Contact form
|
|
66
|
+
fieldName: "Full name",
|
|
67
|
+
fieldEmail: "Email",
|
|
68
|
+
fieldPhone: "Phone",
|
|
69
|
+
fieldCompany: "Company",
|
|
70
|
+
fieldSubject: "Subject",
|
|
71
|
+
fieldBudget: "Budget",
|
|
72
|
+
fieldMessage: "Message",
|
|
73
|
+
fieldDate: "Preferred date",
|
|
74
|
+
choose: "Choose…",
|
|
75
|
+
send: "Send message",
|
|
76
|
+
sending: "Sending…",
|
|
77
|
+
sent: "Thanks — your message is in. We usually reply within one working day.",
|
|
78
|
+
required: "Required",
|
|
79
|
+
optional: "(optional)",
|
|
80
|
+
errorRequired: "Please fill in {field}.",
|
|
81
|
+
errorEmail: "Enter an email address like name@company.com.",
|
|
82
|
+
errorPhone: "Enter a phone number with country code, e.g. +90 216 000 00 00.",
|
|
83
|
+
errorTooLong: "Keep {field} under {max} characters.",
|
|
84
|
+
errorSummary: "{count, plural, one {Fix # field to send the form:} other {Fix # fields to send the form:}}",
|
|
85
|
+
errorServer: "We couldn’t send your message.",
|
|
86
|
+
errorServerCall: "Please try again, or call us on {phone}.",
|
|
87
|
+
privacyRead: "I have read the {link}.",
|
|
88
|
+
privacyLink: "privacy notice",
|
|
89
|
+
privacyRequired: "Please confirm you have read the privacy notice.",
|
|
90
|
+
marketingConsent: "Send me occasional news and offers. I can unsubscribe at any time.",
|
|
91
|
+
honeypot: "Leave this field empty",
|
|
92
|
+
contactDetails: "Contact details",
|
|
93
|
+
address: "Address",
|
|
94
|
+
phone: "Phone",
|
|
95
|
+
email: "Email",
|
|
96
|
+
hours: "Hours",
|
|
97
|
+
// Map & hours
|
|
98
|
+
openNow: "Open now",
|
|
99
|
+
closesAt: "closes at {time}",
|
|
100
|
+
closingSoon: "Closing soon",
|
|
101
|
+
closed: "Closed",
|
|
102
|
+
closedToday: "Closed today",
|
|
103
|
+
opensAt: "opens {day} at {time}",
|
|
104
|
+
opensTodayAt: "opens at {time}",
|
|
105
|
+
open24h: "Open 24 hours",
|
|
106
|
+
openingHours: "Opening hours",
|
|
107
|
+
openingHoursOf: "Opening hours, {name}",
|
|
108
|
+
today: "Today",
|
|
109
|
+
closedDay: "Closed",
|
|
110
|
+
loadMap: "Load map",
|
|
111
|
+
mapOf: "Map of {name}",
|
|
112
|
+
mapNotice: "The map loads from {provider}, which may set cookies.",
|
|
113
|
+
rememberChoice: "Always load maps",
|
|
114
|
+
directions: "Directions",
|
|
115
|
+
directionsVia: "Directions in {provider}",
|
|
116
|
+
branches: "Locations",
|
|
117
|
+
chooseBranch: "Choose a location",
|
|
118
|
+
call: "Call",
|
|
119
|
+
callNumber: "Call {phone}",
|
|
120
|
+
// Menu
|
|
121
|
+
menuCategories: "Menu sections",
|
|
122
|
+
unavailable: "Not today",
|
|
123
|
+
marketPrice: "Market price",
|
|
124
|
+
allergens: "Allergens",
|
|
125
|
+
book: "Book",
|
|
126
|
+
bookService: "Book {service}",
|
|
127
|
+
tagVegetarian: "Vegetarian",
|
|
128
|
+
tagVegan: "Vegan",
|
|
129
|
+
tagGlutenFree: "Gluten-free",
|
|
130
|
+
tagSpicy: "Spicy",
|
|
131
|
+
tagNew: "New",
|
|
132
|
+
tagChefPick: "Chef’s pick",
|
|
133
|
+
allergen_gluten: "Gluten",
|
|
134
|
+
allergen_crustaceans: "Crustaceans",
|
|
135
|
+
allergen_eggs: "Eggs",
|
|
136
|
+
allergen_fish: "Fish",
|
|
137
|
+
allergen_peanuts: "Peanuts",
|
|
138
|
+
allergen_soybeans: "Soy",
|
|
139
|
+
allergen_milk: "Milk",
|
|
140
|
+
allergen_nuts: "Tree nuts",
|
|
141
|
+
allergen_celery: "Celery",
|
|
142
|
+
allergen_mustard: "Mustard",
|
|
143
|
+
allergen_sesame: "Sesame",
|
|
144
|
+
allergen_sulphites: "Sulphites",
|
|
145
|
+
allergen_lupin: "Lupin",
|
|
146
|
+
allergen_molluscs: "Molluscs",
|
|
147
|
+
// Gallery
|
|
148
|
+
openImage: "Open image {index} of {total}",
|
|
149
|
+
imageCounter: "{index} / {total}",
|
|
150
|
+
galleryImages: "{count, plural, one {# photo} other {# photos}}",
|
|
151
|
+
// Consent
|
|
152
|
+
cookies: "Cookies",
|
|
153
|
+
cookieConsent: "Cookie consent",
|
|
154
|
+
acceptAll: "Accept all",
|
|
155
|
+
rejectAll: "Reject all",
|
|
156
|
+
preferences: "Preferences",
|
|
157
|
+
savePreferences: "Save choices",
|
|
158
|
+
cookiePreferences: "Cookie preferences",
|
|
159
|
+
cookiePreferencesLead: "Choose which cookies we may use. Necessary cookies keep the site working and can’t be switched off.",
|
|
160
|
+
cookiePolicy: "Cookie policy",
|
|
161
|
+
catNecessary: "Necessary",
|
|
162
|
+
catNecessaryHint: "Security, load balancing and remembering this choice.",
|
|
163
|
+
catFunctional: "Functional",
|
|
164
|
+
catFunctionalHint: "Maps, video players and chat that remember your settings.",
|
|
165
|
+
catAnalytics: "Analytics",
|
|
166
|
+
catAnalyticsHint: "Anonymous visit statistics that help us improve pages.",
|
|
167
|
+
catMarketing: "Marketing",
|
|
168
|
+
catMarketingHint: "Ad measurement and personalised ads on other sites.",
|
|
169
|
+
alwaysOn: "Always on",
|
|
170
|
+
cookieText: "We use necessary cookies to run this site. With your permission we’d also use analytics and marketing cookies. You can change this any time under Cookie settings.",
|
|
171
|
+
cookieSettings: "Cookie settings",
|
|
172
|
+
loadContent: "Load {provider}",
|
|
173
|
+
contentNotice: "This content is hosted by {provider}, which may set cookies.",
|
|
174
|
+
// Contact dock
|
|
175
|
+
messageUs: "Message us",
|
|
176
|
+
messageUsOn: "Message us on {network}",
|
|
177
|
+
contactActions: "Quick contact",
|
|
178
|
+
directionsShort: "Directions",
|
|
179
|
+
booking: "Book",
|
|
180
|
+
emailShort: "Email",
|
|
181
|
+
offHours: "We’re closed now — leave a message and we’ll reply in the morning.",
|
|
182
|
+
// Footer
|
|
183
|
+
footer: "Footer",
|
|
184
|
+
footerNav: "Footer",
|
|
185
|
+
social: "Social media",
|
|
186
|
+
legal: "Legal",
|
|
187
|
+
copyright: "© {year} {name}",
|
|
188
|
+
madeBy: "Site by {name}",
|
|
189
|
+
newsletter: "Newsletter",
|
|
190
|
+
newsletterHint: "One email a month. No spam.",
|
|
191
|
+
emailAddress: "Email address",
|
|
192
|
+
subscribe: "Subscribe",
|
|
193
|
+
subscribed: "Thanks — check your inbox to confirm.",
|
|
194
|
+
// 404
|
|
195
|
+
notFoundCode: "Error 404",
|
|
196
|
+
notFoundTitle: "This page moved, or never *existed*.",
|
|
197
|
+
notFoundText: "The link may be old or mistyped. Try the pages below, or search the site.",
|
|
198
|
+
serverErrorCode: "Error 500",
|
|
199
|
+
serverErrorTitle: "Something went *wrong* on our side.",
|
|
200
|
+
serverErrorText: "The page didn’t load. It’s usually temporary — try again in a moment.",
|
|
201
|
+
maintenanceCode: "Maintenance",
|
|
202
|
+
maintenanceTitle: "We’ll be *back* shortly.",
|
|
203
|
+
maintenanceText: "We’re updating the site. Bookings by phone work as usual.",
|
|
204
|
+
backHome: "Back to home",
|
|
205
|
+
tryAgain: "Try again",
|
|
206
|
+
search: "Search",
|
|
207
|
+
searchSite: "Search the site",
|
|
208
|
+
searchPlaceholder: "What were you looking for?",
|
|
209
|
+
popularPages: "Popular pages",
|
|
210
|
+
stillStuck: "Still stuck? Call {phone}.",
|
|
211
|
+
};
|
|
212
|
+
/** Turkish dictionary. Legal-flavoured texts are neutral templates — review with counsel. */
|
|
213
|
+
export const site2LabelsTr = {
|
|
214
|
+
billingPeriod: "Ödeme dönemi",
|
|
215
|
+
monthly: "Aylık",
|
|
216
|
+
yearly: "Yıllık",
|
|
217
|
+
perMonth: "/ay",
|
|
218
|
+
perYear: "/yıl",
|
|
219
|
+
oneOff: "tek sefer",
|
|
220
|
+
priceFrom: "başlayan",
|
|
221
|
+
priceFree: "Ücretsiz",
|
|
222
|
+
included: "Dahil",
|
|
223
|
+
notIncluded: "Dahil değil",
|
|
224
|
+
yes: "Evet",
|
|
225
|
+
no: "Hayır",
|
|
226
|
+
comparePlans: "Paketleri karşılaştırın",
|
|
227
|
+
showPlan: "Paketi göster",
|
|
228
|
+
feature: "Özellik",
|
|
229
|
+
quoteOpen: "“",
|
|
230
|
+
quoteClose: "”",
|
|
231
|
+
ratingOutOf: "5 üzerinden {rating}",
|
|
232
|
+
ratingSummary: "{source} puanı {rating}",
|
|
233
|
+
ratingSummaryDirect: "5 üzerinden {rating} puan",
|
|
234
|
+
reviewCount: "{count} yorum",
|
|
235
|
+
readAllReviews: "Tüm yorumları okuyun",
|
|
236
|
+
previous: "Önceki",
|
|
237
|
+
next: "Sonraki",
|
|
238
|
+
slideCounter: "{index} / {total}",
|
|
239
|
+
slideLabel: "{index} / {total}",
|
|
240
|
+
carousel: "kaydırmalı liste",
|
|
241
|
+
slide: "slayt",
|
|
242
|
+
profileOf: "{name}, {network}",
|
|
243
|
+
minRead: "{count} dk okuma",
|
|
244
|
+
noPosts: "Henüz yazı yok",
|
|
245
|
+
noPostsHint: "Yeni yazılar ilk burada yayımlanır. Yakında tekrar bakın.",
|
|
246
|
+
categories: "Kategoriler",
|
|
247
|
+
allPosts: "Tüm yazılar",
|
|
248
|
+
pagination: "Sayfalama",
|
|
249
|
+
previousPage: "Önceki sayfa",
|
|
250
|
+
nextPage: "Sonraki sayfa",
|
|
251
|
+
pageOf: "Sayfa {page} / {total}",
|
|
252
|
+
by: "Yazan: {name}",
|
|
253
|
+
onThisPage: "Bu sayfada",
|
|
254
|
+
breadcrumb: "Sayfa yolu",
|
|
255
|
+
tags: "Etiketler",
|
|
256
|
+
share: "Paylaş",
|
|
257
|
+
copyLink: "Bağlantıyı kopyala",
|
|
258
|
+
linkCopied: "Bağlantı kopyalandı",
|
|
259
|
+
shareOn: "{network} üzerinde paylaş",
|
|
260
|
+
shareByEmail: "E-postayla paylaş",
|
|
261
|
+
updated: "Güncellendi: {date}",
|
|
262
|
+
published: "Yayımlandı: {date}",
|
|
263
|
+
preview: "Önizleme",
|
|
264
|
+
previewNotice: "Taslak önizlemesi — ziyaretçiler göremez.",
|
|
265
|
+
writtenBy: "Yazar",
|
|
266
|
+
relatedPosts: "İlgili yazılar",
|
|
267
|
+
fieldName: "Ad soyad",
|
|
268
|
+
fieldEmail: "E-posta",
|
|
269
|
+
fieldPhone: "Telefon",
|
|
270
|
+
fieldCompany: "Şirket",
|
|
271
|
+
fieldSubject: "Konu",
|
|
272
|
+
fieldBudget: "Bütçe",
|
|
273
|
+
fieldMessage: "Mesaj",
|
|
274
|
+
fieldDate: "Tercih edilen tarih",
|
|
275
|
+
choose: "Seçin…",
|
|
276
|
+
send: "Mesajı gönder",
|
|
277
|
+
sending: "Gönderiliyor…",
|
|
278
|
+
sent: "Teşekkürler — mesajınız bize ulaştı. Genellikle bir iş günü içinde dönüyoruz.",
|
|
279
|
+
required: "Zorunlu",
|
|
280
|
+
optional: "(isteğe bağlı)",
|
|
281
|
+
errorRequired: "Lütfen {field} alanını doldurun.",
|
|
282
|
+
errorEmail: "ad@sirket.com gibi bir e-posta adresi girin.",
|
|
283
|
+
errorPhone: "Ülke koduyla bir telefon girin, ör. +90 216 000 00 00.",
|
|
284
|
+
errorTooLong: "{field} en fazla {max} karakter olabilir.",
|
|
285
|
+
errorSummary: "Formu göndermek için {count} alanı düzeltin:",
|
|
286
|
+
errorServer: "Mesajınız gönderilemedi.",
|
|
287
|
+
errorServerCall: "Lütfen tekrar deneyin ya da {phone} numarasından bizi arayın.",
|
|
288
|
+
privacyRead: "{link} metnini okudum.",
|
|
289
|
+
privacyLink: "KVKK aydınlatma",
|
|
290
|
+
privacyRequired: "Lütfen aydınlatma metnini okuduğunuzu onaylayın.",
|
|
291
|
+
marketingConsent: "Ara sıra haber ve kampanya e-postası almak istiyorum. İstediğim zaman ayrılabilirim.",
|
|
292
|
+
honeypot: "Bu alanı boş bırakın",
|
|
293
|
+
contactDetails: "İletişim bilgileri",
|
|
294
|
+
address: "Adres",
|
|
295
|
+
phone: "Telefon",
|
|
296
|
+
email: "E-posta",
|
|
297
|
+
hours: "Çalışma saatleri",
|
|
298
|
+
openNow: "Şu an açık",
|
|
299
|
+
closesAt: "{time}’de kapanıyor",
|
|
300
|
+
closingSoon: "Birazdan kapanıyor",
|
|
301
|
+
closed: "Kapalı",
|
|
302
|
+
closedToday: "Bugün kapalı",
|
|
303
|
+
opensAt: "{day} {time}’de açılıyor",
|
|
304
|
+
opensTodayAt: "{time}’de açılıyor",
|
|
305
|
+
open24h: "24 saat açık",
|
|
306
|
+
openingHours: "Çalışma saatleri",
|
|
307
|
+
openingHoursOf: "Çalışma saatleri, {name}",
|
|
308
|
+
today: "Bugün",
|
|
309
|
+
closedDay: "Kapalı",
|
|
310
|
+
loadMap: "Haritayı yükle",
|
|
311
|
+
mapOf: "{name} haritası",
|
|
312
|
+
mapNotice: "Harita {provider} üzerinden yüklenir ve çerez bırakabilir.",
|
|
313
|
+
rememberChoice: "Haritaları her zaman yükle",
|
|
314
|
+
directions: "Yol tarifi",
|
|
315
|
+
directionsVia: "{provider} ile yol tarifi",
|
|
316
|
+
branches: "Şubeler",
|
|
317
|
+
chooseBranch: "Şube seçin",
|
|
318
|
+
call: "Ara",
|
|
319
|
+
callNumber: "Ara: {phone}",
|
|
320
|
+
menuCategories: "Menü bölümleri",
|
|
321
|
+
unavailable: "Bugün yok",
|
|
322
|
+
marketPrice: "Güncel fiyat",
|
|
323
|
+
allergens: "Alerjenler",
|
|
324
|
+
book: "Randevu",
|
|
325
|
+
bookService: "{service} için randevu",
|
|
326
|
+
tagVegetarian: "Vejetaryen",
|
|
327
|
+
tagVegan: "Vegan",
|
|
328
|
+
tagGlutenFree: "Glutensiz",
|
|
329
|
+
tagSpicy: "Acılı",
|
|
330
|
+
tagNew: "Yeni",
|
|
331
|
+
tagChefPick: "Şefin seçimi",
|
|
332
|
+
allergen_gluten: "Gluten",
|
|
333
|
+
allergen_crustaceans: "Kabuklular",
|
|
334
|
+
allergen_eggs: "Yumurta",
|
|
335
|
+
allergen_fish: "Balık",
|
|
336
|
+
allergen_peanuts: "Yer fıstığı",
|
|
337
|
+
allergen_soybeans: "Soya",
|
|
338
|
+
allergen_milk: "Süt",
|
|
339
|
+
allergen_nuts: "Sert kabuklu yemişler",
|
|
340
|
+
allergen_celery: "Kereviz",
|
|
341
|
+
allergen_mustard: "Hardal",
|
|
342
|
+
allergen_sesame: "Susam",
|
|
343
|
+
allergen_sulphites: "Sülfitler",
|
|
344
|
+
allergen_lupin: "Acı bakla",
|
|
345
|
+
allergen_molluscs: "Yumuşakçalar",
|
|
346
|
+
openImage: "Görsel {index} / {total} aç",
|
|
347
|
+
imageCounter: "{index} / {total}",
|
|
348
|
+
galleryImages: "{count} fotoğraf",
|
|
349
|
+
cookies: "Çerezler",
|
|
350
|
+
cookieConsent: "Çerez izni",
|
|
351
|
+
acceptAll: "Tümünü kabul et",
|
|
352
|
+
rejectAll: "Tümünü reddet",
|
|
353
|
+
preferences: "Tercihler",
|
|
354
|
+
savePreferences: "Seçimleri kaydet",
|
|
355
|
+
cookiePreferences: "Çerez tercihleri",
|
|
356
|
+
cookiePreferencesLead: "Hangi çerezleri kullanabileceğimizi seçin. Zorunlu çerezler sitenin çalışması için gereklidir ve kapatılamaz.",
|
|
357
|
+
cookiePolicy: "Çerez politikası",
|
|
358
|
+
catNecessary: "Zorunlu",
|
|
359
|
+
catNecessaryHint: "Güvenlik, yük dengeleme ve bu tercihin hatırlanması.",
|
|
360
|
+
catFunctional: "İşlevsel",
|
|
361
|
+
catFunctionalHint: "Ayarlarınızı hatırlayan harita, video ve sohbet araçları.",
|
|
362
|
+
catAnalytics: "Analitik",
|
|
363
|
+
catAnalyticsHint: "Sayfaları iyileştirmemize yardım eden anonim ziyaret istatistikleri.",
|
|
364
|
+
catMarketing: "Pazarlama",
|
|
365
|
+
catMarketingHint: "Reklam ölçümü ve başka sitelerde kişiselleştirilmiş reklamlar.",
|
|
366
|
+
alwaysOn: "Her zaman açık",
|
|
367
|
+
cookieText: "Sitenin çalışması için zorunlu çerezler kullanıyoruz. İzin verirseniz analitik ve pazarlama çerezleri de kullanırız. Tercihinizi Çerez ayarları’ndan dilediğiniz zaman değiştirebilirsiniz.",
|
|
368
|
+
cookieSettings: "Çerez ayarları",
|
|
369
|
+
loadContent: "{provider} içeriğini yükle",
|
|
370
|
+
contentNotice: "Bu içerik {provider} tarafından sunulur ve çerez bırakabilir.",
|
|
371
|
+
messageUs: "Bize yazın",
|
|
372
|
+
messageUsOn: "{network} üzerinden bize yazın",
|
|
373
|
+
contactActions: "Hızlı iletişim",
|
|
374
|
+
directionsShort: "Yol tarifi",
|
|
375
|
+
booking: "Rezervasyon",
|
|
376
|
+
emailShort: "E-posta",
|
|
377
|
+
offHours: "Şu an kapalıyız — mesaj bırakın, sabah dönelim.",
|
|
378
|
+
footer: "Alt bilgi",
|
|
379
|
+
footerNav: "Alt menü",
|
|
380
|
+
social: "Sosyal medya",
|
|
381
|
+
legal: "Yasal",
|
|
382
|
+
copyright: "© {year} {name}",
|
|
383
|
+
madeBy: "Site: {name}",
|
|
384
|
+
newsletter: "Bülten",
|
|
385
|
+
newsletterHint: "Ayda bir e-posta. Spam yok.",
|
|
386
|
+
emailAddress: "E-posta adresi",
|
|
387
|
+
subscribe: "Abone ol",
|
|
388
|
+
subscribed: "Teşekkürler — onay için gelen kutunuza bakın.",
|
|
389
|
+
notFoundCode: "Hata 404",
|
|
390
|
+
notFoundTitle: "Bu sayfa taşındı ya da hiç *olmadı*.",
|
|
391
|
+
notFoundText: "Bağlantı eski ya da hatalı yazılmış olabilir. Aşağıdaki sayfalara bakın veya sitede arayın.",
|
|
392
|
+
serverErrorCode: "Hata 500",
|
|
393
|
+
serverErrorTitle: "Bizim tarafta bir şeyler *ters* gitti.",
|
|
394
|
+
serverErrorText: "Sayfa yüklenemedi. Genellikle geçicidir — birazdan tekrar deneyin.",
|
|
395
|
+
maintenanceCode: "Bakım",
|
|
396
|
+
maintenanceTitle: "Birazdan *döneceğiz*.",
|
|
397
|
+
maintenanceText: "Siteyi güncelliyoruz. Telefonla rezervasyon her zamanki gibi çalışıyor.",
|
|
398
|
+
backHome: "Ana sayfaya dön",
|
|
399
|
+
tryAgain: "Tekrar dene",
|
|
400
|
+
search: "Ara",
|
|
401
|
+
searchSite: "Sitede ara",
|
|
402
|
+
searchPlaceholder: "Ne arıyordunuz?",
|
|
403
|
+
popularPages: "Sık ziyaret edilenler",
|
|
404
|
+
stillStuck: "Hâlâ bulamadınız mı? {phone} numarasını arayın.",
|
|
405
|
+
};
|
|
406
|
+
/** Label lookup for server components: `labels` prop → English. */
|
|
407
|
+
export function site2Text(labels, locale = "en-US") {
|
|
408
|
+
const merged = { ...blockLabels, ...site2Labels };
|
|
409
|
+
if (labels)
|
|
410
|
+
for (const [k, v] of Object.entries(labels))
|
|
411
|
+
if (typeof v === "string")
|
|
412
|
+
merged[k] = v;
|
|
413
|
+
return (key, vars) => formatMessage(merged[key] ?? String(key), vars, locale);
|
|
414
|
+
}
|
|
415
|
+
/**
|
|
416
|
+
* The raw (unformatted) templates for some keys, with overrides applied — plain strings that can
|
|
417
|
+
* cross the RSC boundary into a client island, which formats them with `formatMessage`.
|
|
418
|
+
*/
|
|
419
|
+
export function labelTemplates(labels, keys) {
|
|
420
|
+
const base = { ...blockLabels, ...site2Labels };
|
|
421
|
+
const out = {};
|
|
422
|
+
for (const k of keys) {
|
|
423
|
+
const v = labels ? labels[k] : undefined;
|
|
424
|
+
out[k] = typeof v === "string" ? v : (base[k] ?? String(k));
|
|
425
|
+
}
|
|
426
|
+
return out;
|
|
427
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import { type OpeningHours } from "./opening-hours.js";
|
|
3
|
+
import type { OpenNowLabels } from "./island-keys.js";
|
|
4
|
+
export type { OpenNowLabels };
|
|
5
|
+
export interface OpenNowProps {
|
|
6
|
+
hours: OpeningHours;
|
|
7
|
+
labels: OpenNowLabels;
|
|
8
|
+
locale?: string;
|
|
9
|
+
/** "Closing soon" threshold. Default 60 minutes. */
|
|
10
|
+
soonMinutes?: number;
|
|
11
|
+
/** Fixed "now" (tests, previews, screenshots). Without it the status follows the clock. */
|
|
12
|
+
now?: string | number;
|
|
13
|
+
/** `badge`: dot + text. `text`: text only. Default `"badge"`. */
|
|
14
|
+
appearance?: "badge" | "text";
|
|
15
|
+
className?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* "Open now · closes at 22:00" — computed in the business's time zone on the client, refreshed
|
|
19
|
+
* every minute. Renders nothing on the server and without JS: a cached page never shows a stale
|
|
20
|
+
* status. ~1 KB.
|
|
21
|
+
*/
|
|
22
|
+
export declare function OpenNow({ hours, labels, locale, soonMinutes, now, appearance, className }: OpenNowProps): React.JSX.Element | null;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as React from "react";
|
|
4
|
+
import { cn2 as cn } from "./kit-2.js";
|
|
5
|
+
import { describeStatus, hoursStatus } from "./opening-hours.js";
|
|
6
|
+
/**
|
|
7
|
+
* "Open now · closes at 22:00" — computed in the business's time zone on the client, refreshed
|
|
8
|
+
* every minute. Renders nothing on the server and without JS: a cached page never shows a stale
|
|
9
|
+
* status. ~1 KB.
|
|
10
|
+
*/
|
|
11
|
+
export function OpenNow({ hours, labels, locale = "en-US", soonMinutes, now, appearance = "badge", className }) {
|
|
12
|
+
const [at, setAt] = React.useState(null);
|
|
13
|
+
React.useEffect(() => {
|
|
14
|
+
if (now !== undefined) {
|
|
15
|
+
setAt(new Date(now).getTime());
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
setAt(Date.now());
|
|
19
|
+
const id = window.setInterval(() => setAt(Date.now()), 60_000);
|
|
20
|
+
return () => window.clearInterval(id);
|
|
21
|
+
}, [now]);
|
|
22
|
+
if (at === null)
|
|
23
|
+
return null;
|
|
24
|
+
const status = hoursStatus(hours, at, { soonMinutes });
|
|
25
|
+
const { head, tail } = describeStatus(status, labels, locale);
|
|
26
|
+
return (_jsxs("span", { "data-open-state": status.state, className: cn("vb-open-now inline-flex items-center gap-2 text-small", className), children: [appearance === "badge" ? _jsx("span", { "aria-hidden": true, className: "vb-open-dot size-2 shrink-0 rounded-full" }) : null, _jsxs("span", { children: [_jsx("span", { className: "font-medium text-fg", children: head }), tail ? _jsxs("span", { className: "text-fg-muted", children: [" \u00B7 ", tail] }) : null] })] }));
|
|
27
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import type { OpeningHours, TimeRange, Weekday } from "../../schema/types.js";
|
|
2
|
+
export type { OpeningHours, TimeRange, Weekday };
|
|
3
|
+
/** Monday-first, the ISO order. */
|
|
4
|
+
export declare const WEEKDAYS: readonly Weekday[];
|
|
5
|
+
/** Wall-clock parts of an instant in a time zone. */
|
|
6
|
+
export interface ZonedMoment {
|
|
7
|
+
/** `YYYY-MM-DD` in the business's zone. */
|
|
8
|
+
date: string;
|
|
9
|
+
weekday: Weekday;
|
|
10
|
+
/** Minutes since local midnight. */
|
|
11
|
+
minutes: number;
|
|
12
|
+
}
|
|
13
|
+
/** The wall-clock date, weekday and minute of `at` in `timeZone`. */
|
|
14
|
+
export declare function zonedMoment(at: Date | number | string, timeZone: string): ZonedMoment;
|
|
15
|
+
/** "09:30" → 570; "24:00" → 1440. */
|
|
16
|
+
export declare const toMinutes: (hhmm: string) => number;
|
|
17
|
+
/** Calendar arithmetic on `YYYY-MM-DD` strings (UTC-anchored, never shifts a day). */
|
|
18
|
+
export declare function addDays(date: string, n: number): string;
|
|
19
|
+
/** The weekday of a `YYYY-MM-DD` date. */
|
|
20
|
+
export declare function weekdayOf(date: string): Weekday;
|
|
21
|
+
/** What applies on one calendar day: the special-day override, or the weekly ranges. */
|
|
22
|
+
export interface DayHours {
|
|
23
|
+
date: string;
|
|
24
|
+
weekday: Weekday;
|
|
25
|
+
ranges: TimeRange[];
|
|
26
|
+
closed: boolean;
|
|
27
|
+
/** The special-day entry that replaced the weekly hours. */
|
|
28
|
+
special?: {
|
|
29
|
+
note?: string;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/** Hours for one date (special days win over the weekly schedule). */
|
|
33
|
+
export declare function hoursOn(hours: OpeningHours, date: string): DayHours;
|
|
34
|
+
/** True when the business is open at `at` (default now). Handles past-midnight and special days. */
|
|
35
|
+
export declare function isOpenAt(hours: OpeningHours, at?: Date | number | string): boolean;
|
|
36
|
+
export type OpenState = "open" | "closing-soon" | "closed";
|
|
37
|
+
export interface OpenStatus {
|
|
38
|
+
state: OpenState;
|
|
39
|
+
/** When open: local closing time `HH:mm` (absent when open around the clock). */
|
|
40
|
+
closesAt?: string;
|
|
41
|
+
/** Minutes until closing / opening. */
|
|
42
|
+
minutesLeft?: number;
|
|
43
|
+
/** When closed: the next opening — `dayOffset` 0 = later today, 1 = tomorrow… */
|
|
44
|
+
opensAt?: {
|
|
45
|
+
time: string;
|
|
46
|
+
weekday: Weekday;
|
|
47
|
+
dayOffset: number;
|
|
48
|
+
date: string;
|
|
49
|
+
};
|
|
50
|
+
/** Open without a break for the next 24 h. */
|
|
51
|
+
allDay?: boolean;
|
|
52
|
+
/** Today is a special day (holiday, event). */
|
|
53
|
+
special?: {
|
|
54
|
+
closed: boolean;
|
|
55
|
+
note?: string;
|
|
56
|
+
};
|
|
57
|
+
/** The business's local date and weekday. */
|
|
58
|
+
today: {
|
|
59
|
+
date: string;
|
|
60
|
+
weekday: Weekday;
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Open / closing soon / closed at `at`, with the closing or next opening time.
|
|
65
|
+
*
|
|
66
|
+
* ```ts
|
|
67
|
+
* hoursStatus(hours, new Date()) // { state: "open", closesAt: "22:00", minutesLeft: 95, … }
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
export declare function hoursStatus(hours: OpeningHours, at?: Date | number | string, opts?: {
|
|
71
|
+
soonMinutes?: number;
|
|
72
|
+
}): OpenStatus;
|
|
73
|
+
/** Weekday name from the locale ("Monday" / "Pazartesi"). */
|
|
74
|
+
export declare function weekdayName(day: Weekday, locale?: string, style?: "long" | "short" | "narrow"): string;
|
|
75
|
+
/** Local `HH:mm` → "9:00 AM" (en-US) / "09:00" (tr). Whole hours drop ":00" in 12-hour locales. */
|
|
76
|
+
export declare function formatTime(hhmm: string, locale?: string): string;
|
|
77
|
+
/** "09:00–22:00" / "9 AM–10 PM". */
|
|
78
|
+
export declare const formatRange: (r: TimeRange, locale?: string) => string;
|
|
79
|
+
/** First day of the week for a locale: 1 = Monday … 7 = Sunday. */
|
|
80
|
+
export declare function weekStartOf(locale?: string): number;
|
|
81
|
+
/** The week in the locale's order (Sunday first for en-US, Monday first for tr). */
|
|
82
|
+
export declare function orderedWeek(locale?: string): Weekday[];
|
|
83
|
+
export interface WeekRow {
|
|
84
|
+
weekday: Weekday;
|
|
85
|
+
label: string;
|
|
86
|
+
ranges: TimeRange[];
|
|
87
|
+
/** "09:00–22:00, 23:00–02:00", or empty when closed. */
|
|
88
|
+
text: string;
|
|
89
|
+
closed: boolean;
|
|
90
|
+
allDay: boolean;
|
|
91
|
+
today: boolean;
|
|
92
|
+
/** The date in this week (when `at` is given) and a special-day note. */
|
|
93
|
+
date?: string;
|
|
94
|
+
note?: string;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* The 7 rows of an hours table in locale order. With `at`, rows carry this week's dates, so
|
|
98
|
+
* special days (holidays) replace the weekly hours, and `today` is marked.
|
|
99
|
+
*/
|
|
100
|
+
export declare function weekRows(hours: OpeningHours, opts?: {
|
|
101
|
+
locale?: string;
|
|
102
|
+
at?: Date | number | string;
|
|
103
|
+
style?: "long" | "short";
|
|
104
|
+
}): WeekRow[];
|
|
105
|
+
/** Consecutive days with identical hours collapsed: [{ days: "Mon–Fri", text: "09:00–18:00" }]. */
|
|
106
|
+
export declare function summarizeHours(hours: OpeningHours, locale?: string): {
|
|
107
|
+
days: string;
|
|
108
|
+
text: string;
|
|
109
|
+
closed: boolean;
|
|
110
|
+
}[];
|
|
111
|
+
/** schema.org `OpeningHoursSpecification[]` for JSON-LD (weekly + special days). */
|
|
112
|
+
export declare function openingHoursJsonLd(hours: OpeningHours): Record<string, unknown>[];
|
|
113
|
+
/** The status sentence: "Open now · closes at 22:00", "Closed · opens Thu at 12:00". */
|
|
114
|
+
export declare function describeStatus(s: OpenStatus, labels: Record<"openNow" | "closesAt" | "closingSoon" | "closed" | "closedToday" | "opensAt" | "opensTodayAt" | "open24h", string>, locale?: string): {
|
|
115
|
+
head: string;
|
|
116
|
+
tail?: string;
|
|
117
|
+
};
|