@01.software/sdk 0.2.2 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/metadata.cjs CHANGED
@@ -40,7 +40,8 @@ module.exports = __toCommonJS(metadata_exports);
40
40
 
41
41
  // src/utils/types.ts
42
42
  var resolveRelation = (ref) => {
43
- if (typeof ref === "number" || ref === null || ref === void 0) return null;
43
+ if (typeof ref === "string" || typeof ref === "number" || ref === null || ref === void 0)
44
+ return null;
44
45
  return ref;
45
46
  };
46
47
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/metadata.ts","../src/utils/types.ts","../src/core/metadata/index.ts"],"sourcesContent":["export { generateMetadata } from './core/metadata'\nexport type { GenerateMetadataOptions } from './core/metadata'\n","/**\n * Resolves a Payload CMS relation field value.\n * When depth is 0, relation fields return just the ID (number).\n * When depth > 0, they return the full document object (T).\n * This utility normalizes both cases to T | null.\n *\n * @param ref - The relation field value (T, number, null, or undefined)\n * @returns The resolved document object, or null if not populated\n */\nexport const resolveRelation = <T>(ref: T | number | null | undefined): T | null => {\n if (typeof ref === 'number' || ref === null || ref === undefined) return null\n return ref\n}\n\n/** @deprecated Use `resolveRelation` instead */\nexport const objectFor = resolveRelation\n","import type { Metadata } from 'next'\nimport type { Media } from '../../payload-types'\nimport { resolveRelation } from '../../utils/types'\n\ninterface MetaField {\n title?: string | null\n description?: string | null\n image?: (number | null) | Media\n}\n\nexport interface GenerateMetadataOptions {\n title?: string\n description?: string\n siteName?: string\n}\n\nexport function generateMetadata(\n doc: { meta?: MetaField | null },\n options?: GenerateMetadataOptions,\n): Metadata {\n const meta = doc?.meta\n const title = meta?.title ?? options?.title ?? undefined\n const description = meta?.description ?? options?.description ?? undefined\n const image = resolveMetaImage(meta?.image)\n\n return {\n title,\n description,\n openGraph: {\n ...(title && { title }),\n ...(description && { description }),\n ...(options?.siteName && { siteName: options.siteName }),\n ...(image && { images: [image] }),\n },\n twitter: {\n card: image ? 'summary_large_image' : 'summary',\n ...(title && { title }),\n ...(description && { description }),\n ...(image && { images: [image.url] }),\n },\n }\n}\n\nfunction resolveMetaImage(\n ref: (number | null) | Media | undefined,\n): { url: string; width?: number; height?: number; alt?: string } | null {\n const media = resolveRelation<Media>(ref)\n if (!media?.url) return null\n return {\n url: media.url,\n ...(media.width && { width: media.width }),\n ...(media.height && { height: media.height }),\n ...(media.alt && { alt: media.alt }),\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACSO,IAAM,kBAAkB,CAAI,QAAiD;AAClF,MAAI,OAAO,QAAQ,YAAY,QAAQ,QAAQ,QAAQ,OAAW,QAAO;AACzE,SAAO;AACT;;;ACIO,SAAS,iBACd,KACA,SACU;AAnBZ;AAoBE,QAAM,OAAO,2BAAK;AAClB,QAAM,SAAQ,wCAAM,UAAN,YAAe,mCAAS,UAAxB,YAAiC;AAC/C,QAAM,eAAc,wCAAM,gBAAN,YAAqB,mCAAS,gBAA9B,YAA6C;AACjE,QAAM,QAAQ,iBAAiB,6BAAM,KAAK;AAE1C,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,WAAW,gEACL,SAAS,EAAE,MAAM,IACjB,eAAe,EAAE,YAAY,KAC7B,mCAAS,aAAY,EAAE,UAAU,QAAQ,SAAS,IAClD,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE;AAAA,IAEjC,SAAS;AAAA,MACP,MAAM,QAAQ,wBAAwB;AAAA,OAClC,SAAS,EAAE,MAAM,IACjB,eAAe,EAAE,YAAY,IAC7B,SAAS,EAAE,QAAQ,CAAC,MAAM,GAAG,EAAE;AAAA,EAEvC;AACF;AAEA,SAAS,iBACP,KACuE;AACvE,QAAM,QAAQ,gBAAuB,GAAG;AACxC,MAAI,EAAC,+BAAO,KAAK,QAAO;AACxB,SAAO;AAAA,IACL,KAAK,MAAM;AAAA,KACP,MAAM,SAAS,EAAE,OAAO,MAAM,MAAM,IACpC,MAAM,UAAU,EAAE,QAAQ,MAAM,OAAO,IACvC,MAAM,OAAO,EAAE,KAAK,MAAM,IAAI;AAEtC;","names":[]}
1
+ {"version":3,"sources":["../src/metadata.ts","../src/utils/types.ts","../src/core/metadata/index.ts"],"sourcesContent":["export { generateMetadata } from './core/metadata'\nexport type { GenerateMetadataOptions } from './core/metadata'\n","/**\n * Resolves a Payload CMS relation field value.\n * When depth is 0, relation fields return just the ID (string or number).\n * When depth > 0, they return the full document object (T).\n * This utility normalizes both cases to T | null.\n *\n * @param ref - The relation field value (T, string, number, null, or undefined)\n * @returns The resolved document object, or null if not populated\n */\nexport const resolveRelation = <T>(ref: T | string | number | null | undefined): T | null => {\n if (typeof ref === 'string' || typeof ref === 'number' || ref === null || ref === undefined)\n return null\n return ref\n}\n\n/** @deprecated Use `resolveRelation` instead */\nexport const objectFor = resolveRelation\n","import type { Metadata } from 'next'\nimport type { Media } from '../../payload-types'\nimport { resolveRelation } from '../../utils/types'\n\ninterface MetaField {\n title?: string | null\n description?: string | null\n image?: (number | null) | Media\n}\n\nexport interface GenerateMetadataOptions {\n title?: string\n description?: string\n siteName?: string\n}\n\nexport function generateMetadata(\n doc: { meta?: MetaField | null },\n options?: GenerateMetadataOptions,\n): Metadata {\n const meta = doc?.meta\n const title = meta?.title ?? options?.title ?? undefined\n const description = meta?.description ?? options?.description ?? undefined\n const image = resolveMetaImage(meta?.image)\n\n return {\n title,\n description,\n openGraph: {\n ...(title && { title }),\n ...(description && { description }),\n ...(options?.siteName && { siteName: options.siteName }),\n ...(image && { images: [image] }),\n },\n twitter: {\n card: image ? 'summary_large_image' : 'summary',\n ...(title && { title }),\n ...(description && { description }),\n ...(image && { images: [image.url] }),\n },\n }\n}\n\nfunction resolveMetaImage(\n ref: (number | null) | Media | undefined,\n): { url: string; width?: number; height?: number; alt?: string } | null {\n const media = resolveRelation<Media>(ref)\n if (!media?.url) return null\n return {\n url: media.url,\n ...(media.width && { width: media.width }),\n ...(media.height && { height: media.height }),\n ...(media.alt && { alt: media.alt }),\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACSO,IAAM,kBAAkB,CAAI,QAA0D;AAC3F,MAAI,OAAO,QAAQ,YAAY,OAAO,QAAQ,YAAY,QAAQ,QAAQ,QAAQ;AAChF,WAAO;AACT,SAAO;AACT;;;ACGO,SAAS,iBACd,KACA,SACU;AAnBZ;AAoBE,QAAM,OAAO,2BAAK;AAClB,QAAM,SAAQ,wCAAM,UAAN,YAAe,mCAAS,UAAxB,YAAiC;AAC/C,QAAM,eAAc,wCAAM,gBAAN,YAAqB,mCAAS,gBAA9B,YAA6C;AACjE,QAAM,QAAQ,iBAAiB,6BAAM,KAAK;AAE1C,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,WAAW,gEACL,SAAS,EAAE,MAAM,IACjB,eAAe,EAAE,YAAY,KAC7B,mCAAS,aAAY,EAAE,UAAU,QAAQ,SAAS,IAClD,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE;AAAA,IAEjC,SAAS;AAAA,MACP,MAAM,QAAQ,wBAAwB;AAAA,OAClC,SAAS,EAAE,MAAM,IACjB,eAAe,EAAE,YAAY,IAC7B,SAAS,EAAE,QAAQ,CAAC,MAAM,GAAG,EAAE;AAAA,EAEvC;AACF;AAEA,SAAS,iBACP,KACuE;AACvE,QAAM,QAAQ,gBAAuB,GAAG;AACxC,MAAI,EAAC,+BAAO,KAAK,QAAO;AACxB,SAAO;AAAA,IACL,KAAK,MAAM;AAAA,KACP,MAAM,SAAS,EAAE,OAAO,MAAM,MAAM,IACpC,MAAM,UAAU,EAAE,QAAQ,MAAM,OAAO,IACvC,MAAM,OAAO,EAAE,KAAK,MAAM,IAAI;AAEtC;","names":[]}
@@ -1,5 +1,5 @@
1
1
  import { Metadata } from 'next';
2
- import { M as Media } from './payload-types-DPdUroGM.cjs';
2
+ import { M as Media } from './payload-types-BFIUYPDZ.cjs';
3
3
 
4
4
  interface MetaField {
5
5
  title?: string | null;
@@ -1,5 +1,5 @@
1
1
  import { Metadata } from 'next';
2
- import { M as Media } from './payload-types-DPdUroGM.js';
2
+ import { M as Media } from './payload-types-BFIUYPDZ.js';
3
3
 
4
4
  interface MetaField {
5
5
  title?: string | null;
package/dist/metadata.js CHANGED
@@ -17,7 +17,8 @@ var __spreadValues = (a, b) => {
17
17
 
18
18
  // src/utils/types.ts
19
19
  var resolveRelation = (ref) => {
20
- if (typeof ref === "number" || ref === null || ref === void 0) return null;
20
+ if (typeof ref === "string" || typeof ref === "number" || ref === null || ref === void 0)
21
+ return null;
21
22
  return ref;
22
23
  };
23
24
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/utils/types.ts","../src/core/metadata/index.ts"],"sourcesContent":["/**\n * Resolves a Payload CMS relation field value.\n * When depth is 0, relation fields return just the ID (number).\n * When depth > 0, they return the full document object (T).\n * This utility normalizes both cases to T | null.\n *\n * @param ref - The relation field value (T, number, null, or undefined)\n * @returns The resolved document object, or null if not populated\n */\nexport const resolveRelation = <T>(ref: T | number | null | undefined): T | null => {\n if (typeof ref === 'number' || ref === null || ref === undefined) return null\n return ref\n}\n\n/** @deprecated Use `resolveRelation` instead */\nexport const objectFor = resolveRelation\n","import type { Metadata } from 'next'\nimport type { Media } from '../../payload-types'\nimport { resolveRelation } from '../../utils/types'\n\ninterface MetaField {\n title?: string | null\n description?: string | null\n image?: (number | null) | Media\n}\n\nexport interface GenerateMetadataOptions {\n title?: string\n description?: string\n siteName?: string\n}\n\nexport function generateMetadata(\n doc: { meta?: MetaField | null },\n options?: GenerateMetadataOptions,\n): Metadata {\n const meta = doc?.meta\n const title = meta?.title ?? options?.title ?? undefined\n const description = meta?.description ?? options?.description ?? undefined\n const image = resolveMetaImage(meta?.image)\n\n return {\n title,\n description,\n openGraph: {\n ...(title && { title }),\n ...(description && { description }),\n ...(options?.siteName && { siteName: options.siteName }),\n ...(image && { images: [image] }),\n },\n twitter: {\n card: image ? 'summary_large_image' : 'summary',\n ...(title && { title }),\n ...(description && { description }),\n ...(image && { images: [image.url] }),\n },\n }\n}\n\nfunction resolveMetaImage(\n ref: (number | null) | Media | undefined,\n): { url: string; width?: number; height?: number; alt?: string } | null {\n const media = resolveRelation<Media>(ref)\n if (!media?.url) return null\n return {\n url: media.url,\n ...(media.width && { width: media.width }),\n ...(media.height && { height: media.height }),\n ...(media.alt && { alt: media.alt }),\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AASO,IAAM,kBAAkB,CAAI,QAAiD;AAClF,MAAI,OAAO,QAAQ,YAAY,QAAQ,QAAQ,QAAQ,OAAW,QAAO;AACzE,SAAO;AACT;;;ACIO,SAAS,iBACd,KACA,SACU;AAnBZ;AAoBE,QAAM,OAAO,2BAAK;AAClB,QAAM,SAAQ,wCAAM,UAAN,YAAe,mCAAS,UAAxB,YAAiC;AAC/C,QAAM,eAAc,wCAAM,gBAAN,YAAqB,mCAAS,gBAA9B,YAA6C;AACjE,QAAM,QAAQ,iBAAiB,6BAAM,KAAK;AAE1C,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,WAAW,gEACL,SAAS,EAAE,MAAM,IACjB,eAAe,EAAE,YAAY,KAC7B,mCAAS,aAAY,EAAE,UAAU,QAAQ,SAAS,IAClD,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE;AAAA,IAEjC,SAAS;AAAA,MACP,MAAM,QAAQ,wBAAwB;AAAA,OAClC,SAAS,EAAE,MAAM,IACjB,eAAe,EAAE,YAAY,IAC7B,SAAS,EAAE,QAAQ,CAAC,MAAM,GAAG,EAAE;AAAA,EAEvC;AACF;AAEA,SAAS,iBACP,KACuE;AACvE,QAAM,QAAQ,gBAAuB,GAAG;AACxC,MAAI,EAAC,+BAAO,KAAK,QAAO;AACxB,SAAO;AAAA,IACL,KAAK,MAAM;AAAA,KACP,MAAM,SAAS,EAAE,OAAO,MAAM,MAAM,IACpC,MAAM,UAAU,EAAE,QAAQ,MAAM,OAAO,IACvC,MAAM,OAAO,EAAE,KAAK,MAAM,IAAI;AAEtC;","names":[]}
1
+ {"version":3,"sources":["../src/utils/types.ts","../src/core/metadata/index.ts"],"sourcesContent":["/**\n * Resolves a Payload CMS relation field value.\n * When depth is 0, relation fields return just the ID (string or number).\n * When depth > 0, they return the full document object (T).\n * This utility normalizes both cases to T | null.\n *\n * @param ref - The relation field value (T, string, number, null, or undefined)\n * @returns The resolved document object, or null if not populated\n */\nexport const resolveRelation = <T>(ref: T | string | number | null | undefined): T | null => {\n if (typeof ref === 'string' || typeof ref === 'number' || ref === null || ref === undefined)\n return null\n return ref\n}\n\n/** @deprecated Use `resolveRelation` instead */\nexport const objectFor = resolveRelation\n","import type { Metadata } from 'next'\nimport type { Media } from '../../payload-types'\nimport { resolveRelation } from '../../utils/types'\n\ninterface MetaField {\n title?: string | null\n description?: string | null\n image?: (number | null) | Media\n}\n\nexport interface GenerateMetadataOptions {\n title?: string\n description?: string\n siteName?: string\n}\n\nexport function generateMetadata(\n doc: { meta?: MetaField | null },\n options?: GenerateMetadataOptions,\n): Metadata {\n const meta = doc?.meta\n const title = meta?.title ?? options?.title ?? undefined\n const description = meta?.description ?? options?.description ?? undefined\n const image = resolveMetaImage(meta?.image)\n\n return {\n title,\n description,\n openGraph: {\n ...(title && { title }),\n ...(description && { description }),\n ...(options?.siteName && { siteName: options.siteName }),\n ...(image && { images: [image] }),\n },\n twitter: {\n card: image ? 'summary_large_image' : 'summary',\n ...(title && { title }),\n ...(description && { description }),\n ...(image && { images: [image.url] }),\n },\n }\n}\n\nfunction resolveMetaImage(\n ref: (number | null) | Media | undefined,\n): { url: string; width?: number; height?: number; alt?: string } | null {\n const media = resolveRelation<Media>(ref)\n if (!media?.url) return null\n return {\n url: media.url,\n ...(media.width && { width: media.width }),\n ...(media.height && { height: media.height }),\n ...(media.alt && { alt: media.alt }),\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AASO,IAAM,kBAAkB,CAAI,QAA0D;AAC3F,MAAI,OAAO,QAAQ,YAAY,OAAO,QAAQ,YAAY,QAAQ,QAAQ,QAAQ;AAChF,WAAO;AACT,SAAO;AACT;;;ACGO,SAAS,iBACd,KACA,SACU;AAnBZ;AAoBE,QAAM,OAAO,2BAAK;AAClB,QAAM,SAAQ,wCAAM,UAAN,YAAe,mCAAS,UAAxB,YAAiC;AAC/C,QAAM,eAAc,wCAAM,gBAAN,YAAqB,mCAAS,gBAA9B,YAA6C;AACjE,QAAM,QAAQ,iBAAiB,6BAAM,KAAK;AAE1C,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA,WAAW,gEACL,SAAS,EAAE,MAAM,IACjB,eAAe,EAAE,YAAY,KAC7B,mCAAS,aAAY,EAAE,UAAU,QAAQ,SAAS,IAClD,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE;AAAA,IAEjC,SAAS;AAAA,MACP,MAAM,QAAQ,wBAAwB;AAAA,OAClC,SAAS,EAAE,MAAM,IACjB,eAAe,EAAE,YAAY,IAC7B,SAAS,EAAE,QAAQ,CAAC,MAAM,GAAG,EAAE;AAAA,EAEvC;AACF;AAEA,SAAS,iBACP,KACuE;AACvE,QAAM,QAAQ,gBAAuB,GAAG;AACxC,MAAI,EAAC,+BAAO,KAAK,QAAO;AACxB,SAAO;AAAA,IACL,KAAK,MAAM;AAAA,KACP,MAAM,SAAS,EAAE,OAAO,MAAM,MAAM,IACpC,MAAM,UAAU,EAAE,QAAQ,MAAM,OAAO,IACvC,MAAM,OAAO,EAAE,KAAK,MAAM,IAAI;AAEtC;","names":[]}