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

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 (286) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/cjs/{filter-group-logic-EDLGrkTt.js → filter-group-logic-Bt5tIbfP.js} +1 -1
  3. package/dist/cjs/{filter-operators-CVCyCZ7Q.js → filter-operators-CzIq9qKC.js} +1 -1
  4. package/dist/cjs/{index-BrWc7h0p.js → index-mDIvByXc.js} +47 -11
  5. package/dist/cjs/index.cjs.js +3 -3
  6. package/dist/cjs/{index.esm-CcYbS__E.js → index.esm-D1EzGa8X.js} +3 -3
  7. package/dist/cjs/lime-crm-building-blocks.cjs.js +2 -2
  8. package/dist/cjs/{lime-query-validation-B0oYW7Z6.js → lime-query-validation-Df4GZRGm.js} +1 -1
  9. package/dist/cjs/limebb-alert-dialog.cjs.entry.js +2 -2
  10. package/dist/cjs/limebb-browser.cjs.entry.js +4 -4
  11. package/dist/cjs/limebb-chat-icon-list_3.cjs.entry.js +6 -6
  12. package/dist/cjs/limebb-chat-list.cjs.entry.js +3 -3
  13. package/dist/cjs/limebb-color-palette-picker.cjs.entry.js +2 -2
  14. package/dist/cjs/limebb-color-palette-swatches.cjs.entry.js +2 -2
  15. package/dist/cjs/limebb-component-config.cjs.entry.js +3 -3
  16. package/dist/cjs/limebb-component-picker.cjs.entry.js +2 -2
  17. package/dist/cjs/limebb-composer-toolbar.cjs.entry.js +4 -4
  18. package/dist/cjs/limebb-currency-picker.cjs.entry.js +3 -3
  19. package/dist/cjs/limebb-dashboard-widget.cjs.entry.js +2 -2
  20. package/dist/cjs/limebb-data-cells.cjs.entry.js +2 -2
  21. package/dist/cjs/limebb-date-picker.cjs.entry.js +3 -3
  22. package/dist/cjs/limebb-date-range.cjs.entry.js +2 -2
  23. package/dist/cjs/limebb-document-chips.cjs.entry.js +2 -2
  24. package/dist/cjs/limebb-document-item.cjs.entry.js +3 -3
  25. package/dist/cjs/limebb-document-picker.cjs.entry.js +2 -2
  26. package/dist/cjs/limebb-empty-state.cjs.entry.js +1 -1
  27. package/dist/cjs/limebb-feed-item-thumbnail-file-info.cjs.entry.js +2 -2
  28. package/dist/cjs/limebb-feed-timeline-item.cjs.entry.js +19 -7
  29. package/dist/cjs/limebb-feed.cjs.entry.js +3 -3
  30. package/dist/cjs/limebb-filter-chip_6.cjs.entry.js +7 -7
  31. package/dist/cjs/limebb-icon-picker.cjs.entry.js +2 -2
  32. package/dist/cjs/limebb-info-tile-currency-format.cjs.entry.js +1 -1
  33. package/dist/cjs/limebb-info-tile-date-format.cjs.entry.js +1 -1
  34. package/dist/cjs/limebb-info-tile-decimal-format.cjs.entry.js +1 -1
  35. package/dist/cjs/limebb-info-tile-format.cjs.entry.js +2 -2
  36. package/dist/cjs/limebb-info-tile-relative-date-format.cjs.entry.js +1 -1
  37. package/dist/cjs/limebb-info-tile-unit-format.cjs.entry.js +1 -1
  38. package/dist/cjs/limebb-info-tile.cjs.entry.js +3 -3
  39. package/dist/cjs/limebb-inline-image.cjs.entry.js +2 -2
  40. package/dist/cjs/limebb-kanban-group.cjs.entry.js +3 -3
  41. package/dist/cjs/limebb-kanban-item.cjs.entry.js +2 -2
  42. package/dist/cjs/limebb-kanban.cjs.entry.js +1 -1
  43. package/dist/cjs/limebb-lime-query-builder.cjs.entry.js +3 -3
  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 +4 -4
  46. package/dist/cjs/limebb-lime-query-order-by-editor_2.cjs.entry.js +3 -3
  47. package/dist/cjs/limebb-lime-query-order-by-item.cjs.entry.js +1 -1
  48. package/dist/cjs/limebb-lime-query-response-format-builder.cjs.entry.js +3 -3
  49. package/dist/cjs/limebb-lime-query-response-format-editor_2.cjs.entry.js +32 -27
  50. package/dist/cjs/limebb-limeobject-file-viewer.cjs.entry.js +2 -2
  51. package/dist/cjs/limebb-live-docs-info.cjs.entry.js +1 -1
  52. package/dist/cjs/limebb-loader.cjs.entry.js +2 -2
  53. package/dist/cjs/limebb-locale-picker.cjs.entry.js +2 -2
  54. package/dist/cjs/limebb-mention-group-counter.cjs.entry.js +1 -1
  55. package/dist/cjs/limebb-mention.cjs.entry.js +2 -2
  56. package/dist/cjs/limebb-navigation-button_2.cjs.entry.js +1 -1
  57. package/dist/cjs/limebb-notification-item.cjs.entry.js +2 -2
  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 +2 -2
  61. package/dist/cjs/limebb-property-selector.cjs.entry.js +84 -72
  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 +3 -3
  64. package/dist/cjs/limebb-rule-editor.cjs.entry.js +2 -2
  65. package/dist/cjs/limebb-rule-gate.cjs.entry.js +2 -2
  66. package/dist/cjs/limebb-text-editor-picker.cjs.entry.js +1 -1
  67. package/dist/cjs/limebb-text-editor.cjs.entry.js +3 -3
  68. package/dist/cjs/limebb-trend-indicator.cjs.entry.js +2 -2
  69. package/dist/cjs/limebb-value-comparison-editor.cjs.entry.js +4 -4
  70. package/dist/cjs/{limetype-C-fVThrI.js → limetype-BPuuRLtH.js} +2 -1
  71. package/dist/cjs/loader.cjs.js +1 -1
  72. package/dist/cjs/{web-component-template-C9hvjrMm.js → web-component-template-DRMW9wHN.js} +1 -1
  73. package/dist/collection/collection-manifest.json +1 -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.js +1 -1
  77. package/dist/collection/components/chat-list/chat-item/chat-item.js +2 -2
  78. package/dist/collection/components/chat-list/chat-list.js +1 -1
  79. package/dist/collection/components/chat-list/typing-indicator/typing-indicator.js +1 -1
  80. package/dist/collection/components/color-palette-picker/color-palette-picker.js +1 -1
  81. package/dist/collection/components/color-palette-picker/color-palette-swatches/color-palette-swatches.js +1 -1
  82. package/dist/collection/components/composer-toolbar/composer-toolbar.js +2 -2
  83. package/dist/collection/components/currency-picker/currency-picker.js +1 -1
  84. package/dist/collection/components/dashboard-widget/dashboard-widget.js +1 -1
  85. package/dist/collection/components/date-picker/date-picker.js +1 -1
  86. package/dist/collection/components/date-range/date-range.js +1 -1
  87. package/dist/collection/components/document-chips/document-chips.js +1 -1
  88. package/dist/collection/components/document-picker/document-item/document-item.js +2 -2
  89. package/dist/collection/components/document-picker/document-picker.js +1 -1
  90. package/dist/collection/components/feed/feed-item/feed-timeline-item.js +17 -5
  91. package/dist/collection/components/feed/feed-item-thumbnail-file-info/feed-item-thumbnail-file-info.js +1 -1
  92. package/dist/collection/components/feed/feed.js +1 -1
  93. package/dist/collection/components/filter-chip/filter-chip.js +2 -2
  94. package/dist/collection/components/filter-condition-picker/filter-condition-picker.js +1 -1
  95. package/dist/collection/components/icon-picker/icon-picker.js +1 -1
  96. package/dist/collection/components/info-tile/format/config/info-tile-format.js +1 -1
  97. package/dist/collection/components/kanban/kanban-group/kanban-group.js +4 -3
  98. package/dist/collection/components/lime-query-builder/property-selection-format.js +31 -26
  99. package/dist/collection/components/lime-query-builder/property-selector/property-selector.js +87 -72
  100. package/dist/collection/components/rule-editor/value-comparison-editor/value-comparison-editor.js +1 -1
  101. package/dist/components/chat-icon-list.js +1 -1
  102. package/dist/components/chat-item.js +1 -1
  103. package/dist/components/currency-picker.js +1 -1
  104. package/dist/components/date-picker.js +1 -1
  105. package/dist/components/document-item.js +1 -1
  106. package/dist/components/feed-item-thumbnail-file-info.js +1 -1
  107. package/dist/components/feed-timeline-item.js +1 -1
  108. package/dist/components/filter-chip.js +1 -1
  109. package/dist/components/filter-condition-picker.js +1 -1
  110. package/dist/components/kanban-group.js +1 -1
  111. package/dist/components/limebb-alert-dialog.js +1 -1
  112. package/dist/components/limebb-browser.js +1 -1
  113. package/dist/components/limebb-chat-list.js +1 -1
  114. package/dist/components/limebb-color-palette-picker.js +1 -1
  115. package/dist/components/limebb-color-palette-swatches.js +1 -1
  116. package/dist/components/limebb-composer-toolbar.js +1 -1
  117. package/dist/components/limebb-dashboard-widget.js +1 -1
  118. package/dist/components/limebb-date-range.js +1 -1
  119. package/dist/components/limebb-document-chips.js +1 -1
  120. package/dist/components/limebb-document-picker.js +1 -1
  121. package/dist/components/limebb-feed.js +1 -1
  122. package/dist/components/limebb-icon-picker.js +1 -1
  123. package/dist/components/limebb-info-tile-format.js +1 -1
  124. package/dist/components/limebb-value-comparison-editor.js +1 -1
  125. package/dist/components/limetype.js +1 -1
  126. package/dist/components/property-selector.js +1 -1
  127. package/dist/components/response-format-editor.js +1 -1
  128. package/dist/components/typing-indicator.js +1 -1
  129. package/dist/esm/{filter-group-logic-DS1inQTh.js → filter-group-logic-CzThKf85.js} +1 -1
  130. package/dist/esm/{filter-operators-CsZi5iCV.js → filter-operators-u3T1PKhm.js} +1 -1
  131. package/dist/esm/{index-DwHAn7LS.js → index-COtSgrC5.js} +47 -11
  132. package/dist/esm/{index.esm-BjIhvFKX.js → index.esm-B9D_MXA6.js} +2 -2
  133. package/dist/esm/index.js +3 -3
  134. package/dist/esm/lime-crm-building-blocks.js +3 -3
  135. package/dist/esm/{lime-query-validation-CVV7mrLj.js → lime-query-validation-dGoN_93p.js} +1 -1
  136. package/dist/esm/limebb-alert-dialog.entry.js +2 -2
  137. package/dist/esm/limebb-browser.entry.js +4 -4
  138. package/dist/esm/limebb-chat-icon-list_3.entry.js +6 -6
  139. package/dist/esm/limebb-chat-list.entry.js +3 -3
  140. package/dist/esm/limebb-color-palette-picker.entry.js +2 -2
  141. package/dist/esm/limebb-color-palette-swatches.entry.js +2 -2
  142. package/dist/esm/limebb-component-config.entry.js +3 -3
  143. package/dist/esm/limebb-component-picker.entry.js +2 -2
  144. package/dist/esm/limebb-composer-toolbar.entry.js +4 -4
  145. package/dist/esm/limebb-currency-picker.entry.js +3 -3
  146. package/dist/esm/limebb-dashboard-widget.entry.js +2 -2
  147. package/dist/esm/limebb-data-cells.entry.js +2 -2
  148. package/dist/esm/limebb-date-picker.entry.js +3 -3
  149. package/dist/esm/limebb-date-range.entry.js +2 -2
  150. package/dist/esm/limebb-document-chips.entry.js +2 -2
  151. package/dist/esm/limebb-document-item.entry.js +3 -3
  152. package/dist/esm/limebb-document-picker.entry.js +2 -2
  153. package/dist/esm/limebb-empty-state.entry.js +1 -1
  154. package/dist/esm/limebb-feed-item-thumbnail-file-info.entry.js +2 -2
  155. package/dist/esm/limebb-feed-timeline-item.entry.js +19 -7
  156. package/dist/esm/limebb-feed.entry.js +3 -3
  157. package/dist/esm/limebb-filter-chip_6.entry.js +7 -7
  158. package/dist/esm/limebb-icon-picker.entry.js +2 -2
  159. package/dist/esm/limebb-info-tile-currency-format.entry.js +1 -1
  160. package/dist/esm/limebb-info-tile-date-format.entry.js +1 -1
  161. package/dist/esm/limebb-info-tile-decimal-format.entry.js +1 -1
  162. package/dist/esm/limebb-info-tile-format.entry.js +2 -2
  163. package/dist/esm/limebb-info-tile-relative-date-format.entry.js +1 -1
  164. package/dist/esm/limebb-info-tile-unit-format.entry.js +1 -1
  165. package/dist/esm/limebb-info-tile.entry.js +3 -3
  166. package/dist/esm/limebb-inline-image.entry.js +2 -2
  167. package/dist/esm/limebb-kanban-group.entry.js +3 -3
  168. package/dist/esm/limebb-kanban-item.entry.js +2 -2
  169. package/dist/esm/limebb-kanban.entry.js +1 -1
  170. package/dist/esm/limebb-lime-query-builder.entry.js +3 -3
  171. package/dist/esm/limebb-lime-query-filter-builder.entry.js +3 -3
  172. package/dist/esm/limebb-lime-query-filter-comparison_2.entry.js +4 -4
  173. package/dist/esm/limebb-lime-query-order-by-editor_2.entry.js +3 -3
  174. package/dist/esm/limebb-lime-query-order-by-item.entry.js +1 -1
  175. package/dist/esm/limebb-lime-query-response-format-builder.entry.js +3 -3
  176. package/dist/esm/limebb-lime-query-response-format-editor_2.entry.js +32 -27
  177. package/dist/esm/limebb-limeobject-file-viewer.entry.js +2 -2
  178. package/dist/esm/limebb-live-docs-info.entry.js +1 -1
  179. package/dist/esm/limebb-loader.entry.js +2 -2
  180. package/dist/esm/limebb-locale-picker.entry.js +2 -2
  181. package/dist/esm/limebb-mention-group-counter.entry.js +1 -1
  182. package/dist/esm/limebb-mention.entry.js +2 -2
  183. package/dist/esm/limebb-navigation-button_2.entry.js +1 -1
  184. package/dist/esm/limebb-notification-item.entry.js +2 -2
  185. package/dist/esm/limebb-notification-list.entry.js +2 -2
  186. package/dist/esm/limebb-object-chip.entry.js +3 -3
  187. package/dist/esm/limebb-percentage-visualizer.entry.js +2 -2
  188. package/dist/esm/limebb-property-selector.entry.js +84 -72
  189. package/dist/esm/limebb-rule-arg-filter-editor.entry.js +2 -2
  190. package/dist/esm/limebb-rule-chip-popover.entry.js +3 -3
  191. package/dist/esm/limebb-rule-editor.entry.js +2 -2
  192. package/dist/esm/limebb-rule-gate.entry.js +2 -2
  193. package/dist/esm/limebb-text-editor-picker.entry.js +1 -1
  194. package/dist/esm/limebb-text-editor.entry.js +3 -3
  195. package/dist/esm/limebb-trend-indicator.entry.js +2 -2
  196. package/dist/esm/limebb-value-comparison-editor.entry.js +4 -4
  197. package/dist/esm/{limetype-BbMRN-SU.js → limetype-BcELY1NF.js} +2 -2
  198. package/dist/esm/loader.js +2 -2
  199. package/dist/esm/{web-component-template-CAI6pXCH.js → web-component-template-DxbwHsvw.js} +1 -1
  200. package/dist/lime-crm-building-blocks/index.esm.js +1 -1
  201. package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
  202. package/dist/lime-crm-building-blocks/{p-b0b8ce73.entry.js → p-0193ed83.entry.js} +1 -1
  203. package/dist/lime-crm-building-blocks/{p-97839894.entry.js → p-021e452a.entry.js} +1 -1
  204. package/dist/lime-crm-building-blocks/{p-7033d408.entry.js → p-02fba38e.entry.js} +1 -1
  205. package/dist/lime-crm-building-blocks/{p-5beb508a.entry.js → p-0370200d.entry.js} +1 -1
  206. package/dist/lime-crm-building-blocks/{p-0c4f6220.entry.js → p-07a9c8f2.entry.js} +1 -1
  207. package/dist/lime-crm-building-blocks/{p-240cbd82.entry.js → p-080a1166.entry.js} +1 -1
  208. package/dist/lime-crm-building-blocks/{p-52a92d89.entry.js → p-0ed9a7cc.entry.js} +1 -1
  209. package/dist/lime-crm-building-blocks/{p-a4e676a6.entry.js → p-10310a64.entry.js} +1 -1
  210. package/dist/lime-crm-building-blocks/{p-ef890206.entry.js → p-10da40f8.entry.js} +1 -1
  211. package/dist/lime-crm-building-blocks/{p-0253fd45.entry.js → p-1ebe45b8.entry.js} +1 -1
  212. package/dist/lime-crm-building-blocks/{p-251aca46.entry.js → p-242ed59b.entry.js} +1 -1
  213. package/dist/lime-crm-building-blocks/{p-662fb8b6.entry.js → p-29262c17.entry.js} +1 -1
  214. package/dist/lime-crm-building-blocks/{p-22e68812.entry.js → p-3c3009e3.entry.js} +1 -1
  215. package/dist/lime-crm-building-blocks/p-40cb2c7c.entry.js +1 -0
  216. package/dist/lime-crm-building-blocks/p-43dfbefb.entry.js +1 -0
  217. package/dist/lime-crm-building-blocks/{p-f4d518ec.entry.js → p-49d042aa.entry.js} +1 -1
  218. package/dist/lime-crm-building-blocks/p-4f0939e6.entry.js +1 -0
  219. package/dist/lime-crm-building-blocks/{p-f9e9d18e.entry.js → p-5268fc02.entry.js} +1 -1
  220. package/dist/lime-crm-building-blocks/{p-25984c90.entry.js → p-56d125c7.entry.js} +1 -1
  221. package/dist/lime-crm-building-blocks/{p-73b71080.entry.js → p-584a48e4.entry.js} +1 -1
  222. package/dist/lime-crm-building-blocks/{p-397a6191.entry.js → p-5f682c06.entry.js} +1 -1
  223. package/dist/lime-crm-building-blocks/{p-dd7aec09.entry.js → p-63e7c191.entry.js} +1 -1
  224. package/dist/lime-crm-building-blocks/{p-d43cf8d1.entry.js → p-6951dcf7.entry.js} +1 -1
  225. package/dist/lime-crm-building-blocks/p-69c116b3.entry.js +1 -0
  226. package/dist/lime-crm-building-blocks/{p-2e48601d.entry.js → p-6a8422d2.entry.js} +1 -1
  227. package/dist/lime-crm-building-blocks/{p-c4e5e589.entry.js → p-6d8efe87.entry.js} +1 -1
  228. package/dist/lime-crm-building-blocks/{p-d78370be.entry.js → p-73f23d08.entry.js} +1 -1
  229. package/dist/lime-crm-building-blocks/{p-e2e1358d.entry.js → p-78118c62.entry.js} +1 -1
  230. package/dist/lime-crm-building-blocks/{p-906b4eca.entry.js → p-79bb58b0.entry.js} +1 -1
  231. package/dist/lime-crm-building-blocks/{p-f6377fa5.entry.js → p-7a9d7d87.entry.js} +1 -1
  232. package/dist/lime-crm-building-blocks/p-7ccca5e4.entry.js +1 -0
  233. package/dist/lime-crm-building-blocks/{p-585f6cfe.entry.js → p-7cd8dffd.entry.js} +1 -1
  234. package/dist/lime-crm-building-blocks/{p-7a5c2dda.entry.js → p-848462ee.entry.js} +1 -1
  235. package/dist/lime-crm-building-blocks/p-84ad9159.entry.js +1 -0
  236. package/dist/lime-crm-building-blocks/{p-e8b2df7c.entry.js → p-8a17a7ea.entry.js} +1 -1
  237. package/dist/lime-crm-building-blocks/{p-bc297cf4.entry.js → p-8fdf6a09.entry.js} +1 -1
  238. package/dist/lime-crm-building-blocks/{p-aafead4e.entry.js → p-956e466d.entry.js} +1 -1
  239. package/dist/lime-crm-building-blocks/p-COtSgrC5.js +3 -0
  240. package/dist/lime-crm-building-blocks/{p-b78ub0mY.js → p-Cj_3f9vm.js} +1 -1
  241. package/dist/lime-crm-building-blocks/{p-Cw4kdMw3.js → p-Css8537O.js} +1 -1
  242. package/dist/lime-crm-building-blocks/p-Cz5s8qGk.js +1 -0
  243. package/dist/lime-crm-building-blocks/{p-Dhyy9Td7.js → p-DLec4QaM.js} +1 -1
  244. package/dist/lime-crm-building-blocks/{p-DI3GWqfD.js → p-DVypQWZ4.js} +1 -1
  245. package/dist/lime-crm-building-blocks/{p-d014ec57.entry.js → p-a17d6dac.entry.js} +1 -1
  246. package/dist/lime-crm-building-blocks/p-a58c9e1e.entry.js +1 -0
  247. package/dist/lime-crm-building-blocks/{p-1c6e5402.entry.js → p-a5f3913d.entry.js} +1 -1
  248. package/dist/lime-crm-building-blocks/{p-964b066d.entry.js → p-abe751c0.entry.js} +1 -1
  249. package/dist/lime-crm-building-blocks/{p-7b6c9cbf.entry.js → p-ac13feb9.entry.js} +1 -1
  250. package/dist/lime-crm-building-blocks/{p-1f97e235.entry.js → p-ad661a38.entry.js} +1 -1
  251. package/dist/lime-crm-building-blocks/{p-19dc7242.entry.js → p-bd89279d.entry.js} +1 -1
  252. package/dist/lime-crm-building-blocks/{p-bcd8c767.entry.js → p-c85ff45b.entry.js} +1 -1
  253. package/dist/lime-crm-building-blocks/{p-673226a6.entry.js → p-ce2755a0.entry.js} +1 -1
  254. package/dist/lime-crm-building-blocks/{p-742926a3.entry.js → p-ce723c21.entry.js} +1 -1
  255. package/dist/lime-crm-building-blocks/{p-3f537135.entry.js → p-d071bd2d.entry.js} +1 -1
  256. package/dist/lime-crm-building-blocks/{p-f4214745.entry.js → p-d23f4604.entry.js} +1 -1
  257. package/dist/lime-crm-building-blocks/p-d495cc19.entry.js +1 -0
  258. package/dist/lime-crm-building-blocks/{p-e6a85c26.entry.js → p-d816fcc8.entry.js} +1 -1
  259. package/dist/lime-crm-building-blocks/{p-d3fe25a7.entry.js → p-d8d32cb1.entry.js} +1 -1
  260. package/dist/lime-crm-building-blocks/{p-89f120f8.entry.js → p-da35bcc7.entry.js} +1 -1
  261. package/dist/lime-crm-building-blocks/{p-6c2e25d9.entry.js → p-dacf9e77.entry.js} +1 -1
  262. package/dist/lime-crm-building-blocks/{p-69b08896.entry.js → p-e5028d83.entry.js} +1 -1
  263. package/dist/lime-crm-building-blocks/{p-e4a21ebe.entry.js → p-e910963c.entry.js} +1 -1
  264. package/dist/lime-crm-building-blocks/{p-d2e85be2.entry.js → p-ee7bd504.entry.js} +1 -1
  265. package/dist/lime-crm-building-blocks/{p-6f4e2590.entry.js → p-eed0b2c2.entry.js} +1 -1
  266. package/dist/lime-crm-building-blocks/{p-e581d0b7.entry.js → p-f1060c88.entry.js} +1 -1
  267. package/dist/lime-crm-building-blocks/{p-896e77b9.entry.js → p-f9b1cd5e.entry.js} +1 -1
  268. package/dist/lime-crm-building-blocks/p-ffca266e.entry.js +1 -0
  269. package/dist/lime-crm-building-blocks/{p-CE43qjk3.js → p-hsyotUav.js} +1 -1
  270. package/dist/types/components/feed/feed-item/feed-timeline-item.d.ts +2 -0
  271. package/dist/types/components/lime-query-builder/property-selector/property-selector.d.ts +23 -3
  272. package/dist/types/components.d.ts +21 -11
  273. package/dist/types/stencil-public-runtime.d.ts +12 -0
  274. package/loader/index.d.ts +1 -1
  275. package/package.json +14 -14
  276. package/dist/lime-crm-building-blocks/p-135ba2ee.entry.js +0 -1
  277. package/dist/lime-crm-building-blocks/p-59fb624c.entry.js +0 -1
  278. package/dist/lime-crm-building-blocks/p-78d362b4.entry.js +0 -1
  279. package/dist/lime-crm-building-blocks/p-79c492b2.entry.js +0 -1
  280. package/dist/lime-crm-building-blocks/p-7ce967b6.entry.js +0 -1
  281. package/dist/lime-crm-building-blocks/p-DLehg4hi.js +0 -1
  282. package/dist/lime-crm-building-blocks/p-DwHAn7LS.js +0 -2
  283. package/dist/lime-crm-building-blocks/p-a157233b.entry.js +0 -1
  284. package/dist/lime-crm-building-blocks/p-a3058b72.entry.js +0 -1
  285. package/dist/lime-crm-building-blocks/p-d20404ec.entry.js +0 -1
  286. package/dist/lime-crm-building-blocks/p-e29c27b8.entry.js +0 -1
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-DwHAn7LS.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-COtSgrC5.js';
2
2
 
3
3
  /**
4
4
  * Process a single property value and add to items array
@@ -69,6 +69,26 @@ function propertySelectionToItems(selection, prefix = '') {
69
69
  }
70
70
  return items;
71
71
  }
72
+ /**
73
+ * The relation's own id. Selecting a relation means matching it by id, so this
74
+ * is where that selection lives once the relation also has properties of its
75
+ * own selected — a `PropertySelection` key holds one value, and the nested
76
+ * object needs that slot.
77
+ */
78
+ const RELATION_ID_KEY = '_id';
79
+ const METADATA_KEYS = new Set(['_alias', '#description']);
80
+ /**
81
+ * Whether a value is a nested selection holding properties, rather than a
82
+ * selection of the property itself. Metadata (`_alias`, `#description`)
83
+ * describes the selection, so it does not count as a selected property.
84
+ * @param value Value stored under a `PropertySelection` key
85
+ */
86
+ function hasSelectedProperties(value) {
87
+ if (!value || typeof value !== 'object') {
88
+ return false;
89
+ }
90
+ return Object.keys(value).some((key) => !METADATA_KEYS.has(key));
91
+ }
72
92
  /**
73
93
  * Set the final property value (with or without alias/description)
74
94
  * @param current Current PropertySelection object
@@ -76,14 +96,9 @@ function propertySelectionToItems(selection, prefix = '') {
76
96
  * @param item Property selection item with path and optional alias/description
77
97
  */
78
98
  function setPropertyValue(current, part, item) {
79
- // Check if there's already a nested PropertySelection with properties
80
99
  const existing = current[part];
81
- if (existing &&
82
- typeof existing === 'object' &&
83
- !('_alias' in existing) &&
84
- !('#description' in existing)) {
85
- // There's already a nested PropertySelection object with properties
86
- // Don't overwrite it - preserve the nested selections
100
+ if (hasSelectedProperties(existing)) {
101
+ setPropertyValue(existing, RELATION_ID_KEY, item);
87
102
  return;
88
103
  }
89
104
  // Build metadata object, stripping empty values
@@ -111,29 +126,19 @@ function setPropertyValue(current, part, item) {
111
126
  */
112
127
  function ensureNestedObject(current, part) {
113
128
  const existing = current[part];
114
- // If doesn't exist or is null, create empty object
115
- if (!existing) {
129
+ if (existing === undefined) {
116
130
  current[part] = {};
117
131
  return current[part];
118
132
  }
119
- // If it's already a PropertySelection object, check for metadata
120
- if (typeof existing === 'object') {
121
- const existingObj = existing;
122
- // If it has metadata but no other properties, preserve the metadata
123
- const keys = Object.keys(existingObj);
124
- const hasMetadata = '_alias' in existingObj || '#description' in existingObj;
125
- const otherKeys = keys.filter((k) => k !== '_alias' && k !== '#description');
126
- if (hasMetadata && otherKeys.length === 0) {
127
- // Convert { _alias: "...", "#description": "..." } to { _alias: "...", "#description": "...", ...nested }
128
- // Keep the existing object and return it (caller will add nested props)
129
- return existingObj;
130
- }
131
- // Already has nested properties, return as is
132
- return existingObj;
133
+ if (hasSelectedProperties(existing)) {
134
+ return existing;
133
135
  }
134
- // Shouldn't reach here, but fallback to creating new object
135
- current[part] = {};
136
- return current[part];
136
+ // `existing` is a selection of the relation itself: `null`, or metadata
137
+ // only when it carries an alias or a description. Both mean "match by
138
+ // id", which coexists with the relation's own properties as `_id`.
139
+ const nested = { [RELATION_ID_KEY]: existing };
140
+ current[part] = nested;
141
+ return nested;
137
142
  }
138
143
  /**
139
144
  * Convert a flat list of property items to a nested PropertySelection structure
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, h } from './index-DwHAn7LS.js';
2
- import { W as We, L as Le, n } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, h } from './index-COtSgrC5.js';
2
+ import { W as We, L as Le, n } from './index.esm-B9D_MXA6.js';
3
3
  import { g as getPreviewType } from './extension-mapping-Bcm94u_z.js';
4
4
  import { n as negate } from './negate-ooVD-6_a.js';
5
5
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-DwHAn7LS.js';
1
+ import { r as registerInstance, h } from './index-COtSgrC5.js';
2
2
 
3
3
  const liveDocsInfoCss = () => `:host(limebb-live-docs-info){padding:1rem 2rem;display:flex;flex-direction:column;gap:0.5rem;border-style:dashed;border-color:rgb(var(--contrast-700));border-radius:0 0 0.5rem 0.5rem;border-width:0 1px 1px 1px}.header{display:flex;align-items:center;gap:0.5rem}h2,p{margin:0;color:rgb(var(--contrast-1100))}h2{font-size:large;font-weight:300}limel-icon{color:rgb(var(--color-orange-default));width:2rem}a{all:unset;cursor:pointer;transition:color 0.2s ease;color:rgb(var(--color-sky-default));margin-left:0.5rem}a:hover{color:rgb(var(--color-sky-dark));text-decoration:underline}`;
4
4
 
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, c as createEvent } from './index-DwHAn7LS.js';
2
- import { U, n } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, c as createEvent } from './index-COtSgrC5.js';
2
+ import { U, n } from './index.esm-B9D_MXA6.js';
3
3
  import { H as HighlightFeedItemHandler } from './highlight-item.handler-BWMpG2bS.js';
4
4
 
5
5
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-DwHAn7LS.js';
2
- import { n } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-COtSgrC5.js';
2
+ import { n } from './index.esm-B9D_MXA6.js';
3
3
  import { t as toString, c as castPath, a as toKey, i as isKey, g as get, b as baseGet, d as arrayMap } from './get-Cq4rshNg.js';
4
4
  import { e as isArrayLike, f as isIndex, h as isArguments, j as arrayPush, S as Stack, k as keys, l as isLength, d as baseUnary } from './_Uint8Array-CUI8uY-p.js';
5
5
  import { c as isObject, e as eq, a as isArray, S as Symbol } from './_MapCache-BgAfMcRA.js';
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-DwHAn7LS.js';
1
+ import { r as registerInstance, h } from './index-COtSgrC5.js';
2
2
 
3
3
  const mentionGroupCounterCss = () => `:host(limebb-mention-group-counter){order:2;margin-right:-0.5rem;box-sizing:border-box;transition:background-color 0.2s ease;min-width:fit-content;font-size:smaller;border-radius:9rem;cursor:help;padding:0.25rem 0.5rem;line-height:1;border:1px solid rgb(var(--contrast-500))}:host(limebb-mention-group-counter:hover){border-color:rgb(var(--contrast-100));background-color:rgb(var(--contrast-600))}`;
4
4
 
@@ -1,6 +1,6 @@
1
- import { r as registerInstance, g as getElement, h } from './index-DwHAn7LS.js';
1
+ import { r as registerInstance, g as getElement, h } from './index-COtSgrC5.js';
2
2
  import { f as findParentElement } from './dom-B95D7tDb.js';
3
- import { n } from './index.esm-BjIhvFKX.js';
3
+ import { n } from './index.esm-B9D_MXA6.js';
4
4
 
5
5
  const mentionCss = () => `:host(limebb-mention){display:inline}a{transition:background-color 0.2s ease;white-space:normal;overflow-wrap:break-word;word-break:break-word;padding:0 0.125rem;border-radius:0.25rem;text-decoration:none;color:rgb(var(--color-blue-default));background-color:rgb(var(--color-blue-default), 0.06)}a:hover{background-color:rgb(var(--color-blue-default), 0.16)}a:before,span:before{content:"@";opacity:0.7}`;
6
6
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, c as createEvent } from './index-DwHAn7LS.js';
1
+ import { r as registerInstance, h, c as createEvent } from './index-COtSgrC5.js';
2
2
  import { g as getPreviewType } from './extension-mapping-Bcm94u_z.js';
3
3
  import { g as getFileExtension } from './file-extension-DtnPTzDv.js';
4
4
 
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-DwHAn7LS.js';
2
- import { n } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-COtSgrC5.js';
2
+ import { n } from './index.esm-B9D_MXA6.js';
3
3
 
4
4
  const notificationItemCss = () => `@charset "UTF-8";*{box-sizing:border-box}:host(limebb-notification-item){isolation:isolate;position:relative;box-sizing:border-box;display:flex;flex-direction:column;gap:0.25rem;margin-left:0.5rem;border-radius:0.75rem;border:1px solid rgb(var(--contrast-500))}:host(limebb-notification-item):before{content:"";display:block;position:absolute;left:-1rem;top:0.85rem;border-radius:50%;height:0.5rem;width:0.5rem;transition:background-color 0.2s ease, scale 0.2s cubic-bezier(0.82, 0.3, 0.14, 1.36);scale:var(--limebb-notification-item-unread-badge-scale, 0.6);background-color:var(--limebb-notification-item-unread-badge-color, transparent)}:host(limebb-notification-item:hover) .timestamp{color:rgb(var(--contrast-1100))}:host(limebb-notification-item:hover) .body-text{opacity:1}.header{display:flex;align-items:center;gap:0.25rem;min-height:2rem;padding:0 0 0 0.25rem;margin-bottom:0.25rem}.header:not(:has(.icon)){padding-left:0.75rem}.header:not(:has(.unpromoted-actions-menu)){padding-right:0.5rem}.caption,.timestamp{font-size:0.75rem}.caption{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin:0;flex-grow:1;font-weight:600;color:rgb(var(--contrast-900))}.timestamp{flex-shrink:0;margin-left:auto;transition:color 0.4s ease, opacity 0.2s ease;color:rgb(var(--contrast-900))}.headline{display:flex;gap:0.25rem;align-items:center}.content{display:flex;min-width:0;gap:0.5rem;padding:0 0.75rem 0.5rem 0.75rem}.heading{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-height:2.5rem;font-size:0.875rem;--markdown-hyperlink-color:var(--mdc-theme-primary);--markdown-hyperlink-color--hovered:rgb(var(--color-teal-light))}.body{display:flex;flex-direction:column;gap:0.5rem}.body-text{display:-webkit-box;overflow:hidden;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:3;max-height:4.25rem;transition:opacity 0.2s ease;opacity:0.7}.icon{--icon-background-color:var(--limebb-feed-background-color);flex-shrink:0;width:1.5rem;padding:0.125rem}.author-avatar{border-radius:50%;width:2rem;height:2rem;object-fit:cover;margin-top:auto;margin-right:-0.25rem;margin-left:auto;box-shadow:0 0 0 1px rgb(var(--contrast-600))}.author{font-weight:bold;text-decoration:none;white-space:nowrap}a.author{position:relative;cursor:pointer;transition:color 0.2s ease;color:var(--mdc-theme-primary)}a.author:before{transition:opacity 0.2s ease, transform 0.3s ease-out;content:"";position:absolute;inset:auto 0 0 0;width:calc(100% - 0.5rem);margin:auto;height:0.125rem;border-radius:1rem;background-color:currentColor;opacity:0;transform:scale(0.6)}a.author:hover{color:rgb(var(--color-teal-light))}a.author:hover:before{opacity:0.3;transform:scale(1)}limel-chip-set{--button-shadow-normal:none;margin-left:-1rem;margin-bottom:-0.5rem}`;
5
5
 
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-DwHAn7LS.js';
2
- import { n } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-COtSgrC5.js';
2
+ import { n } from './index.esm-B9D_MXA6.js';
3
3
 
4
4
  /**
5
5
  * Processes a list of notifications by adding date headers and a "new items" indicator.
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, g as getElement, h } from './index-DwHAn7LS.js';
2
- import { g as getIcon } from './limetype-BbMRN-SU.js';
1
+ import { r as registerInstance, g as getElement, h } from './index-COtSgrC5.js';
2
+ import { g as getIcon } from './limetype-BcELY1NF.js';
3
3
  import { f as findParentElement } from './dom-B95D7tDb.js';
4
- import { b as It, n } from './index.esm-BjIhvFKX.js';
4
+ import { b as It, n } from './index.esm-B9D_MXA6.js';
5
5
 
6
6
  const logger = It('object-resolver');
7
7
  /**
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, h, H as Host } from './index-DwHAn7LS.js';
2
- import { n } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, h, H as Host } from './index-COtSgrC5.js';
2
+ import { n } from './index.esm-B9D_MXA6.js';
3
3
  import { g as getPercentageClass, n as normalizeValue } from './normalize-value-Cg1DC15C.js';
4
4
 
5
5
  const percentageVisualizerCss = () => `@charset "UTF-8";*,::before,::after{box-sizing:border-box}:host(limebb-percentage-visualizer){width:100%}limel-notched-outline:not([invalid]:not([invalid=false])) .limel-notched-outline--outlines{--limel-notched-outline-border-color:transparent}div[slot=content]:focus{outline:none}div[slot=content]:focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}div[slot=content]{display:flex;align-items:center;gap:0.5rem;border-radius:inherit;background-color:transparent !important}:host(limebb-percentage-visualizer[invalid]:not([invalid=false])) div[slot=content]{border-color:rgb(var(--color-red-default))}:host(limebb-percentage-visualizer):has(label) div[slot=content]{min-height:2.5rem;padding:0 0.375rem 0 1rem}.percentage-text{flex-shrink:0;min-width:2.5rem}:host([range-min^="-"]) .percentage-text{min-width:3.75rem}.percent-sign{opacity:0.4}.zero-point{content:"";position:absolute;transform:translateX(-50%);left:var(--limebb-percentage-visualizer-zero-point-position);height:0.25rem;width:0.25rem;border-radius:50%;box-shadow:0 0 0 0.125rem var(--limebb-percentage-visualizer-zero-point-color, rgb(var(--contrast-1200), 0.3));background-color:var(--limebb-percentage-visualizer-zero-point-color, rgb(var(--contrast-200), 0.9))}.percentage-bar{overflow:hidden;flex-grow:1;position:relative;display:flex;align-items:center;height:0.5rem;min-width:2rem;border-radius:0.5rem;background-color:rgb(var(--contrast-800), 0.6)}.percentage-fill{transition:width 0.2s ease;position:absolute;margin:auto;left:var(--limebb-percentage-visualizer-zero-point-position, 0);rotate:var(--limebb-percentage-visualizer-rotate, 0deg);transform-origin:left center;width:var(--limebb-percentage-visualizer-width);height:100%;border-radius:0.5rem}:host(limebb-percentage-visualizer:focus),:host(limebb-percentage-visualizer:focus-visible),:host(limebb-percentage-visualizer:focus-within){--limel-h-l-grid-template-rows-transition-speed:0.46s;--limel-h-l-grid-template-rows:1fr}:host(limebb-percentage-visualizer){--limel-h-l-grid-template-rows-transition-speed:0.3s;--limel-h-l-grid-template-rows:0fr}:host(limebb-percentage-visualizer:focus) limel-helper-line,:host(limebb-percentage-visualizer:focus-visible) limel-helper-line,:host(limebb-percentage-visualizer:focus-within) limel-helper-line,:host(limebb-percentage-visualizer:hover) limel-helper-line{will-change:grid-template-rows}.percentage-fill{background-color:var(--percentage-visualizer-color, var(--limebb-percentage-visualizer-color, var(--mdc-theme-primary)))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-200or-larger-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-red-darker))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-200to100-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-red-dark))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-100to90-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-red-dark))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-90to80-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-red-dark))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-80to70-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-red-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-70to60-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-red-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-60to50-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-coral-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-50to40-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-coral-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-40to30-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-orange-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-30to20-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-orange-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-20to10-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-amber-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-10to0-negative) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-amber-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-0) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--contrast-800))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-0to10-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-yellow-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-10to20-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-yellow-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-20to30-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-grass-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-30to40-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-grass-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-40to50-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-lime-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-50to60-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-lime-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-60to70-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-teal-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-70to80-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-teal-default))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-80to90-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-teal-dark))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-90to100-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-teal-dark))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-100to200-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-teal-dark))}:host([range-min^="-"][display-percentage-colors]:not([display-percentage-colors=false]).has-value-200or-larger-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-teal-darker))}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-0) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--contrast-800))}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-0to10-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--0to10)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-10to20-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--10to20)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-20to30-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--20to30)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-30to40-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--30to40)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-40to50-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--40to50)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-50to60-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--50to60)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-60to70-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--60to70)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-70to80-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--70to80)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-80to90-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--80to90)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-90to100-positive) .percentage-fill{--limebb-percentage-visualizer-color:var(--color-percent--90to100)}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-100to200-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-teal-dark))}:host([display-percentage-colors]:not([display-percentage-colors=false]).has-value-200or-larger-positive) .percentage-fill{--limebb-percentage-visualizer-color:rgb(var(--color-teal-darker))}`;
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-DwHAn7LS.js';
2
- import { I as Ie, n } from './index.esm-BjIhvFKX.js';
3
- import { g as getPropertyFromPath, a as getNormalizedProperties } from './property-resolution-CQUZjrU4.js';
4
- import { g as getIcon } from './limetype-BbMRN-SU.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-COtSgrC5.js';
2
+ import { I as Ie, n } from './index.esm-B9D_MXA6.js';
3
+ import { v as validatePropertyPath, a as getNormalizedProperties } from './property-resolution-CQUZjrU4.js';
4
+ import { i as isManyRelation, g as getIcon } from './limetype-BcELY1NF.js';
5
5
 
6
6
  const propertySelectorCss = () => `:host(limebb-property-selector){display:block}limel-menu{display:block;width:100%}`;
7
7
 
@@ -39,7 +39,6 @@ const PropertySelector = class {
39
39
  // Open menu when the chip-set input receives focus
40
40
  // This happens when user clicks to type/edit
41
41
  if (!this.isOpen) {
42
- this.navigationPath = this.value || '';
43
42
  this.loadMenuItems();
44
43
  this.isOpen = true;
45
44
  }
@@ -67,26 +66,32 @@ const PropertySelector = class {
67
66
  if (!selectedPath) {
68
67
  return;
69
68
  }
70
- // Check if this is a complete path (leaf property, not a relation)
71
- const property = getPropertyFromPath(this.limetypes, this.limetype, selectedPath);
72
- if (property === null || property === void 0 ? void 0 : property.relation) {
73
- // This is a relation - update navigation but don't emit
74
- this.navigationPath = selectedPath;
75
- }
76
- else {
77
- // This is a leaf property - emit and close
78
- this.change.emit(selectedPath);
79
- this.isOpen = false;
80
- this.navigationPath = '';
69
+ // Unreachable through the menu, which filters many-relations out at
70
+ // every level. Kept so a path from elsewhere cannot be emitted, and
71
+ // `validatePropertyPath` rejects a many-relation anywhere along the
72
+ // path, not just at its end.
73
+ const { error } = validatePropertyPath(this.limetypes, this.limetype, selectedPath);
74
+ if (error) {
75
+ console.warn('property-selector rejected a property path', {
76
+ limetype: this.limetype,
77
+ path: selectedPath,
78
+ error,
79
+ });
80
+ return;
81
81
  }
82
+ this.change.emit(selectedPath);
83
+ this.isOpen = false;
84
+ this.navigationPath = '';
82
85
  };
83
86
  this.handleNavigateMenu = (event) => {
84
- var _a;
87
+ var _a, _b;
85
88
  event.stopPropagation();
86
- if ((_a = event.detail) === null || _a === void 0 ? void 0 : _a.value) {
87
- // Update navigation path when drilling down
88
- this.navigationPath = event.detail.value;
89
- }
89
+ // `limel-menu` emits the item it drilled into, the parent item when
90
+ // stepping back one level, and `null` at the root. Reading the value
91
+ // for all three keeps the chips on the level the menu is showing;
92
+ // only reacting to a truthy value leaves them stuck on the deepest
93
+ // path the user visited.
94
+ this.navigationPath = (_b = (_a = event.detail) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : '';
90
95
  };
91
96
  this.handleCancel = () => {
92
97
  this.isOpen = false;
@@ -135,61 +140,26 @@ const PropertySelector = class {
135
140
  const chips = this.getChipsForPath(this.navigationPath || this.value || '');
136
141
  return (h("limel-menu", { items: this.menuItems, open: this.isOpen, emptyResultMessage: "No available properties", surfaceWidth: "inherit-from-trigger", openDirection: "bottom-end", onSelect: this.handleSelect, onNavigateMenu: this.handleNavigateMenu, onCancel: this.handleCancel }, h("div", { slot: "trigger" }, h("div", { onClick: this.handleChipSetWrapperClick }, h("limel-chip-set", { type: "input", label: this.label, value: chips, required: this.required, helperText: this.helperText, delimiter: "\u203A", maxItems: 1, onChange: this.handleChipSetChange, onFocus: this.handleChipSetFocus, onStopEdit: this.handleChipSetBlur })))));
137
142
  }
143
+ /**
144
+ * The menu always opens at the root limetype. `limel-menu` owns the
145
+ * drilling from there, and every item it holds already carries its full
146
+ * path, so opening below the root would build items whose paths are
147
+ * missing their prefix and resolve against the wrong limetype.
148
+ */
138
149
  loadMenuItems() {
139
- // Get the limetype we're currently navigating in
140
- const currentLimetype = this.getCurrentLimetype();
141
- if (!currentLimetype) {
150
+ const rootLimetype = this.limetypes[this.limetype];
151
+ if (!rootLimetype) {
142
152
  this.menuItems = [];
143
153
  return;
144
154
  }
145
- this.menuItems = this.createMenuItems(currentLimetype, '');
146
- }
147
- getCurrentLimetype() {
148
- if (!this.navigationPath) {
149
- return this.limetypes[this.limetype];
150
- }
151
- // Get the limetype at the current navigation path
152
- const property = getPropertyFromPath(this.limetypes, this.limetype, this.navigationPath);
153
- if (property === null || property === void 0 ? void 0 : property.relation) {
154
- return property.relation.getLimetype();
155
- }
156
- return this.limetypes[this.limetype];
155
+ this.menuItems = this.createMenuItems(rootLimetype, '');
157
156
  }
158
157
  createMenuItems(limetype, pathPrefix) {
159
- const results = [];
160
- if (!limetype) {
161
- return results;
162
- }
163
- const normalizedProperties = getNormalizedProperties(limetype);
164
- for (const [propName, property] of Object.entries(normalizedProperties)) {
165
- // Skip hasMany and hasAndBelongsToMany relations
166
- if (property.type === 'hasmany' ||
167
- property.type === 'hasandbelongstomany') {
168
- continue;
169
- }
170
- const fullPath = pathPrefix
171
- ? `${pathPrefix}.${propName}`
172
- : propName;
173
- const isRelation = !!property.relation;
174
- let items;
175
- if (isRelation && property.relation) {
176
- // Create submenu for relation (only belongsto at this point)
177
- const relatedLimetype = property.relation.getLimetype();
178
- if (relatedLimetype) {
179
- items = async () => this.createMenuItems(relatedLimetype, fullPath);
180
- }
181
- }
182
- results.push({
183
- text: property.localname || propName,
184
- secondaryText: this.getSecondaryText(property),
185
- icon: this.getIconForProperty(property),
186
- value: fullPath,
187
- items: items,
188
- });
189
- }
190
- // Sort properties alphabetically by display text
191
- results.sort((a, b) => { var _a, _b; return this.collator.compare((_a = a.text) !== null && _a !== void 0 ? _a : '', (_b = b.text) !== null && _b !== void 0 ? _b : ''); });
192
- if (results.length === 0) {
158
+ const items = Object.entries(getNormalizedProperties(limetype))
159
+ .filter(([, property]) => !isManyRelation(property))
160
+ .map(([propName, property]) => this.createPropertyItem(property, joinPath(pathPrefix, propName)))
161
+ .sort((a, b) => this.collator.compare(a.text, b.text));
162
+ if (items.length === 0) {
193
163
  return [
194
164
  {
195
165
  text: 'No available properties',
@@ -198,7 +168,48 @@ const PropertySelector = class {
198
168
  },
199
169
  ];
200
170
  }
201
- return results;
171
+ return items;
172
+ }
173
+ createPropertyItem(property, path) {
174
+ return {
175
+ text: this.getPropertyText(property, path),
176
+ secondaryText: this.getSecondaryText(property),
177
+ icon: this.getIconForProperty(property),
178
+ value: path,
179
+ items: this.createSubMenuLoader(property, path),
180
+ };
181
+ }
182
+ createSubMenuLoader(property, path) {
183
+ var _a;
184
+ const relatedLimetype = (_a = property.relation) === null || _a === void 0 ? void 0 : _a.getLimetype();
185
+ if (!relatedLimetype) {
186
+ return undefined;
187
+ }
188
+ return async () => this.createRelationSubMenu(property, path, relatedLimetype);
189
+ }
190
+ /**
191
+ * `limel-menu` navigates into a submenu instead of emitting `select` for
192
+ * the item that owns it, so the relation row cannot select itself. The
193
+ * extra item is what makes the relation reachable as a leaf.
194
+ * @param property
195
+ * @param path
196
+ * @param relatedLimetype
197
+ */
198
+ createRelationSubMenu(property, path, relatedLimetype) {
199
+ const relatedProperties = this.createMenuItems(relatedLimetype, path);
200
+ return [
201
+ {
202
+ text: this.getPropertyText(property, path),
203
+ secondaryText: 'Select this relation',
204
+ icon: this.getIconForProperty(property),
205
+ value: path,
206
+ },
207
+ { separator: true },
208
+ ...relatedProperties,
209
+ ];
210
+ }
211
+ getPropertyText(property, path) {
212
+ return property.localname || path.split('.').at(-1) || path;
202
213
  }
203
214
  getSecondaryText(property) {
204
215
  var _a;
@@ -228,7 +239,7 @@ const PropertySelector = class {
228
239
  let currentLimetype = this.limetypes[this.limetype];
229
240
  let currentPath = '';
230
241
  for (const part of parts) {
231
- currentPath = currentPath ? `${currentPath}.${part}` : part;
242
+ currentPath = joinPath(currentPath, part);
232
243
  // Use getNormalizedProperties to include _id and _timestamp
233
244
  const normalizedProperties = getNormalizedProperties(currentLimetype);
234
245
  const property = normalizedProperties[part];
@@ -251,6 +262,7 @@ const PropertySelector = class {
251
262
  __decorate([
252
263
  Ie()
253
264
  ], PropertySelector.prototype, "limetypes", void 0);
265
+ const joinPath = (prefix, propertyName) => prefix ? `${prefix}.${propertyName}` : propertyName;
254
266
  PropertySelector.style = propertySelectorCss();
255
267
 
256
268
  export { PropertySelector as limebb_property_selector };
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-DwHAn7LS.js';
2
- import { M as Mt } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-COtSgrC5.js';
2
+ import { M as Mt } from './index.esm-B9D_MXA6.js';
3
3
 
4
4
  const ruleArgFilterEditorCss = () => `:host{display:block}`;
5
5
 
@@ -1,6 +1,6 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-DwHAn7LS.js';
2
- import { k as kt, n } from './index.esm-BjIhvFKX.js';
3
- import { L as LimeWebComponentTemplate } from './web-component-template-CAI6pXCH.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-COtSgrC5.js';
2
+ import { k as kt, n } from './index.esm-B9D_MXA6.js';
3
+ import { L as LimeWebComponentTemplate } from './web-component-template-DxbwHsvw.js';
4
4
 
5
5
  const ruleChipPopoverCss = () => `:host{display:block}.popover{display:flex;flex-direction:column;min-width:24rem;background-color:rgb(var(--contrast-100));border:1px solid rgb(var(--contrast-700));border-radius:0.5rem;box-shadow:0 0.25rem 0.75rem rgba(0, 0, 0, 0.15);overflow:hidden}.popover__header{--header-background-color:rgba(var(--contrast-300));padding-right:0.5rem;gap:1rem}.popover__header-actions{display:grid;grid-auto-flow:column;grid-gap:0.75rem;padding:0.25rem;align-items:center}.popover__delete-button{color:rgb(var(--contrast-1100))}.popover__body{padding:1rem}`;
6
6
 
@@ -1,5 +1,5 @@
1
- import { h, r as registerInstance, c as createEvent, g as getElement } from './index-DwHAn7LS.js';
2
- import { M as Mt, n } from './index.esm-BjIhvFKX.js';
1
+ import { h, r as registerInstance, c as createEvent, g as getElement } from './index-COtSgrC5.js';
2
+ import { M as Mt, n } from './index.esm-B9D_MXA6.js';
3
3
 
4
4
  /**
5
5
  * Remove the node at `path`.
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, h, H as Host, g as getElement } from './index-DwHAn7LS.js';
2
- import { n } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-COtSgrC5.js';
2
+ import { n } from './index.esm-B9D_MXA6.js';
3
3
 
4
4
  const ruleGateCss = () => `:host{display:block}:host([hidden]){display:none}`;
5
5
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-DwHAn7LS.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-COtSgrC5.js';
2
2
  import { a as ESCAPE } from './keycodes-CwMJvF_Z.js';
3
3
 
4
4
  const textEditorPickerCss = () => `:host(limebb-text-editor-picker){animation:fade-in 0.3s ease forwards;animation-delay:0.1s;display:block;max-width:calc(100vw - 2rem);padding:0.125rem;border-radius:0.5rem;background-color:rgba(var(--contrast-100));box-shadow:var(--shadow-depth-16);max-height:50vh;overflow-y:auto}limel-menu-list{position:relative}limel-spinner{margin:0 auto}.spinner-in-list{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%)}@keyframes fade-in{0%{opacity:0}100%{opacity:1}}`;
@@ -1,11 +1,11 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-DwHAn7LS.js';
2
- import { n, s as st, c as ct, I as Ie, _ as _t } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-COtSgrC5.js';
2
+ import { n, s as st, c as ct, I as Ie, _ as _t } from './index.esm-B9D_MXA6.js';
3
3
  import { A as ARROW_DOWN, a as ESCAPE, b as ARROW_UP, E as ENTER, T as TAB } from './keycodes-CwMJvF_Z.js';
4
4
  import { o as overArg, U as Uint8Array, c as isPrototype, a as getTag, d as baseUnary, n as nodeUtil, i as isBuffer, S as Stack, g as getAllKeys } from './_Uint8Array-CUI8uY-p.js';
5
5
  import { d as defineProperty } from './_defineProperty-DZ483KPn.js';
6
6
  import { c as isObject, e as eq, S as Symbol, i as isObjectLike, a as isArray, r as root } from './_MapCache-BgAfMcRA.js';
7
7
  import { c as createRandomString } from './random-string-C2JP2nLw.js';
8
- import { h as hasHasManyRelation, b as hasLabel, c as getRelationProperty } from './limetype-BbMRN-SU.js';
8
+ import { h as hasHasManyRelation, b as hasLabel, c as getRelationProperty } from './limetype-BcELY1NF.js';
9
9
  import { i as isNonNull } from './non-null-CkTg5UPD.js';
10
10
  import { g as getFileContentsUrl } from './file-contents-url-Oswz9F3I.js';
11
11
  import { i as isSymbol } from './isSymbol-_IkM6xCs.js';
@@ -1,5 +1,5 @@
1
- import { r as registerInstance, h, H as Host } from './index-DwHAn7LS.js';
2
- import { n } from './index.esm-BjIhvFKX.js';
1
+ import { r as registerInstance, h, H as Host } from './index-COtSgrC5.js';
2
+ import { n } from './index.esm-B9D_MXA6.js';
3
3
  import { g as getPercentageClass, n as normalizeValue } from './normalize-value-Cg1DC15C.js';
4
4
 
5
5
  const trendIndicatorCss = () => `@charset "UTF-8";*{box-sizing:border-box}:host(limebb-trend-indicator){position:relative;display:block;height:100%;width:100%}limel-notched-outline:not([invalid]:not([invalid=false])) .limel-notched-outline--outlines{--limel-notched-outline-border-color:transparent}div[slot=content]:focus{outline:none}div[slot=content]:focus-visible{outline:none;box-shadow:var(--shadow-depth-8-focused)}div[slot=content]{display:flex;align-items:center;gap:0.5rem;border-radius:inherit;background-color:transparent !important}:host(limebb-trend-indicator):has(label) div[slot=content]{min-height:2.5rem;padding:0 0.375rem 0 1rem}:host(limebb-trend-indicator[former-value]) div[slot=content]{cursor:help}div[slot=content] span{flex-shrink:0}.icon{flex-shrink:0;display:flex;transition-property:color, background-color, transform;transition-duration:0.4s;transition-timing-function:ease;width:1.25rem;height:1.25rem;border-radius:50%;padding:0.12rem;color:rgb(var(--color-white));background-color:rgb(var(--color-gray-default), 0.5)}:host(.has-value-40to30-negative) .icon{color:rgb(var(--color-gray-darker))}:host(.has-value-30to20-negative) .icon{color:rgb(var(--color-gray-darker))}:host(.has-value-20to10-negative) .icon{color:rgb(var(--color-gray-darker))}:host(.has-value-10to0-negative) .icon{color:rgb(var(--color-gray-darker))}:host(.has-value-0to10-positive) .icon{color:rgb(var(--color-gray-dark))}:host(.has-value-10to20-positive) .icon{color:rgb(var(--color-gray-dark))}:host(.has-value-20to30-positive) .icon{color:rgb(var(--color-gray-dark))}:host(.has-value-30to40-positive) .icon{color:rgb(var(--color-gray-dark))}:host(.has-value-200or-larger-negative) .icon{background-color:rgb(var(--color-red-darker));transform:rotate(90deg)}:host(.has-value-200to100-negative) .icon{background-color:rgb(var(--color-red-dark));transform:rotate(90deg)}:host(.has-value-100to90-negative) .icon{background-color:rgb(var(--color-red-dark));transform:rotate(90deg)}:host(.has-value-90to80-negative) .icon{background-color:rgb(var(--color-red-dark));transform:rotate(81deg)}:host(.has-value-80to70-negative) .icon{background-color:rgb(var(--color-red-default));transform:rotate(72deg)}:host(.has-value-70to60-negative) .icon{background-color:rgb(var(--color-red-default));transform:rotate(63deg)}:host(.has-value-60to50-negative) .icon{background-color:rgb(var(--color-coral-default));transform:rotate(54deg)}:host(.has-value-50to40-negative) .icon{background-color:rgb(var(--color-coral-default));transform:rotate(45deg)}:host(.has-value-40to30-negative) .icon{background-color:rgb(var(--color-orange-default));transform:rotate(36deg)}:host(.has-value-30to20-negative) .icon{background-color:rgb(var(--color-orange-default));transform:rotate(27deg)}:host(.has-value-20to10-negative) .icon{background-color:rgb(var(--color-amber-default));transform:rotate(18deg)}:host(.has-value-10to0-negative) .icon{background-color:rgb(var(--color-amber-default));transform:rotate(9deg)}:host(.has-value-0) .icon{background-color:rgb(var(--color-gray-default));transform:rotate(0deg)}:host(.has-value-0to10-positive) .icon{background-color:rgb(var(--color-yellow-default));transform:rotate(-9deg)}:host(.has-value-10to20-positive) .icon{background-color:rgb(var(--color-yellow-default));transform:rotate(-18deg)}:host(.has-value-20to30-positive) .icon{background-color:rgb(var(--color-grass-default));transform:rotate(-27deg)}:host(.has-value-30to40-positive) .icon{background-color:rgb(var(--color-grass-default));transform:rotate(-36deg)}:host(.has-value-40to50-positive) .icon{background-color:rgb(var(--color-lime-default));transform:rotate(-45deg)}:host(.has-value-50to60-positive) .icon{background-color:rgb(var(--color-lime-default));transform:rotate(-54deg)}:host(.has-value-60to70-positive) .icon{background-color:rgb(var(--color-teal-default));transform:rotate(-63deg)}:host(.has-value-70to80-positive) .icon{background-color:rgb(var(--color-teal-default));transform:rotate(-72deg)}:host(.has-value-80to90-positive) .icon{background-color:rgb(var(--color-teal-dark));transform:rotate(-81deg)}:host(.has-value-90to100-positive) .icon{background-color:rgb(var(--color-teal-dark));transform:rotate(-90deg)}:host(.has-value-100to200-positive) .icon{background-color:rgb(var(--color-teal-dark));transform:rotate(-90deg)}:host(.has-value-200or-larger-positive) .icon{background-color:rgb(var(--color-teal-darker));transform:rotate(-90deg)}:host(.has-value-0) .icon{background-color:rgb(var(--color-gray-default), 0.5);transform:rotate(0deg)}:host(.has-value-0) .icon polyline{color:transparent}:host(.has-value-200or-larger-negative) .icon:after,:host(.has-value-200or-larger-negative) .icon:before,:host(.has-value-200to100-negative) .icon:after,:host(.has-value-200to100-negative) .icon:before,:host(.has-value-100to200-positive) .icon:after,:host(.has-value-100to200-positive) .icon:before,:host(.has-value-200or-larger-positive) .icon:after,:host(.has-value-200or-larger-positive) .icon:before{transition:border-color 0.6s ease;content:"";position:absolute;inset:0;margin:auto;border:1px solid transparent;border-radius:50%}:host(.has-value-200or-larger-negative) .icon:before,:host(.has-value-200to100-negative) .icon:before,:host(.has-value-100to200-positive) .icon:before,:host(.has-value-200or-larger-positive) .icon:before{transform:scale(1.2)}:host(.has-value-200or-larger-negative) .icon:after,:host(.has-value-200to100-negative) .icon:after,:host(.has-value-100to200-positive) .icon:after,:host(.has-value-200or-larger-positive) .icon:after{transform:scale(1.4);opacity:0.4}:host(.has-value-200to100-negative) .icon:before,:host(.has-value-200or-larger-negative) .icon:before{border-color:rgb(var(--color-red-dark))}:host(.has-value-200or-larger-negative) .icon:after{border-color:rgb(var(--color-red-darker))}:host(.has-value-100to200-positive) .icon:before,:host(.has-value-200or-larger-positive) .icon:before{border-color:rgb(var(--color-teal-dark))}:host(.has-value-200or-larger-positive) .icon:after{border-color:rgb(var(--color-teal-darker))}.no-value{transform:translateY(0.5rem)}.growth-unit{padding-left:0.5rem;opacity:0.5}:host(limebb-trend-indicator:focus),:host(limebb-trend-indicator:focus-visible),:host(limebb-trend-indicator:focus-within){--limel-h-l-grid-template-rows-transition-speed:0.46s;--limel-h-l-grid-template-rows:1fr}:host(limebb-trend-indicator){--limel-h-l-grid-template-rows-transition-speed:0.3s;--limel-h-l-grid-template-rows:0fr}:host(limebb-trend-indicator:focus) limel-helper-line,:host(limebb-trend-indicator:focus-visible) limel-helper-line,:host(limebb-trend-indicator:focus-within) limel-helper-line,:host(limebb-trend-indicator:hover) limel-helper-line{will-change:grid-template-rows}`;
@@ -1,6 +1,6 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-DwHAn7LS.js';
2
- import { o as ot } from './index.esm-BjIhvFKX.js';
3
- import { o as operatorsToConditions, c as conditionToOperator, a as operatorToCondition } from './filter-operators-CsZi5iCV.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-COtSgrC5.js';
2
+ import { o as ot } from './index.esm-B9D_MXA6.js';
3
+ import { o as operatorsToConditions, c as conditionToOperator, a as operatorToCondition } from './filter-operators-u3T1PKhm.js';
4
4
 
5
5
  const valueComparisonEditorCss = () => `:host{display:block}.rule{display:grid;gap:0.5rem;grid-template-columns:repeat(auto-fit, minmax(12rem, 1fr))}.offset-builder{display:flex;gap:0.5rem;align-items:flex-end;grid-column:1/-1}.offset-builder .offset-count{max-width:6rem}`;
6
6
 
@@ -169,7 +169,7 @@ const ValueComparisonEditor = class {
169
169
  }
170
170
  render() {
171
171
  const selectedType = TYPE_OPTIONS.find((option) => option.value === this.valueType);
172
- return (h("div", { key: '46633e3dd6527173fdb2a54f50e7844175dbbbe5', class: "rule" }, h("limel-select", { key: '98f82c22a21840061c57a942c273b85416c539cb', class: "type-select", label: "Compare as", options: TYPE_OPTIONS, value: selectedType, onChange: this.handleTypeChange }), h("limebb-filter-condition-picker", { key: 'dac247e83cb2fac41b0e6fdb49f070d5c1b18081', class: "operator-select", platform: this.platform, propertyType: PROPERTY_TYPE_BY_VALUE_TYPE[this.valueType], conditions: COMPARISON_CONDITIONS, value: operatorToCondition(this.currentOperator), onChange: this.handleConditionChange }), this.renderOperand()));
172
+ return (h("div", { key: 'adecd47e558632637dec3506429c285dcddf7746', class: "rule" }, h("limel-select", { key: '41032f0494cccf8ab9ef429e0648e84b70de7a80', class: "type-select", label: "Compare as", options: TYPE_OPTIONS, value: selectedType, onChange: this.handleTypeChange }), h("limebb-filter-condition-picker", { key: '118a34ec6bf0b057ad504690ea2bbb50295697ef', class: "operator-select", platform: this.platform, propertyType: PROPERTY_TYPE_BY_VALUE_TYPE[this.valueType], conditions: COMPARISON_CONDITIONS, value: operatorToCondition(this.currentOperator), onChange: this.handleConditionChange }), this.renderOperand()));
173
173
  }
174
174
  renderOperand() {
175
175
  if (TEMPORAL_TYPES.has(this.valueType)) {
@@ -1,4 +1,4 @@
1
- import { i, a } from './index.esm-BjIhvFKX.js';
1
+ import { i, a } from './index.esm-B9D_MXA6.js';
2
2
 
3
3
  /**
4
4
  * Get the color for a limetype from its UI configuration
@@ -127,4 +127,4 @@ function getRelationPropertyName(options) {
127
127
  })) === null || _c === void 0 ? void 0 : _c.name;
128
128
  }
129
129
 
130
- export { getRelationPropertyName as a, hasLabel as b, getRelationProperty as c, getIcon as g, hasHasManyRelation as h };
130
+ export { getRelationPropertyName as a, hasLabel as b, getRelationProperty as c, getIcon as g, hasHasManyRelation as h, isManyRelation as i };
@@ -1,5 +1,5 @@
1
- import { b as bootstrapLazy } from './index-DwHAn7LS.js';
2
- export { s as setNonce } from './index-DwHAn7LS.js';
1
+ import { b as bootstrapLazy } from './index-COtSgrC5.js';
2
+ export { s as setNonce } from './index-COtSgrC5.js';
3
3
  import { g as globalScripts } from './app-globals-DQuL1Twl.js';
4
4
 
5
5
  const defineCustomElements = async (win, options) => {
@@ -1,4 +1,4 @@
1
- import { h } from './index-DwHAn7LS.js';
1
+ import { h } from './index-COtSgrC5.js';
2
2
 
3
3
  const LimeWebComponentTemplate = (props, children) => {
4
4
  const Name = props.name;
@@ -1 +1 @@
1
- export{C as COLOR_PALETTES,g as getColorPalette}from"./p-1N3bZuHj.js";export{F as FALLBACK_CONDITION_ICON,a as FILTER_CONDITION_ICONS,b as FILTER_CONDITION_LABEL_KEYS,d as getConditionsForPropertyType,g as getFilterConditionIcon,c as getFilterConditionLabelKey}from"./p-C_y3-T4Q.js";export{c as conditionToOperator,a as operatorToCondition,o as operatorsToConditions}from"./p-CE43qjk3.js";import"@lundalogik/lime-icons8";import"./p-b78ub0mY.js";import"./p-DwHAn7LS.js";
1
+ export{C as COLOR_PALETTES,g as getColorPalette}from"./p-1N3bZuHj.js";export{F as FALLBACK_CONDITION_ICON,a as FILTER_CONDITION_ICONS,b as FILTER_CONDITION_LABEL_KEYS,d as getConditionsForPropertyType,g as getFilterConditionIcon,c as getFilterConditionLabelKey}from"./p-C_y3-T4Q.js";export{c as conditionToOperator,a as operatorToCondition,o as operatorsToConditions}from"./p-hsyotUav.js";import"@lundalogik/lime-icons8";import"./p-Cj_3f9vm.js";import"./p-COtSgrC5.js";