@memberjunction/ng-filter-builder 3.4.0 → 4.0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"filter-builder.component.d.ts","sourceRoot":"","sources":["../../../src/lib/filter-builder/filter-builder.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACzG,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EACL,yBAAyB,EAEzB,eAAe,EACf,mBAAmB,EAGpB,MAAM,uBAAuB,CAAC;;AAa/B;;;;;;;;;;;;;;;;GAgBG;AACH,qBAKa,sBAAuB,YAAW,MAAM,EAAE,SAAS;IA6DlD,OAAO,CAAC,SAAS;IA5D7B;;OAEG;IACM,MAAM,EAAE,eAAe,EAAE,CAAM;IAExC;;OAEG;IACM,MAAM,EAAE,yBAAyB,GAAG,IAAI,CAAQ;IAEzD;;OAEG;IACM,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAM;IAEnD;;OAEG;IACM,QAAQ,EAAE,OAAO,CAAS;IAEnC;;OAEG;IACM,WAAW,EAAE,OAAO,CAAS;IAEtC;;OAEG;IACI,iBAAiB,EAAE,OAAO,CAAS;IAE1C;;OAEG;IACO,YAAY,0CAAiD;IAEvE;;OAEG;IACO,KAAK,0CAAiD;IAEhE;;OAEG;IACO,KAAK,qBAA4B;IAE3C;;OAEG;IACI,cAAc,EAAE,yBAAyB,CAAuB;IAEvE;;OAEG;IACI,YAAY,EAAE,mBAAmB,CAAyB;IAEjE;;OAEG;IACI,gBAAgB,EAAE,OAAO,CAAS;gBAErB,SAAS,EAAE,YAAY;IAE3C,QAAQ,IAAI,IAAI;IAKhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IASzC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IASxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI;IASvD;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,OAAO,IAAI,IAAI;IAOf;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,OAAO,CAAC,YAAY;IAgBpB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;OAEG;IACH,aAAa,IAAI,IAAI;IAIrB;;OAEG;IACH,oBAAoB,IAAI,QAAQ;IAQhC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAWrB;IAEF;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAoBxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAmDvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;IACH,OAAO,CAAC,UAAU;yCAtWP,sBAAsB;2CAAtB,sBAAsB;CA2WlC"}
1
+ {"version":3,"file":"filter-builder.component.d.ts","sourceRoot":"","sources":["../../../src/lib/filter-builder/filter-builder.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACzG,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EACL,yBAAyB,EAEzB,eAAe,EACf,mBAAmB,EAGpB,MAAM,uBAAuB,CAAC;;AAa/B;;;;;;;;;;;;;;;;GAgBG;AACH,qBAMa,sBAAuB,YAAW,MAAM,EAAE,SAAS;IA6DlD,OAAO,CAAC,SAAS;IA5D7B;;OAEG;IACM,MAAM,EAAE,eAAe,EAAE,CAAM;IAExC;;OAEG;IACM,MAAM,EAAE,yBAAyB,GAAG,IAAI,CAAQ;IAEzD;;OAEG;IACM,MAAM,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAM;IAEnD;;OAEG;IACM,QAAQ,EAAE,OAAO,CAAS;IAEnC;;OAEG;IACM,WAAW,EAAE,OAAO,CAAS;IAEtC;;OAEG;IACI,iBAAiB,EAAE,OAAO,CAAS;IAE1C;;OAEG;IACO,YAAY,0CAAiD;IAEvE;;OAEG;IACO,KAAK,0CAAiD;IAEhE;;OAEG;IACO,KAAK,qBAA4B;IAE3C;;OAEG;IACI,cAAc,EAAE,yBAAyB,CAAuB;IAEvE;;OAEG;IACI,YAAY,EAAE,mBAAmB,CAAyB;IAEjE;;OAEG;IACI,gBAAgB,EAAE,OAAO,CAAS;gBAErB,SAAS,EAAE,YAAY;IAE3C,QAAQ,IAAI,IAAI;IAKhB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IASzC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IASxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,cAAc,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI;IASvD;;OAEG;IACH,OAAO,IAAI,IAAI;IAKf;;OAEG;IACH,OAAO,IAAI,IAAI;IAOf;;OAEG;IACH,cAAc,IAAI,MAAM;IAIxB;;OAEG;IACH,OAAO,CAAC,YAAY;IAgBpB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;OAEG;IACH,aAAa,IAAI,IAAI;IAIrB;;OAEG;IACH,oBAAoB,IAAI,QAAQ;IAQhC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,MAAM,CAWrB;IAEF;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA8B9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAoBxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAmDvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;IACH,OAAO,CAAC,UAAU;yCAtWP,sBAAsB;2CAAtB,sBAAsB;CA2WlC"}
@@ -10,7 +10,7 @@ function FilterBuilderComponent_Conditional_5_Template(rf, ctx) { if (rf & 1) {
10
10
  } if (rf & 2) {
11
11
  const ctx_r0 = i0.ɵɵnextContext();
12
12
  i0.ɵɵadvance();
13
- i0.ɵɵtextInterpolate2("", ctx_r0.getFilterCount(), " condition", ctx_r0.getFilterCount() !== 1 ? "s" : "", "");
13
+ i0.ɵɵtextInterpolate2("", ctx_r0.getFilterCount(), " condition", ctx_r0.getFilterCount() !== 1 ? "s" : "");
14
14
  } }
15
15
  function FilterBuilderComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
16
16
  i0.ɵɵelementStart(0, "span", 6);
@@ -70,7 +70,7 @@ function FilterBuilderComponent_Conditional_13_Template(rf, ctx) { if (rf & 1) {
70
70
  i0.ɵɵelementStart(6, "span", 24);
71
71
  i0.ɵɵtext(7);
72
72
  i0.ɵɵelementEnd()();
73
- i0.ɵɵtemplate(8, FilterBuilderComponent_Conditional_13_Conditional_8_Template, 2, 1, "div", 25);
73
+ i0.ɵɵconditionalCreate(8, FilterBuilderComponent_Conditional_13_Conditional_8_Template, 2, 1, "div", 25);
74
74
  i0.ɵɵelementEnd();
75
75
  } if (rf & 2) {
76
76
  const ctx_r0 = i0.ɵɵnextContext();
@@ -428,19 +428,21 @@ export class FilterBuilderComponent {
428
428
  return div.innerHTML;
429
429
  }
430
430
  static ɵfac = function FilterBuilderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || FilterBuilderComponent)(i0.ɵɵdirectiveInject(i1.DomSanitizer)); };
431
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FilterBuilderComponent, selectors: [["mj-filter-builder"]], inputs: { fields: "fields", filter: "filter", config: "config", disabled: "disabled", showSummary: "showSummary" }, outputs: { filterChange: "filterChange", apply: "apply", clear: "clear" }, features: [i0.ɵɵNgOnChangesFeature], decls: 14, vars: 13, consts: [[1, "filter-builder"], [1, "filter-header"], [1, "filter-summary"], [1, "filter-icon"], [1, "fa-solid", "fa-filter"], [1, "filter-count"], [1, "filter-count", "no-filters"], [1, "filter-actions"], ["type", "button", "title", "Clear all filters", 1, "action-btn", "clear-btn", 3, "disabled"], ["type", "button", "title", "Apply filters", 1, "action-btn", "apply-btn", 3, "disabled"], [1, "filter-content"], [3, "filterChange", "filter", "fields", "isRoot", "depth", "maxDepth", "disabled"], [1, "filter-tips"], [1, "filter-expression-summary", 3, "expanded"], ["type", "button", "title", "Clear all filters", 1, "action-btn", "clear-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-times"], ["type", "button", "title", "Apply filters", 1, "action-btn", "apply-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-check"], [1, "fa-solid", "fa-lightbulb"], [1, "filter-expression-summary"], ["type", "button", 1, "expression-toggle", 3, "click"], [1, "fa-solid"], [1, "fa-solid", "fa-code", "expression-icon"], [1, "expression-label"], [1, "expression-badge"], [1, "expression-content"], [1, "expression-text", 3, "innerHTML"]], template: function FilterBuilderComponent_Template(rf, ctx) { if (rf & 1) {
431
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FilterBuilderComponent, selectors: [["mj-filter-builder"]], inputs: { fields: "fields", filter: "filter", config: "config", disabled: "disabled", showSummary: "showSummary" }, outputs: { filterChange: "filterChange", apply: "apply", clear: "clear" }, standalone: false, features: [i0.ɵɵNgOnChangesFeature], decls: 14, vars: 13, consts: [[1, "filter-builder"], [1, "filter-header"], [1, "filter-summary"], [1, "filter-icon"], [1, "fa-solid", "fa-filter"], [1, "filter-count"], [1, "filter-count", "no-filters"], [1, "filter-actions"], ["type", "button", "title", "Clear all filters", 1, "action-btn", "clear-btn", 3, "disabled"], ["type", "button", "title", "Apply filters", 1, "action-btn", "apply-btn", 3, "disabled"], [1, "filter-content"], [3, "filterChange", "filter", "fields", "isRoot", "depth", "maxDepth", "disabled"], [1, "filter-tips"], [1, "filter-expression-summary", 3, "expanded"], ["type", "button", "title", "Clear all filters", 1, "action-btn", "clear-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-times"], ["type", "button", "title", "Apply filters", 1, "action-btn", "apply-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-check"], [1, "fa-solid", "fa-lightbulb"], [1, "filter-expression-summary"], ["type", "button", 1, "expression-toggle", 3, "click"], [1, "fa-solid"], [1, "fa-solid", "fa-code", "expression-icon"], [1, "expression-label"], [1, "expression-badge"], [1, "expression-content"], [1, "expression-text", 3, "innerHTML"]], template: function FilterBuilderComponent_Template(rf, ctx) { if (rf & 1) {
432
432
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "span", 3);
433
433
  i0.ɵɵelement(4, "i", 4);
434
434
  i0.ɵɵelementEnd();
435
- i0.ɵɵtemplate(5, FilterBuilderComponent_Conditional_5_Template, 2, 2, "span", 5)(6, FilterBuilderComponent_Conditional_6_Template, 2, 0, "span", 6);
435
+ i0.ɵɵconditionalCreate(5, FilterBuilderComponent_Conditional_5_Template, 2, 2, "span", 5)(6, FilterBuilderComponent_Conditional_6_Template, 2, 0, "span", 6);
436
436
  i0.ɵɵelementEnd();
437
437
  i0.ɵɵelementStart(7, "div", 7);
438
- i0.ɵɵtemplate(8, FilterBuilderComponent_Conditional_8_Template, 4, 1, "button", 8)(9, FilterBuilderComponent_Conditional_9_Template, 4, 1, "button", 9);
438
+ i0.ɵɵconditionalCreate(8, FilterBuilderComponent_Conditional_8_Template, 4, 1, "button", 8);
439
+ i0.ɵɵconditionalCreate(9, FilterBuilderComponent_Conditional_9_Template, 4, 1, "button", 9);
439
440
  i0.ɵɵelementEnd()();
440
441
  i0.ɵɵelementStart(10, "div", 10)(11, "mj-filter-group", 11);
441
442
  i0.ɵɵlistener("filterChange", function FilterBuilderComponent_Template_mj_filter_group_filterChange_11_listener($event) { return ctx.onFilterChange($event); });
442
443
  i0.ɵɵelementEnd()();
443
- i0.ɵɵtemplate(12, FilterBuilderComponent_Conditional_12_Template, 6, 0, "div", 12)(13, FilterBuilderComponent_Conditional_13_Template, 9, 8, "div", 13);
444
+ i0.ɵɵconditionalCreate(12, FilterBuilderComponent_Conditional_12_Template, 6, 0, "div", 12);
445
+ i0.ɵɵconditionalCreate(13, FilterBuilderComponent_Conditional_13_Template, 9, 8, "div", 13);
444
446
  i0.ɵɵelementEnd();
445
447
  } if (rf & 2) {
446
448
  i0.ɵɵclassProp("disabled", ctx.disabled);
@@ -460,7 +462,7 @@ export class FilterBuilderComponent {
460
462
  }
461
463
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FilterBuilderComponent, [{
462
464
  type: Component,
463
- args: [{ selector: 'mj-filter-builder', template: "<div class=\"filter-builder\" [class.disabled]=\"disabled\">\n <!-- Header with summary and actions -->\n <div class=\"filter-header\">\n <div class=\"filter-summary\">\n <span class=\"filter-icon\">\n <i class=\"fa-solid fa-filter\"></i>\n </span>\n @if (hasActiveFilters) {\n <span class=\"filter-count\">{{ getFilterCount() }} condition{{ getFilterCount() !== 1 ? 's' : '' }}</span>\n } @else {\n <span class=\"filter-count no-filters\">No filters applied</span>\n }\n </div>\n\n <div class=\"filter-actions\">\n @if (mergedConfig.showClearButton && hasActiveFilters) {\n <button\n type=\"button\"\n class=\"action-btn clear-btn\"\n (click)=\"onClear()\"\n [disabled]=\"disabled\"\n title=\"Clear all filters\">\n <i class=\"fa-solid fa-times\"></i>\n <span>Clear All</span>\n </button>\n }\n @if (mergedConfig.showApplyButton) {\n <button\n type=\"button\"\n class=\"action-btn apply-btn\"\n (click)=\"onApply()\"\n [disabled]=\"disabled\"\n title=\"Apply filters\">\n <i class=\"fa-solid fa-check\"></i>\n <span>Apply</span>\n </button>\n }\n </div>\n </div>\n\n <!-- Filter Builder Content -->\n <div class=\"filter-content\">\n <mj-filter-group\n [filter]=\"internalFilter\"\n [fields]=\"fields\"\n [isRoot]=\"true\"\n [depth]=\"0\"\n [maxDepth]=\"mergedConfig.maxDepth\"\n [disabled]=\"disabled\"\n (filterChange)=\"onFilterChange($event)\">\n </mj-filter-group>\n </div>\n\n <!-- Quick tips (shown when no filters) -->\n @if (!hasActiveFilters) {\n <div class=\"filter-tips\">\n <p>\n <i class=\"fa-solid fa-lightbulb\"></i>\n <strong>Tip:</strong> Click \"Add Condition\" to create filter rules.\n Use \"Add Group\" for complex AND/OR combinations.\n </p>\n </div>\n }\n\n <!-- Collapsible filter expression summary -->\n @if (showSummary && hasActiveFilters) {\n <div class=\"filter-expression-summary\" [class.expanded]=\"isSummaryExpanded\">\n <button type=\"button\" class=\"expression-toggle\" (click)=\"toggleSummary()\">\n <i class=\"fa-solid\" [class.fa-chevron-right]=\"!isSummaryExpanded\" [class.fa-chevron-down]=\"isSummaryExpanded\"></i>\n <i class=\"fa-solid fa-code expression-icon\"></i>\n <span class=\"expression-label\">View Filter Expression</span>\n <span class=\"expression-badge\">{{ getFilterCount() }}</span>\n </button>\n @if (isSummaryExpanded) {\n <div class=\"expression-content\">\n <pre class=\"expression-text\" [innerHTML]=\"getFilterSummaryHtml()\"></pre>\n </div>\n }\n </div>\n }\n</div>\n", styles: [".filter-builder {\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.filter-builder.disabled {\n opacity: 0.6;\n pointer-events: none;\n}\n\n/* Header */\n.filter-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding-bottom: 12px;\n border-bottom: 1px solid #eee;\n}\n\n.filter-summary {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.filter-icon {\n color: #1976d2;\n font-size: 14px;\n}\n\n.filter-count {\n font-size: 13px;\n color: #333;\n font-weight: 500;\n}\n\n.filter-count.no-filters {\n color: #999;\n font-weight: 400;\n}\n\n/* Actions */\n.filter-actions {\n display: flex;\n gap: 8px;\n}\n\n.action-btn {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 12px;\n border: none;\n border-radius: 6px;\n font-size: 13px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.action-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.action-btn i {\n font-size: 11px;\n}\n\n.clear-btn {\n background: #f5f5f5;\n color: #666;\n}\n\n.clear-btn:hover:not(:disabled) {\n background: #ffebee;\n color: #c62828;\n}\n\n.apply-btn {\n background: #1976d2;\n color: white;\n}\n\n.apply-btn:hover:not(:disabled) {\n background: #1565c0;\n}\n\n/* Content */\n.filter-content {\n min-height: 60px;\n}\n\n/* Tips */\n.filter-tips {\n padding: 12px;\n background: #f5f9ff;\n border-radius: 6px;\n border: 1px solid #e3edfa;\n}\n\n.filter-tips p {\n margin: 0;\n font-size: 13px;\n color: #666;\n display: flex;\n align-items: flex-start;\n gap: 8px;\n}\n\n.filter-tips i {\n color: #ffc107;\n margin-top: 2px;\n}\n\n.filter-tips strong {\n color: #333;\n}\n\n/* Collapsible Filter Expression Summary */\n.filter-expression-summary {\n background: #f8f9fa;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n margin-top: 8px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.filter-expression-summary.expanded {\n background: white;\n border-color: #d1d5db;\n}\n\n/* Toggle Button */\n.expression-toggle {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 12px 16px;\n border: none;\n background: transparent;\n cursor: pointer;\n font-size: 13px;\n font-weight: 500;\n color: #6b7280;\n text-align: left;\n transition: all 0.15s ease;\n}\n\n.expression-toggle:hover {\n background: rgba(0, 0, 0, 0.03);\n color: #374151;\n}\n\n.expression-toggle i:first-child {\n font-size: 10px;\n color: #9ca3af;\n width: 12px;\n transition: transform 0.2s ease;\n}\n\n.expression-icon {\n color: #6366f1;\n font-size: 13px;\n}\n\n.expression-label {\n flex: 1;\n}\n\n.expression-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 20px;\n height: 20px;\n padding: 0 6px;\n background: #e0e7ff;\n color: #4f46e5;\n border-radius: 10px;\n font-size: 11px;\n font-weight: 600;\n}\n\n/* Expression Content */\n.expression-content {\n padding: 0 16px 16px 16px;\n animation: slideDown 0.2s ease;\n}\n\n@keyframes slideDown {\n from {\n opacity: 0;\n transform: translateY(-8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.expression-text {\n font-family: 'SF Mono', 'Monaco', 'Menlo', 'Consolas', monospace;\n font-size: 13px;\n line-height: 1.8;\n color: #374151;\n padding: 16px;\n margin: 0;\n background: linear-gradient(135deg, #fafbfc 0%, #f3f4f6 100%);\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n overflow-x: auto;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n/* Syntax Highlighting */\n.expression-text .field-name {\n color: #0369a1;\n font-weight: 600;\n}\n\n.expression-text .operator {\n color: #6b7280;\n font-style: italic;\n}\n\n.expression-text .value {\n font-weight: 500;\n}\n\n.expression-text .value-string {\n color: #059669;\n}\n\n.expression-text .value-number {\n color: #7c3aed;\n}\n\n.expression-text .value-boolean {\n font-weight: 600;\n}\n\n.expression-text .value-true {\n color: #16a34a;\n}\n\n.expression-text .value-false {\n color: #dc2626;\n}\n\n.expression-text .value-date {\n color: #c2410c;\n font-weight: 500;\n}\n\n.expression-text .logic-keyword {\n display: inline-block;\n padding: 2px 8px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 0.5px;\n text-transform: uppercase;\n}\n\n.expression-text .logic-and {\n background: #dbeafe;\n color: #1d4ed8;\n}\n\n.expression-text .logic-or {\n background: #fef3c7;\n color: #b45309;\n}\n\n.expression-text .group-bracket {\n color: #9333ea;\n font-weight: 700;\n font-size: 15px;\n}\n\n.expression-text .no-filters {\n color: #9ca3af;\n font-style: italic;\n}\n\n/* Responsive */\n@media (max-width: 600px) {\n .filter-header {\n flex-direction: column;\n align-items: stretch;\n gap: 12px;\n }\n\n .filter-summary {\n justify-content: center;\n }\n\n .filter-actions {\n justify-content: center;\n }\n\n .expression-toggle {\n padding: 10px 12px;\n }\n\n .expression-content {\n padding: 0 12px 12px 12px;\n }\n\n .expression-text {\n font-size: 12px;\n padding: 12px;\n }\n}\n"] }]
465
+ args: [{ standalone: false, selector: 'mj-filter-builder', template: "<div class=\"filter-builder\" [class.disabled]=\"disabled\">\n <!-- Header with summary and actions -->\n <div class=\"filter-header\">\n <div class=\"filter-summary\">\n <span class=\"filter-icon\">\n <i class=\"fa-solid fa-filter\"></i>\n </span>\n @if (hasActiveFilters) {\n <span class=\"filter-count\">{{ getFilterCount() }} condition{{ getFilterCount() !== 1 ? 's' : '' }}</span>\n } @else {\n <span class=\"filter-count no-filters\">No filters applied</span>\n }\n </div>\n\n <div class=\"filter-actions\">\n @if (mergedConfig.showClearButton && hasActiveFilters) {\n <button\n type=\"button\"\n class=\"action-btn clear-btn\"\n (click)=\"onClear()\"\n [disabled]=\"disabled\"\n title=\"Clear all filters\">\n <i class=\"fa-solid fa-times\"></i>\n <span>Clear All</span>\n </button>\n }\n @if (mergedConfig.showApplyButton) {\n <button\n type=\"button\"\n class=\"action-btn apply-btn\"\n (click)=\"onApply()\"\n [disabled]=\"disabled\"\n title=\"Apply filters\">\n <i class=\"fa-solid fa-check\"></i>\n <span>Apply</span>\n </button>\n }\n </div>\n </div>\n\n <!-- Filter Builder Content -->\n <div class=\"filter-content\">\n <mj-filter-group\n [filter]=\"internalFilter\"\n [fields]=\"fields\"\n [isRoot]=\"true\"\n [depth]=\"0\"\n [maxDepth]=\"mergedConfig.maxDepth\"\n [disabled]=\"disabled\"\n (filterChange)=\"onFilterChange($event)\">\n </mj-filter-group>\n </div>\n\n <!-- Quick tips (shown when no filters) -->\n @if (!hasActiveFilters) {\n <div class=\"filter-tips\">\n <p>\n <i class=\"fa-solid fa-lightbulb\"></i>\n <strong>Tip:</strong> Click \"Add Condition\" to create filter rules.\n Use \"Add Group\" for complex AND/OR combinations.\n </p>\n </div>\n }\n\n <!-- Collapsible filter expression summary -->\n @if (showSummary && hasActiveFilters) {\n <div class=\"filter-expression-summary\" [class.expanded]=\"isSummaryExpanded\">\n <button type=\"button\" class=\"expression-toggle\" (click)=\"toggleSummary()\">\n <i class=\"fa-solid\" [class.fa-chevron-right]=\"!isSummaryExpanded\" [class.fa-chevron-down]=\"isSummaryExpanded\"></i>\n <i class=\"fa-solid fa-code expression-icon\"></i>\n <span class=\"expression-label\">View Filter Expression</span>\n <span class=\"expression-badge\">{{ getFilterCount() }}</span>\n </button>\n @if (isSummaryExpanded) {\n <div class=\"expression-content\">\n <pre class=\"expression-text\" [innerHTML]=\"getFilterSummaryHtml()\"></pre>\n </div>\n }\n </div>\n }\n</div>\n", styles: [".filter-builder {\n display: flex;\n flex-direction: column;\n gap: 16px;\n}\n\n.filter-builder.disabled {\n opacity: 0.6;\n pointer-events: none;\n}\n\n/* Header */\n.filter-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding-bottom: 12px;\n border-bottom: 1px solid #eee;\n}\n\n.filter-summary {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.filter-icon {\n color: #1976d2;\n font-size: 14px;\n}\n\n.filter-count {\n font-size: 13px;\n color: #333;\n font-weight: 500;\n}\n\n.filter-count.no-filters {\n color: #999;\n font-weight: 400;\n}\n\n/* Actions */\n.filter-actions {\n display: flex;\n gap: 8px;\n}\n\n.action-btn {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 6px 12px;\n border: none;\n border-radius: 6px;\n font-size: 13px;\n cursor: pointer;\n transition: all 0.15s ease;\n}\n\n.action-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.action-btn i {\n font-size: 11px;\n}\n\n.clear-btn {\n background: #f5f5f5;\n color: #666;\n}\n\n.clear-btn:hover:not(:disabled) {\n background: #ffebee;\n color: #c62828;\n}\n\n.apply-btn {\n background: #1976d2;\n color: white;\n}\n\n.apply-btn:hover:not(:disabled) {\n background: #1565c0;\n}\n\n/* Content */\n.filter-content {\n min-height: 60px;\n}\n\n/* Tips */\n.filter-tips {\n padding: 12px;\n background: #f5f9ff;\n border-radius: 6px;\n border: 1px solid #e3edfa;\n}\n\n.filter-tips p {\n margin: 0;\n font-size: 13px;\n color: #666;\n display: flex;\n align-items: flex-start;\n gap: 8px;\n}\n\n.filter-tips i {\n color: #ffc107;\n margin-top: 2px;\n}\n\n.filter-tips strong {\n color: #333;\n}\n\n/* Collapsible Filter Expression Summary */\n.filter-expression-summary {\n background: #f8f9fa;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n margin-top: 8px;\n overflow: hidden;\n transition: all 0.2s ease;\n}\n\n.filter-expression-summary.expanded {\n background: white;\n border-color: #d1d5db;\n}\n\n/* Toggle Button */\n.expression-toggle {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n padding: 12px 16px;\n border: none;\n background: transparent;\n cursor: pointer;\n font-size: 13px;\n font-weight: 500;\n color: #6b7280;\n text-align: left;\n transition: all 0.15s ease;\n}\n\n.expression-toggle:hover {\n background: rgba(0, 0, 0, 0.03);\n color: #374151;\n}\n\n.expression-toggle i:first-child {\n font-size: 10px;\n color: #9ca3af;\n width: 12px;\n transition: transform 0.2s ease;\n}\n\n.expression-icon {\n color: #6366f1;\n font-size: 13px;\n}\n\n.expression-label {\n flex: 1;\n}\n\n.expression-badge {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 20px;\n height: 20px;\n padding: 0 6px;\n background: #e0e7ff;\n color: #4f46e5;\n border-radius: 10px;\n font-size: 11px;\n font-weight: 600;\n}\n\n/* Expression Content */\n.expression-content {\n padding: 0 16px 16px 16px;\n animation: slideDown 0.2s ease;\n}\n\n@keyframes slideDown {\n from {\n opacity: 0;\n transform: translateY(-8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.expression-text {\n font-family: 'SF Mono', 'Monaco', 'Menlo', 'Consolas', monospace;\n font-size: 13px;\n line-height: 1.8;\n color: #374151;\n padding: 16px;\n margin: 0;\n background: linear-gradient(135deg, #fafbfc 0%, #f3f4f6 100%);\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n overflow-x: auto;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n/* Syntax Highlighting */\n.expression-text .field-name {\n color: #0369a1;\n font-weight: 600;\n}\n\n.expression-text .operator {\n color: #6b7280;\n font-style: italic;\n}\n\n.expression-text .value {\n font-weight: 500;\n}\n\n.expression-text .value-string {\n color: #059669;\n}\n\n.expression-text .value-number {\n color: #7c3aed;\n}\n\n.expression-text .value-boolean {\n font-weight: 600;\n}\n\n.expression-text .value-true {\n color: #16a34a;\n}\n\n.expression-text .value-false {\n color: #dc2626;\n}\n\n.expression-text .value-date {\n color: #c2410c;\n font-weight: 500;\n}\n\n.expression-text .logic-keyword {\n display: inline-block;\n padding: 2px 8px;\n border-radius: 4px;\n font-size: 11px;\n font-weight: 700;\n letter-spacing: 0.5px;\n text-transform: uppercase;\n}\n\n.expression-text .logic-and {\n background: #dbeafe;\n color: #1d4ed8;\n}\n\n.expression-text .logic-or {\n background: #fef3c7;\n color: #b45309;\n}\n\n.expression-text .group-bracket {\n color: #9333ea;\n font-weight: 700;\n font-size: 15px;\n}\n\n.expression-text .no-filters {\n color: #9ca3af;\n font-style: italic;\n}\n\n/* Responsive */\n@media (max-width: 600px) {\n .filter-header {\n flex-direction: column;\n align-items: stretch;\n gap: 12px;\n }\n\n .filter-summary {\n justify-content: center;\n }\n\n .filter-actions {\n justify-content: center;\n }\n\n .expression-toggle {\n padding: 10px 12px;\n }\n\n .expression-content {\n padding: 0 12px 12px 12px;\n }\n\n .expression-text {\n font-size: 12px;\n padding: 12px;\n }\n}\n"] }]
464
466
  }], () => [{ type: i1.DomSanitizer }], { fields: [{
465
467
  type: Input
466
468
  }], filter: [{
@@ -478,5 +480,5 @@ export class FilterBuilderComponent {
478
480
  }], clear: [{
479
481
  type: Output
480
482
  }] }); })();
481
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FilterBuilderComponent, { className: "FilterBuilderComponent", filePath: "src/lib/filter-builder/filter-builder.component.ts", lineNumber: 45 }); })();
483
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FilterBuilderComponent, { className: "FilterBuilderComponent", filePath: "src/lib/filter-builder/filter-builder.component.ts", lineNumber: 46 }); })();
482
484
  //# sourceMappingURL=filter-builder.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-builder.component.js","sourceRoot":"","sources":["../../../src/lib/filter-builder/filter-builder.component.ts","../../../src/lib/filter-builder/filter-builder.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-builder.component.js","sourceRoot":"","sources":["../../../src/lib/filter-builder/filter-builder.component.ts","../../../src/lib/filter-builder/filter-builder.component.html"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAoC,MAAM,eAAe,CAAC;AAEzG,OAAO,EAKL,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;;;;;ICDvB,+BAA2B;IAAA,YAAuE;IAAA,iBAAO;;;IAA9E,cAAuE;IAAvE,0GAAuE;;;IAElG,+BAAsC;IAAA,kCAAkB;IAAA,iBAAO;;;;IAM/D,kCAK4B;IAF1B,0LAAS,gBAAS,KAAC;IAGnB,wBAAiC;IACjC,4BAAM;IAAA,yBAAS;IACjB,AADiB,iBAAO,EACf;;;IAJP,0CAAqB;;;;IAOvB,kCAKwB;IAFtB,0LAAS,gBAAS,KAAC;IAGnB,wBAAiC;IACjC,4BAAM;IAAA,qBAAK;IACb,AADa,iBAAO,EACX;;;IAJP,0CAAqB;;;IAyBzB,AADF,+BAAyB,QACpB;IACD,wBAAqC;IACrC,8BAAQ;IAAA,oBAAI;IAAA,iBAAS;IAAC,oHAExB;IACF,AADE,iBAAI,EACA;;;IAaF,+BAAgC;IAC9B,0BAAwE;IAC1E,iBAAM;;;IADyB,cAAoC;IAApC,4EAAoC;;;;IARrE,AADF,+BAA4E,iBACA;IAA1B,2LAAS,sBAAe,KAAC;IAEvE,AADA,wBAAkH,YAClE;IAChD,gCAA+B;IAAA,sCAAsB;IAAA,iBAAO;IAC5D,gCAA+B;IAAA,YAAsB;IACvD,AADuD,iBAAO,EACrD;IACT,wGAAyB;IAK3B,iBAAM;;;IAZiC,oDAAoC;IAEnD,eAA6C;IAAC,AAA9C,6DAA6C,6CAA4C;IAG9E,eAAsB;IAAtB,6CAAsB;IAEvD,cAIC;IAJD,mDAIC;;ADlEP;;GAEG;AACH,MAAM,cAAc,GAAwB;IAC1C,QAAQ,EAAE,CAAC;IACX,WAAW,EAAE,IAAI;IACjB,eAAe,EAAE,IAAI;IACrB,eAAe,EAAE,KAAK;IACtB,aAAa,EAAE,IAAI;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AAOH,MAAM,OAAO,sBAAsB;IA6Db;IA5DpB;;OAEG;IACM,MAAM,GAAsB,EAAE,CAAC;IAExC;;OAEG;IACM,MAAM,GAAqC,IAAI,CAAC;IAEzD;;OAEG;IACM,MAAM,GAAiC,EAAE,CAAC;IAEnD;;OAEG;IACM,QAAQ,GAAY,KAAK,CAAC;IAEnC;;OAEG;IACM,WAAW,GAAY,KAAK,CAAC;IAEtC;;OAEG;IACI,iBAAiB,GAAY,KAAK,CAAC;IAE1C;;OAEG;IACO,YAAY,GAAG,IAAI,YAAY,EAA6B,CAAC;IAEvE;;OAEG;IACO,KAAK,GAAG,IAAI,YAAY,EAA6B,CAAC;IAEhE;;OAEG;IACO,KAAK,GAAG,IAAI,YAAY,EAAQ,CAAC;IAE3C;;OAEG;IACI,cAAc,GAA8B,iBAAiB,EAAE,CAAC;IAEvE;;OAEG;IACI,YAAY,GAAwB,EAAE,GAAG,cAAc,EAAE,CAAC;IAEjE;;OAEG;IACI,gBAAgB,GAAY,KAAK,CAAC;IAEzC,YAAoB,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;IAAG,CAAC;IAE/C,QAAQ;QACN,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,WAAW,CAAC,OAAsB;QAChC,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB;QACtB,IAAI,IAAI,CAAC,MAAM,IAAI,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,cAAc,GAAG,iBAAiB,EAAE,CAAC;QAC5C,CAAC;QACD,IAAI,CAAC,sBAAsB,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACK,WAAW;QACjB,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,cAAc,CAAC,MAAiC;QAC9C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;QAC7B,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAE9B,IAAI,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;YACpC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,CAAC,cAAc,GAAG,iBAAiB,EAAE,CAAC;QAC1C,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,MAAiC;QACpD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACxC,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,iFAAiF;gBACjF,MAAM,IAAI,GAAG,IAAwB,CAAC;gBACtC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,KAAK,EAAE,CAAC;gBACV,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,sBAAsB;QAC5B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,MAAiC;QACvD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,aAAa;QACX,IAAI,CAAC,iBAAiB,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,6EAA6E,CAAC,CAAC;QAC/H,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IAED;;;OAGG;IACc,MAAM,GAAG;QACxB,SAAS,EAAE,mCAAmC;QAC9C,QAAQ,EAAE,qCAAqC;QAC/C,WAAW,EAAE,mCAAmC;QAChD,WAAW,EAAE,mCAAmC;QAChD,SAAS,EAAE,mCAAmC;QAC9C,SAAS,EAAE,mCAAmC;QAC9C,UAAU,EAAE,mCAAmC;QAC/C,QAAQ,EAAE,6JAA6J;QACvK,OAAO,EAAE,6JAA6J;QACtK,YAAY,EAAE,oDAAoD;KACnE,CAAC;IAEF;;OAEG;IACK,sBAAsB,CAAC,MAAiC,EAAE,KAAa;QAC7E,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAElC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACxC,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;gBAClE,IAAI,YAAY,EAAE,CAAC;oBACjB,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,MAAM,CAAC,YAAY,eAAe,YAAY,KAAK,MAAM,gBAAgB,IAAI,CAAC,MAAM,CAAC,YAAY,YAAY,CAAC,CAAC;gBACjJ,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAwB,CAAC;gBACtC,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;gBACpD,IAAI,WAAW,EAAE,CAAC;oBAChB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;QACvF,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QACzD,MAAM,SAAS,GAAG,KAAK,MAAM,gBAAgB,UAAU,KAAK,UAAU,YAAY,MAAM,EAAE,CAAC;QAE3F,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,IAAsB;QACjD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,6BAA6B;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,KAAK,EAAE,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC;QAEnD,yBAAyB;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE3D,mBAAmB;QACnB,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEvE,2CAA2C;QAC3C,MAAM,SAAS,GAAG,gBAAgB,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC;QAChG,MAAM,YAAY,GAAG,gBAAgB,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,aAAa,SAAS,CAAC;QAErF,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,OAAO,GAAG,SAAS,IAAI,YAAY,EAAE,CAAC;QACxC,CAAC;QAED,OAAO,GAAG,SAAS,IAAI,YAAY,IAAI,cAAc,EAAE,CAAC;IAC1D,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,QAAgB;QAC1C,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,QAAgB;QACvC,MAAM,MAAM,GAA2B;YACrC,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,gBAAgB;YACvB,UAAU,EAAE,UAAU;YACtB,gBAAgB,EAAE,kBAAkB;YACpC,YAAY,EAAE,aAAa;YAC3B,UAAU,EAAE,WAAW;YACvB,QAAQ,EAAE,UAAU;YACpB,WAAW,EAAE,cAAc;YAC3B,SAAS,EAAE,UAAU;YACrB,YAAY,EAAE,cAAc;YAC5B,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,6BAA6B;YACpC,IAAI,EAAE,cAAc;YACpB,KAAK,EAAE,0BAA0B;SAClC,CAAC;QACF,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC;IACtC,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,KAAc,EAAE,QAAgB;QACtD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1C,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,4CAA4C;QAC5C,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,0BAA0B;QAC1B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE;gBACjD,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,OAAO;gBACd,GAAG,EAAE,SAAS;aACf,CAAC,CAAC;YACH,OAAO,gBAAgB,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,SAAS,CAAC;QACtE,CAAC;QAED,iBAAiB;QACjB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,gBAAgB,IAAI,CAAC,MAAM,CAAC,WAAW,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;QACvF,CAAC;QAED,kBAAkB;QAClB,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;YACzE,OAAO,gBAAgB,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;QACrE,CAAC;QAED,iBAAiB;QACjB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,gBAAgB,IAAI,CAAC,MAAM,CAAC,WAAW,KAAK,KAAK,SAAS,CAAC;QACpE,CAAC;QAED,sBAAsB;QACtB,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAkB,CAAC,OAAO,EAAE;gBAClD,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,OAAO;gBACd,GAAG,EAAE,SAAS;aACf,CAAC,CAAC;YACH,OAAO,gBAAgB,IAAI,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,SAAS,CAAC;QACtE,CAAC;QAED,UAAU;QACV,OAAO,mCAAmC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC;IACpF,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,KAAa;QACnC,6BAA6B;QAC7B,OAAO,sDAAsD,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,IAAY;QAC7B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC;QACvB,OAAO,GAAG,CAAC,SAAS,CAAC;IACvB,CAAC;gHA1WU,sBAAsB;6DAAtB,sBAAsB;YCzC7B,AADF,AADF,AAFF,8BAAwD,aAE3B,aACG,cACA;YACxB,uBAAkC;YACpC,iBAAO;YAGL,AAFF,yFAAwB,mEAEf;YAGX,iBAAM;YAEN,8BAA4B;YAC1B,2FAAwD;YAWxD,2FAAoC;YAYxC,AADE,iBAAM,EACF;YAIJ,AADF,gCAA4B,2BAQgB;YAAxC,iIAAgB,0BAAsB,IAAC;YAE3C,AADE,iBAAkB,EACd;YAGN,2FAAyB;YAWzB,2FAAuC;YAezC,iBAAM;;YAhFsB,wCAA2B;YAOjD,eAIC;YAJD,8CAIC;YAID,eAUC;YAVD,mFAUC;YACD,cAUC;YAVD,2DAUC;YAOD,eAAyB;YAKzB,AADA,AADA,AADA,AADA,AADA,2CAAyB,sBACR,gBACF,YACJ,uCACuB,0BACb;YAMzB,cAQC;YARD,iDAQC;YAGD,cAcC;YAdD,mEAcC;;;iFDlCU,sBAAsB;cANlC,SAAS;6BACI,KAAK,YACP,mBAAmB;;kBAQ5B,KAAK;;kBAKL,KAAK;;kBAKL,KAAK;;kBAKL,KAAK;;kBAKL,KAAK;;kBAUL,MAAM;;kBAKN,MAAM;;kBAKN,MAAM;;kFA5CI,sBAAsB"}
@@ -1 +1 @@
1
- {"version":3,"file":"filter-group.component.d.ts","sourceRoot":"","sources":["../../../src/lib/filter-group/filter-group.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAqB,MAAM,eAAe,CAAC;AAClG,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,eAAe,EACf,WAAW,EAGZ,MAAM,uBAAuB,CAAC;;AAE/B;;;;GAIG;AACH,qBAMa,oBAAqB,YAAW,MAAM;IACjD;;OAEG;IACM,MAAM,EAAG,yBAAyB,CAAC;IAE5C;;OAEG;IACM,MAAM,EAAE,eAAe,EAAE,CAAM;IAExC;;OAEG;IACM,MAAM,EAAE,OAAO,CAAS;IAEjC;;OAEG;IACM,KAAK,EAAE,MAAM,CAAK;IAE3B;;OAEG;IACM,QAAQ,EAAE,MAAM,CAAK;IAE9B;;OAEG;IACM,QAAQ,EAAE,OAAO,CAAS;IAEnC;;OAEG;IACO,YAAY,0CAAiD;IAEvE;;OAEG;IACO,MAAM,qBAA4B;IAE5C,QAAQ,IAAI,IAAI;IAOhB;;OAEG;IACH,WAAW,IAAI,IAAI;IAQnB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IASlC;;OAEG;IACH,OAAO,IAAI,IAAI;IAUf;;OAEG;IACH,QAAQ,IAAI,IAAI;IAehB;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,GAAG,IAAI;IAShE;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,yBAAyB,GAAG,IAAI;IAS3E;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAgBjC;;OAEG;IACH,QAAQ,IAAI,IAAI;IAIhB;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,gBAAgB,GAAG,yBAAyB,GAAG,OAAO;IAItE;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,yBAAyB,GAAG,gBAAgB;IAI9E;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,gBAAgB,GAAG,yBAAyB,GAAG,yBAAyB;IAIxF;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;yCA9LxB,oBAAoB;2CAApB,oBAAoB;CAiMhC"}
1
+ {"version":3,"file":"filter-group.component.d.ts","sourceRoot":"","sources":["../../../src/lib/filter-group/filter-group.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,YAAY,EAAE,MAAM,EAAqB,MAAM,eAAe,CAAC;AAClG,OAAO,EACL,yBAAyB,EACzB,gBAAgB,EAChB,eAAe,EACf,WAAW,EAGZ,MAAM,uBAAuB,CAAC;;AAE/B;;;;GAIG;AACH,qBAOa,oBAAqB,YAAW,MAAM;IACjD;;OAEG;IACM,MAAM,EAAG,yBAAyB,CAAC;IAE5C;;OAEG;IACM,MAAM,EAAE,eAAe,EAAE,CAAM;IAExC;;OAEG;IACM,MAAM,EAAE,OAAO,CAAS;IAEjC;;OAEG;IACM,KAAK,EAAE,MAAM,CAAK;IAE3B;;OAEG;IACM,QAAQ,EAAE,MAAM,CAAK;IAE9B;;OAEG;IACM,QAAQ,EAAE,OAAO,CAAS;IAEnC;;OAEG;IACO,YAAY,0CAAiD;IAEvE;;OAEG;IACO,MAAM,qBAA4B;IAE5C,QAAQ,IAAI,IAAI;IAOhB;;OAEG;IACH,WAAW,IAAI,IAAI;IAQnB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IASlC;;OAEG;IACH,OAAO,IAAI,IAAI;IAUf;;OAEG;IACH,QAAQ,IAAI,IAAI;IAehB;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,gBAAgB,GAAG,IAAI;IAShE;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,yBAAyB,GAAG,IAAI;IAS3E;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAgBjC;;OAEG;IACH,QAAQ,IAAI,IAAI;IAIhB;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,gBAAgB,GAAG,yBAAyB,GAAG,OAAO;IAItE;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,yBAAyB,GAAG,gBAAgB;IAI9E;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,gBAAgB,GAAG,yBAAyB,GAAG,yBAAyB;IAIxF;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;yCA9LxB,oBAAoB;2CAApB,oBAAoB;CAiMhC"}
@@ -61,7 +61,8 @@ function FilterGroupComponent_For_16_Conditional_3_Template(rf, ctx) { if (rf &
61
61
  } }
62
62
  function FilterGroupComponent_For_16_Template(rf, ctx) { if (rf & 1) {
63
63
  i0.ɵɵelementStart(0, "div", 11);
64
- i0.ɵɵtemplate(1, FilterGroupComponent_For_16_Conditional_1_Template, 6, 3, "div", 17)(2, FilterGroupComponent_For_16_Conditional_2_Template, 1, 6, "mj-filter-group", 18)(3, FilterGroupComponent_For_16_Conditional_3_Template, 1, 4, "mj-filter-rule", 19);
64
+ i0.ɵɵconditionalCreate(1, FilterGroupComponent_For_16_Conditional_1_Template, 6, 3, "div", 17);
65
+ i0.ɵɵconditionalCreate(2, FilterGroupComponent_For_16_Conditional_2_Template, 1, 6, "mj-filter-group", 18)(3, FilterGroupComponent_For_16_Conditional_3_Template, 1, 4, "mj-filter-rule", 19);
65
66
  i0.ɵɵelementEnd();
66
67
  } if (rf & 2) {
67
68
  const item_r6 = ctx.$implicit;
@@ -261,7 +262,7 @@ export class FilterGroupComponent {
261
262
  return index;
262
263
  }
263
264
  static ɵfac = function FilterGroupComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || FilterGroupComponent)(); };
264
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FilterGroupComponent, selectors: [["mj-filter-group"]], inputs: { filter: "filter", fields: "fields", isRoot: "isRoot", depth: "depth", maxDepth: "maxDepth", disabled: "disabled" }, outputs: { filterChange: "filterChange", delete: "delete" }, decls: 18, vars: 15, consts: [[1, "filter-group"], [1, "group-header"], [1, "logic-toggle"], ["type", "button", "title", "Match ALL conditions", 1, "logic-btn", 3, "click", "disabled"], ["type", "button", "title", "Match ANY condition", 1, "logic-btn", 3, "click", "disabled"], [1, "group-actions"], ["type", "button", "title", "Add filter condition", 1, "add-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-plus"], ["type", "button", "title", "Add nested group", 1, "add-btn", "add-group", 3, "disabled"], ["type", "button", "title", "Remove this group", 1, "delete-group-btn", 3, "disabled"], [1, "filters-container"], [1, "filter-item"], [1, "empty-state"], ["type", "button", "title", "Add nested group", 1, "add-btn", "add-group", 3, "click", "disabled"], [1, "fa-solid", "fa-layer-group"], ["type", "button", "title", "Remove this group", 1, "delete-group-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-trash"], [1, "logic-connector"], [3, "filter", "fields", "isRoot", "depth", "maxDepth", "disabled"], [3, "filter", "fields", "disabled", "showDelete"], [1, "connector-line"], [1, "connector-label"], [3, "filterChange", "delete", "filter", "fields", "isRoot", "depth", "maxDepth", "disabled"], [3, "filterChange", "delete", "filter", "fields", "disabled", "showDelete"], ["type", "button", 1, "add-btn", "primary", 3, "click", "disabled"]], template: function FilterGroupComponent_Template(rf, ctx) { if (rf & 1) {
265
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FilterGroupComponent, selectors: [["mj-filter-group"]], inputs: { filter: "filter", fields: "fields", isRoot: "isRoot", depth: "depth", maxDepth: "maxDepth", disabled: "disabled" }, outputs: { filterChange: "filterChange", delete: "delete" }, standalone: false, decls: 18, vars: 15, consts: [[1, "filter-group"], [1, "group-header"], [1, "logic-toggle"], ["type", "button", "title", "Match ALL conditions", 1, "logic-btn", 3, "click", "disabled"], ["type", "button", "title", "Match ANY condition", 1, "logic-btn", 3, "click", "disabled"], [1, "group-actions"], ["type", "button", "title", "Add filter condition", 1, "add-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-plus"], ["type", "button", "title", "Add nested group", 1, "add-btn", "add-group", 3, "disabled"], ["type", "button", "title", "Remove this group", 1, "delete-group-btn", 3, "disabled"], [1, "filters-container"], [1, "filter-item"], [1, "empty-state"], ["type", "button", "title", "Add nested group", 1, "add-btn", "add-group", 3, "click", "disabled"], [1, "fa-solid", "fa-layer-group"], ["type", "button", "title", "Remove this group", 1, "delete-group-btn", 3, "click", "disabled"], [1, "fa-solid", "fa-trash"], [1, "logic-connector"], [3, "filter", "fields", "isRoot", "depth", "maxDepth", "disabled"], [3, "filter", "fields", "disabled", "showDelete"], [1, "connector-line"], [1, "connector-label"], [3, "filterChange", "delete", "filter", "fields", "isRoot", "depth", "maxDepth", "disabled"], [3, "filterChange", "delete", "filter", "fields", "disabled", "showDelete"], ["type", "button", 1, "add-btn", "primary", 3, "click", "disabled"]], template: function FilterGroupComponent_Template(rf, ctx) { if (rf & 1) {
265
266
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "div", 2)(3, "button", 3);
266
267
  i0.ɵɵlistener("click", function FilterGroupComponent_Template_button_click_3_listener() { return ctx.setLogic("and"); });
267
268
  i0.ɵɵtext(4, " AND ");
@@ -276,12 +277,13 @@ export class FilterGroupComponent {
276
277
  i0.ɵɵelementStart(10, "span");
277
278
  i0.ɵɵtext(11, "Add Condition");
278
279
  i0.ɵɵelementEnd()();
279
- i0.ɵɵtemplate(12, FilterGroupComponent_Conditional_12_Template, 4, 1, "button", 8)(13, FilterGroupComponent_Conditional_13_Template, 2, 1, "button", 9);
280
+ i0.ɵɵconditionalCreate(12, FilterGroupComponent_Conditional_12_Template, 4, 1, "button", 8);
281
+ i0.ɵɵconditionalCreate(13, FilterGroupComponent_Conditional_13_Template, 2, 1, "button", 9);
280
282
  i0.ɵɵelementEnd()();
281
283
  i0.ɵɵelementStart(14, "div", 10);
282
284
  i0.ɵɵrepeaterCreate(15, FilterGroupComponent_For_16_Template, 4, 2, "div", 11, ctx.trackByIndex, true);
283
285
  i0.ɵɵelementEnd();
284
- i0.ɵɵtemplate(17, FilterGroupComponent_Conditional_17_Template, 7, 1, "div", 12);
286
+ i0.ɵɵconditionalCreate(17, FilterGroupComponent_Conditional_17_Template, 7, 1, "div", 12);
285
287
  i0.ɵɵelementEnd();
286
288
  } if (rf & 2) {
287
289
  i0.ɵɵclassProp("root", ctx.isRoot)("disabled", ctx.disabled);
@@ -306,7 +308,7 @@ export class FilterGroupComponent {
306
308
  }
307
309
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FilterGroupComponent, [{
308
310
  type: Component,
309
- args: [{ selector: 'mj-filter-group', encapsulation: ViewEncapsulation.None, template: "<div class=\"filter-group\" [class.root]=\"isRoot\" [class.disabled]=\"disabled\" [attr.data-depth]=\"depth\">\n <!-- Group Header -->\n <div class=\"group-header\">\n <div class=\"logic-toggle\">\n <button\n type=\"button\"\n class=\"logic-btn\"\n [class.active]=\"filter.logic === 'and'\"\n (click)=\"setLogic('and')\"\n [disabled]=\"disabled\"\n title=\"Match ALL conditions\">\n AND\n </button>\n <button\n type=\"button\"\n class=\"logic-btn\"\n [class.active]=\"filter.logic === 'or'\"\n (click)=\"setLogic('or')\"\n [disabled]=\"disabled\"\n title=\"Match ANY condition\">\n OR\n </button>\n </div>\n\n <div class=\"group-actions\">\n <button\n type=\"button\"\n class=\"add-btn\"\n (click)=\"addRule()\"\n [disabled]=\"disabled\"\n title=\"Add filter condition\">\n <i class=\"fa-solid fa-plus\"></i>\n <span>Add Condition</span>\n </button>\n @if (canAddGroup()) {\n <button\n type=\"button\"\n class=\"add-btn add-group\"\n (click)=\"addGroup()\"\n [disabled]=\"disabled\"\n title=\"Add nested group\">\n <i class=\"fa-solid fa-layer-group\"></i>\n <span>Add Group</span>\n </button>\n }\n @if (!isRoot) {\n <button\n type=\"button\"\n class=\"delete-group-btn\"\n (click)=\"onDelete()\"\n [disabled]=\"disabled\"\n title=\"Remove this group\">\n <i class=\"fa-solid fa-trash\"></i>\n </button>\n }\n </div>\n </div>\n\n <!-- Filters Container -->\n <div class=\"filters-container\">\n @for (item of filter.filters; track trackByIndex($index); let i = $index; let isLast = $last) {\n <div class=\"filter-item\">\n <!-- Logic connector between items -->\n @if (i > 0) {\n <div class=\"logic-connector\">\n <span class=\"connector-line\"></span>\n <span class=\"connector-label\">{{ filter.logic | uppercase }}</span>\n <span class=\"connector-line\"></span>\n </div>\n }\n\n @if (isGroup(item)) {\n <!-- Nested Group -->\n <mj-filter-group\n [filter]=\"asGroup(item)\"\n [fields]=\"fields\"\n [isRoot]=\"false\"\n [depth]=\"depth + 1\"\n [maxDepth]=\"maxDepth\"\n [disabled]=\"disabled\"\n (filterChange)=\"onGroupChange(i, $event)\"\n (delete)=\"deleteFilter(i)\">\n </mj-filter-group>\n } @else {\n <!-- Simple Rule -->\n <mj-filter-rule\n [filter]=\"asRule(item)\"\n [fields]=\"fields\"\n [disabled]=\"disabled\"\n [showDelete]=\"filter.filters.length > 1 || !isRoot\"\n (filterChange)=\"onRuleChange(i, $event)\"\n (delete)=\"deleteFilter(i)\">\n </mj-filter-rule>\n }\n </div>\n }\n </div>\n\n <!-- Empty State -->\n @if (!filter.filters || filter.filters.length === 0) {\n <div class=\"empty-state\">\n <p>No filter conditions defined.</p>\n <button\n type=\"button\"\n class=\"add-btn primary\"\n (click)=\"addRule()\"\n [disabled]=\"disabled\">\n <i class=\"fa-solid fa-plus\"></i>\n <span>Add your first condition</span>\n </button>\n </div>\n }\n</div>\n", styles: ["/* Scoped to mj-filter-group to prevent style leakage with ViewEncapsulation.None */\nmj-filter-group .filter-group {\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n padding: 12px;\n background: #fafafa;\n transition: all 0.15s ease;\n}\n\nmj-filter-group .filter-group.root {\n background: transparent;\n border: none;\n padding: 0;\n}\n\nmj-filter-group .filter-group:not(.root) {\n margin-left: 16px;\n border-left: 3px solid #1976d2;\n}\n\nmj-filter-group .filter-group[data-depth=\"1\"]:not(.root) {\n border-left-color: #7b1fa2;\n}\n\nmj-filter-group .filter-group[data-depth=\"2\"]:not(.root) {\n border-left-color: #388e3c;\n}\n\nmj-filter-group .filter-group[data-depth=\"3\"]:not(.root) {\n border-left-color: #f57c00;\n}\n\nmj-filter-group .filter-group.disabled {\n opacity: 0.6;\n pointer-events: none;\n}\n\n/* Group Header */\nmj-filter-group .group-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n margin-bottom: 12px;\n flex-wrap: wrap;\n}\n\n/* Logic Toggle */\nmj-filter-group .logic-toggle {\n display: flex;\n background: #f4f4f5;\n border-radius: 8px;\n padding: 3px;\n border: 1px solid #e5e7eb;\n}\n\nmj-filter-group .logic-btn {\n padding: 8px 20px;\n border: none;\n background: transparent;\n border-radius: 6px;\n font-size: 12px;\n font-weight: 600;\n letter-spacing: 0.5px;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #71717a;\n}\n\nmj-filter-group .logic-btn:hover:not(:disabled) {\n color: #3f3f46;\n background: rgba(255, 255, 255, 0.5);\n}\n\nmj-filter-group .logic-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\nmj-filter-group .logic-btn.active {\n background: white;\n color: #3b82f6;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n font-weight: 700;\n}\n\n/* Group Actions */\nmj-filter-group .group-actions {\n display: flex;\n gap: 8px;\n align-items: center;\n}\n\nmj-filter-group .add-btn {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 8px 14px;\n border: 1px dashed #d4d4d8;\n background: white;\n border-radius: 8px;\n font-size: 13px;\n font-weight: 500;\n color: #52525b;\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\nmj-filter-group .add-btn:hover:not(:disabled) {\n border-color: #3b82f6;\n color: #3b82f6;\n background: #eff6ff;\n}\n\nmj-filter-group .add-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\nmj-filter-group .add-btn.primary {\n border-style: solid;\n border-color: #3b82f6;\n background: #3b82f6;\n color: white;\n}\n\nmj-filter-group .add-btn.primary:hover:not(:disabled) {\n background: #2563eb;\n border-color: #2563eb;\n}\n\nmj-filter-group .add-btn i {\n font-size: 12px;\n}\n\nmj-filter-group .add-group {\n border-color: #a855f7;\n color: #a855f7;\n}\n\nmj-filter-group .add-group:hover:not(:disabled) {\n border-color: #9333ea;\n color: #9333ea;\n background: #faf5ff;\n}\n\nmj-filter-group .delete-group-btn {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border: none;\n background: transparent;\n border-radius: 8px;\n color: #a1a1aa;\n cursor: pointer;\n transition: all 0.2s ease;\n font-size: 14px;\n}\n\nmj-filter-group .delete-group-btn:hover:not(:disabled) {\n background: #fef2f2;\n color: #ef4444;\n}\n\nmj-filter-group .delete-group-btn:disabled {\n cursor: not-allowed;\n opacity: 0.3;\n}\n\n/* Filters Container */\nmj-filter-group .filters-container {\n display: flex;\n flex-direction: column;\n gap: 0;\n}\n\nmj-filter-group .filter-item {\n display: flex;\n flex-direction: column;\n}\n\n/* Logic Connector */\nmj-filter-group .logic-connector {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 4px 0;\n margin: 4px 0;\n}\n\nmj-filter-group .connector-line {\n flex: 1;\n height: 1px;\n background: #e0e0e0;\n}\n\nmj-filter-group .connector-label {\n font-size: 11px;\n font-weight: 600;\n color: #999;\n letter-spacing: 0.5px;\n}\n\n/* Empty State */\nmj-filter-group .empty-state {\n text-align: center;\n padding: 24px;\n color: #999;\n}\n\nmj-filter-group .empty-state p {\n margin: 0 0 12px 0;\n font-size: 14px;\n}\n\n/* Responsive */\n@media (max-width: 768px) {\n mj-filter-group .group-header {\n flex-direction: column;\n align-items: stretch;\n }\n\n mj-filter-group .logic-toggle {\n justify-content: center;\n }\n\n mj-filter-group .group-actions {\n justify-content: center;\n flex-wrap: wrap;\n }\n\n mj-filter-group .filter-group:not(.root) {\n margin-left: 8px;\n }\n}\n"] }]
311
+ args: [{ standalone: false, selector: 'mj-filter-group', encapsulation: ViewEncapsulation.None, template: "<div class=\"filter-group\" [class.root]=\"isRoot\" [class.disabled]=\"disabled\" [attr.data-depth]=\"depth\">\n <!-- Group Header -->\n <div class=\"group-header\">\n <div class=\"logic-toggle\">\n <button\n type=\"button\"\n class=\"logic-btn\"\n [class.active]=\"filter.logic === 'and'\"\n (click)=\"setLogic('and')\"\n [disabled]=\"disabled\"\n title=\"Match ALL conditions\">\n AND\n </button>\n <button\n type=\"button\"\n class=\"logic-btn\"\n [class.active]=\"filter.logic === 'or'\"\n (click)=\"setLogic('or')\"\n [disabled]=\"disabled\"\n title=\"Match ANY condition\">\n OR\n </button>\n </div>\n\n <div class=\"group-actions\">\n <button\n type=\"button\"\n class=\"add-btn\"\n (click)=\"addRule()\"\n [disabled]=\"disabled\"\n title=\"Add filter condition\">\n <i class=\"fa-solid fa-plus\"></i>\n <span>Add Condition</span>\n </button>\n @if (canAddGroup()) {\n <button\n type=\"button\"\n class=\"add-btn add-group\"\n (click)=\"addGroup()\"\n [disabled]=\"disabled\"\n title=\"Add nested group\">\n <i class=\"fa-solid fa-layer-group\"></i>\n <span>Add Group</span>\n </button>\n }\n @if (!isRoot) {\n <button\n type=\"button\"\n class=\"delete-group-btn\"\n (click)=\"onDelete()\"\n [disabled]=\"disabled\"\n title=\"Remove this group\">\n <i class=\"fa-solid fa-trash\"></i>\n </button>\n }\n </div>\n </div>\n\n <!-- Filters Container -->\n <div class=\"filters-container\">\n @for (item of filter.filters; track trackByIndex($index); let i = $index; let isLast = $last) {\n <div class=\"filter-item\">\n <!-- Logic connector between items -->\n @if (i > 0) {\n <div class=\"logic-connector\">\n <span class=\"connector-line\"></span>\n <span class=\"connector-label\">{{ filter.logic | uppercase }}</span>\n <span class=\"connector-line\"></span>\n </div>\n }\n\n @if (isGroup(item)) {\n <!-- Nested Group -->\n <mj-filter-group\n [filter]=\"asGroup(item)\"\n [fields]=\"fields\"\n [isRoot]=\"false\"\n [depth]=\"depth + 1\"\n [maxDepth]=\"maxDepth\"\n [disabled]=\"disabled\"\n (filterChange)=\"onGroupChange(i, $event)\"\n (delete)=\"deleteFilter(i)\">\n </mj-filter-group>\n } @else {\n <!-- Simple Rule -->\n <mj-filter-rule\n [filter]=\"asRule(item)\"\n [fields]=\"fields\"\n [disabled]=\"disabled\"\n [showDelete]=\"filter.filters.length > 1 || !isRoot\"\n (filterChange)=\"onRuleChange(i, $event)\"\n (delete)=\"deleteFilter(i)\">\n </mj-filter-rule>\n }\n </div>\n }\n </div>\n\n <!-- Empty State -->\n @if (!filter.filters || filter.filters.length === 0) {\n <div class=\"empty-state\">\n <p>No filter conditions defined.</p>\n <button\n type=\"button\"\n class=\"add-btn primary\"\n (click)=\"addRule()\"\n [disabled]=\"disabled\">\n <i class=\"fa-solid fa-plus\"></i>\n <span>Add your first condition</span>\n </button>\n </div>\n }\n</div>\n", styles: ["/* Scoped to mj-filter-group to prevent style leakage with ViewEncapsulation.None */\nmj-filter-group .filter-group {\n border: 1px solid #e0e0e0;\n border-radius: 8px;\n padding: 12px;\n background: #fafafa;\n transition: all 0.15s ease;\n}\n\nmj-filter-group .filter-group.root {\n background: transparent;\n border: none;\n padding: 0;\n}\n\nmj-filter-group .filter-group:not(.root) {\n margin-left: 16px;\n border-left: 3px solid #1976d2;\n}\n\nmj-filter-group .filter-group[data-depth=\"1\"]:not(.root) {\n border-left-color: #7b1fa2;\n}\n\nmj-filter-group .filter-group[data-depth=\"2\"]:not(.root) {\n border-left-color: #388e3c;\n}\n\nmj-filter-group .filter-group[data-depth=\"3\"]:not(.root) {\n border-left-color: #f57c00;\n}\n\nmj-filter-group .filter-group.disabled {\n opacity: 0.6;\n pointer-events: none;\n}\n\n/* Group Header */\nmj-filter-group .group-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 12px;\n margin-bottom: 12px;\n flex-wrap: wrap;\n}\n\n/* Logic Toggle */\nmj-filter-group .logic-toggle {\n display: flex;\n background: #f4f4f5;\n border-radius: 8px;\n padding: 3px;\n border: 1px solid #e5e7eb;\n}\n\nmj-filter-group .logic-btn {\n padding: 8px 20px;\n border: none;\n background: transparent;\n border-radius: 6px;\n font-size: 12px;\n font-weight: 600;\n letter-spacing: 0.5px;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #71717a;\n}\n\nmj-filter-group .logic-btn:hover:not(:disabled) {\n color: #3f3f46;\n background: rgba(255, 255, 255, 0.5);\n}\n\nmj-filter-group .logic-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\nmj-filter-group .logic-btn.active {\n background: white;\n color: #3b82f6;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n font-weight: 700;\n}\n\n/* Group Actions */\nmj-filter-group .group-actions {\n display: flex;\n gap: 8px;\n align-items: center;\n}\n\nmj-filter-group .add-btn {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 8px 14px;\n border: 1px dashed #d4d4d8;\n background: white;\n border-radius: 8px;\n font-size: 13px;\n font-weight: 500;\n color: #52525b;\n cursor: pointer;\n transition: all 0.2s ease;\n}\n\nmj-filter-group .add-btn:hover:not(:disabled) {\n border-color: #3b82f6;\n color: #3b82f6;\n background: #eff6ff;\n}\n\nmj-filter-group .add-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\nmj-filter-group .add-btn.primary {\n border-style: solid;\n border-color: #3b82f6;\n background: #3b82f6;\n color: white;\n}\n\nmj-filter-group .add-btn.primary:hover:not(:disabled) {\n background: #2563eb;\n border-color: #2563eb;\n}\n\nmj-filter-group .add-btn i {\n font-size: 12px;\n}\n\nmj-filter-group .add-group {\n border-color: #a855f7;\n color: #a855f7;\n}\n\nmj-filter-group .add-group:hover:not(:disabled) {\n border-color: #9333ea;\n color: #9333ea;\n background: #faf5ff;\n}\n\nmj-filter-group .delete-group-btn {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border: none;\n background: transparent;\n border-radius: 8px;\n color: #a1a1aa;\n cursor: pointer;\n transition: all 0.2s ease;\n font-size: 14px;\n}\n\nmj-filter-group .delete-group-btn:hover:not(:disabled) {\n background: #fef2f2;\n color: #ef4444;\n}\n\nmj-filter-group .delete-group-btn:disabled {\n cursor: not-allowed;\n opacity: 0.3;\n}\n\n/* Filters Container */\nmj-filter-group .filters-container {\n display: flex;\n flex-direction: column;\n gap: 0;\n}\n\nmj-filter-group .filter-item {\n display: flex;\n flex-direction: column;\n}\n\n/* Logic Connector */\nmj-filter-group .logic-connector {\n display: flex;\n align-items: center;\n gap: 8px;\n padding: 4px 0;\n margin: 4px 0;\n}\n\nmj-filter-group .connector-line {\n flex: 1;\n height: 1px;\n background: #e0e0e0;\n}\n\nmj-filter-group .connector-label {\n font-size: 11px;\n font-weight: 600;\n color: #999;\n letter-spacing: 0.5px;\n}\n\n/* Empty State */\nmj-filter-group .empty-state {\n text-align: center;\n padding: 24px;\n color: #999;\n}\n\nmj-filter-group .empty-state p {\n margin: 0 0 12px 0;\n font-size: 14px;\n}\n\n/* Responsive */\n@media (max-width: 768px) {\n mj-filter-group .group-header {\n flex-direction: column;\n align-items: stretch;\n }\n\n mj-filter-group .logic-toggle {\n justify-content: center;\n }\n\n mj-filter-group .group-actions {\n justify-content: center;\n flex-wrap: wrap;\n }\n\n mj-filter-group .filter-group:not(.root) {\n margin-left: 8px;\n }\n}\n"] }]
310
312
  }], null, { filter: [{
311
313
  type: Input
312
314
  }], fields: [{
@@ -324,5 +326,5 @@ export class FilterGroupComponent {
324
326
  }], delete: [{
325
327
  type: Output
326
328
  }] }); })();
327
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FilterGroupComponent, { className: "FilterGroupComponent", filePath: "src/lib/filter-group/filter-group.component.ts", lineNumber: 22 }); })();
329
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FilterGroupComponent, { className: "FilterGroupComponent", filePath: "src/lib/filter-group/filter-group.component.ts", lineNumber: 23 }); })();
328
330
  //# sourceMappingURL=filter-group.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-group.component.js","sourceRoot":"","sources":["../../../src/lib/filter-group/filter-group.component.ts","../../../src/lib/filter-group/filter-group.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-group.component.js","sourceRoot":"","sources":["../../../src/lib/filter-group/filter-group.component.ts","../../../src/lib/filter-group/filter-group.component.html"],"names":[],"mappings":"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"}
@@ -52,6 +52,9 @@ export declare class FilterRuleComponent implements OnInit, OnChanges {
52
52
  fieldHighlightIndex: number;
53
53
  operatorHighlightIndex: number;
54
54
  valueHighlightIndex: number;
55
+ fieldDropdownBtn: ElementRef<HTMLButtonElement>;
56
+ operatorDropdownBtn: ElementRef<HTMLButtonElement>;
57
+ valueDropdownBtn: ElementRef<HTMLButtonElement>;
55
58
  constructor(elementRef: ElementRef);
56
59
  /**
57
60
  * Close dropdowns when clicking outside the component
@@ -1 +1 @@
1
- {"version":3,"file":"filter-rule.component.d.ts","sourceRoot":"","sources":["../../../src/lib/filter-rule/filter-rule.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-rule.component.d.ts","sourceRoot":"","sources":["../../../src/lib/filter-rule/filter-rule.component.ts"],"names":[],"mappings":"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"}
@@ -1,182 +1,185 @@
1
- import { Component, Input, Output, EventEmitter, ViewEncapsulation, HostListener } from '@angular/core';
1
+ import { Component, Input, Output, EventEmitter, ViewEncapsulation, HostListener, ViewChild } from '@angular/core';
2
2
  import { getOperatorsForType, operatorRequiresValue } from '../types/operators';
3
3
  import * as i0 from "@angular/core";
4
+ const _c0 = ["fieldDropdownBtn"];
5
+ const _c1 = ["operatorDropdownBtn"];
6
+ const _c2 = ["valueDropdownBtn"];
4
7
  const _forTrack0 = ($index, $item) => $item.name;
5
8
  const _forTrack1 = ($index, $item) => $item.value;
6
- function FilterRuleComponent_Conditional_6_For_2_Template(rf, ctx) { if (rf & 1) {
7
- const _r1 = i0.ɵɵgetCurrentView();
8
- i0.ɵɵelementStart(0, "div", 11);
9
- i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_6_For_2_Template_div_click_0_listener() { const field_r2 = i0.ɵɵrestoreView(_r1).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.selectField(field_r2.name)); });
9
+ function FilterRuleComponent_Conditional_7_For_2_Template(rf, ctx) { if (rf & 1) {
10
+ const _r2 = i0.ɵɵgetCurrentView();
11
+ i0.ɵɵelementStart(0, "div", 14);
12
+ i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_7_For_2_Template_div_click_0_listener() { const field_r3 = i0.ɵɵrestoreView(_r2).$implicit; const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.selectField(field_r3.name)); });
10
13
  i0.ɵɵtext(1);
11
14
  i0.ɵɵelementEnd();
12
15
  } if (rf & 2) {
13
- const field_r2 = ctx.$implicit;
14
- const ɵ$index_15_r4 = ctx.$index;
15
- const ctx_r2 = i0.ɵɵnextContext(2);
16
- i0.ɵɵclassProp("selected", field_r2.name === ctx_r2.filter.field)("highlighted", ɵ$index_15_r4 === ctx_r2.fieldHighlightIndex);
16
+ const field_r3 = ctx.$implicit;
17
+ const ɵ$index_15_r5 = ctx.$index;
18
+ const ctx_r3 = i0.ɵɵnextContext(2);
19
+ i0.ɵɵclassProp("selected", field_r3.name === ctx_r3.filter.field)("highlighted", ɵ$index_15_r5 === ctx_r3.fieldHighlightIndex);
17
20
  i0.ɵɵadvance();
18
- i0.ɵɵtextInterpolate1(" ", field_r2.displayName, " ");
21
+ i0.ɵɵtextInterpolate1(" ", field_r3.displayName, " ");
19
22
  } }
20
- function FilterRuleComponent_Conditional_6_Conditional_3_Template(rf, ctx) { if (rf & 1) {
21
- i0.ɵɵelementStart(0, "div", 10);
23
+ function FilterRuleComponent_Conditional_7_Conditional_3_Template(rf, ctx) { if (rf & 1) {
24
+ i0.ɵɵelementStart(0, "div", 13);
22
25
  i0.ɵɵtext(1, "No fields available");
23
26
  i0.ɵɵelementEnd();
24
27
  } }
25
- function FilterRuleComponent_Conditional_6_Template(rf, ctx) { if (rf & 1) {
26
- i0.ɵɵelementStart(0, "div", 5);
27
- i0.ɵɵrepeaterCreate(1, FilterRuleComponent_Conditional_6_For_2_Template, 2, 5, "div", 9, _forTrack0);
28
- i0.ɵɵtemplate(3, FilterRuleComponent_Conditional_6_Conditional_3_Template, 2, 0, "div", 10);
28
+ function FilterRuleComponent_Conditional_7_Template(rf, ctx) { if (rf & 1) {
29
+ i0.ɵɵelementStart(0, "div", 8);
30
+ i0.ɵɵrepeaterCreate(1, FilterRuleComponent_Conditional_7_For_2_Template, 2, 5, "div", 12, _forTrack0);
31
+ i0.ɵɵconditionalCreate(3, FilterRuleComponent_Conditional_7_Conditional_3_Template, 2, 0, "div", 13);
29
32
  i0.ɵɵelementEnd();
30
33
  } if (rf & 2) {
31
- const ctx_r2 = i0.ɵɵnextContext();
34
+ const ctx_r3 = i0.ɵɵnextContext();
32
35
  i0.ɵɵadvance();
33
- i0.ɵɵrepeater(ctx_r2.fields);
36
+ i0.ɵɵrepeater(ctx_r3.fields);
34
37
  i0.ɵɵadvance(2);
35
- i0.ɵɵconditional(ctx_r2.fields.length === 0 ? 3 : -1);
38
+ i0.ɵɵconditional(ctx_r3.fields.length === 0 ? 3 : -1);
36
39
  } }
37
- function FilterRuleComponent_Conditional_12_For_2_Template(rf, ctx) { if (rf & 1) {
38
- const _r5 = i0.ɵɵgetCurrentView();
39
- i0.ɵɵelementStart(0, "div", 11);
40
- i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_12_For_2_Template_div_click_0_listener() { const op_r6 = i0.ɵɵrestoreView(_r5).$implicit; const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.selectOperator(op_r6.value)); });
40
+ function FilterRuleComponent_Conditional_14_For_2_Template(rf, ctx) { if (rf & 1) {
41
+ const _r6 = i0.ɵɵgetCurrentView();
42
+ i0.ɵɵelementStart(0, "div", 14);
43
+ i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_14_For_2_Template_div_click_0_listener() { const op_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.selectOperator(op_r7.value)); });
41
44
  i0.ɵɵtext(1);
42
45
  i0.ɵɵelementEnd();
43
46
  } if (rf & 2) {
44
- const op_r6 = ctx.$implicit;
45
- const ɵ$index_35_r7 = ctx.$index;
46
- const ctx_r2 = i0.ɵɵnextContext(2);
47
- i0.ɵɵclassProp("selected", op_r6.value === ctx_r2.filter.operator)("highlighted", ɵ$index_35_r7 === ctx_r2.operatorHighlightIndex);
47
+ const op_r7 = ctx.$implicit;
48
+ const ɵ$index_35_r8 = ctx.$index;
49
+ const ctx_r3 = i0.ɵɵnextContext(2);
50
+ i0.ɵɵclassProp("selected", op_r7.value === ctx_r3.filter.operator)("highlighted", ɵ$index_35_r8 === ctx_r3.operatorHighlightIndex);
48
51
  i0.ɵɵadvance();
49
- i0.ɵɵtextInterpolate1(" ", op_r6.label, " ");
52
+ i0.ɵɵtextInterpolate1(" ", op_r7.label, " ");
50
53
  } }
51
- function FilterRuleComponent_Conditional_12_Template(rf, ctx) { if (rf & 1) {
52
- i0.ɵɵelementStart(0, "div", 5);
53
- i0.ɵɵrepeaterCreate(1, FilterRuleComponent_Conditional_12_For_2_Template, 2, 5, "div", 9, _forTrack1);
54
+ function FilterRuleComponent_Conditional_14_Template(rf, ctx) { if (rf & 1) {
55
+ i0.ɵɵelementStart(0, "div", 8);
56
+ i0.ɵɵrepeaterCreate(1, FilterRuleComponent_Conditional_14_For_2_Template, 2, 5, "div", 12, _forTrack1);
54
57
  i0.ɵɵelementEnd();
55
58
  } if (rf & 2) {
56
- const ctx_r2 = i0.ɵɵnextContext();
59
+ const ctx_r3 = i0.ɵɵnextContext();
57
60
  i0.ɵɵadvance();
58
- i0.ɵɵrepeater(ctx_r2.availableOperators);
61
+ i0.ɵɵrepeater(ctx_r3.availableOperators);
59
62
  } }
60
- function FilterRuleComponent_Conditional_13_Conditional_0_Conditional_5_For_4_Template(rf, ctx) { if (rf & 1) {
61
- const _r10 = i0.ɵɵgetCurrentView();
62
- i0.ɵɵelementStart(0, "div", 11);
63
- i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_13_Conditional_0_Conditional_5_For_4_Template_div_click_0_listener() { const option_r11 = i0.ɵɵrestoreView(_r10).$implicit; const ctx_r2 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r2.selectValue(option_r11.value)); });
63
+ function FilterRuleComponent_Conditional_15_Conditional_0_Conditional_6_For_4_Template(rf, ctx) { if (rf & 1) {
64
+ const _r11 = i0.ɵɵgetCurrentView();
65
+ i0.ɵɵelementStart(0, "div", 14);
66
+ i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_15_Conditional_0_Conditional_6_For_4_Template_div_click_0_listener() { const option_r12 = i0.ɵɵrestoreView(_r11).$implicit; const ctx_r3 = i0.ɵɵnextContext(4); return i0.ɵɵresetView(ctx_r3.selectValueFromOption(option_r12.value)); });
64
67
  i0.ɵɵtext(1);
65
68
  i0.ɵɵelementEnd();
66
69
  } if (rf & 2) {
67
- const option_r11 = ctx.$implicit;
68
- const ɵ$index_56_r12 = ctx.$index;
69
- const ctx_r2 = i0.ɵɵnextContext(4);
70
- i0.ɵɵclassProp("selected", option_r11.value === ctx_r2.filter.value)("highlighted", ɵ$index_56_r12 + 1 === ctx_r2.valueHighlightIndex);
70
+ const option_r12 = ctx.$implicit;
71
+ const ɵ$index_56_r13 = ctx.$index;
72
+ const ctx_r3 = i0.ɵɵnextContext(4);
73
+ i0.ɵɵclassProp("selected", option_r12.value === ctx_r3.filter.value)("highlighted", ɵ$index_56_r13 + 1 === ctx_r3.valueHighlightIndex);
71
74
  i0.ɵɵadvance();
72
- i0.ɵɵtextInterpolate1(" ", option_r11.label, " ");
75
+ i0.ɵɵtextInterpolate1(" ", option_r12.label, " ");
73
76
  } }
74
- function FilterRuleComponent_Conditional_13_Conditional_0_Conditional_5_Template(rf, ctx) { if (rf & 1) {
75
- const _r9 = i0.ɵɵgetCurrentView();
76
- i0.ɵɵelementStart(0, "div", 5)(1, "div", 11);
77
- i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_13_Conditional_0_Conditional_5_Template_div_click_1_listener() { i0.ɵɵrestoreView(_r9); const ctx_r2 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r2.selectValue("")); });
77
+ function FilterRuleComponent_Conditional_15_Conditional_0_Conditional_6_Template(rf, ctx) { if (rf & 1) {
78
+ const _r10 = i0.ɵɵgetCurrentView();
79
+ i0.ɵɵelementStart(0, "div", 8)(1, "div", 14);
80
+ i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_15_Conditional_0_Conditional_6_Template_div_click_1_listener() { i0.ɵɵrestoreView(_r10); const ctx_r3 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r3.selectValue("")); });
78
81
  i0.ɵɵtext(2, " Select... ");
79
82
  i0.ɵɵelementEnd();
80
- i0.ɵɵrepeaterCreate(3, FilterRuleComponent_Conditional_13_Conditional_0_Conditional_5_For_4_Template, 2, 5, "div", 9, _forTrack1);
83
+ i0.ɵɵrepeaterCreate(3, FilterRuleComponent_Conditional_15_Conditional_0_Conditional_6_For_4_Template, 2, 5, "div", 12, _forTrack1);
81
84
  i0.ɵɵelementEnd();
82
85
  } if (rf & 2) {
83
- const ctx_r2 = i0.ɵɵnextContext(3);
86
+ const ctx_r3 = i0.ɵɵnextContext(3);
84
87
  i0.ɵɵadvance();
85
- i0.ɵɵclassProp("selected", !ctx_r2.filter.value)("highlighted", 0 === ctx_r2.valueHighlightIndex);
88
+ i0.ɵɵclassProp("selected", !ctx_r3.filter.value)("highlighted", 0 === ctx_r3.valueHighlightIndex);
86
89
  i0.ɵɵadvance(2);
87
- i0.ɵɵrepeater(ctx_r2.selectedField.valueList);
90
+ i0.ɵɵrepeater(ctx_r3.selectedField.valueList);
88
91
  } }
89
- function FilterRuleComponent_Conditional_13_Conditional_0_Template(rf, ctx) { if (rf & 1) {
90
- const _r8 = i0.ɵɵgetCurrentView();
91
- i0.ɵɵelementStart(0, "div", 18)(1, "button", 2);
92
- i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_13_Conditional_0_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.toggleValueDropdown()); })("keydown", function FilterRuleComponent_Conditional_13_Conditional_0_Template_button_keydown_1_listener($event) { i0.ɵɵrestoreView(_r8); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onValueKeydown($event)); });
93
- i0.ɵɵelementStart(2, "span", 3);
94
- i0.ɵɵtext(3);
92
+ function FilterRuleComponent_Conditional_15_Conditional_0_Template(rf, ctx) { if (rf & 1) {
93
+ const _r9 = i0.ɵɵgetCurrentView();
94
+ i0.ɵɵelementStart(0, "div", 21)(1, "button", 5, 2);
95
+ i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_15_Conditional_0_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r9); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.toggleValueDropdown()); })("keydown", function FilterRuleComponent_Conditional_15_Conditional_0_Template_button_keydown_1_listener($event) { i0.ɵɵrestoreView(_r9); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.onValueKeydown($event)); });
96
+ i0.ɵɵelementStart(3, "span", 6);
97
+ i0.ɵɵtext(4);
95
98
  i0.ɵɵelementEnd();
96
- i0.ɵɵelement(4, "i", 4);
99
+ i0.ɵɵelement(5, "i", 7);
97
100
  i0.ɵɵelementEnd();
98
- i0.ɵɵtemplate(5, FilterRuleComponent_Conditional_13_Conditional_0_Conditional_5_Template, 5, 4, "div", 5);
101
+ i0.ɵɵconditionalCreate(6, FilterRuleComponent_Conditional_15_Conditional_0_Conditional_6_Template, 5, 4, "div", 8);
99
102
  i0.ɵɵelementEnd();
100
103
  } if (rf & 2) {
101
- const ctx_r2 = i0.ɵɵnextContext(2);
102
- i0.ɵɵclassProp("open", ctx_r2.valueDropdownOpen)("disabled", ctx_r2.disabled);
104
+ const ctx_r3 = i0.ɵɵnextContext(2);
105
+ i0.ɵɵclassProp("open", ctx_r3.valueDropdownOpen)("disabled", ctx_r3.disabled);
103
106
  i0.ɵɵadvance();
104
- i0.ɵɵproperty("disabled", ctx_r2.disabled);
107
+ i0.ɵɵproperty("disabled", ctx_r3.disabled);
108
+ i0.ɵɵadvance(3);
109
+ i0.ɵɵtextInterpolate(ctx_r3.getSelectedValueLabel());
105
110
  i0.ɵɵadvance(2);
106
- i0.ɵɵtextInterpolate(ctx_r2.getSelectedValueLabel());
107
- i0.ɵɵadvance(2);
108
- i0.ɵɵconditional(ctx_r2.valueDropdownOpen ? 5 : -1);
111
+ i0.ɵɵconditional(ctx_r3.valueDropdownOpen ? 6 : -1);
109
112
  } }
110
- function FilterRuleComponent_Conditional_13_Conditional_1_Template(rf, ctx) { if (rf & 1) {
111
- const _r13 = i0.ɵɵgetCurrentView();
112
- i0.ɵɵelementStart(0, "input", 19);
113
- i0.ɵɵlistener("input", function FilterRuleComponent_Conditional_13_Conditional_1_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r13); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onValueChange($event.target.value)); });
113
+ function FilterRuleComponent_Conditional_15_Conditional_1_Template(rf, ctx) { if (rf & 1) {
114
+ const _r14 = i0.ɵɵgetCurrentView();
115
+ i0.ɵɵelementStart(0, "input", 22);
116
+ i0.ɵɵlistener("input", function FilterRuleComponent_Conditional_15_Conditional_1_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r14); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.onValueChange($event.target.value)); });
114
117
  i0.ɵɵelementEnd();
115
118
  } if (rf & 2) {
116
- const ctx_r2 = i0.ɵɵnextContext(2);
117
- i0.ɵɵproperty("value", ctx_r2.filter.value || "")("disabled", ctx_r2.disabled);
119
+ const ctx_r3 = i0.ɵɵnextContext(2);
120
+ i0.ɵɵproperty("value", ctx_r3.filter.value || "")("disabled", ctx_r3.disabled);
118
121
  } }
119
- function FilterRuleComponent_Conditional_13_Conditional_2_Template(rf, ctx) { if (rf & 1) {
120
- const _r14 = i0.ɵɵgetCurrentView();
121
- i0.ɵɵelementStart(0, "input", 20);
122
- i0.ɵɵlistener("input", function FilterRuleComponent_Conditional_13_Conditional_2_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r14); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onValueChange($event.target.valueAsNumber)); });
122
+ function FilterRuleComponent_Conditional_15_Conditional_2_Template(rf, ctx) { if (rf & 1) {
123
+ const _r15 = i0.ɵɵgetCurrentView();
124
+ i0.ɵɵelementStart(0, "input", 23);
125
+ i0.ɵɵlistener("input", function FilterRuleComponent_Conditional_15_Conditional_2_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r15); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.onValueChange($event.target.valueAsNumber)); });
123
126
  i0.ɵɵelementEnd();
124
127
  } if (rf & 2) {
125
- const ctx_r2 = i0.ɵɵnextContext(2);
126
- i0.ɵɵproperty("value", ctx_r2.filter.value)("disabled", ctx_r2.disabled);
128
+ const ctx_r3 = i0.ɵɵnextContext(2);
129
+ i0.ɵɵproperty("value", ctx_r3.filter.value)("disabled", ctx_r3.disabled);
127
130
  } }
128
- function FilterRuleComponent_Conditional_13_Conditional_3_Template(rf, ctx) { if (rf & 1) {
129
- const _r15 = i0.ɵɵgetCurrentView();
130
- i0.ɵɵelementStart(0, "div", 15)(1, "button", 21);
131
- i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_13_Conditional_3_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r15); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onBooleanChange(true)); });
131
+ function FilterRuleComponent_Conditional_15_Conditional_3_Template(rf, ctx) { if (rf & 1) {
132
+ const _r16 = i0.ɵɵgetCurrentView();
133
+ i0.ɵɵelementStart(0, "div", 18)(1, "button", 24);
134
+ i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_15_Conditional_3_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r16); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.onBooleanChange(true)); });
132
135
  i0.ɵɵtext(2, " True ");
133
136
  i0.ɵɵelementEnd();
134
- i0.ɵɵelementStart(3, "button", 22);
135
- i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_13_Conditional_3_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r15); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onBooleanChange(false)); });
137
+ i0.ɵɵelementStart(3, "button", 25);
138
+ i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_15_Conditional_3_Template_button_click_3_listener() { i0.ɵɵrestoreView(_r16); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.onBooleanChange(false)); });
136
139
  i0.ɵɵtext(4, " False ");
137
140
  i0.ɵɵelementEnd()();
138
141
  } if (rf & 2) {
139
- const ctx_r2 = i0.ɵɵnextContext(2);
142
+ const ctx_r3 = i0.ɵɵnextContext(2);
140
143
  i0.ɵɵadvance();
141
- i0.ɵɵclassProp("active", ctx_r2.filter.value === true);
142
- i0.ɵɵproperty("disabled", ctx_r2.disabled);
144
+ i0.ɵɵclassProp("active", ctx_r3.filter.value === true);
145
+ i0.ɵɵproperty("disabled", ctx_r3.disabled);
143
146
  i0.ɵɵadvance(2);
144
- i0.ɵɵclassProp("active", ctx_r2.filter.value === false);
145
- i0.ɵɵproperty("disabled", ctx_r2.disabled);
147
+ i0.ɵɵclassProp("active", ctx_r3.filter.value === false);
148
+ i0.ɵɵproperty("disabled", ctx_r3.disabled);
146
149
  } }
147
- function FilterRuleComponent_Conditional_13_Conditional_4_Template(rf, ctx) { if (rf & 1) {
148
- const _r16 = i0.ɵɵgetCurrentView();
149
- i0.ɵɵelementStart(0, "input", 23);
150
- i0.ɵɵlistener("change", function FilterRuleComponent_Conditional_13_Conditional_4_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r16); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onDateChange($event)); });
150
+ function FilterRuleComponent_Conditional_15_Conditional_4_Template(rf, ctx) { if (rf & 1) {
151
+ const _r17 = i0.ɵɵgetCurrentView();
152
+ i0.ɵɵelementStart(0, "input", 26);
153
+ i0.ɵɵlistener("change", function FilterRuleComponent_Conditional_15_Conditional_4_Template_input_change_0_listener($event) { i0.ɵɵrestoreView(_r17); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.onDateChange($event)); });
151
154
  i0.ɵɵelementEnd();
152
155
  } if (rf & 2) {
153
- const ctx_r2 = i0.ɵɵnextContext(2);
154
- i0.ɵɵproperty("value", ctx_r2.getDateInputValue())("disabled", ctx_r2.disabled);
156
+ const ctx_r3 = i0.ɵɵnextContext(2);
157
+ i0.ɵɵproperty("value", ctx_r3.getDateInputValue())("disabled", ctx_r3.disabled);
155
158
  } }
156
- function FilterRuleComponent_Conditional_13_Conditional_5_Template(rf, ctx) { if (rf & 1) {
157
- const _r17 = i0.ɵɵgetCurrentView();
158
- i0.ɵɵelementStart(0, "input", 24);
159
- i0.ɵɵlistener("input", function FilterRuleComponent_Conditional_13_Conditional_5_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r17); const ctx_r2 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r2.onValueChange($event.target.value)); });
159
+ function FilterRuleComponent_Conditional_15_Conditional_5_Template(rf, ctx) { if (rf & 1) {
160
+ const _r18 = i0.ɵɵgetCurrentView();
161
+ i0.ɵɵelementStart(0, "input", 27);
162
+ i0.ɵɵlistener("input", function FilterRuleComponent_Conditional_15_Conditional_5_Template_input_input_0_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r3 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r3.onValueChange($event.target.value)); });
160
163
  i0.ɵɵelementEnd();
161
164
  } if (rf & 2) {
162
- const ctx_r2 = i0.ɵɵnextContext(2);
163
- i0.ɵɵproperty("value", ctx_r2.filter.value || "")("disabled", ctx_r2.disabled);
165
+ const ctx_r3 = i0.ɵɵnextContext(2);
166
+ i0.ɵɵproperty("value", ctx_r3.filter.value || "")("disabled", ctx_r3.disabled);
164
167
  } }
165
- function FilterRuleComponent_Conditional_13_Template(rf, ctx) { if (rf & 1) {
166
- i0.ɵɵtemplate(0, FilterRuleComponent_Conditional_13_Conditional_0_Template, 6, 7, "div", 12)(1, FilterRuleComponent_Conditional_13_Conditional_1_Template, 1, 2, "input", 13)(2, FilterRuleComponent_Conditional_13_Conditional_2_Template, 1, 2, "input", 14)(3, FilterRuleComponent_Conditional_13_Conditional_3_Template, 5, 6, "div", 15)(4, FilterRuleComponent_Conditional_13_Conditional_4_Template, 1, 2, "input", 16)(5, FilterRuleComponent_Conditional_13_Conditional_5_Template, 1, 2, "input", 17);
168
+ function FilterRuleComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
169
+ i0.ɵɵconditionalCreate(0, FilterRuleComponent_Conditional_15_Conditional_0_Template, 7, 7, "div", 15)(1, FilterRuleComponent_Conditional_15_Conditional_1_Template, 1, 2, "input", 16)(2, FilterRuleComponent_Conditional_15_Conditional_2_Template, 1, 2, "input", 17)(3, FilterRuleComponent_Conditional_15_Conditional_3_Template, 5, 6, "div", 18)(4, FilterRuleComponent_Conditional_15_Conditional_4_Template, 1, 2, "input", 19)(5, FilterRuleComponent_Conditional_15_Conditional_5_Template, 1, 2, "input", 20);
167
170
  } if (rf & 2) {
168
- const ctx_r2 = i0.ɵɵnextContext();
169
- i0.ɵɵconditional(ctx_r2.selectedField.type === "string" && ctx_r2.hasValueList() ? 0 : ctx_r2.selectedField.type === "string" ? 1 : ctx_r2.selectedField.type === "number" ? 2 : ctx_r2.selectedField.type === "boolean" ? 3 : ctx_r2.selectedField.type === "date" ? 4 : ctx_r2.selectedField.type === "lookup" ? 5 : -1);
171
+ const ctx_r3 = i0.ɵɵnextContext();
172
+ i0.ɵɵconditional(ctx_r3.selectedField.type === "string" && ctx_r3.hasValueList() ? 0 : ctx_r3.selectedField.type === "string" ? 1 : ctx_r3.selectedField.type === "number" ? 2 : ctx_r3.selectedField.type === "boolean" ? 3 : ctx_r3.selectedField.type === "date" ? 4 : ctx_r3.selectedField.type === "lookup" ? 5 : -1);
170
173
  } }
171
- function FilterRuleComponent_Conditional_15_Template(rf, ctx) { if (rf & 1) {
172
- const _r18 = i0.ɵɵgetCurrentView();
173
- i0.ɵɵelementStart(0, "button", 25);
174
- i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_15_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r18); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.onDelete()); });
175
- i0.ɵɵelement(1, "i", 26);
174
+ function FilterRuleComponent_Conditional_17_Template(rf, ctx) { if (rf & 1) {
175
+ const _r19 = i0.ɵɵgetCurrentView();
176
+ i0.ɵɵelementStart(0, "button", 28);
177
+ i0.ɵɵlistener("click", function FilterRuleComponent_Conditional_17_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3.onDelete()); });
178
+ i0.ɵɵelement(1, "i", 29);
176
179
  i0.ɵɵelementEnd();
177
180
  } if (rf & 2) {
178
- const ctx_r2 = i0.ɵɵnextContext();
179
- i0.ɵɵproperty("disabled", ctx_r2.disabled);
181
+ const ctx_r3 = i0.ɵɵnextContext();
182
+ i0.ɵɵproperty("disabled", ctx_r3.disabled);
180
183
  } }
181
184
  /**
182
185
  * FilterRuleComponent - A single filter condition row
@@ -230,6 +233,10 @@ export class FilterRuleComponent {
230
233
  fieldHighlightIndex = -1;
231
234
  operatorHighlightIndex = -1;
232
235
  valueHighlightIndex = -1;
236
+ // ViewChild references for dropdown buttons (Safari focus fix)
237
+ fieldDropdownBtn;
238
+ operatorDropdownBtn;
239
+ valueDropdownBtn;
233
240
  constructor(elementRef) {
234
241
  this.elementRef = elementRef;
235
242
  }
@@ -274,6 +281,10 @@ export class FilterRuleComponent {
274
281
  const wasOpen = this.fieldDropdownOpen;
275
282
  this.closeAllDropdowns();
276
283
  this.fieldDropdownOpen = !wasOpen;
284
+ if (this.fieldDropdownOpen) {
285
+ // Ensure button retains focus for keyboard events (Safari fix)
286
+ setTimeout(() => this.fieldDropdownBtn?.nativeElement?.focus(), 0);
287
+ }
277
288
  }
278
289
  toggleOperatorDropdown() {
279
290
  if (this.disabled || !this.selectedField)
@@ -281,6 +292,10 @@ export class FilterRuleComponent {
281
292
  const wasOpen = this.operatorDropdownOpen;
282
293
  this.closeAllDropdowns();
283
294
  this.operatorDropdownOpen = !wasOpen;
295
+ if (this.operatorDropdownOpen) {
296
+ // Ensure button retains focus for keyboard events (Safari fix)
297
+ setTimeout(() => this.operatorDropdownBtn?.nativeElement?.focus(), 0);
298
+ }
284
299
  }
285
300
  toggleValueDropdown() {
286
301
  if (this.disabled)
@@ -288,6 +303,10 @@ export class FilterRuleComponent {
288
303
  const wasOpen = this.valueDropdownOpen;
289
304
  this.closeAllDropdowns();
290
305
  this.valueDropdownOpen = !wasOpen;
306
+ if (this.valueDropdownOpen) {
307
+ // Ensure button retains focus for keyboard events (Safari fix)
308
+ setTimeout(() => this.valueDropdownBtn?.nativeElement?.focus(), 0);
309
+ }
291
310
  }
292
311
  closeFieldDropdown() {
293
312
  this.fieldDropdownOpen = false;
@@ -610,30 +629,38 @@ export class FilterRuleComponent {
610
629
  return !!(this.selectedField?.valueList && this.selectedField.valueList.length > 0);
611
630
  }
612
631
  static ɵfac = function FilterRuleComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || FilterRuleComponent)(i0.ɵɵdirectiveInject(i0.ElementRef)); };
613
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FilterRuleComponent, selectors: [["mj-filter-rule"]], hostBindings: function FilterRuleComponent_HostBindings(rf, ctx) { if (rf & 1) {
614
- i0.ɵɵlistener("click", function FilterRuleComponent_click_HostBindingHandler($event) { return ctx.onDocumentClick($event); }, false, i0.ɵɵresolveDocument);
615
- } }, inputs: { filter: "filter", fields: "fields", disabled: "disabled", showDelete: "showDelete" }, outputs: { filterChange: "filterChange", delete: "delete" }, features: [i0.ɵɵNgOnChangesFeature], decls: 16, vars: 18, consts: [[1, "filter-rule"], [1, "custom-dropdown", "field-dropdown"], ["type", "button", 1, "dropdown-trigger", 3, "click", "keydown", "disabled"], [1, "dropdown-value"], [1, "fa-solid", "fa-chevron-down", "dropdown-arrow"], [1, "dropdown-menu"], [1, "custom-dropdown", "operator-dropdown"], [1, "rule-actions"], ["type", "button", "title", "Remove filter", 1, "action-btn", "delete", 3, "disabled"], [1, "dropdown-item", 3, "selected", "highlighted"], [1, "dropdown-empty"], [1, "dropdown-item", 3, "click"], [1, "custom-dropdown", "value-dropdown", 3, "open", "disabled"], ["type", "text", "placeholder", "Enter value...", 1, "value-input", 3, "value", "disabled"], ["type", "number", "placeholder", "Enter number...", 1, "value-input", 3, "value", "disabled"], [1, "value-toggle"], ["type", "date", 1, "value-input", "value-date", 3, "value", "disabled"], ["type", "text", "placeholder", "Enter ID...", 1, "value-input", 3, "value", "disabled"], [1, "custom-dropdown", "value-dropdown"], ["type", "text", "placeholder", "Enter value...", 1, "value-input", 3, "input", "value", "disabled"], ["type", "number", "placeholder", "Enter number...", 1, "value-input", 3, "input", "value", "disabled"], ["type", "button", 1, "toggle-btn", "true", 3, "click", "disabled"], ["type", "button", 1, "toggle-btn", "false", 3, "click", "disabled"], ["type", "date", 1, "value-input", "value-date", 3, "change", "value", "disabled"], ["type", "text", "placeholder", "Enter ID...", 1, "value-input", 3, "input", "value", "disabled"], ["type", "button", "title", "Remove filter", 1, "action-btn", "delete", 3, "click", "disabled"], [1, "fa-solid", "fa-times"]], template: function FilterRuleComponent_Template(rf, ctx) { if (rf & 1) {
616
- i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "button", 2);
617
- i0.ɵɵlistener("click", function FilterRuleComponent_Template_button_click_2_listener() { return ctx.toggleFieldDropdown(); })("keydown", function FilterRuleComponent_Template_button_keydown_2_listener($event) { return ctx.onFieldKeydown($event); });
618
- i0.ɵɵelementStart(3, "span", 3);
619
- i0.ɵɵtext(4);
632
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: FilterRuleComponent, selectors: [["mj-filter-rule"]], viewQuery: function FilterRuleComponent_Query(rf, ctx) { if (rf & 1) {
633
+ i0.ɵɵviewQuery(_c0, 5)(_c1, 5)(_c2, 5);
634
+ } if (rf & 2) {
635
+ let _t;
636
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.fieldDropdownBtn = _t.first);
637
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.operatorDropdownBtn = _t.first);
638
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.valueDropdownBtn = _t.first);
639
+ } }, hostBindings: function FilterRuleComponent_HostBindings(rf, ctx) { if (rf & 1) {
640
+ i0.ɵɵlistener("click", function FilterRuleComponent_click_HostBindingHandler($event) { return ctx.onDocumentClick($event); }, i0.ɵɵresolveDocument);
641
+ } }, inputs: { filter: "filter", fields: "fields", disabled: "disabled", showDelete: "showDelete" }, outputs: { filterChange: "filterChange", delete: "delete" }, standalone: false, features: [i0.ɵɵNgOnChangesFeature], decls: 18, vars: 18, consts: [["fieldDropdownBtn", ""], ["operatorDropdownBtn", ""], ["valueDropdownBtn", ""], [1, "filter-rule"], [1, "custom-dropdown", "field-dropdown"], ["type", "button", 1, "dropdown-trigger", 3, "click", "keydown", "disabled"], [1, "dropdown-value"], [1, "fa-solid", "fa-chevron-down", "dropdown-arrow"], [1, "dropdown-menu"], [1, "custom-dropdown", "operator-dropdown"], [1, "rule-actions"], ["type", "button", "title", "Remove filter", 1, "action-btn", "delete", 3, "disabled"], [1, "dropdown-item", 3, "selected", "highlighted"], [1, "dropdown-empty"], [1, "dropdown-item", 3, "click"], [1, "custom-dropdown", "value-dropdown", 3, "open", "disabled"], ["type", "text", "placeholder", "Enter value...", 1, "value-input", 3, "value", "disabled"], ["type", "number", "placeholder", "Enter number...", 1, "value-input", 3, "value", "disabled"], [1, "value-toggle"], ["type", "date", 1, "value-input", "value-date", 3, "value", "disabled"], ["type", "text", "placeholder", "Enter ID...", 1, "value-input", 3, "value", "disabled"], [1, "custom-dropdown", "value-dropdown"], ["type", "text", "placeholder", "Enter value...", 1, "value-input", 3, "input", "value", "disabled"], ["type", "number", "placeholder", "Enter number...", 1, "value-input", 3, "input", "value", "disabled"], ["type", "button", 1, "toggle-btn", "true", 3, "click", "disabled"], ["type", "button", 1, "toggle-btn", "false", 3, "click", "disabled"], ["type", "date", 1, "value-input", "value-date", 3, "change", "value", "disabled"], ["type", "text", "placeholder", "Enter ID...", 1, "value-input", 3, "input", "value", "disabled"], ["type", "button", "title", "Remove filter", 1, "action-btn", "delete", 3, "click", "disabled"], [1, "fa-solid", "fa-times"]], template: function FilterRuleComponent_Template(rf, ctx) { if (rf & 1) {
642
+ const _r1 = i0.ɵɵgetCurrentView();
643
+ i0.ɵɵelementStart(0, "div", 3)(1, "div", 4)(2, "button", 5, 0);
644
+ i0.ɵɵlistener("click", function FilterRuleComponent_Template_button_click_2_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleFieldDropdown()); })("keydown", function FilterRuleComponent_Template_button_keydown_2_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onFieldKeydown($event)); });
645
+ i0.ɵɵelementStart(4, "span", 6);
646
+ i0.ɵɵtext(5);
620
647
  i0.ɵɵelementEnd();
621
- i0.ɵɵelement(5, "i", 4);
648
+ i0.ɵɵelement(6, "i", 7);
622
649
  i0.ɵɵelementEnd();
623
- i0.ɵɵtemplate(6, FilterRuleComponent_Conditional_6_Template, 4, 1, "div", 5);
650
+ i0.ɵɵconditionalCreate(7, FilterRuleComponent_Conditional_7_Template, 4, 1, "div", 8);
624
651
  i0.ɵɵelementEnd();
625
- i0.ɵɵelementStart(7, "div", 6)(8, "button", 2);
626
- i0.ɵɵlistener("click", function FilterRuleComponent_Template_button_click_8_listener() { return ctx.toggleOperatorDropdown(); })("keydown", function FilterRuleComponent_Template_button_keydown_8_listener($event) { return ctx.onOperatorKeydown($event); });
627
- i0.ɵɵelementStart(9, "span", 3);
628
- i0.ɵɵtext(10);
652
+ i0.ɵɵelementStart(8, "div", 9)(9, "button", 5, 1);
653
+ i0.ɵɵlistener("click", function FilterRuleComponent_Template_button_click_9_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.toggleOperatorDropdown()); })("keydown", function FilterRuleComponent_Template_button_keydown_9_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onOperatorKeydown($event)); });
654
+ i0.ɵɵelementStart(11, "span", 6);
655
+ i0.ɵɵtext(12);
629
656
  i0.ɵɵelementEnd();
630
- i0.ɵɵelement(11, "i", 4);
657
+ i0.ɵɵelement(13, "i", 7);
631
658
  i0.ɵɵelementEnd();
632
- i0.ɵɵtemplate(12, FilterRuleComponent_Conditional_12_Template, 3, 0, "div", 5);
659
+ i0.ɵɵconditionalCreate(14, FilterRuleComponent_Conditional_14_Template, 3, 0, "div", 8);
633
660
  i0.ɵɵelementEnd();
634
- i0.ɵɵtemplate(13, FilterRuleComponent_Conditional_13_Template, 6, 1);
635
- i0.ɵɵelementStart(14, "div", 7);
636
- i0.ɵɵtemplate(15, FilterRuleComponent_Conditional_15_Template, 2, 1, "button", 8);
661
+ i0.ɵɵconditionalCreate(15, FilterRuleComponent_Conditional_15_Template, 6, 1);
662
+ i0.ɵɵelementStart(16, "div", 10);
663
+ i0.ɵɵconditionalCreate(17, FilterRuleComponent_Conditional_17_Template, 2, 1, "button", 11);
637
664
  i0.ɵɵelementEnd()();
638
665
  } if (rf & 2) {
639
666
  i0.ɵɵclassProp("disabled", ctx.disabled);
@@ -641,27 +668,27 @@ export class FilterRuleComponent {
641
668
  i0.ɵɵclassProp("open", ctx.fieldDropdownOpen)("disabled", ctx.disabled);
642
669
  i0.ɵɵadvance();
643
670
  i0.ɵɵproperty("disabled", ctx.disabled);
644
- i0.ɵɵadvance(2);
671
+ i0.ɵɵadvance(3);
645
672
  i0.ɵɵtextInterpolate(ctx.getSelectedFieldDisplayName());
646
673
  i0.ɵɵadvance(2);
647
- i0.ɵɵconditional(ctx.fieldDropdownOpen ? 6 : -1);
674
+ i0.ɵɵconditional(ctx.fieldDropdownOpen ? 7 : -1);
648
675
  i0.ɵɵadvance();
649
676
  i0.ɵɵclassProp("open", ctx.operatorDropdownOpen)("disabled", ctx.disabled || !ctx.selectedField);
650
677
  i0.ɵɵadvance();
651
678
  i0.ɵɵproperty("disabled", ctx.disabled || !ctx.selectedField);
652
- i0.ɵɵadvance(2);
679
+ i0.ɵɵadvance(3);
653
680
  i0.ɵɵtextInterpolate(ctx.getSelectedOperatorLabel());
654
681
  i0.ɵɵadvance(2);
655
- i0.ɵɵconditional(ctx.operatorDropdownOpen ? 12 : -1);
682
+ i0.ɵɵconditional(ctx.operatorDropdownOpen ? 14 : -1);
656
683
  i0.ɵɵadvance();
657
- i0.ɵɵconditional(ctx.requiresValue && ctx.selectedField ? 13 : -1);
684
+ i0.ɵɵconditional(ctx.requiresValue && ctx.selectedField ? 15 : -1);
658
685
  i0.ɵɵadvance(2);
659
- i0.ɵɵconditional(ctx.showDelete ? 15 : -1);
686
+ i0.ɵɵconditional(ctx.showDelete ? 17 : -1);
660
687
  } }, styles: ["/* Scoped to mj-filter-rule to prevent style leakage with ViewEncapsulation.None */\nmj-filter-rule .filter-rule {\n display: flex;\n align-items: center;\n gap: 10px;\n padding: 12px 16px;\n background: linear-gradient(to bottom, #ffffff, #fafafa);\n border: 1px solid #e5e7eb;\n border-radius: 10px;\n transition: all 0.2s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n}\n\nmj-filter-rule .filter-rule:hover {\n border-color: #d1d5db;\n background: linear-gradient(to bottom, #ffffff, #f5f5f5);\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);\n}\n\nmj-filter-rule .filter-rule.disabled {\n opacity: 0.6;\n pointer-events: none;\n box-shadow: none;\n}\n\n/* ========================================\n CUSTOM DROPDOWN STYLES\n ======================================== */\n\nmj-filter-rule .custom-dropdown {\n position: relative;\n min-width: 160px;\n}\n\nmj-filter-rule .custom-dropdown.field-dropdown {\n min-width: 180px;\n}\n\nmj-filter-rule .custom-dropdown.operator-dropdown {\n min-width: 160px;\n}\n\nmj-filter-rule .custom-dropdown.value-dropdown {\n min-width: 160px;\n flex: 1;\n}\n\nmj-filter-rule .custom-dropdown.disabled {\n opacity: 0.6;\n pointer-events: none;\n}\n\n/* Dropdown Trigger Button */\nmj-filter-rule .dropdown-trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 10px 14px;\n border: 1px solid #d4d4d8;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n background: white;\n color: #374151;\n cursor: pointer;\n transition: all 0.2s ease;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n text-align: left;\n}\n\nmj-filter-rule .dropdown-trigger:hover:not(:disabled) {\n border-color: #a1a1aa;\n background: #fafafa;\n}\n\nmj-filter-rule .dropdown-trigger:focus {\n outline: none;\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n background: white;\n}\n\nmj-filter-rule .dropdown-trigger:disabled {\n background-color: #f4f4f5;\n color: #a1a1aa;\n cursor: not-allowed;\n box-shadow: none;\n}\n\nmj-filter-rule .custom-dropdown.open .dropdown-trigger {\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n}\n\nmj-filter-rule .dropdown-value {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\nmj-filter-rule .dropdown-arrow {\n font-size: 10px;\n color: #6b7280;\n margin-left: 8px;\n transition: transform 0.2s ease;\n}\n\nmj-filter-rule .custom-dropdown.open .dropdown-arrow {\n transform: rotate(180deg);\n}\n\n/* Dropdown Menu */\nmj-filter-rule .dropdown-menu {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n right: 0;\n min-width: 100%;\n max-height: 280px;\n overflow-y: auto;\n background: white;\n border: 1px solid #e5e7eb;\n border-radius: 10px;\n box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.04);\n z-index: 9999;\n animation: dropdownFadeIn 0.15s ease;\n}\n\n@keyframes dropdownFadeIn {\n from {\n opacity: 0;\n transform: translateY(-8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n/* Dropdown Items */\nmj-filter-rule .dropdown-item {\n padding: 10px 14px;\n font-size: 14px;\n color: #374151;\n cursor: pointer;\n transition: all 0.15s ease;\n border-bottom: 1px solid #f3f4f6;\n}\n\nmj-filter-rule .dropdown-item:last-child {\n border-bottom: none;\n}\n\nmj-filter-rule .dropdown-item:hover,\nmj-filter-rule .dropdown-item.highlighted {\n background: #f0f9ff;\n color: #1d4ed8;\n}\n\nmj-filter-rule .dropdown-item.highlighted {\n outline: 2px solid #3b82f6;\n outline-offset: -2px;\n}\n\nmj-filter-rule .dropdown-item.selected {\n background: #eff6ff;\n color: #1d4ed8;\n font-weight: 600;\n}\n\nmj-filter-rule .dropdown-item.selected::before {\n content: '\\f00c';\n font-family: 'Font Awesome 6 Free';\n font-weight: 900;\n font-size: 10px;\n margin-right: 8px;\n color: #3b82f6;\n}\n\nmj-filter-rule .dropdown-empty {\n padding: 16px;\n text-align: center;\n color: #9ca3af;\n font-size: 13px;\n font-style: italic;\n}\n\n/* Scrollbar styling for dropdown */\nmj-filter-rule .dropdown-menu::-webkit-scrollbar {\n width: 6px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 3px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 3px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-thumb:hover {\n background: #a1a1a1;\n}\n\n/* ========================================\n VALUE INPUT STYLES\n ======================================== */\n\nmj-filter-rule .value-input {\n padding: 10px 14px;\n border: 1px solid #d4d4d8;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n background-color: white;\n color: #374151;\n transition: all 0.2s ease;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n flex: 1;\n min-width: 150px;\n}\n\nmj-filter-rule .value-input:hover:not(:disabled) {\n border-color: #a1a1aa;\n background-color: #fafafa;\n}\n\nmj-filter-rule .value-input:focus {\n outline: none;\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n background-color: white;\n}\n\nmj-filter-rule .value-input:disabled {\n background-color: #f4f4f5;\n color: #a1a1aa;\n cursor: not-allowed;\n box-shadow: none;\n}\n\nmj-filter-rule .value-input::placeholder {\n color: #9ca3af;\n font-weight: 400;\n}\n\nmj-filter-rule .value-date {\n min-width: 160px;\n}\n\n/* ========================================\n BOOLEAN TOGGLE STYLES\n ======================================== */\n\nmj-filter-rule .value-toggle {\n display: flex;\n background: #f4f4f5;\n border-radius: 8px;\n padding: 3px;\n border: 1px solid #e5e7eb;\n}\n\nmj-filter-rule .toggle-btn {\n padding: 8px 18px;\n border: none;\n background: transparent;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #71717a;\n}\n\nmj-filter-rule .toggle-btn:hover:not(:disabled) {\n color: #3f3f46;\n background: rgba(255, 255, 255, 0.5);\n}\n\nmj-filter-rule .toggle-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\nmj-filter-rule .toggle-btn.active {\n background: white;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n color: #18181b;\n}\n\nmj-filter-rule .toggle-btn.true.active {\n color: #16a34a;\n}\n\nmj-filter-rule .toggle-btn.false.active {\n color: #dc2626;\n}\n\n/* ========================================\n RULE ACTIONS\n ======================================== */\n\nmj-filter-rule .rule-actions {\n display: flex;\n gap: 4px;\n margin-left: auto;\n flex-shrink: 0;\n}\n\nmj-filter-rule .action-btn {\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n border-radius: 8px;\n cursor: pointer;\n color: #a1a1aa;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n}\n\nmj-filter-rule .action-btn:hover:not(:disabled) {\n background: #f4f4f5;\n color: #71717a;\n}\n\nmj-filter-rule .action-btn:disabled {\n cursor: not-allowed;\n opacity: 0.3;\n}\n\nmj-filter-rule .action-btn.delete:hover:not(:disabled) {\n background: #fef2f2;\n color: #ef4444;\n}\n\n/* ========================================\n RESPONSIVE\n ======================================== */\n\n@media (max-width: 768px) {\n mj-filter-rule .filter-rule {\n flex-wrap: wrap;\n }\n\n mj-filter-rule .custom-dropdown,\n mj-filter-rule .value-input {\n min-width: 100%;\n flex: 1 1 100%;\n }\n\n mj-filter-rule .custom-dropdown.field-dropdown,\n mj-filter-rule .custom-dropdown.operator-dropdown,\n mj-filter-rule .custom-dropdown.value-dropdown {\n min-width: 100%;\n }\n}\n"], encapsulation: 2 });
661
688
  }
662
689
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(FilterRuleComponent, [{
663
690
  type: Component,
664
- args: [{ selector: 'mj-filter-rule', encapsulation: ViewEncapsulation.None, template: "<div class=\"filter-rule\" [class.disabled]=\"disabled\">\n <!-- Field Selector - Custom Dropdown -->\n <div class=\"custom-dropdown field-dropdown\" [class.open]=\"fieldDropdownOpen\" [class.disabled]=\"disabled\">\n <button\n type=\"button\"\n class=\"dropdown-trigger\"\n (click)=\"toggleFieldDropdown()\"\n (keydown)=\"onFieldKeydown($event)\"\n [disabled]=\"disabled\">\n <span class=\"dropdown-value\">{{ getSelectedFieldDisplayName() }}</span>\n <i class=\"fa-solid fa-chevron-down dropdown-arrow\"></i>\n </button>\n @if (fieldDropdownOpen) {\n <div class=\"dropdown-menu\">\n @for (field of fields; track field.name; let i = $index) {\n <div\n class=\"dropdown-item\"\n [class.selected]=\"field.name === filter.field\"\n [class.highlighted]=\"i === fieldHighlightIndex\"\n (click)=\"selectField(field.name)\">\n {{ field.displayName }}\n </div>\n }\n @if (fields.length === 0) {\n <div class=\"dropdown-empty\">No fields available</div>\n }\n </div>\n }\n </div>\n\n <!-- Operator Selector - Custom Dropdown -->\n <div class=\"custom-dropdown operator-dropdown\" [class.open]=\"operatorDropdownOpen\" [class.disabled]=\"disabled || !selectedField\">\n <button\n type=\"button\"\n class=\"dropdown-trigger\"\n (click)=\"toggleOperatorDropdown()\"\n (keydown)=\"onOperatorKeydown($event)\"\n [disabled]=\"disabled || !selectedField\">\n <span class=\"dropdown-value\">{{ getSelectedOperatorLabel() }}</span>\n <i class=\"fa-solid fa-chevron-down dropdown-arrow\"></i>\n </button>\n @if (operatorDropdownOpen) {\n <div class=\"dropdown-menu\">\n @for (op of availableOperators; track op.value; let i = $index) {\n <div\n class=\"dropdown-item\"\n [class.selected]=\"op.value === filter.operator\"\n [class.highlighted]=\"i === operatorHighlightIndex\"\n (click)=\"selectOperator(op.value)\">\n {{ op.label }}\n </div>\n }\n </div>\n }\n </div>\n\n <!-- Value Editor - varies by field type -->\n @if (requiresValue && selectedField) {\n <!-- String with value list (custom dropdown) -->\n @if (selectedField.type === 'string' && hasValueList()) {\n <div class=\"custom-dropdown value-dropdown\" [class.open]=\"valueDropdownOpen\" [class.disabled]=\"disabled\">\n <button\n type=\"button\"\n class=\"dropdown-trigger\"\n (click)=\"toggleValueDropdown()\"\n (keydown)=\"onValueKeydown($event)\"\n [disabled]=\"disabled\">\n <span class=\"dropdown-value\">{{ getSelectedValueLabel() }}</span>\n <i class=\"fa-solid fa-chevron-down dropdown-arrow\"></i>\n </button>\n @if (valueDropdownOpen) {\n <div class=\"dropdown-menu\">\n <div\n class=\"dropdown-item\"\n [class.selected]=\"!filter.value\"\n [class.highlighted]=\"0 === valueHighlightIndex\"\n (click)=\"selectValue('')\">\n Select...\n </div>\n @for (option of selectedField.valueList; track option.value; let i = $index) {\n <div\n class=\"dropdown-item\"\n [class.selected]=\"option.value === filter.value\"\n [class.highlighted]=\"(i + 1) === valueHighlightIndex\"\n (click)=\"selectValue(option.value)\">\n {{ option.label }}\n </div>\n }\n </div>\n }\n </div>\n }\n <!-- String (text input) -->\n @else if (selectedField.type === 'string') {\n <input\n type=\"text\"\n class=\"value-input\"\n [value]=\"filter.value || ''\"\n (input)=\"onValueChange($any($event.target).value)\"\n [disabled]=\"disabled\"\n placeholder=\"Enter value...\">\n }\n <!-- Number -->\n @else if (selectedField.type === 'number') {\n <input\n type=\"number\"\n class=\"value-input\"\n [value]=\"filter.value\"\n (input)=\"onValueChange($any($event.target).valueAsNumber)\"\n [disabled]=\"disabled\"\n placeholder=\"Enter number...\">\n }\n <!-- Boolean -->\n @else if (selectedField.type === 'boolean') {\n <div class=\"value-toggle\">\n <button\n type=\"button\"\n class=\"toggle-btn true\"\n [class.active]=\"filter.value === true\"\n (click)=\"onBooleanChange(true)\"\n [disabled]=\"disabled\">\n True\n </button>\n <button\n type=\"button\"\n class=\"toggle-btn false\"\n [class.active]=\"filter.value === false\"\n (click)=\"onBooleanChange(false)\"\n [disabled]=\"disabled\">\n False\n </button>\n </div>\n }\n <!-- Date -->\n @else if (selectedField.type === 'date') {\n <input\n type=\"date\"\n class=\"value-input value-date\"\n [value]=\"getDateInputValue()\"\n (change)=\"onDateChange($event)\"\n [disabled]=\"disabled\">\n }\n <!-- Lookup (for now, simple text input - can be enhanced with record selector) -->\n @else if (selectedField.type === 'lookup') {\n <input\n type=\"text\"\n class=\"value-input\"\n [value]=\"filter.value || ''\"\n (input)=\"onValueChange($any($event.target).value)\"\n [disabled]=\"disabled\"\n placeholder=\"Enter ID...\">\n }\n }\n\n <!-- Actions -->\n <div class=\"rule-actions\">\n @if (showDelete) {\n <button\n type=\"button\"\n class=\"action-btn delete\"\n (click)=\"onDelete()\"\n [disabled]=\"disabled\"\n title=\"Remove filter\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n }\n </div>\n</div>\n", styles: ["/* Scoped to mj-filter-rule to prevent style leakage with ViewEncapsulation.None */\nmj-filter-rule .filter-rule {\n display: flex;\n align-items: center;\n gap: 10px;\n padding: 12px 16px;\n background: linear-gradient(to bottom, #ffffff, #fafafa);\n border: 1px solid #e5e7eb;\n border-radius: 10px;\n transition: all 0.2s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n}\n\nmj-filter-rule .filter-rule:hover {\n border-color: #d1d5db;\n background: linear-gradient(to bottom, #ffffff, #f5f5f5);\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);\n}\n\nmj-filter-rule .filter-rule.disabled {\n opacity: 0.6;\n pointer-events: none;\n box-shadow: none;\n}\n\n/* ========================================\n CUSTOM DROPDOWN STYLES\n ======================================== */\n\nmj-filter-rule .custom-dropdown {\n position: relative;\n min-width: 160px;\n}\n\nmj-filter-rule .custom-dropdown.field-dropdown {\n min-width: 180px;\n}\n\nmj-filter-rule .custom-dropdown.operator-dropdown {\n min-width: 160px;\n}\n\nmj-filter-rule .custom-dropdown.value-dropdown {\n min-width: 160px;\n flex: 1;\n}\n\nmj-filter-rule .custom-dropdown.disabled {\n opacity: 0.6;\n pointer-events: none;\n}\n\n/* Dropdown Trigger Button */\nmj-filter-rule .dropdown-trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 10px 14px;\n border: 1px solid #d4d4d8;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n background: white;\n color: #374151;\n cursor: pointer;\n transition: all 0.2s ease;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n text-align: left;\n}\n\nmj-filter-rule .dropdown-trigger:hover:not(:disabled) {\n border-color: #a1a1aa;\n background: #fafafa;\n}\n\nmj-filter-rule .dropdown-trigger:focus {\n outline: none;\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n background: white;\n}\n\nmj-filter-rule .dropdown-trigger:disabled {\n background-color: #f4f4f5;\n color: #a1a1aa;\n cursor: not-allowed;\n box-shadow: none;\n}\n\nmj-filter-rule .custom-dropdown.open .dropdown-trigger {\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n}\n\nmj-filter-rule .dropdown-value {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\nmj-filter-rule .dropdown-arrow {\n font-size: 10px;\n color: #6b7280;\n margin-left: 8px;\n transition: transform 0.2s ease;\n}\n\nmj-filter-rule .custom-dropdown.open .dropdown-arrow {\n transform: rotate(180deg);\n}\n\n/* Dropdown Menu */\nmj-filter-rule .dropdown-menu {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n right: 0;\n min-width: 100%;\n max-height: 280px;\n overflow-y: auto;\n background: white;\n border: 1px solid #e5e7eb;\n border-radius: 10px;\n box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.04);\n z-index: 9999;\n animation: dropdownFadeIn 0.15s ease;\n}\n\n@keyframes dropdownFadeIn {\n from {\n opacity: 0;\n transform: translateY(-8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n/* Dropdown Items */\nmj-filter-rule .dropdown-item {\n padding: 10px 14px;\n font-size: 14px;\n color: #374151;\n cursor: pointer;\n transition: all 0.15s ease;\n border-bottom: 1px solid #f3f4f6;\n}\n\nmj-filter-rule .dropdown-item:last-child {\n border-bottom: none;\n}\n\nmj-filter-rule .dropdown-item:hover,\nmj-filter-rule .dropdown-item.highlighted {\n background: #f0f9ff;\n color: #1d4ed8;\n}\n\nmj-filter-rule .dropdown-item.highlighted {\n outline: 2px solid #3b82f6;\n outline-offset: -2px;\n}\n\nmj-filter-rule .dropdown-item.selected {\n background: #eff6ff;\n color: #1d4ed8;\n font-weight: 600;\n}\n\nmj-filter-rule .dropdown-item.selected::before {\n content: '\\f00c';\n font-family: 'Font Awesome 6 Free';\n font-weight: 900;\n font-size: 10px;\n margin-right: 8px;\n color: #3b82f6;\n}\n\nmj-filter-rule .dropdown-empty {\n padding: 16px;\n text-align: center;\n color: #9ca3af;\n font-size: 13px;\n font-style: italic;\n}\n\n/* Scrollbar styling for dropdown */\nmj-filter-rule .dropdown-menu::-webkit-scrollbar {\n width: 6px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 3px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 3px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-thumb:hover {\n background: #a1a1a1;\n}\n\n/* ========================================\n VALUE INPUT STYLES\n ======================================== */\n\nmj-filter-rule .value-input {\n padding: 10px 14px;\n border: 1px solid #d4d4d8;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n background-color: white;\n color: #374151;\n transition: all 0.2s ease;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n flex: 1;\n min-width: 150px;\n}\n\nmj-filter-rule .value-input:hover:not(:disabled) {\n border-color: #a1a1aa;\n background-color: #fafafa;\n}\n\nmj-filter-rule .value-input:focus {\n outline: none;\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n background-color: white;\n}\n\nmj-filter-rule .value-input:disabled {\n background-color: #f4f4f5;\n color: #a1a1aa;\n cursor: not-allowed;\n box-shadow: none;\n}\n\nmj-filter-rule .value-input::placeholder {\n color: #9ca3af;\n font-weight: 400;\n}\n\nmj-filter-rule .value-date {\n min-width: 160px;\n}\n\n/* ========================================\n BOOLEAN TOGGLE STYLES\n ======================================== */\n\nmj-filter-rule .value-toggle {\n display: flex;\n background: #f4f4f5;\n border-radius: 8px;\n padding: 3px;\n border: 1px solid #e5e7eb;\n}\n\nmj-filter-rule .toggle-btn {\n padding: 8px 18px;\n border: none;\n background: transparent;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #71717a;\n}\n\nmj-filter-rule .toggle-btn:hover:not(:disabled) {\n color: #3f3f46;\n background: rgba(255, 255, 255, 0.5);\n}\n\nmj-filter-rule .toggle-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\nmj-filter-rule .toggle-btn.active {\n background: white;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n color: #18181b;\n}\n\nmj-filter-rule .toggle-btn.true.active {\n color: #16a34a;\n}\n\nmj-filter-rule .toggle-btn.false.active {\n color: #dc2626;\n}\n\n/* ========================================\n RULE ACTIONS\n ======================================== */\n\nmj-filter-rule .rule-actions {\n display: flex;\n gap: 4px;\n margin-left: auto;\n flex-shrink: 0;\n}\n\nmj-filter-rule .action-btn {\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n border-radius: 8px;\n cursor: pointer;\n color: #a1a1aa;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n}\n\nmj-filter-rule .action-btn:hover:not(:disabled) {\n background: #f4f4f5;\n color: #71717a;\n}\n\nmj-filter-rule .action-btn:disabled {\n cursor: not-allowed;\n opacity: 0.3;\n}\n\nmj-filter-rule .action-btn.delete:hover:not(:disabled) {\n background: #fef2f2;\n color: #ef4444;\n}\n\n/* ========================================\n RESPONSIVE\n ======================================== */\n\n@media (max-width: 768px) {\n mj-filter-rule .filter-rule {\n flex-wrap: wrap;\n }\n\n mj-filter-rule .custom-dropdown,\n mj-filter-rule .value-input {\n min-width: 100%;\n flex: 1 1 100%;\n }\n\n mj-filter-rule .custom-dropdown.field-dropdown,\n mj-filter-rule .custom-dropdown.operator-dropdown,\n mj-filter-rule .custom-dropdown.value-dropdown {\n min-width: 100%;\n }\n}\n"] }]
691
+ args: [{ standalone: false, selector: 'mj-filter-rule', encapsulation: ViewEncapsulation.None, template: "<div class=\"filter-rule\" [class.disabled]=\"disabled\">\n <!-- Field Selector - Custom Dropdown -->\n <div class=\"custom-dropdown field-dropdown\" [class.open]=\"fieldDropdownOpen\" [class.disabled]=\"disabled\">\n <button\n #fieldDropdownBtn\n type=\"button\"\n class=\"dropdown-trigger\"\n (click)=\"toggleFieldDropdown()\"\n (keydown)=\"onFieldKeydown($event)\"\n [disabled]=\"disabled\">\n <span class=\"dropdown-value\">{{ getSelectedFieldDisplayName() }}</span>\n <i class=\"fa-solid fa-chevron-down dropdown-arrow\"></i>\n </button>\n @if (fieldDropdownOpen) {\n <div class=\"dropdown-menu\">\n @for (field of fields; track field.name; let i = $index) {\n <div\n class=\"dropdown-item\"\n [class.selected]=\"field.name === filter.field\"\n [class.highlighted]=\"i === fieldHighlightIndex\"\n (click)=\"selectField(field.name)\">\n {{ field.displayName }}\n </div>\n }\n @if (fields.length === 0) {\n <div class=\"dropdown-empty\">No fields available</div>\n }\n </div>\n }\n </div>\n\n <!-- Operator Selector - Custom Dropdown -->\n <div class=\"custom-dropdown operator-dropdown\" [class.open]=\"operatorDropdownOpen\" [class.disabled]=\"disabled || !selectedField\">\n <button\n #operatorDropdownBtn\n type=\"button\"\n class=\"dropdown-trigger\"\n (click)=\"toggleOperatorDropdown()\"\n (keydown)=\"onOperatorKeydown($event)\"\n [disabled]=\"disabled || !selectedField\">\n <span class=\"dropdown-value\">{{ getSelectedOperatorLabel() }}</span>\n <i class=\"fa-solid fa-chevron-down dropdown-arrow\"></i>\n </button>\n @if (operatorDropdownOpen) {\n <div class=\"dropdown-menu\">\n @for (op of availableOperators; track op.value; let i = $index) {\n <div\n class=\"dropdown-item\"\n [class.selected]=\"op.value === filter.operator\"\n [class.highlighted]=\"i === operatorHighlightIndex\"\n (click)=\"selectOperator(op.value)\">\n {{ op.label }}\n </div>\n }\n </div>\n }\n </div>\n\n <!-- Value Editor - varies by field type -->\n @if (requiresValue && selectedField) {\n <!-- String with value list (custom dropdown) -->\n @if (selectedField.type === 'string' && hasValueList()) {\n <div class=\"custom-dropdown value-dropdown\" [class.open]=\"valueDropdownOpen\" [class.disabled]=\"disabled\">\n <button\n #valueDropdownBtn\n type=\"button\"\n class=\"dropdown-trigger\"\n (click)=\"toggleValueDropdown()\"\n (keydown)=\"onValueKeydown($event)\"\n [disabled]=\"disabled\">\n <span class=\"dropdown-value\">{{ getSelectedValueLabel() }}</span>\n <i class=\"fa-solid fa-chevron-down dropdown-arrow\"></i>\n </button>\n @if (valueDropdownOpen) {\n <div class=\"dropdown-menu\">\n <div\n class=\"dropdown-item\"\n [class.selected]=\"!filter.value\"\n [class.highlighted]=\"0 === valueHighlightIndex\"\n (click)=\"selectValue('')\">\n Select...\n </div>\n @for (option of selectedField.valueList; track option.value; let i = $index) {\n <div\n class=\"dropdown-item\"\n [class.selected]=\"option.value === filter.value\"\n [class.highlighted]=\"(i + 1) === valueHighlightIndex\"\n (click)=\"selectValueFromOption(option.value)\">\n {{ option.label }}\n </div>\n }\n </div>\n }\n </div>\n }\n <!-- String (text input) -->\n @else if (selectedField.type === 'string') {\n <input\n type=\"text\"\n class=\"value-input\"\n [value]=\"filter.value || ''\"\n (input)=\"onValueChange($any($event.target).value)\"\n [disabled]=\"disabled\"\n placeholder=\"Enter value...\">\n }\n <!-- Number -->\n @else if (selectedField.type === 'number') {\n <input\n type=\"number\"\n class=\"value-input\"\n [value]=\"filter.value\"\n (input)=\"onValueChange($any($event.target).valueAsNumber)\"\n [disabled]=\"disabled\"\n placeholder=\"Enter number...\">\n }\n <!-- Boolean -->\n @else if (selectedField.type === 'boolean') {\n <div class=\"value-toggle\">\n <button\n type=\"button\"\n class=\"toggle-btn true\"\n [class.active]=\"filter.value === true\"\n (click)=\"onBooleanChange(true)\"\n [disabled]=\"disabled\">\n True\n </button>\n <button\n type=\"button\"\n class=\"toggle-btn false\"\n [class.active]=\"filter.value === false\"\n (click)=\"onBooleanChange(false)\"\n [disabled]=\"disabled\">\n False\n </button>\n </div>\n }\n <!-- Date -->\n @else if (selectedField.type === 'date') {\n <input\n type=\"date\"\n class=\"value-input value-date\"\n [value]=\"getDateInputValue()\"\n (change)=\"onDateChange($event)\"\n [disabled]=\"disabled\">\n }\n <!-- Lookup (for now, simple text input - can be enhanced with record selector) -->\n @else if (selectedField.type === 'lookup') {\n <input\n type=\"text\"\n class=\"value-input\"\n [value]=\"filter.value || ''\"\n (input)=\"onValueChange($any($event.target).value)\"\n [disabled]=\"disabled\"\n placeholder=\"Enter ID...\">\n }\n }\n\n <!-- Actions -->\n <div class=\"rule-actions\">\n @if (showDelete) {\n <button\n type=\"button\"\n class=\"action-btn delete\"\n (click)=\"onDelete()\"\n [disabled]=\"disabled\"\n title=\"Remove filter\">\n <i class=\"fa-solid fa-times\"></i>\n </button>\n }\n </div>\n</div>\n", styles: ["/* Scoped to mj-filter-rule to prevent style leakage with ViewEncapsulation.None */\nmj-filter-rule .filter-rule {\n display: flex;\n align-items: center;\n gap: 10px;\n padding: 12px 16px;\n background: linear-gradient(to bottom, #ffffff, #fafafa);\n border: 1px solid #e5e7eb;\n border-radius: 10px;\n transition: all 0.2s ease;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);\n}\n\nmj-filter-rule .filter-rule:hover {\n border-color: #d1d5db;\n background: linear-gradient(to bottom, #ffffff, #f5f5f5);\n box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);\n}\n\nmj-filter-rule .filter-rule.disabled {\n opacity: 0.6;\n pointer-events: none;\n box-shadow: none;\n}\n\n/* ========================================\n CUSTOM DROPDOWN STYLES\n ======================================== */\n\nmj-filter-rule .custom-dropdown {\n position: relative;\n min-width: 160px;\n}\n\nmj-filter-rule .custom-dropdown.field-dropdown {\n min-width: 180px;\n}\n\nmj-filter-rule .custom-dropdown.operator-dropdown {\n min-width: 160px;\n}\n\nmj-filter-rule .custom-dropdown.value-dropdown {\n min-width: 160px;\n flex: 1;\n}\n\nmj-filter-rule .custom-dropdown.disabled {\n opacity: 0.6;\n pointer-events: none;\n}\n\n/* Dropdown Trigger Button */\nmj-filter-rule .dropdown-trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n padding: 10px 14px;\n border: 1px solid #d4d4d8;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n background: white;\n color: #374151;\n cursor: pointer;\n transition: all 0.2s ease;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n text-align: left;\n}\n\nmj-filter-rule .dropdown-trigger:hover:not(:disabled) {\n border-color: #a1a1aa;\n background: #fafafa;\n}\n\nmj-filter-rule .dropdown-trigger:focus {\n outline: none;\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n background: white;\n}\n\nmj-filter-rule .dropdown-trigger:disabled {\n background-color: #f4f4f5;\n color: #a1a1aa;\n cursor: not-allowed;\n box-shadow: none;\n}\n\nmj-filter-rule .custom-dropdown.open .dropdown-trigger {\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n}\n\nmj-filter-rule .dropdown-value {\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\nmj-filter-rule .dropdown-arrow {\n font-size: 10px;\n color: #6b7280;\n margin-left: 8px;\n transition: transform 0.2s ease;\n}\n\nmj-filter-rule .custom-dropdown.open .dropdown-arrow {\n transform: rotate(180deg);\n}\n\n/* Dropdown Menu */\nmj-filter-rule .dropdown-menu {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n right: 0;\n min-width: 100%;\n max-height: 280px;\n overflow-y: auto;\n background: white;\n border: 1px solid #e5e7eb;\n border-radius: 10px;\n box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.04);\n z-index: 9999;\n animation: dropdownFadeIn 0.15s ease;\n}\n\n@keyframes dropdownFadeIn {\n from {\n opacity: 0;\n transform: translateY(-8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n/* Dropdown Items */\nmj-filter-rule .dropdown-item {\n padding: 10px 14px;\n font-size: 14px;\n color: #374151;\n cursor: pointer;\n transition: all 0.15s ease;\n border-bottom: 1px solid #f3f4f6;\n}\n\nmj-filter-rule .dropdown-item:last-child {\n border-bottom: none;\n}\n\nmj-filter-rule .dropdown-item:hover,\nmj-filter-rule .dropdown-item.highlighted {\n background: #f0f9ff;\n color: #1d4ed8;\n}\n\nmj-filter-rule .dropdown-item.highlighted {\n outline: 2px solid #3b82f6;\n outline-offset: -2px;\n}\n\nmj-filter-rule .dropdown-item.selected {\n background: #eff6ff;\n color: #1d4ed8;\n font-weight: 600;\n}\n\nmj-filter-rule .dropdown-item.selected::before {\n content: '\\f00c';\n font-family: 'Font Awesome 6 Free';\n font-weight: 900;\n font-size: 10px;\n margin-right: 8px;\n color: #3b82f6;\n}\n\nmj-filter-rule .dropdown-empty {\n padding: 16px;\n text-align: center;\n color: #9ca3af;\n font-size: 13px;\n font-style: italic;\n}\n\n/* Scrollbar styling for dropdown */\nmj-filter-rule .dropdown-menu::-webkit-scrollbar {\n width: 6px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 3px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 3px;\n}\n\nmj-filter-rule .dropdown-menu::-webkit-scrollbar-thumb:hover {\n background: #a1a1a1;\n}\n\n/* ========================================\n VALUE INPUT STYLES\n ======================================== */\n\nmj-filter-rule .value-input {\n padding: 10px 14px;\n border: 1px solid #d4d4d8;\n border-radius: 8px;\n font-size: 14px;\n font-weight: 500;\n background-color: white;\n color: #374151;\n transition: all 0.2s ease;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);\n flex: 1;\n min-width: 150px;\n}\n\nmj-filter-rule .value-input:hover:not(:disabled) {\n border-color: #a1a1aa;\n background-color: #fafafa;\n}\n\nmj-filter-rule .value-input:focus {\n outline: none;\n border-color: #3b82f6;\n box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15);\n background-color: white;\n}\n\nmj-filter-rule .value-input:disabled {\n background-color: #f4f4f5;\n color: #a1a1aa;\n cursor: not-allowed;\n box-shadow: none;\n}\n\nmj-filter-rule .value-input::placeholder {\n color: #9ca3af;\n font-weight: 400;\n}\n\nmj-filter-rule .value-date {\n min-width: 160px;\n}\n\n/* ========================================\n BOOLEAN TOGGLE STYLES\n ======================================== */\n\nmj-filter-rule .value-toggle {\n display: flex;\n background: #f4f4f5;\n border-radius: 8px;\n padding: 3px;\n border: 1px solid #e5e7eb;\n}\n\nmj-filter-rule .toggle-btn {\n padding: 8px 18px;\n border: none;\n background: transparent;\n border-radius: 6px;\n font-size: 13px;\n font-weight: 500;\n cursor: pointer;\n transition: all 0.2s ease;\n color: #71717a;\n}\n\nmj-filter-rule .toggle-btn:hover:not(:disabled) {\n color: #3f3f46;\n background: rgba(255, 255, 255, 0.5);\n}\n\nmj-filter-rule .toggle-btn:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\nmj-filter-rule .toggle-btn.active {\n background: white;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);\n color: #18181b;\n}\n\nmj-filter-rule .toggle-btn.true.active {\n color: #16a34a;\n}\n\nmj-filter-rule .toggle-btn.false.active {\n color: #dc2626;\n}\n\n/* ========================================\n RULE ACTIONS\n ======================================== */\n\nmj-filter-rule .rule-actions {\n display: flex;\n gap: 4px;\n margin-left: auto;\n flex-shrink: 0;\n}\n\nmj-filter-rule .action-btn {\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n border-radius: 8px;\n cursor: pointer;\n color: #a1a1aa;\n transition: all 0.2s ease;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n}\n\nmj-filter-rule .action-btn:hover:not(:disabled) {\n background: #f4f4f5;\n color: #71717a;\n}\n\nmj-filter-rule .action-btn:disabled {\n cursor: not-allowed;\n opacity: 0.3;\n}\n\nmj-filter-rule .action-btn.delete:hover:not(:disabled) {\n background: #fef2f2;\n color: #ef4444;\n}\n\n/* ========================================\n RESPONSIVE\n ======================================== */\n\n@media (max-width: 768px) {\n mj-filter-rule .filter-rule {\n flex-wrap: wrap;\n }\n\n mj-filter-rule .custom-dropdown,\n mj-filter-rule .value-input {\n min-width: 100%;\n flex: 1 1 100%;\n }\n\n mj-filter-rule .custom-dropdown.field-dropdown,\n mj-filter-rule .custom-dropdown.operator-dropdown,\n mj-filter-rule .custom-dropdown.value-dropdown {\n min-width: 100%;\n }\n}\n"] }]
665
692
  }], () => [{ type: i0.ElementRef }], { filter: [{
666
693
  type: Input
667
694
  }], fields: [{
@@ -674,9 +701,18 @@ export class FilterRuleComponent {
674
701
  type: Output
675
702
  }], delete: [{
676
703
  type: Output
704
+ }], fieldDropdownBtn: [{
705
+ type: ViewChild,
706
+ args: ['fieldDropdownBtn']
707
+ }], operatorDropdownBtn: [{
708
+ type: ViewChild,
709
+ args: ['operatorDropdownBtn']
710
+ }], valueDropdownBtn: [{
711
+ type: ViewChild,
712
+ args: ['valueDropdownBtn']
677
713
  }], onDocumentClick: [{
678
714
  type: HostListener,
679
715
  args: ['document:click', ['$event']]
680
716
  }] }); })();
681
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FilterRuleComponent, { className: "FilterRuleComponent", filePath: "src/lib/filter-rule/filter-rule.component.ts", lineNumber: 22 }); })();
717
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(FilterRuleComponent, { className: "FilterRuleComponent", filePath: "src/lib/filter-rule/filter-rule.component.ts", lineNumber: 23 }); })();
682
718
  //# sourceMappingURL=filter-rule.component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter-rule.component.js","sourceRoot":"","sources":["../../../src/lib/filter-rule/filter-rule.component.ts","../../../src/lib/filter-rule/filter-rule.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filter-rule.component.js","sourceRoot":"","sources":["../../../src/lib/filter-rule/filter-rule.component.ts","../../../src/lib/filter-rule/filter-rule.component.html"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-filter-builder",
3
- "version": "3.4.0",
3
+ "version": "4.0.0",
4
4
  "description": "MemberJunction: Angular Filter Builder Component - a modern, intuitive filter builder for creating complex boolean filter expressions with portable JSON format.",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -20,19 +20,19 @@
20
20
  "author": "",
21
21
  "license": "ISC",
22
22
  "devDependencies": {
23
- "@angular/compiler": "18.2.14",
24
- "@angular/compiler-cli": "18.2.14"
23
+ "@angular/compiler": "21.1.3",
24
+ "@angular/compiler-cli": "21.1.3"
25
25
  },
26
26
  "peerDependencies": {
27
- "@angular/common": "18.2.14",
28
- "@angular/core": "18.2.14",
29
- "@angular/forms": "18.2.14",
30
- "rxjs": "^7.8.1"
27
+ "@angular/common": "21.1.3",
28
+ "@angular/core": "21.1.3",
29
+ "@angular/forms": "21.1.3",
30
+ "rxjs": "^7.8.2"
31
31
  },
32
32
  "dependencies": {
33
- "@angular/platform-browser": "18.2.14",
34
- "@memberjunction/core": "3.4.0",
35
- "tslib": "^2.3.0"
33
+ "@angular/platform-browser": "21.1.3",
34
+ "@memberjunction/core": "4.0.0",
35
+ "tslib": "^2.8.1"
36
36
  },
37
37
  "sideEffects": false,
38
38
  "repository": {