@limetech/lime-crm-building-blocks 1.50.0 → 1.50.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 (73) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/cjs/{decorator-7b523efc.js → decorator-8dc156b8.js} +1 -1
  3. package/dist/cjs/limebb-browser.cjs.entry.js +1 -1
  4. package/dist/cjs/limebb-component-config.cjs.entry.js +1 -1
  5. package/dist/cjs/limebb-component-picker.cjs.entry.js +1 -1
  6. package/dist/cjs/limebb-currency-picker.cjs.entry.js +4 -7
  7. package/dist/cjs/limebb-date-picker.cjs.entry.js +1 -1
  8. package/dist/cjs/limebb-empty-state_2.cjs.entry.js +1 -1
  9. package/dist/cjs/limebb-feed.cjs.entry.js +1 -1
  10. package/dist/cjs/limebb-info-tile.cjs.entry.js +1 -1
  11. package/dist/cjs/limebb-kanban-column.cjs.entry.js +1 -1
  12. package/dist/cjs/limebb-kanban-item.cjs.entry.js +1 -1
  13. package/dist/cjs/limebb-limeobject-file-viewer.cjs.entry.js +2 -2
  14. package/dist/cjs/limebb-locale-picker.cjs.entry.js +1 -1
  15. package/dist/cjs/limebb-mention.cjs.entry.js +1 -1
  16. package/dist/cjs/limebb-notification-item.cjs.entry.js +2 -2
  17. package/dist/cjs/limebb-notification-list.cjs.entry.js +2 -2
  18. package/dist/cjs/limebb-text-editor.cjs.entry.js +28 -9
  19. package/dist/cjs/non-null-45e885d5.js +7 -0
  20. package/dist/cjs/{types-c7646c23.js → types-65ad678a.js} +2 -2
  21. package/dist/collection/components/notification-list/notification-item/notification-item.css +7 -10
  22. package/dist/collection/components/notification-list/notification-list.css +2 -3
  23. package/dist/collection/components/text-editor/text-editor.js +27 -8
  24. package/dist/components/currency-picker.js +1 -4
  25. package/dist/components/limebb-notification-list.js +1 -1
  26. package/dist/components/limebb-text-editor.js +27 -8
  27. package/dist/components/non-null.js +5 -0
  28. package/dist/components/notification-item.js +1 -1
  29. package/dist/components/types.js +1 -1
  30. package/dist/esm/{decorator-001aa03c.js → decorator-e5cfc667.js} +1 -1
  31. package/dist/esm/limebb-browser.entry.js +1 -1
  32. package/dist/esm/limebb-component-config.entry.js +1 -1
  33. package/dist/esm/limebb-component-picker.entry.js +1 -1
  34. package/dist/esm/limebb-currency-picker.entry.js +2 -5
  35. package/dist/esm/limebb-date-picker.entry.js +1 -1
  36. package/dist/esm/limebb-empty-state_2.entry.js +1 -1
  37. package/dist/esm/limebb-feed.entry.js +1 -1
  38. package/dist/esm/limebb-info-tile.entry.js +1 -1
  39. package/dist/esm/limebb-kanban-column.entry.js +1 -1
  40. package/dist/esm/limebb-kanban-item.entry.js +1 -1
  41. package/dist/esm/limebb-limeobject-file-viewer.entry.js +2 -2
  42. package/dist/esm/limebb-locale-picker.entry.js +1 -1
  43. package/dist/esm/limebb-mention.entry.js +1 -1
  44. package/dist/esm/limebb-notification-item.entry.js +2 -2
  45. package/dist/esm/limebb-notification-list.entry.js +2 -2
  46. package/dist/esm/limebb-text-editor.entry.js +28 -9
  47. package/dist/esm/non-null-f3e62427.js +5 -0
  48. package/dist/esm/{types-ab2df627.js → types-14a87c15.js} +1 -1
  49. package/dist/lime-crm-building-blocks/lime-crm-building-blocks.esm.js +1 -1
  50. package/dist/lime-crm-building-blocks/{p-ff514778.entry.js → p-08d58041.entry.js} +1 -1
  51. package/dist/lime-crm-building-blocks/{p-2ba9c2fa.js → p-0f7e92c9.js} +1 -1
  52. package/dist/lime-crm-building-blocks/{p-da4550d5.entry.js → p-117f668f.entry.js} +1 -1
  53. package/dist/lime-crm-building-blocks/{p-fc818e0a.entry.js → p-3d8fe6cc.entry.js} +1 -1
  54. package/dist/lime-crm-building-blocks/{p-6588244c.js → p-3f4595a3.js} +1 -1
  55. package/dist/lime-crm-building-blocks/{p-18fbd227.entry.js → p-4b60c5a3.entry.js} +1 -1
  56. package/dist/lime-crm-building-blocks/p-54c38e90.entry.js +1 -0
  57. package/dist/lime-crm-building-blocks/p-5f075485.entry.js +1 -0
  58. package/dist/lime-crm-building-blocks/{p-7bbeecee.entry.js → p-63929d5d.entry.js} +1 -1
  59. package/dist/lime-crm-building-blocks/{p-a7397b07.entry.js → p-7ddcb65a.entry.js} +1 -1
  60. package/dist/lime-crm-building-blocks/{p-a10cfc3c.entry.js → p-8295211a.entry.js} +1 -1
  61. package/dist/lime-crm-building-blocks/p-86b9d9e8.js +1 -0
  62. package/dist/lime-crm-building-blocks/{p-726d23b3.entry.js → p-8ba97e32.entry.js} +1 -1
  63. package/dist/lime-crm-building-blocks/{p-41e293c2.entry.js → p-8dfb79e0.entry.js} +1 -1
  64. package/dist/lime-crm-building-blocks/{p-36704fd1.entry.js → p-98ce1c1d.entry.js} +1 -1
  65. package/dist/lime-crm-building-blocks/{p-967e2294.entry.js → p-b26fc50f.entry.js} +1 -1
  66. package/dist/lime-crm-building-blocks/{p-934ab854.entry.js → p-c8370ef6.entry.js} +1 -1
  67. package/dist/lime-crm-building-blocks/p-e3fc55d6.entry.js +1 -0
  68. package/dist/lime-crm-building-blocks/{p-5b7c3b11.entry.js → p-f7a3fe1d.entry.js} +1 -1
  69. package/dist/types/components/text-editor/text-editor.d.ts +1 -0
  70. package/package.json +3 -3
  71. package/dist/lime-crm-building-blocks/p-6d8397c4.entry.js +0 -1
  72. package/dist/lime-crm-building-blocks/p-8e4cbfe3.entry.js +0 -1
  73. package/dist/lime-crm-building-blocks/p-f5932b22.entry.js +0 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ ## [1.50.2](https://github.com/Lundalogik/lime-crm-building-blocks/compare/v1.50.1...v1.50.2) (2024-11-18)
2
+
3
+ ### Bug Fixes
4
+
5
+
6
+ * **notification-list:** improve readability ([6d7a380](https://github.com/Lundalogik/lime-crm-building-blocks/commit/6d7a3807bb454bd9b2a063b65a7867c64d1af533))
7
+
8
+ ## [1.50.1](https://github.com/Lundalogik/lime-crm-building-blocks/compare/v1.50.0...v1.50.1) (2024-11-13)
9
+
10
+ ### Bug Fixes
11
+
12
+
13
+ * **text-editor:** load limeobjects in mention search ([aa519db](https://github.com/Lundalogik/lime-crm-building-blocks/commit/aa519dbd384f5da9460790430c7a192dcb8dba24))
14
+
1
15
  ## [1.50.0](https://github.com/Lundalogik/lime-crm-building-blocks/compare/v1.49.0...v1.50.0) (2024-11-11)
2
16
 
3
17
  ### Features
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const types = require('./types-c7646c23.js');
3
+ const types = require('./types-65ad678a.js');
4
4
  const factory = require('./factory-310afac1.js');
5
5
 
6
6
  /**
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
  const keycodes = require('./keycodes-a6c36f6d.js');
8
8
  const negate = require('./negate-14a67e26.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
  const get = require('./get-80a3d1aa.js');
8
8
  require('./_Map-ea5de08f.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
8
  const componentPickerCss = ":host(limebb-component-picker){position:relative;display:flex;align-items:center}:host(limebb-component-picker) limel-picker{flex-grow:1;min-width:0}:host(limebb-component-picker) limel-icon-button{position:absolute;right:0.25rem}";
9
9
 
@@ -3,7 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
+ const nonNull = require('./non-null-45e885d5.js');
7
8
 
8
9
  function createCommonjsModule(fn, basedir, module) {
9
10
  return module = {
@@ -1811,10 +1812,6 @@ var codes = function() {
1811
1812
  };
1812
1813
  var codes_1 = codes;
1813
1814
 
1814
- function isNonNull(value) {
1815
- return Boolean(value);
1816
- }
1817
-
1818
1815
  const CurrencyPicker = class {
1819
1816
  constructor(hostRef) {
1820
1817
  index.registerInstance(this, hostRef);
@@ -1842,11 +1839,11 @@ const CurrencyPicker = class {
1842
1839
  this.disabled = false;
1843
1840
  this.search = async (query) => {
1844
1841
  if (query === '') {
1845
- return this.currencies.map(this.createListItem).filter(isNonNull);
1842
+ return this.currencies.map(this.createListItem).filter(nonNull.isNonNull);
1846
1843
  }
1847
1844
  return this.currencies
1848
1845
  .map(this.createListItem)
1849
- .filter(isNonNull)
1846
+ .filter(nonNull.isNonNull)
1850
1847
  .filter((item) => {
1851
1848
  var _a;
1852
1849
  return (((_a = item === null || item === void 0 ? void 0 : item.secondaryText) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(query.toLowerCase())) ||
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
8
  /**
9
9
  * Create a UTC date with the same values for year, month and day as the given
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
8
  const emptyStateCss = ":host(limebb-empty-state){display:flex;flex-direction:column;align-items:center;gap:0.25rem;padding:0.5rem;opacity:0;animation:fade-in 0.3s ease forwards;animation-delay:0.5s}@keyframes fade-in{0%{opacity:0}100%{opacity:1}}*{box-sizing:border-box}h2{color:rgb(var(--contrast-1100));margin:0}limel-markdown{color:rgb(var(--contrast-1000));text-align:center;line-height:1.4}limel-icon{width:2.5rem}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
8
  function getRoundingMethod(method) {
9
9
  return (number) => {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
  const factory = require('./factory-310afac1.js');
8
8
  const _getTag = require('./_getTag-8d3a269b.js');
9
9
  const _Map = require('./_Map-ea5de08f.js');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
8
  const kanbanColumnCss = "@charset \"UTF-8\";:host(limebb-kanban-column){--header-top-right-left-border-radius:0.5rem;scroll-snap-align:start;box-sizing:border-box;display:flex;flex-direction:column;border-radius:0.5rem;min-width:20rem;background-color:rgb(var(--contrast-500))}:host(limebb-kanban-column.ungrouped-column){border:1px dashed rgb(var(--contrast-700));background-color:rgb(var(--contrast-300))}:host(limebb-kanban-column.ungrouped-column) limebb-kanban-item{border:1px dashed rgb(var(--contrast-700))}limel-header{flex-shrink:0}.items{flex-grow:1;display:flex;flex-direction:column;gap:0.5rem;padding:0.5rem;overflow-y:auto;-webkit-overflow-scrolling:touch}limebb-kanban-item{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--mdc-theme-on-surface);background-color:var(--lime-elevated-surface-background-color)}limebb-kanban-item:hover,limebb-kanban-item:focus,limebb-kanban-item:focus-visible{will-change:color, background-color, box-shadow, transform}limebb-kanban-item:hover{transform:translate3d(0, 0.01rem, 0);color:var(--mdc-theme-on-surface);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-hovered)}limebb-kanban-item:active{--limel-clickable-transform-timing-function:cubic-bezier(\n 0.83,\n -0.15,\n 0.49,\n 1.16\n );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}limebb-kanban-item:hover,limebb-kanban-item:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
8
  const kanbanItemCss = "@charset \"UTF-8\";:host(limebb-kanban-item){box-sizing:border-box;display:flex;flex-direction:column;border-radius:0.5rem}.header{display:flex;align-items:center;gap:0.5rem;padding:0.25rem;border-radius:0.5rem 0.5rem 0 0;background-color:rgb(var(--contrast-200))}.header .icon{flex-shrink:0;width:1.25rem}.header img{border-radius:50%;width:1.25rem;height:1.25rem;object-fit:cover;box-shadow:0 0 0 1px rgb(var(--contrast-800))}.header a{position:relative;cursor:pointer;transition:color 0.2s ease;color:var(--mdc-theme-primary);text-decoration:none}.header a: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)}.header a:hover{color:rgb(var(--color-teal-light))}.header a:hover:before{opacity:0.3;transform:scale(1)}.header limel-markdown{--markdown-hyperlink-color:var(--mdc-theme-primary);--markdown-hyperlink-color--hovered:rgb(var(--color-teal-light))}.unpromoted-actions-menu{margin:-0.25rem -0.25rem -0.25rem auto}.body{padding:0.5rem}limel-chip-set{display:block;margin-left:-0.5rem;margin-bottom:-0.5rem}.footer{position:relative;display:flex;align-items:center;justify-content:flex-end;padding:0.25rem 0.5rem;border-top:1px dashed rgb(var(--contrast-300))}.footer:after{content:\"\";display:block;position:absolute;top:0.25rem;bottom:0.25rem;left:0.125rem;width:0.25rem;border-radius:0.25rem;background-color:var(--color-code)}.timestamp{font-size:0.75rem;color:rgb(var(--contrast-800))}";
9
9
 
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
7
- const decorator = require('./decorator-7b523efc.js');
6
+ const types = require('./types-65ad678a.js');
7
+ const decorator = require('./decorator-8dc156b8.js');
8
8
  const factory = require('./factory-310afac1.js');
9
9
  const negate = require('./negate-14a67e26.js');
10
10
 
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
  const get = require('./get-80a3d1aa.js');
8
8
  const _Map = require('./_Map-ea5de08f.js');
9
9
  const _getTag = require('./_getTag-8d3a269b.js');
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
8
  /**
9
9
  * Find the closest parent element matching the given predicate
@@ -3,9 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
- const notificationItemCss = "@charset \"UTF-8\";*{box-sizing:border-box}:host(limebb-notification-item){isolation:isolate;padding:0 0.5rem}.notification-item{position:relative;box-sizing:border-box;display:flex;flex-direction:column;gap:0.25rem;border-radius:0.75rem;border:1px solid transparent}.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;background-color:var(--limebb-notification-item-unread-badge-color, transparent)}:host(limebb-notification-item.is-clickable) .notification-item{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--mdc-theme-on-surface);background-color:transparent}:host(limebb-notification-item.is-clickable) .notification-item:hover,:host(limebb-notification-item.is-clickable) .notification-item:focus,:host(limebb-notification-item.is-clickable) .notification-item:focus-visible{will-change:color, background-color, box-shadow, transform}:host(limebb-notification-item.is-clickable) .notification-item:hover{transform:translate3d(0, 0.01rem, 0);color:var(--mdc-theme-on-surface);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-hovered)}:host(limebb-notification-item.is-clickable) .notification-item:active{--limel-clickable-transform-timing-function:cubic-bezier(\n 0.83,\n -0.15,\n 0.49,\n 1.16\n );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}:host(limebb-notification-item.is-clickable) .notification-item:hover,:host(limebb-notification-item.is-clickable) .notification-item:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}:host(limebb-notification-item.is-read) .notification-item{--limebb-notification-header-border-color:rgb(var(--contrast-600));border-color:rgb(var(--contrast-400));background-color:rgb(var(--contrast-400))}:host(limebb-notification-item.is-read.is-clickable) .notification-item:hover{border-color:transparent}:host(limebb-notification-item:not(.is-read)) .notification-item{--limebb-notification-header-border-color:rgb(var(--contrast-400));--limebb-notification-item-unread-badge-color:rgb(\n var(--color-red-default)\n );background-color:rgb(var(--contrast-100))}: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;border-bottom:1px solid var(--limebb-notification-header-border-color)}.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-800))}.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:2rem;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:4;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}";
8
+ const notificationItemCss = "@charset \"UTF-8\";*{box-sizing:border-box}:host(limebb-notification-item){isolation:isolate;padding:0 0.5rem}.notification-item{position:relative;box-sizing:border-box;display:flex;flex-direction:column;gap:0.25rem;border-radius:0.75rem;border:1px solid rgb(var(--contrast-500))}.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;background-color:var(--limebb-notification-item-unread-badge-color, transparent)}:host(limebb-notification-item.is-clickable) .notification-item{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--mdc-theme-on-surface);background-color:transparent}:host(limebb-notification-item.is-clickable) .notification-item:hover,:host(limebb-notification-item.is-clickable) .notification-item:focus,:host(limebb-notification-item.is-clickable) .notification-item:focus-visible{will-change:color, background-color, box-shadow, transform}:host(limebb-notification-item.is-clickable) .notification-item:hover{transform:translate3d(0, 0.01rem, 0);color:var(--mdc-theme-on-surface);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-hovered)}:host(limebb-notification-item.is-clickable) .notification-item:active{--limel-clickable-transform-timing-function:cubic-bezier(\n 0.83,\n -0.15,\n 0.49,\n 1.16\n );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}:host(limebb-notification-item.is-clickable) .notification-item:hover,:host(limebb-notification-item.is-clickable) .notification-item:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}:host(limebb-notification-item.is-read) .notification-item{border-color:rgb(var(--contrast-600));background-color:rgb(var(--contrast-500))}:host(limebb-notification-item.is-clickable) .notification-item:hover{border-color:transparent}:host(limebb-notification-item:not(.is-read)) .notification-item{--limebb-notification-item-unread-badge-color:rgb(\n var(--color-red-default)\n );background-color:rgb(var(--contrast-100))}: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}";
9
9
 
10
10
  const NotificationListItem = class {
11
11
  constructor(hostRef) {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
6
+ const types = require('./types-65ad678a.js');
7
7
 
8
8
  /**
9
9
  * Processes a list of notifications by adding date headers and a "new items" indicator.
@@ -124,7 +124,7 @@ function insertDateGroups(context) {
124
124
  return Object.assign(Object.assign({}, context), { processedItems: newProcessedItems });
125
125
  }
126
126
 
127
- const notificationListCss = ":host(limebb-notification-list){--limebb-notification-list-background-color:var(\n --notification-list-background-color,\n rgb(var(--contrast-300))\n );display:flex;flex-direction:column;gap:1rem;max-width:45rem;background-color:var(--limebb-notification-list-background-color);padding:2rem 1rem}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-group{isolation:isolate;display:flex;flex-direction:column;gap:0.5rem}.date-heading{position:sticky;z-index:1;top:0.25rem;display:flex;border-radius:9rem;padding:0.25rem 0.5rem;margin:0;width:fit-content;font-size:0.75rem;line-height:1;color:rgb(var(--contrast-800));border:1px solid var(--limebb-notification-list-background-color);backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);transition:color 0.2s ease, border-color 0.4s ease}.date-heading:hover{color:rgb(var(--contrast-1000));border-color:rgb(var(--contrast-500))}.date-heading:hover:before{opacity:1}.date-heading:before{transition:opacity 0.2s ease;content:\"\";position:absolute;z-index:-1;inset:0;opacity:0.6;border-radius:inherit;background-color:var(--limebb-notification-list-background-color)}.new-items-indicator{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-end;margin:0.25rem 0}.new-items-indicator hr{border:none;position:absolute;width:100%;height:1px;background-color:rgb(var(--color-red-lighter))}.new-items-indicator h3{z-index:1;padding:0 0.5rem;border-radius:1rem;margin:0 1rem;font-size:small;line-height:0.75rem;text-transform:lowercase;color:rgb(var(--color-red-default));background-color:var(--limebb-notification-list-background-color)}";
127
+ const notificationListCss = ":host(limebb-notification-list){--limebb-notification-list-background-color:var(\n --notification-list-background-color,\n rgb(var(--contrast-300))\n );display:flex;flex-direction:column;gap:1rem;max-width:45rem;background-color:var(--limebb-notification-list-background-color);padding:0.5rem}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-group{isolation:isolate;display:flex;flex-direction:column;gap:0.5rem}.date-heading{position:sticky;z-index:1;top:0.25rem;display:flex;border-radius:9rem;padding:0.25rem 0.5rem;margin:0;width:fit-content;font-size:0.75rem;line-height:1;color:rgb(var(--contrast-900));backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);transition:color 0.2s ease, border-color 0.4s ease}.date-heading:hover{color:rgb(var(--contrast-1000));border-color:rgb(var(--contrast-500))}.date-heading:hover:before{opacity:1}.date-heading:before{transition:opacity 0.2s ease;content:\"\";position:absolute;z-index:-1;inset:0;opacity:0.6;border-radius:inherit;background-color:var(--limebb-notification-list-background-color)}.new-items-indicator{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-end;margin:0.25rem 0}.new-items-indicator hr{border:none;position:absolute;width:100%;height:1px;background-color:rgb(var(--color-red-lighter))}.new-items-indicator h3{z-index:1;padding:0 0.5rem;border-radius:1rem;margin:0 1rem;font-size:small;line-height:0.75rem;text-transform:lowercase;color:rgb(var(--color-red-default));background-color:var(--limebb-notification-list-background-color)}";
128
128
 
129
129
  const NotificationList = class {
130
130
  constructor(hostRef) {
@@ -3,9 +3,10 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-dd1aef9e.js');
6
- const types = require('./types-c7646c23.js');
7
- const decorator = require('./decorator-7b523efc.js');
6
+ const types = require('./types-65ad678a.js');
7
+ const decorator = require('./decorator-8dc156b8.js');
8
8
  const keycodes = require('./keycodes-a6c36f6d.js');
9
+ const nonNull = require('./non-null-45e885d5.js');
9
10
  require('./factory-310afac1.js');
10
11
 
11
12
  const createRandomString = () => {
@@ -117,6 +118,21 @@ const LimeBBTextEditor = class {
117
118
  this.editorPickerQuery = event.detail.value;
118
119
  this.search();
119
120
  };
121
+ this.loadObjects = (limetype, objects) => {
122
+ return objects
123
+ .map((object) => {
124
+ const limeobject = this.limeObjectService.getObject(limetype.name, object._id);
125
+ if (!limeobject) {
126
+ return;
127
+ }
128
+ return {
129
+ text: limeobject.descriptive,
130
+ secondaryText: limetype.name,
131
+ value: object._id,
132
+ };
133
+ })
134
+ .filter(nonNull.isNonNull);
135
+ };
120
136
  this.handleItemSelected = (event) => {
121
137
  this.insertEditorNode(event.detail);
122
138
  this.activeTrigger = undefined;
@@ -202,13 +218,16 @@ const LimeBBTextEditor = class {
202
218
  if (query !== this.editorPickerQuery) {
203
219
  return;
204
220
  }
205
- this.items = response.objects.map((object) => {
206
- return {
207
- text: object._descriptive,
208
- secondaryText: object._limetype,
209
- value: object._id,
210
- };
211
- });
221
+ const ids = response.objects.map((object) => object._id);
222
+ const options = {
223
+ filter: {
224
+ key: '_id',
225
+ op: types.Operator.IN,
226
+ exp: ids,
227
+ },
228
+ };
229
+ const objects = (await this.limeObjectService.loadObjects(limetype.name, options)).objects;
230
+ this.items = this.loadObjects(limetype, objects);
212
231
  }
213
232
  catch (e) {
214
233
  console.error('Failed search for user', e);
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ function isNonNull(value) {
4
+ return Boolean(value);
5
+ }
6
+
7
+ exports.isNonNull = isNonNull;
@@ -273,7 +273,7 @@ SaveLimeObjectCommand = __decorate([
273
273
  * @public
274
274
  * @group Query
275
275
  */
276
- var Operator;
276
+ exports.Operator = void 0;
277
277
  (function (Operator) {
278
278
  Operator["AND"] = "AND";
279
279
  Operator["OR"] = "OR";
@@ -288,7 +288,7 @@ var Operator;
288
288
  Operator["LESS_OR_EQUAL"] = "<=";
289
289
  Operator["GREATER_OR_EQUAL"] = ">=";
290
290
  Operator["ENDS"] = "=$";
291
- })(Operator || (Operator = {}));
291
+ })(exports.Operator || (exports.Operator = {}));
292
292
  /**
293
293
  *
294
294
  * @beta
@@ -73,7 +73,7 @@
73
73
  flex-direction: column;
74
74
  gap: 0.25rem;
75
75
  border-radius: 0.75rem;
76
- border: 1px solid transparent;
76
+ border: 1px solid rgb(var(--contrast-500));
77
77
  }
78
78
  .notification-item:before {
79
79
  content: "";
@@ -117,15 +117,13 @@
117
117
  --limel-clickable-transform-speed: 0.16s;
118
118
  }
119
119
  :host(limebb-notification-item.is-read) .notification-item {
120
- --limebb-notification-header-border-color: rgb(var(--contrast-600));
121
- border-color: rgb(var(--contrast-400));
122
- background-color: rgb(var(--contrast-400));
120
+ border-color: rgb(var(--contrast-600));
121
+ background-color: rgb(var(--contrast-500));
123
122
  }
124
- :host(limebb-notification-item.is-read.is-clickable) .notification-item:hover {
123
+ :host(limebb-notification-item.is-clickable) .notification-item:hover {
125
124
  border-color: transparent;
126
125
  }
127
126
  :host(limebb-notification-item:not(.is-read)) .notification-item {
128
- --limebb-notification-header-border-color: rgb(var(--contrast-400));
129
127
  --limebb-notification-item-unread-badge-color: rgb(
130
128
  var(--color-red-default)
131
129
  );
@@ -146,7 +144,6 @@
146
144
  min-height: 2rem;
147
145
  padding: 0 0 0 0.25rem;
148
146
  margin-bottom: 0.25rem;
149
- border-bottom: 1px solid var(--limebb-notification-header-border-color);
150
147
  }
151
148
  .header:not(:has(.icon)) {
152
149
  padding-left: 0.75rem;
@@ -174,7 +171,7 @@
174
171
  flex-shrink: 0;
175
172
  margin-left: auto;
176
173
  transition: color 0.4s ease, opacity 0.2s ease;
177
- color: rgb(var(--contrast-800));
174
+ color: rgb(var(--contrast-900));
178
175
  }
179
176
 
180
177
  .headline {
@@ -196,7 +193,7 @@
196
193
  white-space: normal;
197
194
  -webkit-box-orient: vertical;
198
195
  -webkit-line-clamp: 2;
199
- max-height: 2rem;
196
+ max-height: 2.5rem;
200
197
  font-size: 0.875rem;
201
198
  --markdown-hyperlink-color: var(--mdc-theme-primary);
202
199
  --markdown-hyperlink-color--hovered: rgb(var(--color-teal-light));
@@ -213,7 +210,7 @@
213
210
  overflow: hidden;
214
211
  white-space: normal;
215
212
  -webkit-box-orient: vertical;
216
- -webkit-line-clamp: 4;
213
+ -webkit-line-clamp: 3;
217
214
  max-height: 4.25rem;
218
215
  transition: opacity 0.2s ease;
219
216
  opacity: 0.7;
@@ -11,7 +11,7 @@
11
11
  gap: 1rem;
12
12
  max-width: 45rem;
13
13
  background-color: var(--limebb-notification-list-background-color);
14
- padding: 2rem 1rem;
14
+ padding: 0.5rem;
15
15
  }
16
16
 
17
17
  limel-spinner {
@@ -38,8 +38,7 @@ limel-spinner {
38
38
  width: fit-content;
39
39
  font-size: 0.75rem;
40
40
  line-height: 1;
41
- color: rgb(var(--contrast-800));
42
- border: 1px solid var(--limebb-notification-list-background-color);
41
+ color: rgb(var(--contrast-900));
43
42
  backdrop-filter: blur(0.5rem);
44
43
  -webkit-backdrop-filter: blur(0.5rem);
45
44
  transition: color 0.2s ease, border-color 0.4s ease;
@@ -8,10 +8,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
9
  return c > 3 && r && Object.defineProperty(target, key, r), r;
10
10
  };
11
- import { PlatformServiceName, SelectLimeTypes, } from '@limetech/lime-web-components';
11
+ import { Operator, PlatformServiceName, SelectLimeTypes, } from '@limetech/lime-web-components';
12
12
  import { h } from '@stencil/core';
13
13
  import { BACKSPACE, ENTER, ESCAPE, TAB } from '../../util/keycodes';
14
14
  import { createRandomString } from '../../util/random-string';
15
+ import { isNonNull } from '@building-blocks/util/non-null';
15
16
  const findLimetypeByLabel = (label) => (limetypes) => {
16
17
  return Object.values(limetypes).find(hasLabel(label));
17
18
  };
@@ -110,6 +111,21 @@ export class LimeBBTextEditor {
110
111
  this.editorPickerQuery = event.detail.value;
111
112
  this.search();
112
113
  };
114
+ this.loadObjects = (limetype, objects) => {
115
+ return objects
116
+ .map((object) => {
117
+ const limeobject = this.limeObjectService.getObject(limetype.name, object._id);
118
+ if (!limeobject) {
119
+ return;
120
+ }
121
+ return {
122
+ text: limeobject.descriptive,
123
+ secondaryText: limetype.name,
124
+ value: object._id,
125
+ };
126
+ })
127
+ .filter(isNonNull);
128
+ };
113
129
  this.handleItemSelected = (event) => {
114
130
  this.insertEditorNode(event.detail);
115
131
  this.activeTrigger = undefined;
@@ -195,13 +211,16 @@ export class LimeBBTextEditor {
195
211
  if (query !== this.editorPickerQuery) {
196
212
  return;
197
213
  }
198
- this.items = response.objects.map((object) => {
199
- return {
200
- text: object._descriptive,
201
- secondaryText: object._limetype,
202
- value: object._id,
203
- };
204
- });
214
+ const ids = response.objects.map((object) => object._id);
215
+ const options = {
216
+ filter: {
217
+ key: '_id',
218
+ op: Operator.IN,
219
+ exp: ids,
220
+ },
221
+ };
222
+ const objects = (await this.limeObjectService.loadObjects(limetype.name, options)).objects;
223
+ this.items = this.loadObjects(limetype, objects);
205
224
  }
206
225
  catch (e) {
207
226
  console.error('Failed search for user', e);
@@ -1,5 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
2
  import { P as PlatformServiceName } from './types.js';
3
+ import { i as isNonNull } from './non-null.js';
3
4
 
4
5
  function createCommonjsModule(fn, basedir, module) {
5
6
  return module = {
@@ -1807,10 +1808,6 @@ var codes = function() {
1807
1808
  };
1808
1809
  var codes_1 = codes;
1809
1810
 
1810
- function isNonNull(value) {
1811
- return Boolean(value);
1812
- }
1813
-
1814
1811
  const CurrencyPicker = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1815
1812
  constructor() {
1816
1813
  super();
@@ -121,7 +121,7 @@ function insertDateGroups(context) {
121
121
  return Object.assign(Object.assign({}, context), { processedItems: newProcessedItems });
122
122
  }
123
123
 
124
- const notificationListCss = ":host(limebb-notification-list){--limebb-notification-list-background-color:var(\n --notification-list-background-color,\n rgb(var(--contrast-300))\n );display:flex;flex-direction:column;gap:1rem;max-width:45rem;background-color:var(--limebb-notification-list-background-color);padding:2rem 1rem}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-group{isolation:isolate;display:flex;flex-direction:column;gap:0.5rem}.date-heading{position:sticky;z-index:1;top:0.25rem;display:flex;border-radius:9rem;padding:0.25rem 0.5rem;margin:0;width:fit-content;font-size:0.75rem;line-height:1;color:rgb(var(--contrast-800));border:1px solid var(--limebb-notification-list-background-color);backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);transition:color 0.2s ease, border-color 0.4s ease}.date-heading:hover{color:rgb(var(--contrast-1000));border-color:rgb(var(--contrast-500))}.date-heading:hover:before{opacity:1}.date-heading:before{transition:opacity 0.2s ease;content:\"\";position:absolute;z-index:-1;inset:0;opacity:0.6;border-radius:inherit;background-color:var(--limebb-notification-list-background-color)}.new-items-indicator{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-end;margin:0.25rem 0}.new-items-indicator hr{border:none;position:absolute;width:100%;height:1px;background-color:rgb(var(--color-red-lighter))}.new-items-indicator h3{z-index:1;padding:0 0.5rem;border-radius:1rem;margin:0 1rem;font-size:small;line-height:0.75rem;text-transform:lowercase;color:rgb(var(--color-red-default));background-color:var(--limebb-notification-list-background-color)}";
124
+ const notificationListCss = ":host(limebb-notification-list){--limebb-notification-list-background-color:var(\n --notification-list-background-color,\n rgb(var(--contrast-300))\n );display:flex;flex-direction:column;gap:1rem;max-width:45rem;background-color:var(--limebb-notification-list-background-color);padding:0.5rem}limel-spinner{align-self:center;justify-self:center;margin:auto}.date-group{isolation:isolate;display:flex;flex-direction:column;gap:0.5rem}.date-heading{position:sticky;z-index:1;top:0.25rem;display:flex;border-radius:9rem;padding:0.25rem 0.5rem;margin:0;width:fit-content;font-size:0.75rem;line-height:1;color:rgb(var(--contrast-900));backdrop-filter:blur(0.5rem);-webkit-backdrop-filter:blur(0.5rem);transition:color 0.2s ease, border-color 0.4s ease}.date-heading:hover{color:rgb(var(--contrast-1000));border-color:rgb(var(--contrast-500))}.date-heading:hover:before{opacity:1}.date-heading:before{transition:opacity 0.2s ease;content:\"\";position:absolute;z-index:-1;inset:0;opacity:0.6;border-radius:inherit;background-color:var(--limebb-notification-list-background-color)}.new-items-indicator{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:flex-end;margin:0.25rem 0}.new-items-indicator hr{border:none;position:absolute;width:100%;height:1px;background-color:rgb(var(--color-red-lighter))}.new-items-indicator h3{z-index:1;padding:0 0.5rem;border-radius:1rem;margin:0 1rem;font-size:small;line-height:0.75rem;text-transform:lowercase;color:rgb(var(--color-red-default));background-color:var(--limebb-notification-list-background-color)}";
125
125
 
126
126
  const NotificationList = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
127
127
  constructor() {
@@ -1,7 +1,8 @@
1
1
  import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
- import { P as PlatformServiceName } from './types.js';
2
+ import { P as PlatformServiceName, O as Operator } from './types.js';
3
3
  import { a as SelectLimeTypes } from './decorator.js';
4
4
  import { a as ESCAPE, B as BACKSPACE, E as ENTER, T as TAB } from './keycodes.js';
5
+ import { i as isNonNull } from './non-null.js';
5
6
  import { d as defineCustomElement$2 } from './text-editor-picker.js';
6
7
 
7
8
  const createRandomString = () => {
@@ -115,6 +116,21 @@ const LimeBBTextEditor = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
115
116
  this.editorPickerQuery = event.detail.value;
116
117
  this.search();
117
118
  };
119
+ this.loadObjects = (limetype, objects) => {
120
+ return objects
121
+ .map((object) => {
122
+ const limeobject = this.limeObjectService.getObject(limetype.name, object._id);
123
+ if (!limeobject) {
124
+ return;
125
+ }
126
+ return {
127
+ text: limeobject.descriptive,
128
+ secondaryText: limetype.name,
129
+ value: object._id,
130
+ };
131
+ })
132
+ .filter(isNonNull);
133
+ };
118
134
  this.handleItemSelected = (event) => {
119
135
  this.insertEditorNode(event.detail);
120
136
  this.activeTrigger = undefined;
@@ -200,13 +216,16 @@ const LimeBBTextEditor = /*@__PURE__*/ proxyCustomElement(class extends HTMLElem
200
216
  if (query !== this.editorPickerQuery) {
201
217
  return;
202
218
  }
203
- this.items = response.objects.map((object) => {
204
- return {
205
- text: object._descriptive,
206
- secondaryText: object._limetype,
207
- value: object._id,
208
- };
209
- });
219
+ const ids = response.objects.map((object) => object._id);
220
+ const options = {
221
+ filter: {
222
+ key: '_id',
223
+ op: Operator.IN,
224
+ exp: ids,
225
+ },
226
+ };
227
+ const objects = (await this.limeObjectService.loadObjects(limetype.name, options)).objects;
228
+ this.items = this.loadObjects(limetype, objects);
210
229
  }
211
230
  catch (e) {
212
231
  console.error('Failed search for user', e);
@@ -0,0 +1,5 @@
1
+ function isNonNull(value) {
2
+ return Boolean(value);
3
+ }
4
+
5
+ export { isNonNull as i };
@@ -1,7 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { P as PlatformServiceName } from './types.js';
3
3
 
4
- const notificationItemCss = "@charset \"UTF-8\";*{box-sizing:border-box}:host(limebb-notification-item){isolation:isolate;padding:0 0.5rem}.notification-item{position:relative;box-sizing:border-box;display:flex;flex-direction:column;gap:0.25rem;border-radius:0.75rem;border:1px solid transparent}.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;background-color:var(--limebb-notification-item-unread-badge-color, transparent)}:host(limebb-notification-item.is-clickable) .notification-item{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--mdc-theme-on-surface);background-color:transparent}:host(limebb-notification-item.is-clickable) .notification-item:hover,:host(limebb-notification-item.is-clickable) .notification-item:focus,:host(limebb-notification-item.is-clickable) .notification-item:focus-visible{will-change:color, background-color, box-shadow, transform}:host(limebb-notification-item.is-clickable) .notification-item:hover{transform:translate3d(0, 0.01rem, 0);color:var(--mdc-theme-on-surface);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-hovered)}:host(limebb-notification-item.is-clickable) .notification-item:active{--limel-clickable-transform-timing-function:cubic-bezier(\n 0.83,\n -0.15,\n 0.49,\n 1.16\n );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}:host(limebb-notification-item.is-clickable) .notification-item:hover,:host(limebb-notification-item.is-clickable) .notification-item:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}:host(limebb-notification-item.is-read) .notification-item{--limebb-notification-header-border-color:rgb(var(--contrast-600));border-color:rgb(var(--contrast-400));background-color:rgb(var(--contrast-400))}:host(limebb-notification-item.is-read.is-clickable) .notification-item:hover{border-color:transparent}:host(limebb-notification-item:not(.is-read)) .notification-item{--limebb-notification-header-border-color:rgb(var(--contrast-400));--limebb-notification-item-unread-badge-color:rgb(\n var(--color-red-default)\n );background-color:rgb(var(--contrast-100))}: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;border-bottom:1px solid var(--limebb-notification-header-border-color)}.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-800))}.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:2rem;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:4;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}";
4
+ const notificationItemCss = "@charset \"UTF-8\";*{box-sizing:border-box}:host(limebb-notification-item){isolation:isolate;padding:0 0.5rem}.notification-item{position:relative;box-sizing:border-box;display:flex;flex-direction:column;gap:0.25rem;border-radius:0.75rem;border:1px solid rgb(var(--contrast-500))}.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;background-color:var(--limebb-notification-item-unread-badge-color, transparent)}:host(limebb-notification-item.is-clickable) .notification-item{transition:color var(--limel-clickable-transition-speed, 0.4s) ease, background-color var(--limel-clickable-transition-speed, 0.4s) ease, box-shadow var(--limel-clickable-transform-speed, 0.4s) ease, transform var(--limel-clickable-transform-speed, 0.4s) var(--limel-clickable-transform-timing-function, ease);cursor:pointer;color:var(--mdc-theme-on-surface);background-color:transparent}:host(limebb-notification-item.is-clickable) .notification-item:hover,:host(limebb-notification-item.is-clickable) .notification-item:focus,:host(limebb-notification-item.is-clickable) .notification-item:focus-visible{will-change:color, background-color, box-shadow, transform}:host(limebb-notification-item.is-clickable) .notification-item:hover{transform:translate3d(0, 0.01rem, 0);color:var(--mdc-theme-on-surface);background-color:var(--lime-elevated-surface-background-color);box-shadow:var(--button-shadow-hovered)}:host(limebb-notification-item.is-clickable) .notification-item:active{--limel-clickable-transform-timing-function:cubic-bezier(\n 0.83,\n -0.15,\n 0.49,\n 1.16\n );transform:translate3d(0, 0.05rem, 0);box-shadow:var(--button-shadow-pressed)}:host(limebb-notification-item.is-clickable) .notification-item:hover,:host(limebb-notification-item.is-clickable) .notification-item:active{--limel-clickable-transition-speed:0.2s;--limel-clickable-transform-speed:0.16s}:host(limebb-notification-item.is-read) .notification-item{border-color:rgb(var(--contrast-600));background-color:rgb(var(--contrast-500))}:host(limebb-notification-item.is-clickable) .notification-item:hover{border-color:transparent}:host(limebb-notification-item:not(.is-read)) .notification-item{--limebb-notification-item-unread-badge-color:rgb(\n var(--color-red-default)\n );background-color:rgb(var(--contrast-100))}: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
 
6
6
  const NotificationListItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
7
  constructor() {
@@ -431,4 +431,4 @@ PlatformServiceName.WebComponentRegistry = SERVICE_NAME$1;
431
431
  const SERVICE_NAME = 'state.notifications';
432
432
  PlatformServiceName.NotificationRepository = SERVICE_NAME;
433
433
 
434
- export { AggregateOperator as A, PlatformServiceName as P };
434
+ export { AggregateOperator as A, Operator as O, PlatformServiceName as P };
@@ -1,4 +1,4 @@
1
- import { P as PlatformServiceName } from './types-ab2df627.js';
1
+ import { P as PlatformServiceName } from './types-14a87c15.js';
2
2
  import { c as createStateDecorator } from './factory-babd3a98.js';
3
3
 
4
4
  /**
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, g as getElement } from './index-a0338355.js';
2
- import { P as PlatformServiceName } from './types-ab2df627.js';
2
+ import { P as PlatformServiceName } from './types-14a87c15.js';
3
3
  import { E as ENTER } from './keycodes-7f4bac6f.js';
4
4
  import { n as negate } from './negate-a980a4fe.js';
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { h, r as registerInstance, c as createEvent } from './index-a0338355.js';
2
- import { P as PlatformServiceName } from './types-ab2df627.js';
2
+ import { P as PlatformServiceName } from './types-14a87c15.js';
3
3
  import { g as get } from './get-861a68a0.js';
4
4
  import './_Map-e3bbb0c0.js';
5
5