@limetech/lime-crm-building-blocks 1.97.0 → 1.99.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.
Files changed (170) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/cjs/{index.esm-a894ac76.js → index.esm-d785eb6e.js} +2 -0
  3. package/dist/cjs/lime-crm-building-blocks.cjs.js +1 -1
  4. package/dist/cjs/limebb-browser.cjs.entry.js +1 -1
  5. package/dist/cjs/limebb-chat-item_2.cjs.entry.js +1 -1
  6. package/dist/cjs/limebb-chat-list.cjs.entry.js +1 -1
  7. package/dist/cjs/limebb-component-config.cjs.entry.js +1 -1
  8. package/dist/cjs/limebb-component-picker.cjs.entry.js +1 -1
  9. package/dist/cjs/limebb-currency-picker.cjs.entry.js +1 -1
  10. package/dist/cjs/limebb-date-picker.cjs.entry.js +1 -1
  11. package/dist/cjs/limebb-feed-timeline-item.cjs.entry.js +1 -1
  12. package/dist/cjs/limebb-feed.cjs.entry.js +1 -1
  13. package/dist/cjs/limebb-info-tile.cjs.entry.js +1 -1
  14. package/dist/cjs/limebb-kanban-group.cjs.entry.js +1 -1
  15. package/dist/cjs/limebb-kanban-item.cjs.entry.js +1 -1
  16. package/dist/cjs/limebb-lime-query-builder.cjs.entry.js +90 -174
  17. package/dist/cjs/limebb-lime-query-filter-and.cjs.entry.js +80 -0
  18. package/dist/cjs/limebb-lime-query-filter-comparison_2.cjs.entry.js +147 -0
  19. package/dist/cjs/limebb-lime-query-filter-group_4.cjs.entry.js +603 -0
  20. package/dist/cjs/limebb-lime-query-filter-or.cjs.entry.js +68 -0
  21. package/dist/cjs/limebb-limeobject-file-viewer.cjs.entry.js +1 -1
  22. package/dist/cjs/limebb-limetype-field_2.cjs.entry.js +37 -6
  23. package/dist/cjs/limebb-live-docs-info.cjs.entry.js +2 -2
  24. package/dist/cjs/limebb-loader.cjs.entry.js +1 -1
  25. package/dist/cjs/limebb-locale-picker.cjs.entry.js +2 -2
  26. package/dist/cjs/limebb-mention-group-counter.cjs.entry.js +2 -2
  27. package/dist/cjs/limebb-mention.cjs.entry.js +1 -1
  28. package/dist/cjs/limebb-navigation-button_2.cjs.entry.js +3 -3
  29. package/dist/cjs/limebb-notification-item.cjs.entry.js +2 -2
  30. package/dist/cjs/limebb-notification-list.cjs.entry.js +1 -1
  31. package/dist/cjs/limebb-percentage-visualizer.cjs.entry.js +2 -2
  32. package/dist/cjs/limebb-text-editor.cjs.entry.js +3 -3
  33. package/dist/cjs/limebb-trend-indicator.cjs.entry.js +1 -1
  34. package/dist/cjs/{limetype-1fe0207f.js → limetype-f2e4376e.js} +1 -1
  35. package/dist/cjs/loader.cjs.js +1 -1
  36. package/dist/collection/collection-manifest.json +1 -0
  37. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-and.js +41 -49
  38. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison.js +77 -41
  39. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-expression.js +35 -46
  40. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.css +130 -0
  41. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.js +269 -0
  42. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-not.js +19 -25
  43. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-or.js +34 -34
  44. package/dist/collection/components/lime-query-builder/lime-query-builder.js +60 -24
  45. package/dist/collection/components/lime-query-builder/limetype-field/limetype-field.js +1 -1
  46. package/dist/collection/components/limeobject/file-viewer/live-docs-info.js +2 -2
  47. package/dist/collection/components/locale-picker/locale-picker.js +1 -1
  48. package/dist/collection/components/notification-list/notification-item/notification-item.js +1 -1
  49. package/dist/collection/components/percentage-visualizer/percentage-visualizer.js +2 -2
  50. package/dist/collection/components/summary-popover/summary-popover.js +3 -3
  51. package/dist/collection/components/text-editor/mention-group-counter.js +2 -2
  52. package/dist/collection/components/text-editor/text-editor.js +1 -1
  53. package/dist/collection/components/trend-indicator/trend-indicator.js +1 -1
  54. package/dist/components/index.esm.js +2 -1
  55. package/dist/components/lime-query-filter-comparison.js +32 -45
  56. package/dist/components/lime-query-filter-expression.js +315 -0
  57. package/dist/components/limebb-lime-query-builder.js +96 -184
  58. package/dist/components/limebb-lime-query-filter-and.js +130 -1
  59. package/dist/components/limebb-lime-query-filter-comparison.js +1 -1
  60. package/dist/components/limebb-lime-query-filter-expression.js +1 -1
  61. package/dist/components/limebb-lime-query-filter-group.d.ts +11 -0
  62. package/dist/components/limebb-lime-query-filter-group.js +6 -0
  63. package/dist/components/limebb-lime-query-filter-not.js +1 -1
  64. package/dist/components/limebb-lime-query-filter-or.js +118 -1
  65. package/dist/components/limebb-locale-picker.js +1 -1
  66. package/dist/components/limebb-mention-group-counter.js +2 -2
  67. package/dist/components/limebb-percentage-visualizer.js +2 -2
  68. package/dist/components/limebb-text-editor.js +1 -1
  69. package/dist/components/limebb-trend-indicator.js +1 -1
  70. package/dist/components/limetype-field.js +34 -2
  71. package/dist/components/live-docs-info.js +2 -2
  72. package/dist/components/notification-item.js +1 -1
  73. package/dist/components/summary-popover.js +3 -3
  74. package/dist/esm/{index.esm-d8fdeb18.js → index.esm-bb569663.js} +2 -1
  75. package/dist/esm/lime-crm-building-blocks.js +1 -1
  76. package/dist/esm/limebb-browser.entry.js +1 -1
  77. package/dist/esm/limebb-chat-item_2.entry.js +1 -1
  78. package/dist/esm/limebb-chat-list.entry.js +1 -1
  79. package/dist/esm/limebb-component-config.entry.js +1 -1
  80. package/dist/esm/limebb-component-picker.entry.js +1 -1
  81. package/dist/esm/limebb-currency-picker.entry.js +1 -1
  82. package/dist/esm/limebb-date-picker.entry.js +1 -1
  83. package/dist/esm/limebb-feed-timeline-item.entry.js +1 -1
  84. package/dist/esm/limebb-feed.entry.js +1 -1
  85. package/dist/esm/limebb-info-tile.entry.js +1 -1
  86. package/dist/esm/limebb-kanban-group.entry.js +1 -1
  87. package/dist/esm/limebb-kanban-item.entry.js +1 -1
  88. package/dist/esm/limebb-lime-query-builder.entry.js +89 -173
  89. package/dist/esm/limebb-lime-query-filter-and.entry.js +76 -0
  90. package/dist/esm/limebb-lime-query-filter-comparison_2.entry.js +142 -0
  91. package/dist/esm/limebb-lime-query-filter-group_4.entry.js +596 -0
  92. package/dist/esm/limebb-lime-query-filter-or.entry.js +64 -0
  93. package/dist/esm/limebb-limeobject-file-viewer.entry.js +1 -1
  94. package/dist/esm/limebb-limetype-field_2.entry.js +36 -5
  95. package/dist/esm/limebb-live-docs-info.entry.js +2 -2
  96. package/dist/esm/limebb-loader.entry.js +1 -1
  97. package/dist/esm/limebb-locale-picker.entry.js +2 -2
  98. package/dist/esm/limebb-mention-group-counter.entry.js +2 -2
  99. package/dist/esm/limebb-mention.entry.js +1 -1
  100. package/dist/esm/limebb-navigation-button_2.entry.js +3 -3
  101. package/dist/esm/limebb-notification-item.entry.js +2 -2
  102. package/dist/esm/limebb-notification-list.entry.js +1 -1
  103. package/dist/esm/limebb-percentage-visualizer.entry.js +2 -2
  104. package/dist/esm/limebb-text-editor.entry.js +3 -3
  105. package/dist/esm/limebb-trend-indicator.entry.js +1 -1
  106. package/dist/esm/{limetype-6e7552a7.js → limetype-c0e041f7.js} +1 -1
  107. package/dist/esm/loader.js +1 -1
  108. package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
  109. package/dist/lime-crm-building-blocks/p-03accd53.entry.js +1 -0
  110. package/dist/lime-crm-building-blocks/{p-a1818969.entry.js → p-03af0e66.entry.js} +1 -1
  111. package/dist/lime-crm-building-blocks/{p-f402184f.entry.js → p-098ee6c1.entry.js} +1 -1
  112. package/dist/lime-crm-building-blocks/{p-42e52b50.entry.js → p-1be0eec7.entry.js} +1 -1
  113. package/dist/lime-crm-building-blocks/{p-2aa18c2b.entry.js → p-206575e4.entry.js} +1 -1
  114. package/dist/lime-crm-building-blocks/p-20bfca36.js +1 -0
  115. package/dist/lime-crm-building-blocks/{p-82d33d43.entry.js → p-2faaacbc.entry.js} +1 -1
  116. package/dist/lime-crm-building-blocks/{p-d4016891.entry.js → p-2fdcb868.entry.js} +1 -1
  117. package/dist/lime-crm-building-blocks/{p-f52125a0.entry.js → p-3122ea05.entry.js} +1 -1
  118. package/dist/lime-crm-building-blocks/{p-baf4e428.entry.js → p-3175883d.entry.js} +1 -1
  119. package/dist/lime-crm-building-blocks/{p-8c8b7115.entry.js → p-32534eb7.entry.js} +1 -1
  120. package/dist/lime-crm-building-blocks/{p-6c1146ca.entry.js → p-36ea13c0.entry.js} +1 -1
  121. package/dist/lime-crm-building-blocks/p-4715210d.entry.js +1 -0
  122. package/dist/lime-crm-building-blocks/{p-1fba0ade.js → p-4838284a.js} +1 -1
  123. package/dist/lime-crm-building-blocks/{p-5e4ba110.entry.js → p-5464f0de.entry.js} +1 -1
  124. package/dist/lime-crm-building-blocks/{p-e9d23ef7.entry.js → p-569c86b5.entry.js} +1 -1
  125. package/dist/lime-crm-building-blocks/{p-90e1716a.entry.js → p-5dc574a3.entry.js} +1 -1
  126. package/dist/lime-crm-building-blocks/p-5f7644b5.entry.js +1 -0
  127. package/dist/lime-crm-building-blocks/{p-00da9b24.entry.js → p-631ca5a5.entry.js} +1 -1
  128. package/dist/lime-crm-building-blocks/p-67dbaa4c.entry.js +1 -0
  129. package/dist/lime-crm-building-blocks/{p-beb0d164.entry.js → p-7271f47a.entry.js} +1 -1
  130. package/dist/lime-crm-building-blocks/{p-34357744.entry.js → p-9031f136.entry.js} +1 -1
  131. package/dist/lime-crm-building-blocks/p-91732502.entry.js +1 -0
  132. package/dist/lime-crm-building-blocks/{p-8c4eb49f.entry.js → p-93cadc1e.entry.js} +1 -1
  133. package/dist/lime-crm-building-blocks/{p-3932077b.entry.js → p-9cac4de2.entry.js} +1 -1
  134. package/dist/lime-crm-building-blocks/{p-79d4668a.entry.js → p-a200954f.entry.js} +1 -1
  135. package/dist/lime-crm-building-blocks/p-aa646df7.entry.js +1 -0
  136. package/dist/lime-crm-building-blocks/{p-d89c44ad.entry.js → p-b9b954d9.entry.js} +1 -1
  137. package/dist/lime-crm-building-blocks/{p-3a620226.entry.js → p-cfa1a4ad.entry.js} +1 -1
  138. package/dist/lime-crm-building-blocks/{p-ef8a5266.entry.js → p-e8946134.entry.js} +1 -1
  139. package/dist/lime-crm-building-blocks/{p-9d9f25da.entry.js → p-eb81bceb.entry.js} +1 -1
  140. package/dist/lime-crm-building-blocks/{p-50d3d61a.entry.js → p-ee1b00b9.entry.js} +1 -1
  141. package/dist/types/components/lime-query-builder/expressions/lime-query-filter-and.d.ts +5 -4
  142. package/dist/types/components/lime-query-builder/expressions/lime-query-filter-comparison.d.ts +6 -4
  143. package/dist/types/components/lime-query-builder/expressions/lime-query-filter-expression.d.ts +10 -14
  144. package/dist/types/components/lime-query-builder/expressions/lime-query-filter-group.d.ts +60 -0
  145. package/dist/types/components/lime-query-builder/expressions/lime-query-filter-not.d.ts +4 -4
  146. package/dist/types/components/lime-query-builder/expressions/lime-query-filter-or.d.ts +5 -4
  147. package/dist/types/components/lime-query-builder/lime-query-builder.d.ts +19 -2
  148. package/dist/types/components/lime-query-builder/lime-query.types.d.ts +2 -1
  149. package/dist/types/components.d.ts +209 -65
  150. package/package.json +1 -1
  151. package/dist/cjs/isEqual-e77cce75.js +0 -37
  152. package/dist/cjs/lime-query.types-bcb63a22.js +0 -61
  153. package/dist/cjs/limebb-lime-query-filter-and_5.cjs.entry.js +0 -278
  154. package/dist/cjs/limebb-lime-query-value-input.cjs.entry.js +0 -239
  155. package/dist/cjs/limebb-property-selector.cjs.entry.js +0 -234
  156. package/dist/components/isEqual.js +0 -35
  157. package/dist/components/lime-query-filter-and.js +0 -408
  158. package/dist/esm/isEqual-57d0c223.js +0 -35
  159. package/dist/esm/lime-query.types-f72355e1.js +0 -59
  160. package/dist/esm/limebb-lime-query-filter-and_5.entry.js +0 -270
  161. package/dist/esm/limebb-lime-query-value-input.entry.js +0 -235
  162. package/dist/esm/limebb-property-selector.entry.js +0 -230
  163. package/dist/lime-crm-building-blocks/p-02c0cc04.entry.js +0 -1
  164. package/dist/lime-crm-building-blocks/p-3b0a15ec.js +0 -1
  165. package/dist/lime-crm-building-blocks/p-5a6d2e7f.js +0 -1
  166. package/dist/lime-crm-building-blocks/p-60971d64.js +0 -1
  167. package/dist/lime-crm-building-blocks/p-70a28b93.entry.js +0 -1
  168. package/dist/lime-crm-building-blocks/p-96beaabc.entry.js +0 -1
  169. package/dist/lime-crm-building-blocks/p-b7c72179.entry.js +0 -1
  170. package/dist/lime-crm-building-blocks/p-f99c611d.entry.js +0 -1
@@ -0,0 +1,315 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
+ import { Z as Zt } from './index.esm.js';
3
+ import { d as defineCustomElement$3 } from './lime-query-filter-comparison.js';
4
+ import { d as defineCustomElement$5 } from './lime-query-value-input.js';
5
+ import { d as defineCustomElement$4 } from './property-selector.js';
6
+
7
+ const limeQueryFilterNotCss = "@charset \"UTF-8\";.expression{display:flex;flex-direction:column;margin-bottom:1rem;gap:1rem;padding:1rem;border-left:0.25rem solid rgb(var(--contrast-400));background-color:rgb(var(--contrast-100))}";
8
+ const LimebbLimeQueryFilterNotStyle0 = limeQueryFilterNotCss;
9
+
10
+ const LimeQueryFilterNotComponent = /*@__PURE__*/ proxyCustomElement(class LimeQueryFilterNotComponent extends HTMLElement {
11
+ constructor() {
12
+ super();
13
+ this.__registerHost();
14
+ this.__attachShadow();
15
+ this.expressionChange = createEvent(this, "expressionChange", 7);
16
+ this.handleExpressionChange = (event) => {
17
+ var _a;
18
+ event.stopPropagation();
19
+ const updatedExpression = (_a = event.detail) !== null && _a !== void 0 ? _a : undefined;
20
+ if (updatedExpression === undefined) {
21
+ this.expressionChange.emit(undefined);
22
+ return;
23
+ }
24
+ this.expressionChange.emit({
25
+ op: Zt.NOT,
26
+ exp: updatedExpression,
27
+ });
28
+ };
29
+ }
30
+ render() {
31
+ return (h("div", { key: 'f1dfd7fd4ec7dc1873841d1c8b3d2bb6677634fd', class: "expression" }, this.label && h("limel-header", { key: '91e1b754f6e45c70f49bf2a770898a590defaf22', heading: this.label }), h("limebb-lime-query-filter-expression", { key: 'bf42f3c71521a413e5ecc49a8e0d6401b34384a2', platform: this.platform, context: this.context, label: "Not", limetype: this.limetype, activeLimetype: this.activeLimetype, expression: this.expression.exp, onExpressionChange: this.handleExpressionChange })));
32
+ }
33
+ static get style() { return LimebbLimeQueryFilterNotStyle0; }
34
+ }, [1, "limebb-lime-query-filter-not", {
35
+ "platform": [16],
36
+ "context": [16],
37
+ "label": [1],
38
+ "limetype": [1],
39
+ "activeLimetype": [1, "active-limetype"],
40
+ "expression": [16]
41
+ }]);
42
+ function defineCustomElement$2() {
43
+ if (typeof customElements === "undefined") {
44
+ return;
45
+ }
46
+ const components = ["limebb-lime-query-filter-not", "limebb-lime-query-filter-comparison", "limebb-lime-query-filter-expression", "limebb-lime-query-filter-group", "limebb-lime-query-filter-not"];
47
+ components.forEach(tagName => { switch (tagName) {
48
+ case "limebb-lime-query-filter-not":
49
+ if (!customElements.get(tagName)) {
50
+ customElements.define(tagName, LimeQueryFilterNotComponent);
51
+ }
52
+ break;
53
+ case "limebb-lime-query-filter-comparison":
54
+ if (!customElements.get(tagName)) {
55
+ defineCustomElement$3();
56
+ }
57
+ break;
58
+ case "limebb-lime-query-filter-expression":
59
+ if (!customElements.get(tagName)) {
60
+ defineCustomElement();
61
+ }
62
+ break;
63
+ case "limebb-lime-query-filter-group":
64
+ if (!customElements.get(tagName)) {
65
+ defineCustomElement$1();
66
+ }
67
+ break;
68
+ case "limebb-lime-query-filter-not":
69
+ if (!customElements.get(tagName)) {
70
+ defineCustomElement$2();
71
+ }
72
+ break;
73
+ } });
74
+ }
75
+
76
+ const limeQueryFilterGroupCss = "@charset \"UTF-8\";.expression{display:flex;flex-direction:column;margin-bottom:1rem;gap:0;background-color:rgb(var(--contrast-100));border:1px solid rgb(var(--contrast-500));border-radius:0.75rem}.expression .clickable-header{cursor:pointer;user-select:none}.expression .clickable-header:hover{background-color:rgb(var(--contrast-200))}.expression>ul{margin-top:0;margin-right:1rem;margin-bottom:1rem;margin-left:1rem;padding-left:1rem;list-style:disc}.expression>ul li{margin-top:1rem}.expression>ul li.add-button{list-style:none;display:flex;gap:0.5rem}";
77
+ const LimebbLimeQueryFilterGroupStyle0 = limeQueryFilterGroupCss;
78
+
79
+ const LimeQueryFilterGroupComponent = /*@__PURE__*/ proxyCustomElement(class LimeQueryFilterGroupComponent extends HTMLElement {
80
+ constructor() {
81
+ super();
82
+ this.__registerHost();
83
+ this.__attachShadow();
84
+ this.expressionChange = createEvent(this, "expressionChange", 7);
85
+ this.renderChildExpression = (expression, childIndex) => (h("li", null, h("limebb-lime-query-filter-expression", { platform: this.platform, context: this.context, limetype: this.limetype, activeLimetype: this.activeLimetype, expression: expression, onExpressionChange: this.handleExpressionChange(childIndex) })));
86
+ this.handleToggleOperator = () => {
87
+ const newOperator = this.expression.op === Zt.AND ? Zt.OR : Zt.AND;
88
+ this.expressionChange.emit({
89
+ op: newOperator,
90
+ exp: this.expression.exp,
91
+ });
92
+ };
93
+ this.handleAddChildExpression = () => {
94
+ // Always add a new comparison directly to the list
95
+ const newChild = {
96
+ key: '',
97
+ op: Zt.EQUALS,
98
+ exp: '',
99
+ };
100
+ this.expressionChange.emit({
101
+ op: this.expression.op,
102
+ exp: [...this.expression.exp, newChild],
103
+ });
104
+ };
105
+ this.handleAddChildGroup = () => {
106
+ // Add a nested group of the opposite type
107
+ const oppositeOp = this.expression.op === Zt.AND ? Zt.OR : Zt.AND;
108
+ const newChild = {
109
+ op: oppositeOp,
110
+ exp: [
111
+ {
112
+ key: '',
113
+ op: Zt.EQUALS,
114
+ exp: '',
115
+ },
116
+ ],
117
+ };
118
+ this.expressionChange.emit({
119
+ op: this.expression.op,
120
+ exp: [...this.expression.exp, newChild],
121
+ });
122
+ };
123
+ this.handleExpressionChange = (updatedChildIndex) => (event) => {
124
+ event.stopPropagation();
125
+ const updatedExpression = event.detail;
126
+ const expressions = [...this.expression.exp];
127
+ if (updatedExpression === undefined) {
128
+ // Deletion - remove the child and potentially unwrap
129
+ expressions.splice(updatedChildIndex, 1);
130
+ if (expressions.length === 0) {
131
+ this.expressionChange.emit(undefined);
132
+ return;
133
+ }
134
+ if (expressions.length === 1) {
135
+ // Unwrap when only one child remains after deletion
136
+ this.expressionChange.emit(expressions[0]);
137
+ return;
138
+ }
139
+ }
140
+ else {
141
+ // Update - replace the child, don't unwrap
142
+ expressions[updatedChildIndex] = updatedExpression;
143
+ }
144
+ this.expressionChange.emit({
145
+ op: this.expression.op,
146
+ exp: expressions,
147
+ });
148
+ };
149
+ }
150
+ render() {
151
+ const subheading = this.getSubheading();
152
+ return (h("div", { key: '43a1d99fd896e3ad49dd97594e54bccaf74c3aa0', class: "expression" }, subheading && (h("limel-header", { key: '534eb0a3db2f0194e8a28e2fb071beb545f38458', subheading: subheading, onClick: this.handleToggleOperator, class: "clickable-header" })), h("ul", { key: '9d29d98ab034bf2878e7dc19828bc045dbdd492f' }, this.expression.exp.map(this.renderChildExpression), h("li", { key: '44b266c8aeb390b8a68b3e08a51a0760a6421f93', class: "add-button" }, this.renderAddButton(), this.renderAddGroupButton()))));
153
+ }
154
+ getSubheading() {
155
+ if (this.expression.exp.length <= 1) {
156
+ return '';
157
+ }
158
+ return this.expression.op === Zt.AND
159
+ ? 'All of these conditions are true'
160
+ : 'Any of these conditions are true';
161
+ }
162
+ renderAddButton() {
163
+ const label = this.getAddButtonLabel();
164
+ return (h("limel-button", { label: label, icon: "plus_math", onClick: this.handleAddChildExpression }));
165
+ }
166
+ renderAddGroupButton() {
167
+ const label = this.getAddGroupButtonLabel();
168
+ return (h("limel-button", { label: label, icon: "tree_structure", onClick: this.handleAddChildGroup }));
169
+ }
170
+ getAddButtonLabel() {
171
+ const isAnd = this.expression.op === Zt.AND;
172
+ if (this.expression.exp.length === 0) {
173
+ return 'Add a condition';
174
+ }
175
+ return isAnd ? 'Add another condition' : 'Add alternative';
176
+ }
177
+ getAddGroupButtonLabel() {
178
+ const isAnd = this.expression.op === Zt.AND;
179
+ if (this.expression.exp.length === 0) {
180
+ return 'Add a group';
181
+ }
182
+ return isAnd ? 'Add another group' : 'Add alternative group';
183
+ }
184
+ static get style() { return LimebbLimeQueryFilterGroupStyle0; }
185
+ }, [1, "limebb-lime-query-filter-group", {
186
+ "platform": [16],
187
+ "context": [16],
188
+ "limetype": [1],
189
+ "activeLimetype": [1, "active-limetype"],
190
+ "expression": [16]
191
+ }]);
192
+ function defineCustomElement$1() {
193
+ if (typeof customElements === "undefined") {
194
+ return;
195
+ }
196
+ const components = ["limebb-lime-query-filter-group", "limebb-lime-query-filter-comparison", "limebb-lime-query-filter-expression", "limebb-lime-query-filter-group", "limebb-lime-query-filter-not"];
197
+ components.forEach(tagName => { switch (tagName) {
198
+ case "limebb-lime-query-filter-group":
199
+ if (!customElements.get(tagName)) {
200
+ customElements.define(tagName, LimeQueryFilterGroupComponent);
201
+ }
202
+ break;
203
+ case "limebb-lime-query-filter-comparison":
204
+ if (!customElements.get(tagName)) {
205
+ defineCustomElement$3();
206
+ }
207
+ break;
208
+ case "limebb-lime-query-filter-expression":
209
+ if (!customElements.get(tagName)) {
210
+ defineCustomElement();
211
+ }
212
+ break;
213
+ case "limebb-lime-query-filter-group":
214
+ if (!customElements.get(tagName)) {
215
+ defineCustomElement$1();
216
+ }
217
+ break;
218
+ case "limebb-lime-query-filter-not":
219
+ if (!customElements.get(tagName)) {
220
+ defineCustomElement$2();
221
+ }
222
+ break;
223
+ } });
224
+ }
225
+
226
+ const limeQueryFilterExpressionCss = "@charset \"UTF-8\";.expression{display:flex;flex-direction:column;margin-bottom:1rem;gap:1rem}";
227
+ const LimebbLimeQueryFilterExpressionStyle0 = limeQueryFilterExpressionCss;
228
+
229
+ const LimeQueryFilterExpressionComponent = /*@__PURE__*/ proxyCustomElement(class LimeQueryFilterExpressionComponent extends HTMLElement {
230
+ constructor() {
231
+ super();
232
+ this.__registerHost();
233
+ this.__attachShadow();
234
+ this.expressionChange = createEvent(this, "expressionChange", 7);
235
+ this.handleExpressionChange = (event) => {
236
+ event.stopPropagation();
237
+ this.expressionChange.emit(event.detail);
238
+ };
239
+ }
240
+ render() {
241
+ if (!this.expression) {
242
+ return;
243
+ }
244
+ const props = {
245
+ platform: this.platform,
246
+ context: this.context,
247
+ label: this.label,
248
+ limetype: this.limetype,
249
+ activeLimetype: this.activeLimetype,
250
+ };
251
+ if ('key' in this.expression) {
252
+ return (h("limebb-lime-query-filter-comparison", Object.assign({}, props, { expression: this.expression, onExpressionChange: this.handleExpressionChange })));
253
+ }
254
+ if (this.expression.op === Zt.AND ||
255
+ this.expression.op === Zt.OR) {
256
+ return (h("limebb-lime-query-filter-group", Object.assign({}, props, { expression: this.expression, onExpressionChange: this.handleExpressionChange })));
257
+ }
258
+ if (this.expression.op === Zt.NOT) {
259
+ return (h("limebb-lime-query-filter-not", Object.assign({}, props, { expression: this.expression, onExpressionChange: this.handleExpressionChange })));
260
+ }
261
+ }
262
+ static get style() { return LimebbLimeQueryFilterExpressionStyle0; }
263
+ }, [1, "limebb-lime-query-filter-expression", {
264
+ "platform": [16],
265
+ "context": [16],
266
+ "label": [1],
267
+ "limetype": [1],
268
+ "activeLimetype": [1, "active-limetype"],
269
+ "expression": [16]
270
+ }]);
271
+ function defineCustomElement() {
272
+ if (typeof customElements === "undefined") {
273
+ return;
274
+ }
275
+ const components = ["limebb-lime-query-filter-expression", "limebb-lime-query-filter-comparison", "limebb-lime-query-filter-expression", "limebb-lime-query-filter-group", "limebb-lime-query-filter-not", "limebb-lime-query-value-input", "limebb-property-selector"];
276
+ components.forEach(tagName => { switch (tagName) {
277
+ case "limebb-lime-query-filter-expression":
278
+ if (!customElements.get(tagName)) {
279
+ customElements.define(tagName, LimeQueryFilterExpressionComponent);
280
+ }
281
+ break;
282
+ case "limebb-lime-query-filter-comparison":
283
+ if (!customElements.get(tagName)) {
284
+ defineCustomElement$3();
285
+ }
286
+ break;
287
+ case "limebb-lime-query-filter-expression":
288
+ if (!customElements.get(tagName)) {
289
+ defineCustomElement();
290
+ }
291
+ break;
292
+ case "limebb-lime-query-filter-group":
293
+ if (!customElements.get(tagName)) {
294
+ defineCustomElement$1();
295
+ }
296
+ break;
297
+ case "limebb-lime-query-filter-not":
298
+ if (!customElements.get(tagName)) {
299
+ defineCustomElement$2();
300
+ }
301
+ break;
302
+ case "limebb-lime-query-value-input":
303
+ if (!customElements.get(tagName)) {
304
+ defineCustomElement$5();
305
+ }
306
+ break;
307
+ case "limebb-property-selector":
308
+ if (!customElements.get(tagName)) {
309
+ defineCustomElement$4();
310
+ }
311
+ break;
312
+ } });
313
+ }
314
+
315
+ export { LimeQueryFilterExpressionComponent as L, defineCustomElement$1 as a, defineCustomElement as b, LimeQueryFilterGroupComponent as c, defineCustomElement$2 as d, LimeQueryFilterNotComponent as e };