@furystack/shades-common-components 5.0.19 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/esm/components/noty-list.d.ts.map +1 -1
  2. package/esm/components/noty-list.js +6 -6
  3. package/esm/components/noty-list.js.map +1 -1
  4. package/esm/components/suggest/index.js +2 -2
  5. package/esm/components/suggest/index.js.map +1 -1
  6. package/esm/components/suggest/suggest-manager.d.ts +4 -3
  7. package/esm/components/suggest/suggest-manager.d.ts.map +1 -1
  8. package/esm/components/suggest/suggest-manager.js +5 -5
  9. package/esm/components/suggest/suggest-manager.js.map +1 -1
  10. package/esm/services/collection-service.d.ts.map +1 -1
  11. package/esm/services/collection-service.js +1 -1
  12. package/esm/services/collection-service.js.map +1 -1
  13. package/esm/services/collection-service.spec.d.ts +2 -0
  14. package/esm/services/collection-service.spec.d.ts.map +1 -0
  15. package/esm/services/collection-service.spec.js +28 -0
  16. package/esm/services/collection-service.spec.js.map +1 -0
  17. package/esm/services/noty-service.d.ts +11 -7
  18. package/esm/services/noty-service.d.ts.map +1 -1
  19. package/esm/services/noty-service.js +25 -14
  20. package/esm/services/noty-service.js.map +1 -1
  21. package/esm/services/noty-service.spec.d.ts +2 -0
  22. package/esm/services/noty-service.spec.d.ts.map +1 -0
  23. package/esm/services/noty-service.spec.js +20 -0
  24. package/esm/services/noty-service.spec.js.map +1 -0
  25. package/package.json +7 -7
  26. package/src/components/noty-list.tsx +16 -12
  27. package/src/components/suggest/index.tsx +2 -2
  28. package/src/components/suggest/suggest-manager.ts +5 -5
  29. package/src/services/collection-service.spec.ts +37 -0
  30. package/src/services/collection-service.ts +1 -1
  31. package/src/services/noty-service.spec.ts +26 -0
  32. package/src/services/noty-service.ts +23 -11
@@ -1 +1 @@
1
- {"version":3,"file":"noty-list.d.ts","sourceRoot":"","sources":["../../src/components/noty-list.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAM5D,eAAO,MAAM,sBAAsB,SAAU,SAAS,CAAC,MAAM,CAAC,qBAa7D,CAAA;AAED,eAAO,MAAM,aAAa;WAAkB,SAAS;eAAa,MAAM,IAAI;;;uFA4G1E,CAAA;AAEF,eAAO,MAAM,QAAQ;;uFAkCnB,CAAA"}
1
+ {"version":3,"file":"noty-list.d.ts","sourceRoot":"","sources":["../../src/components/noty-list.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAM5D,eAAO,MAAM,sBAAsB,SAAU,SAAS,CAAC,MAAM,CAAC,qBAa7D,CAAA;AAED,eAAO,MAAM,aAAa;WAAkB,SAAS;eAAa,MAAM,IAAI;;;uFA4G1E,CAAA;AAEF,eAAO,MAAM,QAAQ;;uFAsCnB,CAAA"}
@@ -102,18 +102,18 @@ export const NotyList = Shade({
102
102
  display: 'flex',
103
103
  flexDirection: 'column',
104
104
  },
105
- render: ({ useObservable, injector, element }) => {
105
+ render: ({ useDisposable, injector, element }) => {
106
106
  const notyService = injector.getInstance(NotyService);
107
- const currentNotys = notyService.notys.getValue();
108
- useObservable('addNoty', notyService.onNotyAdded, (n) => element.append(createComponent(NotyComponent, { model: n, onDismiss: () => notyService.removeNoty(n) })));
109
- useObservable('removeNoty', notyService.onNotyRemoved, (n) => {
107
+ const currentNotys = notyService.getNotyList();
108
+ useDisposable('addNoty', () => notyService.subscribe('onNotyAdded', (n) => element.append(createComponent(NotyComponent, { model: n, onDismiss: () => notyService.emit('onNotyRemoved', n) }))));
109
+ useDisposable('removeNoty', () => notyService.subscribe('onNotyRemoved', (n) => {
110
110
  element.querySelectorAll('shade-noty').forEach((e) => {
111
111
  if (e.props.model === n) {
112
112
  e.remove();
113
113
  }
114
114
  });
115
- });
116
- return (createComponent(createComponent, null, currentNotys.map((n) => (createComponent(NotyComponent, { model: n, onDismiss: () => injector.getInstance(NotyService).removeNoty(n) })))));
115
+ }));
116
+ return (createComponent(createComponent, null, currentNotys.map((n) => (createComponent(NotyComponent, { model: n, onDismiss: () => injector.getInstance(NotyService).emit('onNotyRemoved', n) })))));
117
117
  },
118
118
  });
119
119
  //# sourceMappingURL=noty-list.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"noty-list.js","sourceRoot":"","sources":["../../src/components/noty-list.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"noty-list.js","sourceRoot":"","sources":["../../src/components/noty-list.tsx"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export const Suggest = Shade({
14
14
  style: {
15
15
  flexGrow: '1',
16
16
  },
17
- render: ({ props, injector, element, useDisposable, useObservable }) => {
17
+ render: ({ props, injector, element, useDisposable }) => {
18
18
  const manager = useDisposable('manager', () => new SuggestManager(props.getEntries, props.getSuggestionEntry));
19
19
  const { theme } = injector.getInstance(ThemeProviderService);
20
20
  const inputContainer = element.querySelector('.input-container');
@@ -69,7 +69,7 @@ export const Suggest = Shade({
69
69
  });
70
70
  }
71
71
  });
72
- useObservable('onSelectSuggestion', manager.onSelectSuggestion, props.onSelectSuggestion);
72
+ useDisposable('onSelectSuggestion', () => manager.subscribe('onSelectSuggestion', props.onSelectSuggestion));
73
73
  return (createComponent("div", { style: { display: 'flex', flexDirection: 'column' }, onkeyup: (ev) => {
74
74
  if (ev.key === 'Enter') {
75
75
  ev.preventDefault();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/suggest/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAA;AAE/E,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,wBAAwB,CAAA;AAUtC,MAAM,CAAC,MAAM,OAAO,GAA4E,KAAK,CAEnG;IACA,aAAa,EAAE,eAAe;IAC9B,KAAK,EAAE;QACL,QAAQ,EAAE,GAAG;KACd;IACD,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,EAAE;QACrE,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAA;QAC9G,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAA;QAC5D,MAAM,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAmB,CAAA;QAClF,OAAO,CAAC,OAAO,GAAG,OAAO,CAAA;QACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,EAAE;YACtC,MAAM,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAA;YAC/D,MAAM,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAA;YAC5D,IAAI,QAAQ,EAAE,CAAC;gBACb,kBAAkB,CAAC,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE;oBAChE,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU;iBACjB,CAAC,CAAA;gBAEF,kBAAkB,CAAC,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE;oBACtE,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU;iBACjB,CAAC,CAAA;gBAEF,kBAAkB,CAAC,cAAc,EAAE,CAAC,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE;oBAC5G,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,0CAA0C;iBACnD,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,kBAAkB,CAAC,WAAW,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE;oBAChE,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU;iBACjB,CAAC,CAAA;gBAEF,kBAAkB,CAAC,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE;oBACtE,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,GAAG;iBACX,CAAC,CAAA;gBAEF,kBAAkB,CAAC,cAAc,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,EAAE;oBAC5G,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,0CAA0C;iBACnD,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAC,CAAA;QACF,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,CAAA;YACpD,IAAI,SAAS,EAAE,CAAC;gBACd,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE;oBAC3D,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU;iBACjB,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE;oBAC3D,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU;iBACjB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC,CAAC,CAAA;QACF,aAAa,CAAC,oBAAoB,EAAE,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACzF,OAAO,CACL,yBACE,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,EACnD,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE;gBACd,IAAI,EAAE,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;oBACvB,EAAE,CAAC,cAAc,EAAE,CAAA;oBACnB,OAAO,CAAC,gBAAgB,EAAE,CAAA;oBAC1B,OAAM;gBACR,CAAC;gBACD,IAAI,EAAE,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;oBACzB,EAAE,CAAC,cAAc,EAAE,CAAA;oBACnB,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;gBACnF,CAAC;gBACD,IAAI,EAAE,CAAC,GAAG,KAAK,WAAW,EAAE,CAAC;oBAC3B,EAAE,CAAC,cAAc,EAAE,CAAA;oBACnB,OAAO,CAAC,aAAa,CAAC,QAAQ,CAC5B,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CACjG,CAAA;gBACH,CAAC;gBAED,OAAO,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAG,EAAE,CAAC,MAAc,CAAC,KAAK,EAAE,CAAC,CAAA;YACrE,CAAC;YAED,yBACE,SAAS,EAAC,iBAAiB,EAC3B,KAAK,EAAE;oBACL,OAAO,EAAE,MAAM;oBACf,UAAU,EAAE,QAAQ;oBACpB,cAAc,EAAE,UAAU;oBAC1B,OAAO,EAAE,OAAO;oBAChB,YAAY,EAAE,KAAK;oBACnB,QAAQ,EAAE,UAAU;oBACpB,UAAU,EAAE,uBAAuB;oBACnC,GAAG,KAAK,CAAC,KAAK;iBACf;gBAED,yBACE,SAAS,EAAC,WAAW,EACrB,KAAK,EAAE;wBACL,MAAM,EAAE,SAAS;wBACjB,KAAK,EAAE,MAAM;wBACb,UAAU,EAAE,QAAQ;wBACpB,UAAU,EAAE,cAAc;qBAC3B,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAE7C,KAAK,CAAC,aAAa,CAChB;gBACN,gBAAC,YAAY,IAAC,OAAO,EAAE,OAAO,GAAI;gBAClC,yBACE,SAAS,EAAC,eAAe,EACzB,KAAK,EAAE;wBACL,OAAO,EAAE,MAAM;wBACf,UAAU,EAAE,QAAQ;wBACpB,cAAc,EAAE,eAAe;wBAC/B,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;wBACnD,QAAQ,EAAE,QAAQ;qBACnB;oBAED,gBAAC,MAAM,IACL,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,EAC3F,KAAK,EAAE,CAAC,EACR,WAAW,EAAE,CAAC,GACd;oBACF,yBACE,SAAS,EAAC,mBAAmB,EAC7B,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC/C,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM;4BACb,MAAM,EAAE,MAAM;4BACd,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;4BAChD,OAAO,EAAE,MAAM;4BACf,UAAU,EAAE,QAAQ;4BACpB,cAAc,EAAE,QAAQ;4BACxB,MAAM,EAAE,SAAS;yBAClB,aAGG,CACF,CACF;YACN,gBAAC,cAAc,IAAC,OAAO,EAAE,OAAO,GAAI,CAChC,CACP,CAAA;IACH,CAAC;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/suggest/index.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import type { Injector } from '@furystack/inject';
2
2
  import type { Disposable } from '@furystack/utils';
3
- import { ObservableValue } from '@furystack/utils';
3
+ import { EventHub, ObservableValue } from '@furystack/utils';
4
4
  import type { SuggestionResult } from './suggestion-result.js';
5
- export declare class SuggestManager<T> implements Disposable {
5
+ export declare class SuggestManager<T> extends EventHub<'onSelectSuggestion', {
6
+ onSelectSuggestion: T;
7
+ }> implements Disposable {
6
8
  private readonly getEntries;
7
9
  private readonly getSuggestionEntry;
8
10
  isOpened: ObservableValue<boolean>;
@@ -13,7 +15,6 @@ export declare class SuggestManager<T> implements Disposable {
13
15
  entry: T;
14
16
  suggestion: SuggestionResult;
15
17
  }[]>;
16
- onSelectSuggestion: ObservableValue<T>;
17
18
  keyPressListener: (ev: KeyboardEvent) => void;
18
19
  element?: HTMLElement;
19
20
  clickOutsideListener: (ev: MouseEvent) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"suggest-manager.d.ts","sourceRoot":"","sources":["../../../src/components/suggest/suggest-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAY,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,qBACa,cAAc,CAAC,CAAC,CAAE,YAAW,UAAU;IAkEhD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAlE9B,QAAQ,2BAA6B;IACrC,SAAS,2BAA6B;IACtC,IAAI,0BAA0B;IAC9B,aAAa,0BAAyB;IACtC,kBAAkB;eAAsC,CAAC;oBAAc,gBAAgB;SAAQ;IAC/F,kBAAkB,qBAA2B;IAE7C,gBAAgB,OAAS,aAAa,UAIhC;IAEN,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,oBAAoB,OAAS,UAAU,UAQjC;IAEN,OAAO;IAWP,gBAAgB,CAAC,KAAK,GAAE,MAAsC;IAMrE,OAAO,CAAC,wBAAwB,CAAC,CAAsC;IAChE,aAAa;kBAAwC,QAAQ;cAAQ,MAAM;wBAoB3E;gBAGY,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1C,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,gBAAgB;CAKtE"}
1
+ {"version":3,"file":"suggest-manager.d.ts","sourceRoot":"","sources":["../../../src/components/suggest/suggest-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAY,QAAQ,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAE9D,qBACa,cAAc,CAAC,CAAC,CAAE,SAAQ,QAAQ,CAAC,oBAAoB,EAAE;IAAE,kBAAkB,EAAE,CAAC,CAAA;CAAE,CAAE,YAAW,UAAU;IAiElH,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAjE9B,QAAQ,2BAA6B;IACrC,SAAS,2BAA6B;IACtC,IAAI,0BAA0B;IAC9B,aAAa,0BAAyB;IACtC,kBAAkB;eAAsC,CAAC;oBAAc,gBAAgB;SAAQ;IAE/F,gBAAgB,OAAS,aAAa,UAIhC;IAEN,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB,oBAAoB,OAAS,UAAU,UAQjC;IAEN,OAAO;IAWP,gBAAgB,CAAC,KAAK,GAAE,MAAsC;IAMrE,OAAO,CAAC,wBAAwB,CAAC,CAAsC;IAChE,aAAa;kBAAwC,QAAQ;cAAQ,MAAM;wBAoB3E;gBAGY,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1C,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,gBAAgB;CAMtE"}
@@ -8,8 +8,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import { Injectable } from '@furystack/inject';
11
- import { debounce, ObservableValue } from '@furystack/utils';
12
- let SuggestManager = class SuggestManager {
11
+ import { debounce, EventHub, ObservableValue } from '@furystack/utils';
12
+ let SuggestManager = class SuggestManager extends EventHub {
13
13
  getEntries;
14
14
  getSuggestionEntry;
15
15
  isOpened = new ObservableValue(false);
@@ -17,7 +17,6 @@ let SuggestManager = class SuggestManager {
17
17
  term = new ObservableValue('');
18
18
  selectedIndex = new ObservableValue(0);
19
19
  currentSuggestions = new ObservableValue([]);
20
- onSelectSuggestion = new ObservableValue();
21
20
  keyPressListener = ((ev) => {
22
21
  if (ev.key === 'Escape') {
23
22
  this.isOpened.setValue(false);
@@ -39,12 +38,12 @@ let SuggestManager = class SuggestManager {
39
38
  this.term.dispose();
40
39
  this.selectedIndex.dispose();
41
40
  this.currentSuggestions.dispose();
42
- this.onSelectSuggestion.dispose();
41
+ super.dispose();
43
42
  }
44
43
  selectSuggestion(index = this.selectedIndex.getValue()) {
45
44
  const selectedSuggestion = this.currentSuggestions.getValue()[index];
46
45
  this.isOpened.setValue(false);
47
- this.onSelectSuggestion.setValue(selectedSuggestion.entry);
46
+ this.emit('onSelectSuggestion', selectedSuggestion.entry);
48
47
  }
49
48
  lastGetSuggestionOptions;
50
49
  getSuggestion = debounce(async (options) => {
@@ -65,6 +64,7 @@ let SuggestManager = class SuggestManager {
65
64
  }
66
65
  }, 250);
67
66
  constructor(getEntries, getSuggestionEntry) {
67
+ super();
68
68
  this.getEntries = getEntries;
69
69
  this.getSuggestionEntry = getSuggestionEntry;
70
70
  window.addEventListener('keyup', this.keyPressListener, true);
@@ -1 +1 @@
1
- {"version":3,"file":"suggest-manager.js","sourceRoot":"","sources":["../../../src/components/suggest/suggest-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"suggest-manager.js","sourceRoot":"","sources":["../../../src/components/suggest/suggest-manager.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAI/D,IAAM,cAAc,GAApB,MAAM,cAAkB,SAAQ,QAAyD;IAiE3E;IACA;IAjEZ,QAAQ,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAA;IACrC,SAAS,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,CAAA;IACtC,IAAI,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,CAAA;IAC9B,aAAa,GAAG,IAAI,eAAe,CAAC,CAAC,CAAC,CAAA;IACtC,kBAAkB,GAAG,IAAI,eAAe,CAAoD,EAAE,CAAC,CAAA;IAE/F,gBAAgB,GAAG,CAAC,CAAC,EAAiB,EAAE,EAAE;QAC/C,IAAI,EAAE,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEN,OAAO,CAAc;IACrB,oBAAoB,GAAG,CAAC,CAAC,EAAc,EAAE,EAAE;QAChD,IACE,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACvB,EAAE,CAAC,MAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,EACzE,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEN,OAAO;QACZ,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAC1D,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAA;QAC9D,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAA;QACvB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAA;QACxB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAA;QACnB,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAA;QAC5B,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAA;QACjC,KAAK,CAAC,OAAO,EAAE,CAAA;IACjB,CAAC;IAEM,gBAAgB,CAAC,QAAgB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE;QACnE,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAA;QACpE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC7B,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAA;IAC3D,CAAC;IAEO,wBAAwB,CAAuC;IAChE,aAAa,GAAG,QAAQ,CAAC,KAAK,EAAE,OAA6C,EAAE,EAAE;QACtF,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,wBAAwB,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;gBACzD,OAAM;YACR,CAAC;YACD,MAAM,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;YAChH,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC7B,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAA;YACvC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;YACtD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC5B,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YAC/G,IAAI,CAAC,aAAa,CAAC,QAAQ,CACzB,IAAI,CAAC,GAAG,CACN,CAAC,EACD,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,sBAAsB,CAAC,CAClG,CACF,CAAA;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAChC,CAAC;IACH,CAAC,EAAE,GAAG,CAAC,CAAA;IAEP,YACmB,UAA0C,EAC1C,kBAAkD;QAEnE,KAAK,EAAE,CAAA;QAHU,eAAU,GAAV,UAAU,CAAgC;QAC1C,uBAAkB,GAAlB,kBAAkB,CAAgC;QAGnE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAA;QAC7D,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAA;IACnE,CAAC;CACF,CAAA;AAxEY,cAAc;IAD1B,UAAU,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;;GACzB,cAAc,CAwE1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"collection-service.d.ts","sourceRoot":"","sources":["../../src/services/collection-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAY,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAE5D,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,EAC1D,aAAa,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,KACnC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;AAEvD,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC;;OAEG;IACH,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACtB;;OAEG;IACH,eAAe,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC/C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,CAAA;IAErB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IAE/B;;;OAGG;IAEH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IAErC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,iBAAiB,CAAC,CAAC,CAAE,YAAW,UAAU;IAoJzC,OAAO,CAAC,OAAO;IAnJpB,OAAO;IAOP,UAAU,UAAW,CAAC,aAA8C;IAEpE,cAAc,UAAW,CAAC,UAEhC;IAEM,mBAAmB,UAAW,CAAC,UAErC;IAEM,eAAe,UAAW,CAAC,UAEjC;IAED,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAa;IAE/B,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IAE1B,IAAI,qCAAoE;IAExE,KAAK,2BAAsD;IAE3D,SAAS,2BAAsC;IAE/C,aAAa,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAE9D,YAAY,iCAAuC;IAEnD,SAAS,uBAA+B;IAExC,UAAU,0BAA0B;IAEpC,QAAQ,2BAA6B;IAErC,aAAa,CAAC,EAAE,EAAE,aAAa;IA6E/B,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU;gBA6B1B,OAAO,EAAE,wBAAwB,CAAC,CAAC,CAAC;IA2B3C,oBAAoB,CAAC,KAAK,EAAE,CAAC;CAG3C"}
1
+ {"version":3,"file":"collection-service.d.ts","sourceRoot":"","sources":["../../src/services/collection-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAY,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAE5D,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,OAAO,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,EAC1D,aAAa,EAAE,WAAW,CAAC,CAAC,EAAE,OAAO,CAAC,KACnC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;AAEvD,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC;;OAEG;IACH,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IACtB;;OAEG;IACH,eAAe,EAAE,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC/C;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,CAAA;IAErB;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IAE/B;;;OAGG;IAEH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAA;IAErC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,iBAAiB,CAAC,CAAC,CAAE,YAAW,UAAU;IAoJzC,OAAO,CAAC,OAAO;IAnJpB,OAAO;IAOP,UAAU,UAAW,CAAC,aAA8C;IAEpE,cAAc,UAAW,CAAC,UAEhC;IAEM,mBAAmB,UAAW,CAAC,UAErC;IAEM,eAAe,UAAW,CAAC,UAEjC;IAED,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAa;IAE/B,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,CAAA;IAE1B,IAAI,qCAAoE;IAExE,KAAK,2BAAsD;IAE3D,SAAS,2BAAsC;IAE/C,aAAa,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;IAE9D,YAAY,iCAAgD;IAE5D,SAAS,uBAA+B;IAExC,UAAU,0BAA0B;IAEpC,QAAQ,2BAA6B;IAErC,aAAa,CAAC,EAAE,EAAE,aAAa;IA6E/B,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,UAAU;gBA6B1B,OAAO,EAAE,wBAAwB,CAAC,CAAC,CAAC;IA2B3C,oBAAoB,CAAC,KAAK,EAAE,CAAC;CAG3C"}
@@ -24,7 +24,7 @@ export class CollectionService {
24
24
  error = new ObservableValue(undefined);
25
25
  isLoading = new ObservableValue(false);
26
26
  querySettings;
27
- focusedEntry = new ObservableValue();
27
+ focusedEntry = new ObservableValue(undefined);
28
28
  selection = new ObservableValue([]);
29
29
  searchTerm = new ObservableValue('');
30
30
  hasFocus = new ObservableValue(false);
@@ -1 +1 @@
1
- {"version":3,"file":"collection-service.js","sourceRoot":"","sources":["../../src/services/collection-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection-service.js","sourceRoot":"","sources":["../../src/services/collection-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=collection-service.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection-service.spec.d.ts","sourceRoot":"","sources":["../../src/services/collection-service.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,28 @@
1
+ import { usingAsync } from '@furystack/utils';
2
+ import { describe, expect, it } from 'vitest';
3
+ import { CollectionService } from './collection-service.js';
4
+ const testEntries = [{ foo: 1 }, { foo: 2 }, { foo: 3 }];
5
+ describe('CollectionService', () => {
6
+ describe('Selection', () => {
7
+ it('Should add and remove selection', async () => {
8
+ await usingAsync(new CollectionService({
9
+ defaultSettings: {},
10
+ loader: async () => ({ count: 3, entries: testEntries }),
11
+ }), async (collectionService) => {
12
+ await collectionService.getEntries({});
13
+ testEntries.forEach((entry) => {
14
+ expect(collectionService.isSelected(entry)).toBe(false);
15
+ });
16
+ collectionService.addToSelection(testEntries[0]);
17
+ expect(collectionService.isSelected(testEntries[0])).toBe(true);
18
+ expect(collectionService.isSelected(testEntries[1])).toBe(false);
19
+ expect(collectionService.isSelected(testEntries[2])).toBe(false);
20
+ collectionService.removeFromSelection(testEntries[0]);
21
+ expect(collectionService.isSelected(testEntries[0])).toBe(false);
22
+ collectionService.toggleSelection(testEntries[1]);
23
+ expect(collectionService.isSelected(testEntries[1])).toBe(true);
24
+ });
25
+ });
26
+ });
27
+ });
28
+ //# sourceMappingURL=collection-service.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"collection-service.spec.js","sourceRoot":"","sources":["../../src/services/collection-service.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D,MAAM,WAAW,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;AAExD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;YAC/C,MAAM,UAAU,CACd,IAAI,iBAAiB,CAAC;gBACpB,eAAe,EAAE,EAAE;gBACnB,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;aACzD,CAAC,EACF,KAAK,EAAE,iBAAiB,EAAE,EAAE;gBAC1B,MAAM,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;gBACtC,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC5B,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBACzD,CAAC,CAAC,CAAA;gBAEF,iBAAiB,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;gBAEhD,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC/D,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAChE,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEhE,iBAAiB,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;gBAErD,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEhE,iBAAiB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;gBACjD,MAAM,CAAC,iBAAiB,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjE,CAAC,CACF,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,15 +1,19 @@
1
- import { ObservableValue } from '@furystack/utils';
1
+ import { EventHub } from '@furystack/utils';
2
2
  export interface NotyModel {
3
3
  type: 'error' | 'warning' | 'info' | 'success';
4
4
  title: string;
5
5
  body: any;
6
6
  timeout?: number;
7
7
  }
8
- export declare class NotyService {
9
- onNotyAdded: ObservableValue<NotyModel>;
10
- onNotyRemoved: ObservableValue<NotyModel>;
11
- notys: ObservableValue<NotyModel[]>;
12
- addNoty: (noty: NotyModel) => void;
13
- removeNoty: (noty: NotyModel) => void;
8
+ export declare class NotyService extends EventHub<'onNotyAdded' | 'onNotyRemoved', {
9
+ onNotyAdded: NotyModel;
10
+ onNotyRemoved: NotyModel;
11
+ }> {
12
+ private notyList;
13
+ getNotyList: () => NotyModel[];
14
+ private onNotyAddListener;
15
+ private onNotyRemoveListener;
16
+ dispose(): void;
17
+ constructor();
14
18
  }
15
19
  //# sourceMappingURL=noty-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"noty-service.d.ts","sourceRoot":"","sources":["../../src/services/noty-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAGlD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAC9C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,GAAG,CAAA;IACT,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBACa,WAAW;IACf,WAAW,6BAAmC;IAC9C,aAAa,6BAAmC;IAEhD,KAAK,+BAAuC;IAE5C,OAAO,SAAU,SAAS,UAGhC;IAEM,UAAU,SAAU,SAAS,UAGnC;CACF"}
1
+ {"version":3,"file":"noty-service.d.ts","sourceRoot":"","sources":["../../src/services/noty-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAG3C,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAA;IAC9C,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,GAAG,CAAA;IACT,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,qBACa,WAAY,SAAQ,QAAQ,CACvC,aAAa,GAAG,eAAe,EAC/B;IAAE,WAAW,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,SAAS,CAAA;CAAE,CACrD;IACC,OAAO,CAAC,QAAQ,CAAkB;IAE3B,WAAW,oBAA2B;IAE7C,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,oBAAoB;IAIrB,OAAO,IAAI,IAAI;;CAWvB"}
@@ -4,23 +4,34 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { ObservableValue } from '@furystack/utils';
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { EventHub } from '@furystack/utils';
8
11
  import { Injectable } from '@furystack/inject';
9
- let NotyService = class NotyService {
10
- onNotyAdded = new ObservableValue();
11
- onNotyRemoved = new ObservableValue();
12
- notys = new ObservableValue([]);
13
- addNoty = (noty) => {
14
- this.onNotyAdded.setValue(noty);
15
- this.notys.setValue([...this.notys.getValue(), noty]);
16
- };
17
- removeNoty = (noty) => {
18
- this.onNotyRemoved.setValue(noty);
19
- this.notys.setValue(this.notys.getValue().filter((n) => n !== noty));
20
- };
12
+ let NotyService = class NotyService extends EventHub {
13
+ notyList = [];
14
+ getNotyList = () => [...this.notyList];
15
+ onNotyAddListener(newNoty) {
16
+ this.notyList = [...this.notyList, newNoty];
17
+ }
18
+ onNotyRemoveListener(removedNoty) {
19
+ this.notyList = this.notyList.filter((noty) => noty !== removedNoty);
20
+ }
21
+ dispose() {
22
+ this.notyList = [];
23
+ this.removeListener('onNotyAdded', this.onNotyAddListener.bind(this));
24
+ this.removeListener('onNotyRemoved', this.onNotyRemoveListener.bind(this));
25
+ }
26
+ constructor() {
27
+ super();
28
+ this.addListener('onNotyAdded', this.onNotyAddListener.bind(this));
29
+ this.addListener('onNotyRemoved', this.onNotyRemoveListener.bind(this));
30
+ }
21
31
  };
22
32
  NotyService = __decorate([
23
- Injectable({ lifetime: 'singleton' })
33
+ Injectable({ lifetime: 'singleton' }),
34
+ __metadata("design:paramtypes", [])
24
35
  ], NotyService);
25
36
  export { NotyService };
26
37
  //# sourceMappingURL=noty-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"noty-service.js","sourceRoot":"","sources":["../../src/services/noty-service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAUvC,IAAM,WAAW,GAAjB,MAAM,WAAW;IACf,WAAW,GAAG,IAAI,eAAe,EAAa,CAAA;IAC9C,aAAa,GAAG,IAAI,eAAe,EAAa,CAAA;IAEhD,KAAK,GAAG,IAAI,eAAe,CAAc,EAAE,CAAC,CAAA;IAE5C,OAAO,GAAG,CAAC,IAAe,EAAE,EAAE;QACnC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,CAAA;IACvD,CAAC,CAAA;IAEM,UAAU,GAAG,CAAC,IAAe,EAAE,EAAE;QACtC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;IACtE,CAAC,CAAA;CACF,CAAA;AAfY,WAAW;IADvB,UAAU,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;GACzB,WAAW,CAevB"}
1
+ {"version":3,"file":"noty-service.js","sourceRoot":"","sources":["../../src/services/noty-service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAUvC,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,QAGhC;IACS,QAAQ,GAAgB,EAAE,CAAA;IAE3B,WAAW,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;IAErC,iBAAiB,CAAC,OAAkB;QAC1C,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAC7C,CAAC;IAEO,oBAAoB,CAAC,WAAsB;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,WAAW,CAAC,CAAA;IACtE,CAAC;IAEM,OAAO;QACZ,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAA;QAClB,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACrE,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5E,CAAC;IAED;QACE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAClE,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IACzE,CAAC;CACF,CAAA;AA3BY,WAAW;IADvB,UAAU,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;;GACzB,WAAW,CA2BvB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=noty-service.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noty-service.spec.d.ts","sourceRoot":"","sources":["../../src/services/noty-service.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ import { describe, expect, it } from 'vitest';
2
+ import { NotyService } from './noty-service.js';
3
+ import { using } from '@furystack/utils';
4
+ describe('NotyService', () => {
5
+ it('Should add and removea noty', () => {
6
+ using(new NotyService(), (notyService) => {
7
+ expect(notyService.getNotyList()).toEqual([]);
8
+ const exampleNoty = {
9
+ type: 'info',
10
+ title: 'Test',
11
+ body: 'Test',
12
+ };
13
+ notyService.emit('onNotyAdded', exampleNoty);
14
+ expect(notyService.getNotyList()).toEqual([exampleNoty]);
15
+ notyService.emit('onNotyRemoved', exampleNoty);
16
+ expect(notyService.getNotyList()).toEqual([]);
17
+ });
18
+ });
19
+ });
20
+ //# sourceMappingURL=noty-service.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noty-service.spec.js","sourceRoot":"","sources":["../../src/services/noty-service.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AAE7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAExC,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACrC,KAAK,CAAC,IAAI,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE;YACvC,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAE7C,MAAM,WAAW,GAAc;gBAC7B,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,MAAM;gBACb,IAAI,EAAE,MAAM;aACb,CAAA;YAED,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAA;YAE5C,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;YAExD,WAAW,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAA;YAE9C,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@furystack/shades-common-components",
3
- "version": "5.0.19",
3
+ "version": "6.0.0",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -31,14 +31,14 @@
31
31
  "author": "gallay.lajos@gmail.com",
32
32
  "license": "GPL-2.0",
33
33
  "devDependencies": {
34
- "typescript": "^5.3.3",
35
- "vitest": "^1.3.1"
34
+ "typescript": "^5.4.2",
35
+ "vitest": "^1.4.0"
36
36
  },
37
37
  "dependencies": {
38
- "@furystack/core": "^12.0.17",
39
- "@furystack/inject": "^8.1.7",
40
- "@furystack/shades": "^8.1.0",
41
- "@furystack/utils": "^4.0.16",
38
+ "@furystack/core": "^13.0.0",
39
+ "@furystack/inject": "^9.0.0",
40
+ "@furystack/shades": "^9.0.0",
41
+ "@furystack/utils": "^5.0.0",
42
42
  "path-to-regexp": "^6.2.1",
43
43
  "semaphore-async-await": "^1.5.1"
44
44
  },
@@ -139,27 +139,31 @@ export const NotyList = Shade({
139
139
  display: 'flex',
140
140
  flexDirection: 'column',
141
141
  },
142
- render: ({ useObservable, injector, element }) => {
142
+ render: ({ useDisposable, injector, element }) => {
143
143
  const notyService = injector.getInstance(NotyService)
144
144
 
145
- const currentNotys = notyService.notys.getValue()
145
+ const currentNotys = notyService.getNotyList()
146
146
 
147
- useObservable('addNoty', notyService.onNotyAdded, (n) =>
148
- element.append(<NotyComponent model={n} onDismiss={() => notyService.removeNoty(n)} />),
147
+ useDisposable('addNoty', () =>
148
+ notyService.subscribe('onNotyAdded', (n) =>
149
+ element.append(<NotyComponent model={n} onDismiss={() => notyService.emit('onNotyRemoved', n)} />),
150
+ ),
149
151
  )
150
152
 
151
- useObservable('removeNoty', notyService.onNotyRemoved, (n) => {
152
- element.querySelectorAll('shade-noty').forEach((e) => {
153
- if ((e as JSX.Element).props.model === n) {
154
- e.remove()
155
- }
156
- })
157
- })
153
+ useDisposable('removeNoty', () =>
154
+ notyService.subscribe('onNotyRemoved', (n) => {
155
+ element.querySelectorAll('shade-noty').forEach((e) => {
156
+ if ((e as JSX.Element).props.model === n) {
157
+ e.remove()
158
+ }
159
+ })
160
+ }),
161
+ )
158
162
 
159
163
  return (
160
164
  <>
161
165
  {currentNotys.map((n) => (
162
- <NotyComponent model={n} onDismiss={() => injector.getInstance(NotyService).removeNoty(n)} />
166
+ <NotyComponent model={n} onDismiss={() => injector.getInstance(NotyService).emit('onNotyRemoved', n)} />
163
167
  ))}
164
168
  </>
165
169
  )
@@ -28,7 +28,7 @@ export const Suggest: <T>(props: SuggestProps<T>, children: ChildrenList) => JSX
28
28
  style: {
29
29
  flexGrow: '1',
30
30
  },
31
- render: ({ props, injector, element, useDisposable, useObservable }) => {
31
+ render: ({ props, injector, element, useDisposable }) => {
32
32
  const manager = useDisposable('manager', () => new SuggestManager(props.getEntries, props.getSuggestionEntry))
33
33
  const { theme } = injector.getInstance(ThemeProviderService)
34
34
  const inputContainer = element.querySelector('.input-container') as HTMLDivElement
@@ -85,7 +85,7 @@ export const Suggest: <T>(props: SuggestProps<T>, children: ChildrenList) => JSX
85
85
  })
86
86
  }
87
87
  })
88
- useObservable('onSelectSuggestion', manager.onSelectSuggestion, props.onSelectSuggestion)
88
+ useDisposable('onSelectSuggestion', () => manager.subscribe('onSelectSuggestion', props.onSelectSuggestion))
89
89
  return (
90
90
  <div
91
91
  style={{ display: 'flex', flexDirection: 'column' }}
@@ -1,17 +1,16 @@
1
1
  import type { Injector } from '@furystack/inject'
2
2
  import { Injectable } from '@furystack/inject'
3
3
  import type { Disposable } from '@furystack/utils'
4
- import { debounce, ObservableValue } from '@furystack/utils'
4
+ import { debounce, EventHub, ObservableValue } from '@furystack/utils'
5
5
  import type { SuggestionResult } from './suggestion-result.js'
6
6
 
7
7
  @Injectable({ lifetime: 'singleton' })
8
- export class SuggestManager<T> implements Disposable {
8
+ export class SuggestManager<T> extends EventHub<'onSelectSuggestion', { onSelectSuggestion: T }> implements Disposable {
9
9
  public isOpened = new ObservableValue(false)
10
10
  public isLoading = new ObservableValue(false)
11
11
  public term = new ObservableValue('')
12
12
  public selectedIndex = new ObservableValue(0)
13
13
  public currentSuggestions = new ObservableValue<Array<{ entry: T; suggestion: SuggestionResult }>>([])
14
- public onSelectSuggestion = new ObservableValue<T>()
15
14
 
16
15
  public keyPressListener = ((ev: KeyboardEvent) => {
17
16
  if (ev.key === 'Escape') {
@@ -38,13 +37,13 @@ export class SuggestManager<T> implements Disposable {
38
37
  this.term.dispose()
39
38
  this.selectedIndex.dispose()
40
39
  this.currentSuggestions.dispose()
41
- this.onSelectSuggestion.dispose()
40
+ super.dispose()
42
41
  }
43
42
 
44
43
  public selectSuggestion(index: number = this.selectedIndex.getValue()) {
45
44
  const selectedSuggestion = this.currentSuggestions.getValue()[index]
46
45
  this.isOpened.setValue(false)
47
- this.onSelectSuggestion.setValue(selectedSuggestion.entry)
46
+ this.emit('onSelectSuggestion', selectedSuggestion.entry)
48
47
  }
49
48
 
50
49
  private lastGetSuggestionOptions?: { injector: Injector; term: string }
@@ -74,6 +73,7 @@ export class SuggestManager<T> implements Disposable {
74
73
  private readonly getEntries: (term: string) => Promise<T[]>,
75
74
  private readonly getSuggestionEntry: (entry: T) => SuggestionResult,
76
75
  ) {
76
+ super()
77
77
  window.addEventListener('keyup', this.keyPressListener, true)
78
78
  window.addEventListener('click', this.clickOutsideListener, true)
79
79
  }
@@ -0,0 +1,37 @@
1
+ import { usingAsync } from '@furystack/utils'
2
+ import { describe, expect, it } from 'vitest'
3
+ import { CollectionService } from './collection-service.js'
4
+
5
+ const testEntries = [{ foo: 1 }, { foo: 2 }, { foo: 3 }]
6
+
7
+ describe('CollectionService', () => {
8
+ describe('Selection', () => {
9
+ it('Should add and remove selection', async () => {
10
+ await usingAsync(
11
+ new CollectionService({
12
+ defaultSettings: {},
13
+ loader: async () => ({ count: 3, entries: testEntries }),
14
+ }),
15
+ async (collectionService) => {
16
+ await collectionService.getEntries({})
17
+ testEntries.forEach((entry) => {
18
+ expect(collectionService.isSelected(entry)).toBe(false)
19
+ })
20
+
21
+ collectionService.addToSelection(testEntries[0])
22
+
23
+ expect(collectionService.isSelected(testEntries[0])).toBe(true)
24
+ expect(collectionService.isSelected(testEntries[1])).toBe(false)
25
+ expect(collectionService.isSelected(testEntries[2])).toBe(false)
26
+
27
+ collectionService.removeFromSelection(testEntries[0])
28
+
29
+ expect(collectionService.isSelected(testEntries[0])).toBe(false)
30
+
31
+ collectionService.toggleSelection(testEntries[1])
32
+ expect(collectionService.isSelected(testEntries[1])).toBe(true)
33
+ },
34
+ )
35
+ })
36
+ })
37
+ })
@@ -79,7 +79,7 @@ export class CollectionService<T> implements Disposable {
79
79
 
80
80
  public querySettings: ObservableValue<FindOptions<T, Array<keyof T>>>
81
81
 
82
- public focusedEntry = new ObservableValue<T | undefined>()
82
+ public focusedEntry = new ObservableValue<T | undefined>(undefined)
83
83
 
84
84
  public selection = new ObservableValue<T[]>([])
85
85
 
@@ -0,0 +1,26 @@
1
+ import { describe, expect, it } from 'vitest'
2
+ import type { NotyModel } from './noty-service.js'
3
+ import { NotyService } from './noty-service.js'
4
+ import { using } from '@furystack/utils'
5
+
6
+ describe('NotyService', () => {
7
+ it('Should add and removea noty', () => {
8
+ using(new NotyService(), (notyService) => {
9
+ expect(notyService.getNotyList()).toEqual([])
10
+
11
+ const exampleNoty: NotyModel = {
12
+ type: 'info',
13
+ title: 'Test',
14
+ body: 'Test',
15
+ }
16
+
17
+ notyService.emit('onNotyAdded', exampleNoty)
18
+
19
+ expect(notyService.getNotyList()).toEqual([exampleNoty])
20
+
21
+ notyService.emit('onNotyRemoved', exampleNoty)
22
+
23
+ expect(notyService.getNotyList()).toEqual([])
24
+ })
25
+ })
26
+ })
@@ -1,4 +1,4 @@
1
- import { ObservableValue } from '@furystack/utils'
1
+ import { EventHub } from '@furystack/utils'
2
2
  import { Injectable } from '@furystack/inject'
3
3
 
4
4
  export interface NotyModel {
@@ -9,19 +9,31 @@ export interface NotyModel {
9
9
  }
10
10
 
11
11
  @Injectable({ lifetime: 'singleton' })
12
- export class NotyService {
13
- public onNotyAdded = new ObservableValue<NotyModel>()
14
- public onNotyRemoved = new ObservableValue<NotyModel>()
12
+ export class NotyService extends EventHub<
13
+ 'onNotyAdded' | 'onNotyRemoved',
14
+ { onNotyAdded: NotyModel; onNotyRemoved: NotyModel }
15
+ > {
16
+ private notyList: NotyModel[] = []
15
17
 
16
- public notys = new ObservableValue<NotyModel[]>([])
18
+ public getNotyList = () => [...this.notyList]
17
19
 
18
- public addNoty = (noty: NotyModel) => {
19
- this.onNotyAdded.setValue(noty)
20
- this.notys.setValue([...this.notys.getValue(), noty])
20
+ private onNotyAddListener(newNoty: NotyModel) {
21
+ this.notyList = [...this.notyList, newNoty]
21
22
  }
22
23
 
23
- public removeNoty = (noty: NotyModel) => {
24
- this.onNotyRemoved.setValue(noty)
25
- this.notys.setValue(this.notys.getValue().filter((n) => n !== noty))
24
+ private onNotyRemoveListener(removedNoty: NotyModel) {
25
+ this.notyList = this.notyList.filter((noty) => noty !== removedNoty)
26
+ }
27
+
28
+ public dispose(): void {
29
+ this.notyList = []
30
+ this.removeListener('onNotyAdded', this.onNotyAddListener.bind(this))
31
+ this.removeListener('onNotyRemoved', this.onNotyRemoveListener.bind(this))
32
+ }
33
+
34
+ constructor() {
35
+ super()
36
+ this.addListener('onNotyAdded', this.onNotyAddListener.bind(this))
37
+ this.addListener('onNotyRemoved', this.onNotyRemoveListener.bind(this))
26
38
  }
27
39
  }