@dooboostore/simple-web-component 1.0.47 → 1.0.48

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 (132) hide show
  1. package/README.md +109 -11
  2. package/dist/cjs/decorators/addEventListener.js +45 -7
  3. package/dist/cjs/decorators/addEventListener.js.map +2 -2
  4. package/dist/cjs/decorators/elementDefine.js +225 -6
  5. package/dist/cjs/decorators/elementDefine.js.map +3 -3
  6. package/dist/cjs/decorators/index.js +2 -0
  7. package/dist/cjs/decorators/index.js.map +2 -2
  8. package/dist/cjs/decorators/mutationObserver.js +104 -0
  9. package/dist/cjs/decorators/mutationObserver.js.map +7 -0
  10. package/dist/cjs/decorators/query.js +13 -1
  11. package/dist/cjs/decorators/query.js.map +2 -2
  12. package/dist/cjs/decorators/resizeObserver.js +104 -0
  13. package/dist/cjs/decorators/resizeObserver.js.map +7 -0
  14. package/dist/cjs/examples/RxJSOperatorsExample.js +285 -0
  15. package/dist/cjs/examples/RxJSOperatorsExample.js.map +7 -0
  16. package/dist/esm/decorators/addEventListener.js +45 -7
  17. package/dist/esm/decorators/addEventListener.js.map +2 -2
  18. package/dist/esm/decorators/elementDefine.js +225 -6
  19. package/dist/esm/decorators/elementDefine.js.map +3 -3
  20. package/dist/esm/decorators/index.js +2 -0
  21. package/dist/esm/decorators/index.js.map +2 -2
  22. package/dist/esm/decorators/mutationObserver.js +85 -0
  23. package/dist/esm/decorators/mutationObserver.js.map +7 -0
  24. package/dist/esm/decorators/query.js +13 -1
  25. package/dist/esm/decorators/query.js.map +2 -2
  26. package/dist/esm/decorators/resizeObserver.js +85 -0
  27. package/dist/esm/decorators/resizeObserver.js.map +7 -0
  28. package/dist/esm/examples/RxJSOperatorsExample.js +266 -0
  29. package/dist/esm/examples/RxJSOperatorsExample.js.map +7 -0
  30. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +446 -13
  31. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
  32. package/dist/types/decorators/addEventListener.d.ts +24 -5
  33. package/dist/types/decorators/addEventListener.d.ts.map +1 -1
  34. package/dist/types/decorators/elementDefine.d.ts +14 -0
  35. package/dist/types/decorators/elementDefine.d.ts.map +1 -1
  36. package/dist/types/decorators/index.d.ts +2 -0
  37. package/dist/types/decorators/index.d.ts.map +1 -1
  38. package/dist/types/decorators/mutationObserver.d.ts +36 -0
  39. package/dist/types/decorators/mutationObserver.d.ts.map +1 -0
  40. package/dist/types/decorators/query.d.ts +12 -0
  41. package/dist/types/decorators/query.d.ts.map +1 -1
  42. package/dist/types/decorators/resizeObserver.d.ts +37 -0
  43. package/dist/types/decorators/resizeObserver.d.ts.map +1 -0
  44. package/dist/types/examples/RxJSOperatorsExample.d.ts +94 -0
  45. package/dist/types/examples/RxJSOperatorsExample.d.ts.map +1 -0
  46. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +446 -13
  47. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
  48. package/package.json +4 -4
  49. package/src/decorators/addEventListener.ts +52 -9
  50. package/src/decorators/elementDefine.ts +330 -47
  51. package/src/decorators/index.ts +2 -0
  52. package/src/decorators/mutationObserver.ts +128 -0
  53. package/src/decorators/query.ts +23 -0
  54. package/src/decorators/resizeObserver.ts +129 -0
  55. package/src/examples/RxJSOperatorsExample.ts +279 -0
  56. package/dist/cjs/elements/tt/SwcAppMixin.js +0 -1
  57. package/dist/cjs/elements/tt/SwcAppMixin.js.map +0 -7
  58. package/dist/cjs/elements/tt/SwcAsync.js +0 -1
  59. package/dist/cjs/elements/tt/SwcAsync.js.map +0 -7
  60. package/dist/cjs/elements/tt/SwcAsyncTemplate.js +0 -1
  61. package/dist/cjs/elements/tt/SwcAsyncTemplate.js.map +0 -7
  62. package/dist/cjs/elements/tt/SwcChoose.js +0 -1
  63. package/dist/cjs/elements/tt/SwcChoose.js.map +0 -7
  64. package/dist/cjs/elements/tt/SwcChooseTemplate.js +0 -1
  65. package/dist/cjs/elements/tt/SwcChooseTemplate.js.map +0 -7
  66. package/dist/cjs/elements/tt/SwcIf.js +0 -1
  67. package/dist/cjs/elements/tt/SwcIf.js.map +0 -7
  68. package/dist/cjs/elements/tt/SwcIfTemplate.js +0 -1
  69. package/dist/cjs/elements/tt/SwcIfTemplate.js.map +0 -7
  70. package/dist/cjs/elements/tt/SwcLoop.js +0 -1
  71. package/dist/cjs/elements/tt/SwcLoop.js.map +0 -7
  72. package/dist/cjs/elements/tt/SwcLoopTemplate.js +0 -1
  73. package/dist/cjs/elements/tt/SwcLoopTemplate.js.map +0 -7
  74. package/dist/cjs/elements/tt/SwcSubTemplates.js +0 -1
  75. package/dist/cjs/elements/tt/SwcSubTemplates.js.map +0 -7
  76. package/dist/cjs/elements/tt/register.js +0 -1
  77. package/dist/cjs/elements/tt/register.js.map +0 -7
  78. package/dist/esm/elements/tt/SwcAppMixin.js +0 -1
  79. package/dist/esm/elements/tt/SwcAppMixin.js.map +0 -7
  80. package/dist/esm/elements/tt/SwcAsync.js +0 -1
  81. package/dist/esm/elements/tt/SwcAsync.js.map +0 -7
  82. package/dist/esm/elements/tt/SwcAsyncTemplate.js +0 -1
  83. package/dist/esm/elements/tt/SwcAsyncTemplate.js.map +0 -7
  84. package/dist/esm/elements/tt/SwcChoose.js +0 -1
  85. package/dist/esm/elements/tt/SwcChoose.js.map +0 -7
  86. package/dist/esm/elements/tt/SwcChooseTemplate.js +0 -1
  87. package/dist/esm/elements/tt/SwcChooseTemplate.js.map +0 -7
  88. package/dist/esm/elements/tt/SwcIf.js +0 -1
  89. package/dist/esm/elements/tt/SwcIf.js.map +0 -7
  90. package/dist/esm/elements/tt/SwcIfTemplate.js +0 -1
  91. package/dist/esm/elements/tt/SwcIfTemplate.js.map +0 -7
  92. package/dist/esm/elements/tt/SwcLoop.js +0 -1
  93. package/dist/esm/elements/tt/SwcLoop.js.map +0 -7
  94. package/dist/esm/elements/tt/SwcLoopTemplate.js +0 -1
  95. package/dist/esm/elements/tt/SwcLoopTemplate.js.map +0 -7
  96. package/dist/esm/elements/tt/SwcSubTemplates.js +0 -1
  97. package/dist/esm/elements/tt/SwcSubTemplates.js.map +0 -7
  98. package/dist/esm/elements/tt/register.js +0 -1
  99. package/dist/esm/elements/tt/register.js.map +0 -7
  100. package/dist/types/elements/tt/SwcAppMixin.d.ts +0 -1
  101. package/dist/types/elements/tt/SwcAppMixin.d.ts.map +0 -1
  102. package/dist/types/elements/tt/SwcAsync.d.ts +0 -1
  103. package/dist/types/elements/tt/SwcAsync.d.ts.map +0 -1
  104. package/dist/types/elements/tt/SwcAsyncTemplate.d.ts +0 -1
  105. package/dist/types/elements/tt/SwcAsyncTemplate.d.ts.map +0 -1
  106. package/dist/types/elements/tt/SwcChoose.d.ts +0 -1
  107. package/dist/types/elements/tt/SwcChoose.d.ts.map +0 -1
  108. package/dist/types/elements/tt/SwcChooseTemplate.d.ts +0 -1
  109. package/dist/types/elements/tt/SwcChooseTemplate.d.ts.map +0 -1
  110. package/dist/types/elements/tt/SwcIf.d.ts +0 -1
  111. package/dist/types/elements/tt/SwcIf.d.ts.map +0 -1
  112. package/dist/types/elements/tt/SwcIfTemplate.d.ts +0 -1
  113. package/dist/types/elements/tt/SwcIfTemplate.d.ts.map +0 -1
  114. package/dist/types/elements/tt/SwcLoop.d.ts +0 -1
  115. package/dist/types/elements/tt/SwcLoop.d.ts.map +0 -1
  116. package/dist/types/elements/tt/SwcLoopTemplate.d.ts +0 -1
  117. package/dist/types/elements/tt/SwcLoopTemplate.d.ts.map +0 -1
  118. package/dist/types/elements/tt/SwcSubTemplates.d.ts +0 -1
  119. package/dist/types/elements/tt/SwcSubTemplates.d.ts.map +0 -1
  120. package/dist/types/elements/tt/register.d.ts +0 -1
  121. package/dist/types/elements/tt/register.d.ts.map +0 -1
  122. package/src/elements/tt/SwcAppMixin.ts +0 -13
  123. package/src/elements/tt/SwcAsync.ts +0 -139
  124. package/src/elements/tt/SwcAsyncTemplate.ts +0 -126
  125. package/src/elements/tt/SwcChoose.ts +0 -182
  126. package/src/elements/tt/SwcChooseTemplate.ts +0 -229
  127. package/src/elements/tt/SwcIf.ts +0 -145
  128. package/src/elements/tt/SwcIfTemplate.ts +0 -158
  129. package/src/elements/tt/SwcLoop.ts +0 -222
  130. package/src/elements/tt/SwcLoopTemplate.ts +0 -255
  131. package/src/elements/tt/SwcSubTemplates.ts +0 -6
  132. package/src/elements/tt/register.ts +0 -720
@@ -11,6 +11,9 @@ export interface AddEventListenerBaseOptions<TEvent extends Event = Event> exten
11
11
  currentThis: any;
12
12
  helper: HelperHostSet;
13
13
  }) => boolean;
14
+ removeListener?: (target: Element, optionValue: AddEventListenerBaseOptions<TEvent> & SwcQueryOptions & {
15
+ delegate?: boolean;
16
+ }) => void;
14
17
  debounceTime?: number;
15
18
  throttleTime?: number;
16
19
  distinctUntilChanged?: boolean | ((prev: TEvent, curr: TEvent) => boolean);
@@ -29,18 +32,22 @@ export declare function addEventListener<TEvent extends Event = Event>(target: S
29
32
  export declare function addEventListener<TEvent extends Event = Event>(selector: EventListenerSelector, type: string, options?: AddEventListenerBaseOptions<TEvent> & SwcQueryOptions & {
30
33
  delegate?: boolean;
31
34
  }): MethodDecorator;
35
+ /**
36
+ * @addEventListener(type, options?) — 셀렉터 생략 시 $this(컴포넌트 자신)로 바인딩
37
+ */
38
+ export declare function addEventListener<TEvent extends Event = Event>(type: string, options?: AddEventListenerBaseOptions<TEvent> & SwcQueryOptions & {
39
+ delegate?: boolean;
40
+ }): MethodDecorator;
32
41
  export declare function addEventListenerDelegateLightDom<TEvent extends Event = Event>(selector: EventListenerSelector, type: string, options?: Omit<AddEventListenerBaseOptions<TEvent>, 'delegate'>): MethodDecorator;
33
42
  export declare function addEventListenerDelegateShadowDom<TEvent extends Event = Event>(selector: EventListenerSelector, type: string, options?: Omit<AddEventListenerBaseOptions<TEvent>, 'delegate'>): MethodDecorator;
34
43
  export declare function addEventListenerDelegateAllDom<TEvent extends Event = Event>(selector: EventListenerSelector, type: string, options?: Omit<AddEventListenerBaseOptions<TEvent>, 'delegate'>): MethodDecorator;
35
44
  export declare function addEventListenerDelegate<TEvent extends Event = Event>(selector: EventListenerSelector, type: string, options?: Omit<AddEventListenerBaseOptions<TEvent>, 'delegate'>): MethodDecorator;
45
+ export declare function addEventListenerLightDom<TEvent extends Event = Event>(selector: EventListenerSelector, type: string, options?: AddEventListenerBaseOptions<TEvent>): MethodDecorator;
46
+ export declare function addEventListenerShadowDom<TEvent extends Event = Event>(selector: EventListenerSelector, type: string, options?: AddEventListenerBaseOptions<TEvent>): MethodDecorator;
47
+ export declare function addEventListenerAllDom<TEvent extends Event = Event>(selector: EventListenerSelector, type: string, options?: AddEventListenerBaseOptions<TEvent>): MethodDecorator;
36
48
  /**
37
49
  * @addEventListenerThis decorator - simplified version of @addEventListener for $this selector
38
50
  */
39
- export declare const event: typeof addEventListener;
40
- export declare const eventDelegateLightDom: typeof addEventListenerDelegateLightDom;
41
- export declare const eventDelegateShadowDom: typeof addEventListenerDelegateShadowDom;
42
- export declare const eventDelegateAllDom: typeof addEventListenerDelegateAllDom;
43
- export declare const eventDelegate: typeof addEventListenerDelegate;
44
51
  export declare function addEventListenerThis<TEvent extends Event = Event>(type: string, options?: AddEventListenerBaseOptions<TEvent> & SwcQueryOptions): MethodDecorator;
45
52
  /**
46
53
  * @addEventListenerAppHost decorator - simplified version of @addEventListener for $appHost selector
@@ -48,5 +55,17 @@ export declare function addEventListenerThis<TEvent extends Event = Event>(type:
48
55
  export declare function addEventListenerAppHost<TEvent extends Event = Event>(type: string, options?: AddEventListenerBaseOptions<TEvent> & SwcQueryOptions): MethodDecorator;
49
56
  export declare function addEventListenerWindow<TEvent extends Event = Event>(type: string, options?: AddEventListenerBaseOptions<TEvent> & SwcQueryOptions): MethodDecorator;
50
57
  export declare function addEventListenerDocument<TEvent extends Event = Event>(type: string, options?: AddEventListenerBaseOptions<TEvent> & SwcQueryOptions): MethodDecorator;
58
+ export declare const event: typeof addEventListener;
59
+ export declare const eventDelegateLightDom: typeof addEventListenerDelegateLightDom;
60
+ export declare const eventDelegateShadowDom: typeof addEventListenerDelegateShadowDom;
61
+ export declare const eventDelegateAllDom: typeof addEventListenerDelegateAllDom;
62
+ export declare const eventDelegate: typeof addEventListenerDelegate;
63
+ export declare const eventLightDom: typeof addEventListenerLightDom;
64
+ export declare const eventShadowDom: typeof addEventListenerShadowDom;
65
+ export declare const eventAllDom: typeof addEventListenerAllDom;
66
+ export declare const eventAppHost: typeof addEventListenerAppHost;
67
+ export declare const eventWindow: typeof addEventListenerWindow;
68
+ export declare const eventDocument: typeof addEventListenerDocument;
69
+ export declare const eventThis: typeof addEventListenerThis;
51
70
  export declare const getAddEventListenerMetadata: (target: any) => AddEventListenerMetadata<Event>[] | undefined;
52
71
  //# sourceMappingURL=addEventListener.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addEventListener.d.ts","sourceRoot":"","sources":["../../../src/decorators/addEventListener.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"addEventListener.d.ts","sourceRoot":"","sources":["../../../src/decorators/addEventListener.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,18 @@
1
1
  export declare const ELEMENT_CONFIG_KEY: unique symbol;
2
+ /** 바인딩된 이벤트 리스너 한 건 */
3
+ export interface BoundListener {
4
+ target: EventTarget;
5
+ type: string;
6
+ handler: EventListener;
7
+ options: AddEventListenerOptions;
8
+ onRemoves?: Array<{
9
+ fn: (target: EventTarget, optionValue: unknown) => void;
10
+ opts: unknown;
11
+ }>;
12
+ subscription?: {
13
+ unsubscribe: () => void;
14
+ };
15
+ }
2
16
  export interface ElementConfig {
3
17
  extends?: string;
4
18
  observedAttributes?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"elementDefine.d.ts","sourceRoot":"","sources":["../../../src/decorators/elementDefine.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,kBAAkB,eAAoD,CAAC;AAEpF,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,qBAAqB,CAAC,EAAE,GAAG,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;CACzC;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,gBAAgB,GAAI,QAAQ,GAAG,KAAG,eAAe,GAAG,SAGhE,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,MAAM,GAAG,SA4FnC,CAAC;AAyLF,eAAO,MAAM,aAAa,GACvB,MAAM,MAAM,EAAE,SAAQ,OAAO,CAAC,aAAa,CAAM,KAAG,cA8elD,CAAC"}
1
+ {"version":3,"file":"elementDefine.d.ts","sourceRoot":"","sources":["../../../src/decorators/elementDefine.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,kBAAkB,eAAoD,CAAC;AAEpF,uBAAuB;AACvB,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,WAAW,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,uBAAuB,CAAC;IACjC,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC9F,YAAY,CAAC,EAAE;QAAE,WAAW,EAAE,MAAM,IAAI,CAAA;KAAE,CAAC;CAC5C;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,qBAAqB,CAAC,EAAE,GAAG,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;CACzC;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,gBAAgB,GAAI,QAAQ,GAAG,KAAG,eAAe,GAAG,SAGhE,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,MAAM,GAAG,SA2FnC,CAAC;AAyLF,eAAO,MAAM,aAAa,GACvB,MAAM,MAAM,EAAE,SAAQ,OAAO,CAAC,aAAa,CAAM,KAAG,cA4vBlD,CAAC"}
@@ -1,4 +1,6 @@
1
1
  export * from './addEventListener';
2
+ export * from './mutationObserver';
3
+ export * from './resizeObserver';
2
4
  export * from './applyAttribute';
3
5
  export * from './elementDefine';
4
6
  export * from './changedAttribute';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC;AACvD,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC;AACvD,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { SpecialSelector, SwcQueryOptions, HelperHostSet } from '../types';
2
+ import { EventListenerSelector } from './addEventListener';
3
+ export interface MutationObserverBaseOptions extends MutationObserverInit, SwcQueryOptions {
4
+ delegate?: boolean;
5
+ filter?: (matchedEls: HTMLElement[], meta: {
6
+ currentThis: any;
7
+ helper: HelperHostSet;
8
+ }) => boolean;
9
+ removeObserver?: (target: Element, optionValue: MutationObserverBaseOptions) => void;
10
+ }
11
+ export interface MutationObserverMetadata {
12
+ propertyKey: string | symbol;
13
+ selector: EventListenerSelector;
14
+ options: MutationObserverBaseOptions;
15
+ }
16
+ export declare const MUTATION_OBSERVER_METADATA_KEY: unique symbol;
17
+ export declare function mutationObserver(target: SpecialSelector, options?: MutationObserverBaseOptions): MethodDecorator;
18
+ export declare function mutationObserver(selector: EventListenerSelector, options?: MutationObserverBaseOptions): MethodDecorator;
19
+ export declare function mutationObserver(options?: MutationObserverBaseOptions): MethodDecorator;
20
+ export declare function mutationObserverThis<TEvent extends Event = Event>(options?: MutationObserverBaseOptions): MethodDecorator;
21
+ export declare function mutationObserverDelegateLight(selector: EventListenerSelector, options?: Omit<MutationObserverBaseOptions, 'delegate'>): MethodDecorator;
22
+ export declare function mutationObserverDelegateLight(options?: Omit<MutationObserverBaseOptions, 'delegate'>): MethodDecorator;
23
+ export declare function mutationObserverDelegateShadow(selector: EventListenerSelector, options?: Omit<MutationObserverBaseOptions, 'delegate'>): MethodDecorator;
24
+ export declare function mutationObserverDelegateShadow(options?: Omit<MutationObserverBaseOptions, 'delegate'>): MethodDecorator;
25
+ export declare function mutationObserverDelegateAll(selector: EventListenerSelector, options?: Omit<MutationObserverBaseOptions, 'delegate'>): MethodDecorator;
26
+ export declare function mutationObserverDelegateAll(options?: Omit<MutationObserverBaseOptions, 'delegate'>): MethodDecorator;
27
+ export declare function mutationObserverDelegate(selector: EventListenerSelector, options?: Omit<MutationObserverBaseOptions, 'delegate'>): MethodDecorator;
28
+ export declare function mutationObserverDelegate(options?: Omit<MutationObserverBaseOptions, 'delegate'>): MethodDecorator;
29
+ export declare function mutationObserverLight(selector: EventListenerSelector, options?: MutationObserverBaseOptions): MethodDecorator;
30
+ export declare function mutationObserverLight(options?: MutationObserverBaseOptions): MethodDecorator;
31
+ export declare function mutationObserverShadow(selector: EventListenerSelector, options?: MutationObserverBaseOptions): MethodDecorator;
32
+ export declare function mutationObserverShadow(options?: MutationObserverBaseOptions): MethodDecorator;
33
+ export declare function mutationObserverAll(selector: EventListenerSelector, options?: MutationObserverBaseOptions): MethodDecorator;
34
+ export declare function mutationObserverAll(options?: MutationObserverBaseOptions): MethodDecorator;
35
+ export declare function getMutationObserverMetadata(target: any): MutationObserverMetadata[] | undefined;
36
+ //# sourceMappingURL=mutationObserver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutationObserver.d.ts","sourceRoot":"","sources":["../../../src/decorators/mutationObserver.ts"],"names":[],"mappings":"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"}
@@ -19,4 +19,16 @@ export declare function query(target: Object, propertyKey: string | symbol, desc
19
19
  export declare function query(selector: string | ((currentThis: any, helper: HelperHostSet) => Node | NodeList | Element | Element[] | null), options?: QueryOptions): PropertyDecorator;
20
20
  export declare function query(options?: QueryOptions): PropertyDecorator;
21
21
  export declare const getQueryMetadata: (target: any) => QueryMetadata[];
22
+ /**
23
+ * @queryShadow(selector, options?) — shadow DOM에서 단일 요소를 쿼리
24
+ */
25
+ export declare function queryShadow(selector: string | ((currentThis: any, helper: HelperHostSet) => Node | NodeList | Element | Element[] | null), options?: Omit<QueryOptions, 'root'>): PropertyDecorator;
26
+ /**
27
+ * @queryLight(selector, options?) — light DOM에서 단일 요소를 쿼리
28
+ */
29
+ export declare function queryLight(selector: string | ((currentThis: any, helper: HelperHostSet) => Node | NodeList | Element | Element[] | null), options?: Omit<QueryOptions, 'root'>): PropertyDecorator;
30
+ /**
31
+ * @queryAll(selector, options?) — shadow+light 모두에서 요소를 쿼리
32
+ */
33
+ export declare function queryAllRoots(selector: string | ((currentThis: any, helper: HelperHostSet) => Node | NodeList | Element | Element[] | null), options?: Omit<QueryOptions, 'root'>): PropertyDecorator;
22
34
  //# sourceMappingURL=query.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/decorators/query.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE1D,MAAM,WAAW,YAAa,SAAQ,eAAe;IACnD;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE;QAAE,WAAW,EAAE,GAAG,CAAC;QAAC,MAAM,EAAE,aAAa,CAAA;KAAE,KAAK,OAAO,CAAC;CAC9F;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/G,OAAO,EAAE,YAAY,CAAE;CACxB;AAED,eAAO,MAAM,kBAAkB,eAA2C,CAAC;AAE3E,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAAC;AAChI,wBAAgB,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,iBAAiB,CAAC;AACjL,wBAAgB,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,iBAAiB,CAAC;AAwJjE,eAAO,MAAM,gBAAgB,GAAI,QAAQ,GAAG,KAAG,aAAa,EAG3D,CAAC"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/decorators/query.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE1D,MAAM,WAAW,YAAa,SAAQ,eAAe;IACnD;;;OAGG;IACH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE;QAAE,WAAW,EAAE,GAAG,CAAC;QAAC,MAAM,EAAE,aAAa,CAAA;KAAE,KAAK,OAAO,CAAC;CAC9F;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC/G,OAAO,EAAE,YAAY,CAAE;CACxB;AAED,eAAO,MAAM,kBAAkB,eAA2C,CAAC;AAE3E,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,CAAC,EAAE,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAAC;AAChI,wBAAgB,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,iBAAiB,CAAC;AACjL,wBAAgB,KAAK,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,iBAAiB,CAAC;AAwJjE,eAAO,MAAM,gBAAgB,GAAI,QAAQ,GAAG,KAAG,aAAa,EAG3D,CAAC;AAIF;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,iBAAiB,CAEnM;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,iBAAiB,CAElM;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,aAAa,KAAK,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,GAAG,iBAAiB,CAErM"}
@@ -0,0 +1,37 @@
1
+ import { SpecialSelector, SwcQueryOptions, HelperHostSet } from '../types';
2
+ import { EventListenerSelector } from './addEventListener';
3
+ export interface ResizeObserverOptions extends SwcQueryOptions {
4
+ delegate?: boolean;
5
+ box?: 'content-box' | 'border-box' | 'device-pixel-content-box';
6
+ filter?: (matchedEls: HTMLElement[], meta: {
7
+ currentThis: any;
8
+ helper: HelperHostSet;
9
+ }) => boolean;
10
+ removeObserver?: (target: Element, optionValue: ResizeObserverOptions) => void;
11
+ }
12
+ export interface ResizeObserverMetadata {
13
+ propertyKey: string | symbol;
14
+ selector: EventListenerSelector;
15
+ options: ResizeObserverOptions;
16
+ }
17
+ export declare const RESIZE_OBSERVER_METADATA_KEY: unique symbol;
18
+ export declare function resizeObserver(target: SpecialSelector, options?: ResizeObserverOptions): MethodDecorator;
19
+ export declare function resizeObserver(selector: EventListenerSelector, options?: ResizeObserverOptions): MethodDecorator;
20
+ export declare function resizeObserver(options?: ResizeObserverOptions): MethodDecorator;
21
+ export declare function resizeObserverThis(options?: ResizeObserverOptions): MethodDecorator;
22
+ export declare function resizeObserverDelegateLight(selector: EventListenerSelector, options?: Omit<ResizeObserverOptions, 'delegate'>): MethodDecorator;
23
+ export declare function resizeObserverDelegateLight(options?: Omit<ResizeObserverOptions, 'delegate'>): MethodDecorator;
24
+ export declare function resizeObserverDelegateShadow(selector: EventListenerSelector, options?: Omit<ResizeObserverOptions, 'delegate'>): MethodDecorator;
25
+ export declare function resizeObserverDelegateShadow(options?: Omit<ResizeObserverOptions, 'delegate'>): MethodDecorator;
26
+ export declare function resizeObserverDelegateAll(selector: EventListenerSelector, options?: Omit<ResizeObserverOptions, 'delegate'>): MethodDecorator;
27
+ export declare function resizeObserverDelegateAll(options?: Omit<ResizeObserverOptions, 'delegate'>): MethodDecorator;
28
+ export declare function resizeObserverDelegate(selector: EventListenerSelector, options?: Omit<ResizeObserverOptions, 'delegate'>): MethodDecorator;
29
+ export declare function resizeObserverDelegate(options?: Omit<ResizeObserverOptions, 'delegate'>): MethodDecorator;
30
+ export declare function resizeObserverLight(selector: EventListenerSelector, options?: ResizeObserverOptions): MethodDecorator;
31
+ export declare function resizeObserverLight(options?: ResizeObserverOptions): MethodDecorator;
32
+ export declare function resizeObserverShadow(selector: EventListenerSelector, options?: ResizeObserverOptions): MethodDecorator;
33
+ export declare function resizeObserverShadow(options?: ResizeObserverOptions): MethodDecorator;
34
+ export declare function resizeObserverAll(selector: EventListenerSelector, options?: ResizeObserverOptions): MethodDecorator;
35
+ export declare function resizeObserverAll(options?: ResizeObserverOptions): MethodDecorator;
36
+ export declare function getResizeObserverMetadata(target: any): ResizeObserverMetadata[] | undefined;
37
+ //# sourceMappingURL=resizeObserver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resizeObserver.d.ts","sourceRoot":"","sources":["../../../src/decorators/resizeObserver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Example: Using RxJS-like Operators with @addEventListener
3
+ *
4
+ * This example demonstrates how to use debounceTime, throttleTime, and distinctUntilChanged
5
+ * operators with the @addEventListener decorator.
6
+ */
7
+ /**
8
+ * Example 1: Search Component with Debounce
9
+ *
10
+ * Waits 1 second after user stops typing before performing search.
11
+ * Prevents excessive API calls during typing.
12
+ */
13
+ export declare class SearchComponent extends HTMLElement {
14
+ private results;
15
+ onSearchInput(event: Event): Promise<void>;
16
+ private renderResults;
17
+ }
18
+ /**
19
+ * Example 2: Window Resize Handler with Throttle
20
+ *
21
+ * Recalculates layout at most 4 times per second (every 250ms).
22
+ * Prevents performance issues from excessive resize calculations.
23
+ */
24
+ export declare class ResponsiveLayout extends HTMLElement {
25
+ onWindowResize(event: Event): void;
26
+ private updateLayout;
27
+ }
28
+ /**
29
+ * Example 3: Form Input with Debounce + Distinct
30
+ *
31
+ * Validates field only when:
32
+ * 1. User stops typing (debounce 300ms)
33
+ * 2. AND the value actually changed (distinct)
34
+ */
35
+ export declare class FormInput extends HTMLElement {
36
+ onFormInput(event: Event): void;
37
+ private validateField;
38
+ }
39
+ /**
40
+ * Example 4: Scroll Event with Throttle
41
+ *
42
+ * Checks if user scrolled to bottom at most 10 times per second.
43
+ * Prevents excessive "load more" API calls.
44
+ */
45
+ export declare class InfiniteScroll extends HTMLElement {
46
+ private isLoading;
47
+ onScroll(event: Event): void;
48
+ private isNearBottom;
49
+ private loadMoreContent;
50
+ }
51
+ /**
52
+ * Example 5: Custom Comparison with Distinct
53
+ *
54
+ * Only fires when the input value length changes.
55
+ * Ignores changes that don't affect the length.
56
+ */
57
+ export declare class LengthTracker extends HTMLElement {
58
+ onInputChange(event: Event): void;
59
+ private updateLengthDisplay;
60
+ }
61
+ /**
62
+ * Example 6: Complex Scenario - Auto-save with Multiple Operators
63
+ *
64
+ * Combines debounce and distinct for intelligent auto-save:
65
+ * - Waits 2 seconds after user stops typing
66
+ * - Only saves if content actually changed
67
+ * - Prevents unnecessary save operations
68
+ */
69
+ export declare class AutoSaveEditor extends HTMLElement {
70
+ private lastSavedContent;
71
+ onContentChange(event: Event): Promise<void>;
72
+ private saveContent;
73
+ private showSaveIndicator;
74
+ }
75
+ /**
76
+ * Example 7: Keyboard Shortcut Handler with Throttle
77
+ *
78
+ * Prevents rapid repeated execution of keyboard shortcuts.
79
+ */
80
+ export declare class KeyboardHandler extends HTMLElement {
81
+ onSaveShortcut(event: KeyboardEvent): void;
82
+ private handleSave;
83
+ }
84
+ /**
85
+ * Example 8: Mouse Move Tracking with Throttle
86
+ *
87
+ * Tracks mouse position at most 10 times per second.
88
+ * Useful for analytics or interactive features.
89
+ */
90
+ export declare class MouseTracker extends HTMLElement {
91
+ onMouseMove(event: MouseEvent): void;
92
+ private updateCursorPosition;
93
+ }
94
+ //# sourceMappingURL=RxJSOperatorsExample.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RxJSOperatorsExample.d.ts","sourceRoot":"","sources":["../../../src/examples/RxJSOperatorsExample.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;GAKG;AACH,qBACa,eAAgB,SAAQ,WAAW;IAC9C,OAAO,CAAC,OAAO,CAAa;IAGtB,aAAa,CAAC,KAAK,EAAE,KAAK;IAmBhC,OAAO,CAAC,aAAa;CAItB;AAED;;;;;GAKG;AACH,qBACa,gBAAiB,SAAQ,WAAW;IAE/C,cAAc,CAAC,KAAK,EAAE,KAAK;IAQ3B,OAAO,CAAC,YAAY;CAUrB;AAED;;;;;;GAMG;AACH,qBACa,SAAU,SAAQ,WAAW;IAKxC,WAAW,CAAC,KAAK,EAAE,KAAK;IASxB,OAAO,CAAC,aAAa;CAKtB;AAED;;;;;GAKG;AACH,qBACa,cAAe,SAAQ,WAAW;IAC7C,OAAO,CAAC,SAAS,CAAS;IAG1B,QAAQ,CAAC,KAAK,EAAE,KAAK;IASrB,OAAO,CAAC,YAAY;YAQN,eAAe;CAU9B;AAED;;;;;GAKG;AACH,qBACa,aAAc,SAAQ,WAAW;IAO5C,aAAa,CAAC,KAAK,EAAE,KAAK;IAQ1B,OAAO,CAAC,mBAAmB;CAO5B;AAED;;;;;;;GAOG;AACH,qBACa,cAAe,SAAQ,WAAW;IAC7C,OAAO,CAAC,gBAAgB,CAAM;IASxB,eAAe,CAAC,KAAK,EAAE,KAAK;YAWpB,WAAW;IAkBzB,OAAO,CAAC,iBAAiB;CAO1B;AAED;;;;GAIG;AACH,qBACa,eAAgB,SAAQ,WAAW;IAQ9C,cAAc,CAAC,KAAK,EAAE,aAAa;IAMnC,OAAO,CAAC,UAAU;CAInB;AAED;;;;;GAKG;AACH,qBACa,YAAa,SAAQ,WAAW;IAE3C,WAAW,CAAC,KAAK,EAAE,UAAU;IAQ7B,OAAO,CAAC,oBAAoB;CAI7B"}