payload-intl 0.0.2 → 0.0.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.
Files changed (69) hide show
  1. package/dist/components/MessageController.js +29 -28
  2. package/dist/components/MessageController.js.map +1 -1
  3. package/dist/components/MessagesForm.js +92 -76
  4. package/dist/components/MessagesForm.js.map +1 -1
  5. package/dist/components/actions/JsonImport.d.ts +1 -1
  6. package/dist/components/actions/JsonImport.js +63 -0
  7. package/dist/components/actions/JsonImport.js.map +1 -0
  8. package/dist/components/actions/Move.d.ts +1 -1
  9. package/dist/components/inputs/InputWrapper.d.ts +1 -1
  10. package/dist/components/inputs/InputWrapper.js +24 -18
  11. package/dist/components/inputs/InputWrapper.js.map +1 -1
  12. package/dist/components/inputs/MessageInput.d.ts +1 -1
  13. package/dist/components/inputs/MessageInput.js +27 -41
  14. package/dist/components/inputs/MessageInput.js.map +1 -1
  15. package/dist/components/inputs/RichTextInput.js +62 -58
  16. package/dist/components/inputs/RichTextInput.js.map +1 -1
  17. package/dist/components/inputs/toolbar/AlignmentControls.d.ts +1 -1
  18. package/dist/components/inputs/toolbar/AlignmentControls.js +47 -44
  19. package/dist/components/inputs/toolbar/AlignmentControls.js.map +1 -1
  20. package/dist/components/inputs/toolbar/BlockElementSelect.d.ts +1 -1
  21. package/dist/components/inputs/toolbar/BlockElementSelect.js +60 -54
  22. package/dist/components/inputs/toolbar/BlockElementSelect.js.map +1 -1
  23. package/dist/components/inputs/toolbar/LinkEditor.d.ts +1 -1
  24. package/dist/components/inputs/toolbar/LinkEditor.js +182 -170
  25. package/dist/components/inputs/toolbar/LinkEditor.js.map +1 -1
  26. package/dist/components/inputs/toolbar/MarkControls.d.ts +1 -1
  27. package/dist/components/inputs/toolbar/MarkControls.js +29 -28
  28. package/dist/components/inputs/toolbar/MarkControls.js.map +1 -1
  29. package/dist/components/inputs/toolbar/RichTextToolbar.d.ts +1 -1
  30. package/dist/components/inputs/toolbar/RichTextToolbar.js +29 -26
  31. package/dist/components/inputs/toolbar/RichTextToolbar.js.map +1 -1
  32. package/dist/components/inputs/variables/VariableChip.d.ts +1 -1
  33. package/dist/components/inputs/variables/VariableChip.js +55 -49
  34. package/dist/components/inputs/variables/VariableChip.js.map +1 -1
  35. package/dist/components/inputs/variables/VariableSuggestion.d.ts +1 -1
  36. package/dist/components/inputs/variables/VariableSuggestion.js +24 -23
  37. package/dist/components/inputs/variables/VariableSuggestion.js.map +1 -1
  38. package/dist/components/inputs/variables/editors/DateVariableEditor.d.ts +1 -1
  39. package/dist/components/inputs/variables/editors/PluralVariableEditor.d.ts +1 -1
  40. package/dist/components/inputs/variables/editors/PluralVariableEditor.js +151 -122
  41. package/dist/components/inputs/variables/editors/PluralVariableEditor.js.map +1 -1
  42. package/dist/components/inputs/variables/editors/SelectVariableEditor.d.ts +1 -1
  43. package/dist/components/inputs/variables/editors/SelectVariableEditor.js +33 -29
  44. package/dist/components/inputs/variables/editors/SelectVariableEditor.js.map +1 -1
  45. package/dist/components/inputs/variables/editors/TagVariableEditor.d.ts +1 -1
  46. package/dist/components/inputs/variables/editors/TagVariableEditor.js +13 -12
  47. package/dist/components/inputs/variables/editors/TagVariableEditor.js.map +1 -1
  48. package/dist/components/inputs/variables/editors/TimeVariableEditor.d.ts +1 -1
  49. package/dist/components/inputs/variables/pickers/NumericVariablePicker.d.ts +1 -1
  50. package/dist/components/inputs/variables/pickers/NumericVariablePicker.js +40 -36
  51. package/dist/components/inputs/variables/pickers/NumericVariablePicker.js.map +1 -1
  52. package/dist/components/inputs/variables/pickers/TemporalElementEditor.d.ts +1 -1
  53. package/dist/components/layout/MessageField.js +42 -38
  54. package/dist/components/layout/MessageField.js.map +1 -1
  55. package/dist/components/layout/MessagesTabs.js +31 -30
  56. package/dist/components/layout/MessagesTabs.js.map +1 -1
  57. package/dist/components/layout/MessagesTree.js +52 -51
  58. package/dist/components/layout/MessagesTree.js.map +1 -1
  59. package/dist/context/messages-form.d.ts +1 -1
  60. package/dist/context/messages-form.js +12 -11
  61. package/dist/context/messages-form.js.map +1 -1
  62. package/dist/exports/link.d.ts +1 -1
  63. package/dist/exports/link.js +11 -10
  64. package/dist/exports/link.js.map +1 -1
  65. package/dist/exports/view.d.ts +1 -1
  66. package/dist/exports/view.js +43 -40
  67. package/dist/exports/view.js.map +1 -1
  68. package/dist/types.d.ts +2 -2
  69. package/package.json +1 -2
@@ -1,56 +1,59 @@
1
- import l from "path";
2
- import { DefaultTemplate as u } from "@payloadcms/next/templates";
3
- import { Gutter as E } from "@payloadcms/ui";
4
- import { redirect as d, RedirectType as g } from "next/navigation";
5
- import { Toaster as v } from "sonner";
6
- import { sanitizeMessages as A } from "../utils/sanitize.js";
7
- import { MessagesForm as M } from "../components/MessagesForm.js";
8
- import { fetchMessages as h } from "../requests/fetchMessages.js";
9
- async function k({
10
- access: n,
1
+ import { jsxs as d, jsx as o } from "react/jsx-runtime";
2
+ import h from "path";
3
+ import { DefaultTemplate as g } from "@payloadcms/next/templates";
4
+ import { Gutter as u } from "@payloadcms/ui";
5
+ import { redirect as v, RedirectType as A } from "next/navigation";
6
+ import { Toaster as M } from "sonner";
7
+ import { sanitizeMessages as j } from "../utils/sanitize.js";
8
+ import { MessagesForm as q } from "../components/MessagesForm.js";
9
+ import { fetchMessages as w } from "../requests/fetchMessages.js";
10
+ async function F({
11
+ access: m,
11
12
  initPageResult: e,
12
- locales: o,
13
- params: m,
14
- payload: t,
15
- schema: s,
13
+ locales: i,
14
+ params: p,
15
+ payload: s,
16
+ schema: t,
16
17
  searchParams: c,
17
- tabs: a = !1,
18
- richTextEditorOptions: p
18
+ tabs: f = !1,
19
+ richTextEditorOptions: a
19
20
  }) {
20
- await n(e.req) || d(t.getAdminURL(), g.replace);
21
- const i = {};
22
- for (const r of o) {
23
- const f = await h(t, r);
24
- i[r] = A(s, f);
21
+ await m(e.req) || v(s.getAdminURL(), A.replace);
22
+ const n = {};
23
+ for (const r of i) {
24
+ const l = await w(s, r);
25
+ n[r] = j(t, l);
25
26
  }
26
- return /* @__PURE__ */ React.createElement(
27
- u,
27
+ return /* @__PURE__ */ d(
28
+ g,
28
29
  {
29
30
  i18n: e.req.i18n,
30
31
  locale: e.locale,
31
- params: m,
32
+ params: p,
32
33
  payload: e.req.payload,
33
34
  permissions: e.permissions,
34
35
  searchParams: c,
35
36
  user: e.req.user || void 0,
36
- viewActions: t.config.admin.components.actions.filter((r) => typeof r != "object" ? !0 : r.exportName !== "MessagesLink"),
37
- visibleEntities: e.visibleEntities
38
- },
39
- /* @__PURE__ */ React.createElement(E, null, /* @__PURE__ */ React.createElement(
40
- M,
41
- {
42
- locales: o,
43
- schema: s,
44
- tabs: a,
45
- values: i,
46
- endpointUrl: l.join(t.getAPIURL(), "intl-plugin"),
47
- richTextEditorOptions: p
48
- }
49
- )),
50
- /* @__PURE__ */ React.createElement(v, { position: "top-right" })
37
+ viewActions: s.config.admin.components.actions.filter((r) => typeof r != "object" ? !0 : r.exportName !== "MessagesLink"),
38
+ visibleEntities: e.visibleEntities,
39
+ children: [
40
+ /* @__PURE__ */ o(u, { children: /* @__PURE__ */ o(
41
+ q,
42
+ {
43
+ locales: i,
44
+ schema: t,
45
+ tabs: f,
46
+ values: n,
47
+ endpointUrl: h.join(s.getAPIURL(), "intl-plugin"),
48
+ richTextEditorOptions: a
49
+ }
50
+ ) }),
51
+ /* @__PURE__ */ o(M, { position: "top-right" })
52
+ ]
53
+ }
51
54
  );
52
55
  }
53
56
  export {
54
- k as MessagesView
57
+ F as MessagesView
55
58
  };
56
59
  //# sourceMappingURL=view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"view.js","sources":["../../src/exports/view.tsx"],"sourcesContent":["import path from \"path\";\nimport type {\n DeepPartial,\n Locales,\n Messages,\n MessagesGuard,\n RichTextEditorOptions,\n Translations,\n} from \"@/types\";\nimport type { AdminViewServerProps } from \"payload\";\nimport { DefaultTemplate } from \"@payloadcms/next/templates\";\nimport { Gutter } from \"@payloadcms/ui\";\nimport { redirect, RedirectType } from \"next/navigation\";\nimport { Toaster } from \"sonner\";\n\nimport { sanitizeMessages } from \"@/utils/sanitize\";\n\nimport { MessagesForm } from \"../components/MessagesForm\";\nimport { fetchMessages } from \"../requests/fetchMessages\";\n\nexport interface MessagesViewProps {\n locales: Locales;\n schema: Messages;\n tabs: boolean | undefined;\n access: MessagesGuard;\n richTextEditorOptions?: RichTextEditorOptions;\n}\n\nexport async function MessagesView({\n access,\n initPageResult,\n locales,\n params,\n payload,\n schema,\n searchParams,\n tabs = false,\n richTextEditorOptions,\n}: AdminViewServerProps & MessagesViewProps) {\n const hasAccess = await access(initPageResult.req);\n if (!hasAccess) redirect(payload.getAdminURL(), RedirectType.replace);\n\n const translations: Translations<DeepPartial<Messages>> = {};\n\n for (const locale of locales) {\n const messages = await fetchMessages(payload, locale);\n translations[locale] = sanitizeMessages(schema, messages);\n }\n return (\n <DefaultTemplate\n i18n={initPageResult.req.i18n}\n locale={initPageResult.locale}\n params={params}\n payload={initPageResult.req.payload}\n permissions={initPageResult.permissions}\n searchParams={searchParams}\n user={initPageResult.req.user || undefined}\n viewActions={payload.config.admin.components.actions.filter((action) => {\n if (typeof action !== \"object\") {\n return true;\n }\n return action.exportName !== \"MessagesLink\";\n })}\n visibleEntities={initPageResult.visibleEntities}\n >\n <Gutter>\n <MessagesForm\n locales={locales}\n schema={schema}\n tabs={tabs}\n values={translations}\n endpointUrl={path.join(payload.getAPIURL(), \"intl-plugin\")}\n richTextEditorOptions={richTextEditorOptions}\n />\n </Gutter>\n <Toaster position=\"top-right\" />\n </DefaultTemplate>\n );\n}\n"],"names":["MessagesView","access","initPageResult","locales","params","payload","schema","searchParams","tabs","richTextEditorOptions","redirect","RedirectType","translations","locale","messages","fetchMessages","sanitizeMessages","DefaultTemplate","action","Gutter","MessagesForm","path","Toaster"],"mappings":";;;;;;;;AA4BA,eAAsBA,EAAa;AAAA,EACjC,QAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,SAAAC;AAAA,EACA,QAAAC;AAAA,EACA,SAAAC;AAAA,EACA,QAAAC;AAAA,EACA,cAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,uBAAAC;AACF,GAA6C;AAE3C,EADkB,MAAMR,EAAOC,EAAe,GAAG,KACjCQ,EAASL,EAAQ,YAAA,GAAeM,EAAa,OAAO;AAEpE,QAAMC,IAAoD,CAAA;AAE1D,aAAWC,KAAUV,GAAS;AAC5B,UAAMW,IAAW,MAAMC,EAAcV,GAASQ,CAAM;AACpD,IAAAD,EAAaC,CAAM,IAAIG,EAAiBV,GAAQQ,CAAQ;AAAA,EAC1D;AACA,SACE,sBAAA;AAAA,IAACG;AAAA,IAAA;AAAA,MACC,MAAMf,EAAe,IAAI;AAAA,MACzB,QAAQA,EAAe;AAAA,MACvB,QAAAE;AAAA,MACA,SAASF,EAAe,IAAI;AAAA,MAC5B,aAAaA,EAAe;AAAA,MAC5B,cAAAK;AAAA,MACA,MAAML,EAAe,IAAI,QAAQ;AAAA,MACjC,aAAaG,EAAQ,OAAO,MAAM,WAAW,QAAQ,OAAO,CAACa,MACvD,OAAOA,KAAW,WACb,KAEFA,EAAO,eAAe,cAC9B;AAAA,MACD,iBAAiBhB,EAAe;AAAA,IAAA;AAAA,wCAE/BiB,GAAA,MACC,sBAAA;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAAAjB;AAAA,QACA,QAAAG;AAAA,QACA,MAAAE;AAAA,QACA,QAAQI;AAAA,QACR,aAAaS,EAAK,KAAKhB,EAAQ,UAAA,GAAa,aAAa;AAAA,QACzD,uBAAAI;AAAA,MAAA;AAAA,IAAA,CAEJ;AAAA,IACA,sBAAA,cAACa,GAAA,EAAQ,UAAS,YAAA,CAAY;AAAA,EAAA;AAGpC;"}
1
+ {"version":3,"file":"view.js","sources":["../../src/exports/view.tsx"],"sourcesContent":["import path from \"path\";\nimport type {\n DeepPartial,\n Locales,\n Messages,\n MessagesGuard,\n RichTextEditorOptions,\n Translations,\n} from \"@/types\";\nimport type { AdminViewServerProps } from \"payload\";\nimport { DefaultTemplate } from \"@payloadcms/next/templates\";\nimport { Gutter } from \"@payloadcms/ui\";\nimport { redirect, RedirectType } from \"next/navigation\";\nimport { Toaster } from \"sonner\";\n\nimport { sanitizeMessages } from \"@/utils/sanitize\";\n\nimport { MessagesForm } from \"../components/MessagesForm\";\nimport { fetchMessages } from \"../requests/fetchMessages\";\n\nexport interface MessagesViewProps {\n locales: Locales;\n schema: Messages;\n tabs: boolean | undefined;\n access: MessagesGuard;\n richTextEditorOptions?: RichTextEditorOptions;\n}\n\nexport async function MessagesView({\n access,\n initPageResult,\n locales,\n params,\n payload,\n schema,\n searchParams,\n tabs = false,\n richTextEditorOptions,\n}: AdminViewServerProps & MessagesViewProps) {\n const hasAccess = await access(initPageResult.req);\n if (!hasAccess) redirect(payload.getAdminURL(), RedirectType.replace);\n\n const translations: Translations<DeepPartial<Messages>> = {};\n\n for (const locale of locales) {\n const messages = await fetchMessages(payload, locale);\n translations[locale] = sanitizeMessages(schema, messages);\n }\n return (\n <DefaultTemplate\n i18n={initPageResult.req.i18n}\n locale={initPageResult.locale}\n params={params}\n payload={initPageResult.req.payload}\n permissions={initPageResult.permissions}\n searchParams={searchParams}\n user={initPageResult.req.user || undefined}\n viewActions={payload.config.admin.components.actions.filter((action) => {\n if (typeof action !== \"object\") {\n return true;\n }\n return action.exportName !== \"MessagesLink\";\n })}\n visibleEntities={initPageResult.visibleEntities}\n >\n <Gutter>\n <MessagesForm\n locales={locales}\n schema={schema}\n tabs={tabs}\n values={translations}\n endpointUrl={path.join(payload.getAPIURL(), \"intl-plugin\")}\n richTextEditorOptions={richTextEditorOptions}\n />\n </Gutter>\n <Toaster position=\"top-right\" />\n </DefaultTemplate>\n );\n}\n"],"names":["MessagesView","access","initPageResult","locales","params","payload","schema","searchParams","tabs","richTextEditorOptions","redirect","RedirectType","translations","locale","messages","fetchMessages","sanitizeMessages","jsxs","DefaultTemplate","action","jsx","Gutter","MessagesForm","path","Toaster"],"mappings":";;;;;;;;;AA4BA,eAAsBA,EAAa;AAAA,EACjC,QAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,SAAAC;AAAA,EACA,QAAAC;AAAA,EACA,SAAAC;AAAA,EACA,QAAAC;AAAA,EACA,cAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,uBAAAC;AACF,GAA6C;AAE3C,EADkB,MAAMR,EAAOC,EAAe,GAAG,KACjCQ,EAASL,EAAQ,YAAA,GAAeM,EAAa,OAAO;AAEpE,QAAMC,IAAoD,CAAA;AAE1D,aAAWC,KAAUV,GAAS;AAC5B,UAAMW,IAAW,MAAMC,EAAcV,GAASQ,CAAM;AACpD,IAAAD,EAAaC,CAAM,IAAIG,EAAiBV,GAAQQ,CAAQ;AAAA,EAC1D;AACA,SACE,gBAAAG;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAMhB,EAAe,IAAI;AAAA,MACzB,QAAQA,EAAe;AAAA,MACvB,QAAAE;AAAA,MACA,SAASF,EAAe,IAAI;AAAA,MAC5B,aAAaA,EAAe;AAAA,MAC5B,cAAAK;AAAA,MACA,MAAML,EAAe,IAAI,QAAQ;AAAA,MACjC,aAAaG,EAAQ,OAAO,MAAM,WAAW,QAAQ,OAAO,CAACc,MACvD,OAAOA,KAAW,WACb,KAEFA,EAAO,eAAe,cAC9B;AAAA,MACD,iBAAiBjB,EAAe;AAAA,MAEhC,UAAA;AAAA,QAAA,gBAAAkB,EAACC,GAAA,EACC,UAAA,gBAAAD;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,SAAAnB;AAAA,YACA,QAAAG;AAAA,YACA,MAAAE;AAAA,YACA,QAAQI;AAAA,YACR,aAAaW,EAAK,KAAKlB,EAAQ,UAAA,GAAa,aAAa;AAAA,YACzD,uBAAAI;AAAA,UAAA;AAAA,QAAA,GAEJ;AAAA,QACA,gBAAAW,EAACI,GAAA,EAAQ,UAAS,YAAA,CAAY;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGpC;"}
package/dist/types.d.ts CHANGED
@@ -3,9 +3,7 @@ import { HeadingOptions } from '@tiptap/extension-heading';
3
3
  import { CollectionConfig, PayloadRequest } from 'payload';
4
4
  import { DeepPartial } from 'react-hook-form';
5
5
  export interface MessagesPluginConfig {
6
- hooks?: MessagesHooks;
7
6
  schema: MessagesSchema;
8
- tabs?: boolean;
9
7
  /**
10
8
  * The slug of the collection to use for the messages.
11
9
  *
@@ -18,6 +16,8 @@ export interface MessagesPluginConfig {
18
16
  * @default `(req) => req.user !== null // Authenticated users only`
19
17
  */
20
18
  editorAccess?: MessagesGuard;
19
+ hooks?: MessagesHooks;
20
+ tabs?: boolean;
21
21
  /**
22
22
  * The options for the rich text editor.
23
23
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "payload-intl",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "Payload Plugin for I18N using ICU Messages",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -103,7 +103,6 @@
103
103
  "@tiptap/extension-underline": "^3.0.9",
104
104
  "@tiptap/extensions": "^3.0.9",
105
105
  "@tiptap/react": "^3.0.9",
106
- "@tiptap/starter-kit": "^3.0.9",
107
106
  "clsx": "^2.1.1",
108
107
  "lodash-es": "^4.17.21",
109
108
  "radix-ui": "^1.4.2",