@tetherto/dev-websites-core 0.2.1 → 0.3.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/README.md +62 -9
- package/dist/cms/index.d.mts +2 -2
- package/dist/cms/index.mjs +2 -2
- package/dist/{cms-5bS91IRZ.mjs → cms.mjs} +2 -2
- package/dist/cms.mjs.map +1 -0
- package/dist/i18n/index.d.mts +1 -1
- package/dist/i18n/index.mjs +1 -1
- package/dist/{i18n-Dy3VrbBw.mjs → i18n.mjs} +1 -1
- package/dist/i18n.mjs.map +1 -0
- package/dist/index.d.mts +214 -6
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +6 -6
- package/dist/{index-D36IEwUg.d.mts → index2.d.mts} +1 -1
- package/dist/index2.d.mts.map +1 -0
- package/dist/{index-tTs9h9BS.d.mts → index3.d.mts} +2 -2
- package/dist/index3.d.mts.map +1 -0
- package/dist/{index-Dyi7DDoO.d.mts → index4.d.mts} +1 -1
- package/dist/index4.d.mts.map +1 -0
- package/dist/index5.d.mts +6 -0
- package/dist/{logger-BPURnavq.mjs → logger.mjs} +1 -1
- package/dist/logger.mjs.map +1 -0
- package/dist/{readMediaBuffer-1C3QTpkO.d.mts → readMediaBuffer.d.mts} +1 -1
- package/dist/readMediaBuffer.d.mts.map +1 -0
- package/dist/{readMediaBuffer-DWkTbYVn.mjs → readMediaBuffer.mjs} +2 -2
- package/dist/readMediaBuffer.mjs.map +1 -0
- package/dist/seo/index.d.mts +1 -1
- package/dist/seo/index.mjs +1 -1
- package/dist/{seo-e5XjgQ7l.mjs → seo.mjs} +3 -3
- package/dist/seo.mjs.map +1 -0
- package/dist/ui/a11y/focus.d.mts +6 -0
- package/dist/ui/a11y/focus.d.mts.map +1 -0
- package/dist/ui/a11y/focus.mjs +7 -0
- package/dist/ui/a11y/focus.mjs.map +1 -0
- package/dist/ui/a11y/index.d.mts +4 -0
- package/dist/ui/a11y/index.mjs +4 -0
- package/dist/ui/carousel/index.d.mts +3 -0
- package/dist/ui/carousel/index.mjs +3 -0
- package/dist/ui/components/Accordion/Accordion.d.mts +16 -0
- package/dist/ui/components/Accordion/Accordion.d.mts.map +1 -0
- package/dist/ui/components/Accordion/Accordion.mjs +51 -0
- package/dist/ui/components/Accordion/Accordion.mjs.map +1 -0
- package/dist/ui/components/Accordion/index.d.mts +2 -0
- package/dist/ui/components/Accordion/index.mjs +2 -0
- package/dist/ui/components/Avatar/Avatar.d.mts +9 -0
- package/dist/ui/components/Avatar/Avatar.d.mts.map +1 -0
- package/dist/ui/components/Avatar/Avatar.mjs +15 -0
- package/dist/ui/components/Avatar/Avatar.mjs.map +1 -0
- package/dist/ui/components/Avatar/index.d.mts +2 -0
- package/dist/ui/components/Avatar/index.mjs +2 -0
- package/dist/ui/components/Badge/Badge.d.mts +14 -0
- package/dist/ui/components/Badge/Badge.d.mts.map +1 -0
- package/dist/ui/components/Badge/Badge.mjs +30 -0
- package/dist/ui/components/Badge/Badge.mjs.map +1 -0
- package/dist/ui/components/Badge/index.d.mts +2 -0
- package/dist/ui/components/Badge/index.mjs +2 -0
- package/dist/ui/components/BadgeVersion/BadgeVersion.d.mts +24 -0
- package/dist/ui/components/BadgeVersion/BadgeVersion.d.mts.map +1 -0
- package/dist/ui/components/BadgeVersion/BadgeVersion.mjs +66 -0
- package/dist/ui/components/BadgeVersion/BadgeVersion.mjs.map +1 -0
- package/dist/ui/components/BadgeVersion/index.d.mts +2 -0
- package/dist/ui/components/BadgeVersion/index.mjs +2 -0
- package/dist/ui/components/Button/Button.d.mts +14 -0
- package/dist/ui/components/Button/Button.d.mts.map +1 -0
- package/dist/ui/components/Button/Button.mjs +48 -0
- package/dist/ui/components/Button/Button.mjs.map +1 -0
- package/dist/ui/components/Button/index.d.mts +2 -0
- package/dist/ui/components/Button/index.mjs +2 -0
- package/dist/ui/components/Card/Card.d.mts +14 -0
- package/dist/ui/components/Card/Card.d.mts.map +1 -0
- package/dist/ui/components/Card/Card.mjs +40 -0
- package/dist/ui/components/Card/Card.mjs.map +1 -0
- package/dist/ui/components/Card/index.d.mts +2 -0
- package/dist/ui/components/Card/index.mjs +2 -0
- package/dist/ui/components/Carousel/Carousel.d.mts +42 -0
- package/dist/ui/components/Carousel/Carousel.d.mts.map +1 -0
- package/dist/ui/components/Carousel/Carousel.mjs +164 -0
- package/dist/ui/components/Carousel/Carousel.mjs.map +1 -0
- package/dist/ui/components/Carousel/index.d.mts +2 -0
- package/dist/ui/components/Carousel/index.mjs +2 -0
- package/dist/ui/components/Checkbox/Checkbox.d.mts +8 -0
- package/dist/ui/components/Checkbox/Checkbox.d.mts.map +1 -0
- package/dist/ui/components/Checkbox/Checkbox.mjs +39 -0
- package/dist/ui/components/Checkbox/Checkbox.mjs.map +1 -0
- package/dist/ui/components/Checkbox/index.d.mts +2 -0
- package/dist/ui/components/Checkbox/index.mjs +2 -0
- package/dist/ui/components/CodeBlock/CodeBlock.d.mts +22 -0
- package/dist/ui/components/CodeBlock/CodeBlock.d.mts.map +1 -0
- package/dist/ui/components/CodeBlock/CodeBlock.mjs +66 -0
- package/dist/ui/components/CodeBlock/CodeBlock.mjs.map +1 -0
- package/dist/ui/components/CodeBlock/index.d.mts +2 -0
- package/dist/ui/components/CodeBlock/index.mjs +2 -0
- package/dist/ui/components/CodeBlockTabs/CodeBlockTabs.d.mts +19 -0
- package/dist/ui/components/CodeBlockTabs/CodeBlockTabs.d.mts.map +1 -0
- package/dist/ui/components/CodeBlockTabs/CodeBlockTabs.mjs +59 -0
- package/dist/ui/components/CodeBlockTabs/CodeBlockTabs.mjs.map +1 -0
- package/dist/ui/components/CodeBlockTabs/index.d.mts +2 -0
- package/dist/ui/components/CodeBlockTabs/index.mjs +2 -0
- package/dist/ui/components/CollapsibleSection/CollapsibleSection.d.mts +13 -0
- package/dist/ui/components/CollapsibleSection/CollapsibleSection.d.mts.map +1 -0
- package/dist/ui/components/CollapsibleSection/CollapsibleSection.mjs +55 -0
- package/dist/ui/components/CollapsibleSection/CollapsibleSection.mjs.map +1 -0
- package/dist/ui/components/CollapsibleSection/index.d.mts +2 -0
- package/dist/ui/components/CollapsibleSection/index.mjs +2 -0
- package/dist/ui/components/CopyButton/CopyButton.d.mts +12 -0
- package/dist/ui/components/CopyButton/CopyButton.d.mts.map +1 -0
- package/dist/ui/components/CopyButton/CopyButton.mjs +45 -0
- package/dist/ui/components/CopyButton/CopyButton.mjs.map +1 -0
- package/dist/ui/components/CopyButton/index.d.mts +2 -0
- package/dist/ui/components/CopyButton/index.mjs +2 -0
- package/dist/ui/components/Dialog/Dialog.d.mts +26 -0
- package/dist/ui/components/Dialog/Dialog.d.mts.map +1 -0
- package/dist/ui/components/Dialog/Dialog.mjs +79 -0
- package/dist/ui/components/Dialog/Dialog.mjs.map +1 -0
- package/dist/ui/components/Dialog/index.d.mts +2 -0
- package/dist/ui/components/Dialog/index.mjs +2 -0
- package/dist/ui/components/EmptyState/EmptyState.d.mts +18 -0
- package/dist/ui/components/EmptyState/EmptyState.d.mts.map +1 -0
- package/dist/ui/components/EmptyState/EmptyState.mjs +36 -0
- package/dist/ui/components/EmptyState/EmptyState.mjs.map +1 -0
- package/dist/ui/components/EmptyState/index.d.mts +2 -0
- package/dist/ui/components/EmptyState/index.mjs +2 -0
- package/dist/ui/components/FieldError/FieldError.d.mts +14 -0
- package/dist/ui/components/FieldError/FieldError.d.mts.map +1 -0
- package/dist/ui/components/FieldError/FieldError.mjs +19 -0
- package/dist/ui/components/FieldError/FieldError.mjs.map +1 -0
- package/dist/ui/components/FieldError/index.d.mts +2 -0
- package/dist/ui/components/FieldError/index.mjs +2 -0
- package/dist/ui/components/FormattedDate/FormattedDate.d.mts +15 -0
- package/dist/ui/components/FormattedDate/FormattedDate.d.mts.map +1 -0
- package/dist/ui/components/FormattedDate/FormattedDate.mjs +23 -0
- package/dist/ui/components/FormattedDate/FormattedDate.mjs.map +1 -0
- package/dist/ui/components/FormattedDate/index.d.mts +2 -0
- package/dist/ui/components/FormattedDate/index.mjs +2 -0
- package/dist/ui/components/IconButton/IconButton.d.mts +10 -0
- package/dist/ui/components/IconButton/IconButton.d.mts.map +1 -0
- package/dist/ui/components/IconButton/IconButton.mjs +19 -0
- package/dist/ui/components/IconButton/IconButton.mjs.map +1 -0
- package/dist/ui/components/IconButton/index.d.mts +2 -0
- package/dist/ui/components/IconButton/index.mjs +2 -0
- package/dist/ui/components/Input/Input.d.mts +12 -0
- package/dist/ui/components/Input/Input.d.mts.map +1 -0
- package/dist/ui/components/Input/Input.mjs +43 -0
- package/dist/ui/components/Input/Input.mjs.map +1 -0
- package/dist/ui/components/Input/index.d.mts +2 -0
- package/dist/ui/components/Input/index.mjs +2 -0
- package/dist/ui/components/Label/Label.d.mts +11 -0
- package/dist/ui/components/Label/Label.d.mts.map +1 -0
- package/dist/ui/components/Label/Label.mjs +18 -0
- package/dist/ui/components/Label/Label.mjs.map +1 -0
- package/dist/ui/components/Label/index.d.mts +2 -0
- package/dist/ui/components/Label/index.mjs +2 -0
- package/dist/ui/components/LazyVideo/LazyVideo.d.mts +23 -0
- package/dist/ui/components/LazyVideo/LazyVideo.d.mts.map +1 -0
- package/dist/ui/components/LazyVideo/LazyVideo.mjs +57 -0
- package/dist/ui/components/LazyVideo/LazyVideo.mjs.map +1 -0
- package/dist/ui/components/LazyVideo/index.d.mts +2 -0
- package/dist/ui/components/LazyVideo/index.mjs +2 -0
- package/dist/ui/components/Pagination/Pagination.d.mts +38 -0
- package/dist/ui/components/Pagination/Pagination.d.mts.map +1 -0
- package/dist/ui/components/Pagination/Pagination.mjs +110 -0
- package/dist/ui/components/Pagination/Pagination.mjs.map +1 -0
- package/dist/ui/components/Pagination/index.d.mts +2 -0
- package/dist/ui/components/Pagination/index.mjs +2 -0
- package/dist/ui/components/PaginationItem/PaginationItem.d.mts +15 -0
- package/dist/ui/components/PaginationItem/PaginationItem.d.mts.map +1 -0
- package/dist/ui/components/PaginationItem/PaginationItem.mjs +34 -0
- package/dist/ui/components/PaginationItem/PaginationItem.mjs.map +1 -0
- package/dist/ui/components/PaginationItem/index.d.mts +2 -0
- package/dist/ui/components/PaginationItem/index.mjs +2 -0
- package/dist/ui/components/PasswordInput/PasswordInput.d.mts +10 -0
- package/dist/ui/components/PasswordInput/PasswordInput.d.mts.map +1 -0
- package/dist/ui/components/PasswordInput/PasswordInput.mjs +39 -0
- package/dist/ui/components/PasswordInput/PasswordInput.mjs.map +1 -0
- package/dist/ui/components/PasswordInput/index.d.mts +2 -0
- package/dist/ui/components/PasswordInput/index.mjs +2 -0
- package/dist/ui/components/ProgressStepper/ProgressStepper.d.mts +20 -0
- package/dist/ui/components/ProgressStepper/ProgressStepper.d.mts.map +1 -0
- package/dist/ui/components/ProgressStepper/ProgressStepper.mjs +39 -0
- package/dist/ui/components/ProgressStepper/ProgressStepper.mjs.map +1 -0
- package/dist/ui/components/ProgressStepper/index.d.mts +2 -0
- package/dist/ui/components/ProgressStepper/index.mjs +2 -0
- package/dist/ui/components/Prose/Prose.d.mts +10 -0
- package/dist/ui/components/Prose/Prose.d.mts.map +1 -0
- package/dist/ui/components/Prose/Prose.mjs +19 -0
- package/dist/ui/components/Prose/Prose.mjs.map +1 -0
- package/dist/ui/components/Prose/index.d.mts +2 -0
- package/dist/ui/components/Prose/index.mjs +2 -0
- package/dist/ui/components/Radio/Radio.d.mts +8 -0
- package/dist/ui/components/Radio/Radio.d.mts.map +1 -0
- package/dist/ui/components/Radio/Radio.mjs +25 -0
- package/dist/ui/components/Radio/Radio.mjs.map +1 -0
- package/dist/ui/components/Radio/index.d.mts +2 -0
- package/dist/ui/components/Radio/index.mjs +2 -0
- package/dist/ui/components/Reveal/Reveal.d.mts +10 -0
- package/dist/ui/components/Reveal/Reveal.d.mts.map +1 -0
- package/dist/ui/components/Reveal/Reveal.mjs +18 -0
- package/dist/ui/components/Reveal/Reveal.mjs.map +1 -0
- package/dist/ui/components/Reveal/index.d.mts +2 -0
- package/dist/ui/components/Reveal/index.mjs +2 -0
- package/dist/ui/components/SearchInput/SearchInput.d.mts +15 -0
- package/dist/ui/components/SearchInput/SearchInput.d.mts.map +1 -0
- package/dist/ui/components/SearchInput/SearchInput.mjs +28 -0
- package/dist/ui/components/SearchInput/SearchInput.mjs.map +1 -0
- package/dist/ui/components/SearchInput/index.d.mts +2 -0
- package/dist/ui/components/SearchInput/index.mjs +2 -0
- package/dist/ui/components/Select/Select.d.mts +34 -0
- package/dist/ui/components/Select/Select.d.mts.map +1 -0
- package/dist/ui/components/Select/Select.mjs +167 -0
- package/dist/ui/components/Select/Select.mjs.map +1 -0
- package/dist/ui/components/Select/index.d.mts +2 -0
- package/dist/ui/components/Select/index.mjs +2 -0
- package/dist/ui/components/Sheet/Sheet.d.mts +19 -0
- package/dist/ui/components/Sheet/Sheet.d.mts.map +1 -0
- package/dist/ui/components/Sheet/Sheet.mjs +59 -0
- package/dist/ui/components/Sheet/Sheet.mjs.map +1 -0
- package/dist/ui/components/Sheet/index.d.mts +2 -0
- package/dist/ui/components/Sheet/index.mjs +2 -0
- package/dist/ui/components/StaggerReveal/StaggerReveal.d.mts +10 -0
- package/dist/ui/components/StaggerReveal/StaggerReveal.d.mts.map +1 -0
- package/dist/ui/components/StaggerReveal/StaggerReveal.mjs +31 -0
- package/dist/ui/components/StaggerReveal/StaggerReveal.mjs.map +1 -0
- package/dist/ui/components/StaggerReveal/index.d.mts +2 -0
- package/dist/ui/components/StaggerReveal/index.mjs +2 -0
- package/dist/ui/components/Stepper/Stepper.d.mts +15 -0
- package/dist/ui/components/Stepper/Stepper.d.mts.map +1 -0
- package/dist/ui/components/Stepper/Stepper.mjs +38 -0
- package/dist/ui/components/Stepper/Stepper.mjs.map +1 -0
- package/dist/ui/components/Stepper/index.d.mts +2 -0
- package/dist/ui/components/Stepper/index.mjs +2 -0
- package/dist/ui/components/Switch/Switch.d.mts +12 -0
- package/dist/ui/components/Switch/Switch.d.mts.map +1 -0
- package/dist/ui/components/Switch/Switch.mjs +34 -0
- package/dist/ui/components/Switch/Switch.mjs.map +1 -0
- package/dist/ui/components/Switch/index.d.mts +2 -0
- package/dist/ui/components/Switch/index.mjs +2 -0
- package/dist/ui/components/TextButton/TextButton.d.mts +9 -0
- package/dist/ui/components/TextButton/TextButton.d.mts.map +1 -0
- package/dist/ui/components/TextButton/TextButton.mjs +16 -0
- package/dist/ui/components/TextButton/TextButton.mjs.map +1 -0
- package/dist/ui/components/TextButton/index.d.mts +2 -0
- package/dist/ui/components/TextButton/index.mjs +2 -0
- package/dist/ui/components/Textarea/Textarea.d.mts +9 -0
- package/dist/ui/components/Textarea/Textarea.d.mts.map +1 -0
- package/dist/ui/components/Textarea/Textarea.mjs +27 -0
- package/dist/ui/components/Textarea/Textarea.mjs.map +1 -0
- package/dist/ui/components/Textarea/index.d.mts +2 -0
- package/dist/ui/components/Textarea/index.mjs +2 -0
- package/dist/ui/components/Toast/Toast.d.mts +20 -0
- package/dist/ui/components/Toast/Toast.d.mts.map +1 -0
- package/dist/ui/components/Toast/Toast.mjs +128 -0
- package/dist/ui/components/Toast/Toast.mjs.map +1 -0
- package/dist/ui/components/Toast/index.d.mts +2 -0
- package/dist/ui/components/Toast/index.mjs +2 -0
- package/dist/ui/components/Tooltip/Tooltip.d.mts +11 -0
- package/dist/ui/components/Tooltip/Tooltip.d.mts.map +1 -0
- package/dist/ui/components/Tooltip/Tooltip.mjs +20 -0
- package/dist/ui/components/Tooltip/Tooltip.mjs.map +1 -0
- package/dist/ui/components/Tooltip/index.d.mts +2 -0
- package/dist/ui/components/Tooltip/index.mjs +2 -0
- package/dist/ui/components/VisuallyHidden/VisuallyHidden.d.mts +7 -0
- package/dist/ui/components/VisuallyHidden/VisuallyHidden.d.mts.map +1 -0
- package/dist/ui/components/VisuallyHidden/VisuallyHidden.mjs +13 -0
- package/dist/ui/components/VisuallyHidden/VisuallyHidden.mjs.map +1 -0
- package/dist/ui/components/VisuallyHidden/index.d.mts +2 -0
- package/dist/ui/components/VisuallyHidden/index.mjs +2 -0
- package/dist/ui/hooks/index.d.mts +2 -0
- package/dist/ui/hooks/index.mjs +2 -0
- package/dist/ui/hooks/useInView.d.mts +13 -0
- package/dist/ui/hooks/useInView.d.mts.map +1 -0
- package/dist/ui/hooks/useInView.mjs +37 -0
- package/dist/ui/hooks/useInView.mjs.map +1 -0
- package/dist/ui/index.d.mts +81 -0
- package/dist/ui/index.mjs +40 -0
- package/dist/ui/theme/preset.d.mts +170 -0
- package/dist/ui/theme/preset.d.mts.map +1 -0
- package/dist/ui/theme/preset.mjs +143 -0
- package/dist/ui/theme/preset.mjs.map +1 -0
- package/dist/ui/utils/cn.d.mts +6 -0
- package/dist/ui/utils/cn.d.mts.map +1 -0
- package/dist/ui/utils/cn.mjs +42 -0
- package/dist/ui/utils/cn.mjs.map +1 -0
- package/dist/ui/utils/index.d.mts +2 -0
- package/dist/ui/utils/index.mjs +2 -0
- package/dist/utils/index.d.mts +1 -1
- package/dist/utils/index.mjs +2 -2
- package/dist/{utils-CVVQQltg.mjs → utils.mjs} +1 -1
- package/dist/utils.mjs.map +1 -0
- package/package.json +66 -7
- package/src/ui/theme/preset.css +53 -0
- package/src/ui/theme/preset.ts +131 -0
- package/src/ui/theme/theme.css +12 -0
- package/src/ui/theme/tokens.css +57 -0
- package/dist/cms-5bS91IRZ.mjs.map +0 -1
- package/dist/i18n-Dy3VrbBw.mjs.map +0 -1
- package/dist/index-9B8SfwdR.d.mts +0 -214
- package/dist/index-9B8SfwdR.d.mts.map +0 -1
- package/dist/index-D36IEwUg.d.mts.map +0 -1
- package/dist/index-Dyi7DDoO.d.mts.map +0 -1
- package/dist/index-tTs9h9BS.d.mts.map +0 -1
- package/dist/logger-BPURnavq.mjs.map +0 -1
- package/dist/readMediaBuffer-1C3QTpkO.d.mts.map +0 -1
- package/dist/readMediaBuffer-DWkTbYVn.mjs.map +0 -1
- package/dist/seo-e5XjgQ7l.mjs.map +0 -1
- package/dist/utils-CVVQQltg.mjs.map +0 -1
|
@@ -1,214 +0,0 @@
|
|
|
1
|
-
import { Access, Block, CollectionBeforeChangeHook, CollectionConfig, Config, Field, FieldAccess, FieldHook, GlobalConfig, GroupField, PayloadRequest, Plugin, SanitizedConfig } from "payload";
|
|
2
|
-
import { lexicalEditor } from "@payloadcms/richtext-lexical";
|
|
3
|
-
//#region src/cms/shared/access.d.ts
|
|
4
|
-
type AccessOptions = {
|
|
5
|
-
/**
|
|
6
|
-
* When true, disabled `api-tokens` users are denied public reads.
|
|
7
|
-
* Defaults to on when the stock `api-tokens` collection is enabled.
|
|
8
|
-
*/
|
|
9
|
-
apiTokens?: boolean;
|
|
10
|
-
};
|
|
11
|
-
type AccessHelpers = {
|
|
12
|
-
adminOnly: ({ req }: {
|
|
13
|
-
req: PayloadRequest;
|
|
14
|
-
}) => boolean;
|
|
15
|
-
adminOrPublished: Access;
|
|
16
|
-
publicRead: Access;
|
|
17
|
-
adminOnlyField: FieldAccess;
|
|
18
|
-
};
|
|
19
|
-
/**
|
|
20
|
-
* Build access helpers. Pass `{ apiTokens: true }` when the `api-tokens`
|
|
21
|
-
* collection is registered (stock by default via `buildCmsConfig`).
|
|
22
|
-
*/
|
|
23
|
-
declare function createAccessHelpers(options?: AccessOptions): AccessHelpers;
|
|
24
|
-
//#endregion
|
|
25
|
-
//#region src/cms/applyOverride.d.ts
|
|
26
|
-
type OverridableConfig = CollectionConfig | GlobalConfig;
|
|
27
|
-
type Override<TConfig extends OverridableConfig> = false | {
|
|
28
|
-
fields?: (base: Field[]) => Field[];
|
|
29
|
-
hooks?: Partial<TConfig['hooks']>;
|
|
30
|
-
admin?: Partial<TConfig['admin']>;
|
|
31
|
-
access?: Partial<TConfig['access']>;
|
|
32
|
-
config?: (base: TConfig) => TConfig;
|
|
33
|
-
};
|
|
34
|
-
type CollectionOverride = Override<CollectionConfig>;
|
|
35
|
-
type GlobalOverride = Override<GlobalConfig>;
|
|
36
|
-
declare const applyCollectionOverride: (base: CollectionConfig, override: CollectionOverride | undefined) => CollectionConfig | null;
|
|
37
|
-
declare const applyGlobalOverride: (base: GlobalConfig, override: GlobalOverride | undefined) => GlobalConfig | null;
|
|
38
|
-
//#endregion
|
|
39
|
-
//#region src/cms/overrides.d.ts
|
|
40
|
-
/** Slugs of the stock collections shipped by `buildCmsConfig`, in registration order. */
|
|
41
|
-
declare const STOCK_COLLECTION_SLUGS: readonly ["users", "api-tokens", "media", "authors", "categories", "blog-posts", "pages", "legal-pages", "changelog-tags", "changelog"];
|
|
42
|
-
type StockCollectionSlug = (typeof STOCK_COLLECTION_SLUGS)[number];
|
|
43
|
-
/** Typed map of collection/global overrides for `buildCmsConfig`. */
|
|
44
|
-
type Overrides = Partial<Record<StockCollectionSlug, CollectionOverride>> & {
|
|
45
|
-
'site-settings'?: GlobalOverride;
|
|
46
|
-
};
|
|
47
|
-
//#endregion
|
|
48
|
-
//#region src/cms/buildCmsConfig.d.ts
|
|
49
|
-
type BuildCmsConfigOptions<TLocale extends string = string> = {
|
|
50
|
-
secret: string;
|
|
51
|
-
db: Config['db'];
|
|
52
|
-
/** Sharp instance from the `sharp` package. */
|
|
53
|
-
sharp?: Config['sharp'];
|
|
54
|
-
cors?: Config['cors'];
|
|
55
|
-
csrf?: Config['csrf'];
|
|
56
|
-
locales: readonly TLocale[];
|
|
57
|
-
/** Must be one of `locales`. */
|
|
58
|
-
defaultLocale: TLocale;
|
|
59
|
-
admin?: Config['admin'];
|
|
60
|
-
plugins?: Plugin[];
|
|
61
|
-
/** Defaults to the package Lexical editor. */
|
|
62
|
-
editor?: Config['editor'];
|
|
63
|
-
access?: AccessOptions;
|
|
64
|
-
/** Collection/global slug → override | false. */
|
|
65
|
-
overrides?: Overrides;
|
|
66
|
-
extraCollections?: CollectionConfig[];
|
|
67
|
-
extraGlobals?: GlobalConfig[];
|
|
68
|
-
typescript?: Config['typescript'];
|
|
69
|
-
/** Extra top-level Payload config keys (e.g. endpoints, graphQL). */
|
|
70
|
-
payload?: Partial<Omit<Config, 'secret' | 'db' | 'sharp' | 'cors' | 'csrf' | 'admin' | 'plugins' | 'editor' | 'collections' | 'globals' | 'localization' | 'typescript'>>;
|
|
71
|
-
};
|
|
72
|
-
/**
|
|
73
|
-
* Build a Payload config from shared stock collections/globals plus site
|
|
74
|
-
* overrides and extras. Types are still generated in the consuming app.
|
|
75
|
-
*/
|
|
76
|
-
declare function buildCmsConfig<const TLocale extends string>(options: BuildCmsConfigOptions<TLocale>): Promise<import("payload").SanitizedConfig>;
|
|
77
|
-
//#endregion
|
|
78
|
-
//#region src/cms/shared/drafts-with-autosave.d.ts
|
|
79
|
-
declare const draftsWithAutosave: CollectionConfig['versions'];
|
|
80
|
-
//#endregion
|
|
81
|
-
//#region src/cms/shared/seo-fields.d.ts
|
|
82
|
-
declare const seoFields: GroupField;
|
|
83
|
-
//#endregion
|
|
84
|
-
//#region src/cms/hooks/slugify.d.ts
|
|
85
|
-
declare const slugify: FieldHook;
|
|
86
|
-
//#endregion
|
|
87
|
-
//#region src/cms/hooks/set-published-at.d.ts
|
|
88
|
-
declare const setPublishedAt: CollectionBeforeChangeHook;
|
|
89
|
-
//#endregion
|
|
90
|
-
//#region src/cms/blocks/rich-text.d.ts
|
|
91
|
-
declare const richTextBlock: Block;
|
|
92
|
-
//#endregion
|
|
93
|
-
//#region src/cms/blocks/code.d.ts
|
|
94
|
-
declare const codeBlock: Block;
|
|
95
|
-
//#endregion
|
|
96
|
-
//#region src/cms/blocks/code-tabs.d.ts
|
|
97
|
-
declare const codeTabsBlock: Block;
|
|
98
|
-
//#endregion
|
|
99
|
-
//#region src/cms/blocks/image.d.ts
|
|
100
|
-
declare const imageBlock: Block;
|
|
101
|
-
//#endregion
|
|
102
|
-
//#region src/cms/blocks/video.d.ts
|
|
103
|
-
declare const videoBlock: Block;
|
|
104
|
-
//#endregion
|
|
105
|
-
//#region src/cms/blocks/download-cta.d.ts
|
|
106
|
-
declare const downloadCtaBlock: Block;
|
|
107
|
-
//#endregion
|
|
108
|
-
//#region src/cms/blocks/steps.d.ts
|
|
109
|
-
declare const stepsBlock: Block;
|
|
110
|
-
//#endregion
|
|
111
|
-
//#region src/cms/blocks/accordion.d.ts
|
|
112
|
-
declare const accordionBlock: Block;
|
|
113
|
-
//#endregion
|
|
114
|
-
//#region src/cms/blocks/section-heading.d.ts
|
|
115
|
-
declare const sectionHeadingBlock: Block;
|
|
116
|
-
//#endregion
|
|
117
|
-
//#region src/cms/blocks/leaf-blocks.d.ts
|
|
118
|
-
declare const leafBlocks: Block[];
|
|
119
|
-
//#endregion
|
|
120
|
-
//#region src/cms/blocks/language-options.d.ts
|
|
121
|
-
/** Shared language options for CMS code blocks and Lexical CodeBlock feature. */
|
|
122
|
-
declare const languageOptions: {
|
|
123
|
-
label: string;
|
|
124
|
-
value: string;
|
|
125
|
-
}[];
|
|
126
|
-
declare const codeBlockLanguages: Record<string, string>;
|
|
127
|
-
declare const defaultCodeLanguage = "plaintext";
|
|
128
|
-
//#endregion
|
|
129
|
-
//#region src/cms/blocks/index.d.ts
|
|
130
|
-
declare const blogContentBlocks: Block[];
|
|
131
|
-
declare const pageContentBlocks: Block[];
|
|
132
|
-
declare const showcaseContentBlocks: Block[];
|
|
133
|
-
//#endregion
|
|
134
|
-
//#region src/cms/lexical/editor.d.ts
|
|
135
|
-
/**
|
|
136
|
-
* Shared Lexical editor for every `richText` field.
|
|
137
|
-
*
|
|
138
|
-
* Adds `CodeBlock`, inline `video` block, media upload captions, and
|
|
139
|
-
* `EXPERIMENTAL_TableFeature` on top of Payload defaults.
|
|
140
|
-
*/
|
|
141
|
-
declare const richTextEditor: () => ReturnType<typeof lexicalEditor>;
|
|
142
|
-
/** Resolve Lexical editor config for seed scripts / markdown conversion. */
|
|
143
|
-
declare function getRichTextEditorConfig(config: SanitizedConfig): Promise<import("@payloadcms/richtext-lexical").SanitizedServerEditorConfig>;
|
|
144
|
-
//#endregion
|
|
145
|
-
//#region src/cms/requireEnv.d.ts
|
|
146
|
-
/**
|
|
147
|
-
* Read a required env var. During Next.js `phase-production-build` and
|
|
148
|
-
* `generate:importmap` (when NEXT_PHASE is unset) returns "" instead of throwing,
|
|
149
|
-
* because those phases do not connect to the DB.
|
|
150
|
-
*/
|
|
151
|
-
declare function requireEnvAtRuntime(name: string): string;
|
|
152
|
-
//#endregion
|
|
153
|
-
//#region src/cms/createS3MediaPlugin.d.ts
|
|
154
|
-
type CreateS3MediaPluginOptions = {
|
|
155
|
-
/** Defaults to `process.env.AWS_S3_BUCKET`. */
|
|
156
|
-
bucket?: string;
|
|
157
|
-
accessKeyId?: string;
|
|
158
|
-
secretAccessKey?: string;
|
|
159
|
-
region?: string;
|
|
160
|
-
/** Custom S3-compatible endpoint (MinIO, etc.). Defaults to `AWS_S3_ENDPOINT`. */
|
|
161
|
-
endpoint?: string;
|
|
162
|
-
/** Defaults to `AWS_S3_FORCE_PATH_STYLE === 'true'`. */
|
|
163
|
-
forcePathStyle?: boolean;
|
|
164
|
-
/** Collection slug that owns uploads. Defaults to `media`. */
|
|
165
|
-
collection?: string;
|
|
166
|
-
};
|
|
167
|
-
/** Payload S3 storage plugin wired for the stock `media` collection. */
|
|
168
|
-
declare function createS3MediaPlugin(options?: CreateS3MediaPluginOptions): Plugin;
|
|
169
|
-
//#endregion
|
|
170
|
-
//#region src/cms/collections/createUsers.d.ts
|
|
171
|
-
declare function createUsers(access: AccessHelpers): CollectionConfig;
|
|
172
|
-
//#endregion
|
|
173
|
-
//#region src/cms/collections/createApiTokens.d.ts
|
|
174
|
-
/**
|
|
175
|
-
* Stock API-key auth collection for server-to-server Payload REST/GraphQL clients.
|
|
176
|
-
* Disable per site with `overrides['api-tokens'] = false`.
|
|
177
|
-
*/
|
|
178
|
-
declare function createApiTokens(access: AccessHelpers): CollectionConfig;
|
|
179
|
-
//#endregion
|
|
180
|
-
//#region src/cms/collections/createMedia.d.ts
|
|
181
|
-
/** Stock media upload collection (always publicly readable once uploaded). */
|
|
182
|
-
declare function createMedia(access: AccessHelpers): CollectionConfig;
|
|
183
|
-
//#endregion
|
|
184
|
-
//#region src/cms/collections/createAuthors.d.ts
|
|
185
|
-
declare function createAuthors(access: AccessHelpers): CollectionConfig;
|
|
186
|
-
//#endregion
|
|
187
|
-
//#region src/cms/collections/createCategories.d.ts
|
|
188
|
-
declare function createCategories(access: AccessHelpers): CollectionConfig;
|
|
189
|
-
//#endregion
|
|
190
|
-
//#region src/cms/collections/createBlogPosts.d.ts
|
|
191
|
-
/** Stock blog-posts collection (no site revalidation — add via overrides.hooks). */
|
|
192
|
-
declare function createBlogPosts(access: AccessHelpers): CollectionConfig;
|
|
193
|
-
//#endregion
|
|
194
|
-
//#region src/cms/collections/createPages.d.ts
|
|
195
|
-
declare function createPages(access: AccessHelpers): CollectionConfig;
|
|
196
|
-
declare function createLegalPages(access: AccessHelpers): CollectionConfig;
|
|
197
|
-
//#endregion
|
|
198
|
-
//#region src/cms/collections/createChangelogTags.d.ts
|
|
199
|
-
/** Stock changelog-tags (no site revalidation — add via overrides.hooks). */
|
|
200
|
-
declare function createChangelogTags(access: AccessHelpers): CollectionConfig;
|
|
201
|
-
//#endregion
|
|
202
|
-
//#region src/cms/collections/createChangelog.d.ts
|
|
203
|
-
/**
|
|
204
|
-
* Stock changelog collection (shared fields only).
|
|
205
|
-
* Site-specific body / GitHub / related-block fields — add via `overrides.fields`.
|
|
206
|
-
* Revalidation — add via `overrides.hooks`.
|
|
207
|
-
*/
|
|
208
|
-
declare function createChangelog(access: AccessHelpers): CollectionConfig;
|
|
209
|
-
//#endregion
|
|
210
|
-
//#region src/cms/globals/createSiteSettings.d.ts
|
|
211
|
-
declare function createSiteSettings(access: AccessHelpers): GlobalConfig;
|
|
212
|
-
//#endregion
|
|
213
|
-
export { codeTabsBlock as A, STOCK_COLLECTION_SLUGS as B, leafBlocks as C, downloadCtaBlock as D, stepsBlock as E, seoFields as F, applyGlobalOverride as G, CollectionOverride as H, draftsWithAutosave as I, createAccessHelpers as J, AccessHelpers as K, BuildCmsConfigOptions as L, richTextBlock as M, setPublishedAt as N, videoBlock as O, slugify as P, buildCmsConfig as R, languageOptions as S, accordionBlock as T, GlobalOverride as U, StockCollectionSlug as V, applyCollectionOverride as W, blogContentBlocks as _, createPages as a, codeBlockLanguages as b, createAuthors as c, createUsers as d, CreateS3MediaPluginOptions as f, richTextEditor as g, getRichTextEditorConfig as h, createLegalPages as i, codeBlock as j, imageBlock as k, createMedia as l, requireEnvAtRuntime as m, createChangelog as n, createBlogPosts as o, createS3MediaPlugin as p, AccessOptions as q, createChangelogTags as r, createCategories as s, createSiteSettings as t, createApiTokens as u, pageContentBlocks as v, sectionHeadingBlock as w, defaultCodeLanguage as x, showcaseContentBlocks as y, Overrides as z };
|
|
214
|
-
//# sourceMappingURL=index-9B8SfwdR.d.mts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-9B8SfwdR.d.mts","names":[],"sources":["../src/cms/shared/access.ts","../src/cms/applyOverride.ts","../src/cms/overrides.ts","../src/cms/buildCmsConfig.ts","../src/cms/shared/drafts-with-autosave.ts","../src/cms/shared/seo-fields.ts","../src/cms/hooks/slugify.ts","../src/cms/hooks/set-published-at.ts","../src/cms/blocks/rich-text.ts","../src/cms/blocks/code.ts","../src/cms/blocks/code-tabs.ts","../src/cms/blocks/image.ts","../src/cms/blocks/video.ts","../src/cms/blocks/download-cta.ts","../src/cms/blocks/steps.ts","../src/cms/blocks/accordion.ts","../src/cms/blocks/section-heading.ts","../src/cms/blocks/leaf-blocks.ts","../src/cms/blocks/language-options.ts","../src/cms/blocks/index.ts","../src/cms/lexical/editor.ts","../src/cms/requireEnv.ts","../src/cms/createS3MediaPlugin.ts","../src/cms/collections/createUsers.ts","../src/cms/collections/createApiTokens.ts","../src/cms/collections/createMedia.ts","../src/cms/collections/createAuthors.ts","../src/cms/collections/createCategories.ts","../src/cms/collections/createBlogPosts.ts","../src/cms/collections/createPages.ts","../src/cms/collections/createChangelogTags.ts","../src/cms/collections/createChangelog.ts","../src/cms/globals/createSiteSettings.ts"],"mappings":";;;KAEY;;;;;EAKV;;KAGU;EACV,cAAc;IAAS,KAAK;;EAC5B,kBAAkB;EAClB,YAAY;EACZ,gBAAgB;;;;;;iBAYF,oBAAoB,UAAS,gBAAqB;;;KCxB7D,oBAAoB,mBAAmB;KAEvC,SAAS,gBAAgB;EAGxB,UAAU,MAAM,YAAY;EAC5B,QAAQ,QAAQ;EAChB,QAAQ,QAAQ;EAChB,SAAS,QAAQ;EACjB,UAAU,MAAM,YAAY;;KAGtB,qBAAqB,SAAS;KAC9B,iBAAiB,SAAS;cAkCzB,0BACX,MAAM,kBACN,UAAU,mCACT;cAEU,sBACX,MAAM,cACN,UAAU,+BACT;;;;cCtDU;KAaD,8BAA8B;;KAG9B,YAAY,QAAQ,OAAO,qBAAqB;EAC1D,kBAAkB;;;;KCDR,sBAAsB;EAChC;EAEA,IAAI;;EAEJ,QAAQ;EACR,OAAO;EACP,OAAO;EACP,kBAAkB;;EAElB,eAAe;EACf,QAAQ;EACR,UAAU;;EAEV,SAAS;EACT,SAAS;;EAET,YAAY;EACZ,mBAAmB;EACnB,eAAe;EACf,aAAa;;EAEb,UAAU,QACR,KACE;;;;;;iBA0BU,qBAAqB,wBACnC,SAAS,sBAAsB,WAAQ,0BAAA;;;cCpE5B,oBAAoB;;;cC2BpB,WAAW;;;cC3BX,SAAS;;;cCAT,gBAAgB;;;cCEhB,eAAe;;;cCAf,WAAW;;;cCAX,eAAe;;;cCFf,YAAY;;;cCAZ,YAAY;;;cCAZ,kBAAkB;;;cCAlB,YAAY;;;cCEZ,gBAAgB;;;cCFhB,qBAAqB;;;cCQrB,YAAY;;;;cCTZ;EAAA;EAAA;;cAgBA,oBAAoB;cAIpB;;;cCGA,mBAAmB;cAWnB,mBAAmB;cASnB,uBAAuB;;;;;;;;;cCYvB,sBAAqB,kBAAkB;;iBAM9B,wBAAwB,QAAQ,kBAAe,+CAAA;;;;;;;;iBCrDrD,oBAAoB;;;KCLxB;;EAEV;EACA;EACA;EACA;;EAEA;;EAEA;;EAEA;;;iBAIc,oBAAoB,UAAS,6BAAkC;;;iBChB/D,YAAY,QAAQ,gBAAgB;;;;;;;iBCUpC,gBAAgB,QAAQ,gBAAgB;;;;iBCTxC,YAAY,QAAQ,gBAAgB;;;iBCEpC,cAAc,QAAQ,gBAAgB;;;iBCDtC,iBAAiB,QAAQ,gBAAgB;;;;iBCKzC,gBAAgB,QAAQ,gBAAgB;;;iBCyDxC,YAAY,QAAQ,gBAAgB;iBAIpC,iBAAiB,QAAQ,gBAAgB;;;;iBCjEzC,oBAAoB,QAAQ,gBAAgB;;;;;;;;iBCK5C,gBAAgB,QAAQ,gBAAgB;;;iBCRxC,mBAAmB,QAAQ,gBAAgB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-D36IEwUg.d.mts","names":[],"sources":["../src/i18n/languages.ts"],"mappings":";aAAY;EACV;;cAGW,eAAe,OAAO"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-Dyi7DDoO.d.mts","names":[],"sources":["../src/utils/stripShikiPreBackground.ts","../src/utils/toPlainValue.ts","../src/utils/logger/logger.ts"],"mappings":";iBAAgB,wBAAwB;;;iBCAxB,aAAa,GAAG,OAAO,IAAI;;;;;;;KCwB/B;EACV,QAAQ;EACR,OAAO;EACP,OAAO;EACP,QAAQ;;EAER,QAAQ,mBAAmB;;iBA0Bb,aAAa,gBAAgB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-tTs9h9BS.d.mts","names":[],"sources":["../src/seo/site-url.ts","../src/seo/metadata.ts","../src/seo/og-background.ts"],"mappings":";;;KAIY;;EAEV;;;iBAIc,WAAW,UAAS;;;KCNxB;EACV;EACA;EACA;EACA;;KAGU;EACV;EACA;EACA;EACA;EACA;EACA;EACA;EACA,SAAS;EACT;EACA;IACE;IACA;IACA;IACA;IACA;IACA;;EAEF;;EAEA;EACA;;KAGU;EACV;EACA;EACA;EACA;;EAEA,qBAAqB;EACrB;EACA;;iBAUc,sBAAsB,SAAS;EAId,iBAAA,OAAA,wBAAsB;EA0Eb,qBAAA;IACtC;IACA;QACE;;;;iBC1HgB,uBACpB,OAAO,kCACN"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logger-BPURnavq.mjs","names":[],"sources":["../src/utils/logger/logger.ts"],"sourcesContent":["/**\n * Tiny, dependency-free structured logger. Prefer `createLogger(scope)` over\n * `console.*` so callers can filter by `LOG_LEVEL` and keep a consistent prefix.\n */\n\ntype LogLevel = 'debug' | 'info' | 'warn' | 'error'\n\nconst LEVEL_RANK: Record<LogLevel, number> = {\n debug: 10,\n info: 20,\n warn: 30,\n error: 40,\n}\n\nfunction resolveMinLevel(): LogLevel {\n const raw = (process.env.LOG_LEVEL ?? '').toLowerCase()\n if (raw === 'debug' || raw === 'info' || raw === 'warn' || raw === 'error') {\n return raw\n }\n return process.env.NODE_ENV === 'production' ? 'info' : 'debug'\n}\n\nconst minLevel = resolveMinLevel()\n\nexport type Logger = {\n debug: (message: string) => void\n info: (message: string) => void\n warn: (message: string) => void\n error: (message: string) => void\n /** Returns a logger whose scope is `${parent}:${suffix}`. */\n child: (suffix: string) => Logger\n}\n\nfunction emit(level: LogLevel, scope: string, message: string): void {\n if (LEVEL_RANK[level] < LEVEL_RANK[minLevel]) return\n const line = `[${scope}] ${message}`\n switch (level) {\n case 'debug':\n // eslint-disable-next-line no-console\n console.debug(line)\n return\n case 'info':\n // eslint-disable-next-line no-console\n console.info(line)\n return\n case 'warn':\n // eslint-disable-next-line no-console\n console.warn(line)\n return\n case 'error':\n // eslint-disable-next-line no-console\n console.error(line)\n return\n }\n}\n\nexport function createLogger(scope: string): Logger {\n return {\n debug: (m) => emit('debug', scope, m),\n info: (m) => emit('info', scope, m),\n warn: (m) => emit('warn', scope, m),\n error: (m) => emit('error', scope, m),\n child: (suffix) => createLogger(`${scope}:${suffix}`),\n }\n}\n"],"mappings":";AAOA,MAAM,aAAuC;CAC3C,OAAO;CACP,MAAM;CACN,MAAM;CACN,OAAO;AACT;AAEA,SAAS,kBAA4B;CACnC,MAAM,OAAO,QAAQ,IAAI,aAAa,GAAA,CAAI,YAAY;CACtD,IAAI,QAAQ,WAAW,QAAQ,UAAU,QAAQ,UAAU,QAAQ,SACjE,OAAO;CAET,OAAO,QAAQ,IAAI,aAAa,eAAe,SAAS;AAC1D;AAEA,MAAM,WAAW,gBAAgB;AAWjC,SAAS,KAAK,OAAiB,OAAe,SAAuB;CACnE,IAAI,WAAW,SAAS,WAAW,WAAW;CAC9C,MAAM,OAAO,IAAI,MAAM,IAAI;CAC3B,QAAQ,OAAR;EACE,KAAK;GAEH,QAAQ,MAAM,IAAI;GAClB;EACF,KAAK;GAEH,QAAQ,KAAK,IAAI;GACjB;EACF,KAAK;GAEH,QAAQ,KAAK,IAAI;GACjB;EACF,KAAK;GAEH,QAAQ,MAAM,IAAI;GAClB;CACJ;AACF;AAEA,SAAgB,aAAa,OAAuB;CAClD,OAAO;EACL,QAAQ,MAAM,KAAK,SAAS,OAAO,CAAC;EACpC,OAAO,MAAM,KAAK,QAAQ,OAAO,CAAC;EAClC,OAAO,MAAM,KAAK,QAAQ,OAAO,CAAC;EAClC,QAAQ,MAAM,KAAK,SAAS,OAAO,CAAC;EACpC,QAAQ,WAAW,aAAa,GAAG,MAAM,GAAG,QAAQ;CACtD;AACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"readMediaBuffer-1C3QTpkO.d.mts","names":[],"sources":["../src/cms/payload/readMediaBuffer.ts"],"mappings":";;;;;;KAeY;EACV;EACA;;iBA8CoB,uBAAuB,OAAO,eAAe,QAAQ;iBAUrD,0BAA0B,OAAO,eAAe"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"readMediaBuffer-DWkTbYVn.mjs","names":[],"sources":["../src/cms/payload/readMediaBuffer.ts"],"sourcesContent":["/**\n * Read a Payload-managed Media file's raw bytes, bypassing the public HTTP\n * surface. Uses S3 when `AWS_S3_BUCKET` is set; otherwise reads from\n * `<cwd>/media/<filename>` (Payload's default upload staticDir for `media`).\n */\n\nimport { readFile } from 'fs/promises'\nimport { join } from 'path'\n\nimport { GetObjectCommand, S3Client, type S3ClientConfig } from '@aws-sdk/client-s3'\n\nimport { createLogger } from '../../utils/logger/logger.js'\n\nconst log = createLogger('readPayloadMedia')\n\nexport type PayloadMedia = {\n filename?: string | null\n mimeType?: string | null\n}\n\nlet cachedS3Client: S3Client | null = null\n\nfunction isS3Enabled(): boolean {\n return Boolean(process.env.AWS_S3_BUCKET)\n}\n\nfunction getS3Client(): S3Client {\n if (cachedS3Client) return cachedS3Client\n const endpoint = process.env.AWS_S3_ENDPOINT?.trim()\n const clientConfig: S3ClientConfig = {\n region: process.env.AWS_S3_REGION ?? 'us-east-1',\n ...(endpoint ? { endpoint } : {}),\n ...(process.env.AWS_S3_FORCE_PATH_STYLE === 'true' ? { forcePathStyle: true } : {}),\n }\n const accessKeyId = process.env.AWS_ACCESS_KEY_ID\n const secretAccessKey = process.env.AWS_SECRET_ACCESS_KEY\n if (accessKeyId && secretAccessKey) {\n clientConfig.credentials = { accessKeyId, secretAccessKey }\n }\n cachedS3Client = new S3Client(clientConfig)\n return cachedS3Client\n}\n\nasync function readFromS3(filename: string): Promise<Buffer> {\n const bucket = process.env.AWS_S3_BUCKET\n if (!bucket) {\n throw new Error('AWS_S3_BUCKET is not set — cannot read media from S3')\n }\n const client = getS3Client()\n const response = await client.send(new GetObjectCommand({ Bucket: bucket, Key: filename }))\n if (!response.Body) {\n throw new Error(`S3 returned an empty body for media file: ${filename}`)\n }\n\n const bytes = await response.Body.transformToByteArray()\n return Buffer.from(bytes)\n}\n\nasync function readFromDisk(filename: string): Promise<Buffer> {\n const filePath = join(process.cwd(), 'media', filename)\n return readFile(filePath)\n}\n\nexport async function readPayloadMediaBuffer(media: PayloadMedia): Promise<Buffer> {\n const filename = media.filename?.trim()\n if (!filename) {\n throw new Error('Media document has no filename')\n }\n const source = isS3Enabled() ? 's3' : 'disk'\n log.debug(`reading media filename=${filename} source=${source}`)\n return source === 's3' ? readFromS3(filename) : readFromDisk(filename)\n}\n\nexport async function readPayloadMediaAsDataUrl(media: PayloadMedia): Promise<string> {\n const buffer = await readPayloadMediaBuffer(media)\n const mimeType = media.mimeType?.trim() || 'image/jpeg'\n return `data:${mimeType};base64,${buffer.toString('base64')}`\n}\n"],"mappings":";;;;;;;;;;AAaA,MAAM,MAAM,aAAa,kBAAkB;AAO3C,IAAI,iBAAkC;AAEtC,SAAS,cAAuB;CAC9B,OAAO,QAAQ,QAAQ,IAAI,aAAa;AAC1C;AAEA,SAAS,cAAwB;CAC/B,IAAI,gBAAgB,OAAO;CAC3B,MAAM,WAAW,QAAQ,IAAI,iBAAiB,KAAK;CACnD,MAAM,eAA+B;EACnC,QAAQ,QAAQ,IAAI,iBAAiB;EACrC,GAAI,WAAW,EAAE,SAAS,IAAI,CAAC;EAC/B,GAAI,QAAQ,IAAI,4BAA4B,SAAS,EAAE,gBAAgB,KAAK,IAAI,CAAC;CACnF;CACA,MAAM,cAAc,QAAQ,IAAI;CAChC,MAAM,kBAAkB,QAAQ,IAAI;CACpC,IAAI,eAAe,iBACjB,aAAa,cAAc;EAAE;EAAa;CAAgB;CAE5D,iBAAiB,IAAI,SAAS,YAAY;CAC1C,OAAO;AACT;AAEA,eAAe,WAAW,UAAmC;CAC3D,MAAM,SAAS,QAAQ,IAAI;CAC3B,IAAI,CAAC,QACH,MAAM,IAAI,MAAM,sDAAsD;CAGxE,MAAM,WAAW,MADF,YACa,CAAC,CAAC,KAAK,IAAI,iBAAiB;EAAE,QAAQ;EAAQ,KAAK;CAAS,CAAC,CAAC;CAC1F,IAAI,CAAC,SAAS,MACZ,MAAM,IAAI,MAAM,6CAA6C,UAAU;CAGzE,MAAM,QAAQ,MAAM,SAAS,KAAK,qBAAqB;CACvD,OAAO,OAAO,KAAK,KAAK;AAC1B;AAEA,eAAe,aAAa,UAAmC;CAC7D,MAAM,WAAW,KAAK,QAAQ,IAAI,GAAG,SAAS,QAAQ;CACtD,OAAO,SAAS,QAAQ;AAC1B;AAEA,eAAsB,uBAAuB,OAAsC;CACjF,MAAM,WAAW,MAAM,UAAU,KAAK;CACtC,IAAI,CAAC,UACH,MAAM,IAAI,MAAM,gCAAgC;CAElD,MAAM,SAAS,YAAY,IAAI,OAAO;CACtC,IAAI,MAAM,0BAA0B,SAAS,UAAU,QAAQ;CAC/D,OAAO,WAAW,OAAO,WAAW,QAAQ,IAAI,aAAa,QAAQ;AACvE;AAEA,eAAsB,0BAA0B,OAAsC;CACpF,MAAM,SAAS,MAAM,uBAAuB,KAAK;CAEjD,OAAO,QADU,MAAM,UAAU,KAAK,KAAK,aACnB,UAAU,OAAO,SAAS,QAAQ;AAC5D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"seo-e5XjgQ7l.mjs","names":["log"],"sources":["../src/seo/site-url.ts","../src/seo/metadata.ts","../src/seo/og-background.ts"],"sourcesContent":["import { createLogger } from '../utils/logger/logger.js'\n\nconst log = createLogger('siteUrl')\n\nexport type GetSiteUrlOptions = {\n /** Fallback when no env URL is set. Defaults to `http://localhost:3000`. */\n fallback?: string\n}\n\n/** Resolve the public site origin from env (`NEXT_PUBLIC_SITE_URL` / `VERCEL_URL`). */\nexport function getSiteUrl(options: GetSiteUrlOptions = {}): string {\n const fallback = options.fallback ?? 'http://localhost:3000'\n const fromEnv = process.env.NEXT_PUBLIC_SITE_URL\n if (fromEnv) return fromEnv.replace(/\\/$/, '')\n if (process.env.VERCEL_URL) return `https://${process.env.VERCEL_URL}`.replace(/\\/$/, '')\n // A localhost origin in production means canonical/OG URLs will be wrong — surface it loudly.\n if (process.env.NODE_ENV === 'production') {\n log.warn(\n `NEXT_PUBLIC_SITE_URL and VERCEL_URL are unset — falling back to ${fallback}. Canonical and Open Graph URLs will be incorrect.`\n )\n }\n return fallback.replace(/\\/$/, '')\n}\n","import { getSiteUrl } from './site-url.js'\n\nimport type { Metadata } from 'next'\n\nexport type OgImage = {\n url: string\n width?: number\n height?: number\n alt?: string\n}\n\nexport type CreateMetadataInput = {\n title: string\n description?: string\n pathname?: string\n canonicalUrl?: string\n noIndex?: boolean\n noFollow?: boolean\n locale?: string\n images?: OgImage[]\n ogType?: 'website' | 'article'\n article?: {\n publishedTime?: string\n modifiedTime?: string\n expirationTime?: string\n section?: string\n tags?: string[]\n authors?: string[]\n }\n twitterCreator?: string\n /** Per-call overrides (e.g. localized site name). */\n siteName?: string\n defaultDescription?: string\n}\n\nexport type CreateMetadataFactoryOptions = {\n siteName: string\n defaultDescription: string\n locales: readonly string[]\n defaultLocale: string\n /** Maps locale → Open Graph locale tag (e.g. `en` → `en_US`). */\n getOpenGraphLocale: (locale: string) => string\n localePrefix?: 'always' | 'as-needed' | 'never'\n getSiteUrl?: () => string\n}\n\nconst ABSOLUTE_URL_RE = /^https?:\\/\\//i\n\nfunction toAbsolute(value: string, base: string): string {\n if (ABSOLUTE_URL_RE.test(value)) return value\n return new URL(value, base).toString()\n}\n\nexport function createMetadataFactory(options: CreateMetadataFactoryOptions) {\n const localePrefix = options.localePrefix ?? 'as-needed'\n const resolveSiteUrl = options.getSiteUrl ?? (() => getSiteUrl())\n\n function createMetadata(input: CreateMetadataInput): Metadata {\n const siteName = input.siteName ?? options.siteName\n const defaultDescription = input.defaultDescription ?? options.defaultDescription\n const description = input.description?.trim() || defaultDescription\n const pathname = input.pathname ?? '/'\n const base = resolveSiteUrl()\n const canonical = input.canonicalUrl\n ? toAbsolute(input.canonicalUrl, base)\n : new URL(pathname, base).toString()\n\n const locale = input.locale ?? options.defaultLocale\n const ogLocale = options.getOpenGraphLocale(locale)\n\n const languages: Record<string, string> = {}\n for (const l of options.locales) {\n const isDefault = l === options.defaultLocale\n const localizedPath =\n localePrefix === 'as-needed' && isDefault ? pathname : `/${l}${pathname}`\n languages[l] = new URL(localizedPath, base).toString()\n }\n languages['x-default'] = new URL(pathname, base).toString()\n\n const images: OgImage[] | undefined = input.images?.map((img) => ({\n ...img,\n url: toAbsolute(img.url, base),\n }))\n\n const ogType = input.ogType ?? 'website'\n\n const robots =\n input.noIndex || input.noFollow\n ? {\n index: !input.noIndex,\n follow: !input.noFollow,\n }\n : undefined\n\n return {\n title: input.title,\n description,\n alternates: {\n canonical,\n languages,\n },\n openGraph: {\n type: ogType,\n title: input.title,\n description,\n url: canonical,\n siteName,\n locale: ogLocale,\n ...(images ? { images } : {}),\n ...(ogType === 'article' && input.article\n ? {\n publishedTime: input.article.publishedTime,\n modifiedTime: input.article.modifiedTime,\n expirationTime: input.article.expirationTime,\n section: input.article.section,\n tags: input.article.tags,\n authors: input.article.authors,\n }\n : {}),\n },\n twitter: {\n card: 'summary_large_image',\n title: input.title,\n description,\n ...(images ? { images: images.map((i) => i.url) } : {}),\n ...(input.twitterCreator ? { creator: input.twitterCreator } : {}),\n },\n ...(robots ? { robots } : {}),\n }\n }\n\n function createRootMetadata(overrides?: {\n siteName?: string\n defaultDescription?: string\n }): Metadata {\n const base = resolveSiteUrl()\n const siteName = overrides?.siteName ?? options.siteName\n const description = overrides?.defaultDescription ?? options.defaultDescription\n return {\n metadataBase: new URL(base),\n title: {\n default: siteName,\n template: `%s | ${siteName}`,\n },\n description,\n }\n }\n\n return { createMetadata, createRootMetadata }\n}\n","/**\n * Resolves a Payload Media document into a base64 data URL for Satori OG images.\n * Server-only — reads via disk/S3, not the public HTTP media URL.\n */\n\nimport { createLogger } from '../utils/logger/logger.js'\nimport { readPayloadMediaAsDataUrl } from '../cms/payload/readMediaBuffer.js'\n\nimport type { PayloadMedia } from '../cms/payload/readMediaBuffer.js'\n\nconst log = createLogger('ogBackground')\n\nexport async function getOgBackgroundDataUrl(\n media: PayloadMedia | null | undefined\n): Promise<string | undefined> {\n if (!media || !media.filename) return undefined\n try {\n return await readPayloadMediaAsDataUrl({\n filename: media.filename,\n mimeType: media.mimeType,\n })\n } catch (error) {\n const reason = error instanceof Error ? error.message : String(error)\n log.warn(`Failed to load OG background for media ${media.filename}: ${reason}`)\n return undefined\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils-CVVQQltg.mjs","names":[],"sources":["../src/utils/stripShikiPreBackground.ts","../src/utils/toPlainValue.ts"],"sourcesContent":["export function stripShikiPreBackground(html: string): string {\n return html.replace(/<pre([^>]*)style=\"([^\"]*)\"([^>]*)>/, (_, before, styles, after) => {\n const nextStyles = styles\n .replace(/background-color:[^;\"]*;?/gi, '')\n .replace(/(^|;)\\s*;+/g, '$1')\n .trim()\n .replace(/^;|;$/g, '')\n\n if (!nextStyles) {\n return `<pre${before}${after}>`\n }\n\n return `<pre${before}style=\"${nextStyles}\"${after}>`\n })\n}\n","export function toPlainValue<T>(value: T): T {\n if (value == null) return value\n return JSON.parse(JSON.stringify(value)) as T\n}\n"],"mappings":";AAAA,SAAgB,wBAAwB,MAAsB;CAC5D,OAAO,KAAK,QAAQ,uCAAuC,GAAG,QAAQ,QAAQ,UAAU;EACtF,MAAM,aAAa,OAChB,QAAQ,+BAA+B,EAAE,CAAC,CAC1C,QAAQ,eAAe,IAAI,CAAC,CAC5B,KAAK,CAAC,CACN,QAAQ,UAAU,EAAE;EAEvB,IAAI,CAAC,YACH,OAAO,OAAO,SAAS,MAAM;EAG/B,OAAO,OAAO,OAAO,SAAS,WAAW,GAAG,MAAM;CACpD,CAAC;AACH;;;ACdA,SAAgB,aAAgB,OAAa;CAC3C,IAAI,SAAS,MAAM,OAAO;CAC1B,OAAO,KAAK,MAAM,KAAK,UAAU,KAAK,CAAC;AACzC"}
|