@sittari/payload-templates 0.3.2 → 0.4.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 CHANGED
@@ -50,10 +50,66 @@ The generated document stores editable fields under `data_<name>`—for example,
50
50
 
51
51
  ## Template-backed fields
52
52
 
53
- `templateField({ name, template })` inserts a registered template's fields as a
54
- group anywhere Payload fields are accepted, including collections, globals,
55
- tabs, arrays, and blocks. The plugin throws during configuration when the
56
- referenced template is not registered.
53
+ ### `templateField()`
54
+
55
+ ```ts
56
+ templateField(config: TemplateFieldConfig): GroupField
57
+ ```
58
+
59
+ Creates a named Payload group whose fields and fallback values come from a
60
+ template registered with `templatesPlugin()`. It can be used anywhere Payload
61
+ accepts fields, including collections, globals, tabs, arrays, and blocks.
62
+
63
+ ```ts
64
+ import { templateField } from '@sittari/payload-templates'
65
+ import type { CollectionConfig } from 'payload'
66
+
67
+ export const Pages: CollectionConfig = {
68
+ slug: 'pages',
69
+ fields: [
70
+ templateField({
71
+ name: 'hero',
72
+ template: 'defaultHero',
73
+ label: {
74
+ en: 'Hero overrides',
75
+ uk: 'Перевизначення Hero',
76
+ },
77
+ admin: {
78
+ hideGutter: true,
79
+ },
80
+ }),
81
+ ],
82
+ }
83
+ ```
84
+
85
+ | Option | Type | Required | Description |
86
+ | --- | --- | --- | --- |
87
+ | `name` | `string` | Yes | Field name used in the consuming document. Its stored overrides live at this property. |
88
+ | `template` | `string` | Yes | `name` of a template registered with `templatesPlugin()`. Unknown names throw during configuration. |
89
+ | `label` | `GroupField['label']` | No | Payload group label. Static strings, localized label maps, and label functions are supported. |
90
+ | `admin` | `GroupField['admin']` | No | Payload Admin settings for the generated group. The plugin preserves these settings and installs its template field renderer. |
91
+
92
+ The function initially returns a marked group definition. During plugin
93
+ configuration, `templatesPlugin()` replaces its empty field list with an
94
+ optionalized copy of the registered template fields and adds the fallback hook.
95
+ Consequently, `templateField()` must be used in the same Payload config as an
96
+ enabled `templatesPlugin()` call containing the referenced template.
97
+
98
+ The consuming document stores only local overrides:
99
+
100
+ ```ts
101
+ // Managed template: data_defaultHero
102
+ {
103
+ heading: 'Build something useful',
104
+ summary: 'Default summary',
105
+ }
106
+
107
+ // Page document: hero
108
+ {
109
+ heading: 'A page-specific heading',
110
+ // Empty summary inherits "Default summary".
111
+ }
112
+ ```
57
113
 
58
114
  Fields copied into the consuming group are optional, even when the managed
59
115
  template requires them. On read, empty local values inherit from the managed
@@ -67,9 +123,10 @@ template:
67
123
 
68
124
  Inheritance is read-time only. Fallback values are not written into the
69
125
  consuming document, so later edits to the managed template are reflected on the
70
- next API read. Admin edit forms receive the raw stored overrides, so an empty
71
- field remains empty instead of looking like a persisted template value. The
72
- Admin API inspector still displays resolved values.
126
+ next API read. Admin edit forms receive the raw stored overrides. Empty
127
+ supported inputs display the active locale's managed template value as a
128
+ placeholder, and each template-backed group includes a localized link to edit
129
+ that template document. The Admin API inspector still displays resolved values.
73
130
 
74
131
  You can explicitly control resolution for Local API operations through Payload
75
132
  request context:
@@ -0,0 +1,3 @@
1
+ import type { GroupFieldClientProps } from 'payload';
2
+ export declare const TemplateField: (props: GroupFieldClientProps) => import("react").JSX.Element;
3
+ //# sourceMappingURL=TemplateField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateField.d.ts","sourceRoot":"","sources":["../../src/admin/TemplateField.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAqBpD,eAAO,MAAM,aAAa,GAAI,OAAO,qBAAqB,gCAsGzD,CAAA"}
@@ -0,0 +1,82 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { GroupField, useConfig, useLocale, useTranslation } from '@payloadcms/ui';
4
+ import { useEffect, useMemo, useState } from 'react';
5
+ import { translate } from '../translations/index.js';
6
+ import { applyTemplatePlaceholders } from './templatePlaceholders.js';
7
+ const joinURL = (base, path) => `${base.replace(/\/+$/, '')}/${path.replace(/^\/+/, '')}`;
8
+ export const TemplateField = (props) => {
9
+ const { config } = useConfig();
10
+ const locale = useLocale();
11
+ const { i18n } = useTranslation();
12
+ const custom = props.field.admin?.custom;
13
+ const template = custom?.templateField?.template;
14
+ const dataField = custom?.templateField?.dataField;
15
+ const localeCode = typeof locale?.code === 'string' && locale.code ? locale.code : undefined;
16
+ const [templateDocument, setTemplateDocument] = useState();
17
+ useEffect(() => {
18
+ if (typeof template !== 'string' || typeof dataField !== 'string') {
19
+ setTemplateDocument(undefined);
20
+ return;
21
+ }
22
+ const abortController = new AbortController();
23
+ const params = new URLSearchParams({
24
+ depth: '0',
25
+ limit: '1',
26
+ pagination: 'false',
27
+ [`select[${dataField}]`]: 'true',
28
+ 'where[templateType][equals]': template,
29
+ });
30
+ if (localeCode) {
31
+ params.set('locale', localeCode);
32
+ }
33
+ const endpoint = joinURL(config.serverURL, `${config.routes.api}/templates?${params.toString()}`);
34
+ void fetch(endpoint, {
35
+ credentials: 'same-origin',
36
+ signal: abortController.signal,
37
+ })
38
+ .then(async (response) => {
39
+ if (!response.ok) {
40
+ return undefined;
41
+ }
42
+ const result = await response.json();
43
+ const document = result.docs?.[0];
44
+ return document && typeof document === 'object'
45
+ ? document
46
+ : undefined;
47
+ })
48
+ .then(setTemplateDocument)
49
+ .catch((error) => {
50
+ if (!(error instanceof DOMException && error.name === 'AbortError')) {
51
+ setTemplateDocument(undefined);
52
+ }
53
+ });
54
+ return () => abortController.abort();
55
+ }, [
56
+ config.routes.api,
57
+ config.serverURL,
58
+ dataField,
59
+ localeCode,
60
+ template,
61
+ ]);
62
+ const field = useMemo(() => {
63
+ const templateData = typeof dataField === 'string' &&
64
+ templateDocument?.[dataField] &&
65
+ typeof templateDocument[dataField] === 'object' &&
66
+ !Array.isArray(templateDocument[dataField])
67
+ ? templateDocument[dataField]
68
+ : undefined;
69
+ return templateData
70
+ ? {
71
+ ...props.field,
72
+ fields: applyTemplatePlaceholders(props.field.fields, templateData),
73
+ }
74
+ : props.field;
75
+ }, [dataField, props.field, templateDocument]);
76
+ const templateID = templateDocument?.id;
77
+ const templateURL = templateID === undefined
78
+ ? undefined
79
+ : `${joinURL(config.routes.admin, `collections/templates/${encodeURIComponent(String(templateID))}`)}${localeCode ? `?${new URLSearchParams({ locale: localeCode }).toString()}` : ''}`;
80
+ return (_jsxs("div", { className: "template-field", children: [templateURL && (_jsx("div", { style: { fontSize: '13px', marginBottom: '6px', textAlign: 'right' }, children: _jsx("a", { href: templateURL, children: translate('editTemplate', i18n.language) }) })), _jsx(GroupField, { ...props, field: field })] }));
81
+ };
82
+ //# sourceMappingURL=TemplateField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TemplateField.js","sourceRoot":"","sources":["../../src/admin/TemplateField.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ClientField } from 'payload';
2
+ export declare const applyTemplatePlaceholders: (fields: ClientField[], templateData: Record<string, unknown>) => ClientField[];
3
+ //# sourceMappingURL=templatePlaceholders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templatePlaceholders.d.ts","sourceRoot":"","sources":["../../src/admin/templatePlaceholders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAwG1C,eAAO,MAAM,yBAAyB,GACpC,QAAQ,WAAW,EAAE,EACrB,cAAc,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KACpC,WAAW,EACqD,CAAA"}
@@ -0,0 +1,72 @@
1
+ const PLACEHOLDER_FIELD_TYPES = new Set([
2
+ 'code',
3
+ 'date',
4
+ 'email',
5
+ 'number',
6
+ 'select',
7
+ 'text',
8
+ 'textarea',
9
+ ]);
10
+ const isRecord = (value) => Boolean(value) && typeof value === 'object' && !Array.isArray(value);
11
+ const getPlaceholder = (value) => {
12
+ if (typeof value === 'string') {
13
+ return value || undefined;
14
+ }
15
+ if (typeof value === 'number' && Number.isFinite(value)) {
16
+ return String(value);
17
+ }
18
+ if (Array.isArray(value) &&
19
+ value.length > 0 &&
20
+ value.every((item) => typeof item === 'string' || typeof item === 'number')) {
21
+ return value.join(', ');
22
+ }
23
+ return undefined;
24
+ };
25
+ const getFieldValue = (field, templateData) => 'name' in field && typeof field.name === 'string'
26
+ ? templateData[field.name]
27
+ : templateData;
28
+ const applyFieldPlaceholder = (field, templateData) => {
29
+ const fieldValue = getFieldValue(field, templateData);
30
+ if (field.type === 'row' || field.type === 'collapsible') {
31
+ return {
32
+ ...field,
33
+ fields: applyTemplatePlaceholders(field.fields, templateData),
34
+ };
35
+ }
36
+ if (field.type === 'tabs') {
37
+ return {
38
+ ...field,
39
+ tabs: field.tabs.map((tab) => {
40
+ const tabValue = 'name' in tab && typeof tab.name === 'string'
41
+ ? templateData[tab.name]
42
+ : templateData;
43
+ return {
44
+ ...tab,
45
+ fields: applyTemplatePlaceholders(tab.fields, isRecord(tabValue) ? tabValue : {}),
46
+ };
47
+ }),
48
+ };
49
+ }
50
+ if (field.type === 'group') {
51
+ return {
52
+ ...field,
53
+ fields: applyTemplatePlaceholders(field.fields, isRecord(fieldValue) ? fieldValue : {}),
54
+ };
55
+ }
56
+ if (!PLACEHOLDER_FIELD_TYPES.has(field.type)) {
57
+ return field;
58
+ }
59
+ const placeholder = getPlaceholder(fieldValue);
60
+ if (placeholder === undefined) {
61
+ return field;
62
+ }
63
+ return {
64
+ ...field,
65
+ admin: {
66
+ ...field.admin,
67
+ placeholder,
68
+ },
69
+ };
70
+ };
71
+ export const applyTemplatePlaceholders = (fields, templateData) => fields.map((field) => applyFieldPlaceholder(field, templateData));
72
+ //# sourceMappingURL=templatePlaceholders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templatePlaceholders.js","sourceRoot":"","sources":["../../src/admin/templatePlaceholders.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { TemplateField } from '../admin/TemplateField.js';
2
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/exports/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA"}
@@ -0,0 +1,3 @@
1
+ 'use client';
2
+ export { TemplateField } from '../admin/TemplateField.js';
3
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/exports/client.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAOV,MAAM,EACP,MAAM,SAAS,CAAA;AAOhB,OAAO,KAAK,EAAkB,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAkRvE,eAAO,MAAM,eAAe,GACzB,cAAc,qBAAqB,KAAG,MAyCpC,CAAA;AAEL,eAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAOV,MAAM,EACP,MAAM,SAAS,CAAA;AAOhB,OAAO,KAAK,EAAkB,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAiSvE,eAAO,MAAM,eAAe,GACzB,cAAc,qBAAqB,KAAG,MAyCpC,CAAA;AAEL,eAAe,eAAe,CAAA"}
package/dist/plugin.js CHANGED
@@ -6,6 +6,7 @@ import { fieldsContain, transformBlock, transformFields } from './traverseFields
6
6
  const COLLECTION_SLUG = 'templates';
7
7
  const DATA_FIELD_PREFIX = 'data_';
8
8
  const RECONCILE_CONTEXT_KEY = 'sittariTemplatesReconcile';
9
+ const TEMPLATE_FIELD_ADMIN_COMPONENT = '@sittari/payload-templates/client#TemplateField';
9
10
  const VALID_TEMPLATE_NAME = /^[A-Za-z0-9_]+$/;
10
11
  const dataFieldName = (name) => `${DATA_FIELD_PREFIX}${name}`;
11
12
  const extendOnInit = (incomingConfig, onInit) => async (payload) => {
@@ -53,6 +54,20 @@ const createTemplateFieldTransformer = (templates, reusableBlocks) => {
53
54
  const localized = fieldsContain(fields, (templateField) => 'localized' in templateField && templateField.localized === true);
54
55
  return {
55
56
  ...groupField,
57
+ admin: {
58
+ ...groupField.admin,
59
+ components: {
60
+ ...groupField.admin?.components,
61
+ Field: TEMPLATE_FIELD_ADMIN_COMPONENT,
62
+ },
63
+ custom: {
64
+ ...groupField.admin?.custom,
65
+ templateField: {
66
+ dataField: dataFieldName(templateName),
67
+ template: templateName,
68
+ },
69
+ },
70
+ },
56
71
  fields,
57
72
  hooks: {
58
73
  ...groupField.hooks,
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export declare const en: {
2
+ readonly editTemplate: "Edit template";
2
3
  readonly template: "Template";
3
4
  readonly templates: "Templates";
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/translations/en.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE;;;CAGL,CAAA;AAEV,MAAM,MAAM,oBAAoB,GAAG;KAChC,GAAG,IAAI,MAAM,OAAO,EAAE,GAAG,MAAM;CACjC,CAAA"}
1
+ {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../src/translations/en.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,EAAE;;;;CAIL,CAAA;AAEV,MAAM,MAAM,oBAAoB,GAAG;KAChC,GAAG,IAAI,MAAM,OAAO,EAAE,GAAG,MAAM;CACjC,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export const en = {
2
+ editTemplate: 'Edit template',
2
3
  template: 'Template',
3
4
  templates: 'Templates',
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/translations/en.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;CACd,CAAA"}
1
+ {"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/translations/en.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,YAAY,EAAE,eAAe;IAC7B,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;CACd,CAAA"}
@@ -1,14 +1,17 @@
1
1
  import { en } from './en.js';
2
2
  export declare const translations: {
3
3
  en: {
4
+ readonly editTemplate: "Edit template";
4
5
  readonly template: "Template";
5
6
  readonly templates: "Templates";
6
7
  };
7
8
  ru: {
9
+ editTemplate: string;
8
10
  template: string;
9
11
  templates: string;
10
12
  };
11
13
  uk: {
14
+ editTemplate: string;
12
15
  template: string;
13
16
  templates: string;
14
17
  };
@@ -16,4 +19,5 @@ export declare const translations: {
16
19
  export type TemplatesLanguage = keyof typeof translations;
17
20
  export type TemplatesTranslationKey = keyof typeof en;
18
21
  export declare const localizedText: (key: TemplatesTranslationKey) => Record<TemplatesLanguage, string>;
22
+ export declare const translate: (key: TemplatesTranslationKey, language?: string) => string;
19
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/translations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAI5B,eAAO,MAAM,YAAY;;;;;;;;;;;;;CAAiB,CAAA;AAE1C,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,YAAY,CAAA;AACzD,MAAM,MAAM,uBAAuB,GAAG,MAAM,OAAO,EAAE,CAAA;AAErD,eAAO,MAAM,aAAa,GAAI,KAAK,uBAAuB,KAAG,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAI3F,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/translations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAI5B,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;CAAiB,CAAA;AAE1C,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,YAAY,CAAA;AACzD,MAAM,MAAM,uBAAuB,GAAG,MAAM,OAAO,EAAE,CAAA;AAErD,eAAO,MAAM,aAAa,GAAI,KAAK,uBAAuB,KAAG,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAI3F,CAAA;AAEF,eAAO,MAAM,SAAS,GACpB,KAAK,uBAAuB,EAC5B,WAAW,MAAM,KAChB,MAMF,CAAA"}
@@ -7,4 +7,9 @@ export const localizedText = (key) => ({
7
7
  ru: ru[key],
8
8
  uk: uk[key],
9
9
  });
10
+ export const translate = (key, language) => {
11
+ const normalized = language?.trim().toLowerCase().split(/[-_]/, 1)[0];
12
+ const resolvedLanguage = normalized === 'ru' || normalized === 'uk' ? normalized : 'en';
13
+ return translations[resolvedLanguage][key];
14
+ };
10
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/translations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAE5B,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAA;AAK1C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAA4B,EAAqC,EAAE,CAAC,CAAC;IACjG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;IACX,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;IACX,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;CACZ,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/translations/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAA;AAE5B,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAA;AAK1C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAA4B,EAAqC,EAAE,CAAC,CAAC;IACjG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;IACX,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;IACX,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC;CACZ,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,CACvB,GAA4B,EAC5B,QAAiB,EACT,EAAE;IACV,MAAM,UAAU,GAAG,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACrE,MAAM,gBAAgB,GACpB,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAA;IAEhE,OAAO,YAAY,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAA;AAC5C,CAAC,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export declare const ru: {
2
+ editTemplate: string;
2
3
  template: string;
3
4
  templates: string;
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ru.d.ts","sourceRoot":"","sources":["../../src/translations/ru.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,EAAE;;;CAGiB,CAAA"}
1
+ {"version":3,"file":"ru.d.ts","sourceRoot":"","sources":["../../src/translations/ru.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,EAAE;;;;CAIiB,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export const ru = {
2
+ editTemplate: 'Редактировать шаблон',
2
3
  template: 'Шаблон',
3
4
  templates: 'Шаблоны',
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ru.js","sourceRoot":"","sources":["../../src/translations/ru.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;CACU,CAAA"}
1
+ {"version":3,"file":"ru.js","sourceRoot":"","sources":["../../src/translations/ru.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,YAAY,EAAE,sBAAsB;IACpC,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;CACU,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export declare const uk: {
2
+ editTemplate: string;
2
3
  template: string;
3
4
  templates: string;
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"uk.d.ts","sourceRoot":"","sources":["../../src/translations/uk.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,EAAE;;;CAGiB,CAAA"}
1
+ {"version":3,"file":"uk.d.ts","sourceRoot":"","sources":["../../src/translations/uk.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,EAAE;;;;CAIiB,CAAA"}
@@ -1,4 +1,5 @@
1
1
  export const uk = {
2
+ editTemplate: 'Редагувати шаблон',
2
3
  template: 'Шаблон',
3
4
  templates: 'Шаблони',
4
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"uk.js","sourceRoot":"","sources":["../../src/translations/uk.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;CACU,CAAA"}
1
+ {"version":3,"file":"uk.js","sourceRoot":"","sources":["../../src/translations/uk.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,YAAY,EAAE,mBAAmB;IACjC,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,SAAS;CACU,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sittari/payload-templates",
3
- "version": "0.3.2",
3
+ "version": "0.4.0",
4
4
  "description": "Managed template documents for Payload CMS.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -12,6 +12,10 @@
12
12
  "import": "./dist/index.js",
13
13
  "default": "./dist/index.js"
14
14
  },
15
+ "./client": {
16
+ "types": "./dist/exports/client.d.ts",
17
+ "import": "./dist/exports/client.js"
18
+ },
15
19
  "./types": {
16
20
  "types": "./dist/exports/types.d.ts",
17
21
  "import": "./dist/exports/types.js"
@@ -22,12 +26,18 @@
22
26
  "README.md"
23
27
  ],
24
28
  "sideEffects": false,
29
+ "dependencies": {
30
+ "@payloadcms/ui": "^3.0.0"
31
+ },
25
32
  "peerDependencies": {
26
- "payload": "^3.0.0"
33
+ "payload": "^3.0.0",
34
+ "react": "^19.0.0"
27
35
  },
28
36
  "devDependencies": {
29
37
  "@payloadcms/db-sqlite": "3.85.2",
38
+ "@types/react": "^19.0.0",
30
39
  "payload": "^3.0.0",
40
+ "react": "^19.0.0",
31
41
  "typescript": "5.9.3",
32
42
  "vitest": "4.1.9"
33
43
  },