@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
@@ -5,7 +5,7 @@
5
5
  * It contains typing information for all components that exist in this project.
6
6
  */
7
7
  import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
8
- import { AggregateOperator, LimeFileUrlType, LimeType, LimeWebComponentContext, LimeWebComponentPlatform } from "@limetech/lime-web-components";
8
+ import { AggregateOperator, AndOrExpression, Expression, LimeFileUrlType, LimeType, LimeWebComponentContext, LimeWebComponentPlatform, NotExpression } from "@limetech/lime-web-components";
9
9
  import { BrowserItem } from "./components/browser/browser-item.types";
10
10
  import { ActionBarItem, CustomElementDefinition, DateType, EditorUiType, FormInfo, Icon, Image, Languages, ListItem, ListSeparator, OpenDirection } from "@limetech/lime-elements";
11
11
  import { ChatItem } from "./components/chat-list/chat-item/chat-item.types";
@@ -17,14 +17,14 @@ import { DateTimeFormat, NumberFormat, RelativeDateTimeFormat } from "./componen
17
17
  import { InfoTile } from "./components/info-tile/info-tile";
18
18
  import { KanbanGroup } from "./components/kanban/kanban-group/kanban-group.types";
19
19
  import { KanbanItem } from "./components/kanban/kanban-item/kanban-item.types";
20
- import { FilterOperator, LimeQuery, LimeQueryFilterAnd, LimeQueryFilterComparison, LimeQueryFilterExpression, LimeQueryFilterMissing, LimeQueryFilterNot, LimeQueryFilterOr, ResponseFormat } from "./components/lime-query-builder/lime-query.types";
20
+ import { FilterOperator, LimeQuery, ResponseFormat } from "./components/lime-query-builder/lime-query.types";
21
21
  import { LanguagePickerType } from "./components/locale-picker/language-picker.types";
22
22
  import { NavigationButtonType } from "./components/navigation-button/navigation-button.types";
23
23
  import { NotificationItem } from "./components/notification-list/notification-item/notification-item.types";
24
24
  import { PropertySelectionItem } from "./components/lime-query-builder/property-selection-format";
25
25
  import { TriggerMap } from "./components/text-editor/text-editor.types";
26
26
  import { EnhancedEditorMetadata } from "./components/text-editor/uploader/building-blocks-upload-handler";
27
- export { AggregateOperator, LimeFileUrlType, LimeType, LimeWebComponentContext, LimeWebComponentPlatform } from "@limetech/lime-web-components";
27
+ export { AggregateOperator, AndOrExpression, Expression, LimeFileUrlType, LimeType, LimeWebComponentContext, LimeWebComponentPlatform, NotExpression } from "@limetech/lime-web-components";
28
28
  export { BrowserItem } from "./components/browser/browser-item.types";
29
29
  export { ActionBarItem, CustomElementDefinition, DateType, EditorUiType, FormInfo, Icon, Image, Languages, ListItem, ListSeparator, OpenDirection } from "@limetech/lime-elements";
30
30
  export { ChatItem } from "./components/chat-list/chat-item/chat-item.types";
@@ -36,7 +36,7 @@ export { DateTimeFormat, NumberFormat, RelativeDateTimeFormat } from "./componen
36
36
  export { InfoTile } from "./components/info-tile/info-tile";
37
37
  export { KanbanGroup } from "./components/kanban/kanban-group/kanban-group.types";
38
38
  export { KanbanItem } from "./components/kanban/kanban-item/kanban-item.types";
39
- export { FilterOperator, LimeQuery, LimeQueryFilterAnd, LimeQueryFilterComparison, LimeQueryFilterExpression, LimeQueryFilterMissing, LimeQueryFilterNot, LimeQueryFilterOr, ResponseFormat } from "./components/lime-query-builder/lime-query.types";
39
+ export { FilterOperator, LimeQuery, ResponseFormat } from "./components/lime-query-builder/lime-query.types";
40
40
  export { LanguagePickerType } from "./components/locale-picker/language-picker.types";
41
41
  export { NavigationButtonType } from "./components/navigation-button/navigation-button.types";
42
42
  export { NotificationItem } from "./components/notification-list/notification-item/notification-item.types";
@@ -958,13 +958,23 @@ export namespace Components {
958
958
  * - **Type-aware inputs**: Automatic input types based on property type
959
959
  * - **Response format**: Select which properties to return
960
960
  * - **Query options**: Configure limit and other query parameters
961
+ * - **Placeholder support**: Use `%activeObject%` placeholders in filter values
961
962
  * - **Real-time output**: See the Lime Query JSON as you build
962
963
  * The component produces a complete `LimeQuery` object that can be sent
963
964
  * directly to the Lime CRM backend.
965
+ * **Active Object Placeholders**:
966
+ * When the `activeLimetype` prop is provided, the component enables validation
967
+ * and UI support for `%activeObject%` placeholders in filter expressions.
968
+ * These placeholders reference properties of a contextual "active object"
969
+ * (e.g., `%activeObject%.company` references the company of the active object).
964
970
  * @exampleComponent limebb-example-lime-query-builder-basic
965
971
  * @private
966
972
  */
967
973
  interface LimebbLimeQueryBuilder {
974
+ /**
975
+ * The limetype of the active object (for %activeObject% placeholder validation). When provided, enables placeholder validation and the placeholder input mode. When omitted, placeholders are accepted without validation.
976
+ */
977
+ "activeLimetype"?: string;
968
978
  /**
969
979
  * Component context
970
980
  */
@@ -1006,7 +1016,7 @@ export namespace Components {
1006
1016
  /**
1007
1017
  * The AND expression containing child expressions
1008
1018
  */
1009
- "expression": LimeQueryFilterAnd;
1019
+ "expression": AndOrExpression;
1010
1020
  /**
1011
1021
  * Optional label for the AND group
1012
1022
  */
@@ -1050,7 +1060,7 @@ export namespace Components {
1050
1060
  /**
1051
1061
  * The comparison expression to render
1052
1062
  */
1053
- "expression": LimeQueryFilterComparison;
1063
+ "expression": ComparisonExpression;
1054
1064
  /**
1055
1065
  * Optional label for the comparison
1056
1066
  */
@@ -1066,15 +1076,11 @@ export namespace Components {
1066
1076
  }
1067
1077
  /**
1068
1078
  * Lime Query Filter Expression Router
1069
- * This is the main entry point for rendering Lime Query filters.
1070
- * It routes to the appropriate sub-component based on the filter type:
1071
- * - `'AND'` → limebb-lime-query-filter-and
1072
- * - `'OR'` → limebb-lime-query-filter-or
1073
- * - `'NOT'` → limebb-lime-query-filter-not
1074
- * - `'comparison'` → limebb-lime-query-filter-comparison
1075
- * - `''` (missing) → limebb-lime-query-filter-comparison (default)
1076
- * Use this component when you need to render a complete filter expression
1077
- * that may contain nested AND/OR/NOT logic.
1079
+ * Router component for rendering Lime Query filter expressions.
1080
+ * Routes to the appropriate sub-component based on expression structure:
1081
+ * - Has `key` property → limebb-lime-query-filter-comparison
1082
+ * - `op: Operator.AND | Operator.OR` → limebb-lime-query-filter-group
1083
+ * - `op: Operator.NOT` → limebb-lime-query-filter-not
1078
1084
  * @private
1079
1085
  */
1080
1086
  interface LimebbLimeQueryFilterExpression {
@@ -1089,7 +1095,7 @@ export namespace Components {
1089
1095
  /**
1090
1096
  * The filter expression to render
1091
1097
  */
1092
- "expression": LimeQueryFilterExpression;
1098
+ "expression": Expression;
1093
1099
  /**
1094
1100
  * Optional label for the expression
1095
1101
  */
@@ -1103,6 +1109,42 @@ export namespace Components {
1103
1109
  */
1104
1110
  "platform": LimeWebComponentPlatform;
1105
1111
  }
1112
+ /**
1113
+ * Lime Query Filter Group Component
1114
+ * Renders a group of filter expressions with AND/OR logic that can be toggled.
1115
+ * Users can click the header to toggle between "All conditions" (AND) and
1116
+ * "Any condition" (OR).
1117
+ * This component displays:
1118
+ * - A clickable header showing the current logic (AND/OR)
1119
+ * - A list of child expressions (which can be comparisons or nested groups)
1120
+ * - An "Add" button to add more expressions
1121
+ * Clicking the header toggles between AND and OR logic.
1122
+ * If a child component emits an ExpressionChange event with undefined, the
1123
+ * child is removed from the group.
1124
+ * @private
1125
+ */
1126
+ interface LimebbLimeQueryFilterGroup {
1127
+ /**
1128
+ * The limetype of the active object (for %activeObject% placeholders)
1129
+ */
1130
+ "activeLimetype"?: string;
1131
+ /**
1132
+ * Component context
1133
+ */
1134
+ "context": LimeWebComponentContext;
1135
+ /**
1136
+ * The group expression (AND or OR)
1137
+ */
1138
+ "expression": AndOrExpression;
1139
+ /**
1140
+ * The limetype being queried (e.g., "deal", "company")
1141
+ */
1142
+ "limetype": string;
1143
+ /**
1144
+ * Platform service provider
1145
+ */
1146
+ "platform": LimeWebComponentPlatform;
1147
+ }
1106
1148
  /**
1107
1149
  * Lime Query Filter NOT Component
1108
1150
  * Renders a negated filter expression. This inverts the logic of the child expression,
@@ -1128,7 +1170,7 @@ export namespace Components {
1128
1170
  /**
1129
1171
  * The NOT expression containing the child expression to negate
1130
1172
  */
1131
- "expression": LimeQueryFilterNot;
1173
+ "expression": NotExpression;
1132
1174
  /**
1133
1175
  * Optional label for the NOT expression
1134
1176
  */
@@ -1166,7 +1208,7 @@ export namespace Components {
1166
1208
  /**
1167
1209
  * The OR expression containing child expressions
1168
1210
  */
1169
- "expression": LimeQueryFilterOr;
1211
+ "expression": AndOrExpression;
1170
1212
  /**
1171
1213
  * Optional label for the OR group
1172
1214
  */
@@ -2089,6 +2131,10 @@ export interface LimebbLimeQueryFilterExpressionCustomEvent<T> extends CustomEve
2089
2131
  detail: T;
2090
2132
  target: HTMLLimebbLimeQueryFilterExpressionElement;
2091
2133
  }
2134
+ export interface LimebbLimeQueryFilterGroupCustomEvent<T> extends CustomEvent<T> {
2135
+ detail: T;
2136
+ target: HTMLLimebbLimeQueryFilterGroupElement;
2137
+ }
2092
2138
  export interface LimebbLimeQueryFilterNotCustomEvent<T> extends CustomEvent<T> {
2093
2139
  detail: T;
2094
2140
  target: HTMLLimebbLimeQueryFilterNotElement;
@@ -2772,9 +2818,15 @@ declare global {
2772
2818
  * - **Type-aware inputs**: Automatic input types based on property type
2773
2819
  * - **Response format**: Select which properties to return
2774
2820
  * - **Query options**: Configure limit and other query parameters
2821
+ * - **Placeholder support**: Use `%activeObject%` placeholders in filter values
2775
2822
  * - **Real-time output**: See the Lime Query JSON as you build
2776
2823
  * The component produces a complete `LimeQuery` object that can be sent
2777
2824
  * directly to the Lime CRM backend.
2825
+ * **Active Object Placeholders**:
2826
+ * When the `activeLimetype` prop is provided, the component enables validation
2827
+ * and UI support for `%activeObject%` placeholders in filter expressions.
2828
+ * These placeholders reference properties of a contextual "active object"
2829
+ * (e.g., `%activeObject%.company` references the company of the active object).
2778
2830
  * @exampleComponent limebb-example-lime-query-builder-basic
2779
2831
  * @private
2780
2832
  */
@@ -2793,7 +2845,7 @@ declare global {
2793
2845
  new (): HTMLLimebbLimeQueryBuilderElement;
2794
2846
  };
2795
2847
  interface HTMLLimebbLimeQueryFilterAndElementEventMap {
2796
- "expressionChange": LimeQueryFilterAnd | LimeQueryFilterMissing;
2848
+ "expressionChange": Expression | undefined;
2797
2849
  }
2798
2850
  /**
2799
2851
  * Lime Query Filter AND Component
@@ -2822,7 +2874,7 @@ declare global {
2822
2874
  new (): HTMLLimebbLimeQueryFilterAndElement;
2823
2875
  };
2824
2876
  interface HTMLLimebbLimeQueryFilterComparisonElementEventMap {
2825
- "expressionChange": LimeQueryFilterComparison | LimeQueryFilterMissing;
2877
+ "expressionChange": ComparisonExpression | undefined;
2826
2878
  }
2827
2879
  /**
2828
2880
  * Lime Query Filter Comparison Component
@@ -2857,19 +2909,15 @@ declare global {
2857
2909
  new (): HTMLLimebbLimeQueryFilterComparisonElement;
2858
2910
  };
2859
2911
  interface HTMLLimebbLimeQueryFilterExpressionElementEventMap {
2860
- "expressionChange": LimeQueryFilterExpression;
2912
+ "expressionChange": Expression | undefined;
2861
2913
  }
2862
2914
  /**
2863
2915
  * Lime Query Filter Expression Router
2864
- * This is the main entry point for rendering Lime Query filters.
2865
- * It routes to the appropriate sub-component based on the filter type:
2866
- * - `'AND'` → limebb-lime-query-filter-and
2867
- * - `'OR'` → limebb-lime-query-filter-or
2868
- * - `'NOT'` → limebb-lime-query-filter-not
2869
- * - `'comparison'` → limebb-lime-query-filter-comparison
2870
- * - `''` (missing) → limebb-lime-query-filter-comparison (default)
2871
- * Use this component when you need to render a complete filter expression
2872
- * that may contain nested AND/OR/NOT logic.
2916
+ * Router component for rendering Lime Query filter expressions.
2917
+ * Routes to the appropriate sub-component based on expression structure:
2918
+ * - Has `key` property → limebb-lime-query-filter-comparison
2919
+ * - `op: Operator.AND | Operator.OR` → limebb-lime-query-filter-group
2920
+ * - `op: Operator.NOT` → limebb-lime-query-filter-not
2873
2921
  * @private
2874
2922
  */
2875
2923
  interface HTMLLimebbLimeQueryFilterExpressionElement extends Components.LimebbLimeQueryFilterExpression, HTMLStencilElement {
@@ -2886,8 +2934,39 @@ declare global {
2886
2934
  prototype: HTMLLimebbLimeQueryFilterExpressionElement;
2887
2935
  new (): HTMLLimebbLimeQueryFilterExpressionElement;
2888
2936
  };
2937
+ interface HTMLLimebbLimeQueryFilterGroupElementEventMap {
2938
+ "expressionChange": Expression | undefined;
2939
+ }
2940
+ /**
2941
+ * Lime Query Filter Group Component
2942
+ * Renders a group of filter expressions with AND/OR logic that can be toggled.
2943
+ * Users can click the header to toggle between "All conditions" (AND) and
2944
+ * "Any condition" (OR).
2945
+ * This component displays:
2946
+ * - A clickable header showing the current logic (AND/OR)
2947
+ * - A list of child expressions (which can be comparisons or nested groups)
2948
+ * - An "Add" button to add more expressions
2949
+ * Clicking the header toggles between AND and OR logic.
2950
+ * If a child component emits an ExpressionChange event with undefined, the
2951
+ * child is removed from the group.
2952
+ * @private
2953
+ */
2954
+ interface HTMLLimebbLimeQueryFilterGroupElement extends Components.LimebbLimeQueryFilterGroup, HTMLStencilElement {
2955
+ addEventListener<K extends keyof HTMLLimebbLimeQueryFilterGroupElementEventMap>(type: K, listener: (this: HTMLLimebbLimeQueryFilterGroupElement, ev: LimebbLimeQueryFilterGroupCustomEvent<HTMLLimebbLimeQueryFilterGroupElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2956
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2957
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2958
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2959
+ removeEventListener<K extends keyof HTMLLimebbLimeQueryFilterGroupElementEventMap>(type: K, listener: (this: HTMLLimebbLimeQueryFilterGroupElement, ev: LimebbLimeQueryFilterGroupCustomEvent<HTMLLimebbLimeQueryFilterGroupElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2960
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2961
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2962
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2963
+ }
2964
+ var HTMLLimebbLimeQueryFilterGroupElement: {
2965
+ prototype: HTMLLimebbLimeQueryFilterGroupElement;
2966
+ new (): HTMLLimebbLimeQueryFilterGroupElement;
2967
+ };
2889
2968
  interface HTMLLimebbLimeQueryFilterNotElementEventMap {
2890
- "expressionChange": LimeQueryFilterNot | LimeQueryFilterMissing;
2969
+ "expressionChange": NotExpression | undefined;
2891
2970
  }
2892
2971
  /**
2893
2972
  * Lime Query Filter NOT Component
@@ -2917,7 +2996,7 @@ declare global {
2917
2996
  new (): HTMLLimebbLimeQueryFilterNotElement;
2918
2997
  };
2919
2998
  interface HTMLLimebbLimeQueryFilterOrElementEventMap {
2920
- "expressionChange": LimeQueryFilterOr | LimeQueryFilterMissing;
2999
+ "expressionChange": Expression | undefined;
2921
3000
  }
2922
3001
  /**
2923
3002
  * Lime Query Filter OR Component
@@ -3487,6 +3566,7 @@ declare global {
3487
3566
  "limebb-lime-query-filter-and": HTMLLimebbLimeQueryFilterAndElement;
3488
3567
  "limebb-lime-query-filter-comparison": HTMLLimebbLimeQueryFilterComparisonElement;
3489
3568
  "limebb-lime-query-filter-expression": HTMLLimebbLimeQueryFilterExpressionElement;
3569
+ "limebb-lime-query-filter-group": HTMLLimebbLimeQueryFilterGroupElement;
3490
3570
  "limebb-lime-query-filter-not": HTMLLimebbLimeQueryFilterNotElement;
3491
3571
  "limebb-lime-query-filter-or": HTMLLimebbLimeQueryFilterOrElement;
3492
3572
  "limebb-lime-query-value-input": HTMLLimebbLimeQueryValueInputElement;
@@ -4518,13 +4598,23 @@ declare namespace LocalJSX {
4518
4598
  * - **Type-aware inputs**: Automatic input types based on property type
4519
4599
  * - **Response format**: Select which properties to return
4520
4600
  * - **Query options**: Configure limit and other query parameters
4601
+ * - **Placeholder support**: Use `%activeObject%` placeholders in filter values
4521
4602
  * - **Real-time output**: See the Lime Query JSON as you build
4522
4603
  * The component produces a complete `LimeQuery` object that can be sent
4523
4604
  * directly to the Lime CRM backend.
4605
+ * **Active Object Placeholders**:
4606
+ * When the `activeLimetype` prop is provided, the component enables validation
4607
+ * and UI support for `%activeObject%` placeholders in filter expressions.
4608
+ * These placeholders reference properties of a contextual "active object"
4609
+ * (e.g., `%activeObject%.company` references the company of the active object).
4524
4610
  * @exampleComponent limebb-example-lime-query-builder-basic
4525
4611
  * @private
4526
4612
  */
4527
4613
  interface LimebbLimeQueryBuilder {
4614
+ /**
4615
+ * The limetype of the active object (for %activeObject% placeholder validation). When provided, enables placeholder validation and the placeholder input mode. When omitted, placeholders are accepted without validation.
4616
+ */
4617
+ "activeLimetype"?: string;
4528
4618
  /**
4529
4619
  * Component context
4530
4620
  */
@@ -4570,7 +4660,7 @@ declare namespace LocalJSX {
4570
4660
  /**
4571
4661
  * The AND expression containing child expressions
4572
4662
  */
4573
- "expression"?: LimeQueryFilterAnd;
4663
+ "expression"?: AndOrExpression;
4574
4664
  /**
4575
4665
  * Optional label for the AND group
4576
4666
  */
@@ -4580,9 +4670,9 @@ declare namespace LocalJSX {
4580
4670
  */
4581
4671
  "limetype"?: string;
4582
4672
  /**
4583
- * Emitted when the AND expression changes (expressions added/removed/modified)
4673
+ * Emitted when the AND expression changes (expressions added/removed/modified) Emits undefined when expression should be removed Can emit any Expression type when unwrapping (single child)
4584
4674
  */
4585
- "onExpressionChange"?: (event: LimebbLimeQueryFilterAndCustomEvent<LimeQueryFilterAnd | LimeQueryFilterMissing>) => void;
4675
+ "onExpressionChange"?: (event: LimebbLimeQueryFilterAndCustomEvent<Expression | undefined>) => void;
4586
4676
  /**
4587
4677
  * Platform service provider
4588
4678
  */
@@ -4618,7 +4708,7 @@ declare namespace LocalJSX {
4618
4708
  /**
4619
4709
  * The comparison expression to render
4620
4710
  */
4621
- "expression"?: LimeQueryFilterComparison;
4711
+ "expression"?: ComparisonExpression;
4622
4712
  /**
4623
4713
  * Optional label for the comparison
4624
4714
  */
@@ -4628,9 +4718,9 @@ declare namespace LocalJSX {
4628
4718
  */
4629
4719
  "limetype"?: string;
4630
4720
  /**
4631
- * Emitted when the comparison expression changes (property/operator/value modified)
4721
+ * Emitted when the comparison expression changes (property/operator/value modified) Emits undefined when the expression should be removed
4632
4722
  */
4633
- "onExpressionChange"?: (event: LimebbLimeQueryFilterComparisonCustomEvent<LimeQueryFilterComparison | LimeQueryFilterMissing>) => void;
4723
+ "onExpressionChange"?: (event: LimebbLimeQueryFilterComparisonCustomEvent<ComparisonExpression | undefined>) => void;
4634
4724
  /**
4635
4725
  * Platform service provider
4636
4726
  */
@@ -4638,15 +4728,11 @@ declare namespace LocalJSX {
4638
4728
  }
4639
4729
  /**
4640
4730
  * Lime Query Filter Expression Router
4641
- * This is the main entry point for rendering Lime Query filters.
4642
- * It routes to the appropriate sub-component based on the filter type:
4643
- * - `'AND'` → limebb-lime-query-filter-and
4644
- * - `'OR'` → limebb-lime-query-filter-or
4645
- * - `'NOT'` → limebb-lime-query-filter-not
4646
- * - `'comparison'` → limebb-lime-query-filter-comparison
4647
- * - `''` (missing) → limebb-lime-query-filter-comparison (default)
4648
- * Use this component when you need to render a complete filter expression
4649
- * that may contain nested AND/OR/NOT logic.
4731
+ * Router component for rendering Lime Query filter expressions.
4732
+ * Routes to the appropriate sub-component based on expression structure:
4733
+ * - Has `key` property → limebb-lime-query-filter-comparison
4734
+ * - `op: Operator.AND | Operator.OR` → limebb-lime-query-filter-group
4735
+ * - `op: Operator.NOT` → limebb-lime-query-filter-not
4650
4736
  * @private
4651
4737
  */
4652
4738
  interface LimebbLimeQueryFilterExpression {
@@ -4661,7 +4747,7 @@ declare namespace LocalJSX {
4661
4747
  /**
4662
4748
  * The filter expression to render
4663
4749
  */
4664
- "expression"?: LimeQueryFilterExpression;
4750
+ "expression"?: Expression;
4665
4751
  /**
4666
4752
  * Optional label for the expression
4667
4753
  */
@@ -4671,9 +4757,49 @@ declare namespace LocalJSX {
4671
4757
  */
4672
4758
  "limetype"?: string;
4673
4759
  /**
4674
- * Emitted when the filter expression changes
4760
+ * Emitted when the filter expression changes Emits undefined when expression should be removed
4761
+ */
4762
+ "onExpressionChange"?: (event: LimebbLimeQueryFilterExpressionCustomEvent<Expression | undefined>) => void;
4763
+ /**
4764
+ * Platform service provider
4765
+ */
4766
+ "platform"?: LimeWebComponentPlatform;
4767
+ }
4768
+ /**
4769
+ * Lime Query Filter Group Component
4770
+ * Renders a group of filter expressions with AND/OR logic that can be toggled.
4771
+ * Users can click the header to toggle between "All conditions" (AND) and
4772
+ * "Any condition" (OR).
4773
+ * This component displays:
4774
+ * - A clickable header showing the current logic (AND/OR)
4775
+ * - A list of child expressions (which can be comparisons or nested groups)
4776
+ * - An "Add" button to add more expressions
4777
+ * Clicking the header toggles between AND and OR logic.
4778
+ * If a child component emits an ExpressionChange event with undefined, the
4779
+ * child is removed from the group.
4780
+ * @private
4781
+ */
4782
+ interface LimebbLimeQueryFilterGroup {
4783
+ /**
4784
+ * The limetype of the active object (for %activeObject% placeholders)
4785
+ */
4786
+ "activeLimetype"?: string;
4787
+ /**
4788
+ * Component context
4789
+ */
4790
+ "context"?: LimeWebComponentContext;
4791
+ /**
4792
+ * The group expression (AND or OR)
4793
+ */
4794
+ "expression"?: AndOrExpression;
4795
+ /**
4796
+ * The limetype being queried (e.g., "deal", "company")
4797
+ */
4798
+ "limetype"?: string;
4799
+ /**
4800
+ * Emitted when the group expression changes Emits undefined when expression should be removed Can emit any Expression type when unwrapping (single child)
4675
4801
  */
4676
- "onExpressionChange"?: (event: LimebbLimeQueryFilterExpressionCustomEvent<LimeQueryFilterExpression>) => void;
4802
+ "onExpressionChange"?: (event: LimebbLimeQueryFilterGroupCustomEvent<Expression | undefined>) => void;
4677
4803
  /**
4678
4804
  * Platform service provider
4679
4805
  */
@@ -4704,7 +4830,7 @@ declare namespace LocalJSX {
4704
4830
  /**
4705
4831
  * The NOT expression containing the child expression to negate
4706
4832
  */
4707
- "expression"?: LimeQueryFilterNot;
4833
+ "expression"?: NotExpression;
4708
4834
  /**
4709
4835
  * Optional label for the NOT expression
4710
4836
  */
@@ -4714,9 +4840,9 @@ declare namespace LocalJSX {
4714
4840
  */
4715
4841
  "limetype"?: string;
4716
4842
  /**
4717
- * Emitted when the NOT expression changes (child expression modified or removed)
4843
+ * Emitted when the NOT expression changes (child expression modified or removed) Emits undefined when the expression should be removed
4718
4844
  */
4719
- "onExpressionChange"?: (event: LimebbLimeQueryFilterNotCustomEvent<LimeQueryFilterNot | LimeQueryFilterMissing>) => void;
4845
+ "onExpressionChange"?: (event: LimebbLimeQueryFilterNotCustomEvent<NotExpression | undefined>) => void;
4720
4846
  /**
4721
4847
  * Platform service provider
4722
4848
  */
@@ -4746,7 +4872,7 @@ declare namespace LocalJSX {
4746
4872
  /**
4747
4873
  * The OR expression containing child expressions
4748
4874
  */
4749
- "expression"?: LimeQueryFilterOr;
4875
+ "expression"?: AndOrExpression;
4750
4876
  /**
4751
4877
  * Optional label for the OR group
4752
4878
  */
@@ -4756,9 +4882,9 @@ declare namespace LocalJSX {
4756
4882
  */
4757
4883
  "limetype"?: string;
4758
4884
  /**
4759
- * Emitted when the OR expression changes (expressions added/removed/modified)
4885
+ * Emitted when the OR expression changes (expressions added/removed/modified) Emits undefined when expression should be removed Can emit any Expression type when unwrapping (single child)
4760
4886
  */
4761
- "onExpressionChange"?: (event: LimebbLimeQueryFilterOrCustomEvent<LimeQueryFilterOr | LimeQueryFilterMissing>) => void;
4887
+ "onExpressionChange"?: (event: LimebbLimeQueryFilterOrCustomEvent<Expression | undefined>) => void;
4762
4888
  /**
4763
4889
  * Platform service provider
4764
4890
  */
@@ -5666,6 +5792,7 @@ declare namespace LocalJSX {
5666
5792
  "limebb-lime-query-filter-and": LimebbLimeQueryFilterAnd;
5667
5793
  "limebb-lime-query-filter-comparison": LimebbLimeQueryFilterComparison;
5668
5794
  "limebb-lime-query-filter-expression": LimebbLimeQueryFilterExpression;
5795
+ "limebb-lime-query-filter-group": LimebbLimeQueryFilterGroup;
5669
5796
  "limebb-lime-query-filter-not": LimebbLimeQueryFilterNot;
5670
5797
  "limebb-lime-query-filter-or": LimebbLimeQueryFilterOr;
5671
5798
  "limebb-lime-query-value-input": LimebbLimeQueryValueInput;
@@ -5974,9 +6101,15 @@ declare module "@stencil/core" {
5974
6101
  * - **Type-aware inputs**: Automatic input types based on property type
5975
6102
  * - **Response format**: Select which properties to return
5976
6103
  * - **Query options**: Configure limit and other query parameters
6104
+ * - **Placeholder support**: Use `%activeObject%` placeholders in filter values
5977
6105
  * - **Real-time output**: See the Lime Query JSON as you build
5978
6106
  * The component produces a complete `LimeQuery` object that can be sent
5979
6107
  * directly to the Lime CRM backend.
6108
+ * **Active Object Placeholders**:
6109
+ * When the `activeLimetype` prop is provided, the component enables validation
6110
+ * and UI support for `%activeObject%` placeholders in filter expressions.
6111
+ * These placeholders reference properties of a contextual "active object"
6112
+ * (e.g., `%activeObject%.company` references the company of the active object).
5980
6113
  * @exampleComponent limebb-example-lime-query-builder-basic
5981
6114
  * @private
5982
6115
  */
@@ -6015,18 +6148,29 @@ declare module "@stencil/core" {
6015
6148
  "limebb-lime-query-filter-comparison": LocalJSX.LimebbLimeQueryFilterComparison & JSXBase.HTMLAttributes<HTMLLimebbLimeQueryFilterComparisonElement>;
6016
6149
  /**
6017
6150
  * Lime Query Filter Expression Router
6018
- * This is the main entry point for rendering Lime Query filters.
6019
- * It routes to the appropriate sub-component based on the filter type:
6020
- * - `'AND'` → limebb-lime-query-filter-and
6021
- * - `'OR'` → limebb-lime-query-filter-or
6022
- * - `'NOT'` → limebb-lime-query-filter-not
6023
- * - `'comparison'` → limebb-lime-query-filter-comparison
6024
- * - `''` (missing) → limebb-lime-query-filter-comparison (default)
6025
- * Use this component when you need to render a complete filter expression
6026
- * that may contain nested AND/OR/NOT logic.
6151
+ * Router component for rendering Lime Query filter expressions.
6152
+ * Routes to the appropriate sub-component based on expression structure:
6153
+ * - Has `key` property → limebb-lime-query-filter-comparison
6154
+ * - `op: Operator.AND | Operator.OR` → limebb-lime-query-filter-group
6155
+ * - `op: Operator.NOT` → limebb-lime-query-filter-not
6027
6156
  * @private
6028
6157
  */
6029
6158
  "limebb-lime-query-filter-expression": LocalJSX.LimebbLimeQueryFilterExpression & JSXBase.HTMLAttributes<HTMLLimebbLimeQueryFilterExpressionElement>;
6159
+ /**
6160
+ * Lime Query Filter Group Component
6161
+ * Renders a group of filter expressions with AND/OR logic that can be toggled.
6162
+ * Users can click the header to toggle between "All conditions" (AND) and
6163
+ * "Any condition" (OR).
6164
+ * This component displays:
6165
+ * - A clickable header showing the current logic (AND/OR)
6166
+ * - A list of child expressions (which can be comparisons or nested groups)
6167
+ * - An "Add" button to add more expressions
6168
+ * Clicking the header toggles between AND and OR logic.
6169
+ * If a child component emits an ExpressionChange event with undefined, the
6170
+ * child is removed from the group.
6171
+ * @private
6172
+ */
6173
+ "limebb-lime-query-filter-group": LocalJSX.LimebbLimeQueryFilterGroup & JSXBase.HTMLAttributes<HTMLLimebbLimeQueryFilterGroupElement>;
6030
6174
  /**
6031
6175
  * Lime Query Filter NOT Component
6032
6176
  * Renders a negated filter expression. This inverts the logic of the child expression,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@limetech/lime-crm-building-blocks",
3
- "version": "1.97.0",
3
+ "version": "1.99.0",
4
4
  "description": "A home for shared components meant for use with Lime CRM",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -1,37 +0,0 @@
1
- 'use strict';
2
-
3
- const _baseIsEqual = require('./_baseIsEqual-cb7951b0.js');
4
-
5
- /**
6
- * Performs a deep comparison between two values to determine if they are
7
- * equivalent.
8
- *
9
- * **Note:** This method supports comparing arrays, array buffers, booleans,
10
- * date objects, error objects, maps, numbers, `Object` objects, regexes,
11
- * sets, strings, symbols, and typed arrays. `Object` objects are compared
12
- * by their own, not inherited, enumerable properties. Functions and DOM
13
- * nodes are compared by strict equality, i.e. `===`.
14
- *
15
- * @static
16
- * @memberOf _
17
- * @since 0.1.0
18
- * @category Lang
19
- * @param {*} value The value to compare.
20
- * @param {*} other The other value to compare.
21
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
22
- * @example
23
- *
24
- * var object = { 'a': 1 };
25
- * var other = { 'a': 1 };
26
- *
27
- * _.isEqual(object, other);
28
- * // => true
29
- *
30
- * object === other;
31
- * // => false
32
- */
33
- function isEqual(value, other) {
34
- return _baseIsEqual.baseIsEqual(value, other);
35
- }
36
-
37
- exports.isEqual = isEqual;
@@ -1,61 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * TypeScript type definitions for Lime Query DSL
5
- *
6
- * These types represent the structure of Lime Query as defined in:
7
- * - lime-core/lime_query/schema.py
8
- * - lime-core/lime_filter/schema.py
9
- */
10
- /**
11
- * Available operators with display metadata
12
- */
13
- const LIME_QUERY_OPERATORS = [
14
- { value: '=', label: 'Equals', icon: 'equals' },
15
- { value: '!=', label: 'Not Equals', icon: 'not-equal' },
16
- {
17
- value: '>',
18
- label: 'Greater Than',
19
- icon: 'greater-than',
20
- applicableTypes: ['integer', 'decimal', 'date', 'time'],
21
- },
22
- {
23
- value: '>=',
24
- label: 'Greater or Equal',
25
- icon: 'greater-or-equal',
26
- applicableTypes: ['integer', 'decimal', 'date', 'time'],
27
- },
28
- {
29
- value: '<',
30
- label: 'Less Than',
31
- icon: 'less-than',
32
- applicableTypes: ['integer', 'decimal', 'date', 'time'],
33
- },
34
- {
35
- value: '<=',
36
- label: 'Less or Equal',
37
- icon: 'less-or-equal',
38
- applicableTypes: ['integer', 'decimal', 'date', 'time'],
39
- },
40
- { value: 'IN', label: 'In List', icon: 'list' },
41
- {
42
- value: '?',
43
- label: 'Contains',
44
- icon: '-lime-filter-contain',
45
- applicableTypes: ['string', 'text'],
46
- },
47
- {
48
- value: '=?',
49
- label: 'Begins With',
50
- icon: '-lime-filter-begin',
51
- applicableTypes: ['string', 'text'],
52
- },
53
- {
54
- value: '=$',
55
- label: 'Ends With',
56
- icon: '-lime-filter-end',
57
- applicableTypes: ['string', 'text'],
58
- },
59
- ];
60
-
61
- exports.LIME_QUERY_OPERATORS = LIME_QUERY_OPERATORS;