@ng-select/ng-option-highlight 21.5.1 → 21.7.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.
|
@@ -14,18 +14,18 @@ class NgOptionHighlightDirective {
|
|
|
14
14
|
this.element = inject((ElementRef)).nativeElement;
|
|
15
15
|
this.renderer = inject(Renderer2);
|
|
16
16
|
// Signals
|
|
17
|
-
this.label = signal('', ...(ngDevMode ? [{ debugName: "label" }] : []));
|
|
17
|
+
this.label = signal('', ...(ngDevMode ? [{ debugName: "label" }] : /* istanbul ignore next */ []));
|
|
18
18
|
// Inputs
|
|
19
|
-
this.term = input('', { ...(ngDevMode ? { debugName: "term" } : {}), alias: 'ngOptionHighlight' });
|
|
19
|
+
this.term = input('', { ...(ngDevMode ? { debugName: "term" } : /* istanbul ignore next */ {}), alias: 'ngOptionHighlight' });
|
|
20
20
|
// Computed properties
|
|
21
|
-
this.canHighlight = computed(() => isDefined(this.term()) && isDefined(this.label()) && this.label() !== '', ...(ngDevMode ? [{ debugName: "canHighlight" }] : []));
|
|
21
|
+
this.canHighlight = computed(() => isDefined(this.term()) && isDefined(this.label()) && this.label() !== '', ...(ngDevMode ? [{ debugName: "canHighlight" }] : /* istanbul ignore next */ []));
|
|
22
22
|
// Update innerHTML using effect
|
|
23
23
|
this._effectUpdateInnerHtml = effect(() => {
|
|
24
24
|
if (!this.canHighlight()) {
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
27
27
|
this._highlightLabel();
|
|
28
|
-
}, ...(ngDevMode ? [{ debugName: "_effectUpdateInnerHtml" }] : []));
|
|
28
|
+
}, ...(ngDevMode ? [{ debugName: "_effectUpdateInnerHtml" }] : /* istanbul ignore next */ []));
|
|
29
29
|
this._ = afterNextRender(() => {
|
|
30
30
|
this.label.set(this.element.innerHTML);
|
|
31
31
|
// 1st label highlight triggers from here
|
|
@@ -45,10 +45,10 @@ class NgOptionHighlightDirective {
|
|
|
45
45
|
_setInnerHtml(html) {
|
|
46
46
|
this.renderer.setProperty(this.element, 'innerHTML', html);
|
|
47
47
|
}
|
|
48
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
49
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.
|
|
48
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: NgOptionHighlightDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
49
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.5", type: NgOptionHighlightDirective, isStandalone: true, selector: "[ngOptionHighlight]", inputs: { term: { classPropertyName: "term", publicName: "ngOptionHighlight", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
|
|
50
50
|
}
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.5", ngImport: i0, type: NgOptionHighlightDirective, decorators: [{
|
|
52
52
|
type: Directive,
|
|
53
53
|
args: [{
|
|
54
54
|
selector: '[ngOptionHighlight]',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-select-ng-option-highlight.mjs","sources":["../../../src/ng-option-highlight/lib/utils.ts","../../../src/ng-option-highlight/lib/ng-option-highlight.directive.ts","../../../src/ng-option-highlight/public-api.ts","../../../src/ng-option-highlight/ng-select-ng-option-highlight.ts"],"sourcesContent":["export function isDefined(value: any) {\n return value !== undefined && value !== null;\n}\n\nexport function escapeRegExp(str: string): string {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n}","import { afterNextRender, computed, effect, inject, input, signal, Directive, ElementRef, Renderer2 } from '@angular/core';\nimport { escapeRegExp, isDefined } from './utils';\n\n@Directive({\n\tselector: '[ngOptionHighlight]',\n\tstandalone: true,\n})\nexport class NgOptionHighlightDirective {\n\n\t// Dependencies\n\tprivate readonly element = inject(ElementRef<HTMLElement>).nativeElement;\n\tprivate readonly renderer = inject(Renderer2);\n\n\t// Signals\n\tprivate readonly label = signal<string>('');\n\n\t// Inputs\n\tpublic readonly term = input<string>('', { alias: 'ngOptionHighlight' });\n\n\t// Computed properties\n\tprivate readonly canHighlight = computed(\n\t\t() => isDefined(this.term()) && isDefined(this.label()) && this.label() !== '');\n\n\t// Update innerHTML using effect\n\t_effectUpdateInnerHtml = effect(() => {\n\t\tif (!this.canHighlight()) {\n\t\t\treturn;\n\t\t}\n\t\tthis._highlightLabel();\n\t});\n\n\t_ = afterNextRender(() => {\n\t\tthis.label.set(this.element.innerHTML);\n\t\t// 1st label highlight triggers from here\n\t\tthis._highlightLabel();\n\t});\n\n\tprivate _highlightLabel() {\n\t\tconst label = this.label();\n\t\tif (!this.term()) {\n\t\t\tthis._setInnerHtml(label);\n\t\t\treturn;\n\t\t}\n\n\t\tconst alternationString = escapeRegExp(this.term()).replace(' ', '|');\n\t\tconst termRegex = new RegExp(alternationString, 'gi');\n\t\tthis._setInnerHtml(label.replace(termRegex, `<span class=\\\"highlighted\\\">$&</span>`));\n\t}\n\n\tprivate _setInnerHtml(html) {\n\t\tthis.renderer.setProperty(this.element, 'innerHTML', html);\n\t}\n}","/*\n * Public API Surface of ng-option-highlight\n */\n\nexport * from './lib/ng-option-highlight.directive';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAAM,SAAU,SAAS,CAAC,KAAU,EAAA;AAChC,IAAA,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;AAChD;AAEM,SAAU,YAAY,CAAC,GAAW,EAAA;IACpC,OAAO,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;AACrD;;MCCa,0BAA0B,CAAA;AAJvC,IAAA,WAAA,GAAA;;QAOkB,IAAA,CAAA,OAAO,GAAG,MAAM,EAAC,UAAuB,EAAC,CAAC,aAAa;AACvD,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;;AAG5B,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"ng-select-ng-option-highlight.mjs","sources":["../../../src/ng-option-highlight/lib/utils.ts","../../../src/ng-option-highlight/lib/ng-option-highlight.directive.ts","../../../src/ng-option-highlight/public-api.ts","../../../src/ng-option-highlight/ng-select-ng-option-highlight.ts"],"sourcesContent":["export function isDefined(value: any) {\n return value !== undefined && value !== null;\n}\n\nexport function escapeRegExp(str: string): string {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n}","import { afterNextRender, computed, effect, inject, input, signal, Directive, ElementRef, Renderer2 } from '@angular/core';\nimport { escapeRegExp, isDefined } from './utils';\n\n@Directive({\n\tselector: '[ngOptionHighlight]',\n\tstandalone: true,\n})\nexport class NgOptionHighlightDirective {\n\n\t// Dependencies\n\tprivate readonly element = inject(ElementRef<HTMLElement>).nativeElement;\n\tprivate readonly renderer = inject(Renderer2);\n\n\t// Signals\n\tprivate readonly label = signal<string>('');\n\n\t// Inputs\n\tpublic readonly term = input<string>('', { alias: 'ngOptionHighlight' });\n\n\t// Computed properties\n\tprivate readonly canHighlight = computed(\n\t\t() => isDefined(this.term()) && isDefined(this.label()) && this.label() !== '');\n\n\t// Update innerHTML using effect\n\t_effectUpdateInnerHtml = effect(() => {\n\t\tif (!this.canHighlight()) {\n\t\t\treturn;\n\t\t}\n\t\tthis._highlightLabel();\n\t});\n\n\t_ = afterNextRender(() => {\n\t\tthis.label.set(this.element.innerHTML);\n\t\t// 1st label highlight triggers from here\n\t\tthis._highlightLabel();\n\t});\n\n\tprivate _highlightLabel() {\n\t\tconst label = this.label();\n\t\tif (!this.term()) {\n\t\t\tthis._setInnerHtml(label);\n\t\t\treturn;\n\t\t}\n\n\t\tconst alternationString = escapeRegExp(this.term()).replace(' ', '|');\n\t\tconst termRegex = new RegExp(alternationString, 'gi');\n\t\tthis._setInnerHtml(label.replace(termRegex, `<span class=\\\"highlighted\\\">$&</span>`));\n\t}\n\n\tprivate _setInnerHtml(html) {\n\t\tthis.renderer.setProperty(this.element, 'innerHTML', html);\n\t}\n}","/*\n * Public API Surface of ng-option-highlight\n */\n\nexport * from './lib/ng-option-highlight.directive';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;AAAM,SAAU,SAAS,CAAC,KAAU,EAAA;AAChC,IAAA,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;AAChD;AAEM,SAAU,YAAY,CAAC,GAAW,EAAA;IACpC,OAAO,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;AACrD;;MCCa,0BAA0B,CAAA;AAJvC,IAAA,WAAA,GAAA;;QAOkB,IAAA,CAAA,OAAO,GAAG,MAAM,EAAC,UAAuB,EAAC,CAAC,aAAa;AACvD,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;;AAG5B,QAAA,IAAA,CAAA,KAAK,GAAG,MAAM,CAAS,EAAE,4EAAC;;QAG3B,IAAA,CAAA,IAAI,GAAG,KAAK,CAAS,EAAE,4EAAI,KAAK,EAAE,mBAAmB,EAAA,CAAG;;AAGvD,QAAA,IAAA,CAAA,YAAY,GAAG,QAAQ,CACvC,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,mFAAC;;AAGhF,QAAA,IAAA,CAAA,sBAAsB,GAAG,MAAM,CAAC,MAAK;AACpC,YAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE;gBACzB;YACD;YACA,IAAI,CAAC,eAAe,EAAE;AACvB,QAAA,CAAC,6FAAC;AAEF,QAAA,IAAA,CAAA,CAAC,GAAG,eAAe,CAAC,MAAK;YACxB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;;YAEtC,IAAI,CAAC,eAAe,EAAE;AACvB,QAAA,CAAC,CAAC;AAiBF,IAAA;IAfQ,eAAe,GAAA;AACtB,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE;AACjB,YAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;YACzB;QACD;AAEA,QAAA,MAAM,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;QACrE,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,iBAAiB,EAAE,IAAI,CAAC;AACrD,QAAA,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,CAAA,qCAAA,CAAuC,CAAC,CAAC;IACtF;AAEQ,IAAA,aAAa,CAAC,IAAI,EAAA;AACzB,QAAA,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC;IAC3D;8GA5CY,0BAA0B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA1B,0BAA0B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAA1B,0BAA0B,EAAA,UAAA,EAAA,CAAA;kBAJtC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,UAAU,EAAE,IAAI;AAChB,iBAAA;;;ACND;;AAEG;;ACFH;;AAEG;;;;"}
|