@payloadcms/richtext-lexical 4.0.0-beta.2 → 4.0.0-beta.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 (159) hide show
  1. package/dist/exports/client/Field-334JNLRF.js +2 -0
  2. package/dist/exports/client/Field-334JNLRF.js.map +7 -0
  3. package/dist/exports/client/{RelationshipComponent-YCPAKOL7.js → RelationshipComponent-TVK6I4W4.js} +2 -2
  4. package/dist/exports/client/chunk-BEKGION5.js +2 -0
  5. package/dist/exports/client/chunk-BEKGION5.js.map +7 -0
  6. package/dist/exports/client/{chunk-WSAPGI3Z.js → chunk-EA5BHQ2T.js} +1 -1
  7. package/dist/exports/client/{chunk-WSAPGI3Z.js.map → chunk-EA5BHQ2T.js.map} +1 -1
  8. package/dist/exports/client/chunk-FAJJXXCW.js +2 -0
  9. package/dist/exports/client/{chunk-3LRZDIIG.js.map → chunk-FAJJXXCW.js.map} +2 -2
  10. package/dist/exports/client/{chunk-5VIL27GI.js → chunk-IYBYNEKX.js} +1 -1
  11. package/dist/exports/client/{chunk-5VIL27GI.js.map → chunk-IYBYNEKX.js.map} +1 -1
  12. package/dist/exports/client/chunk-SE5IITBK.js +2 -0
  13. package/dist/exports/client/chunk-SE5IITBK.js.map +7 -0
  14. package/dist/exports/client/{component-6DQLENIE.js → component-QENB4QTS.js} +2 -2
  15. package/dist/exports/client/componentInline-AU7IBNY7.js +2 -0
  16. package/dist/exports/client/index.js +27 -27
  17. package/dist/exports/client/index.js.map +3 -3
  18. package/dist/features/align/client/index.js.map +1 -1
  19. package/dist/features/blocks/client/component/BlockContent.js.map +1 -1
  20. package/dist/features/blocks/client/component/components/BlockCollapsible.js.map +1 -1
  21. package/dist/features/blocks/client/component/components/BlockEditButton.js.map +1 -1
  22. package/dist/features/blocks/client/component/components/BlockRemoveButton.js.map +1 -1
  23. package/dist/features/blocks/client/component/index.d.ts.map +1 -1
  24. package/dist/features/blocks/client/component/index.js +38 -16
  25. package/dist/features/blocks/client/component/index.js.map +1 -1
  26. package/dist/features/blocks/client/componentInline/components/InlineBlockContainer.js.map +1 -1
  27. package/dist/features/blocks/client/componentInline/components/InlineBlockEditButton.js.map +1 -1
  28. package/dist/features/blocks/client/componentInline/components/InlineBlockLabel.js.map +1 -1
  29. package/dist/features/blocks/client/componentInline/components/InlineBlockRemoveButton.js.map +1 -1
  30. package/dist/features/blocks/client/componentInline/index.d.ts.map +1 -1
  31. package/dist/features/blocks/client/componentInline/index.js +5 -11
  32. package/dist/features/blocks/client/componentInline/index.js.map +1 -1
  33. package/dist/features/blocks/client/getCachedFormStateIfDataMatches.js.map +1 -1
  34. package/dist/features/blocks/client/plugin/index.js.map +1 -1
  35. package/dist/features/blocks/premade/CodeBlock/Component/Block.js +121 -78
  36. package/dist/features/blocks/premade/CodeBlock/Component/Block.js.map +1 -1
  37. package/dist/features/blocks/premade/CodeBlock/Component/Code.js +142 -87
  38. package/dist/features/blocks/premade/CodeBlock/Component/Code.js.map +1 -1
  39. package/dist/features/converters/lexicalToHtml/sync/types.d.ts.map +1 -1
  40. package/dist/features/converters/lexicalToHtml/sync/types.js.map +1 -1
  41. package/dist/features/debug/jsxConverter/client/plugin/index.js.map +1 -1
  42. package/dist/features/debug/testRecorder/client/plugin/index.js.map +1 -1
  43. package/dist/features/debug/treeView/client/plugin/index.js.map +1 -1
  44. package/dist/features/heading/client/index.js.map +1 -1
  45. package/dist/features/horizontalRule/client/plugin/index.js.map +1 -1
  46. package/dist/features/indent/client/index.d.ts.map +1 -1
  47. package/dist/features/indent/client/index.js +0 -2
  48. package/dist/features/indent/client/index.js.map +1 -1
  49. package/dist/features/indent/server/i18n.d.ts.map +1 -1
  50. package/dist/features/indent/server/i18n.js.map +1 -1
  51. package/dist/features/link/client/plugins/autoLink/index.js.map +1 -1
  52. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.d.ts.map +1 -1
  53. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js +10 -2
  54. package/dist/features/link/client/plugins/floatingLinkEditor/LinkEditor/index.js.map +1 -1
  55. package/dist/features/link/client/plugins/link/index.js.map +1 -1
  56. package/dist/features/link/markdownTransformer.js +2 -2
  57. package/dist/features/link/markdownTransformer.js.map +1 -1
  58. package/dist/features/link/server/baseFields.js.map +1 -1
  59. package/dist/features/lists/shared/schema.d.ts.map +1 -1
  60. package/dist/features/lists/shared/schema.js.map +1 -1
  61. package/dist/features/relationship/client/drawer/index.js.map +1 -1
  62. package/dist/features/relationship/client/plugins/index.js.map +1 -1
  63. package/dist/features/relationship/client/utils/useEnabledRelationships.js.map +1 -1
  64. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.css +1 -1
  65. package/dist/features/table/client/plugins/TableActionMenuPlugin/index.js.map +1 -1
  66. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.js +6 -6
  67. package/dist/features/table/client/plugins/TableCellResizerPlugin/index.js.map +1 -1
  68. package/dist/features/table/client/plugins/TableHoverActionsPlugin/index.js.map +1 -1
  69. package/dist/features/table/client/plugins/TablePlugin/index.js +54 -18
  70. package/dist/features/table/client/plugins/TablePlugin/index.js.map +1 -1
  71. package/dist/features/table/client/utils/useDebounce.js.map +1 -1
  72. package/dist/features/textState/defaultColors.js +1 -1
  73. package/dist/features/textState/defaultColors.js.map +1 -1
  74. package/dist/features/toolbars/fixed/client/Toolbar/horizontalWheelScroll.js.map +1 -1
  75. package/dist/features/toolbars/fixed/client/Toolbar/index.js +126 -70
  76. package/dist/features/toolbars/fixed/client/Toolbar/index.js.map +1 -1
  77. package/dist/features/toolbars/inline/client/Toolbar/index.js +67 -35
  78. package/dist/features/toolbars/inline/client/Toolbar/index.js.map +1 -1
  79. package/dist/features/toolbars/shared/ToolbarButton/index.d.ts.map +1 -1
  80. package/dist/features/toolbars/shared/ToolbarButton/index.js +26 -2
  81. package/dist/features/toolbars/shared/ToolbarButton/index.js.map +1 -1
  82. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js +137 -72
  83. package/dist/features/toolbars/shared/ToolbarDropdown/DropDown.js.map +1 -1
  84. package/dist/features/toolbars/shared/ToolbarDropdown/index.d.ts.map +1 -1
  85. package/dist/features/toolbars/shared/ToolbarDropdown/index.js +22 -6
  86. package/dist/features/toolbars/shared/ToolbarDropdown/index.js.map +1 -1
  87. package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.js +100 -70
  88. package/dist/features/toolbars/shared/useToolbarKeyboardNavigation.js.map +1 -1
  89. package/dist/features/upload/client/drawer/index.js.map +1 -1
  90. package/dist/features/upload/client/plugin/index.js.map +1 -1
  91. package/dist/field/RenderLexical/index.js.map +1 -1
  92. package/dist/field/ViewSelector.js +12 -4
  93. package/dist/field/ViewSelector.js.map +1 -1
  94. package/dist/field/bundled.css +1 -1
  95. package/dist/field/index.js.map +1 -1
  96. package/dist/i18n.d.ts.map +1 -1
  97. package/dist/i18n.js +44 -0
  98. package/dist/i18n.js.map +1 -1
  99. package/dist/lexical/LexicalEditor.js.map +1 -1
  100. package/dist/lexical/plugins/ClipboardPlugin/index.js.map +1 -1
  101. package/dist/lexical/plugins/DecoratorPlugin/index.js.map +1 -1
  102. package/dist/lexical/plugins/InsertParagraphAtEnd/index.js.map +1 -1
  103. package/dist/lexical/plugins/MarkdownShortcut/index.js.map +1 -1
  104. package/dist/lexical/plugins/NodeViewOverridePlugin/index.js.map +1 -1
  105. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js +234 -87
  106. package/dist/lexical/plugins/SlashMenu/LexicalTypeaheadMenuPlugin/LexicalMenu.js.map +1 -1
  107. package/dist/lexical/plugins/SlashMenu/useMenuTriggerMatch.js.map +1 -1
  108. package/dist/lexical/plugins/TextPlugin/index.js.map +1 -1
  109. package/dist/lexical/plugins/handles/AddBlockHandlePlugin/index.js.map +1 -1
  110. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.css +16 -0
  111. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.d.ts.map +1 -1
  112. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js +126 -38
  113. package/dist/lexical/plugins/handles/DraggableBlockPlugin/index.js.map +1 -1
  114. package/dist/lexical/plugins/handles/DraggableBlockPlugin/moveBlock.d.ts +7 -0
  115. package/dist/lexical/plugins/handles/DraggableBlockPlugin/moveBlock.d.ts.map +1 -0
  116. package/dist/lexical/plugins/handles/DraggableBlockPlugin/moveBlock.js +15 -0
  117. package/dist/lexical/plugins/handles/DraggableBlockPlugin/moveBlock.js.map +1 -0
  118. package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.d.ts.map +1 -1
  119. package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.js +9 -12
  120. package/dist/lexical/plugins/handles/DraggableBlockPlugin/useKeyboardReordering.js.map +1 -1
  121. package/dist/lexical/ui/ContentEditable.js.map +1 -1
  122. package/dist/lexical/utils/nodeFormat.d.ts.map +1 -1
  123. package/dist/lexical/utils/nodeFormat.js +0 -2
  124. package/dist/lexical/utils/nodeFormat.js.map +1 -1
  125. package/dist/lexical/utils/url.d.ts.map +1 -1
  126. package/dist/lexical/utils/url.js +1 -1
  127. package/dist/lexical/utils/url.js.map +1 -1
  128. package/dist/populateGraphQL/populate.js.map +1 -1
  129. package/dist/types/index.d.ts.map +1 -1
  130. package/dist/types/index.js.map +1 -1
  131. package/dist/utilities/buildEditorState.d.ts.map +1 -1
  132. package/dist/utilities/buildEditorState.js.map +1 -1
  133. package/dist/utilities/fieldsDrawer/Drawer.js +36 -36
  134. package/dist/utilities/fieldsDrawer/Drawer.js.map +1 -1
  135. package/dist/utilities/fieldsDrawer/DrawerContent.d.ts.map +1 -1
  136. package/dist/utilities/fieldsDrawer/DrawerContent.js +6 -9
  137. package/dist/utilities/fieldsDrawer/DrawerContent.js.map +1 -1
  138. package/dist/utilities/fieldsDrawer/useDrawerSubmit.js.map +1 -1
  139. package/dist/utilities/fieldsDrawer/useLexicalDocumentDrawer.js.map +1 -1
  140. package/dist/utilities/fieldsDrawer/useLexicalDrawer.js.map +1 -1
  141. package/dist/utilities/fieldsDrawer/useLexicalListDrawer.js.map +1 -1
  142. package/dist/utilities/initLexicalFeatures.d.ts.map +1 -1
  143. package/dist/utilities/initLexicalFeatures.js +38 -4
  144. package/dist/utilities/initLexicalFeatures.js.map +1 -1
  145. package/dist/utilities/useLexicalFeature.js +15 -6
  146. package/dist/utilities/useLexicalFeature.js.map +1 -1
  147. package/dist/utilities/useRunDeprioritized.js.map +1 -1
  148. package/package.json +32 -35
  149. package/dist/exports/client/Field-W2ABOM7M.js +0 -2
  150. package/dist/exports/client/Field-W2ABOM7M.js.map +0 -7
  151. package/dist/exports/client/chunk-3LRZDIIG.js +0 -2
  152. package/dist/exports/client/chunk-E6LSRRP2.js +0 -2
  153. package/dist/exports/client/chunk-E6LSRRP2.js.map +0 -7
  154. package/dist/exports/client/chunk-ZQX5HXUL.js +0 -2
  155. package/dist/exports/client/chunk-ZQX5HXUL.js.map +0 -7
  156. package/dist/exports/client/componentInline-HNE5G4TE.js +0 -2
  157. /package/dist/exports/client/{RelationshipComponent-YCPAKOL7.js.map → RelationshipComponent-TVK6I4W4.js.map} +0 -0
  158. /package/dist/exports/client/{component-6DQLENIE.js.map → component-QENB4QTS.js.map} +0 -0
  159. /package/dist/exports/client/{componentInline-HNE5G4TE.js.map → componentInline-AU7IBNY7.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","ShimmerEffect","useConfig","React","lazy","Suspense","useEffect","useState","defaultEditorLexicalConfig","loadClientFeatures","sanitizeClientEditorConfig","RichTextViewProvider","useRichTextView","RichTextEditor","then","module","default","RichText","RichTextField","props","_jsx","inheritable","views","RichTextFieldImpl","$","admin","t0","clientFeatures","featureClientImportMap","t1","featureClientSchemaMap","field","lexicalEditorConfig","t2","schemaPath","t3","undefined","_admin","t4","_lexicalEditorConfig","currentView","currentViewAdminConfig","viewLexical","lexical","t5","currentViewLexicalEditorConfig","config","finalSanitizedEditorConfig","setFinalSanitizedEditorConfig","t6","t7","view","currentViewConfig","filteredClientFeatures","filterFeatures","featureProvidersLocal","clientFeature","Object","values","clientFeatureProvider","clientFeatureProps","push","resolvedClientFeatures","name","unSanitizedEditorConfig","features","t8","fallback","height","_createElement","editorConfig","key"],"sources":["../../src/field/index.tsx"],"sourcesContent":["'use client'\n\nimport type { EditorConfig as LexicalEditorConfig } from 'lexical'\nimport type { RichTextFieldClient } from 'payload'\n\nimport { ShimmerEffect, useConfig } from '@payloadcms/ui'\nimport React, { lazy, Suspense, useEffect, useState } from 'react'\n\nimport type { FeatureProviderClient } from '../features/typesClient.js'\nimport type { SanitizedClientEditorConfig } from '../lexical/config/types.js'\nimport type { LexicalFieldAdminClientProps, LexicalRichTextFieldProps } from '../types/index.js'\n\nimport { defaultEditorLexicalConfig } from '../lexical/config/client/default.js'\nimport { loadClientFeatures } from '../lexical/config/client/loader.js'\nimport { sanitizeClientEditorConfig } from '../lexical/config/client/sanitize.js'\nimport { RichTextViewProvider, useRichTextView } from './RichTextViewProvider.js'\n\nconst RichTextEditor = lazy(() =>\n import('./Field.js').then((module) => ({ default: module.RichText })),\n)\n\nexport const RichTextField: React.FC<LexicalRichTextFieldProps> = (props) => {\n return (\n <RichTextViewProvider inheritable={true} views={props.views}>\n <RichTextFieldImpl {...props} />\n </RichTextViewProvider>\n )\n}\n\nexport const RichTextFieldImpl: React.FC<LexicalRichTextFieldProps> = (props) => {\n const {\n admin: _admin = {},\n clientFeatures,\n featureClientImportMap = {},\n featureClientSchemaMap,\n field,\n lexicalEditorConfig: _lexicalEditorConfig = defaultEditorLexicalConfig,\n schemaPath,\n views,\n } = props\n const { currentView } = useRichTextView()\n const currentViewAdminConfig: LexicalFieldAdminClientProps = views?.[currentView]?.admin ?? _admin\n const viewLexical = views?.[currentView]?.lexical\n // Resolve function form of lexical config if provided\n const currentViewLexicalEditorConfig: LexicalEditorConfig =\n typeof viewLexical === 'function'\n ? viewLexical(_lexicalEditorConfig)\n : (viewLexical ?? _lexicalEditorConfig)\n\n const { config } = useConfig()\n\n const [finalSanitizedEditorConfig, setFinalSanitizedEditorConfig] =\n useState<null | SanitizedClientEditorConfig>(null)\n\n useEffect(() => {\n if (finalSanitizedEditorConfig && finalSanitizedEditorConfig.view === currentView) {\n return\n }\n\n const currentViewConfig = views?.[currentView]\n const filteredClientFeatures = currentViewConfig?.filterFeatures\n ? currentViewConfig.filterFeatures(clientFeatures)\n : clientFeatures\n\n const featureProvidersLocal: FeatureProviderClient<any, any>[] = []\n for (const clientFeature of Object.values(filteredClientFeatures)) {\n if (!clientFeature.clientFeatureProvider || !clientFeature.clientFeatureProps) {\n continue\n }\n featureProvidersLocal.push(\n clientFeature.clientFeatureProvider(clientFeature.clientFeatureProps),\n )\n }\n\n const resolvedClientFeatures = loadClientFeatures({\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n field: field as RichTextFieldClient,\n schemaPath: schemaPath ?? field.name,\n unSanitizedEditorConfig: {\n features: featureProvidersLocal,\n lexical: currentViewLexicalEditorConfig,\n },\n })\n\n setFinalSanitizedEditorConfig(\n sanitizeClientEditorConfig(\n resolvedClientFeatures,\n currentViewLexicalEditorConfig,\n currentViewAdminConfig,\n currentView,\n ),\n )\n }, [\n currentViewAdminConfig,\n clientFeatures,\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n field,\n finalSanitizedEditorConfig,\n currentViewLexicalEditorConfig,\n schemaPath,\n currentView,\n views,\n ]) // TODO: Optimize this and use useMemo for this in the future. This might break sub-richtext-blocks from the blocks feature. Need to investigate\n\n return (\n <Suspense fallback={<ShimmerEffect height=\"35vh\" />}>\n {finalSanitizedEditorConfig && (\n <RichTextEditor\n {...props}\n editorConfig={finalSanitizedEditorConfig}\n key={finalSanitizedEditorConfig.view}\n />\n )}\n </Suspense>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","ShimmerEffect","useConfig","React","lazy","Suspense","useEffect","useState","defaultEditorLexicalConfig","loadClientFeatures","sanitizeClientEditorConfig","RichTextViewProvider","useRichTextView","RichTextEditor","then","module","default","RichText","RichTextField","props","_jsx","inheritable","views","RichTextFieldImpl","$","admin","t0","clientFeatures","featureClientImportMap","t1","featureClientSchemaMap","field","lexicalEditorConfig","t2","schemaPath","t3","undefined","_admin","t4","_lexicalEditorConfig","currentView","currentViewAdminConfig","viewLexical","lexical","t5","currentViewLexicalEditorConfig","config","finalSanitizedEditorConfig","setFinalSanitizedEditorConfig","t6","t7","view","currentViewConfig","filteredClientFeatures","filterFeatures","featureProvidersLocal","clientFeature","Object","values","clientFeatureProvider","clientFeatureProps","push","resolvedClientFeatures","name","unSanitizedEditorConfig","features","t8","fallback","height","_createElement","editorConfig","key"],"sources":["../../src/field/index.tsx"],"sourcesContent":["'use client'\n\nimport type { EditorConfig as LexicalEditorConfig } from 'lexical'\nimport type { RichTextFieldClient } from 'payload'\n\nimport { ShimmerEffect, useConfig } from '@payloadcms/ui'\nimport React, { lazy, Suspense, useEffect, useState } from 'react'\n\nimport type { FeatureProviderClient } from '../features/typesClient.js'\nimport type { SanitizedClientEditorConfig } from '../lexical/config/types.js'\nimport type { LexicalFieldAdminClientProps, LexicalRichTextFieldProps } from '../types/index.js'\n\nimport { defaultEditorLexicalConfig } from '../lexical/config/client/default.js'\nimport { loadClientFeatures } from '../lexical/config/client/loader.js'\nimport { sanitizeClientEditorConfig } from '../lexical/config/client/sanitize.js'\nimport { RichTextViewProvider, useRichTextView } from './RichTextViewProvider.js'\n\nconst RichTextEditor = lazy(() =>\n import('./Field.js').then((module) => ({ default: module.RichText })),\n)\n\nexport const RichTextField: React.FC<LexicalRichTextFieldProps> = (props) => {\n return (\n <RichTextViewProvider inheritable={true} views={props.views}>\n <RichTextFieldImpl {...props} />\n </RichTextViewProvider>\n )\n}\n\nexport const RichTextFieldImpl: React.FC<LexicalRichTextFieldProps> = (props) => {\n const {\n admin: _admin = {},\n clientFeatures,\n featureClientImportMap = {},\n featureClientSchemaMap,\n field,\n lexicalEditorConfig: _lexicalEditorConfig = defaultEditorLexicalConfig,\n schemaPath,\n views,\n } = props\n const { currentView } = useRichTextView()\n const currentViewAdminConfig: LexicalFieldAdminClientProps = views?.[currentView]?.admin ?? _admin\n const viewLexical = views?.[currentView]?.lexical\n // Resolve function form of lexical config if provided\n const currentViewLexicalEditorConfig: LexicalEditorConfig =\n typeof viewLexical === 'function'\n ? viewLexical(_lexicalEditorConfig)\n : (viewLexical ?? _lexicalEditorConfig)\n\n const { config } = useConfig()\n\n const [finalSanitizedEditorConfig, setFinalSanitizedEditorConfig] =\n useState<null | SanitizedClientEditorConfig>(null)\n\n useEffect(() => {\n if (finalSanitizedEditorConfig && finalSanitizedEditorConfig.view === currentView) {\n return\n }\n\n const currentViewConfig = views?.[currentView]\n const filteredClientFeatures = currentViewConfig?.filterFeatures\n ? currentViewConfig.filterFeatures(clientFeatures)\n : clientFeatures\n\n const featureProvidersLocal: FeatureProviderClient<any, any>[] = []\n for (const clientFeature of Object.values(filteredClientFeatures)) {\n if (!clientFeature.clientFeatureProvider || !clientFeature.clientFeatureProps) {\n continue\n }\n featureProvidersLocal.push(\n clientFeature.clientFeatureProvider(clientFeature.clientFeatureProps),\n )\n }\n\n const resolvedClientFeatures = loadClientFeatures({\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n field: field as RichTextFieldClient,\n schemaPath: schemaPath ?? field.name,\n unSanitizedEditorConfig: {\n features: featureProvidersLocal,\n lexical: currentViewLexicalEditorConfig,\n },\n })\n\n setFinalSanitizedEditorConfig(\n sanitizeClientEditorConfig(\n resolvedClientFeatures,\n currentViewLexicalEditorConfig,\n currentViewAdminConfig,\n currentView,\n ),\n )\n }, [\n currentViewAdminConfig,\n clientFeatures,\n config,\n featureClientImportMap,\n featureClientSchemaMap,\n field,\n finalSanitizedEditorConfig,\n currentViewLexicalEditorConfig,\n schemaPath,\n currentView,\n views,\n ]) // TODO: Optimize this and use useMemo for this in the future. This might break sub-richtext-blocks from the blocks feature. Need to investigate\n\n return (\n <Suspense fallback={<ShimmerEffect height=\"35vh\" />}>\n {finalSanitizedEditorConfig && (\n <RichTextEditor\n {...props}\n editorConfig={finalSanitizedEditorConfig}\n key={finalSanitizedEditorConfig.view}\n />\n )}\n </Suspense>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAEhE,eAAO,MAAM,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAqT1C,CAAA"}
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAEhE,eAAO,MAAM,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAiW1C,CAAA"}
package/dist/i18n.js CHANGED
@@ -4,6 +4,7 @@ export const i18n = {
4
4
  placeholder: "Mulai mengetik, atau tekan '/' untuk perintah...",
5
5
  slashMenuBasicGroupLabel: 'Dasar',
6
6
  slashMenuListGroupLabel: 'Daftar',
7
+ textStyle: 'Gaya teks',
7
8
  toolbarItemsActive: '{{count}} aktif'
8
9
  },
9
10
  ar: {
@@ -11,6 +12,7 @@ export const i18n = {
11
12
  placeholder: "ابدأ بالكتابة، أو اضغط على '/' للأوامر ...",
12
13
  slashMenuBasicGroupLabel: 'أساسي',
13
14
  slashMenuListGroupLabel: 'قوائم',
15
+ textStyle: 'نمط النص',
14
16
  toolbarItemsActive: '{{count}} نشط'
15
17
  },
16
18
  az: {
@@ -18,6 +20,7 @@ export const i18n = {
18
20
  placeholder: "Yazmağa başlayın və ya əmrlər üçün '/' düyməsini basın...",
19
21
  slashMenuBasicGroupLabel: 'Əsas',
20
22
  slashMenuListGroupLabel: 'Siyahılar',
23
+ textStyle: 'Mətn üslubu',
21
24
  toolbarItemsActive: '{{count}} aktiv'
22
25
  },
23
26
  bg: {
@@ -25,6 +28,7 @@ export const i18n = {
25
28
  placeholder: "Започнете да пишете или натиснете '/' за команди...",
26
29
  slashMenuBasicGroupLabel: 'Основен',
27
30
  slashMenuListGroupLabel: 'Списъци',
31
+ textStyle: 'Стил на текста',
28
32
  toolbarItemsActive: '{{count}} активни'
29
33
  },
30
34
  'bn-BD': {
@@ -32,6 +36,7 @@ export const i18n = {
32
36
  placeholder: "টাইপ করা শুরু করুন, অথবা কমান্ডের জন্য '/' চাপুন...",
33
37
  slashMenuBasicGroupLabel: 'মৌলিক',
34
38
  slashMenuListGroupLabel: 'তালিকা সমূহ',
39
+ textStyle: 'পাঠ্যের শৈলী',
35
40
  toolbarItemsActive: '{{count}} সক্রিয়'
36
41
  },
37
42
  'bn-IN': {
@@ -39,6 +44,7 @@ export const i18n = {
39
44
  placeholder: 'টাইপ করতে শুরু করুন, অথবা কমান্ডের জন্য ‘/’ চাপুন...',
40
45
  slashMenuBasicGroupLabel: 'মৌলিক',
41
46
  slashMenuListGroupLabel: 'তালিকাসমূহ',
47
+ textStyle: 'পাঠ্যের শৈলী',
42
48
  toolbarItemsActive: '{{count}} সক্রিয়'
43
49
  },
44
50
  ca: {
@@ -46,6 +52,7 @@ export const i18n = {
46
52
  placeholder: "Comença a escriure o prem '/' per a comandes...",
47
53
  slashMenuBasicGroupLabel: 'Bàsic',
48
54
  slashMenuListGroupLabel: 'Llistes',
55
+ textStyle: 'Estil de text',
49
56
  toolbarItemsActive: '{{count}} actiu'
50
57
  },
51
58
  cs: {
@@ -53,6 +60,7 @@ export const i18n = {
53
60
  placeholder: "Začněte psát nebo stiskněte '/' pro příkazy...",
54
61
  slashMenuBasicGroupLabel: 'Základní',
55
62
  slashMenuListGroupLabel: 'Seznamy',
63
+ textStyle: 'Styl textu',
56
64
  toolbarItemsActive: '{{count}} aktivní'
57
65
  },
58
66
  da: {
@@ -60,6 +68,7 @@ export const i18n = {
60
68
  placeholder: "Begynd at skrive, eller tryk på '/' for kommandoer...",
61
69
  slashMenuBasicGroupLabel: 'Grundlæggende',
62
70
  slashMenuListGroupLabel: 'Lister',
71
+ textStyle: 'Tekststil',
63
72
  toolbarItemsActive: '{{count}} aktive'
64
73
  },
65
74
  de: {
@@ -67,6 +76,7 @@ export const i18n = {
67
76
  placeholder: "Beginne zu tippen oder drücke '/' für Befehle...",
68
77
  slashMenuBasicGroupLabel: 'Basis',
69
78
  slashMenuListGroupLabel: 'Listen',
79
+ textStyle: 'Textstil',
70
80
  toolbarItemsActive: '{{count}} aktiv'
71
81
  },
72
82
  en: {
@@ -74,6 +84,7 @@ export const i18n = {
74
84
  placeholder: "Start typing, or press '/' for commands...",
75
85
  slashMenuBasicGroupLabel: 'Basic',
76
86
  slashMenuListGroupLabel: 'Lists',
87
+ textStyle: 'Text style',
77
88
  toolbarItemsActive: '{{count}} active'
78
89
  },
79
90
  es: {
@@ -81,6 +92,7 @@ export const i18n = {
81
92
  placeholder: "Comience a escribir, o presione '/' para comandos...",
82
93
  slashMenuBasicGroupLabel: 'Básico',
83
94
  slashMenuListGroupLabel: 'Listas',
95
+ textStyle: 'Estilo de texto',
84
96
  toolbarItemsActive: '{{count}} activo'
85
97
  },
86
98
  et: {
@@ -88,6 +100,7 @@ export const i18n = {
88
100
  placeholder: "Alusta kirjutamist või vajuta '/' käskude jaoks...",
89
101
  slashMenuBasicGroupLabel: 'Põhiline',
90
102
  slashMenuListGroupLabel: 'Loendid',
103
+ textStyle: 'Tekstistiil',
91
104
  toolbarItemsActive: '{{count}} aktiivne'
92
105
  },
93
106
  fa: {
@@ -95,6 +108,7 @@ export const i18n = {
95
108
  placeholder: "شروع به تایپ کنید، یا برای دستورات '/' را فشار دهید ...",
96
109
  slashMenuBasicGroupLabel: 'پایه',
97
110
  slashMenuListGroupLabel: 'لیست ها',
111
+ textStyle: 'سبک متن',
98
112
  toolbarItemsActive: '{{count}} فعال'
99
113
  },
100
114
  fr: {
@@ -102,6 +116,7 @@ export const i18n = {
102
116
  placeholder: "Commencez à taper, ou appuyez sur '/' pour les commandes...",
103
117
  slashMenuBasicGroupLabel: 'De base',
104
118
  slashMenuListGroupLabel: 'Listes',
119
+ textStyle: 'Style de texte',
105
120
  toolbarItemsActive: '{{count}} actif'
106
121
  },
107
122
  he: {
@@ -109,6 +124,7 @@ export const i18n = {
109
124
  placeholder: "התחיל להקליד, או לחץ על '/' עבור פקודות ...",
110
125
  slashMenuBasicGroupLabel: 'בסיסי',
111
126
  slashMenuListGroupLabel: 'רשימות',
127
+ textStyle: 'סגנון טקסט',
112
128
  toolbarItemsActive: '{{count}} פעיל'
113
129
  },
114
130
  hr: {
@@ -116,6 +132,7 @@ export const i18n = {
116
132
  placeholder: "Počnite tipkati, ili pritisnite '/' za naredbe...",
117
133
  slashMenuBasicGroupLabel: 'Osnovno',
118
134
  slashMenuListGroupLabel: 'Popisi',
135
+ textStyle: 'Stil teksta',
119
136
  toolbarItemsActive: '{{count}} aktivno'
120
137
  },
121
138
  hu: {
@@ -123,6 +140,7 @@ export const i18n = {
123
140
  placeholder: "Kezdje el gépelni, vagy nyomja meg a '/' billentyűt a parancsokhoz...",
124
141
  slashMenuBasicGroupLabel: 'Alapvető',
125
142
  slashMenuListGroupLabel: 'Listák',
143
+ textStyle: 'Szövegstílus',
126
144
  toolbarItemsActive: '{{count}} aktív'
127
145
  },
128
146
  hy: {
@@ -130,6 +148,7 @@ export const i18n = {
130
148
  placeholder: "Սկսեք գրել կամ սեղմեք '/' հրամանների համար...",
131
149
  slashMenuBasicGroupLabel: 'Հիմնական',
132
150
  slashMenuListGroupLabel: 'Ցուցակներ',
151
+ textStyle: 'Տեքստի ոճ',
133
152
  toolbarItemsActive: '{{count}} ակտիվ'
134
153
  },
135
154
  is: {
@@ -137,6 +156,7 @@ export const i18n = {
137
156
  placeholder: "Byrjaðu að skrifa eða sláðu inn '/' fyrir skipanir...",
138
157
  slashMenuBasicGroupLabel: 'Grunnur',
139
158
  slashMenuListGroupLabel: 'Listar',
159
+ textStyle: 'Textastíll',
140
160
  toolbarItemsActive: '{{count}} virk'
141
161
  },
142
162
  it: {
@@ -144,6 +164,7 @@ export const i18n = {
144
164
  placeholder: "Inizia a digitare, oppure premi '/' per i comandi...",
145
165
  slashMenuBasicGroupLabel: 'Base',
146
166
  slashMenuListGroupLabel: 'Elenchi',
167
+ textStyle: 'Stile del testo',
147
168
  toolbarItemsActive: '{{count}} attivo'
148
169
  },
149
170
  ja: {
@@ -151,6 +172,7 @@ export const i18n = {
151
172
  placeholder: "入力を開始するか、コマンドのために'/'を押してください…",
152
173
  slashMenuBasicGroupLabel: '基本的な',
153
174
  slashMenuListGroupLabel: 'リスト',
175
+ textStyle: 'テキストスタイル',
154
176
  toolbarItemsActive: '{{count}} アクティブ'
155
177
  },
156
178
  ko: {
@@ -158,6 +180,7 @@ export const i18n = {
158
180
  placeholder: "타이핑을 시작하거나, 명령어를 입력하려면 '/'를 누르세요...",
159
181
  slashMenuBasicGroupLabel: '기본적인',
160
182
  slashMenuListGroupLabel: '목록',
183
+ textStyle: '텍스트 스타일',
161
184
  toolbarItemsActive: '{{count}} 활성화된'
162
185
  },
163
186
  lt: {
@@ -165,6 +188,7 @@ export const i18n = {
165
188
  placeholder: "Pradėkite rašyti arba paspauskite '/' komandoms...",
166
189
  slashMenuBasicGroupLabel: 'Pagrindinis',
167
190
  slashMenuListGroupLabel: 'Sąrašai',
191
+ textStyle: 'Teksto stilius',
168
192
  toolbarItemsActive: '{{count}} aktyvus'
169
193
  },
170
194
  lv: {
@@ -172,6 +196,7 @@ export const i18n = {
172
196
  placeholder: "Sāciet rakstīt vai nospiediet '/' komandu ievadīšanai...",
173
197
  slashMenuBasicGroupLabel: 'Pamata',
174
198
  slashMenuListGroupLabel: 'Saraksti',
199
+ textStyle: 'Teksta stils',
175
200
  toolbarItemsActive: '{{count}} aktīvs'
176
201
  },
177
202
  my: {
@@ -179,6 +204,7 @@ export const i18n = {
179
204
  placeholder: "Mula menaip, atau tekan '/' untuk arahan...",
180
205
  slashMenuBasicGroupLabel: 'အခြေခံ',
181
206
  slashMenuListGroupLabel: 'Senarai',
207
+ textStyle: 'စာသားပုံစံ',
182
208
  toolbarItemsActive: '{{count}} aktif'
183
209
  },
184
210
  nb: {
@@ -186,6 +212,7 @@ export const i18n = {
186
212
  placeholder: "Begynn å skrive, eller trykk '/' for kommandoer...",
187
213
  slashMenuBasicGroupLabel: 'Grunnleggende',
188
214
  slashMenuListGroupLabel: 'Lister',
215
+ textStyle: 'Tekststil',
189
216
  toolbarItemsActive: '{{count}} aktiv'
190
217
  },
191
218
  nl: {
@@ -193,6 +220,7 @@ export const i18n = {
193
220
  placeholder: "Begin met typen, of druk op '/' voor opdrachten...",
194
221
  slashMenuBasicGroupLabel: 'Basis',
195
222
  slashMenuListGroupLabel: 'Lijsten',
223
+ textStyle: 'Tekststijl',
196
224
  toolbarItemsActive: '{{count}} actief'
197
225
  },
198
226
  pl: {
@@ -200,6 +228,7 @@ export const i18n = {
200
228
  placeholder: "Rozpocznij pisanie lub naciśnij '/' dla poleceń...",
201
229
  slashMenuBasicGroupLabel: 'Podstawowy',
202
230
  slashMenuListGroupLabel: 'Listy',
231
+ textStyle: 'Styl tekstu',
203
232
  toolbarItemsActive: '{{count}} aktywny'
204
233
  },
205
234
  pt: {
@@ -207,6 +236,7 @@ export const i18n = {
207
236
  placeholder: "Comece a digitar, ou pressione '/' para comandos...",
208
237
  slashMenuBasicGroupLabel: 'Básico',
209
238
  slashMenuListGroupLabel: 'Listas',
239
+ textStyle: 'Estilo de texto',
210
240
  toolbarItemsActive: '{{count}} ativo'
211
241
  },
212
242
  ro: {
@@ -214,6 +244,7 @@ export const i18n = {
214
244
  placeholder: "Începeți să tastați sau apăsați '/' pentru comenzi...",
215
245
  slashMenuBasicGroupLabel: 'De bază',
216
246
  slashMenuListGroupLabel: 'Liste',
247
+ textStyle: 'Stil de text',
217
248
  toolbarItemsActive: '{{count}} activ'
218
249
  },
219
250
  rs: {
@@ -221,6 +252,7 @@ export const i18n = {
221
252
  placeholder: "Почните да куцате, или притисните '/' за команде...",
222
253
  slashMenuBasicGroupLabel: 'Основно',
223
254
  slashMenuListGroupLabel: 'Листе',
255
+ textStyle: 'Стил текста',
224
256
  toolbarItemsActive: '{{count}} активно'
225
257
  },
226
258
  'rs-latin': {
@@ -228,6 +260,7 @@ export const i18n = {
228
260
  placeholder: "Počnite da kucate, ili pritisnite '/' za komande...",
229
261
  slashMenuBasicGroupLabel: 'Osnovno',
230
262
  slashMenuListGroupLabel: 'Liste',
263
+ textStyle: 'Stil teksta',
231
264
  toolbarItemsActive: '{{count}} aktivan'
232
265
  },
233
266
  ru: {
@@ -235,6 +268,7 @@ export const i18n = {
235
268
  placeholder: "Начните печатать или нажмите '/' для команд...",
236
269
  slashMenuBasicGroupLabel: 'Базовый',
237
270
  slashMenuListGroupLabel: 'Списки',
271
+ textStyle: 'Стиль текста',
238
272
  toolbarItemsActive: '{{count}} активных'
239
273
  },
240
274
  sk: {
@@ -242,6 +276,7 @@ export const i18n = {
242
276
  placeholder: "Začnite písať alebo stlačte '/' pre príkazy...",
243
277
  slashMenuBasicGroupLabel: 'Základný',
244
278
  slashMenuListGroupLabel: 'Zoznamy',
279
+ textStyle: 'Štýl textu',
245
280
  toolbarItemsActive: '{{count}} aktívne'
246
281
  },
247
282
  sl: {
@@ -249,6 +284,7 @@ export const i18n = {
249
284
  placeholder: 'Začnite tipkati ali pritisnite "/" za ukaze...',
250
285
  slashMenuBasicGroupLabel: 'Osnovno',
251
286
  slashMenuListGroupLabel: 'Seznami',
287
+ textStyle: 'Slog besedila',
252
288
  toolbarItemsActive: '{{count}} aktivno'
253
289
  },
254
290
  sv: {
@@ -256,6 +292,7 @@ export const i18n = {
256
292
  placeholder: "Börja skriva, eller tryck på '/' för kommandon...",
257
293
  slashMenuBasicGroupLabel: 'Grundläggande',
258
294
  slashMenuListGroupLabel: 'Listor',
295
+ textStyle: 'Textstil',
259
296
  toolbarItemsActive: '{{count}} aktiv'
260
297
  },
261
298
  ta: {
@@ -263,6 +300,7 @@ export const i18n = {
263
300
  placeholder: "எழுதத் தொடங்கவும், அல்லது கட்டளைகளுக்கு '/' அழுத்தவும்...",
264
301
  slashMenuBasicGroupLabel: 'அடிப்படை',
265
302
  slashMenuListGroupLabel: 'பட்டியல்கள்',
303
+ textStyle: 'உரை நடை',
266
304
  toolbarItemsActive: '{{count}} செயலில் உள்ளது'
267
305
  },
268
306
  th: {
@@ -270,6 +308,7 @@ export const i18n = {
270
308
  placeholder: "เริ่มพิมพ์หรือกด '/' สำหรับคำสั่ง...",
271
309
  slashMenuBasicGroupLabel: 'พื้นฐาน',
272
310
  slashMenuListGroupLabel: 'รายการ',
311
+ textStyle: 'รูปแบบข้อความ',
273
312
  toolbarItemsActive: '{{count}} ที่ใช้งานอยู่'
274
313
  },
275
314
  tr: {
@@ -277,6 +316,7 @@ export const i18n = {
277
316
  placeholder: "Yazmaya başlayın veya komutlar için '/' tuşuna basın...",
278
317
  slashMenuBasicGroupLabel: 'Temel',
279
318
  slashMenuListGroupLabel: 'Listeler',
319
+ textStyle: 'Metin stili',
280
320
  toolbarItemsActive: '{{count}} aktif'
281
321
  },
282
322
  uk: {
@@ -284,6 +324,7 @@ export const i18n = {
284
324
  placeholder: "Почніть друкувати, або натисніть '/' для команд...",
285
325
  slashMenuBasicGroupLabel: 'Базовий',
286
326
  slashMenuListGroupLabel: 'Списки',
327
+ textStyle: 'Стиль тексту',
287
328
  toolbarItemsActive: '{{count}} активний'
288
329
  },
289
330
  vi: {
@@ -291,6 +332,7 @@ export const i18n = {
291
332
  placeholder: "Bắt đầu gõ, hoặc nhấn '/' để gọi lệnh...",
292
333
  slashMenuBasicGroupLabel: 'Cơ bản',
293
334
  slashMenuListGroupLabel: 'Danh sách',
335
+ textStyle: 'Kiểu văn bản',
294
336
  toolbarItemsActive: '{{count}} đang hoạt động'
295
337
  },
296
338
  zh: {
@@ -298,6 +340,7 @@ export const i18n = {
298
340
  placeholder: "开始输入,或按'/'进行命令...",
299
341
  slashMenuBasicGroupLabel: '基础',
300
342
  slashMenuListGroupLabel: '列表',
343
+ textStyle: '文本样式',
301
344
  toolbarItemsActive: '{{count}} 活跃'
302
345
  },
303
346
  'zh-TW': {
@@ -305,6 +348,7 @@ export const i18n = {
305
348
  placeholder: "開始輸入,或按'/'以使用命令...",
306
349
  slashMenuBasicGroupLabel: '基本的',
307
350
  slashMenuListGroupLabel: '清單',
351
+ textStyle: '文字樣式',
308
352
  toolbarItemsActive: '{{count}} 活躍中'
309
353
  }
310
354
  };
package/dist/i18n.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","names":["i18n","id","insertParagraph","placeholder","slashMenuBasicGroupLabel","slashMenuListGroupLabel","toolbarItemsActive","ar","az","bg","ca","cs","da","de","en","es","et","fa","fr","he","hr","hu","hy","is","it","ja","ko","lt","lv","my","nb","nl","pl","pt","ro","rs","ru","sk","sl","sv","ta","th","tr","uk","vi","zh"],"sources":["../src/i18n.ts"],"sourcesContent":["import type { GenericLanguages } from '@payloadcms/translations'\n\nexport const i18n: Partial<GenericLanguages> = {\n id: {\n insertParagraph: 'Sisipkan Paragraf',\n placeholder: \"Mulai mengetik, atau tekan '/' untuk perintah...\",\n slashMenuBasicGroupLabel: 'Dasar',\n slashMenuListGroupLabel: 'Daftar',\n toolbarItemsActive: '{{count}} aktif',\n },\n ar: {\n insertParagraph: 'إدراج فقرة',\n placeholder: \"ابدأ بالكتابة، أو اضغط على '/' للأوامر ...\",\n slashMenuBasicGroupLabel: 'أساسي',\n slashMenuListGroupLabel: 'قوائم',\n toolbarItemsActive: '{{count}} نشط',\n },\n az: {\n insertParagraph: 'Paraqraf əlavə edin',\n placeholder: \"Yazmağa başlayın və ya əmrlər üçün '/' düyməsini basın...\",\n slashMenuBasicGroupLabel: 'Əsas',\n slashMenuListGroupLabel: 'Siyahılar',\n toolbarItemsActive: '{{count}} aktiv',\n },\n bg: {\n insertParagraph: 'Вмъкнете параграф',\n placeholder: \"Започнете да пишете или натиснете '/' за команди...\",\n slashMenuBasicGroupLabel: 'Основен',\n slashMenuListGroupLabel: 'Списъци',\n toolbarItemsActive: '{{count}} активни',\n },\n 'bn-BD': {\n insertParagraph: 'অনুচ্ছেদ সংযুক্ত করুন',\n placeholder: \"টাইপ করা শুরু করুন, অথবা কমান্ডের জন্য '/' চাপুন...\",\n slashMenuBasicGroupLabel: 'মৌলিক',\n slashMenuListGroupLabel: 'তালিকা সমূহ',\n toolbarItemsActive: '{{count}} সক্রিয়',\n },\n 'bn-IN': {\n insertParagraph: 'অনুচ্ছেদ সন্নিবেশ করুন',\n placeholder: 'টাইপ করতে শুরু করুন, অথবা কমান্ডের জন্য ‘/’ চাপুন...',\n slashMenuBasicGroupLabel: 'মৌলিক',\n slashMenuListGroupLabel: 'তালিকাসমূহ',\n toolbarItemsActive: '{{count}} সক্রিয়',\n },\n ca: {\n insertParagraph: 'Insereix paràgraf',\n placeholder: \"Comença a escriure o prem '/' per a comandes...\",\n slashMenuBasicGroupLabel: 'Bàsic',\n slashMenuListGroupLabel: 'Llistes',\n toolbarItemsActive: '{{count}} actiu',\n },\n cs: {\n insertParagraph: 'Vložit odstavec',\n placeholder: \"Začněte psát nebo stiskněte '/' pro příkazy...\",\n slashMenuBasicGroupLabel: 'Základní',\n slashMenuListGroupLabel: 'Seznamy',\n toolbarItemsActive: '{{count}} aktivní',\n },\n da: {\n insertParagraph: 'Indsæt afsnit',\n placeholder: \"Begynd at skrive, eller tryk på '/' for kommandoer...\",\n slashMenuBasicGroupLabel: 'Grundlæggende',\n slashMenuListGroupLabel: 'Lister',\n toolbarItemsActive: '{{count}} aktive',\n },\n de: {\n insertParagraph: 'Absatz einfügen',\n placeholder: \"Beginne zu tippen oder drücke '/' für Befehle...\",\n slashMenuBasicGroupLabel: 'Basis',\n slashMenuListGroupLabel: 'Listen',\n toolbarItemsActive: '{{count}} aktiv',\n },\n en: {\n insertParagraph: 'Insert Paragraph',\n placeholder: \"Start typing, or press '/' for commands...\",\n slashMenuBasicGroupLabel: 'Basic',\n slashMenuListGroupLabel: 'Lists',\n toolbarItemsActive: '{{count}} active',\n },\n es: {\n insertParagraph: 'Insertar párrafo',\n placeholder: \"Comience a escribir, o presione '/' para comandos...\",\n slashMenuBasicGroupLabel: 'Básico',\n slashMenuListGroupLabel: 'Listas',\n toolbarItemsActive: '{{count}} activo',\n },\n et: {\n insertParagraph: 'Lisa lõik',\n placeholder: \"Alusta kirjutamist või vajuta '/' käskude jaoks...\",\n slashMenuBasicGroupLabel: 'Põhiline',\n slashMenuListGroupLabel: 'Loendid',\n toolbarItemsActive: '{{count}} aktiivne',\n },\n fa: {\n insertParagraph: 'درج پاراگراف',\n placeholder: \"شروع به تایپ کنید، یا برای دستورات '/' را فشار دهید ...\",\n slashMenuBasicGroupLabel: 'پایه',\n slashMenuListGroupLabel: 'لیست ها',\n toolbarItemsActive: '{{count}} فعال',\n },\n fr: {\n insertParagraph: 'Insérer un paragraphe',\n placeholder: \"Commencez à taper, ou appuyez sur '/' pour les commandes...\",\n slashMenuBasicGroupLabel: 'De base',\n slashMenuListGroupLabel: 'Listes',\n toolbarItemsActive: '{{count}} actif',\n },\n he: {\n insertParagraph: 'הוסף פסקה',\n placeholder: \"התחיל להקליד, או לחץ על '/' עבור פקודות ...\",\n slashMenuBasicGroupLabel: 'בסיסי',\n slashMenuListGroupLabel: 'רשימות',\n toolbarItemsActive: '{{count}} פעיל',\n },\n hr: {\n insertParagraph: 'Umetni odlomak',\n placeholder: \"Počnite tipkati, ili pritisnite '/' za naredbe...\",\n slashMenuBasicGroupLabel: 'Osnovno',\n slashMenuListGroupLabel: 'Popisi',\n toolbarItemsActive: '{{count}} aktivno',\n },\n hu: {\n insertParagraph: 'Bekezdés beszúrása',\n placeholder: \"Kezdje el gépelni, vagy nyomja meg a '/' billentyűt a parancsokhoz...\",\n slashMenuBasicGroupLabel: 'Alapvető',\n slashMenuListGroupLabel: 'Listák',\n toolbarItemsActive: '{{count}} aktív',\n },\n hy: {\n insertParagraph: 'Ավելացնել հատված',\n placeholder: \"Սկսեք գրել կամ սեղմեք '/' հրամանների համար...\",\n slashMenuBasicGroupLabel: 'Հիմնական',\n slashMenuListGroupLabel: 'Ցուցակներ',\n toolbarItemsActive: '{{count}} ակտիվ',\n },\n is: {\n insertParagraph: 'Bæta við efnisgrein',\n placeholder: \"Byrjaðu að skrifa eða sláðu inn '/' fyrir skipanir...\",\n slashMenuBasicGroupLabel: 'Grunnur',\n slashMenuListGroupLabel: 'Listar',\n toolbarItemsActive: '{{count}} virk',\n },\n it: {\n insertParagraph: 'Inserisci paragrafo',\n placeholder: \"Inizia a digitare, oppure premi '/' per i comandi...\",\n slashMenuBasicGroupLabel: 'Base',\n slashMenuListGroupLabel: 'Elenchi',\n toolbarItemsActive: '{{count}} attivo',\n },\n ja: {\n insertParagraph: '段落を挿入',\n placeholder: \"入力を開始するか、コマンドのために'/'を押してください…\",\n slashMenuBasicGroupLabel: '基本的な',\n slashMenuListGroupLabel: 'リスト',\n toolbarItemsActive: '{{count}} アクティブ',\n },\n ko: {\n insertParagraph: '단락 삽입',\n placeholder: \"타이핑을 시작하거나, 명령어를 입력하려면 '/'를 누르세요...\",\n slashMenuBasicGroupLabel: '기본적인',\n slashMenuListGroupLabel: '목록',\n toolbarItemsActive: '{{count}} 활성화된',\n },\n lt: {\n insertParagraph: 'Įterpti pastraipą',\n placeholder: \"Pradėkite rašyti arba paspauskite '/' komandoms...\",\n slashMenuBasicGroupLabel: 'Pagrindinis',\n slashMenuListGroupLabel: 'Sąrašai',\n toolbarItemsActive: '{{count}} aktyvus',\n },\n lv: {\n insertParagraph: 'Ievietot rindkopu',\n placeholder: \"Sāciet rakstīt vai nospiediet '/' komandu ievadīšanai...\",\n slashMenuBasicGroupLabel: 'Pamata',\n slashMenuListGroupLabel: 'Saraksti',\n toolbarItemsActive: '{{count}} aktīvs',\n },\n my: {\n insertParagraph: 'စာပိုဒ် ထည့်သွင်းပါ',\n placeholder: \"Mula menaip, atau tekan '/' untuk arahan...\",\n slashMenuBasicGroupLabel: 'အခြေခံ',\n slashMenuListGroupLabel: 'Senarai',\n toolbarItemsActive: '{{count}} aktif',\n },\n nb: {\n insertParagraph: 'Sett inn avsnitt',\n placeholder: \"Begynn å skrive, eller trykk '/' for kommandoer...\",\n slashMenuBasicGroupLabel: 'Grunnleggende',\n slashMenuListGroupLabel: 'Lister',\n toolbarItemsActive: '{{count}} aktiv',\n },\n nl: {\n insertParagraph: 'Paragraaf invoegen',\n placeholder: \"Begin met typen, of druk op '/' voor opdrachten...\",\n slashMenuBasicGroupLabel: 'Basis',\n slashMenuListGroupLabel: 'Lijsten',\n toolbarItemsActive: '{{count}} actief',\n },\n pl: {\n insertParagraph: 'Wstaw akapit',\n placeholder: \"Rozpocznij pisanie lub naciśnij '/' dla poleceń...\",\n slashMenuBasicGroupLabel: 'Podstawowy',\n slashMenuListGroupLabel: 'Listy',\n toolbarItemsActive: '{{count}} aktywny',\n },\n pt: {\n insertParagraph: 'Inserir Parágrafo',\n placeholder: \"Comece a digitar, ou pressione '/' para comandos...\",\n slashMenuBasicGroupLabel: 'Básico',\n slashMenuListGroupLabel: 'Listas',\n toolbarItemsActive: '{{count}} ativo',\n },\n ro: {\n insertParagraph: 'Introduceți paragraf',\n placeholder: \"Începeți să tastați sau apăsați '/' pentru comenzi...\",\n slashMenuBasicGroupLabel: 'De bază',\n slashMenuListGroupLabel: 'Liste',\n toolbarItemsActive: '{{count}} activ',\n },\n rs: {\n insertParagraph: 'Ubaci pasus',\n placeholder: \"Почните да куцате, или притисните '/' за команде...\",\n slashMenuBasicGroupLabel: 'Основно',\n slashMenuListGroupLabel: 'Листе',\n toolbarItemsActive: '{{count}} активно',\n },\n 'rs-latin': {\n insertParagraph: 'Ubaci pasus',\n placeholder: \"Počnite da kucate, ili pritisnite '/' za komande...\",\n slashMenuBasicGroupLabel: 'Osnovno',\n slashMenuListGroupLabel: 'Liste',\n toolbarItemsActive: '{{count}} aktivan',\n },\n ru: {\n insertParagraph: 'Вставить абзац',\n placeholder: \"Начните печатать или нажмите '/' для команд...\",\n slashMenuBasicGroupLabel: 'Базовый',\n slashMenuListGroupLabel: 'Списки',\n toolbarItemsActive: '{{count}} активных',\n },\n sk: {\n insertParagraph: 'Vložiť odsek',\n placeholder: \"Začnite písať alebo stlačte '/' pre príkazy...\",\n slashMenuBasicGroupLabel: 'Základný',\n slashMenuListGroupLabel: 'Zoznamy',\n toolbarItemsActive: '{{count}} aktívne',\n },\n sl: {\n insertParagraph: 'Vstavi odstavek',\n placeholder: 'Začnite tipkati ali pritisnite \"/\" za ukaze...',\n slashMenuBasicGroupLabel: 'Osnovno',\n slashMenuListGroupLabel: 'Seznami',\n toolbarItemsActive: '{{count}} aktivno',\n },\n sv: {\n insertParagraph: 'Infoga stycke',\n placeholder: \"Börja skriva, eller tryck på '/' för kommandon...\",\n slashMenuBasicGroupLabel: 'Grundläggande',\n slashMenuListGroupLabel: 'Listor',\n toolbarItemsActive: '{{count}} aktiv',\n },\n ta: {\n insertParagraph: 'பத்தியை சேர்க்கவும்',\n placeholder: \"எழுதத் தொடங்கவும், அல்லது கட்டளைகளுக்கு '/' அழுத்தவும்...\",\n slashMenuBasicGroupLabel: 'அடிப்படை',\n slashMenuListGroupLabel: 'பட்டியல்கள்',\n toolbarItemsActive: '{{count}} செயலில் உள்ளது',\n },\n th: {\n insertParagraph: 'แทรกย่อหน้า',\n placeholder: \"เริ่มพิมพ์หรือกด '/' สำหรับคำสั่ง...\",\n slashMenuBasicGroupLabel: 'พื้นฐาน',\n slashMenuListGroupLabel: 'รายการ',\n toolbarItemsActive: '{{count}} ที่ใช้งานอยู่',\n },\n tr: {\n insertParagraph: 'Paragraf Ekle',\n placeholder: \"Yazmaya başlayın veya komutlar için '/' tuşuna basın...\",\n slashMenuBasicGroupLabel: 'Temel',\n slashMenuListGroupLabel: 'Listeler',\n toolbarItemsActive: '{{count}} aktif',\n },\n uk: {\n insertParagraph: 'Вставити абзац',\n placeholder: \"Почніть друкувати, або натисніть '/' для команд...\",\n slashMenuBasicGroupLabel: 'Базовий',\n slashMenuListGroupLabel: 'Списки',\n toolbarItemsActive: '{{count}} активний',\n },\n vi: {\n insertParagraph: 'Chèn đoạn văn',\n placeholder: \"Bắt đầu gõ, hoặc nhấn '/' để gọi lệnh...\",\n slashMenuBasicGroupLabel: 'Cơ bản',\n slashMenuListGroupLabel: 'Danh sách',\n toolbarItemsActive: '{{count}} đang hoạt động',\n },\n zh: {\n insertParagraph: '插入段落',\n placeholder: \"开始输入,或按'/'进行命令...\",\n slashMenuBasicGroupLabel: '基础',\n slashMenuListGroupLabel: '列表',\n toolbarItemsActive: '{{count}} 活跃',\n },\n 'zh-TW': {\n insertParagraph: '插入段落',\n placeholder: \"開始輸入,或按'/'以使用命令...\",\n slashMenuBasicGroupLabel: '基本的',\n slashMenuListGroupLabel: '清單',\n toolbarItemsActive: '{{count}} 活躍中',\n },\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"i18n.js","names":["i18n","id","insertParagraph","placeholder","slashMenuBasicGroupLabel","slashMenuListGroupLabel","textStyle","toolbarItemsActive","ar","az","bg","ca","cs","da","de","en","es","et","fa","fr","he","hr","hu","hy","is","it","ja","ko","lt","lv","my","nb","nl","pl","pt","ro","rs","ru","sk","sl","sv","ta","th","tr","uk","vi","zh"],"sources":["../src/i18n.ts"],"sourcesContent":["import type { GenericLanguages } from '@payloadcms/translations'\n\nexport const i18n: Partial<GenericLanguages> = {\n id: {\n insertParagraph: 'Sisipkan Paragraf',\n placeholder: \"Mulai mengetik, atau tekan '/' untuk perintah...\",\n slashMenuBasicGroupLabel: 'Dasar',\n slashMenuListGroupLabel: 'Daftar',\n textStyle: 'Gaya teks',\n toolbarItemsActive: '{{count}} aktif',\n },\n ar: {\n insertParagraph: 'إدراج فقرة',\n placeholder: \"ابدأ بالكتابة، أو اضغط على '/' للأوامر ...\",\n slashMenuBasicGroupLabel: 'أساسي',\n slashMenuListGroupLabel: 'قوائم',\n textStyle: 'نمط النص',\n toolbarItemsActive: '{{count}} نشط',\n },\n az: {\n insertParagraph: 'Paraqraf əlavə edin',\n placeholder: \"Yazmağa başlayın və ya əmrlər üçün '/' düyməsini basın...\",\n slashMenuBasicGroupLabel: 'Əsas',\n slashMenuListGroupLabel: 'Siyahılar',\n textStyle: 'Mətn üslubu',\n toolbarItemsActive: '{{count}} aktiv',\n },\n bg: {\n insertParagraph: 'Вмъкнете параграф',\n placeholder: \"Започнете да пишете или натиснете '/' за команди...\",\n slashMenuBasicGroupLabel: 'Основен',\n slashMenuListGroupLabel: 'Списъци',\n textStyle: 'Стил на текста',\n toolbarItemsActive: '{{count}} активни',\n },\n 'bn-BD': {\n insertParagraph: 'অনুচ্ছেদ সংযুক্ত করুন',\n placeholder: \"টাইপ করা শুরু করুন, অথবা কমান্ডের জন্য '/' চাপুন...\",\n slashMenuBasicGroupLabel: 'মৌলিক',\n slashMenuListGroupLabel: 'তালিকা সমূহ',\n textStyle: 'পাঠ্যের শৈলী',\n toolbarItemsActive: '{{count}} সক্রিয়',\n },\n 'bn-IN': {\n insertParagraph: 'অনুচ্ছেদ সন্নিবেশ করুন',\n placeholder: 'টাইপ করতে শুরু করুন, অথবা কমান্ডের জন্য ‘/’ চাপুন...',\n slashMenuBasicGroupLabel: 'মৌলিক',\n slashMenuListGroupLabel: 'তালিকাসমূহ',\n textStyle: 'পাঠ্যের শৈলী',\n toolbarItemsActive: '{{count}} সক্রিয়',\n },\n ca: {\n insertParagraph: 'Insereix paràgraf',\n placeholder: \"Comença a escriure o prem '/' per a comandes...\",\n slashMenuBasicGroupLabel: 'Bàsic',\n slashMenuListGroupLabel: 'Llistes',\n textStyle: 'Estil de text',\n toolbarItemsActive: '{{count}} actiu',\n },\n cs: {\n insertParagraph: 'Vložit odstavec',\n placeholder: \"Začněte psát nebo stiskněte '/' pro příkazy...\",\n slashMenuBasicGroupLabel: 'Základní',\n slashMenuListGroupLabel: 'Seznamy',\n textStyle: 'Styl textu',\n toolbarItemsActive: '{{count}} aktivní',\n },\n da: {\n insertParagraph: 'Indsæt afsnit',\n placeholder: \"Begynd at skrive, eller tryk på '/' for kommandoer...\",\n slashMenuBasicGroupLabel: 'Grundlæggende',\n slashMenuListGroupLabel: 'Lister',\n textStyle: 'Tekststil',\n toolbarItemsActive: '{{count}} aktive',\n },\n de: {\n insertParagraph: 'Absatz einfügen',\n placeholder: \"Beginne zu tippen oder drücke '/' für Befehle...\",\n slashMenuBasicGroupLabel: 'Basis',\n slashMenuListGroupLabel: 'Listen',\n textStyle: 'Textstil',\n toolbarItemsActive: '{{count}} aktiv',\n },\n en: {\n insertParagraph: 'Insert Paragraph',\n placeholder: \"Start typing, or press '/' for commands...\",\n slashMenuBasicGroupLabel: 'Basic',\n slashMenuListGroupLabel: 'Lists',\n textStyle: 'Text style',\n toolbarItemsActive: '{{count}} active',\n },\n es: {\n insertParagraph: 'Insertar párrafo',\n placeholder: \"Comience a escribir, o presione '/' para comandos...\",\n slashMenuBasicGroupLabel: 'Básico',\n slashMenuListGroupLabel: 'Listas',\n textStyle: 'Estilo de texto',\n toolbarItemsActive: '{{count}} activo',\n },\n et: {\n insertParagraph: 'Lisa lõik',\n placeholder: \"Alusta kirjutamist või vajuta '/' käskude jaoks...\",\n slashMenuBasicGroupLabel: 'Põhiline',\n slashMenuListGroupLabel: 'Loendid',\n textStyle: 'Tekstistiil',\n toolbarItemsActive: '{{count}} aktiivne',\n },\n fa: {\n insertParagraph: 'درج پاراگراف',\n placeholder: \"شروع به تایپ کنید، یا برای دستورات '/' را فشار دهید ...\",\n slashMenuBasicGroupLabel: 'پایه',\n slashMenuListGroupLabel: 'لیست ها',\n textStyle: 'سبک متن',\n toolbarItemsActive: '{{count}} فعال',\n },\n fr: {\n insertParagraph: 'Insérer un paragraphe',\n placeholder: \"Commencez à taper, ou appuyez sur '/' pour les commandes...\",\n slashMenuBasicGroupLabel: 'De base',\n slashMenuListGroupLabel: 'Listes',\n textStyle: 'Style de texte',\n toolbarItemsActive: '{{count}} actif',\n },\n he: {\n insertParagraph: 'הוסף פסקה',\n placeholder: \"התחיל להקליד, או לחץ על '/' עבור פקודות ...\",\n slashMenuBasicGroupLabel: 'בסיסי',\n slashMenuListGroupLabel: 'רשימות',\n textStyle: 'סגנון טקסט',\n toolbarItemsActive: '{{count}} פעיל',\n },\n hr: {\n insertParagraph: 'Umetni odlomak',\n placeholder: \"Počnite tipkati, ili pritisnite '/' za naredbe...\",\n slashMenuBasicGroupLabel: 'Osnovno',\n slashMenuListGroupLabel: 'Popisi',\n textStyle: 'Stil teksta',\n toolbarItemsActive: '{{count}} aktivno',\n },\n hu: {\n insertParagraph: 'Bekezdés beszúrása',\n placeholder: \"Kezdje el gépelni, vagy nyomja meg a '/' billentyűt a parancsokhoz...\",\n slashMenuBasicGroupLabel: 'Alapvető',\n slashMenuListGroupLabel: 'Listák',\n textStyle: 'Szövegstílus',\n toolbarItemsActive: '{{count}} aktív',\n },\n hy: {\n insertParagraph: 'Ավելացնել հատված',\n placeholder: \"Սկսեք գրել կամ սեղմեք '/' հրամանների համար...\",\n slashMenuBasicGroupLabel: 'Հիմնական',\n slashMenuListGroupLabel: 'Ցուցակներ',\n textStyle: 'Տեքստի ոճ',\n toolbarItemsActive: '{{count}} ակտիվ',\n },\n is: {\n insertParagraph: 'Bæta við efnisgrein',\n placeholder: \"Byrjaðu að skrifa eða sláðu inn '/' fyrir skipanir...\",\n slashMenuBasicGroupLabel: 'Grunnur',\n slashMenuListGroupLabel: 'Listar',\n textStyle: 'Textastíll',\n toolbarItemsActive: '{{count}} virk',\n },\n it: {\n insertParagraph: 'Inserisci paragrafo',\n placeholder: \"Inizia a digitare, oppure premi '/' per i comandi...\",\n slashMenuBasicGroupLabel: 'Base',\n slashMenuListGroupLabel: 'Elenchi',\n textStyle: 'Stile del testo',\n toolbarItemsActive: '{{count}} attivo',\n },\n ja: {\n insertParagraph: '段落を挿入',\n placeholder: \"入力を開始するか、コマンドのために'/'を押してください…\",\n slashMenuBasicGroupLabel: '基本的な',\n slashMenuListGroupLabel: 'リスト',\n textStyle: 'テキストスタイル',\n toolbarItemsActive: '{{count}} アクティブ',\n },\n ko: {\n insertParagraph: '단락 삽입',\n placeholder: \"타이핑을 시작하거나, 명령어를 입력하려면 '/'를 누르세요...\",\n slashMenuBasicGroupLabel: '기본적인',\n slashMenuListGroupLabel: '목록',\n textStyle: '텍스트 스타일',\n toolbarItemsActive: '{{count}} 활성화된',\n },\n lt: {\n insertParagraph: 'Įterpti pastraipą',\n placeholder: \"Pradėkite rašyti arba paspauskite '/' komandoms...\",\n slashMenuBasicGroupLabel: 'Pagrindinis',\n slashMenuListGroupLabel: 'Sąrašai',\n textStyle: 'Teksto stilius',\n toolbarItemsActive: '{{count}} aktyvus',\n },\n lv: {\n insertParagraph: 'Ievietot rindkopu',\n placeholder: \"Sāciet rakstīt vai nospiediet '/' komandu ievadīšanai...\",\n slashMenuBasicGroupLabel: 'Pamata',\n slashMenuListGroupLabel: 'Saraksti',\n textStyle: 'Teksta stils',\n toolbarItemsActive: '{{count}} aktīvs',\n },\n my: {\n insertParagraph: 'စာပိုဒ် ထည့်သွင်းပါ',\n placeholder: \"Mula menaip, atau tekan '/' untuk arahan...\",\n slashMenuBasicGroupLabel: 'အခြေခံ',\n slashMenuListGroupLabel: 'Senarai',\n textStyle: 'စာသားပုံစံ',\n toolbarItemsActive: '{{count}} aktif',\n },\n nb: {\n insertParagraph: 'Sett inn avsnitt',\n placeholder: \"Begynn å skrive, eller trykk '/' for kommandoer...\",\n slashMenuBasicGroupLabel: 'Grunnleggende',\n slashMenuListGroupLabel: 'Lister',\n textStyle: 'Tekststil',\n toolbarItemsActive: '{{count}} aktiv',\n },\n nl: {\n insertParagraph: 'Paragraaf invoegen',\n placeholder: \"Begin met typen, of druk op '/' voor opdrachten...\",\n slashMenuBasicGroupLabel: 'Basis',\n slashMenuListGroupLabel: 'Lijsten',\n textStyle: 'Tekststijl',\n toolbarItemsActive: '{{count}} actief',\n },\n pl: {\n insertParagraph: 'Wstaw akapit',\n placeholder: \"Rozpocznij pisanie lub naciśnij '/' dla poleceń...\",\n slashMenuBasicGroupLabel: 'Podstawowy',\n slashMenuListGroupLabel: 'Listy',\n textStyle: 'Styl tekstu',\n toolbarItemsActive: '{{count}} aktywny',\n },\n pt: {\n insertParagraph: 'Inserir Parágrafo',\n placeholder: \"Comece a digitar, ou pressione '/' para comandos...\",\n slashMenuBasicGroupLabel: 'Básico',\n slashMenuListGroupLabel: 'Listas',\n textStyle: 'Estilo de texto',\n toolbarItemsActive: '{{count}} ativo',\n },\n ro: {\n insertParagraph: 'Introduceți paragraf',\n placeholder: \"Începeți să tastați sau apăsați '/' pentru comenzi...\",\n slashMenuBasicGroupLabel: 'De bază',\n slashMenuListGroupLabel: 'Liste',\n textStyle: 'Stil de text',\n toolbarItemsActive: '{{count}} activ',\n },\n rs: {\n insertParagraph: 'Ubaci pasus',\n placeholder: \"Почните да куцате, или притисните '/' за команде...\",\n slashMenuBasicGroupLabel: 'Основно',\n slashMenuListGroupLabel: 'Листе',\n textStyle: 'Стил текста',\n toolbarItemsActive: '{{count}} активно',\n },\n 'rs-latin': {\n insertParagraph: 'Ubaci pasus',\n placeholder: \"Počnite da kucate, ili pritisnite '/' za komande...\",\n slashMenuBasicGroupLabel: 'Osnovno',\n slashMenuListGroupLabel: 'Liste',\n textStyle: 'Stil teksta',\n toolbarItemsActive: '{{count}} aktivan',\n },\n ru: {\n insertParagraph: 'Вставить абзац',\n placeholder: \"Начните печатать или нажмите '/' для команд...\",\n slashMenuBasicGroupLabel: 'Базовый',\n slashMenuListGroupLabel: 'Списки',\n textStyle: 'Стиль текста',\n toolbarItemsActive: '{{count}} активных',\n },\n sk: {\n insertParagraph: 'Vložiť odsek',\n placeholder: \"Začnite písať alebo stlačte '/' pre príkazy...\",\n slashMenuBasicGroupLabel: 'Základný',\n slashMenuListGroupLabel: 'Zoznamy',\n textStyle: 'Štýl textu',\n toolbarItemsActive: '{{count}} aktívne',\n },\n sl: {\n insertParagraph: 'Vstavi odstavek',\n placeholder: 'Začnite tipkati ali pritisnite \"/\" za ukaze...',\n slashMenuBasicGroupLabel: 'Osnovno',\n slashMenuListGroupLabel: 'Seznami',\n textStyle: 'Slog besedila',\n toolbarItemsActive: '{{count}} aktivno',\n },\n sv: {\n insertParagraph: 'Infoga stycke',\n placeholder: \"Börja skriva, eller tryck på '/' för kommandon...\",\n slashMenuBasicGroupLabel: 'Grundläggande',\n slashMenuListGroupLabel: 'Listor',\n textStyle: 'Textstil',\n toolbarItemsActive: '{{count}} aktiv',\n },\n ta: {\n insertParagraph: 'பத்தியை சேர்க்கவும்',\n placeholder: \"எழுதத் தொடங்கவும், அல்லது கட்டளைகளுக்கு '/' அழுத்தவும்...\",\n slashMenuBasicGroupLabel: 'அடிப்படை',\n slashMenuListGroupLabel: 'பட்டியல்கள்',\n textStyle: 'உரை நடை',\n toolbarItemsActive: '{{count}} செயலில் உள்ளது',\n },\n th: {\n insertParagraph: 'แทรกย่อหน้า',\n placeholder: \"เริ่มพิมพ์หรือกด '/' สำหรับคำสั่ง...\",\n slashMenuBasicGroupLabel: 'พื้นฐาน',\n slashMenuListGroupLabel: 'รายการ',\n textStyle: 'รูปแบบข้อความ',\n toolbarItemsActive: '{{count}} ที่ใช้งานอยู่',\n },\n tr: {\n insertParagraph: 'Paragraf Ekle',\n placeholder: \"Yazmaya başlayın veya komutlar için '/' tuşuna basın...\",\n slashMenuBasicGroupLabel: 'Temel',\n slashMenuListGroupLabel: 'Listeler',\n textStyle: 'Metin stili',\n toolbarItemsActive: '{{count}} aktif',\n },\n uk: {\n insertParagraph: 'Вставити абзац',\n placeholder: \"Почніть друкувати, або натисніть '/' для команд...\",\n slashMenuBasicGroupLabel: 'Базовий',\n slashMenuListGroupLabel: 'Списки',\n textStyle: 'Стиль тексту',\n toolbarItemsActive: '{{count}} активний',\n },\n vi: {\n insertParagraph: 'Chèn đoạn văn',\n placeholder: \"Bắt đầu gõ, hoặc nhấn '/' để gọi lệnh...\",\n slashMenuBasicGroupLabel: 'Cơ bản',\n slashMenuListGroupLabel: 'Danh sách',\n textStyle: 'Kiểu văn bản',\n toolbarItemsActive: '{{count}} đang hoạt động',\n },\n zh: {\n insertParagraph: '插入段落',\n placeholder: \"开始输入,或按'/'进行命令...\",\n slashMenuBasicGroupLabel: '基础',\n slashMenuListGroupLabel: '列表',\n textStyle: '文本样式',\n toolbarItemsActive: '{{count}} 活跃',\n },\n 'zh-TW': {\n insertParagraph: '插入段落',\n placeholder: \"開始輸入,或按'/'以使用命令...\",\n slashMenuBasicGroupLabel: '基本的',\n slashMenuListGroupLabel: '清單',\n textStyle: '文字樣式',\n toolbarItemsActive: '{{count}} 活躍中',\n },\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"LexicalEditor.js","names":["c","_c","useLexicalComposerContext","LexicalErrorBoundary","HistoryPlugin","OnChangePlugin","RichTextPlugin","useLexicalEditable","useTranslation","BLUR_COMMAND","COMMAND_PRIORITY_LOW","FOCUS_COMMAND","React","useEffect","useState","useEditorConfigContext","EditorPlugin","ClipboardPlugin","DecoratorPlugin","AddBlockHandlePlugin","DraggableBlockPlugin","InsertParagraphAtEndPlugin","MarkdownShortcutPlugin","NodeViewOverridePlugin","NormalizeSelectionPlugin","SelectAllPlugin","SlashMenuPlugin","TextPlugin","LexicalContentEditable","LexicalEditor","props","$","editorConfig","editorContainerRef","isSmallWidthViewport","onChange","rtl","editorConfigContext","editor","isEditable","t","instructionsID","useId","hasTabIndentation","features","enabledFeatures","includes","floatingAnchorElem","setFloatingAnchorElem","t0","Symbol","for","_floatingAnchorElem","onRef","t1","t2","uuid","console","error","parentEditor","registerChild","handleFocus","focusEditor","handleBlur","blurEditor","unregisterFocus","registerCommand","unregisterBlur","unregisterChild","_jsxs","Fragment","children","plugins","map","_temp","className","dir","undefined","ref","_temp2","_jsx","contentEditable","ignoreSelectionChange","editorState","editor_0","tags","has","size","admin","hideDraggableBlockElement","anchorElem","hideAddBlockButton","plugin_1","plugin","position","desktopOnly","clientProps","key","markdownTransformers","length","_temp3","_temp4","id","_temp5","plugin_0","plugin_2","plugin_3","plugin_4"],"sources":["../../src/lexical/LexicalEditor.tsx"],"sourcesContent":["'use client'\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { LexicalErrorBoundary } from '@lexical/react/LexicalErrorBoundary.js'\nimport { HistoryPlugin } from '@lexical/react/LexicalHistoryPlugin.js'\nimport { OnChangePlugin } from '@lexical/react/LexicalOnChangePlugin.js'\nimport { RichTextPlugin } from '@lexical/react/LexicalRichTextPlugin.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { useTranslation } from '@payloadcms/ui'\nimport { BLUR_COMMAND, COMMAND_PRIORITY_LOW, FOCUS_COMMAND } from 'lexical'\nimport * as React from 'react'\nimport { useEffect, useState } from 'react'\n\nimport type { LexicalProviderProps } from './LexicalProvider.js'\n\nimport { useEditorConfigContext } from './config/client/EditorConfigProvider.js'\nimport './LexicalEditor.css'\nimport { EditorPlugin } from './EditorPlugin.js'\nimport { ClipboardPlugin } from './plugins/ClipboardPlugin/index.js'\nimport { DecoratorPlugin } from './plugins/DecoratorPlugin/index.js'\nimport { AddBlockHandlePlugin } from './plugins/handles/AddBlockHandlePlugin/index.js'\nimport { DraggableBlockPlugin } from './plugins/handles/DraggableBlockPlugin/index.js'\nimport { InsertParagraphAtEndPlugin } from './plugins/InsertParagraphAtEnd/index.js'\nimport { MarkdownShortcutPlugin } from './plugins/MarkdownShortcut/index.js'\nimport { NodeViewOverridePlugin } from './plugins/NodeViewOverridePlugin/index.js'\nimport { NormalizeSelectionPlugin } from './plugins/NormalizeSelection/index.js'\nimport { SelectAllPlugin } from './plugins/SelectAllPlugin/index.js'\nimport { SlashMenuPlugin } from './plugins/SlashMenu/index.js'\nimport { TextPlugin } from './plugins/TextPlugin/index.js'\nimport { LexicalContentEditable } from './ui/ContentEditable.js'\n\nexport const LexicalEditor: React.FC<\n {\n editorContainerRef: React.RefObject<HTMLDivElement | null>\n isSmallWidthViewport: boolean\n } & Pick<LexicalProviderProps, 'editorConfig' | 'onChange' | 'rtl'>\n> = (props) => {\n const { editorConfig, editorContainerRef, isSmallWidthViewport, onChange, rtl } = props\n const editorConfigContext = useEditorConfigContext()\n const [editor] = useLexicalComposerContext()\n const isEditable = useLexicalEditable()\n const { t } = useTranslation<Record<string, never>, string>()\n const instructionsID = React.useId()\n const hasTabIndentation = isEditable && editorConfig.features.enabledFeatures.includes('indent')\n\n const [floatingAnchorElem, setFloatingAnchorElem] = useState<HTMLDivElement | null>(null)\n const onRef = (_floatingAnchorElem: HTMLDivElement) => {\n if (_floatingAnchorElem !== null) {\n setFloatingAnchorElem(_floatingAnchorElem)\n }\n }\n\n useEffect(() => {\n if (!editorConfigContext?.uuid) {\n console.error('Lexical Editor must be used within an EditorConfigProvider')\n return\n }\n if (editorConfigContext?.parentEditor?.uuid) {\n editorConfigContext.parentEditor?.registerChild(editorConfigContext.uuid, editorConfigContext)\n }\n\n const handleFocus = () => {\n editorConfigContext.focusEditor(editorConfigContext)\n }\n\n const handleBlur = () => {\n editorConfigContext.blurEditor(editorConfigContext)\n }\n\n const unregisterFocus = editor.registerCommand(\n FOCUS_COMMAND,\n () => {\n handleFocus()\n return true\n },\n COMMAND_PRIORITY_LOW,\n )\n\n const unregisterBlur = editor.registerCommand(\n BLUR_COMMAND,\n () => {\n handleBlur()\n return true\n },\n COMMAND_PRIORITY_LOW,\n )\n\n return () => {\n unregisterFocus()\n unregisterBlur()\n editorConfigContext.parentEditor?.unregisterChild?.(editorConfigContext.uuid)\n }\n }, [editor, editorConfigContext])\n\n return (\n <React.Fragment>\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'aboveContainer') {\n return <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n }\n })}\n <div className=\"editor-container\" dir={rtl ? 'rtl' : undefined} ref={editorContainerRef}>\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'top') {\n return (\n <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n )\n }\n })}\n <RichTextPlugin\n contentEditable={\n <div className=\"editor-scroller\">\n <div className=\"editor\" ref={onRef}>\n <LexicalContentEditable\n editorConfig={editorConfig}\n instructionsID={hasTabIndentation ? instructionsID : undefined}\n />\n </div>\n </div>\n }\n ErrorBoundary={LexicalErrorBoundary}\n />\n <NormalizeSelectionPlugin />\n {isEditable && <InsertParagraphAtEndPlugin />}\n <DecoratorPlugin />\n <ClipboardPlugin />\n <TextPlugin features={editorConfig.features} />\n <SelectAllPlugin />\n <NodeViewOverridePlugin />\n {isEditable && (\n <OnChangePlugin\n // Selection changes can be ignored here, reducing the\n // frequency that the FieldComponent and Payload receive updates.\n // Selection changes are only needed if you are saving selection state\n ignoreSelectionChange\n onChange={(editorState, editor, tags) => {\n // Ignore any onChange event triggered by focus only\n if (!tags.has('focus') || tags.size > 1) {\n if (onChange != null) {\n onChange(editorState, editor, tags)\n }\n }\n }}\n />\n )}\n {floatingAnchorElem && (\n <React.Fragment>\n {!isSmallWidthViewport && isEditable && (\n <React.Fragment>\n {editorConfig.admin?.hideDraggableBlockElement ? null : (\n <DraggableBlockPlugin anchorElem={floatingAnchorElem} />\n )}\n {editorConfig.admin?.hideAddBlockButton ? null : (\n <AddBlockHandlePlugin anchorElem={floatingAnchorElem} />\n )}\n </React.Fragment>\n )}\n {editorConfig.features.plugins?.map((plugin) => {\n if (\n plugin.position === 'floatingAnchorElem' &&\n !(plugin.desktopOnly === true && isSmallWidthViewport)\n ) {\n return (\n <EditorPlugin\n anchorElem={floatingAnchorElem}\n clientProps={plugin.clientProps}\n key={plugin.key}\n plugin={plugin}\n />\n )\n }\n })}\n {isEditable && (\n <React.Fragment>\n <SlashMenuPlugin anchorElem={floatingAnchorElem} />\n </React.Fragment>\n )}\n </React.Fragment>\n )}\n {isEditable && (\n <React.Fragment>\n <HistoryPlugin />\n {editorConfig?.features?.markdownTransformers?.length > 0 && <MarkdownShortcutPlugin />}\n </React.Fragment>\n )}\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'normal') {\n return (\n <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n )\n }\n })}\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'bottom') {\n return (\n <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n )\n }\n })}\n </div>\n {hasTabIndentation && (\n <p className=\"ContentEditable__keyboard-hint\" id={instructionsID}>\n {t('lexical:indent:keyboardHint')}\n </p>\n )}\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'belowContainer') {\n return <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n }\n })}\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"LexicalEditor.js","names":["c","_c","useLexicalComposerContext","LexicalErrorBoundary","HistoryPlugin","OnChangePlugin","RichTextPlugin","useLexicalEditable","useTranslation","BLUR_COMMAND","COMMAND_PRIORITY_LOW","FOCUS_COMMAND","React","useEffect","useState","useEditorConfigContext","EditorPlugin","ClipboardPlugin","DecoratorPlugin","AddBlockHandlePlugin","DraggableBlockPlugin","InsertParagraphAtEndPlugin","MarkdownShortcutPlugin","NodeViewOverridePlugin","NormalizeSelectionPlugin","SelectAllPlugin","SlashMenuPlugin","TextPlugin","LexicalContentEditable","LexicalEditor","props","$","editorConfig","editorContainerRef","isSmallWidthViewport","onChange","rtl","editorConfigContext","editor","isEditable","t","instructionsID","useId","hasTabIndentation","features","enabledFeatures","includes","floatingAnchorElem","setFloatingAnchorElem","t0","Symbol","for","_floatingAnchorElem","onRef","t1","t2","uuid","console","error","parentEditor","registerChild","handleFocus","focusEditor","handleBlur","blurEditor","unregisterFocus","registerCommand","unregisterBlur","unregisterChild","_jsxs","Fragment","children","plugins","map","_temp","className","dir","undefined","ref","_temp2","_jsx","contentEditable","ignoreSelectionChange","editorState","editor_0","tags","has","size","admin","hideDraggableBlockElement","anchorElem","hideAddBlockButton","plugin_1","plugin","position","desktopOnly","clientProps","key","markdownTransformers","length","_temp3","_temp4","id","_temp5","plugin_0","plugin_2","plugin_3","plugin_4"],"sources":["../../src/lexical/LexicalEditor.tsx"],"sourcesContent":["'use client'\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { LexicalErrorBoundary } from '@lexical/react/LexicalErrorBoundary.js'\nimport { HistoryPlugin } from '@lexical/react/LexicalHistoryPlugin.js'\nimport { OnChangePlugin } from '@lexical/react/LexicalOnChangePlugin.js'\nimport { RichTextPlugin } from '@lexical/react/LexicalRichTextPlugin.js'\nimport { useLexicalEditable } from '@lexical/react/useLexicalEditable'\nimport { useTranslation } from '@payloadcms/ui'\nimport { BLUR_COMMAND, COMMAND_PRIORITY_LOW, FOCUS_COMMAND } from 'lexical'\nimport * as React from 'react'\nimport { useEffect, useState } from 'react'\n\nimport type { LexicalProviderProps } from './LexicalProvider.js'\n\nimport { useEditorConfigContext } from './config/client/EditorConfigProvider.js'\nimport './LexicalEditor.css'\nimport { EditorPlugin } from './EditorPlugin.js'\nimport { ClipboardPlugin } from './plugins/ClipboardPlugin/index.js'\nimport { DecoratorPlugin } from './plugins/DecoratorPlugin/index.js'\nimport { AddBlockHandlePlugin } from './plugins/handles/AddBlockHandlePlugin/index.js'\nimport { DraggableBlockPlugin } from './plugins/handles/DraggableBlockPlugin/index.js'\nimport { InsertParagraphAtEndPlugin } from './plugins/InsertParagraphAtEnd/index.js'\nimport { MarkdownShortcutPlugin } from './plugins/MarkdownShortcut/index.js'\nimport { NodeViewOverridePlugin } from './plugins/NodeViewOverridePlugin/index.js'\nimport { NormalizeSelectionPlugin } from './plugins/NormalizeSelection/index.js'\nimport { SelectAllPlugin } from './plugins/SelectAllPlugin/index.js'\nimport { SlashMenuPlugin } from './plugins/SlashMenu/index.js'\nimport { TextPlugin } from './plugins/TextPlugin/index.js'\nimport { LexicalContentEditable } from './ui/ContentEditable.js'\n\nexport const LexicalEditor: React.FC<\n {\n editorContainerRef: React.RefObject<HTMLDivElement | null>\n isSmallWidthViewport: boolean\n } & Pick<LexicalProviderProps, 'editorConfig' | 'onChange' | 'rtl'>\n> = (props) => {\n const { editorConfig, editorContainerRef, isSmallWidthViewport, onChange, rtl } = props\n const editorConfigContext = useEditorConfigContext()\n const [editor] = useLexicalComposerContext()\n const isEditable = useLexicalEditable()\n const { t } = useTranslation<Record<string, never>, string>()\n const instructionsID = React.useId()\n const hasTabIndentation = isEditable && editorConfig.features.enabledFeatures.includes('indent')\n\n const [floatingAnchorElem, setFloatingAnchorElem] = useState<HTMLDivElement | null>(null)\n const onRef = (_floatingAnchorElem: HTMLDivElement) => {\n if (_floatingAnchorElem !== null) {\n setFloatingAnchorElem(_floatingAnchorElem)\n }\n }\n\n useEffect(() => {\n if (!editorConfigContext?.uuid) {\n console.error('Lexical Editor must be used within an EditorConfigProvider')\n return\n }\n if (editorConfigContext?.parentEditor?.uuid) {\n editorConfigContext.parentEditor?.registerChild(editorConfigContext.uuid, editorConfigContext)\n }\n\n const handleFocus = () => {\n editorConfigContext.focusEditor(editorConfigContext)\n }\n\n const handleBlur = () => {\n editorConfigContext.blurEditor(editorConfigContext)\n }\n\n const unregisterFocus = editor.registerCommand(\n FOCUS_COMMAND,\n () => {\n handleFocus()\n return true\n },\n COMMAND_PRIORITY_LOW,\n )\n\n const unregisterBlur = editor.registerCommand(\n BLUR_COMMAND,\n () => {\n handleBlur()\n return true\n },\n COMMAND_PRIORITY_LOW,\n )\n\n return () => {\n unregisterFocus()\n unregisterBlur()\n editorConfigContext.parentEditor?.unregisterChild?.(editorConfigContext.uuid)\n }\n }, [editor, editorConfigContext])\n\n return (\n <React.Fragment>\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'aboveContainer') {\n return <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n }\n })}\n <div className=\"editor-container\" dir={rtl ? 'rtl' : undefined} ref={editorContainerRef}>\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'top') {\n return (\n <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n )\n }\n })}\n <RichTextPlugin\n contentEditable={\n <div className=\"editor-scroller\">\n <div className=\"editor\" ref={onRef}>\n <LexicalContentEditable\n editorConfig={editorConfig}\n instructionsID={hasTabIndentation ? instructionsID : undefined}\n />\n </div>\n </div>\n }\n ErrorBoundary={LexicalErrorBoundary}\n />\n <NormalizeSelectionPlugin />\n {isEditable && <InsertParagraphAtEndPlugin />}\n <DecoratorPlugin />\n <ClipboardPlugin />\n <TextPlugin features={editorConfig.features} />\n <SelectAllPlugin />\n <NodeViewOverridePlugin />\n {isEditable && (\n <OnChangePlugin\n // Selection changes can be ignored here, reducing the\n // frequency that the FieldComponent and Payload receive updates.\n // Selection changes are only needed if you are saving selection state\n ignoreSelectionChange\n onChange={(editorState, editor, tags) => {\n // Ignore any onChange event triggered by focus only\n if (!tags.has('focus') || tags.size > 1) {\n if (onChange != null) {\n onChange(editorState, editor, tags)\n }\n }\n }}\n />\n )}\n {floatingAnchorElem && (\n <React.Fragment>\n {!isSmallWidthViewport && isEditable && (\n <React.Fragment>\n {editorConfig.admin?.hideDraggableBlockElement ? null : (\n <DraggableBlockPlugin anchorElem={floatingAnchorElem} />\n )}\n {editorConfig.admin?.hideAddBlockButton ? null : (\n <AddBlockHandlePlugin anchorElem={floatingAnchorElem} />\n )}\n </React.Fragment>\n )}\n {editorConfig.features.plugins?.map((plugin) => {\n if (\n plugin.position === 'floatingAnchorElem' &&\n !(plugin.desktopOnly === true && isSmallWidthViewport)\n ) {\n return (\n <EditorPlugin\n anchorElem={floatingAnchorElem}\n clientProps={plugin.clientProps}\n key={plugin.key}\n plugin={plugin}\n />\n )\n }\n })}\n {isEditable && (\n <React.Fragment>\n <SlashMenuPlugin anchorElem={floatingAnchorElem} />\n </React.Fragment>\n )}\n </React.Fragment>\n )}\n {isEditable && (\n <React.Fragment>\n <HistoryPlugin />\n {editorConfig?.features?.markdownTransformers?.length > 0 && <MarkdownShortcutPlugin />}\n </React.Fragment>\n )}\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'normal') {\n return (\n <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n )\n }\n })}\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'bottom') {\n return (\n <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n )\n }\n })}\n </div>\n {hasTabIndentation && (\n <p className=\"ContentEditable__keyboard-hint\" id={instructionsID}>\n {t('lexical:indent:keyboardHint')}\n </p>\n )}\n {editorConfig.features.plugins?.map((plugin) => {\n if (plugin.position === 'belowContainer') {\n return <EditorPlugin clientProps={plugin.clientProps} key={plugin.key} plugin={plugin} />\n }\n })}\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","copyToClipboard","useLexicalComposerContext","objectKlassEquals","ObjectID","$getSelection","$isNodeSelection","COMMAND_PRIORITY_LOW","COPY_COMMAND","useEffect","changeIds","node","fields","id","default","toHexString","children","child","ClipboardPlugin","$","editor","t0","t1","registerCommand","event","selection","getNodes","serializedNode","exportJSON","deepCloneSerializedNode","JSON","parse","stringify","lexicalClipboardData","namespace","_config","nodes","stringifiedLexicalClipboardData","catch","_temp","ClipboardEvent","then","clipboardData","Error","lexicalStringified","getData","lexical","node_0","stringified","setData","error_0","error"],"sources":["../../../../src/lexical/plugins/ClipboardPlugin/index.tsx"],"sourcesContent":["'use client'\n\nimport { copyToClipboard } from '@lexical/clipboard'\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { objectKlassEquals } from '@lexical/utils'\nimport ObjectID from 'bson-objectid'\nimport { $getSelection, $isNodeSelection, COMMAND_PRIORITY_LOW, COPY_COMMAND } from 'lexical'\nimport { useEffect } from 'react'\n\ntype SerializedUnknownLexicalNode = {\n children?: SerializedUnknownLexicalNode[]\n type: string\n}\n\ntype LexicalClipboardData = {\n namespace: string\n nodes: SerializedUnknownLexicalNode[]\n}\n\nconst changeIds = (node: SerializedUnknownLexicalNode) => {\n if (\n 'fields' in node &&\n typeof node.fields === 'object' &&\n node.fields !== null &&\n 'id' in node.fields\n ) {\n node.fields.id = new ObjectID.default().toHexString()\n } else if ('id' in node) {\n node.id = new ObjectID.default().toHexString()\n }\n\n if (node.children) {\n for (const child of node.children) {\n changeIds(child)\n }\n }\n}\n\nexport function ClipboardPlugin() {\n const [editor] = useLexicalComposerContext()\n\n useEffect(() => {\n // Remove duplicated ids from clipboard. We do it here because:\n // 1. Browsers do not allow setting the clipboardData in paste event for security reasons.\n // 2. If you cut instead of paste, the id will be kept, which is a good thing.\n return editor.registerCommand(\n COPY_COMMAND,\n (event) => {\n // Handle decorator node case\n const selection = $getSelection()\n if ($isNodeSelection(selection)) {\n const node = selection.getNodes()[0]\n\n const serializedNode = node?.exportJSON() as SerializedUnknownLexicalNode\n const deepCloneSerializedNode = JSON.parse(JSON.stringify(serializedNode))\n changeIds(deepCloneSerializedNode)\n\n const lexicalClipboardData: LexicalClipboardData = {\n namespace: editor._config.namespace,\n nodes: [deepCloneSerializedNode],\n }\n\n const stringifiedLexicalClipboardData = JSON.stringify(lexicalClipboardData)\n\n copyToClipboard(editor, null, {\n 'application/x-lexical-editor': stringifiedLexicalClipboardData,\n 'text/plain': '',\n }).catch((error) => {\n throw error\n })\n return true\n }\n\n // Handle range selection case\n copyToClipboard(editor, objectKlassEquals(event, ClipboardEvent) ? event : null)\n .then(() => {\n if (!(event instanceof ClipboardEvent) || !event.clipboardData) {\n throw new Error('No clipboard event')\n }\n const lexicalStringified = event.clipboardData.getData('application/x-lexical-editor')\n if (!lexicalStringified) {\n return true\n }\n\n const lexical = JSON.parse(lexicalStringified) as {\n nodes: SerializedUnknownLexicalNode[]\n }\n\n for (const node of lexical.nodes) {\n changeIds(node)\n }\n const stringified = JSON.stringify(lexical)\n event.clipboardData.setData('application/x-lexical-editor', stringified)\n })\n .catch((error) => {\n if (event instanceof ClipboardEvent) {\n event.clipboardData?.setData('application/x-lexical-editor', '')\n }\n throw error\n })\n return true\n },\n COMMAND_PRIORITY_LOW,\n )\n }, [editor])\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","copyToClipboard","useLexicalComposerContext","objectKlassEquals","ObjectID","$getSelection","$isNodeSelection","COMMAND_PRIORITY_LOW","COPY_COMMAND","useEffect","changeIds","node","fields","id","default","toHexString","children","child","ClipboardPlugin","$","editor","t0","t1","registerCommand","event","selection","getNodes","serializedNode","exportJSON","deepCloneSerializedNode","JSON","parse","stringify","lexicalClipboardData","namespace","_config","nodes","stringifiedLexicalClipboardData","catch","_temp","ClipboardEvent","then","clipboardData","Error","lexicalStringified","getData","lexical","node_0","stringified","setData","error_0","error"],"sources":["../../../../src/lexical/plugins/ClipboardPlugin/index.tsx"],"sourcesContent":["'use client'\n\nimport { copyToClipboard } from '@lexical/clipboard'\nimport { useLexicalComposerContext } from '@lexical/react/LexicalComposerContext.js'\nimport { objectKlassEquals } from '@lexical/utils'\nimport ObjectID from 'bson-objectid'\nimport { $getSelection, $isNodeSelection, COMMAND_PRIORITY_LOW, COPY_COMMAND } from 'lexical'\nimport { useEffect } from 'react'\n\ntype SerializedUnknownLexicalNode = {\n children?: SerializedUnknownLexicalNode[]\n type: string\n}\n\ntype LexicalClipboardData = {\n namespace: string\n nodes: SerializedUnknownLexicalNode[]\n}\n\nconst changeIds = (node: SerializedUnknownLexicalNode) => {\n if (\n 'fields' in node &&\n typeof node.fields === 'object' &&\n node.fields !== null &&\n 'id' in node.fields\n ) {\n node.fields.id = new ObjectID.default().toHexString()\n } else if ('id' in node) {\n node.id = new ObjectID.default().toHexString()\n }\n\n if (node.children) {\n for (const child of node.children) {\n changeIds(child)\n }\n }\n}\n\nexport function ClipboardPlugin() {\n const [editor] = useLexicalComposerContext()\n\n useEffect(() => {\n // Remove duplicated ids from clipboard. We do it here because:\n // 1. Browsers do not allow setting the clipboardData in paste event for security reasons.\n // 2. If you cut instead of paste, the id will be kept, which is a good thing.\n return editor.registerCommand(\n COPY_COMMAND,\n (event) => {\n // Handle decorator node case\n const selection = $getSelection()\n if ($isNodeSelection(selection)) {\n const node = selection.getNodes()[0]\n\n const serializedNode = node?.exportJSON() as SerializedUnknownLexicalNode\n const deepCloneSerializedNode = JSON.parse(JSON.stringify(serializedNode))\n changeIds(deepCloneSerializedNode)\n\n const lexicalClipboardData: LexicalClipboardData = {\n namespace: editor._config.namespace,\n nodes: [deepCloneSerializedNode],\n }\n\n const stringifiedLexicalClipboardData = JSON.stringify(lexicalClipboardData)\n\n copyToClipboard(editor, null, {\n 'application/x-lexical-editor': stringifiedLexicalClipboardData,\n 'text/plain': '',\n }).catch((error) => {\n throw error\n })\n return true\n }\n\n // Handle range selection case\n copyToClipboard(editor, objectKlassEquals(event, ClipboardEvent) ? event : null)\n .then(() => {\n if (!(event instanceof ClipboardEvent) || !event.clipboardData) {\n throw new Error('No clipboard event')\n }\n const lexicalStringified = event.clipboardData.getData('application/x-lexical-editor')\n if (!lexicalStringified) {\n return true\n }\n\n const lexical = JSON.parse(lexicalStringified) as {\n nodes: SerializedUnknownLexicalNode[]\n }\n\n for (const node of lexical.nodes) {\n changeIds(node)\n }\n const stringified = JSON.stringify(lexical)\n event.clipboardData.setData('application/x-lexical-editor', stringified)\n })\n .catch((error) => {\n if (event instanceof ClipboardEvent) {\n event.clipboardData?.setData('application/x-lexical-editor', '')\n }\n throw error\n })\n return true\n },\n COMMAND_PRIORITY_LOW,\n )\n }, [editor])\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}