@ckeditor/ckeditor5-word-count 48.4.0 → 48.5.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/translations/af.js +1 -1
- package/dist/translations/af.umd.js +5 -3
- package/dist/translations/ar.js +1 -1
- package/dist/translations/ar.umd.js +5 -3
- package/dist/translations/ast.js +1 -1
- package/dist/translations/ast.umd.js +5 -3
- package/dist/translations/az.js +1 -1
- package/dist/translations/az.umd.js +5 -3
- package/dist/translations/be.js +1 -1
- package/dist/translations/be.umd.js +5 -3
- package/dist/translations/bg.js +1 -1
- package/dist/translations/bg.umd.js +5 -3
- package/dist/translations/bn.js +1 -1
- package/dist/translations/bn.umd.js +5 -3
- package/dist/translations/bs.js +1 -1
- package/dist/translations/bs.umd.js +5 -3
- package/dist/translations/ca.js +1 -1
- package/dist/translations/ca.umd.js +5 -3
- package/dist/translations/cs.js +1 -1
- package/dist/translations/cs.umd.js +5 -3
- package/dist/translations/da.js +1 -1
- package/dist/translations/da.umd.js +5 -3
- package/dist/translations/de-ch.js +1 -1
- package/dist/translations/de-ch.umd.js +5 -3
- package/dist/translations/de.js +1 -1
- package/dist/translations/de.umd.js +5 -3
- package/dist/translations/el.js +1 -1
- package/dist/translations/el.umd.js +5 -3
- package/dist/translations/en-au.js +1 -1
- package/dist/translations/en-au.umd.js +5 -3
- package/dist/translations/en-gb.js +1 -1
- package/dist/translations/en-gb.umd.js +5 -3
- package/dist/translations/en.js +1 -1
- package/dist/translations/en.umd.js +5 -3
- package/dist/translations/eo.js +1 -1
- package/dist/translations/eo.umd.js +5 -3
- package/dist/translations/es-co.js +1 -1
- package/dist/translations/es-co.umd.js +5 -3
- package/dist/translations/es.js +1 -1
- package/dist/translations/es.umd.js +5 -3
- package/dist/translations/et.js +1 -1
- package/dist/translations/et.umd.js +5 -3
- package/dist/translations/eu.js +1 -1
- package/dist/translations/eu.umd.js +5 -3
- package/dist/translations/fa.js +1 -1
- package/dist/translations/fa.umd.js +5 -3
- package/dist/translations/fi.js +1 -1
- package/dist/translations/fi.umd.js +5 -3
- package/dist/translations/fr.js +1 -1
- package/dist/translations/fr.umd.js +5 -3
- package/dist/translations/gl.js +1 -1
- package/dist/translations/gl.umd.js +5 -3
- package/dist/translations/gu.js +1 -1
- package/dist/translations/gu.umd.js +5 -3
- package/dist/translations/he.js +1 -1
- package/dist/translations/he.umd.js +5 -3
- package/dist/translations/hi.js +1 -1
- package/dist/translations/hi.umd.js +5 -3
- package/dist/translations/hr.js +1 -1
- package/dist/translations/hr.umd.js +5 -3
- package/dist/translations/hu.js +1 -1
- package/dist/translations/hu.umd.js +5 -3
- package/dist/translations/hy.js +1 -1
- package/dist/translations/hy.umd.js +5 -3
- package/dist/translations/id.js +1 -1
- package/dist/translations/id.umd.js +5 -3
- package/dist/translations/it.js +1 -1
- package/dist/translations/it.umd.js +5 -3
- package/dist/translations/ja.js +1 -1
- package/dist/translations/ja.umd.js +5 -3
- package/dist/translations/jv.js +1 -1
- package/dist/translations/jv.umd.js +5 -3
- package/dist/translations/kk.js +1 -1
- package/dist/translations/kk.umd.js +5 -3
- package/dist/translations/km.js +1 -1
- package/dist/translations/km.umd.js +5 -3
- package/dist/translations/kn.js +1 -1
- package/dist/translations/kn.umd.js +5 -3
- package/dist/translations/ko.js +1 -1
- package/dist/translations/ko.umd.js +5 -3
- package/dist/translations/ku.js +1 -1
- package/dist/translations/ku.umd.js +5 -3
- package/dist/translations/lt.js +1 -1
- package/dist/translations/lt.umd.js +5 -3
- package/dist/translations/lv.js +1 -1
- package/dist/translations/lv.umd.js +5 -3
- package/dist/translations/ms.js +1 -1
- package/dist/translations/ms.umd.js +5 -3
- package/dist/translations/nb.js +1 -1
- package/dist/translations/nb.umd.js +5 -3
- package/dist/translations/ne.js +1 -1
- package/dist/translations/ne.umd.js +5 -3
- package/dist/translations/nl.js +1 -1
- package/dist/translations/nl.umd.js +5 -3
- package/dist/translations/no.js +1 -1
- package/dist/translations/no.umd.js +5 -3
- package/dist/translations/oc.js +1 -1
- package/dist/translations/oc.umd.js +5 -3
- package/dist/translations/pl.js +1 -1
- package/dist/translations/pl.umd.js +5 -3
- package/dist/translations/pt-br.js +1 -1
- package/dist/translations/pt-br.umd.js +5 -3
- package/dist/translations/pt.js +1 -1
- package/dist/translations/pt.umd.js +5 -3
- package/dist/translations/ro.js +1 -1
- package/dist/translations/ro.umd.js +5 -3
- package/dist/translations/ru.js +1 -1
- package/dist/translations/ru.umd.js +5 -3
- package/dist/translations/si.js +1 -1
- package/dist/translations/si.umd.js +5 -3
- package/dist/translations/sk.js +1 -1
- package/dist/translations/sk.umd.js +5 -3
- package/dist/translations/sl.js +1 -1
- package/dist/translations/sl.umd.js +5 -3
- package/dist/translations/sq.js +1 -1
- package/dist/translations/sq.umd.js +5 -3
- package/dist/translations/sr-latn.js +1 -1
- package/dist/translations/sr-latn.umd.js +5 -3
- package/dist/translations/sr.js +1 -1
- package/dist/translations/sr.umd.js +5 -3
- package/dist/translations/sv.js +1 -1
- package/dist/translations/sv.umd.js +5 -3
- package/dist/translations/th.js +1 -1
- package/dist/translations/th.umd.js +5 -3
- package/dist/translations/ti.js +1 -1
- package/dist/translations/ti.umd.js +5 -3
- package/dist/translations/tk.js +1 -1
- package/dist/translations/tk.umd.js +5 -3
- package/dist/translations/tr.js +1 -1
- package/dist/translations/tr.umd.js +5 -3
- package/dist/translations/tt.js +1 -1
- package/dist/translations/tt.umd.js +5 -3
- package/dist/translations/ug.js +1 -1
- package/dist/translations/ug.umd.js +5 -3
- package/dist/translations/uk.js +1 -1
- package/dist/translations/uk.umd.js +5 -3
- package/dist/translations/ur.js +1 -1
- package/dist/translations/ur.umd.js +5 -3
- package/dist/translations/uz.js +1 -1
- package/dist/translations/uz.umd.js +5 -3
- package/dist/translations/vi.js +1 -1
- package/dist/translations/vi.umd.js +5 -3
- package/dist/translations/zh-cn.js +1 -1
- package/dist/translations/zh-cn.umd.js +5 -3
- package/dist/translations/zh.js +1 -1
- package/dist/translations/zh.umd.js +5 -3
- package/package.json +5 -5
package/dist/index.js
CHANGED
|
@@ -97,7 +97,7 @@ var WordCount = class extends Plugin {
|
|
|
97
97
|
this.set("_charactersLabel", void 0);
|
|
98
98
|
this._config = editor.config.get("wordCount") || {};
|
|
99
99
|
this._outputView = void 0;
|
|
100
|
-
this._wordsMatchRegExp = env.features.isRegExpUnicodePropertySupported ?
|
|
100
|
+
this._wordsMatchRegExp = env.features.isRegExpUnicodePropertySupported ? new RegExp("([\\p{L}\\p{N}]+\\S?)+", "gu") : /([a-zA-Z0-9À-ž]+\S?)+/gu;
|
|
101
101
|
}
|
|
102
102
|
/**
|
|
103
103
|
* @inheritDoc
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["index.js","../src/utils.ts","../src/wordcount.ts"],"names":[],"mappings":"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","file":"index.js.map","sourcesContent":["import { Plugin } from \"@ckeditor/ckeditor5-core\";\nimport { Template, View } from \"@ckeditor/ckeditor5-ui\";\nimport { env } from \"@ckeditor/ckeditor5-utils\";\nimport { isElement, throttle } from \"es-toolkit/compat\";\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n/**\n* Returns a plain text representation of an element and its children.\n*\n* @internal\n* @returns Plain text representing the model's data.\n*/\nfunction modelElementToPlainText(item) {\n\tif (item.is(\"$text\") || item.is(\"$textProxy\")) return item.data;\n\tconst element = item;\n\tlet text = \"\";\n\tlet prev = null;\n\tfor (const child of element.getChildren()) {\n\t\tconst childText = modelElementToPlainText(child);\n\t\tif (prev && prev.is(\"element\")) text += \"\\n\";\n\t\ttext += childText;\n\t\tprev = child;\n\t}\n\treturn text;\n}\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n/**\n* The word count plugin.\n*\n* This plugin calculates all words and characters in all {@link module:engine/model/text~ModelText text nodes} available in the model.\n* It also provides an HTML element that updates its state whenever the editor content is changed.\n*\n* The model's data is first converted to plain text using {@link module:word-count/utils~modelElementToPlainText}.\n* The number of words and characters in your text are determined based on the created plain text. Please keep in mind\n* that every block in the editor is separated with a newline character, which is included in the calculation.\n*\n* Here are some examples of how the word and character calculations are made:\n*\n* ```html\n* <paragraph>foo</paragraph>\n* <paragraph>bar</paragraph>\n* // Words: 2, Characters: 7\n*\n* <paragraph><$text bold=\"true\">foo</$text>bar</paragraph>\n* // Words: 1, Characters: 6\n*\n* <paragraph>*&^%)</paragraph>\n* // Words: 0, Characters: 5\n*\n* <paragraph>foo(bar)</paragraph>\n* //Words: 1, Characters: 8\n*\n* <paragraph>12345</paragraph>\n* // Words: 1, Characters: 5\n* ```\n*/\nvar WordCount = class extends Plugin {\n\t/**\n\t* The configuration of this plugin.\n\t*/\n\t_config;\n\t/**\n\t* The reference to a {@link module:ui/view~View view object} that contains the self-updating HTML container.\n\t*/\n\t_outputView;\n\t/**\n\t* A regular expression used to recognize words in the editor's content.\n\t*/\n\t_wordsMatchRegExp;\n\t/**\n\t* @inheritDoc\n\t*/\n\tconstructor(editor) {\n\t\tsuper(editor);\n\t\tthis.set(\"characters\", 0);\n\t\tthis.set(\"words\", 0);\n\t\tObject.defineProperties(this, {\n\t\t\tcharacters: { get() {\n\t\t\t\treturn this.characters = this._getCharacters(this._getText());\n\t\t\t} },\n\t\t\twords: { get() {\n\t\t\t\treturn this.words = this._getWords(this._getText());\n\t\t\t} }\n\t\t});\n\t\tthis.set(\"_wordsLabel\", void 0);\n\t\tthis.set(\"_charactersLabel\", void 0);\n\t\tthis._config = editor.config.get(\"wordCount\") || {};\n\t\tthis._outputView = void 0;\n\t\tthis._wordsMatchRegExp = env.features.isRegExpUnicodePropertySupported ? /* @__PURE__ */ new RegExp(\"([\\\\p{L}\\\\p{N}]+\\\\S?)+\", \"gu\") : /([a-zA-Z0-9À-ž]+\\S?)+/gu;\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get pluginName() {\n\t\treturn \"WordCount\";\n\t}\n\t/**\n\t* @inheritDoc\n\t* @internal\n\t*/\n\tstatic get licenseFeatureCode() {\n\t\treturn \"WC\";\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get isOfficialPlugin() {\n\t\treturn true;\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get isPremiumPlugin() {\n\t\treturn true;\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tinit() {\n\t\tthis.editor.model.document.on(\"change:data\", throttle(this._refreshStats.bind(this), 250));\n\t\tif (typeof this._config.onUpdate == \"function\") this.on(\"update\", (evt, data) => {\n\t\t\tthis._config.onUpdate(data);\n\t\t});\n\t\tif (isElement(this._config.container)) this._config.container.appendChild(this.wordCountContainer);\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tdestroy() {\n\t\tif (this._outputView) {\n\t\t\tthis._outputView.element.remove();\n\t\t\tthis._outputView.destroy();\n\t\t}\n\t\tsuper.destroy();\n\t}\n\t/**\n\t* Creates a self-updating HTML element. Repeated executions return the same element.\n\t* The returned element has the following HTML structure:\n\t*\n\t* ```html\n\t* <div class=\"ck ck-word-count\">\n\t* \t<div class=\"ck-word-count__words\">Words: 4</div>\n\t* \t<div class=\"ck-word-count__characters\">Characters: 28</div>\n\t* </div>\n\t* ```\n\t*/\n\tget wordCountContainer() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\t\tconst displayWords = editor.config.get(\"wordCount.displayWords\");\n\t\tconst displayCharacters = editor.config.get(\"wordCount.displayCharacters\");\n\t\tconst bind = Template.bind(this, this);\n\t\tconst children = [];\n\t\tif (!this._outputView) {\n\t\t\tthis._outputView = new View();\n\t\t\tif (displayWords || displayWords === void 0) {\n\t\t\t\tthis.bind(\"_wordsLabel\").to(this, \"words\", (words) => {\n\t\t\t\t\treturn t(\"Words: %0\", words);\n\t\t\t\t});\n\t\t\t\tchildren.push({\n\t\t\t\t\ttag: \"div\",\n\t\t\t\t\tchildren: [{ text: [bind.to(\"_wordsLabel\")] }],\n\t\t\t\t\tattributes: { class: \"ck-word-count__words\" }\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (displayCharacters || displayCharacters === void 0) {\n\t\t\t\tthis.bind(\"_charactersLabel\").to(this, \"characters\", (words) => {\n\t\t\t\t\treturn t(\"Characters: %0\", words);\n\t\t\t\t});\n\t\t\t\tchildren.push({\n\t\t\t\t\ttag: \"div\",\n\t\t\t\t\tchildren: [{ text: [bind.to(\"_charactersLabel\")] }],\n\t\t\t\t\tattributes: { class: \"ck-word-count__characters\" }\n\t\t\t\t});\n\t\t\t}\n\t\t\tthis._outputView.setTemplate({\n\t\t\t\ttag: \"div\",\n\t\t\t\tattributes: { class: [\"ck\", \"ck-word-count\"] },\n\t\t\t\tchildren\n\t\t\t});\n\t\t\tthis._outputView.render();\n\t\t}\n\t\treturn this._outputView.element;\n\t}\n\t_getText() {\n\t\tlet txt = \"\";\n\t\tfor (const root of this.editor.model.document.getRoots()) {\n\t\t\tif (txt !== \"\") txt += \"\\n\";\n\t\t\ttxt += modelElementToPlainText(root);\n\t\t}\n\t\treturn txt;\n\t}\n\t/**\n\t* Determines the number of characters in the current editor's model.\n\t*/\n\t_getCharacters(txt) {\n\t\treturn txt.replace(/\\n/g, \"\").length;\n\t}\n\t/**\n\t* Determines the number of words in the current editor's model.\n\t*/\n\t_getWords(txt) {\n\t\treturn (txt.match(this._wordsMatchRegExp) || []).length;\n\t}\n\t/**\n\t* Determines the number of words and characters in the current editor's model and assigns it to {@link #characters} and {@link #words}.\n\t* It also fires the {@link #event:update}.\n\t*\n\t* @fires update\n\t*/\n\t_refreshStats() {\n\t\tconst txt = this._getText();\n\t\tconst words = this.words = this._getWords(txt);\n\t\tconst characters = this.characters = this._getCharacters(txt);\n\t\tthis.fire(\"update\", {\n\t\t\twords,\n\t\t\tcharacters\n\t\t});\n\t}\n};\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n\nexport { WordCount, modelElementToPlainText as _modelElementToPlainText };\n//# sourceMappingURL=index.js.map","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module word-count/utils\n */\n\nimport type { ModelElement, ModelItem } from '@ckeditor/ckeditor5-engine';\n\n/**\n * Returns a plain text representation of an element and its children.\n *\n * @internal\n * @returns Plain text representing the model's data.\n */\nexport function modelElementToPlainText( item: ModelItem ): string {\n\tif ( item.is( '$text' ) || item.is( '$textProxy' ) ) {\n\t\treturn item.data;\n\t}\n\n\tconst element = item as ModelElement;\n\tlet text = '';\n\tlet prev = null;\n\n\tfor ( const child of element.getChildren() ) {\n\t\tconst childText = modelElementToPlainText( child );\n\n\t\t// If last block was finish, start from new line.\n\t\tif ( prev && prev.is( 'element' ) ) {\n\t\t\ttext += '\\n';\n\t\t}\n\n\t\ttext += childText;\n\n\t\tprev = child;\n\t}\n\n\treturn text;\n}\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module word-count/wordcount\n */\n\nimport { type ModelDocumentChangeEvent } from '@ckeditor/ckeditor5-engine';\nimport { Plugin, type Editor } from '@ckeditor/ckeditor5-core';\nimport { Template, View } from '@ckeditor/ckeditor5-ui';\nimport { env } from '@ckeditor/ckeditor5-utils';\n\nimport { modelElementToPlainText } from './utils.js';\nimport type { WordCountConfig } from './wordcountconfig.js';\n\nimport { throttle, isElement } from 'es-toolkit/compat';\n\n/**\n * The word count plugin.\n *\n * This plugin calculates all words and characters in all {@link module:engine/model/text~ModelText text nodes} available in the model.\n * It also provides an HTML element that updates its state whenever the editor content is changed.\n *\n * The model's data is first converted to plain text using {@link module:word-count/utils~modelElementToPlainText}.\n * The number of words and characters in your text are determined based on the created plain text. Please keep in mind\n * that every block in the editor is separated with a newline character, which is included in the calculation.\n *\n * Here are some examples of how the word and character calculations are made:\n *\n * ```html\n * <paragraph>foo</paragraph>\n * <paragraph>bar</paragraph>\n * // Words: 2, Characters: 7\n *\n * <paragraph><$text bold=\"true\">foo</$text>bar</paragraph>\n * // Words: 1, Characters: 6\n *\n * <paragraph>*&^%)</paragraph>\n * // Words: 0, Characters: 5\n *\n * <paragraph>foo(bar)</paragraph>\n * //Words: 1, Characters: 8\n *\n * <paragraph>12345</paragraph>\n * // Words: 1, Characters: 5\n * ```\n */\nexport class WordCount extends Plugin {\n\t/**\n\t * The number of characters in the editor.\n\t *\n\t * @observable\n\t * @readonly\n\t */\n\tdeclare public characters: number;\n\n\t/**\n\t * The number of words in the editor.\n\t *\n\t * @observable\n\t * @readonly\n\t */\n\tdeclare public words: number;\n\n\t/**\n\t * The label used to display the words value in the {@link #wordCountContainer output container}.\n\t *\n\t * @observable\n\t * @private\n\t * @readonly\n\t */\n\tdeclare public _wordsLabel: string | undefined;\n\n\t/**\n\t * The label used to display the characters value in the {@link #wordCountContainer output container}.\n\t *\n\t * @observable\n\t * @private\n\t * @readonly\n\t */\n\tdeclare public _charactersLabel: string | undefined;\n\n\t/**\n\t * The configuration of this plugin.\n\t */\n\tprivate _config: WordCountConfig;\n\n\t/**\n\t * The reference to a {@link module:ui/view~View view object} that contains the self-updating HTML container.\n\t */\n\tprivate _outputView: View | undefined;\n\n\t/**\n\t * A regular expression used to recognize words in the editor's content.\n\t */\n\tprivate readonly _wordsMatchRegExp: RegExp;\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor: Editor ) {\n\t\tsuper( editor );\n\n\t\tthis.set( 'characters', 0 );\n\t\tthis.set( 'words', 0 );\n\n\t\t// Don't wait for the #update event to set the value of the properties but obtain it right away.\n\t\t// This way, accessing the properties directly returns precise numbers, e.g. for validation, etc.\n\t\t// If not accessed directly, the properties will be refreshed upon #update anyway.\n\t\tObject.defineProperties( this, {\n\t\t\tcharacters: {\n\t\t\t\tget() {\n\t\t\t\t\treturn ( this.characters = this._getCharacters( this._getText() ) );\n\t\t\t\t}\n\t\t\t},\n\t\t\twords: {\n\t\t\t\tget() {\n\t\t\t\t\treturn ( this.words = this._getWords( this._getText() ) );\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\n\t\tthis.set( '_wordsLabel', undefined );\n\t\tthis.set( '_charactersLabel', undefined );\n\n\t\tthis._config = editor.config.get( 'wordCount' ) || {};\n\n\t\tthis._outputView = undefined;\n\n\t\tthis._wordsMatchRegExp = env.features.isRegExpUnicodePropertySupported ?\n\t\t\t// Usage of regular expression literal cause error during build (ckeditor/ckeditor5-dev#534).\n\t\t\t// Groups:\n\t\t\t// {L} - Any kind of letter from any language.\n\t\t\t// {N} - Any kind of numeric character in any script.\n\t\t\tnew RegExp( '([\\\\p{L}\\\\p{N}]+\\\\S?)+', 'gu' ) :\n\t\t\t/([a-zA-Z0-9À-ž]+\\S?)+/gu;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get pluginName() {\n\t\treturn 'WordCount' as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t * @internal\n\t */\n\tpublic static get licenseFeatureCode(): string {\n\t\treturn 'WC';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isOfficialPlugin(): true {\n\t\treturn true;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isPremiumPlugin(): true {\n\t\treturn true;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic init(): void {\n\t\tconst editor = this.editor;\n\n\t\teditor.model.document.on<ModelDocumentChangeEvent>( 'change:data', throttle( this._refreshStats.bind( this ), 250 ) );\n\n\t\tif ( typeof this._config.onUpdate == 'function' ) {\n\t\t\tthis.on<WordCountUpdateEvent>( 'update', ( evt, data ) => {\n\t\t\t\tthis._config.onUpdate!( data );\n\t\t\t} );\n\t\t}\n\n\t\tif ( isElement( this._config.container ) ) {\n\t\t\tthis._config.container!.appendChild( this.wordCountContainer );\n\t\t}\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic override destroy(): void {\n\t\tif ( this._outputView ) {\n\t\t\tthis._outputView.element!.remove();\n\t\t\tthis._outputView.destroy();\n\t\t}\n\n\t\tsuper.destroy();\n\t}\n\n\t/**\n\t * Creates a self-updating HTML element. Repeated executions return the same element.\n\t * The returned element has the following HTML structure:\n\t *\n\t * ```html\n\t * <div class=\"ck ck-word-count\">\n\t * \t<div class=\"ck-word-count__words\">Words: 4</div>\n\t * \t<div class=\"ck-word-count__characters\">Characters: 28</div>\n\t * </div>\n\t * ```\n\t */\n\tpublic get wordCountContainer(): HTMLElement {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\t\tconst displayWords = editor.config.get( 'wordCount.displayWords' );\n\t\tconst displayCharacters = editor.config.get( 'wordCount.displayCharacters' );\n\t\tconst bind = Template.bind( this, this );\n\t\tconst children = [];\n\n\t\tif ( !this._outputView ) {\n\t\t\tthis._outputView = new View();\n\n\t\t\tif ( displayWords || displayWords === undefined ) {\n\t\t\t\tthis.bind( '_wordsLabel' ).to( this, 'words', words => {\n\t\t\t\t\treturn t( 'Words: %0', words );\n\t\t\t\t} );\n\n\t\t\t\tchildren.push( {\n\t\t\t\t\ttag: 'div',\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: [ bind.to( '_wordsLabel' ) ]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\tattributes: {\n\t\t\t\t\t\tclass: 'ck-word-count__words'\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( displayCharacters || displayCharacters === undefined ) {\n\t\t\t\tthis.bind( '_charactersLabel' ).to( this, 'characters', words => {\n\t\t\t\t\treturn t( 'Characters: %0', words );\n\t\t\t\t} );\n\n\t\t\t\tchildren.push( {\n\t\t\t\t\ttag: 'div',\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: [ bind.to( '_charactersLabel' ) ]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\tattributes: {\n\t\t\t\t\t\tclass: 'ck-word-count__characters'\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tthis._outputView.setTemplate( {\n\t\t\t\ttag: 'div',\n\t\t\t\tattributes: {\n\t\t\t\t\tclass: [\n\t\t\t\t\t\t'ck',\n\t\t\t\t\t\t'ck-word-count'\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tchildren\n\t\t\t} );\n\n\t\t\tthis._outputView.render();\n\t\t}\n\n\t\treturn this._outputView.element!;\n\t}\n\n\tprivate _getText(): string {\n\t\tlet txt = '';\n\n\t\tfor ( const root of this.editor.model.document.getRoots() ) {\n\t\t\tif ( txt !== '' ) {\n\t\t\t\t// Add a delimiter, so words from each root are treated independently.\n\t\t\t\ttxt += '\\n';\n\t\t\t}\n\n\t\t\ttxt += modelElementToPlainText( root );\n\t\t}\n\n\t\treturn txt;\n\t}\n\n\t/**\n\t * Determines the number of characters in the current editor's model.\n\t */\n\tprivate _getCharacters( txt: string ): number {\n\t\treturn txt.replace( /\\n/g, '' ).length;\n\t}\n\n\t/**\n\t * Determines the number of words in the current editor's model.\n\t */\n\tprivate _getWords( txt: string ): number {\n\t\tconst detectedWords = txt.match( this._wordsMatchRegExp ) || [];\n\n\t\treturn detectedWords.length;\n\t}\n\n\t/**\n\t * Determines the number of words and characters in the current editor's model and assigns it to {@link #characters} and {@link #words}.\n\t * It also fires the {@link #event:update}.\n\t *\n\t * @fires update\n\t */\n\tprivate _refreshStats(): void {\n\t\tconst txt = this._getText();\n\t\tconst words = this.words = this._getWords( txt );\n\t\tconst characters = this.characters = this._getCharacters( txt );\n\n\t\tthis.fire<WordCountUpdateEvent>( 'update', {\n\t\t\twords,\n\t\t\tcharacters\n\t\t} );\n\t}\n}\n\n/**\n * An event fired after {@link ~WordCount#words} and {@link ~WordCount#characters} are updated.\n *\n * @eventName ~WordCount#update\n */\nexport type WordCountUpdateEvent = {\n\tname: 'update';\n\targs: [ { words: number; characters: number } ];\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["index.js","../src/utils.ts","../src/wordcount.ts"],"names":[],"mappings":"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","file":"index.js.map","sourcesContent":["import { Plugin } from \"@ckeditor/ckeditor5-core\";\nimport { Template, View } from \"@ckeditor/ckeditor5-ui\";\nimport { env } from \"@ckeditor/ckeditor5-utils\";\nimport { isElement, throttle } from \"es-toolkit/compat\";\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n/**\n* Returns a plain text representation of an element and its children.\n*\n* @internal\n* @returns Plain text representing the model's data.\n*/\nfunction modelElementToPlainText(item) {\n\tif (item.is(\"$text\") || item.is(\"$textProxy\")) return item.data;\n\tconst element = item;\n\tlet text = \"\";\n\tlet prev = null;\n\tfor (const child of element.getChildren()) {\n\t\tconst childText = modelElementToPlainText(child);\n\t\tif (prev && prev.is(\"element\")) text += \"\\n\";\n\t\ttext += childText;\n\t\tprev = child;\n\t}\n\treturn text;\n}\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n/**\n* The word count plugin.\n*\n* This plugin calculates all words and characters in all {@link module:engine/model/text~ModelText text nodes} available in the model.\n* It also provides an HTML element that updates its state whenever the editor content is changed.\n*\n* The model's data is first converted to plain text using {@link module:word-count/utils~modelElementToPlainText}.\n* The number of words and characters in your text are determined based on the created plain text. Please keep in mind\n* that every block in the editor is separated with a newline character, which is included in the calculation.\n*\n* Here are some examples of how the word and character calculations are made:\n*\n* ```html\n* <paragraph>foo</paragraph>\n* <paragraph>bar</paragraph>\n* // Words: 2, Characters: 7\n*\n* <paragraph><$text bold=\"true\">foo</$text>bar</paragraph>\n* // Words: 1, Characters: 6\n*\n* <paragraph>*&^%)</paragraph>\n* // Words: 0, Characters: 5\n*\n* <paragraph>foo(bar)</paragraph>\n* //Words: 1, Characters: 8\n*\n* <paragraph>12345</paragraph>\n* // Words: 1, Characters: 5\n* ```\n*/\nvar WordCount = class extends Plugin {\n\t/**\n\t* The configuration of this plugin.\n\t*/\n\t_config;\n\t/**\n\t* The reference to a {@link module:ui/view~View view object} that contains the self-updating HTML container.\n\t*/\n\t_outputView;\n\t/**\n\t* A regular expression used to recognize words in the editor's content.\n\t*/\n\t_wordsMatchRegExp;\n\t/**\n\t* @inheritDoc\n\t*/\n\tconstructor(editor) {\n\t\tsuper(editor);\n\t\tthis.set(\"characters\", 0);\n\t\tthis.set(\"words\", 0);\n\t\tObject.defineProperties(this, {\n\t\t\tcharacters: { get() {\n\t\t\t\treturn this.characters = this._getCharacters(this._getText());\n\t\t\t} },\n\t\t\twords: { get() {\n\t\t\t\treturn this.words = this._getWords(this._getText());\n\t\t\t} }\n\t\t});\n\t\tthis.set(\"_wordsLabel\", void 0);\n\t\tthis.set(\"_charactersLabel\", void 0);\n\t\tthis._config = editor.config.get(\"wordCount\") || {};\n\t\tthis._outputView = void 0;\n\t\tthis._wordsMatchRegExp = env.features.isRegExpUnicodePropertySupported ? new RegExp(\"([\\\\p{L}\\\\p{N}]+\\\\S?)+\", \"gu\") : /([a-zA-Z0-9À-ž]+\\S?)+/gu;\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get pluginName() {\n\t\treturn \"WordCount\";\n\t}\n\t/**\n\t* @inheritDoc\n\t* @internal\n\t*/\n\tstatic get licenseFeatureCode() {\n\t\treturn \"WC\";\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get isOfficialPlugin() {\n\t\treturn true;\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tstatic get isPremiumPlugin() {\n\t\treturn true;\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tinit() {\n\t\tthis.editor.model.document.on(\"change:data\", throttle(this._refreshStats.bind(this), 250));\n\t\tif (typeof this._config.onUpdate == \"function\") this.on(\"update\", (evt, data) => {\n\t\t\tthis._config.onUpdate(data);\n\t\t});\n\t\tif (isElement(this._config.container)) this._config.container.appendChild(this.wordCountContainer);\n\t}\n\t/**\n\t* @inheritDoc\n\t*/\n\tdestroy() {\n\t\tif (this._outputView) {\n\t\t\tthis._outputView.element.remove();\n\t\t\tthis._outputView.destroy();\n\t\t}\n\t\tsuper.destroy();\n\t}\n\t/**\n\t* Creates a self-updating HTML element. Repeated executions return the same element.\n\t* The returned element has the following HTML structure:\n\t*\n\t* ```html\n\t* <div class=\"ck ck-word-count\">\n\t* \t<div class=\"ck-word-count__words\">Words: 4</div>\n\t* \t<div class=\"ck-word-count__characters\">Characters: 28</div>\n\t* </div>\n\t* ```\n\t*/\n\tget wordCountContainer() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\t\tconst displayWords = editor.config.get(\"wordCount.displayWords\");\n\t\tconst displayCharacters = editor.config.get(\"wordCount.displayCharacters\");\n\t\tconst bind = Template.bind(this, this);\n\t\tconst children = [];\n\t\tif (!this._outputView) {\n\t\t\tthis._outputView = new View();\n\t\t\tif (displayWords || displayWords === void 0) {\n\t\t\t\tthis.bind(\"_wordsLabel\").to(this, \"words\", (words) => {\n\t\t\t\t\treturn t(\"Words: %0\", words);\n\t\t\t\t});\n\t\t\t\tchildren.push({\n\t\t\t\t\ttag: \"div\",\n\t\t\t\t\tchildren: [{ text: [bind.to(\"_wordsLabel\")] }],\n\t\t\t\t\tattributes: { class: \"ck-word-count__words\" }\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (displayCharacters || displayCharacters === void 0) {\n\t\t\t\tthis.bind(\"_charactersLabel\").to(this, \"characters\", (words) => {\n\t\t\t\t\treturn t(\"Characters: %0\", words);\n\t\t\t\t});\n\t\t\t\tchildren.push({\n\t\t\t\t\ttag: \"div\",\n\t\t\t\t\tchildren: [{ text: [bind.to(\"_charactersLabel\")] }],\n\t\t\t\t\tattributes: { class: \"ck-word-count__characters\" }\n\t\t\t\t});\n\t\t\t}\n\t\t\tthis._outputView.setTemplate({\n\t\t\t\ttag: \"div\",\n\t\t\t\tattributes: { class: [\"ck\", \"ck-word-count\"] },\n\t\t\t\tchildren\n\t\t\t});\n\t\t\tthis._outputView.render();\n\t\t}\n\t\treturn this._outputView.element;\n\t}\n\t_getText() {\n\t\tlet txt = \"\";\n\t\tfor (const root of this.editor.model.document.getRoots()) {\n\t\t\tif (txt !== \"\") txt += \"\\n\";\n\t\t\ttxt += modelElementToPlainText(root);\n\t\t}\n\t\treturn txt;\n\t}\n\t/**\n\t* Determines the number of characters in the current editor's model.\n\t*/\n\t_getCharacters(txt) {\n\t\treturn txt.replace(/\\n/g, \"\").length;\n\t}\n\t/**\n\t* Determines the number of words in the current editor's model.\n\t*/\n\t_getWords(txt) {\n\t\treturn (txt.match(this._wordsMatchRegExp) || []).length;\n\t}\n\t/**\n\t* Determines the number of words and characters in the current editor's model and assigns it to {@link #characters} and {@link #words}.\n\t* It also fires the {@link #event:update}.\n\t*\n\t* @fires update\n\t*/\n\t_refreshStats() {\n\t\tconst txt = this._getText();\n\t\tconst words = this.words = this._getWords(txt);\n\t\tconst characters = this.characters = this._getCharacters(txt);\n\t\tthis.fire(\"update\", {\n\t\t\twords,\n\t\t\tcharacters\n\t\t});\n\t}\n};\n\n/**\n* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n*/\n\nexport { WordCount, modelElementToPlainText as _modelElementToPlainText };\n//# sourceMappingURL=index.js.map","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module word-count/utils\n */\n\nimport type { ModelElement, ModelItem } from '@ckeditor/ckeditor5-engine';\n\n/**\n * Returns a plain text representation of an element and its children.\n *\n * @internal\n * @returns Plain text representing the model's data.\n */\nexport function modelElementToPlainText( item: ModelItem ): string {\n\tif ( item.is( '$text' ) || item.is( '$textProxy' ) ) {\n\t\treturn item.data;\n\t}\n\n\tconst element = item as ModelElement;\n\tlet text = '';\n\tlet prev = null;\n\n\tfor ( const child of element.getChildren() ) {\n\t\tconst childText = modelElementToPlainText( child );\n\n\t\t// If last block was finish, start from new line.\n\t\tif ( prev && prev.is( 'element' ) ) {\n\t\t\ttext += '\\n';\n\t\t}\n\n\t\ttext += childText;\n\n\t\tprev = child;\n\t}\n\n\treturn text;\n}\n","/**\n * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options\n */\n\n/**\n * @module word-count/wordcount\n */\n\nimport { type ModelDocumentChangeEvent } from '@ckeditor/ckeditor5-engine';\nimport { Plugin, type Editor } from '@ckeditor/ckeditor5-core';\nimport { Template, View } from '@ckeditor/ckeditor5-ui';\nimport { env } from '@ckeditor/ckeditor5-utils';\n\nimport { modelElementToPlainText } from './utils.js';\nimport type { WordCountConfig } from './wordcountconfig.js';\n\nimport { throttle, isElement } from 'es-toolkit/compat';\n\n/**\n * The word count plugin.\n *\n * This plugin calculates all words and characters in all {@link module:engine/model/text~ModelText text nodes} available in the model.\n * It also provides an HTML element that updates its state whenever the editor content is changed.\n *\n * The model's data is first converted to plain text using {@link module:word-count/utils~modelElementToPlainText}.\n * The number of words and characters in your text are determined based on the created plain text. Please keep in mind\n * that every block in the editor is separated with a newline character, which is included in the calculation.\n *\n * Here are some examples of how the word and character calculations are made:\n *\n * ```html\n * <paragraph>foo</paragraph>\n * <paragraph>bar</paragraph>\n * // Words: 2, Characters: 7\n *\n * <paragraph><$text bold=\"true\">foo</$text>bar</paragraph>\n * // Words: 1, Characters: 6\n *\n * <paragraph>*&^%)</paragraph>\n * // Words: 0, Characters: 5\n *\n * <paragraph>foo(bar)</paragraph>\n * //Words: 1, Characters: 8\n *\n * <paragraph>12345</paragraph>\n * // Words: 1, Characters: 5\n * ```\n */\nexport class WordCount extends Plugin {\n\t/**\n\t * The number of characters in the editor.\n\t *\n\t * @observable\n\t * @readonly\n\t */\n\tdeclare public characters: number;\n\n\t/**\n\t * The number of words in the editor.\n\t *\n\t * @observable\n\t * @readonly\n\t */\n\tdeclare public words: number;\n\n\t/**\n\t * The label used to display the words value in the {@link #wordCountContainer output container}.\n\t *\n\t * @observable\n\t * @private\n\t * @readonly\n\t */\n\tdeclare public _wordsLabel: string | undefined;\n\n\t/**\n\t * The label used to display the characters value in the {@link #wordCountContainer output container}.\n\t *\n\t * @observable\n\t * @private\n\t * @readonly\n\t */\n\tdeclare public _charactersLabel: string | undefined;\n\n\t/**\n\t * The configuration of this plugin.\n\t */\n\tprivate _config: WordCountConfig;\n\n\t/**\n\t * The reference to a {@link module:ui/view~View view object} that contains the self-updating HTML container.\n\t */\n\tprivate _outputView: View | undefined;\n\n\t/**\n\t * A regular expression used to recognize words in the editor's content.\n\t */\n\tprivate readonly _wordsMatchRegExp: RegExp;\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor: Editor ) {\n\t\tsuper( editor );\n\n\t\tthis.set( 'characters', 0 );\n\t\tthis.set( 'words', 0 );\n\n\t\t// Don't wait for the #update event to set the value of the properties but obtain it right away.\n\t\t// This way, accessing the properties directly returns precise numbers, e.g. for validation, etc.\n\t\t// If not accessed directly, the properties will be refreshed upon #update anyway.\n\t\tObject.defineProperties( this, {\n\t\t\tcharacters: {\n\t\t\t\tget() {\n\t\t\t\t\treturn ( this.characters = this._getCharacters( this._getText() ) );\n\t\t\t\t}\n\t\t\t},\n\t\t\twords: {\n\t\t\t\tget() {\n\t\t\t\t\treturn ( this.words = this._getWords( this._getText() ) );\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\n\t\tthis.set( '_wordsLabel', undefined );\n\t\tthis.set( '_charactersLabel', undefined );\n\n\t\tthis._config = editor.config.get( 'wordCount' ) || {};\n\n\t\tthis._outputView = undefined;\n\n\t\tthis._wordsMatchRegExp = env.features.isRegExpUnicodePropertySupported ?\n\t\t\t// Usage of regular expression literal cause error during build (ckeditor/ckeditor5-dev#534).\n\t\t\t// Groups:\n\t\t\t// {L} - Any kind of letter from any language.\n\t\t\t// {N} - Any kind of numeric character in any script.\n\t\t\tnew RegExp( '([\\\\p{L}\\\\p{N}]+\\\\S?)+', 'gu' ) :\n\t\t\t/([a-zA-Z0-9À-ž]+\\S?)+/gu;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static get pluginName() {\n\t\treturn 'WordCount' as const;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t * @internal\n\t */\n\tpublic static get licenseFeatureCode(): string {\n\t\treturn 'WC';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isOfficialPlugin(): true {\n\t\treturn true;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic static override get isPremiumPlugin(): true {\n\t\treturn true;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic init(): void {\n\t\tconst editor = this.editor;\n\n\t\teditor.model.document.on<ModelDocumentChangeEvent>( 'change:data', throttle( this._refreshStats.bind( this ), 250 ) );\n\n\t\tif ( typeof this._config.onUpdate == 'function' ) {\n\t\t\tthis.on<WordCountUpdateEvent>( 'update', ( evt, data ) => {\n\t\t\t\tthis._config.onUpdate!( data );\n\t\t\t} );\n\t\t}\n\n\t\tif ( isElement( this._config.container ) ) {\n\t\t\tthis._config.container!.appendChild( this.wordCountContainer );\n\t\t}\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tpublic override destroy(): void {\n\t\tif ( this._outputView ) {\n\t\t\tthis._outputView.element!.remove();\n\t\t\tthis._outputView.destroy();\n\t\t}\n\n\t\tsuper.destroy();\n\t}\n\n\t/**\n\t * Creates a self-updating HTML element. Repeated executions return the same element.\n\t * The returned element has the following HTML structure:\n\t *\n\t * ```html\n\t * <div class=\"ck ck-word-count\">\n\t * \t<div class=\"ck-word-count__words\">Words: 4</div>\n\t * \t<div class=\"ck-word-count__characters\">Characters: 28</div>\n\t * </div>\n\t * ```\n\t */\n\tpublic get wordCountContainer(): HTMLElement {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\t\tconst displayWords = editor.config.get( 'wordCount.displayWords' );\n\t\tconst displayCharacters = editor.config.get( 'wordCount.displayCharacters' );\n\t\tconst bind = Template.bind( this, this );\n\t\tconst children = [];\n\n\t\tif ( !this._outputView ) {\n\t\t\tthis._outputView = new View();\n\n\t\t\tif ( displayWords || displayWords === undefined ) {\n\t\t\t\tthis.bind( '_wordsLabel' ).to( this, 'words', words => {\n\t\t\t\t\treturn t( 'Words: %0', words );\n\t\t\t\t} );\n\n\t\t\t\tchildren.push( {\n\t\t\t\t\ttag: 'div',\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: [ bind.to( '_wordsLabel' ) ]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\tattributes: {\n\t\t\t\t\t\tclass: 'ck-word-count__words'\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( displayCharacters || displayCharacters === undefined ) {\n\t\t\t\tthis.bind( '_charactersLabel' ).to( this, 'characters', words => {\n\t\t\t\t\treturn t( 'Characters: %0', words );\n\t\t\t\t} );\n\n\t\t\t\tchildren.push( {\n\t\t\t\t\ttag: 'div',\n\t\t\t\t\tchildren: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttext: [ bind.to( '_charactersLabel' ) ]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\tattributes: {\n\t\t\t\t\t\tclass: 'ck-word-count__characters'\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tthis._outputView.setTemplate( {\n\t\t\t\ttag: 'div',\n\t\t\t\tattributes: {\n\t\t\t\t\tclass: [\n\t\t\t\t\t\t'ck',\n\t\t\t\t\t\t'ck-word-count'\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\tchildren\n\t\t\t} );\n\n\t\t\tthis._outputView.render();\n\t\t}\n\n\t\treturn this._outputView.element!;\n\t}\n\n\tprivate _getText(): string {\n\t\tlet txt = '';\n\n\t\tfor ( const root of this.editor.model.document.getRoots() ) {\n\t\t\tif ( txt !== '' ) {\n\t\t\t\t// Add a delimiter, so words from each root are treated independently.\n\t\t\t\ttxt += '\\n';\n\t\t\t}\n\n\t\t\ttxt += modelElementToPlainText( root );\n\t\t}\n\n\t\treturn txt;\n\t}\n\n\t/**\n\t * Determines the number of characters in the current editor's model.\n\t */\n\tprivate _getCharacters( txt: string ): number {\n\t\treturn txt.replace( /\\n/g, '' ).length;\n\t}\n\n\t/**\n\t * Determines the number of words in the current editor's model.\n\t */\n\tprivate _getWords( txt: string ): number {\n\t\tconst detectedWords = txt.match( this._wordsMatchRegExp ) || [];\n\n\t\treturn detectedWords.length;\n\t}\n\n\t/**\n\t * Determines the number of words and characters in the current editor's model and assigns it to {@link #characters} and {@link #words}.\n\t * It also fires the {@link #event:update}.\n\t *\n\t * @fires update\n\t */\n\tprivate _refreshStats(): void {\n\t\tconst txt = this._getText();\n\t\tconst words = this.words = this._getWords( txt );\n\t\tconst characters = this.characters = this._getCharacters( txt );\n\n\t\tthis.fire<WordCountUpdateEvent>( 'update', {\n\t\t\twords,\n\t\t\tcharacters\n\t\t} );\n\t}\n}\n\n/**\n * An event fired after {@link ~WordCount#words} and {@link ~WordCount#characters} are updated.\n *\n * @eventName ~WordCount#update\n */\nexport type WordCountUpdateEvent = {\n\tname: 'update';\n\targs: [ { words: number; characters: number } ];\n};\n"]}
|
package/dist/translations/af.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"af":{"dictionary":{"Words: %0":"","Characters: %0":""}
|
|
5
|
+
export default {"af":{"dictionary":{"Words: %0":"","Characters: %0":""}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'af' ]:
|
|
7
|
+
const { [ 'af' ]: translations } = {"af":{"dictionary":{"Words: %0":"","Characters: %0":""}}};
|
|
8
8
|
e[ 'af' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'af' ].dictionary = Object.assign( e[ 'af' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'af' ].dictionary = Object.assign( e[ 'af' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'af' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/ar.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"ar":{"dictionary":{"Words: %0":"الكلمات: %0","Characters: %0":"الأحرف: %0"}
|
|
5
|
+
export default {"ar":{"dictionary":{"Words: %0":"الكلمات: %0","Characters: %0":"الأحرف: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'ar' ]:
|
|
7
|
+
const { [ 'ar' ]: translations } = {"ar":{"dictionary":{"Words: %0":"الكلمات: %0","Characters: %0":"الأحرف: %0"}}};
|
|
8
8
|
e[ 'ar' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'ar' ].dictionary = Object.assign( e[ 'ar' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'ar' ].dictionary = Object.assign( e[ 'ar' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'ar' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/ast.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"ast":{"dictionary":{"Words: %0":"","Characters: %0":""}
|
|
5
|
+
export default {"ast":{"dictionary":{"Words: %0":"","Characters: %0":""}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'ast' ]:
|
|
7
|
+
const { [ 'ast' ]: translations } = {"ast":{"dictionary":{"Words: %0":"","Characters: %0":""}}};
|
|
8
8
|
e[ 'ast' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'ast' ].dictionary = Object.assign( e[ 'ast' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'ast' ].dictionary = Object.assign( e[ 'ast' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'ast' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/az.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"az":{"dictionary":{"Words: %0":"Sözlər: %0","Characters: %0":"Simvolar: %0"}
|
|
5
|
+
export default {"az":{"dictionary":{"Words: %0":"Sözlər: %0","Characters: %0":"Simvolar: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'az' ]:
|
|
7
|
+
const { [ 'az' ]: translations } = {"az":{"dictionary":{"Words: %0":"Sözlər: %0","Characters: %0":"Simvolar: %0"}}};
|
|
8
8
|
e[ 'az' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'az' ].dictionary = Object.assign( e[ 'az' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'az' ].dictionary = Object.assign( e[ 'az' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'az' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/be.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"be":{"dictionary":{"Words: %0":"Словаў: %0","Characters: %0":"Сімвалаў: %0"}
|
|
5
|
+
export default {"be":{"dictionary":{"Words: %0":"Словаў: %0","Characters: %0":"Сімвалаў: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'be' ]:
|
|
7
|
+
const { [ 'be' ]: translations } = {"be":{"dictionary":{"Words: %0":"Словаў: %0","Characters: %0":"Сімвалаў: %0"}}};
|
|
8
8
|
e[ 'be' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'be' ].dictionary = Object.assign( e[ 'be' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'be' ].dictionary = Object.assign( e[ 'be' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'be' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/bg.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"bg":{"dictionary":{"Words: %0":"Думи: %0","Characters: %0":"Знаци: %0"}
|
|
5
|
+
export default {"bg":{"dictionary":{"Words: %0":"Думи: %0","Characters: %0":"Знаци: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'bg' ]:
|
|
7
|
+
const { [ 'bg' ]: translations } = {"bg":{"dictionary":{"Words: %0":"Думи: %0","Characters: %0":"Знаци: %0"}}};
|
|
8
8
|
e[ 'bg' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'bg' ].dictionary = Object.assign( e[ 'bg' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'bg' ].dictionary = Object.assign( e[ 'bg' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'bg' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/bn.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"bn":{"dictionary":{"Words: %0":"শব্দগুলোঃ %0","Characters: %0":"অক্ষরসমূহঃ %0"}
|
|
5
|
+
export default {"bn":{"dictionary":{"Words: %0":"শব্দগুলোঃ %0","Characters: %0":"অক্ষরসমূহঃ %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'bn' ]:
|
|
7
|
+
const { [ 'bn' ]: translations } = {"bn":{"dictionary":{"Words: %0":"শব্দগুলোঃ %0","Characters: %0":"অক্ষরসমূহঃ %0"}}};
|
|
8
8
|
e[ 'bn' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'bn' ].dictionary = Object.assign( e[ 'bn' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'bn' ].dictionary = Object.assign( e[ 'bn' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'bn' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/bs.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"bs":{"dictionary":{"Words: %0":"","Characters: %0":""}
|
|
5
|
+
export default {"bs":{"dictionary":{"Words: %0":"","Characters: %0":""}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'bs' ]:
|
|
7
|
+
const { [ 'bs' ]: translations } = {"bs":{"dictionary":{"Words: %0":"","Characters: %0":""}}};
|
|
8
8
|
e[ 'bs' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'bs' ].dictionary = Object.assign( e[ 'bs' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'bs' ].dictionary = Object.assign( e[ 'bs' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'bs' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/ca.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"ca":{"dictionary":{"Words: %0":"Paraules: %0","Characters: %0":"Caràcters: %0"}
|
|
5
|
+
export default {"ca":{"dictionary":{"Words: %0":"Paraules: %0","Characters: %0":"Caràcters: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'ca' ]:
|
|
7
|
+
const { [ 'ca' ]: translations } = {"ca":{"dictionary":{"Words: %0":"Paraules: %0","Characters: %0":"Caràcters: %0"}}};
|
|
8
8
|
e[ 'ca' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'ca' ].dictionary = Object.assign( e[ 'ca' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'ca' ].dictionary = Object.assign( e[ 'ca' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'ca' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/cs.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"cs":{"dictionary":{"Words: %0":"Počet slov: %0","Characters: %0":"Počet znaků: %0"}
|
|
5
|
+
export default {"cs":{"dictionary":{"Words: %0":"Počet slov: %0","Characters: %0":"Počet znaků: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'cs' ]:
|
|
7
|
+
const { [ 'cs' ]: translations } = {"cs":{"dictionary":{"Words: %0":"Počet slov: %0","Characters: %0":"Počet znaků: %0"}}};
|
|
8
8
|
e[ 'cs' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'cs' ].dictionary = Object.assign( e[ 'cs' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'cs' ].dictionary = Object.assign( e[ 'cs' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'cs' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/da.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"da":{"dictionary":{"Words: %0":"Ord: %0","Characters: %0":"Karakterer: %0"}
|
|
5
|
+
export default {"da":{"dictionary":{"Words: %0":"Ord: %0","Characters: %0":"Karakterer: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'da' ]:
|
|
7
|
+
const { [ 'da' ]: translations } = {"da":{"dictionary":{"Words: %0":"Ord: %0","Characters: %0":"Karakterer: %0"}}};
|
|
8
8
|
e[ 'da' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'da' ].dictionary = Object.assign( e[ 'da' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'da' ].dictionary = Object.assign( e[ 'da' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'da' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"de-ch":{"dictionary":{"Words: %0":"Wörter: %0","Characters: %0":"Zeichen: %0"}
|
|
5
|
+
export default {"de-ch":{"dictionary":{"Words: %0":"Wörter: %0","Characters: %0":"Zeichen: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'de-ch' ]:
|
|
7
|
+
const { [ 'de-ch' ]: translations } = {"de-ch":{"dictionary":{"Words: %0":"Wörter: %0","Characters: %0":"Zeichen: %0"}}};
|
|
8
8
|
e[ 'de-ch' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'de-ch' ].dictionary = Object.assign( e[ 'de-ch' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'de-ch' ].dictionary = Object.assign( e[ 'de-ch' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'de-ch' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/de.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"de":{"dictionary":{"Words: %0":"Wörter: %0 ","Characters: %0":"Zeichen: %0 "}
|
|
5
|
+
export default {"de":{"dictionary":{"Words: %0":"Wörter: %0 ","Characters: %0":"Zeichen: %0 "}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'de' ]:
|
|
7
|
+
const { [ 'de' ]: translations } = {"de":{"dictionary":{"Words: %0":"Wörter: %0 ","Characters: %0":"Zeichen: %0 "}}};
|
|
8
8
|
e[ 'de' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'de' ].dictionary = Object.assign( e[ 'de' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'de' ].dictionary = Object.assign( e[ 'de' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'de' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/el.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"el":{"dictionary":{"Words: %0":"Λέξεις: %0","Characters: %0":"Χαρακτήρες: %0"}
|
|
5
|
+
export default {"el":{"dictionary":{"Words: %0":"Λέξεις: %0","Characters: %0":"Χαρακτήρες: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'el' ]:
|
|
7
|
+
const { [ 'el' ]: translations } = {"el":{"dictionary":{"Words: %0":"Λέξεις: %0","Characters: %0":"Χαρακτήρες: %0"}}};
|
|
8
8
|
e[ 'el' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'el' ].dictionary = Object.assign( e[ 'el' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'el' ].dictionary = Object.assign( e[ 'el' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'el' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"en-au":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}
|
|
5
|
+
export default {"en-au":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'en-au' ]:
|
|
7
|
+
const { [ 'en-au' ]: translations } = {"en-au":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}}};
|
|
8
8
|
e[ 'en-au' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'en-au' ].dictionary = Object.assign( e[ 'en-au' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'en-au' ].dictionary = Object.assign( e[ 'en-au' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'en-au' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"en-gb":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}
|
|
5
|
+
export default {"en-gb":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'en-gb' ]:
|
|
7
|
+
const { [ 'en-gb' ]: translations } = {"en-gb":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}}};
|
|
8
8
|
e[ 'en-gb' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'en-gb' ].dictionary = Object.assign( e[ 'en-gb' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'en-gb' ].dictionary = Object.assign( e[ 'en-gb' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'en-gb' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/en.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"en":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}
|
|
5
|
+
export default {"en":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'en' ]:
|
|
7
|
+
const { [ 'en' ]: translations } = {"en":{"dictionary":{"Words: %0":"Words: %0","Characters: %0":"Characters: %0"}}};
|
|
8
8
|
e[ 'en' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'en' ].dictionary = Object.assign( e[ 'en' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'en' ].dictionary = Object.assign( e[ 'en' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'en' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
package/dist/translations/eo.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"eo":{"dictionary":{"Words: %0":"","Characters: %0":""}
|
|
5
|
+
export default {"eo":{"dictionary":{"Words: %0":"","Characters: %0":""}}}
|
|
@@ -4,8 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
6
|
( e => {
|
|
7
|
-
const { [ 'eo' ]:
|
|
7
|
+
const { [ 'eo' ]: translations } = {"eo":{"dictionary":{"Words: %0":"","Characters: %0":""}}};
|
|
8
8
|
e[ 'eo' ] ||= { dictionary: {}, getPluralForm: null };
|
|
9
|
-
e[ 'eo' ].dictionary = Object.assign( e[ 'eo' ].dictionary, dictionary );
|
|
10
|
-
|
|
9
|
+
e[ 'eo' ].dictionary = Object.assign( e[ 'eo' ].dictionary, translations.dictionary );
|
|
10
|
+
if ( translations.getPluralForm ) {
|
|
11
|
+
e[ 'eo' ].getPluralForm = translations.getPluralForm;
|
|
12
|
+
}
|
|
11
13
|
} )( window.CKEDITOR_TRANSLATIONS ||= {} );
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
* @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
3
|
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
|
|
4
4
|
*/
|
|
5
|
-
export default {"es-co":{"dictionary":{"Words: %0":"Palabras: %0","Characters: %0":"Caracteres: %0"}
|
|
5
|
+
export default {"es-co":{"dictionary":{"Words: %0":"Palabras: %0","Characters: %0":"Caracteres: %0"}}}
|