Prevent duplicate service registrations
This commit is contained in:
parent
b2fcaab30b
commit
843d2d5b1f
27
service.js
27
service.js
@ -87,6 +87,17 @@ class BesService {
|
|||||||
this.clearCorrectionPanel()
|
this.clearCorrectionPanel()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns grammar checking service registered for given DOM element
|
||||||
|
*
|
||||||
|
* @param {Element} hostElement Host element
|
||||||
|
* @returns Grammar checking service registered for given DOM element; unfedined if no service
|
||||||
|
* registered.
|
||||||
|
*/
|
||||||
|
static getServiceByElement(hostElement) {
|
||||||
|
return besServices.find(service => service.hostElement === hostElement)
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Called initially when grammar-checking run is started
|
* Called initially when grammar-checking run is started
|
||||||
*/
|
*/
|
||||||
@ -796,7 +807,9 @@ class BesDOMService extends BesTreeService {
|
|||||||
* @returns {BesDOMService} Grammar checking service instance
|
* @returns {BesDOMService} Grammar checking service instance
|
||||||
*/
|
*/
|
||||||
static register(hostElement) {
|
static register(hostElement) {
|
||||||
let service = new BesDOMService(hostElement)
|
let service = BesService.getServiceByElement(hostElement)
|
||||||
|
if (service) return service
|
||||||
|
service = new BesDOMService(hostElement)
|
||||||
service.proofAll()
|
service.proofAll()
|
||||||
return service
|
return service
|
||||||
}
|
}
|
||||||
@ -878,7 +891,9 @@ class BesCKService extends BesTreeService {
|
|||||||
* @returns {BesCKService} Grammar checking service instance
|
* @returns {BesCKService} Grammar checking service instance
|
||||||
*/
|
*/
|
||||||
static register(hostElement, ckEditorInstance) {
|
static register(hostElement, ckEditorInstance) {
|
||||||
let service = new BesCKService(hostElement, ckEditorInstance)
|
let service = BesService.getServiceByElement(hostElement)
|
||||||
|
if (service) return service
|
||||||
|
service = new BesCKService(hostElement, ckEditorInstance)
|
||||||
service.proofAll()
|
service.proofAll()
|
||||||
return service
|
return service
|
||||||
}
|
}
|
||||||
@ -1347,7 +1362,9 @@ class BesDOMPlainTextService extends BesPlainTextService {
|
|||||||
* @returns {BesDOMPlainTextService} Grammar checking service instance
|
* @returns {BesDOMPlainTextService} Grammar checking service instance
|
||||||
*/
|
*/
|
||||||
static register(hostElement) {
|
static register(hostElement) {
|
||||||
let service = new BesDOMPlainTextService(hostElement)
|
let service = BesService.getServiceByElement(hostElement)
|
||||||
|
if (service) return service
|
||||||
|
service = new BesDOMPlainTextService(hostElement)
|
||||||
service.proofAll()
|
service.proofAll()
|
||||||
return service
|
return service
|
||||||
}
|
}
|
||||||
@ -1483,7 +1500,9 @@ class BesTAService extends BesPlainTextService {
|
|||||||
* @returns {BesTAService} Grammar checking service instance
|
* @returns {BesTAService} Grammar checking service instance
|
||||||
*/
|
*/
|
||||||
static register(hostElement) {
|
static register(hostElement) {
|
||||||
let service = new BesTAService(hostElement)
|
let service = BesService.getServiceByElement(hostElement)
|
||||||
|
if (service) return service
|
||||||
|
service = new BesTAService(hostElement)
|
||||||
service.proofAll()
|
service.proofAll()
|
||||||
return service
|
return service
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user