@limetech/lime-crm-building-blocks 1.139.0 → 1.140.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 (356) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/cjs/{filter-condition-icons-HypsDn6x.js → filter-condition-icons-QK5stWj6.js} +142 -0
  3. package/dist/cjs/{filter-group-logic-BoF3Z5_P.js → filter-group-logic-BPpM2NqX.js} +1 -1
  4. package/dist/cjs/filter-operators-BTWvpD6A.js +61 -0
  5. package/dist/cjs/{index-B9Bi9dpZ.js → index-BrWc7h0p.js} +1 -1
  6. package/dist/cjs/index.cjs.js +8 -1
  7. package/dist/cjs/{index.esm-8LHVbTD0.js → index.esm-Se3EtD3m.js} +2 -2
  8. package/dist/cjs/lime-crm-building-blocks.cjs.js +3 -3
  9. package/dist/cjs/{lime-query-validation-q-sH7XSs.js → lime-query-validation-CJC3mtnT.js} +1 -1
  10. package/dist/cjs/limebb-alert-dialog.cjs.entry.js +2 -2
  11. package/dist/cjs/limebb-browser.cjs.entry.js +4 -4
  12. package/dist/cjs/limebb-chat-icon-list_3.cjs.entry.js +7 -7
  13. package/dist/cjs/limebb-chat-list.cjs.entry.js +3 -3
  14. package/dist/cjs/limebb-color-palette-picker.cjs.entry.js +2 -2
  15. package/dist/cjs/limebb-color-palette-swatches.cjs.entry.js +2 -2
  16. package/dist/cjs/limebb-component-config.cjs.entry.js +3 -3
  17. package/dist/cjs/limebb-component-picker.cjs.entry.js +2 -2
  18. package/dist/cjs/limebb-composer-toolbar.cjs.entry.js +4 -4
  19. package/dist/cjs/limebb-currency-picker.cjs.entry.js +3 -3
  20. package/dist/cjs/limebb-dashboard-widget.cjs.entry.js +2 -2
  21. package/dist/cjs/limebb-data-cells.cjs.entry.js +7 -4
  22. package/dist/cjs/limebb-date-picker.cjs.entry.js +3 -3
  23. package/dist/cjs/limebb-date-range.cjs.entry.js +2 -2
  24. package/dist/cjs/limebb-document-chips.cjs.entry.js +2 -2
  25. package/dist/cjs/limebb-document-item.cjs.entry.js +3 -3
  26. package/dist/cjs/limebb-document-picker.cjs.entry.js +2 -2
  27. package/dist/cjs/limebb-empty-state.cjs.entry.js +1 -1
  28. package/dist/cjs/limebb-feed-item-thumbnail-file-info.cjs.entry.js +2 -2
  29. package/dist/cjs/limebb-feed-timeline-item.cjs.entry.js +4 -4
  30. package/dist/cjs/limebb-feed.cjs.entry.js +91 -34
  31. package/dist/cjs/{limebb-filter-chip_5.cjs.entry.js → limebb-filter-chip_6.cjs.entry.js} +120 -86
  32. package/dist/cjs/limebb-icon-picker.cjs.entry.js +2 -2
  33. package/dist/cjs/limebb-info-tile-currency-format.cjs.entry.js +1 -1
  34. package/dist/cjs/limebb-info-tile-date-format.cjs.entry.js +1 -1
  35. package/dist/cjs/limebb-info-tile-decimal-format.cjs.entry.js +1 -1
  36. package/dist/cjs/limebb-info-tile-format.cjs.entry.js +2 -2
  37. package/dist/cjs/limebb-info-tile-relative-date-format.cjs.entry.js +1 -1
  38. package/dist/cjs/limebb-info-tile-unit-format.cjs.entry.js +1 -1
  39. package/dist/cjs/limebb-info-tile.cjs.entry.js +4 -4
  40. package/dist/cjs/limebb-kanban-group.cjs.entry.js +4 -4
  41. package/dist/cjs/limebb-kanban-item.cjs.entry.js +4 -4
  42. package/dist/cjs/limebb-kanban.cjs.entry.js +1 -1
  43. package/dist/cjs/limebb-lime-query-builder.cjs.entry.js +4 -4
  44. package/dist/cjs/limebb-lime-query-filter-builder.cjs.entry.js +3 -3
  45. package/dist/cjs/limebb-lime-query-filter-comparison_2.cjs.entry.js +10 -27
  46. package/dist/cjs/limebb-lime-query-order-by-editor_2.cjs.entry.js +5 -5
  47. package/dist/cjs/limebb-lime-query-order-by-item.cjs.entry.js +3 -3
  48. package/dist/cjs/limebb-lime-query-response-format-builder.cjs.entry.js +4 -4
  49. package/dist/cjs/limebb-lime-query-response-format-editor_2.cjs.entry.js +3 -3
  50. package/dist/cjs/limebb-limeobject-file-viewer.cjs.entry.js +2 -2
  51. package/dist/cjs/limebb-live-docs-info.cjs.entry.js +3 -3
  52. package/dist/cjs/limebb-loader.cjs.entry.js +2 -2
  53. package/dist/cjs/limebb-locale-picker.cjs.entry.js +3 -3
  54. package/dist/cjs/limebb-mention-group-counter.cjs.entry.js +3 -3
  55. package/dist/cjs/limebb-mention.cjs.entry.js +2 -2
  56. package/dist/cjs/limebb-navigation-button_2.cjs.entry.js +3 -3
  57. package/dist/cjs/limebb-notification-item.cjs.entry.js +3 -3
  58. package/dist/cjs/limebb-notification-list.cjs.entry.js +2 -2
  59. package/dist/cjs/limebb-object-chip.cjs.entry.js +3 -3
  60. package/dist/cjs/limebb-percentage-visualizer.cjs.entry.js +5 -5
  61. package/dist/cjs/limebb-property-selector.cjs.entry.js +3 -3
  62. package/dist/cjs/limebb-rule-arg-filter-editor.cjs.entry.js +2 -2
  63. package/dist/cjs/limebb-rule-chip-popover.cjs.entry.js +4 -4
  64. package/dist/cjs/limebb-rule-editor.cjs.entry.js +3 -3
  65. package/dist/cjs/limebb-rule-gate.cjs.entry.js +3 -3
  66. package/dist/cjs/limebb-text-editor-picker.cjs.entry.js +1 -1
  67. package/dist/cjs/limebb-text-editor.cjs.entry.js +4 -4
  68. package/dist/cjs/limebb-trend-indicator.cjs.entry.js +4 -4
  69. package/dist/cjs/limebb-value-comparison-editor.cjs.entry.js +39 -37
  70. package/dist/cjs/{limetype-CK5MVyW0.js → limetype-CmgP0nbZ.js} +1 -1
  71. package/dist/cjs/loader.cjs.js +2 -2
  72. package/dist/cjs/{web-component-template-7B9wK2bO.js → web-component-template-C9hvjrMm.js} +1 -1
  73. package/dist/collection/collection-manifest.json +2 -1
  74. package/dist/collection/components/alert-dialog/alert-dialog.js +1 -1
  75. package/dist/collection/components/browser/browser.js +2 -2
  76. package/dist/collection/components/chat-list/chat-icon-list/chat-icon-list.css +7 -5
  77. package/dist/collection/components/chat-list/chat-icon-list/chat-icon-list.js +1 -1
  78. package/dist/collection/components/chat-list/chat-item/chat-item.js +2 -2
  79. package/dist/collection/components/chat-list/chat-list.js +1 -1
  80. package/dist/collection/components/chat-list/typing-indicator/typing-indicator.js +1 -1
  81. package/dist/collection/components/color-palette-picker/color-palette-picker.js +1 -1
  82. package/dist/collection/components/color-palette-picker/color-palette-swatches/color-palette-swatches.js +1 -1
  83. package/dist/collection/components/composer-toolbar/composer-toolbar.js +2 -2
  84. package/dist/collection/components/currency-picker/currency-picker.js +1 -1
  85. package/dist/collection/components/dashboard-widget/dashboard-widget.js +1 -1
  86. package/dist/collection/components/data-cells/data-cells.js +5 -2
  87. package/dist/collection/components/date-picker/date-picker.js +1 -1
  88. package/dist/collection/components/date-range/date-range.js +1 -1
  89. package/dist/collection/components/document-chips/document-chips.js +1 -1
  90. package/dist/collection/components/document-picker/document-item/document-item.js +2 -2
  91. package/dist/collection/components/document-picker/document-picker.js +1 -1
  92. package/dist/collection/components/feed/feed-item/feed-timeline-item.css +32 -24
  93. package/dist/collection/components/feed/feed-item/feed-timeline-item.js +1 -1
  94. package/dist/collection/components/feed/feed-item-thumbnail-file-info/feed-item-thumbnail-file-info.js +1 -1
  95. package/dist/collection/components/feed/feed.js +2 -2
  96. package/dist/collection/components/filter-chip/filter-chip.css +19 -17
  97. package/dist/collection/components/filter-chip/filter-chip.js +3 -3
  98. package/dist/collection/components/filter-chip/filter-condition-icons.js +141 -0
  99. package/dist/collection/components/filter-chip/filter-operators.js +54 -0
  100. package/dist/collection/components/filter-condition-picker/filter-condition-picker.css +7 -0
  101. package/dist/collection/components/filter-condition-picker/filter-condition-picker.js +256 -0
  102. package/dist/collection/components/icon-picker/icon-picker.js +1 -1
  103. package/dist/collection/components/info-tile/format/config/info-tile-format.js +1 -1
  104. package/dist/collection/components/info-tile/info-tile.js +1 -1
  105. package/dist/collection/components/kanban/kanban-group/kanban-group.css +14 -12
  106. package/dist/collection/components/kanban/kanban-group/kanban-group.js +1 -1
  107. package/dist/collection/components/kanban/kanban-item/kanban-item.css +11 -7
  108. package/dist/collection/components/kanban/kanban-item/kanban-item.js +1 -1
  109. package/dist/collection/components/lime-query-builder/expressions/compound-leaf.js +6 -6
  110. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison-editor.js +37 -20
  111. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison.js +8 -25
  112. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.css +4 -4
  113. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.js +2 -2
  114. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-not.js +1 -1
  115. package/dist/collection/components/lime-query-builder/expressions/lime-query-operators.js +23 -57
  116. package/dist/collection/components/lime-query-builder/lime-query-builder.js +1 -1
  117. package/dist/collection/components/lime-query-builder/lime-query-response-format-builder.js +1 -1
  118. package/dist/collection/components/lime-query-builder/limetype-field/limetype-field.js +1 -1
  119. package/dist/collection/components/lime-query-builder/order-by/order-by-editor.js +1 -1
  120. package/dist/collection/components/lime-query-builder/order-by/order-by-item.js +2 -2
  121. package/dist/collection/components/lime-query-builder/response-format/response-format-item.css +8 -6
  122. package/dist/collection/components/lime-query-builder/response-format/response-format-item.js +1 -1
  123. package/dist/collection/components/limeobject/file-viewer/live-docs-info.js +2 -2
  124. package/dist/collection/components/locale-picker/locale-picker.js +1 -1
  125. package/dist/collection/components/notification-list/notification-item/notification-item.js +1 -1
  126. package/dist/collection/components/percentage-visualizer/percentage-visualizer.css +7 -7
  127. package/dist/collection/components/percentage-visualizer/percentage-visualizer.js +5 -5
  128. package/dist/collection/components/rule-editor/rule-chip-popover/rule-chip-popover.js +1 -1
  129. package/dist/collection/components/rule-editor/rule-editor.js +1 -1
  130. package/dist/collection/components/rule-editor/value-comparison-editor/value-comparison-editor.js +62 -36
  131. package/dist/collection/components/rule-gate/rule-gate.js +1 -1
  132. package/dist/collection/components/summary-popover/summary-popover.js +2 -2
  133. package/dist/collection/components/text-editor/mention-group-counter.js +2 -2
  134. package/dist/collection/components/text-editor/text-editor.js +1 -1
  135. package/dist/collection/components/trend-indicator/trend-indicator.css +7 -7
  136. package/dist/collection/components/trend-indicator/trend-indicator.js +1 -1
  137. package/dist/collection/index.js +1 -0
  138. package/dist/components/chat-icon-list.js +1 -1
  139. package/dist/components/chat-item.js +1 -1
  140. package/dist/components/currency-picker.js +1 -1
  141. package/dist/components/date-picker.js +1 -1
  142. package/dist/components/document-item.js +1 -1
  143. package/dist/components/feed-item-thumbnail-file-info.js +1 -1
  144. package/dist/components/feed-timeline-item.js +1 -1
  145. package/dist/components/filter-chip.js +1 -1
  146. package/dist/components/filter-condition-icons.js +1 -1
  147. package/dist/components/filter-condition-picker.js +1 -0
  148. package/dist/components/filter-operators.js +1 -0
  149. package/dist/components/index.js +1 -1
  150. package/dist/components/kanban-group.js +1 -1
  151. package/dist/components/kanban-item.js +1 -1
  152. package/dist/components/lime-query-filter-builder.js +1 -1
  153. package/dist/components/lime-query-filter-comparison-editor.js +1 -1
  154. package/dist/components/lime-query-filter-comparison.js +1 -1
  155. package/dist/components/lime-query-filter-expression.js +1 -1
  156. package/dist/components/limebb-alert-dialog.js +1 -1
  157. package/dist/components/limebb-browser.js +1 -1
  158. package/dist/components/limebb-chat-list.js +1 -1
  159. package/dist/components/limebb-color-palette-picker.js +1 -1
  160. package/dist/components/limebb-color-palette-swatches.js +1 -1
  161. package/dist/components/limebb-composer-toolbar.js +1 -1
  162. package/dist/components/limebb-dashboard-widget.js +1 -1
  163. package/dist/components/limebb-data-cells.js +1 -1
  164. package/dist/components/limebb-date-range.js +1 -1
  165. package/dist/components/limebb-document-chips.js +1 -1
  166. package/dist/components/limebb-document-picker.js +1 -1
  167. package/dist/components/limebb-feed.js +1 -1
  168. package/dist/components/limebb-filter-condition-picker.d.ts +11 -0
  169. package/dist/components/limebb-filter-condition-picker.js +1 -0
  170. package/dist/components/limebb-icon-picker.js +1 -1
  171. package/dist/components/limebb-info-tile-format.js +1 -1
  172. package/dist/components/limebb-info-tile.js +1 -1
  173. package/dist/components/limebb-lime-query-builder.js +1 -1
  174. package/dist/components/limebb-lime-query-response-format-builder.js +1 -1
  175. package/dist/components/limebb-locale-picker.js +1 -1
  176. package/dist/components/limebb-mention-group-counter.js +1 -1
  177. package/dist/components/limebb-rule-arg-filter-editor.js +1 -1
  178. package/dist/components/limebb-rule-editor.js +1 -1
  179. package/dist/components/limebb-rule-gate.js +1 -1
  180. package/dist/components/limebb-text-editor.js +1 -1
  181. package/dist/components/limebb-trend-indicator.js +1 -1
  182. package/dist/components/limebb-value-comparison-editor.js +1 -1
  183. package/dist/components/limetype-field.js +1 -1
  184. package/dist/components/live-docs-info.js +1 -1
  185. package/dist/components/notification-item.js +1 -1
  186. package/dist/components/order-by-editor.js +1 -1
  187. package/dist/components/order-by-item.js +1 -1
  188. package/dist/components/percentage-visualizer.js +1 -1
  189. package/dist/components/response-format-item.js +1 -1
  190. package/dist/components/rule-chip-popover.js +1 -1
  191. package/dist/components/summary-popover.js +1 -1
  192. package/dist/components/typing-indicator.js +1 -1
  193. package/dist/esm/{filter-condition-icons-D8CJOcfs.js → filter-condition-icons-C_y3-T4Q.js} +142 -1
  194. package/dist/esm/{filter-group-logic-CRznE2g-.js → filter-group-logic-BMY_GEsX.js} +1 -1
  195. package/dist/esm/filter-operators-Lw-ccmxQ.js +57 -0
  196. package/dist/esm/{index-LEJjPpY0.js → index-DwHAn7LS.js} +1 -1
  197. package/dist/esm/{index.esm-B7wJLMmp.js → index.esm-C-L5fkQs.js} +1 -1
  198. package/dist/esm/index.js +4 -1
  199. package/dist/esm/lime-crm-building-blocks.js +4 -4
  200. package/dist/esm/{lime-query-validation-Dds_iPHd.js → lime-query-validation-BwvluehW.js} +1 -1
  201. package/dist/esm/limebb-alert-dialog.entry.js +2 -2
  202. package/dist/esm/limebb-browser.entry.js +4 -4
  203. package/dist/esm/limebb-chat-icon-list_3.entry.js +7 -7
  204. package/dist/esm/limebb-chat-list.entry.js +3 -3
  205. package/dist/esm/limebb-color-palette-picker.entry.js +2 -2
  206. package/dist/esm/limebb-color-palette-swatches.entry.js +2 -2
  207. package/dist/esm/limebb-component-config.entry.js +3 -3
  208. package/dist/esm/limebb-component-picker.entry.js +2 -2
  209. package/dist/esm/limebb-composer-toolbar.entry.js +4 -4
  210. package/dist/esm/limebb-currency-picker.entry.js +3 -3
  211. package/dist/esm/limebb-dashboard-widget.entry.js +2 -2
  212. package/dist/esm/limebb-data-cells.entry.js +7 -4
  213. package/dist/esm/limebb-date-picker.entry.js +3 -3
  214. package/dist/esm/limebb-date-range.entry.js +2 -2
  215. package/dist/esm/limebb-document-chips.entry.js +2 -2
  216. package/dist/esm/limebb-document-item.entry.js +3 -3
  217. package/dist/esm/limebb-document-picker.entry.js +2 -2
  218. package/dist/esm/limebb-empty-state.entry.js +1 -1
  219. package/dist/esm/limebb-feed-item-thumbnail-file-info.entry.js +2 -2
  220. package/dist/esm/limebb-feed-timeline-item.entry.js +4 -4
  221. package/dist/esm/limebb-feed.entry.js +91 -34
  222. package/dist/esm/{limebb-filter-chip_5.entry.js → limebb-filter-chip_6.entry.js} +120 -87
  223. package/dist/esm/limebb-icon-picker.entry.js +2 -2
  224. package/dist/esm/limebb-info-tile-currency-format.entry.js +1 -1
  225. package/dist/esm/limebb-info-tile-date-format.entry.js +1 -1
  226. package/dist/esm/limebb-info-tile-decimal-format.entry.js +1 -1
  227. package/dist/esm/limebb-info-tile-format.entry.js +2 -2
  228. package/dist/esm/limebb-info-tile-relative-date-format.entry.js +1 -1
  229. package/dist/esm/limebb-info-tile-unit-format.entry.js +1 -1
  230. package/dist/esm/limebb-info-tile.entry.js +4 -4
  231. package/dist/esm/limebb-kanban-group.entry.js +4 -4
  232. package/dist/esm/limebb-kanban-item.entry.js +4 -4
  233. package/dist/esm/limebb-kanban.entry.js +1 -1
  234. package/dist/esm/limebb-lime-query-builder.entry.js +4 -4
  235. package/dist/esm/limebb-lime-query-filter-builder.entry.js +3 -3
  236. package/dist/esm/limebb-lime-query-filter-comparison_2.entry.js +10 -27
  237. package/dist/esm/limebb-lime-query-order-by-editor_2.entry.js +5 -5
  238. package/dist/esm/limebb-lime-query-order-by-item.entry.js +3 -3
  239. package/dist/esm/limebb-lime-query-response-format-builder.entry.js +4 -4
  240. package/dist/esm/limebb-lime-query-response-format-editor_2.entry.js +3 -3
  241. package/dist/esm/limebb-limeobject-file-viewer.entry.js +2 -2
  242. package/dist/esm/limebb-live-docs-info.entry.js +3 -3
  243. package/dist/esm/limebb-loader.entry.js +2 -2
  244. package/dist/esm/limebb-locale-picker.entry.js +3 -3
  245. package/dist/esm/limebb-mention-group-counter.entry.js +3 -3
  246. package/dist/esm/limebb-mention.entry.js +2 -2
  247. package/dist/esm/limebb-navigation-button_2.entry.js +3 -3
  248. package/dist/esm/limebb-notification-item.entry.js +3 -3
  249. package/dist/esm/limebb-notification-list.entry.js +2 -2
  250. package/dist/esm/limebb-object-chip.entry.js +3 -3
  251. package/dist/esm/limebb-percentage-visualizer.entry.js +5 -5
  252. package/dist/esm/limebb-property-selector.entry.js +3 -3
  253. package/dist/esm/limebb-rule-arg-filter-editor.entry.js +2 -2
  254. package/dist/esm/limebb-rule-chip-popover.entry.js +4 -4
  255. package/dist/esm/limebb-rule-editor.entry.js +3 -3
  256. package/dist/esm/limebb-rule-gate.entry.js +3 -3
  257. package/dist/esm/limebb-text-editor-picker.entry.js +1 -1
  258. package/dist/esm/limebb-text-editor.entry.js +4 -4
  259. package/dist/esm/limebb-trend-indicator.entry.js +4 -4
  260. package/dist/esm/limebb-value-comparison-editor.entry.js +39 -37
  261. package/dist/esm/{limetype-DH77rgZZ.js → limetype-D4ZaWZ-3.js} +1 -1
  262. package/dist/esm/loader.js +3 -3
  263. package/dist/esm/{web-component-template-CXFK-BYa.js → web-component-template-CAI6pXCH.js} +1 -1
  264. package/dist/lime-crm-building-blocks/index.esm.js +1 -1
  265. package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
  266. package/dist/lime-crm-building-blocks/{p-bb825e68.entry.js → p-00ca6522.entry.js} +1 -1
  267. package/dist/lime-crm-building-blocks/p-01f84b0c.entry.js +1 -0
  268. package/dist/lime-crm-building-blocks/{p-7597eb85.entry.js → p-0253fd45.entry.js} +1 -1
  269. package/dist/lime-crm-building-blocks/{p-ae9780ff.entry.js → p-05a1762a.entry.js} +1 -1
  270. package/dist/lime-crm-building-blocks/{p-4f398108.entry.js → p-0c4f6220.entry.js} +1 -1
  271. package/dist/lime-crm-building-blocks/{p-ae802651.entry.js → p-19dc7242.entry.js} +1 -1
  272. package/dist/lime-crm-building-blocks/{p-e4aeb4fe.entry.js → p-1f97e235.entry.js} +1 -1
  273. package/dist/lime-crm-building-blocks/{p-0b13889c.entry.js → p-22e68812.entry.js} +1 -1
  274. package/dist/lime-crm-building-blocks/{p-4bdf9821.entry.js → p-251aca46.entry.js} +1 -1
  275. package/dist/lime-crm-building-blocks/{p-2caee700.entry.js → p-29758303.entry.js} +1 -1
  276. package/dist/lime-crm-building-blocks/{p-37c0a17f.entry.js → p-2dab7d4b.entry.js} +1 -1
  277. package/dist/lime-crm-building-blocks/{p-382ab76b.entry.js → p-2e48601d.entry.js} +1 -1
  278. package/dist/lime-crm-building-blocks/{p-db9ed6ed.entry.js → p-354257f4.entry.js} +1 -1
  279. package/dist/lime-crm-building-blocks/{p-5960143c.entry.js → p-3bf316f9.entry.js} +1 -1
  280. package/dist/lime-crm-building-blocks/{p-e4ccc690.entry.js → p-3f537135.entry.js} +1 -1
  281. package/dist/lime-crm-building-blocks/{p-fe9cbbdd.entry.js → p-430e3d11.entry.js} +1 -1
  282. package/dist/lime-crm-building-blocks/{p-9b411072.entry.js → p-43bdd66b.entry.js} +1 -1
  283. package/dist/lime-crm-building-blocks/p-58f18819.entry.js +1 -0
  284. package/dist/lime-crm-building-blocks/{p-b6a8ad7a.entry.js → p-6f4e2590.entry.js} +1 -1
  285. package/dist/lime-crm-building-blocks/p-6fe4c1cd.entry.js +1 -0
  286. package/dist/lime-crm-building-blocks/{p-3e9de50b.entry.js → p-7033d408.entry.js} +1 -1
  287. package/dist/lime-crm-building-blocks/{p-6a7eb5b2.entry.js → p-73b71080.entry.js} +1 -1
  288. package/dist/lime-crm-building-blocks/p-752742f8.entry.js +1 -0
  289. package/dist/lime-crm-building-blocks/{p-b0ac4a5f.entry.js → p-7b6c9cbf.entry.js} +1 -1
  290. package/dist/lime-crm-building-blocks/{p-6db41866.entry.js → p-80e04b27.entry.js} +1 -1
  291. package/dist/lime-crm-building-blocks/{p-be4829f3.entry.js → p-863f456c.entry.js} +1 -1
  292. package/dist/lime-crm-building-blocks/{p-1cd45d56.entry.js → p-896e77b9.entry.js} +1 -1
  293. package/dist/lime-crm-building-blocks/{p-19b95901.entry.js → p-8986f27b.entry.js} +1 -1
  294. package/dist/lime-crm-building-blocks/{p-bec2bcef.entry.js → p-89f120f8.entry.js} +1 -1
  295. package/dist/lime-crm-building-blocks/p-92bf5318.entry.js +1 -0
  296. package/dist/lime-crm-building-blocks/{p-edf566e7.entry.js → p-9452fb56.entry.js} +1 -1
  297. package/dist/lime-crm-building-blocks/{p-e031c267.entry.js → p-964b066d.entry.js} +1 -1
  298. package/dist/lime-crm-building-blocks/{p-639032ba.entry.js → p-97839894.entry.js} +1 -1
  299. package/dist/lime-crm-building-blocks/p-B-WBKAaa.js +1 -0
  300. package/dist/lime-crm-building-blocks/p-BjXRsiQr.js +1 -0
  301. package/dist/lime-crm-building-blocks/{p-Dtg8KAQt.js → p-Bkno2RtN.js} +1 -1
  302. package/dist/lime-crm-building-blocks/{p-DM0fyjo-.js → p-CI6VHE0w.js} +1 -1
  303. package/dist/lime-crm-building-blocks/{p-D8CJOcfs.js → p-C_y3-T4Q.js} +1 -1
  304. package/dist/lime-crm-building-blocks/p-D1RJ1y7s.js +1 -0
  305. package/dist/lime-crm-building-blocks/{p-BxpMk4Zk.js → p-DI3GWqfD.js} +1 -1
  306. package/dist/lime-crm-building-blocks/p-a157233b.entry.js +1 -0
  307. package/dist/lime-crm-building-blocks/{p-3c6fb9d1.entry.js → p-a4e676a6.entry.js} +1 -1
  308. package/dist/lime-crm-building-blocks/{p-2091d4c8.entry.js → p-a6e9cefe.entry.js} +1 -1
  309. package/dist/lime-crm-building-blocks/{p-d5ad0cd9.entry.js → p-aafead4e.entry.js} +1 -1
  310. package/dist/lime-crm-building-blocks/{p-e2503bad.entry.js → p-b0b8ce73.entry.js} +1 -1
  311. package/dist/lime-crm-building-blocks/p-b34817df.entry.js +1 -0
  312. package/dist/lime-crm-building-blocks/p-c0fa239a.entry.js +1 -0
  313. package/dist/lime-crm-building-blocks/p-c4e2dca5.entry.js +1 -0
  314. package/dist/lime-crm-building-blocks/{p-73fab4a9.entry.js → p-c891125e.entry.js} +1 -1
  315. package/dist/lime-crm-building-blocks/p-cac2a49f.entry.js +1 -0
  316. package/dist/lime-crm-building-blocks/{p-655f028c.entry.js → p-cd7106f7.entry.js} +1 -1
  317. package/dist/lime-crm-building-blocks/{p-7dc9923f.entry.js → p-d40f53a5.entry.js} +1 -1
  318. package/dist/lime-crm-building-blocks/{p-bae91ba0.entry.js → p-d78370be.entry.js} +1 -1
  319. package/dist/lime-crm-building-blocks/{p-fdd63bcc.entry.js → p-d7d21bad.entry.js} +1 -1
  320. package/dist/lime-crm-building-blocks/{p-05f8b18e.entry.js → p-dba6f583.entry.js} +1 -1
  321. package/dist/lime-crm-building-blocks/p-dbbc5ba7.entry.js +1 -0
  322. package/dist/lime-crm-building-blocks/{p-94cee387.entry.js → p-dec2b87d.entry.js} +1 -1
  323. package/dist/lime-crm-building-blocks/{p-2cac740d.entry.js → p-e242b955.entry.js} +1 -1
  324. package/dist/lime-crm-building-blocks/{p-27f700c9.entry.js → p-e29c27b8.entry.js} +1 -1
  325. package/dist/lime-crm-building-blocks/{p-a201e304.entry.js → p-ec1e079e.entry.js} +1 -1
  326. package/dist/lime-crm-building-blocks/{p-3c19f792.entry.js → p-edeb359f.entry.js} +1 -1
  327. package/dist/lime-crm-building-blocks/{p-c90ef898.entry.js → p-f1090436.entry.js} +1 -1
  328. package/dist/lime-crm-building-blocks/{p-6e298dd5.entry.js → p-f3cb68d6.entry.js} +1 -1
  329. package/dist/lime-crm-building-blocks/{p-46f2667e.entry.js → p-f4214745.entry.js} +1 -1
  330. package/dist/lime-crm-building-blocks/{p-37fbd50d.entry.js → p-f4d518ec.entry.js} +1 -1
  331. package/dist/lime-crm-building-blocks/{p-22af159d.entry.js → p-fb050628.entry.js} +1 -1
  332. package/dist/lime-crm-building-blocks/{p-f3d3ff7e.entry.js → p-fb8d854b.entry.js} +1 -1
  333. package/dist/types/components/filter-chip/filter-condition-icons.d.ts +8 -0
  334. package/dist/types/components/filter-chip/filter-operators.d.ts +22 -0
  335. package/dist/types/components/filter-condition-picker/filter-condition-picker.d.ts +60 -0
  336. package/dist/types/components/lime-query-builder/expressions/lime-query-filter-comparison-editor.d.ts +8 -4
  337. package/dist/types/components/lime-query-builder/expressions/lime-query-operators.d.ts +16 -9
  338. package/dist/types/components/rule-editor/value-comparison-editor/value-comparison-editor.d.ts +7 -2
  339. package/dist/types/components.d.ts +174 -10
  340. package/dist/types/index.d.ts +1 -0
  341. package/dist/types/stencil-public-runtime.d.ts +1 -0
  342. package/package.json +14 -14
  343. package/dist/lime-crm-building-blocks/p-15bb23c9.entry.js +0 -1
  344. package/dist/lime-crm-building-blocks/p-357c5a54.entry.js +0 -1
  345. package/dist/lime-crm-building-blocks/p-47912c60.entry.js +0 -1
  346. package/dist/lime-crm-building-blocks/p-5f940ea8.entry.js +0 -1
  347. package/dist/lime-crm-building-blocks/p-80f2f76c.entry.js +0 -1
  348. package/dist/lime-crm-building-blocks/p-8eec03b7.entry.js +0 -1
  349. package/dist/lime-crm-building-blocks/p-8f7c054d.entry.js +0 -1
  350. package/dist/lime-crm-building-blocks/p-Bb18Bgig.js +0 -1
  351. package/dist/lime-crm-building-blocks/p-b6b8dad7.entry.js +0 -1
  352. package/dist/lime-crm-building-blocks/p-cac27f2c.entry.js +0 -1
  353. package/dist/lime-crm-building-blocks/p-d99e57aa.entry.js +0 -1
  354. package/dist/lime-crm-building-blocks/p-f93a749f.entry.js +0 -1
  355. package/dist/lime-crm-building-blocks/p-xIXgZHrE.js +0 -1
  356. /package/dist/lime-crm-building-blocks/{p-LEJjPpY0.js → p-DwHAn7LS.js} +0 -0
@@ -234,18 +234,6 @@ button#show-more-button {
234
234
  color: var(--limel-theme-on-surface-color);
235
235
  background-color: var(--lime-elevated-surface-background-color);
236
236
  box-shadow: var(--button-shadow-normal);
237
- z-index: 1;
238
- position: absolute;
239
- right: 0;
240
- bottom: -0.6rem;
241
- left: 0;
242
- margin: 0 auto;
243
- display: flex;
244
- align-items: center;
245
- justify-content: center;
246
- border-radius: 3rem;
247
- width: 2rem;
248
- height: 1rem;
249
237
  }
250
238
  button#show-more-button:hover, button#show-more-button:focus, button#show-more-button:focus-visible {
251
239
  will-change: color, background-color, box-shadow, transform;
@@ -277,6 +265,20 @@ button#show-more-button:focus-visible {
277
265
  outline: none;
278
266
  box-shadow: var(--shadow-depth-8-focused);
279
267
  }
268
+ button#show-more-button {
269
+ z-index: 1;
270
+ position: absolute;
271
+ right: 0;
272
+ bottom: -0.6rem;
273
+ left: 0;
274
+ margin: 0 auto;
275
+ display: flex;
276
+ align-items: center;
277
+ justify-content: center;
278
+ border-radius: 3rem;
279
+ width: 2rem;
280
+ height: 1rem;
281
+ }
280
282
  button#show-more-button limel-icon {
281
283
  transition: rotate 0.2s ease 0.5s;
282
284
  color: var(--mdc-theme-primary);
@@ -513,10 +515,6 @@ button.expand-heading {
513
515
  cursor: pointer;
514
516
  color: rgb(var(--color-blue-default));
515
517
  background-color: transparent;
516
- border-radius: 1rem;
517
- padding: 0 0.25rem 0.25rem 0.25rem;
518
- height: 1rem;
519
- white-space: nowrap;
520
518
  }
521
519
  button.expand-heading:hover, button.expand-heading:focus, button.expand-heading:focus-visible {
522
520
  will-change: color, background-color, box-shadow, transform;
@@ -543,6 +541,12 @@ button.expand-heading:hover, button.expand-heading:active {
543
541
  --limel-clickable-transition-speed: 0.2s;
544
542
  --limel-clickable-transform-speed: 0.16s;
545
543
  }
544
+ button.expand-heading {
545
+ border-radius: 1rem;
546
+ padding: 0 0.25rem 0.25rem 0.25rem;
547
+ height: 1rem;
548
+ white-space: nowrap;
549
+ }
546
550
 
547
551
  button.collapse-heading {
548
552
  appearance: none;
@@ -558,12 +562,6 @@ button.collapse-heading {
558
562
  color: var(--limel-theme-on-surface-color);
559
563
  background-color: var(--lime-elevated-surface-background-color);
560
564
  box-shadow: var(--button-shadow-normal);
561
- flex-shrink: 0;
562
- display: flex;
563
- align-items: center;
564
- justify-content: center;
565
- border-radius: 1.5rem;
566
- width: 1rem;
567
565
  }
568
566
  button.collapse-heading:hover, button.collapse-heading:focus, button.collapse-heading:focus-visible {
569
567
  will-change: color, background-color, box-shadow, transform;
@@ -595,6 +593,14 @@ button.collapse-heading:focus-visible {
595
593
  outline: none;
596
594
  box-shadow: var(--shadow-depth-8-focused);
597
595
  }
596
+ button.collapse-heading {
597
+ flex-shrink: 0;
598
+ display: flex;
599
+ align-items: center;
600
+ justify-content: center;
601
+ border-radius: 1.5rem;
602
+ width: 1rem;
603
+ }
598
604
  button.collapse-heading limel-icon {
599
605
  width: 0.75rem;
600
606
  }
@@ -704,8 +710,6 @@ limel-chip-set {
704
710
  .thumbnail-card-link {
705
711
  --card-border-radius: 0.5rem;
706
712
  border-radius: var(--card-border-radius);
707
- text-decoration: none;
708
- display: inline-block;
709
713
  }
710
714
  .thumbnail-card-link:focus {
711
715
  outline: none;
@@ -714,6 +718,10 @@ limel-chip-set {
714
718
  outline: none;
715
719
  box-shadow: var(--shadow-depth-8-focused);
716
720
  }
721
+ .thumbnail-card-link {
722
+ text-decoration: none;
723
+ display: inline-block;
724
+ }
717
725
 
718
726
  limel-masonry-layout {
719
727
  --masonry-layout-min-column-width: 10rem;
@@ -205,7 +205,7 @@ export class FeedTimelineItem {
205
205
  render() {
206
206
  var _a, _b;
207
207
  const helperTextId = `helper-text-${this.item.id}`;
208
- return (h(Host, { key: '84e91c4401825cadc19d3a550c3047df0510230e', id: this.item.id, class: {
208
+ return (h(Host, { key: '0d1ba9124ef0451e73e6c66261015d193cde01b0', id: this.item.id, class: {
209
209
  'has-unpromoted-actions': !!((_a = this.item.unpromotedActions) === null || _a === void 0 ? void 0 : _a.length),
210
210
  'has-author-picture': !!((_b = this.item.author) === null || _b === void 0 ? void 0 : _b.picture),
211
211
  'shows-less': !this.showMore,
@@ -8,7 +8,7 @@ import { h } from "@stencil/core";
8
8
  */
9
9
  export class FeedItemThumbnailFileInfo {
10
10
  render() {
11
- return h("span", { key: '2a85325e57d44c3ea5dcc262de0ede9aace8f4a6' }, this.description);
11
+ return h("span", { key: '418abbe9f287784ed8f9dfa1a8ba4e343cdcda3b' }, this.description);
12
12
  }
13
13
  static get is() { return "limebb-feed-item-thumbnail-file-info"; }
14
14
  static get encapsulation() { return "shadow"; }
@@ -103,7 +103,7 @@ export class Feed {
103
103
  this.highlighter.unregisterFeed(this.feedItemElement);
104
104
  }
105
105
  render() {
106
- return (h(Host, { key: '039b9edef50f1e306d67a3cd390149f65424bbe7', role: "log", "aria-busy": this.loading ? 'true' : 'false', style: {
106
+ return (h(Host, { key: 'a9313ef92a734e391ee178a1d0f2c3bcc3a7ec19', role: "log", "aria-busy": this.loading ? 'true' : 'false', style: {
107
107
  '--limebb-feed-highlight-duration': `${ITEM_HIGHLIGHT_DURATION}ms`,
108
108
  } }, this.renderLoadMore(), this.renderEmptyFeedMessage(), this.renderSpinner(), this.renderFeedItems()));
109
109
  }
@@ -360,7 +360,7 @@ export class Feed {
360
360
  "setter": false,
361
361
  "reflect": false,
362
362
  "attribute": "minutes-of-proximity",
363
- "defaultValue": "MINUTES_OF_PROXIMITY"
363
+ "defaultValue": "5"
364
364
  },
365
365
  "totalCount": {
366
366
  "type": "number",
@@ -154,13 +154,6 @@ button.chip {
154
154
  button.chip:has(limel-icon) .text {
155
155
  padding-left: 0;
156
156
  }
157
- button.chip:not([disabled]) {
158
- transition: color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);
159
- cursor: pointer;
160
- color: var(--limel-theme-on-surface-color);
161
- background-color: var(--lime-elevated-surface-background-color);
162
- box-shadow: var(--button-shadow-normal);
163
- }
164
157
  button.chip:not([disabled]):focus {
165
158
  outline: none;
166
159
  }
@@ -168,6 +161,13 @@ button.chip:not([disabled]):focus-visible {
168
161
  outline: none;
169
162
  box-shadow: var(--shadow-depth-8-focused);
170
163
  }
164
+ button.chip:not([disabled]) {
165
+ transition: color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);
166
+ cursor: pointer;
167
+ color: var(--limel-theme-on-surface-color);
168
+ background-color: var(--lime-elevated-surface-background-color);
169
+ box-shadow: var(--button-shadow-normal);
170
+ }
171
171
  button.chip:not([disabled]):hover, button.chip:not([disabled]):focus, button.chip:not([disabled]):focus-visible {
172
172
  will-change: color, background-color, box-shadow, transform;
173
173
  }
@@ -293,16 +293,6 @@ button.trailing-button {
293
293
  cursor: pointer;
294
294
  color: var(--limel-theme-on-surface-color);
295
295
  background-color: transparent;
296
- z-index: 1;
297
- flex-shrink: 0;
298
- align-self: center;
299
- display: flex;
300
- align-items: center;
301
- justify-content: center;
302
- margin-left: calc(1.75rem * -1 + 0.125rem);
303
- width: 1.5rem;
304
- height: 1.5rem;
305
- border-radius: 50%;
306
296
  }
307
297
  button.trailing-button:hover, button.trailing-button:focus, button.trailing-button:focus-visible {
308
298
  will-change: color, background-color, box-shadow, transform;
@@ -329,6 +319,18 @@ button.trailing-button:hover, button.trailing-button:active {
329
319
  --limel-clickable-transition-speed: 0.2s;
330
320
  --limel-clickable-transform-speed: 0.16s;
331
321
  }
322
+ button.trailing-button {
323
+ z-index: 1;
324
+ flex-shrink: 0;
325
+ align-self: center;
326
+ display: flex;
327
+ align-items: center;
328
+ justify-content: center;
329
+ margin-left: calc(1.75rem * -1 + 0.125rem);
330
+ width: 1.5rem;
331
+ height: 1.5rem;
332
+ border-radius: 50%;
333
+ }
332
334
  button.trailing-button svg {
333
335
  transition: color 0.2s ease, transform 0.2s ease;
334
336
  width: 1.25rem;
@@ -102,8 +102,8 @@ export class FilterChip {
102
102
  const items = this.getDisplayItems();
103
103
  const conjunction = this.getConjunctionText();
104
104
  const helperLabel = this.getHelperLabel(items, conjunction);
105
- return (h(Host, { key: 'cd41bd4000ec52bba65131fcbdfaddcc57b5a19c' }, this.renderLabel(), h("button", { key: 'f9e4ad789d1234b6793215fba49922dfa22ed642', class: { chip: true }, type: "button", id: chipId, "aria-label": [this.label, helperLabel].filter(Boolean).join(', ') ||
106
- this.getFilterLabel(), "aria-pressed": this.getAriaPressed(), onKeyDown: this.handleKeyDown, disabled: this.disabled }, this.renderIcon(), this.renderValue(items, conjunction)), this.renderRemoveButton(chipId), h("limel-tooltip", { key: '2039675de876cd689295c4cd16d895da64437091', elementId: chipId, label: this.label || this.getFilterLabel(), helperLabel: helperLabel })));
105
+ return (h(Host, { key: '291c2a6437491c9a5152b87af18476c2fb2f69bc' }, this.renderLabel(), h("button", { key: '8a51d37a3aa1f3b6a49dd15b0f6705fdc4c9ced3', class: { chip: true }, type: "button", id: chipId, "aria-label": [this.label, helperLabel].filter(Boolean).join(', ') ||
106
+ this.getFilterLabel(), "aria-pressed": this.getAriaPressed(), onKeyDown: this.handleKeyDown, disabled: this.disabled }, this.renderIcon(), this.renderValue(items, conjunction)), this.renderRemoveButton(chipId), h("limel-tooltip", { key: '522b0a8736e302e074914bf672c350ead53e418b', elementId: chipId, label: this.label || this.getFilterLabel(), helperLabel: helperLabel })));
107
107
  }
108
108
  /**
109
109
  * `aria-pressed` only makes sense for an interactive toggle. A readonly
@@ -638,7 +638,7 @@ export class FilterChip {
638
638
  "setter": false,
639
639
  "reflect": false,
640
640
  "attribute": "max-length",
641
- "defaultValue": "DEFAULT_MAX_LENGTH"
641
+ "defaultValue": "25"
642
642
  }
643
643
  };
644
644
  }
@@ -197,3 +197,144 @@ export function getFilterConditionLabelKey(condition, propertyType) {
197
197
  }
198
198
  return undefined;
199
199
  }
200
+ /**
201
+ * Conditions for text-like properties (`string`, `text`, `phone`, `link`):
202
+ * "Contains … Matches", with equality reading as "Is" / "Is not".
203
+ */
204
+ const TEXT_CONDITIONS = [
205
+ 'contains',
206
+ 'not-contains',
207
+ 'equals',
208
+ 'not-equals',
209
+ 'begins-with',
210
+ 'not-begins-with',
211
+ 'ends-with',
212
+ 'not-ends-with',
213
+ 'between',
214
+ 'not-between',
215
+ 'empty',
216
+ 'not-empty',
217
+ 'matches',
218
+ ];
219
+ /**
220
+ * Conditions for numeric properties (`integer`, `decimal`, `percent`).
221
+ */
222
+ const NUMBER_CONDITIONS = [
223
+ 'equals',
224
+ 'not-equals',
225
+ 'greater-than',
226
+ 'greater-than-or-equal',
227
+ 'less-than',
228
+ 'less-than-or-equal',
229
+ 'between',
230
+ 'not-between',
231
+ 'empty',
232
+ 'not-empty',
233
+ 'matches',
234
+ ];
235
+ /**
236
+ * Conditions for date/time properties. Comparisons read as "After" / "Before" /
237
+ * "On"; there is intentionally no `greater-than-or-equal` / `less-than-or-equal`
238
+ * — an inclusive bound is expressed in the date value editor, not as a separate
239
+ * condition.
240
+ */
241
+ const DATE_CONDITIONS = [
242
+ 'greater-than',
243
+ 'less-than',
244
+ 'between',
245
+ 'not-between',
246
+ 'equals',
247
+ 'previous',
248
+ 'current',
249
+ 'next',
250
+ 'empty',
251
+ 'not-empty',
252
+ 'matches',
253
+ ];
254
+ /**
255
+ * Conditions for choice properties (`option`, `set`): "Is" / "Is not" (the
256
+ * latter was missing from the older CRM option popovers), plus "Matches".
257
+ */
258
+ const OPTION_CONDITIONS = [
259
+ 'equals',
260
+ 'not-equals',
261
+ 'matches',
262
+ ];
263
+ /**
264
+ * Conditions for boolean (`yesno`) properties: "Is" / "Is not", plus "Empty" /
265
+ * "Not empty" and "Matches".
266
+ *
267
+ * A yes/no value is effectively three-state — Yes, No, or *unset* (never
268
+ * answered) when the property is nullable, i.e. not required and without a
269
+ * default. "Empty" / "Not empty" filter on that third state — whether the value
270
+ * was ever set — which is distinct from filtering on Yes vs No. Consumers whose
271
+ * booleans are always populated can narrow this list via the picker's
272
+ * `conditions` prop. See the "Boolean (yes/no)" example.
273
+ */
274
+ const YESNO_CONDITIONS = [
275
+ 'equals',
276
+ 'not-equals',
277
+ 'empty',
278
+ 'not-empty',
279
+ 'matches',
280
+ ];
281
+ /**
282
+ * Conditions for relation properties (`belongsto`, `hasone`, `hasmany`,
283
+ * `hasandbelongstomany`): connected / not connected, filter-set membership,
284
+ * empty / not empty, and "Matches".
285
+ */
286
+ const RELATION_CONDITIONS = [
287
+ 'connected-to',
288
+ 'not-connected-to',
289
+ 'in-filter-set',
290
+ 'not-in-filter-set',
291
+ 'empty',
292
+ 'not-empty',
293
+ 'matches',
294
+ ];
295
+ /** Types with no filter catalog (`user`, `xml`, `file`, `system`). */
296
+ const NO_CONDITIONS = [];
297
+ /**
298
+ * Per-property-type catalogs, in the order a condition picker should list them.
299
+ * An exhaustive map, so a property type added upstream is a compile error here
300
+ * rather than a silent fall-through to no conditions.
301
+ */
302
+ const CONDITIONS_BY_PROPERTY_TYPE = {
303
+ string: TEXT_CONDITIONS,
304
+ text: TEXT_CONDITIONS,
305
+ phone: TEXT_CONDITIONS,
306
+ link: TEXT_CONDITIONS,
307
+ integer: NUMBER_CONDITIONS,
308
+ decimal: NUMBER_CONDITIONS,
309
+ percent: NUMBER_CONDITIONS,
310
+ date: DATE_CONDITIONS,
311
+ year: DATE_CONDITIONS,
312
+ quarter: DATE_CONDITIONS,
313
+ month: DATE_CONDITIONS,
314
+ time: DATE_CONDITIONS,
315
+ timeofday: DATE_CONDITIONS,
316
+ option: OPTION_CONDITIONS,
317
+ set: OPTION_CONDITIONS,
318
+ yesno: YESNO_CONDITIONS,
319
+ belongsto: RELATION_CONDITIONS,
320
+ hasone: RELATION_CONDITIONS,
321
+ hasmany: RELATION_CONDITIONS,
322
+ hasandbelongstomany: RELATION_CONDITIONS,
323
+ user: NO_CONDITIONS,
324
+ xml: NO_CONDITIONS,
325
+ file: NO_CONDITIONS,
326
+ system: NO_CONDITIONS,
327
+ };
328
+ /**
329
+ * The filter conditions a property of the given type can be filtered by, in the
330
+ * order `limebb-filter-condition-picker` should list them, or an empty array for
331
+ * a type without a catalog. A consumer that supports only a subset passes its
332
+ * own list to the picker instead.
333
+ * @param propertyType
334
+ */
335
+ export function getConditionsForPropertyType(propertyType) {
336
+ if (!propertyType) {
337
+ return [];
338
+ }
339
+ return CONDITIONS_BY_PROPERTY_TYPE[propertyType];
340
+ }
@@ -0,0 +1,54 @@
1
+ import { Operator } from "@limetech/lime-web-components";
2
+ /**
3
+ * The canonical operator↔condition translation for the *authoring* (write)
4
+ * direction, so consumers (the query builder, the rule editor, the CRM property
5
+ * filters) keep the mapping in one place instead of repeating it.
6
+ *
7
+ * Intentionally separate from the structural read-side map in `compound-leaf.ts`,
8
+ * which interprets *existing* expressions and maps some operators differently
9
+ * (a bare `NOT` reads as `not-equals`, a bare `IN` as `equals`). Do not merge
10
+ * the two.
11
+ */
12
+ const OPERATOR_CONDITION_PAIRS = [
13
+ [Operator.EQUALS, 'equals'],
14
+ [Operator.NOT_EQUALS, 'not-equals'],
15
+ [Operator.GREATER, 'greater-than'],
16
+ [Operator.GREATER_OR_EQUAL, 'greater-than-or-equal'],
17
+ [Operator.LESS, 'less-than'],
18
+ [Operator.LESS_OR_EQUAL, 'less-than-or-equal'],
19
+ [Operator.IN, 'in-filter-set'],
20
+ [Operator.LIKE, 'contains'],
21
+ [Operator.BEGINS, 'begins-with'],
22
+ [Operator.ENDS, 'ends-with'],
23
+ ];
24
+ /**
25
+ * The {@link Operator} that authors a condition, or `undefined` for a condition
26
+ * with no single operator (e.g. `between`, `empty`, `previous`).
27
+ * @param condition
28
+ */
29
+ export function conditionToOperator(condition) {
30
+ var _a;
31
+ return (_a = OPERATOR_CONDITION_PAIRS.find(([, mapped]) => mapped === condition)) === null || _a === void 0 ? void 0 : _a[0];
32
+ }
33
+ /**
34
+ * The conditions a list of operators authors, in order, dropping any operator
35
+ * with no authoring condition. Lets a consumer declare which operators it offers
36
+ * and hand the matching conditions to `limebb-filter-condition-picker`.
37
+ * @param operators
38
+ */
39
+ export function operatorsToConditions(operators) {
40
+ return operators
41
+ .map((operator) => { var _a; return (_a = OPERATOR_CONDITION_PAIRS.find(([op]) => op === operator)) === null || _a === void 0 ? void 0 : _a[1]; })
42
+ .filter((condition) => condition !== undefined);
43
+ }
44
+ /**
45
+ * The {@link FilterCondition} an operator authors, or `undefined` for an
46
+ * operator with no authoring condition (e.g. the structural `AND`/`OR`/`NOT`).
47
+ * @param operator
48
+ */
49
+ export function operatorToCondition(operator) {
50
+ if (!operator) {
51
+ return;
52
+ }
53
+ return operatorsToConditions([operator])[0];
54
+ }
@@ -0,0 +1,7 @@
1
+ :host(limebb-filter-condition-picker) {
2
+ display: inline-block;
3
+ }
4
+
5
+ .condition {
6
+ --limel-notched-outline-label-color: transparent;
7
+ }