@limetech/lime-crm-building-blocks 1.139.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (349) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/cjs/file-contents-url-CIoCVl85.js +14 -0
  3. package/dist/cjs/{filter-condition-icons-HypsDn6x.js → filter-condition-icons-QK5stWj6.js} +142 -0
  4. package/dist/cjs/{filter-group-logic-BPpM2NqX.js → filter-group-logic-EDLGrkTt.js} +12 -12
  5. package/dist/cjs/filter-operators-CVCyCZ7Q.js +61 -0
  6. package/dist/cjs/index.cjs.js +8 -1
  7. package/dist/cjs/{index.esm-Se3EtD3m.js → index.esm-CcYbS__E.js} +210 -181
  8. package/dist/cjs/lime-crm-building-blocks.cjs.js +1 -1
  9. package/dist/cjs/{lime-query-validation-CJC3mtnT.js → lime-query-validation-B0oYW7Z6.js} +7 -7
  10. package/dist/cjs/limebb-alert-dialog.cjs.entry.js +1 -1
  11. package/dist/cjs/limebb-browser.cjs.entry.js +3 -3
  12. package/dist/cjs/limebb-chat-icon-list_3.cjs.entry.js +5 -5
  13. package/dist/cjs/limebb-chat-list.cjs.entry.js +2 -2
  14. package/dist/cjs/limebb-color-palette-picker.cjs.entry.js +1 -1
  15. package/dist/cjs/limebb-color-palette-swatches.cjs.entry.js +1 -1
  16. package/dist/cjs/limebb-component-config.cjs.entry.js +1 -1
  17. package/dist/cjs/limebb-component-picker.cjs.entry.js +1 -1
  18. package/dist/cjs/limebb-composer-toolbar.cjs.entry.js +3 -3
  19. package/dist/cjs/limebb-currency-picker.cjs.entry.js +2 -2
  20. package/dist/cjs/limebb-dashboard-widget.cjs.entry.js +1 -1
  21. package/dist/cjs/limebb-data-cells.cjs.entry.js +1 -1
  22. package/dist/cjs/limebb-date-picker.cjs.entry.js +2 -2
  23. package/dist/cjs/limebb-date-range.cjs.entry.js +1 -1
  24. package/dist/cjs/limebb-document-chips.cjs.entry.js +1 -1
  25. package/dist/cjs/limebb-document-item.cjs.entry.js +2 -2
  26. package/dist/cjs/limebb-document-picker.cjs.entry.js +1 -1
  27. package/dist/cjs/limebb-feed-item-thumbnail-file-info.cjs.entry.js +1 -1
  28. package/dist/cjs/limebb-feed-timeline-item.cjs.entry.js +6 -2
  29. package/dist/cjs/limebb-feed.cjs.entry.js +2 -2
  30. package/dist/cjs/{limebb-filter-chip_5.cjs.entry.js → limebb-filter-chip_6.cjs.entry.js} +126 -92
  31. package/dist/cjs/limebb-icon-picker.cjs.entry.js +1 -1
  32. package/dist/cjs/limebb-info-tile-format.cjs.entry.js +1 -1
  33. package/dist/cjs/limebb-info-tile.cjs.entry.js +11 -10
  34. package/dist/cjs/limebb-inline-image.cjs.entry.js +49 -0
  35. package/dist/cjs/limebb-kanban-group.cjs.entry.js +3 -3
  36. package/dist/cjs/limebb-kanban-item.cjs.entry.js +2 -2
  37. package/dist/cjs/limebb-lime-query-builder.cjs.entry.js +4 -4
  38. package/dist/cjs/limebb-lime-query-filter-builder.cjs.entry.js +5 -5
  39. package/dist/cjs/limebb-lime-query-filter-comparison_2.cjs.entry.js +10 -27
  40. package/dist/cjs/limebb-lime-query-order-by-editor_2.cjs.entry.js +4 -4
  41. package/dist/cjs/limebb-lime-query-order-by-item.cjs.entry.js +2 -2
  42. package/dist/cjs/limebb-lime-query-response-format-builder.cjs.entry.js +4 -4
  43. package/dist/cjs/limebb-lime-query-response-format-editor_2.cjs.entry.js +1 -1
  44. package/dist/cjs/limebb-limeobject-file-viewer.cjs.entry.js +3 -3
  45. package/dist/cjs/limebb-live-docs-info.cjs.entry.js +2 -2
  46. package/dist/cjs/limebb-loader.cjs.entry.js +2 -2
  47. package/dist/cjs/limebb-locale-picker.cjs.entry.js +2 -2
  48. package/dist/cjs/limebb-mention-group-counter.cjs.entry.js +2 -2
  49. package/dist/cjs/limebb-mention.cjs.entry.js +1 -1
  50. package/dist/cjs/limebb-navigation-button_2.cjs.entry.js +2 -2
  51. package/dist/cjs/limebb-notification-item.cjs.entry.js +2 -2
  52. package/dist/cjs/limebb-notification-list.cjs.entry.js +1 -1
  53. package/dist/cjs/limebb-object-chip.cjs.entry.js +3 -3
  54. package/dist/cjs/limebb-percentage-visualizer.cjs.entry.js +3 -3
  55. package/dist/cjs/limebb-property-selector.cjs.entry.js +3 -3
  56. package/dist/cjs/limebb-rule-arg-filter-editor.cjs.entry.js +2 -2
  57. package/dist/cjs/limebb-rule-chip-popover.cjs.entry.js +3 -3
  58. package/dist/cjs/limebb-rule-editor.cjs.entry.js +3 -3
  59. package/dist/cjs/limebb-rule-gate.cjs.entry.js +2 -2
  60. package/dist/cjs/limebb-text-editor.cjs.entry.js +51 -144
  61. package/dist/cjs/limebb-trend-indicator.cjs.entry.js +2 -2
  62. package/dist/cjs/limebb-value-comparison-editor.cjs.entry.js +38 -36
  63. package/dist/cjs/{limetype-CmgP0nbZ.js → limetype-C-fVThrI.js} +1 -1
  64. package/dist/cjs/loader.cjs.js +1 -1
  65. package/dist/collection/collection-manifest.json +2 -0
  66. package/dist/collection/components/alert-dialog/alert-dialog.js +1 -1
  67. package/dist/collection/components/browser/browser.js +2 -2
  68. package/dist/collection/components/chat-list/chat-icon-list/chat-icon-list.js +1 -1
  69. package/dist/collection/components/chat-list/chat-item/chat-item.js +2 -2
  70. package/dist/collection/components/chat-list/chat-list.js +1 -1
  71. package/dist/collection/components/chat-list/typing-indicator/typing-indicator.js +1 -1
  72. package/dist/collection/components/color-palette-picker/color-palette-picker.js +1 -1
  73. package/dist/collection/components/color-palette-picker/color-palette-swatches/color-palette-swatches.js +1 -1
  74. package/dist/collection/components/composer-toolbar/composer-toolbar.js +2 -2
  75. package/dist/collection/components/currency-picker/currency-picker.js +1 -1
  76. package/dist/collection/components/dashboard-widget/dashboard-widget.js +1 -1
  77. package/dist/collection/components/date-picker/date-picker.js +1 -1
  78. package/dist/collection/components/date-range/date-range.js +1 -1
  79. package/dist/collection/components/document-chips/document-chips.js +1 -1
  80. package/dist/collection/components/document-picker/document-item/document-item.js +2 -2
  81. package/dist/collection/components/document-picker/document-picker.js +1 -1
  82. package/dist/collection/components/feed/feed-item/feed-timeline-item.js +5 -1
  83. package/dist/collection/components/feed/feed-item-thumbnail-file-info/feed-item-thumbnail-file-info.js +1 -1
  84. package/dist/collection/components/feed/feed.js +1 -1
  85. package/dist/collection/components/filter-chip/filter-chip.js +2 -2
  86. package/dist/collection/components/filter-chip/filter-condition-icons.js +141 -0
  87. package/dist/collection/components/filter-chip/filter-operators.js +54 -0
  88. package/dist/collection/components/filter-condition-picker/filter-condition-picker.css +7 -0
  89. package/dist/collection/components/filter-condition-picker/filter-condition-picker.js +256 -0
  90. package/dist/collection/components/icon-picker/icon-picker.js +1 -1
  91. package/dist/collection/components/info-tile/format/config/info-tile-format.js +1 -1
  92. package/dist/collection/components/info-tile/info-tile.js +2 -2
  93. package/dist/collection/components/info-tile/loader.js +2 -1
  94. package/dist/collection/components/inline-image/inline-image.css +12 -0
  95. package/dist/collection/components/inline-image/inline-image.js +146 -0
  96. package/dist/collection/components/kanban/kanban-group/kanban-group.js +1 -1
  97. package/dist/collection/components/kanban/kanban-item/kanban-item.js +1 -1
  98. package/dist/collection/components/lime-query-builder/expressions/compound-leaf.js +6 -6
  99. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison-editor.js +37 -20
  100. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-comparison.js +8 -25
  101. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-group.js +2 -2
  102. package/dist/collection/components/lime-query-builder/expressions/lime-query-filter-not.js +1 -1
  103. package/dist/collection/components/lime-query-builder/expressions/lime-query-operators.js +23 -57
  104. package/dist/collection/components/lime-query-builder/lime-query-builder.js +1 -1
  105. package/dist/collection/components/lime-query-builder/lime-query-response-format-builder.js +1 -1
  106. package/dist/collection/components/lime-query-builder/limetype-field/limetype-field.js +1 -1
  107. package/dist/collection/components/lime-query-builder/order-by/order-by-editor.js +1 -1
  108. package/dist/collection/components/lime-query-builder/order-by/order-by-item.js +2 -2
  109. package/dist/collection/components/lime-query-builder/response-format/response-format-item.js +1 -1
  110. package/dist/collection/components/limeobject/file-viewer/live-docs-info.js +2 -2
  111. package/dist/collection/components/locale-picker/locale-picker.js +1 -1
  112. package/dist/collection/components/notification-list/notification-item/notification-item.js +1 -1
  113. package/dist/collection/components/percentage-visualizer/percentage-visualizer.js +2 -2
  114. package/dist/collection/components/rule-editor/rule-chip-popover/rule-chip-popover.js +1 -1
  115. package/dist/collection/components/rule-editor/rule-editor.js +1 -1
  116. package/dist/collection/components/rule-editor/value-comparison-editor/value-comparison-editor.js +62 -36
  117. package/dist/collection/components/rule-gate/rule-gate.js +1 -1
  118. package/dist/collection/components/summary-popover/summary-popover.js +2 -2
  119. package/dist/collection/components/text-editor/mention-group-counter.js +2 -2
  120. package/dist/collection/components/text-editor/text-editor.js +57 -45
  121. package/dist/collection/components/trend-indicator/trend-indicator.js +1 -1
  122. package/dist/collection/index.js +1 -0
  123. package/dist/collection/util/file-contents-url.js +10 -0
  124. package/dist/components/chat-icon-list.js +1 -1
  125. package/dist/components/chat-item.js +1 -1
  126. package/dist/components/currency-picker.js +1 -1
  127. package/dist/components/date-picker.js +1 -1
  128. package/dist/components/document-item.js +1 -1
  129. package/dist/components/feed-item-thumbnail-file-info.js +1 -1
  130. package/dist/components/feed-timeline-item.js +1 -1
  131. package/dist/components/file-contents-url.js +1 -0
  132. package/dist/components/filter-chip.js +1 -1
  133. package/dist/components/filter-condition-icons.js +1 -1
  134. package/dist/components/filter-condition-picker.js +1 -0
  135. package/dist/components/filter-operators.js +1 -0
  136. package/dist/components/index.esm.js +1 -1
  137. package/dist/components/index.js +1 -1
  138. package/dist/components/kanban-group.js +1 -1
  139. package/dist/components/kanban-item.js +1 -1
  140. package/dist/components/lime-query-filter-builder.js +1 -1
  141. package/dist/components/lime-query-filter-comparison-editor.js +1 -1
  142. package/dist/components/lime-query-filter-comparison.js +1 -1
  143. package/dist/components/lime-query-filter-expression.js +1 -1
  144. package/dist/components/lime-query-validation.js +1 -1
  145. package/dist/components/lime-query-value-input.js +1 -1
  146. package/dist/components/limebb-alert-dialog.js +1 -1
  147. package/dist/components/limebb-browser.js +1 -1
  148. package/dist/components/limebb-chat-list.js +1 -1
  149. package/dist/components/limebb-color-palette-picker.js +1 -1
  150. package/dist/components/limebb-color-palette-swatches.js +1 -1
  151. package/dist/components/limebb-component-config.js +1 -1
  152. package/dist/components/limebb-component-picker.js +1 -1
  153. package/dist/components/limebb-composer-toolbar.js +1 -1
  154. package/dist/components/limebb-dashboard-widget.js +1 -1
  155. package/dist/components/limebb-data-cells.js +1 -1
  156. package/dist/components/limebb-date-range.js +1 -1
  157. package/dist/components/limebb-document-chips.js +1 -1
  158. package/dist/components/limebb-document-picker.js +1 -1
  159. package/dist/components/limebb-feed.js +1 -1
  160. package/dist/components/limebb-filter-condition-picker.d.ts +11 -0
  161. package/dist/components/limebb-filter-condition-picker.js +1 -0
  162. package/dist/components/limebb-icon-picker.js +1 -1
  163. package/dist/components/limebb-info-tile-format.js +1 -1
  164. package/dist/components/limebb-info-tile.js +1 -1
  165. package/dist/components/limebb-inline-image.d.ts +11 -0
  166. package/dist/components/limebb-inline-image.js +1 -0
  167. package/dist/components/limebb-lime-query-builder.js +1 -1
  168. package/dist/components/limebb-lime-query-response-format-builder.js +1 -1
  169. package/dist/components/limebb-limeobject-file-viewer.js +1 -1
  170. package/dist/components/limebb-loader.js +1 -1
  171. package/dist/components/limebb-locale-picker.js +1 -1
  172. package/dist/components/limebb-mention-group-counter.js +1 -1
  173. package/dist/components/limebb-mention.js +1 -1
  174. package/dist/components/limebb-notification-list.js +1 -1
  175. package/dist/components/limebb-object-chip.js +1 -1
  176. package/dist/components/limebb-rule-arg-filter-editor.js +1 -1
  177. package/dist/components/limebb-rule-editor.js +1 -1
  178. package/dist/components/limebb-rule-gate.js +1 -1
  179. package/dist/components/limebb-text-editor.js +1 -1
  180. package/dist/components/limebb-trend-indicator.js +1 -1
  181. package/dist/components/limebb-value-comparison-editor.js +1 -1
  182. package/dist/components/limetype-field.js +1 -1
  183. package/dist/components/live-docs-info.js +1 -1
  184. package/dist/components/notification-item.js +1 -1
  185. package/dist/components/order-by-editor.js +1 -1
  186. package/dist/components/order-by-item.js +1 -1
  187. package/dist/components/percentage-visualizer.js +1 -1
  188. package/dist/components/property-selector.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/file-contents-url-Oswz9F3I.js +12 -0
  194. package/dist/esm/{filter-condition-icons-D8CJOcfs.js → filter-condition-icons-C_y3-T4Q.js} +142 -1
  195. package/dist/esm/{filter-group-logic-BMY_GEsX.js → filter-group-logic-DS1inQTh.js} +12 -12
  196. package/dist/esm/filter-operators-CsZi5iCV.js +57 -0
  197. package/dist/esm/{index.esm-C-L5fkQs.js → index.esm-BjIhvFKX.js} +200 -172
  198. package/dist/esm/index.js +4 -1
  199. package/dist/esm/lime-crm-building-blocks.js +1 -1
  200. package/dist/esm/{lime-query-validation-BwvluehW.js → lime-query-validation-CVV7mrLj.js} +7 -7
  201. package/dist/esm/limebb-alert-dialog.entry.js +1 -1
  202. package/dist/esm/limebb-browser.entry.js +3 -3
  203. package/dist/esm/limebb-chat-icon-list_3.entry.js +5 -5
  204. package/dist/esm/limebb-chat-list.entry.js +2 -2
  205. package/dist/esm/limebb-color-palette-picker.entry.js +1 -1
  206. package/dist/esm/limebb-color-palette-swatches.entry.js +1 -1
  207. package/dist/esm/limebb-component-config.entry.js +1 -1
  208. package/dist/esm/limebb-component-picker.entry.js +1 -1
  209. package/dist/esm/limebb-composer-toolbar.entry.js +3 -3
  210. package/dist/esm/limebb-currency-picker.entry.js +2 -2
  211. package/dist/esm/limebb-dashboard-widget.entry.js +1 -1
  212. package/dist/esm/limebb-data-cells.entry.js +1 -1
  213. package/dist/esm/limebb-date-picker.entry.js +2 -2
  214. package/dist/esm/limebb-date-range.entry.js +1 -1
  215. package/dist/esm/limebb-document-chips.entry.js +1 -1
  216. package/dist/esm/limebb-document-item.entry.js +2 -2
  217. package/dist/esm/limebb-document-picker.entry.js +1 -1
  218. package/dist/esm/limebb-feed-item-thumbnail-file-info.entry.js +1 -1
  219. package/dist/esm/limebb-feed-timeline-item.entry.js +6 -2
  220. package/dist/esm/limebb-feed.entry.js +2 -2
  221. package/dist/esm/{limebb-filter-chip_5.entry.js → limebb-filter-chip_6.entry.js} +126 -93
  222. package/dist/esm/limebb-icon-picker.entry.js +1 -1
  223. package/dist/esm/limebb-info-tile-format.entry.js +1 -1
  224. package/dist/esm/limebb-info-tile.entry.js +11 -10
  225. package/dist/esm/limebb-inline-image.entry.js +47 -0
  226. package/dist/esm/limebb-kanban-group.entry.js +3 -3
  227. package/dist/esm/limebb-kanban-item.entry.js +2 -2
  228. package/dist/esm/limebb-lime-query-builder.entry.js +4 -4
  229. package/dist/esm/limebb-lime-query-filter-builder.entry.js +5 -5
  230. package/dist/esm/limebb-lime-query-filter-comparison_2.entry.js +10 -27
  231. package/dist/esm/limebb-lime-query-order-by-editor_2.entry.js +4 -4
  232. package/dist/esm/limebb-lime-query-order-by-item.entry.js +2 -2
  233. package/dist/esm/limebb-lime-query-response-format-builder.entry.js +4 -4
  234. package/dist/esm/limebb-lime-query-response-format-editor_2.entry.js +1 -1
  235. package/dist/esm/limebb-limeobject-file-viewer.entry.js +3 -3
  236. package/dist/esm/limebb-live-docs-info.entry.js +2 -2
  237. package/dist/esm/limebb-loader.entry.js +2 -2
  238. package/dist/esm/limebb-locale-picker.entry.js +2 -2
  239. package/dist/esm/limebb-mention-group-counter.entry.js +2 -2
  240. package/dist/esm/limebb-mention.entry.js +1 -1
  241. package/dist/esm/limebb-navigation-button_2.entry.js +2 -2
  242. package/dist/esm/limebb-notification-item.entry.js +2 -2
  243. package/dist/esm/limebb-notification-list.entry.js +1 -1
  244. package/dist/esm/limebb-object-chip.entry.js +3 -3
  245. package/dist/esm/limebb-percentage-visualizer.entry.js +3 -3
  246. package/dist/esm/limebb-property-selector.entry.js +3 -3
  247. package/dist/esm/limebb-rule-arg-filter-editor.entry.js +2 -2
  248. package/dist/esm/limebb-rule-chip-popover.entry.js +3 -3
  249. package/dist/esm/limebb-rule-editor.entry.js +3 -3
  250. package/dist/esm/limebb-rule-gate.entry.js +2 -2
  251. package/dist/esm/limebb-text-editor.entry.js +51 -144
  252. package/dist/esm/limebb-trend-indicator.entry.js +2 -2
  253. package/dist/esm/limebb-value-comparison-editor.entry.js +38 -36
  254. package/dist/esm/{limetype-D4ZaWZ-3.js → limetype-BbMRN-SU.js} +1 -1
  255. package/dist/esm/loader.js +1 -1
  256. package/dist/lime-crm-building-blocks/index.esm.js +1 -1
  257. package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
  258. package/dist/lime-crm-building-blocks/p-135ba2ee.entry.js +1 -0
  259. package/dist/lime-crm-building-blocks/{p-e4cef02f.entry.js → p-19dc7242.entry.js} +1 -1
  260. package/dist/lime-crm-building-blocks/p-1c6e5402.entry.js +1 -0
  261. package/dist/lime-crm-building-blocks/{p-96ea4550.entry.js → p-1f97e235.entry.js} +1 -1
  262. package/dist/lime-crm-building-blocks/{p-0f821315.entry.js → p-22e68812.entry.js} +1 -1
  263. package/dist/lime-crm-building-blocks/{p-fd38bf57.entry.js → p-240cbd82.entry.js} +1 -1
  264. package/dist/lime-crm-building-blocks/{p-3fc9866a.entry.js → p-251aca46.entry.js} +1 -1
  265. package/dist/lime-crm-building-blocks/p-25984c90.entry.js +1 -0
  266. package/dist/lime-crm-building-blocks/{p-80e04b27.entry.js → p-397a6191.entry.js} +1 -1
  267. package/dist/lime-crm-building-blocks/{p-46dc34a6.entry.js → p-3f537135.entry.js} +1 -1
  268. package/dist/lime-crm-building-blocks/{p-a6e9cefe.entry.js → p-52a92d89.entry.js} +1 -1
  269. package/dist/lime-crm-building-blocks/p-585f6cfe.entry.js +1 -0
  270. package/dist/lime-crm-building-blocks/{p-0579d006.entry.js → p-59fb624c.entry.js} +1 -1
  271. package/dist/lime-crm-building-blocks/{p-fb8d854b.entry.js → p-5beb508a.entry.js} +1 -1
  272. package/dist/lime-crm-building-blocks/{p-5b1ccfe1.entry.js → p-662fb8b6.entry.js} +1 -1
  273. package/dist/lime-crm-building-blocks/{p-00ca6522.entry.js → p-673226a6.entry.js} +1 -1
  274. package/dist/lime-crm-building-blocks/{p-9033acb5.entry.js → p-69b08896.entry.js} +1 -1
  275. package/dist/lime-crm-building-blocks/{p-01f84b0c.entry.js → p-6c2e25d9.entry.js} +1 -1
  276. package/dist/lime-crm-building-blocks/{p-bf4b2a91.entry.js → p-7033d408.entry.js} +1 -1
  277. package/dist/lime-crm-building-blocks/{p-fce1a282.entry.js → p-73b71080.entry.js} +1 -1
  278. package/dist/lime-crm-building-blocks/{p-3bf316f9.entry.js → p-742926a3.entry.js} +1 -1
  279. package/dist/lime-crm-building-blocks/p-78d362b4.entry.js +1 -0
  280. package/dist/lime-crm-building-blocks/p-79c492b2.entry.js +1 -0
  281. package/dist/lime-crm-building-blocks/{p-994296b0.entry.js → p-7a5c2dda.entry.js} +1 -1
  282. package/dist/lime-crm-building-blocks/{p-de785fee.entry.js → p-7b6c9cbf.entry.js} +1 -1
  283. package/dist/lime-crm-building-blocks/{p-354257f4.entry.js → p-7ce967b6.entry.js} +1 -1
  284. package/dist/lime-crm-building-blocks/{p-1cd148e2.entry.js → p-896e77b9.entry.js} +1 -1
  285. package/dist/lime-crm-building-blocks/{p-bde3e779.entry.js → p-906b4eca.entry.js} +1 -1
  286. package/dist/lime-crm-building-blocks/{p-41ddbdde.entry.js → p-964b066d.entry.js} +1 -1
  287. package/dist/lime-crm-building-blocks/p-CE43qjk3.js +1 -0
  288. package/dist/lime-crm-building-blocks/{p-D8CJOcfs.js → p-C_y3-T4Q.js} +1 -1
  289. package/dist/lime-crm-building-blocks/p-Cw4kdMw3.js +1 -0
  290. package/dist/lime-crm-building-blocks/p-DLehg4hi.js +1 -0
  291. package/dist/lime-crm-building-blocks/{p-CI6VHE0w.js → p-Dhyy9Td7.js} +1 -1
  292. package/dist/lime-crm-building-blocks/p-Oswz9F3I.js +1 -0
  293. package/dist/lime-crm-building-blocks/p-a157233b.entry.js +1 -0
  294. package/dist/lime-crm-building-blocks/p-a3058b72.entry.js +1 -0
  295. package/dist/lime-crm-building-blocks/{p-13a35953.entry.js → p-a4e676a6.entry.js} +1 -1
  296. package/dist/lime-crm-building-blocks/{p-b0ec4121.entry.js → p-aafead4e.entry.js} +1 -1
  297. package/dist/lime-crm-building-blocks/p-b78ub0mY.js +1 -0
  298. package/dist/lime-crm-building-blocks/{p-0f9a680c.entry.js → p-bc297cf4.entry.js} +1 -1
  299. package/dist/lime-crm-building-blocks/p-bcd8c767.entry.js +1 -0
  300. package/dist/lime-crm-building-blocks/p-c4e5e589.entry.js +1 -0
  301. package/dist/lime-crm-building-blocks/{p-dacd1df3.entry.js → p-d014ec57.entry.js} +1 -1
  302. package/dist/lime-crm-building-blocks/p-d20404ec.entry.js +1 -0
  303. package/dist/lime-crm-building-blocks/{p-e2420cde.entry.js → p-d2e85be2.entry.js} +1 -1
  304. package/dist/lime-crm-building-blocks/{p-69a3038b.entry.js → p-d3fe25a7.entry.js} +1 -1
  305. package/dist/lime-crm-building-blocks/{p-bd0a30d7.entry.js → p-d43cf8d1.entry.js} +1 -1
  306. package/dist/lime-crm-building-blocks/{p-e618ccd3.entry.js → p-d78370be.entry.js} +1 -1
  307. package/dist/lime-crm-building-blocks/{p-f73e3da0.entry.js → p-dd7aec09.entry.js} +1 -1
  308. package/dist/lime-crm-building-blocks/{p-5bc41701.entry.js → p-e29c27b8.entry.js} +1 -1
  309. package/dist/lime-crm-building-blocks/{p-b7e5a10e.entry.js → p-e2e1358d.entry.js} +1 -1
  310. package/dist/lime-crm-building-blocks/{p-8d592755.entry.js → p-e4a21ebe.entry.js} +1 -1
  311. package/dist/lime-crm-building-blocks/p-e581d0b7.entry.js +1 -0
  312. package/dist/lime-crm-building-blocks/{p-be5c43bb.entry.js → p-e6a85c26.entry.js} +1 -1
  313. package/dist/lime-crm-building-blocks/p-e8b2df7c.entry.js +1 -0
  314. package/dist/lime-crm-building-blocks/{p-302e6e3e.entry.js → p-ef890206.entry.js} +1 -1
  315. package/dist/lime-crm-building-blocks/{p-558915e4.entry.js → p-f4214745.entry.js} +1 -1
  316. package/dist/lime-crm-building-blocks/{p-6cdefdc9.entry.js → p-f6377fa5.entry.js} +1 -1
  317. package/dist/lime-crm-building-blocks/p-f9e9d18e.entry.js +1 -0
  318. package/dist/test/setup.js +1 -0
  319. package/dist/types/components/filter-chip/filter-condition-icons.d.ts +8 -0
  320. package/dist/types/components/filter-chip/filter-operators.d.ts +22 -0
  321. package/dist/types/components/filter-condition-picker/filter-condition-picker.d.ts +60 -0
  322. package/dist/types/components/inline-image/inline-image.d.ts +32 -0
  323. package/dist/types/components/lime-query-builder/expressions/lime-query-filter-comparison-editor.d.ts +8 -4
  324. package/dist/types/components/lime-query-builder/expressions/lime-query-operators.d.ts +16 -9
  325. package/dist/types/components/rule-editor/value-comparison-editor/value-comparison-editor.d.ts +7 -2
  326. package/dist/types/components/text-editor/text-editor.d.ts +17 -11
  327. package/dist/types/components.d.ts +257 -14
  328. package/dist/types/index.d.ts +1 -0
  329. package/dist/types/interface.d.ts +0 -5
  330. package/dist/types/util/file-contents-url.d.ts +9 -0
  331. package/package.json +14 -15
  332. package/dist/collection/components/text-editor/uploader/building-blocks-upload-handler.js +0 -112
  333. package/dist/lime-crm-building-blocks/p-0843b50b.entry.js +0 -1
  334. package/dist/lime-crm-building-blocks/p-29758303.entry.js +0 -1
  335. package/dist/lime-crm-building-blocks/p-39009b47.entry.js +0 -1
  336. package/dist/lime-crm-building-blocks/p-5b819d10.entry.js +0 -1
  337. package/dist/lime-crm-building-blocks/p-752742f8.entry.js +0 -1
  338. package/dist/lime-crm-building-blocks/p-7a158104.entry.js +0 -1
  339. package/dist/lime-crm-building-blocks/p-817e2952.entry.js +0 -1
  340. package/dist/lime-crm-building-blocks/p-92679e20.entry.js +0 -1
  341. package/dist/lime-crm-building-blocks/p-927e446d.entry.js +0 -1
  342. package/dist/lime-crm-building-blocks/p-B-WBKAaa.js +0 -1
  343. package/dist/lime-crm-building-blocks/p-BjXRsiQr.js +0 -1
  344. package/dist/lime-crm-building-blocks/p-Bkno2RtN.js +0 -1
  345. package/dist/lime-crm-building-blocks/p-c891125e.entry.js +0 -1
  346. package/dist/lime-crm-building-blocks/p-d7d6d21b.entry.js +0 -1
  347. package/dist/lime-crm-building-blocks/p-d95f66c8.entry.js +0 -1
  348. package/dist/lime-crm-building-blocks/p-ec1e079e.entry.js +0 -1
  349. package/dist/types/components/text-editor/uploader/building-blocks-upload-handler.d.ts +0 -62
@@ -64,9 +64,9 @@ export class ChatListItem {
64
64
  }
65
65
  render() {
66
66
  const helperTextId = `helper-text-${this.item.id}`;
67
- return (h(Host, { key: '1e6c1cea485ef290ccaf883a7206e2db140a03de', id: this.item.id, "aria-describedby": this.helperText ? helperTextId : undefined, "aria-live": this.hasError ? 'assertive' : 'off', class: {
67
+ return (h(Host, { key: '7726b35958522c860513ba9ea7a119a4ee9dfe2d', id: this.item.id, "aria-describedby": this.helperText ? helperTextId : undefined, "aria-live": this.hasError ? 'assertive' : 'off', class: {
68
68
  [`${this.item.ui}`]: true,
69
- } }, h("div", { key: '9e726745a4e577fb56141693f94ad548a0dbb428', class: "bubble-content" }, h("div", { key: '30b9d1b5d27f658f43d65f60a8dfeb7c752ece7c', class: "icon-picture" }, this.renderIcon(), this.renderAuthorPicture()), this.renderErrorSign(), h("div", { key: '809b0064268e9ac537611a7244845d3622afd146', class: "item" }, this.renderHeader(), this.renderValue(), h("footer", { key: '5f5a9bfd1abe7b82d0bc8b5e04a0033de196d97f' }, this.renderHelperText(helperTextId), this.renderTimestamp()))), this.renderPromotedAction()));
69
+ } }, h("div", { key: '2092b4d2eb6a4149205fbddae42aa63893ae2c35', class: "bubble-content" }, h("div", { key: '728b94f59b744ac932ede9bef2a99d180c0675f3', class: "icon-picture" }, this.renderIcon(), this.renderAuthorPicture()), this.renderErrorSign(), h("div", { key: 'a87fbb4ba58928deace952f50f480483530ac552', class: "item" }, this.renderHeader(), this.renderValue(), h("footer", { key: '446921a64f33dc02c6d6b9ae3e6143b1ad7ee6d9' }, this.renderHelperText(helperTextId), this.renderTimestamp()))), this.renderPromotedAction()));
70
70
  }
71
71
  renderErrorSign() {
72
72
  if (!this.hasError) {
@@ -85,7 +85,7 @@ export class ChatList {
85
85
  this.scrollAnchor.afterRender();
86
86
  }
87
87
  render() {
88
- return (h(Host, { key: '9b74a79b098dfe001b8931f9ba8c6dc1644baa1a', class: {
88
+ return (h(Host, { key: '2aab7c285dab2438761d90107c573060802863bf', class: {
89
89
  'is-empty': this.items.length === 0 &&
90
90
  !this.isTypingIndicatorVisible,
91
91
  }, "aria-busy": this.isBusy(), role: "log" }, this.renderSpinner(), this.order === 'newest-on-top' &&
@@ -7,7 +7,7 @@ import { h } from "@stencil/core";
7
7
  */
8
8
  export class TypingIndicator {
9
9
  render() {
10
- return (h("div", { key: 'a9d6cf448777260f6b0646b5435b5fc4e608fbd6', class: "typing-ellipsis" }, h("div", { key: 'a5ce17e35ab42f6f027bb0ad2886683a9f45fec6', class: "circle" }), h("div", { key: 'f0752c80704f720f7fe8a570c3cdec00aabfbc50', class: "circle" }), h("div", { key: '852536cd7c975e4d39e99b58e7f810d7dd2c1430', class: "circle" })));
10
+ return (h("div", { key: 'afc891f3443bdecefb025e3564679bf83d654e9a', class: "typing-ellipsis" }, h("div", { key: 'd886ca24a5c075b2cedc9c2902fd9bfbc995e418', class: "circle" }), h("div", { key: '73133ec43983aa1cdf50e9b505cba45e0c8bde04', class: "circle" }), h("div", { key: '624b5cc3b21336642acf53e6d3b867a60ae34a80', class: "circle" })));
11
11
  }
12
12
  static get is() { return "limebb-typing-indicator"; }
13
13
  static get encapsulation() { return "shadow"; }
@@ -58,7 +58,7 @@ export class ColorPalettePicker {
58
58
  this.optionsById = new Map(this.options.map((option) => [option.value, option]));
59
59
  }
60
60
  render() {
61
- return (h(Host, { key: 'dd5c38cb4b410f1a819547ee4e1ef200e5b74470' }, h("limel-select", { key: '0be8b51482986d95f3c949f10de115e465511ab9', label: this.label, helperText: this.helperText, disabled: this.disabled, readonly: this.readonly, invalid: this.invalid, required: this.required, options: this.options, value: this.getSelectedOption(), onChange: this.handleChange })));
61
+ return (h(Host, { key: 'a5f44d09a862e67f6216bcad7f46eec29ced722a' }, h("limel-select", { key: 'a5cf05f6592bdda711def6ec1a05b56aee2b73c9', label: this.label, helperText: this.helperText, disabled: this.disabled, readonly: this.readonly, invalid: this.invalid, required: this.required, options: this.options, value: this.getSelectedOption(), onChange: this.handleChange })));
62
62
  }
63
63
  /**
64
64
  * Resolve `this.value` against the cached options map. Returns
@@ -22,7 +22,7 @@ export class ColorPaletteSwatches {
22
22
  this.colors = [];
23
23
  }
24
24
  render() {
25
- return (h(Host, { key: 'e4c3971072fcd0baa8615044e30098934ec64b69', "aria-hidden": "true" }, h("ol", { key: '721530cf997e348c58094479ca55fc3bc6d32a93' }, this.colors.map((color, index) => (h("li", { key: index, style: { backgroundColor: color } }))))));
25
+ return (h(Host, { key: '62b7189e13fb67c79e8da299a40b1ec621a2886f', "aria-hidden": "true" }, h("ol", { key: 'ae4bda8db0f631c0a8d7ea42f033c4bb1e37b1da' }, this.colors.map((color, index) => (h("li", { key: index, style: { backgroundColor: color } }))))));
26
26
  }
27
27
  static get is() { return "limebb-color-palette-swatches"; }
28
28
  static get encapsulation() { return "shadow"; }
@@ -83,8 +83,8 @@ export class ComposerToolbar {
83
83
  }
84
84
  render() {
85
85
  return [
86
- h("div", { key: 'e489e22d79ddf53289add50121bc5e207363f393', class: "actions" }, h("slot", { key: 'b8e771341ed61bba095fc588eed806b6b6cc4201', name: "leading" }), this.renderFileInput(), this.renderTriggerActions(), h("slot", { key: '4ca9b9d8613159a9c4ab1177e13ea111b835399d', name: "trailing" })),
87
- h("slot", { key: '4dbc74d2a8b0ba9634dbb9783bc1d3c90d637cd7', name: "primary-action" }),
86
+ h("div", { key: '95a495c2289ee07d42b9f2ffd5b9f69634f0c70b', class: "actions" }, h("slot", { key: '3729266b77e939e980734556dc1417e34921b9a9', name: "leading" }), this.renderFileInput(), this.renderTriggerActions(), h("slot", { key: '211edc189658f512049b9e9487007a9e5b580134', name: "trailing" })),
87
+ h("slot", { key: '5c7e90a4577224f004e45b4f8447b330b6878138', name: "primary-action" }),
88
88
  ];
89
89
  }
90
90
  get translator() {
@@ -84,7 +84,7 @@ export class CurrencyPicker {
84
84
  };
85
85
  }
86
86
  render() {
87
- return (h("limel-picker", { key: 'f78c82b9d9beda17b65ed5898f0af68f74364c85', label: this.label || this.defaultLabel, value: this.createListItem(this.value), helperText: this.helperText, onChange: this.handleChange, badgeIcons: false, disabled: this.disabled, required: this.required, readonly: this.readonly, invalid: this.readonly, searcher: this.search }));
87
+ return (h("limel-picker", { key: '8f907cef2bdcc25b1931f06f4bfdb54c0f6e4eec', label: this.label || this.defaultLabel, value: this.createListItem(this.value), helperText: this.helperText, onChange: this.handleChange, badgeIcons: false, disabled: this.disabled, required: this.required, readonly: this.readonly, invalid: this.readonly, searcher: this.search }));
88
88
  }
89
89
  getCurrencyName(code) {
90
90
  var _a;
@@ -17,7 +17,7 @@ export class DashboardComponent {
17
17
  };
18
18
  }
19
19
  render() {
20
- return [this.renderHeader(), h("slot", { key: '6ded0fe72e2cad4fe6508cb8cb38d0eff0865bcc', name: "content" })];
20
+ return [this.renderHeader(), h("slot", { key: 'ab74c325ce14990b1e9bb7a29d361f13e4bab023', name: "content" })];
21
21
  }
22
22
  static get is() { return "limebb-dashboard-widget"; }
23
23
  static get encapsulation() { return "shadow"; }
@@ -66,7 +66,7 @@ export class DatePicker {
66
66
  if (this.value) {
67
67
  this.shouldEmitValueAsString = typeof this.value === 'string';
68
68
  }
69
- return (h("limel-date-picker", { key: '2c1596c4b222106e4be7781c17cfa86fb2a6ea0f', disabled: this.disabled, readonly: this.readonly, invalid: this.invalid, label: this.label, placeholder: this.placeholder, helperText: this.helperText, required: this.required, value: this.parseDateValue(), type: this.type, language: this.language, formatter: this.formatter, onChange: this.handleChange }));
69
+ return (h("limel-date-picker", { key: '218c0a409c7a508fd551099d1df5e7e05734db10', disabled: this.disabled, readonly: this.readonly, invalid: this.invalid, label: this.label, placeholder: this.placeholder, helperText: this.helperText, required: this.required, value: this.parseDateValue(), type: this.type, language: this.language, formatter: this.formatter, onChange: this.handleChange }));
70
70
  }
71
71
  parseDateValue() {
72
72
  const value = this.value;
@@ -33,7 +33,7 @@ export class DateRange {
33
33
  this.originalEndTime = this.endTime;
34
34
  }
35
35
  render() {
36
- return (h("div", { key: 'd2329327a3a68f1697d2008c1fa02b266a6268fa', class: "date-pickers" }, this.renderStartDatePicker(), this.renderEndDatePicker()));
36
+ return (h("div", { key: 'f6648162be4b8bf1605bce38cd584b8fe136c059', class: "date-pickers" }, this.renderStartDatePicker(), this.renderEndDatePicker()));
37
37
  }
38
38
  renderStartDatePicker() {
39
39
  if (!this.originalStartTime) {
@@ -44,7 +44,7 @@ export class DocumentChips {
44
44
  this.revokeAllBlobUrls();
45
45
  }
46
46
  render() {
47
- return (h(Host, { key: '628907d27b78e79f65da61b32bdb7b851a3eef04', role: "list", "aria-label": this.accessibleLabel }, this.files.map((file) => this.renderFile(file))));
47
+ return (h(Host, { key: 'e74468ff9712e3e3bda315925b5204d5ef6ae91b', role: "list", "aria-label": this.accessibleLabel }, this.files.map((file) => this.renderFile(file))));
48
48
  }
49
49
  renderFile(file) {
50
50
  const isReady = !file.uploadState || file.uploadState === 'done';
@@ -78,10 +78,10 @@ export class DocumentItemComponent {
78
78
  render() {
79
79
  const isUnavailable = this.isUnavailable();
80
80
  const image = this.getImage();
81
- return (h(Host, { key: '532fff336523f37eec1376e7abdb7d8ad7fe754d', id: String(this.item.file.id), class: {
81
+ return (h(Host, { key: '802076b3b96c854277a01fa7833a1ccdb942eff4', id: String(this.item.file.id), class: {
82
82
  'has-image': !!image,
83
83
  'has-error': !!this.item.hasError,
84
- }, role: this.type === 'radio' ? 'radio' : 'checkbox', "aria-checked": this.item.selected ? 'true' : 'false', "aria-disabled": isUnavailable ? 'true' : 'false', tabIndex: isUnavailable ? -1 : 0 }, h("limel-card", { key: 'fed54bcd54a754d0a61a2d7acec2591515b4d3de', image: image, clickable: isUnavailable ? false : true, onClick: this.handleDocumentItemClick, onKeyDown: this.handleKeyDown }, h("div", { key: '56ee7307fdb644364db3da43b48a53a985d661d9', slot: "component" }, this.renderFileSize(), this.renderBooleanInput())), this.renderHelp()));
84
+ }, role: this.type === 'radio' ? 'radio' : 'checkbox', "aria-checked": this.item.selected ? 'true' : 'false', "aria-disabled": isUnavailable ? 'true' : 'false', tabIndex: isUnavailable ? -1 : 0 }, h("limel-card", { key: '4c8149a090818f69c8ad7ced12d46d3f405f2601', image: image, clickable: isUnavailable ? false : true, onClick: this.handleDocumentItemClick, onKeyDown: this.handleKeyDown }, h("div", { key: 'bfcd9153638e17e8d332395739dc835eee684707', slot: "component" }, this.renderFileSize(), this.renderBooleanInput())), this.renderHelp()));
85
85
  }
86
86
  renderBooleanInput() {
87
87
  const id = this.getControlId();
@@ -76,7 +76,7 @@ export class DocumentPicker {
76
76
  this.labelId = createRandomString();
77
77
  }
78
78
  render() {
79
- return (h(Host, { key: '40bc1bd642e680f5914c472b024336cd3d85a28e' }, h("limel-notched-outline", { key: '38c00a5a207c9873211cfe8a4ce001405bfa14b2', labelId: this.labelId, label: this.label, required: this.required, invalid: this.invalid, hasFloatingLabel: true }, h("limel-masonry-layout", { key: 'e0811c99105ac55b7fd089411670fe23bb637b63', slot: "content", role: this.type === 'radio' ? 'radiogroup' : 'group', "aria-labelledby": this.label ? this.labelId : undefined, "aria-describedby": this.helperText ? this.helperTextId : undefined }, this.renderItems())), this.renderHelperLine()));
79
+ return (h(Host, { key: 'b49d5f3c6598651dd7e6c87884cb1aefa6c423f6' }, h("limel-notched-outline", { key: '89c635494ccbac031af5ac8470804fe096b315ac', labelId: this.labelId, label: this.label, required: this.required, invalid: this.invalid, hasFloatingLabel: true }, h("limel-masonry-layout", { key: 'c465e0dd11e74957526c7ffb18ccfa73b5b42f01', slot: "content", role: this.type === 'radio' ? 'radiogroup' : 'group', "aria-labelledby": this.label ? this.labelId : undefined, "aria-describedby": this.helperText ? this.helperTextId : undefined }, this.renderItems())), this.renderHelperLine()));
80
80
  }
81
81
  renderItems() {
82
82
  return this.items.map((item) => (h("limebb-document-item", { platform: this.platform, context: this.context, item: item, key: item.file.id, type: this.type, onInteract: this.handleItemInteract })));
@@ -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,
@@ -308,6 +308,10 @@ export class FeedTimelineItem {
308
308
  tagName: 'limebb-mention',
309
309
  attributes: ['limetype', 'objectid'],
310
310
  },
311
+ {
312
+ tagName: 'limebb-inline-image',
313
+ attributes: ['image-id', 'width', 'height', 'alt'],
314
+ },
311
315
  ] }), this.renderShowMoreButton()),
312
316
  ];
313
317
  }
@@ -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
  }
@@ -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
@@ -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
+ }