Helpers/utils
- Classes
- Interfaces
- Loader
- AbortError
- keepNames
- cns
- hAlignElement
- clearAlign
- alignElement
- appendScriptAsync
- appendStyleAsync
- loadNext
- loadNextStyle
- assert
- attr
- browser
- buildQuery
- completeUrl
- ConfigProto
- ConfigFlatten
- ConfigDeepFlatten
- convertMediaUrlToVideoEmbed
- css
- clearCenterAlign
- ctrlKey
- dataBind
- defaultLanguage
- error
- connection
- options
- abort
- isAbort
- isAtom
- markAsAtomic
- fastClone
- getClassName
- get
- humanSizeToBytes
- markDeprecated
- parseQuery
- reset
- inView
- scrollIntoViewIfNeeded
- $$
- getXPathByElement
- refs
- cssPath
- resolveElement
- set
- call
- markOwner
- callPromise
- loadImage
- keys
- memorizeExec
- getDataTransfer
- previewBox
Classes
Interfaces
Loader
Loader: (jodit
: IViewBased
, url
: string
) => Promise
<any
>
Type declaration
(jodit
, url
): Promise
<any
>
Parameters
Name | Type |
---|---|
jodit |
IViewBased |
url |
string |
Returns
Promise
<any
>
Defined in
src/core/helpers/utils/append-script.ts#16
AbortError
AbortError: DOMException
& { name
: "AbortError"
}
AbortError
is not a separate exception, but rather a DOMException with a special name
.
https://webidl.spec.whatwg.org/#aborterror
Defined in
src/core/helpers/utils/error/errors/abort-error.ts#17
keepNames
Const
keepNames: Map
<Function
, string
>
Defined in
src/core/helpers/utils/get-class-name.ts#14
cns
Const
cns: Console
= console
By default, terser will remove all console.*
but
if you use this object it will not be
Defined in
src/core/helpers/utils/mark-deprecated.ts#15
hAlignElement
hAlignElement(image
, align
): void
Align image
Parameters
Name | Type |
---|---|
image |
HTMLElement |
align |
ImageHAlign |
Returns
void
Defined in
src/core/helpers/utils/align.ts#18
clearAlign
clearAlign(node
): void
Remove text-align style for all selected children
Parameters
Name | Type |
---|---|
node |
Node |
Returns
void
Defined in
src/core/helpers/utils/align.ts#48
alignElement
alignElement(command
, box
): void
Apply align for element
Parameters
Name | Type |
---|---|
command |
string |
box |
HTMLElement |
Returns
void
Defined in
src/core/helpers/utils/align.ts#65
appendScriptAsync
appendScriptAsync(jodit
, url
): Promise
<any
>
Load script and return promise
Parameters
Name | Type |
---|---|
jodit |
IViewBased <IViewOptions > |
url |
string |
Returns
Promise
<any
>
Defined in
src/core/helpers/utils/append-script.ts#42
appendStyleAsync
appendStyleAsync(jodit
, url
): Promise
<any
>
Download CSS style script
Parameters
Name | Type |
---|---|
jodit |
IViewBased <IViewOptions > |
url |
string |
Returns
Promise
<any
>
Defined in
src/core/helpers/utils/append-script.ts#66
loadNext
loadNext(jodit
, urls
, i?
): Promise
<void
>
Parameters
Name | Type | Default value |
---|---|---|
jodit |
IViewBased <IViewOptions > |
undefined |
urls |
string [] |
undefined |
i |
number |
0 |
Returns
Promise
<void
>
Defined in
src/core/helpers/utils/append-script.ts#95
loadNextStyle
loadNextStyle(jodit
, urls
, i?
): Promise
<void
>
Parameters
Name | Type | Default value |
---|---|---|
jodit |
IViewBased <IViewOptions > |
undefined |
urls |
string [] |
undefined |
i |
number |
0 |
Returns
Promise
<void
>
Defined in
src/core/helpers/utils/append-script.ts#109
assert
assert<T
>(condition
, message
): asserts condition
Asserts that condition is truthy (or evaluates to true).
Type parameters
Name |
---|
T |
Parameters
Name | Type |
---|---|
condition |
undefined | null | false | "" | 0 | T |
message |
string |
Returns
asserts condition
Defined in
src/core/helpers/utils/assert.ts#19
attr
attr(elm
, key
): null
| string
Get attribute
Parameters
Name | Type |
---|---|
elm |
Element |
key |
string |
Returns
null
| string
Defined in
src/core/helpers/utils/attr.ts#24
attr(elm
, key
, value
): void
Remove attribute
Parameters
Name | Type |
---|---|
elm |
Element |
key |
string |
value |
null |
Returns
void
Defined in
src/core/helpers/utils/attr.ts#29
attr(elm
, key
, value
): null
Set attribute
Parameters
Name | Type |
---|---|
elm |
Element |
key |
string |
value |
undefined | null | string | number | boolean |
Returns
null
Defined in
src/core/helpers/utils/attr.ts#34
attr(elm
, attributes
): null
Set or remove several attributes
Parameters
Name | Type |
---|---|
elm |
Element |
attributes |
IDictionary <null | string | number | boolean > |
Returns
null
Defined in
src/core/helpers/utils/attr.ts#43
browser
browser(browser
): string
| boolean
Module returns method that is used to determine the browser
Parameters
Name | Type |
---|---|
browser |
string |
Returns
string
| boolean
Example
console.log(Jodit.modules.Helpers.browser('mse'));
console.log(Jodit.modules.Helpers.browser('chrome'));
console.log($Jodit.modules.Helpers.browser('opera'));
console.log(Jodit.modules.Helpers.browser('firefox'));
console.log(Jodit.modules.Helpers.browser('mse') && Jodit.modules.Helpers.browser('version') > 10);
Defined in
src/core/helpers/utils/browser.ts#22
buildQuery
buildQuery(data
, prefix?
): string
Build query string
Parameters
Name | Type |
---|---|
data |
IDictionary |
prefix? |
string |
Returns
string
Defined in
src/core/helpers/utils/build-query.ts#17
completeUrl
completeUrl(url
): string
Parameters
Name | Type |
---|---|
url |
string |
Returns
string
Defined in
src/core/helpers/utils/complete-url.ts#13
ConfigProto
ConfigProto(options
, proto
, deep?
): IDictionary
Parameters
Name | Type | Default value |
---|---|---|
options |
IDictionary |
undefined |
proto |
IDictionary |
undefined |
deep |
number |
0 |
Returns
Example
const defaultConfig = {
a: {
b: {
c: 2
},
e: 5
},
d: {
g: 7
}
};
const options = ConfigProto({a: {
b: {
c: 1
}
}}, defaultConfig);
console.log(options.a.b.c); // 1
console.log(options.a.e); // 5
console.log(options.d.g); // 7
defaultConfig.d.g = 8;
console.log(options.d.g); // 8
Defined in
src/core/helpers/utils/config-proto.ts#51
ConfigFlatten
ConfigFlatten(obj
): IDictionary
Parameters
Name | Type |
---|---|
obj |
IDictionary |
Returns
Defined in
src/core/helpers/utils/config-proto.ts#102
ConfigDeepFlatten
ConfigDeepFlatten(obj
): IDictionary
Returns a plain object from a prototype-based object.
const editor = Jodit.make('#editor', {
image: {
dialogWidth: 500
}
});
console.log(editor.o.image.openOnDblClick) // true
// But you can't get all options in plain object
console.log(JSON.stringify(editor.o.image)); // {"dialogWidth":500}
const plain = Jodit.modules.Helpers.ConfigDeepFlatten(editor.o.image);
console.log(JSON.stringify(plain)); // {"dialogWidth":500, "openOnDblClick": true, "editSrc": true, ...}
Parameters
Name | Type |
---|---|
obj |
IDictionary |
Returns
Defined in
src/core/helpers/utils/config-proto.ts#126
convertMediaUrlToVideoEmbed
convertMediaUrlToVideoEmbed(url
, «destructured»?
): string
Javascript url pattern converter replace youtube/vimeo url in embed code.
Parameters
Name | Type | Default value |
---|---|---|
url |
string |
undefined |
«destructured» |
Object |
{} |
› width? |
number |
400 |
› height? |
number |
345 |
Returns
string
Defined in
src/core/helpers/utils/convert-media-url-to-video-embed.ts#19
css
css(element
, key
): string
| number
Get the value of a computed style property for the first element in the set of matched elements or set one or
more CSS properties for every matched element
Parameters
Name | Type | Description |
---|---|---|
element |
HTMLElement |
HTML element |
key |
keyof CSSStyleDeclaration |
An object of property-value pairs to set. A CSS property name. |
Returns
string
| number
Defined in
src/core/helpers/utils/css.ts#22
css(element
, key
): string
| number
Get the value of a computed style property for the first element in the set of matched elements or set one or
more CSS properties for every matched element
Parameters
Name | Type | Description |
---|---|---|
element |
HTMLElement |
HTML element |
key |
string | IStyle |
An object of property-value pairs to set. A CSS property name. |
Returns
string
| number
Defined in
src/core/helpers/utils/css.ts#27
css(element
, key
, value
): string
| number
Get the value of a computed style property for the first element in the set of matched elements or set one or
more CSS properties for every matched element
Parameters
Name | Type | Description |
---|---|---|
element |
HTMLElement |
HTML element |
key |
string | IStyle |
An object of property-value pairs to set. A CSS property name. |
value |
StyleValue |
A value to set for the property. |
Returns
string
| number
Defined in
src/core/helpers/utils/css.ts#32
css(element
, key
, onlyStyleMode
): string
| number
Get the value of a computed style property for the first element in the set of matched elements or set one or
more CSS properties for every matched element
Parameters
Name | Type | Description |
---|---|---|
element |
HTMLElement |
HTML element |
key |
string | IStyle |
An object of property-value pairs to set. A CSS property name. |
onlyStyleMode |
boolean |
Get value from style attribute, without calculating |
Returns
string
| number
Defined in
src/core/helpers/utils/css.ts#38
clearCenterAlign
clearCenterAlign(image
): void
Clear center align
Parameters
Name | Type |
---|---|
image |
HTMLElement |
Returns
void
Defined in
src/core/helpers/utils/css.ts#123
ctrlKey
ctrlKey(e
): boolean
CTRL pressed
Parameters
Name | Type |
---|---|
e |
MouseEvent | KeyboardEvent |
Returns
boolean
true ctrl key was pressed
Defined in
src/core/helpers/utils/ctrl-key.ts#15
dataBind
dataBind<T
>(elm
, key
, value?
): T
Type parameters
Name | Type |
---|---|
T |
any |
Parameters
Name | Type |
---|---|
elm |
object | Node | IViewComponent <IViewBased <IViewOptions >> |
key |
string |
value? |
T |
Returns
T
Defined in
src/core/helpers/utils/data-bind.ts#16
defaultLanguage
defaultLanguage(language?
, defaultLanguage?
): string
Try define user language
Parameters
Name | Type | Default value |
---|---|---|
language? |
string |
undefined |
defaultLanguage |
string |
'en' |
Returns
string
Defined in
src/core/helpers/utils/default-language.ts#17
error
error(message
): Error
Helper for create Error object
Parameters
Name | Type |
---|---|
message |
string |
Returns
Defined in
src/core/helpers/utils/error/error.ts#16
connection
connection(message
): Error
Parameters
Name | Type |
---|---|
message |
string |
Returns
Defined in
src/core/helpers/utils/error/error.ts#20
options
options(message
): Error
Parameters
Name | Type |
---|---|
message |
string |
Returns
Defined in
src/core/helpers/utils/error/error.ts#24
abort
abort(message?
): Error
Parameters
Name | Type | Default value |
---|---|---|
message |
string |
'Aborted' |
Returns
Defined in
src/core/helpers/utils/error/errors/abort-error.ts#19
isAbort
isAbort(error
): error is AbortError
Parameters
Name | Type |
---|---|
error |
unknown |
Returns
error is AbortError
Deprecated
use isAbortError
instead
Defined in
src/core/helpers/utils/error/errors/abort-error.ts#26
isAtom
isAtom(obj
): boolean
Parameters
Name | Type |
---|---|
obj |
unknown |
Returns
boolean
Defined in
src/core/helpers/utils/extend.ts#13
markAsAtomic
markAsAtomic<T
>(obj
): T
Type parameters
Name |
---|
T |
Parameters
Name | Type |
---|---|
obj |
T |
Returns
T
Defined in
src/core/helpers/utils/extend.ts#17
fastClone
fastClone<T
>(object
): T
Type parameters
Name |
---|
T |
Parameters
Name | Type |
---|---|
object |
T |
Returns
T
Defined in
src/core/helpers/utils/extend.ts#27
getClassName
getClassName(obj
): string
Parameters
Name | Type |
---|---|
obj |
IDictionary |
Returns
string
Defined in
src/core/helpers/utils/get-class-name.ts#16
get
get<T
>(chain
, obj
): Nullable
<T
>
Safe access in tree object
Type parameters
Name |
---|
T |
Parameters
Name | Type |
---|---|
chain |
string |
obj |
IDictionary |
Returns
Nullable
<T
>
Example
const obj = {
a: {
b: {
c: {
e: false
}
}
}
};
console.log(Jodit.modules.Helpers.get('a.b.c.d.e', obj) === false); // true
console.log(Jodit.modules.Helpers.get('a.b.a.d.e', obj) === null); // false
Defined in
src/core/helpers/utils/get.ts#34
humanSizeToBytes
humanSizeToBytes(human
): number
Converts from human readable file size (kb,mb,gb,tb) to bytes
Parameters
Name | Type | Description |
---|---|---|
human |
string |
readable file size. Example 1gb or 11.2mb |
Returns
number
Defined in
src/core/helpers/utils/human-size-to-bytes.ts#15
markDeprecated
markDeprecated(method
, names?
, ctx?
): (...args
: any
[]) => void
Mark function as deprecated
Parameters
Name | Type | Default value |
---|---|---|
method |
Function |
undefined |
names |
string [] |
undefined |
ctx |
any |
null |
Returns
fn
(...args
): void
Parameters
Name | Type |
---|---|
...args |
any [] |
Returns
void
Defined in
src/core/helpers/utils/mark-deprecated.ts#20
parseQuery
parseQuery(queryString
): IDictionary
<string
>
Parse query string
Parameters
Name | Type |
---|---|
queryString |
string |
Returns
IDictionary
<string
>
Defined in
src/core/helpers/utils/parse-query.ts#16
reset
reset<T
>(key
): Nullable
<T
>
Reset Vanilla JS native function
Type parameters
Name | Type |
---|---|
T |
extends Function |
Parameters
Name | Type |
---|---|
key |
string |
Returns
Nullable
<T
>
Example
reset('Array.from')(Set([1,2,3])) // [1, 2, 3]
You must use the function derived from the method immediately as its iframe is being removed
Defined in
src/core/helpers/utils/reset.ts#27
inView
inView(elm
, root
, doc
): boolean
Check if element is in view
Parameters
Name | Type |
---|---|
elm |
HTMLElement |
root |
HTMLElement |
doc |
Document |
Returns
boolean
Defined in
src/core/helpers/utils/scroll-into-view.ts#21
scrollIntoViewIfNeeded
scrollIntoViewIfNeeded(elm
, root
, doc
): void
Scroll element into view if it is not in view
Parameters
Name | Type |
---|---|
elm |
Nullable <Node > |
root |
HTMLElement |
doc |
Document |
Returns
void
Defined in
src/core/helpers/utils/scroll-into-view.ts#55
$$
$$<T
>(selector
, root
): T
[]
Type parameters
Name | Type |
---|---|
T |
extends HTMLElement |
Parameters
Name | Type |
---|---|
selector |
string |
root |
HTMLElement | DocumentFragment |
Returns
T
[]
Defined in
src/core/helpers/utils/selector.ts#46
getXPathByElement
getXPathByElement(element
, root
): string
Calculate XPath selector
Parameters
Name | Type |
---|---|
element |
HTMLElement |
root |
HTMLElement |
Returns
string
Defined in
src/core/helpers/utils/selector.ts#87
refs
refs<T
>(root
): IDictionary
<T
>
Find all ref
or data-ref
elements inside HTMLElement
Type parameters
Name | Type |
---|---|
T |
extends HTMLElement |
Parameters
Name | Type |
---|---|
root |
HTMLElement | { container : HTMLElement } |
Returns
IDictionary
<T
>
Defined in
src/core/helpers/utils/selector.ts#121
cssPath
cssPath(el
): Nullable
<string
>
Calculate full CSS selector
Parameters
Name | Type |
---|---|
el |
Element |
Returns
Nullable
<string
>
Defined in
src/core/helpers/utils/selector.ts#143
resolveElement
resolveElement(element
, od
): HTMLElement
Try to find element by selector
Parameters
Name | Type |
---|---|
element |
unknown |
od |
Document | ShadowRoot |
Returns
Defined in
src/core/helpers/utils/selector.ts#185
set
set<T
>(chain
, value
, obj
): void
Safe access in tree object
Type parameters
Name |
---|
T |
Parameters
Name | Type |
---|---|
chain |
string |
value |
unknown |
obj |
IDictionary |
Returns
void
Example
const a = {}, b = {};
Jodit.modules.Helpers.set('a.b.c.d.e', 1, a);
console.log(a);// {a: {b: {c: {d: {e: 1}}}}}
Jodit.modules.Helpers.set('a.0.e', 1, b);
console.log(b);// {a: [{e: 1}]}
Defined in
src/core/helpers/utils/set.ts#30
call
call<T
, R
>(func
, ...args
): R
Call function with parameters
Type parameters
Name | Type |
---|---|
T |
extends any [] |
R |
R |
Parameters
Name | Type |
---|---|
func |
(...args : T ) => R |
...args |
T |
Returns
R
Example
const f = Math.random();
Jodit.modules.Helpers.call(f > 0.5 ? Math.ceil : Math.floor, f);
Defined in
src/core/helpers/utils/utils.ts#35
markOwner
markOwner(jodit
, elm
): void
Mark element for debugging
Parameters
Name | Type |
---|---|
jodit |
IViewBased <IViewOptions > |
elm |
HTMLElement |
Returns
void
Defined in
src/core/helpers/utils/utils.ts#45
callPromise
callPromise(condition
, callback?
): CanPromise
<void
>
Parameters
Name | Type |
---|---|
condition |
unknown |
callback? |
() => any |
Returns
CanPromise
<void
>
Defined in
src/core/helpers/utils/utils.ts#54
loadImage
loadImage(src
, jodit
): RejectablePromise
<HTMLImageElement
>
Allow load image in promise
Parameters
Name | Type |
---|---|
src |
string |
jodit |
IViewBased <IViewOptions > |
Returns
RejectablePromise
<HTMLImageElement
>
Defined in
src/core/helpers/utils/utils.ts#73
keys
keys(obj
, own?
): string
[]
Parameters
Name | Type | Default value |
---|---|---|
obj |
object |
undefined |
own |
boolean |
true |
Returns
string
[]
Defined in
src/core/helpers/utils/utils.ts#100
memorizeExec
memorizeExec<T
>(editor
, _
, «destructured»
, preProcessValue?
): false
| void
Memorize last user chose
Type parameters
Name | Type |
---|---|
T |
extends IJodit = IJodit |
Parameters
Name | Type |
---|---|
editor |
T |
_ |
unknown |
«destructured» |
Object |
› control |
IControlType <T , IToolbarButton > |
preProcessValue? |
(value : string ) => string |
Returns
false
| void
Defined in
src/core/helpers/utils/utils.ts#117
getDataTransfer
getDataTransfer(event
): Nullable
<DataTransfer
>
Get DataTransfer from different event types
Parameters
Name | Type |
---|---|
event |
ClipboardEvent | DragEvent |
Returns
Defined in
jodit/src/core/helpers/utils/utils.ts:143
previewBox
previewBox(editor
, defaultValue?
, points?
, container?
): [HTMLElement
, () => void
]
Generates a copy of an HTML document, resizes images, executes JS
beforePreviewBox(string | undefined, 'pt' | 'px' | '')
afterPreviewBox(HTMLElement)
Parameters
Name | Type | Default value |
---|---|---|
editor |
IJodit |
undefined |
defaultValue? |
string |
undefined |
points |
"" | "px" | "pt" |
'px' |
container |
Nullable <HTMLElement > |
null |
Returns
[HTMLElement
, () => void
]
Defined in
jodit/src/core/helpers/utils/print.ts:71