@dooboostore/simple-web-component 1.0.47 → 1.0.49

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 (233) hide show
  1. package/README.md +223 -27
  2. package/dist/cjs/config/config.js +1 -1
  3. package/dist/cjs/config/config.js.map +2 -2
  4. package/dist/cjs/decorators/addEventListener.js +412 -16
  5. package/dist/cjs/decorators/addEventListener.js.map +3 -3
  6. package/dist/cjs/decorators/applyAttribute.js +25 -0
  7. package/dist/cjs/decorators/applyAttribute.js.map +2 -2
  8. package/dist/cjs/decorators/applyClass.js +49 -18
  9. package/dist/cjs/decorators/applyClass.js.map +3 -3
  10. package/dist/cjs/decorators/applyNode.js +67 -1
  11. package/dist/cjs/decorators/applyNode.js.map +3 -3
  12. package/dist/cjs/decorators/applyProperty.js +101 -3
  13. package/dist/cjs/decorators/applyProperty.js.map +2 -2
  14. package/dist/cjs/decorators/applyStyle.js +36 -5
  15. package/dist/cjs/decorators/applyStyle.js.map +2 -2
  16. package/dist/cjs/decorators/changedAttribute.js +39 -0
  17. package/dist/cjs/decorators/changedAttribute.js.map +2 -2
  18. package/dist/cjs/decorators/elementDefine.js +244 -225
  19. package/dist/cjs/decorators/elementDefine.js.map +3 -3
  20. package/dist/cjs/decorators/emitCustomEvent.js +55 -0
  21. package/dist/cjs/decorators/emitCustomEvent.js.map +2 -2
  22. package/dist/cjs/decorators/index.js +5 -1
  23. package/dist/cjs/decorators/index.js.map +2 -2
  24. package/dist/cjs/decorators/intersectionObserver.js +209 -0
  25. package/dist/cjs/decorators/intersectionObserver.js.map +7 -0
  26. package/dist/cjs/decorators/mutationObserver.js +244 -0
  27. package/dist/cjs/decorators/mutationObserver.js.map +7 -0
  28. package/dist/cjs/decorators/query.js +129 -102
  29. package/dist/cjs/decorators/query.js.map +2 -2
  30. package/dist/cjs/decorators/resizeObserver.js +191 -0
  31. package/dist/cjs/decorators/resizeObserver.js.map +7 -0
  32. package/dist/cjs/decorators/setInterval.js +82 -0
  33. package/dist/cjs/decorators/setInterval.js.map +7 -0
  34. package/dist/cjs/decorators/setTimeout.js +82 -0
  35. package/dist/cjs/decorators/setTimeout.js.map +7 -0
  36. package/dist/cjs/decorators/subscribeSwcAppMessageWhileConnected.js +9 -0
  37. package/dist/cjs/decorators/subscribeSwcAppMessageWhileConnected.js.map +2 -2
  38. package/dist/cjs/decorators/subscribeSwcAppRouteChangeWhileConnected.js +9 -0
  39. package/dist/cjs/decorators/subscribeSwcAppRouteChangeWhileConnected.js.map +2 -2
  40. package/dist/cjs/examples/RxJSOperatorsExample.js +285 -0
  41. package/dist/cjs/examples/RxJSOperatorsExample.js.map +7 -0
  42. package/dist/cjs/types/index.js.map +1 -1
  43. package/dist/esm/config/config.js +1 -1
  44. package/dist/esm/config/config.js.map +2 -2
  45. package/dist/esm/decorators/addEventListener.js +413 -16
  46. package/dist/esm/decorators/addEventListener.js.map +3 -3
  47. package/dist/esm/decorators/applyAttribute.js +25 -0
  48. package/dist/esm/decorators/applyAttribute.js.map +2 -2
  49. package/dist/esm/decorators/applyClass.js +49 -18
  50. package/dist/esm/decorators/applyClass.js.map +3 -3
  51. package/dist/esm/decorators/applyNode.js +67 -1
  52. package/dist/esm/decorators/applyNode.js.map +3 -3
  53. package/dist/esm/decorators/applyProperty.js +101 -3
  54. package/dist/esm/decorators/applyProperty.js.map +2 -2
  55. package/dist/esm/decorators/applyStyle.js +36 -5
  56. package/dist/esm/decorators/applyStyle.js.map +2 -2
  57. package/dist/esm/decorators/changedAttribute.js +40 -0
  58. package/dist/esm/decorators/changedAttribute.js.map +2 -2
  59. package/dist/esm/decorators/elementDefine.js +249 -230
  60. package/dist/esm/decorators/elementDefine.js.map +3 -3
  61. package/dist/esm/decorators/emitCustomEvent.js +55 -0
  62. package/dist/esm/decorators/emitCustomEvent.js.map +2 -2
  63. package/dist/esm/decorators/index.js +5 -1
  64. package/dist/esm/decorators/index.js.map +2 -2
  65. package/dist/esm/decorators/intersectionObserver.js +191 -0
  66. package/dist/esm/decorators/intersectionObserver.js.map +7 -0
  67. package/dist/esm/decorators/mutationObserver.js +226 -0
  68. package/dist/esm/decorators/mutationObserver.js.map +7 -0
  69. package/dist/esm/decorators/query.js +129 -102
  70. package/dist/esm/decorators/query.js.map +2 -2
  71. package/dist/esm/decorators/resizeObserver.js +173 -0
  72. package/dist/esm/decorators/resizeObserver.js.map +7 -0
  73. package/dist/esm/decorators/setInterval.js +64 -0
  74. package/dist/esm/decorators/setInterval.js.map +7 -0
  75. package/dist/esm/decorators/setTimeout.js +64 -0
  76. package/dist/esm/decorators/setTimeout.js.map +7 -0
  77. package/dist/esm/decorators/subscribeSwcAppMessageWhileConnected.js +9 -0
  78. package/dist/esm/decorators/subscribeSwcAppMessageWhileConnected.js.map +2 -2
  79. package/dist/esm/decorators/subscribeSwcAppRouteChangeWhileConnected.js +9 -0
  80. package/dist/esm/decorators/subscribeSwcAppRouteChangeWhileConnected.js.map +2 -2
  81. package/dist/esm/examples/RxJSOperatorsExample.js +266 -0
  82. package/dist/esm/examples/RxJSOperatorsExample.js.map +7 -0
  83. package/dist/esm/types/index.js.map +1 -1
  84. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js +2413 -889
  85. package/dist/esm-bundle/dooboostore-simple-web-component.esm.js.map +4 -4
  86. package/dist/types/config/config.d.ts.map +1 -1
  87. package/dist/types/decorators/addEventListener.d.ts +93 -23
  88. package/dist/types/decorators/addEventListener.d.ts.map +1 -1
  89. package/dist/types/decorators/applyAttribute.d.ts +22 -34
  90. package/dist/types/decorators/applyAttribute.d.ts.map +1 -1
  91. package/dist/types/decorators/applyClass.d.ts +34 -34
  92. package/dist/types/decorators/applyClass.d.ts.map +1 -1
  93. package/dist/types/decorators/applyNode.d.ts +30 -20
  94. package/dist/types/decorators/applyNode.d.ts.map +1 -1
  95. package/dist/types/decorators/applyProperty.d.ts +57 -34
  96. package/dist/types/decorators/applyProperty.d.ts.map +1 -1
  97. package/dist/types/decorators/applyStyle.d.ts +25 -12
  98. package/dist/types/decorators/applyStyle.d.ts.map +1 -1
  99. package/dist/types/decorators/changedAttribute.d.ts +11 -0
  100. package/dist/types/decorators/changedAttribute.d.ts.map +1 -1
  101. package/dist/types/decorators/elementDefine.d.ts.map +1 -1
  102. package/dist/types/decorators/emitCustomEvent.d.ts +28 -4
  103. package/dist/types/decorators/emitCustomEvent.d.ts.map +1 -1
  104. package/dist/types/decorators/index.d.ts +5 -1
  105. package/dist/types/decorators/index.d.ts.map +1 -1
  106. package/dist/types/decorators/intersectionObserver.d.ts +49 -0
  107. package/dist/types/decorators/intersectionObserver.d.ts.map +1 -0
  108. package/dist/types/decorators/mutationObserver.d.ts +46 -0
  109. package/dist/types/decorators/mutationObserver.d.ts.map +1 -0
  110. package/dist/types/decorators/query.d.ts +63 -8
  111. package/dist/types/decorators/query.d.ts.map +1 -1
  112. package/dist/types/decorators/resizeObserver.d.ts +48 -0
  113. package/dist/types/decorators/resizeObserver.d.ts.map +1 -0
  114. package/dist/types/decorators/setInterval.d.ts +29 -0
  115. package/dist/types/decorators/setInterval.d.ts.map +1 -0
  116. package/dist/types/decorators/setTimeout.d.ts +29 -0
  117. package/dist/types/decorators/setTimeout.d.ts.map +1 -0
  118. package/dist/types/decorators/subscribeSwcAppMessageWhileConnected.d.ts +7 -1
  119. package/dist/types/decorators/subscribeSwcAppMessageWhileConnected.d.ts.map +1 -1
  120. package/dist/types/decorators/subscribeSwcAppRouteChangeWhileConnected.d.ts +6 -0
  121. package/dist/types/decorators/subscribeSwcAppRouteChangeWhileConnected.d.ts.map +1 -1
  122. package/dist/types/examples/RxJSOperatorsExample.d.ts +94 -0
  123. package/dist/types/examples/RxJSOperatorsExample.d.ts.map +1 -0
  124. package/dist/types/types/index.d.ts +104 -0
  125. package/dist/types/types/index.d.ts.map +1 -1
  126. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js +2413 -889
  127. package/dist/umd-bundle/dooboostore-simple-web-component.umd.js.map +4 -4
  128. package/package.json +8 -6
  129. package/src/config/config.ts +1 -1
  130. package/src/decorators/addEventListener.ts +426 -23
  131. package/src/decorators/applyAttribute.ts +50 -36
  132. package/src/decorators/applyClass.ts +76 -26
  133. package/src/decorators/applyNode.ts +114 -36
  134. package/src/decorators/applyProperty.ts +152 -40
  135. package/src/decorators/applyStyle.ts +64 -17
  136. package/src/decorators/changedAttribute.ts +46 -0
  137. package/src/decorators/elementDefine.ts +301 -317
  138. package/src/decorators/emitCustomEvent.ts +73 -5
  139. package/src/decorators/index.ts +5 -1
  140. package/src/decorators/intersectionObserver.ts +259 -0
  141. package/src/decorators/mutationObserver.ts +304 -0
  142. package/src/decorators/query.ts +182 -117
  143. package/src/decorators/resizeObserver.ts +235 -0
  144. package/src/decorators/setInterval.ts +80 -0
  145. package/src/decorators/setTimeout.ts +80 -0
  146. package/src/decorators/subscribeSwcAppMessageWhileConnected.ts +17 -0
  147. package/src/decorators/subscribeSwcAppRouteChangeWhileConnected.ts +19 -0
  148. package/src/examples/RxJSOperatorsExample.ts +279 -0
  149. package/src/types/index.ts +141 -0
  150. package/dist/cjs/decorators/queryAll.js +0 -181
  151. package/dist/cjs/decorators/queryAll.js.map +0 -7
  152. package/dist/cjs/elements/tt/SwcAppMixin.js +0 -1
  153. package/dist/cjs/elements/tt/SwcAppMixin.js.map +0 -7
  154. package/dist/cjs/elements/tt/SwcAsync.js +0 -1
  155. package/dist/cjs/elements/tt/SwcAsync.js.map +0 -7
  156. package/dist/cjs/elements/tt/SwcAsyncTemplate.js +0 -1
  157. package/dist/cjs/elements/tt/SwcAsyncTemplate.js.map +0 -7
  158. package/dist/cjs/elements/tt/SwcChoose.js +0 -1
  159. package/dist/cjs/elements/tt/SwcChoose.js.map +0 -7
  160. package/dist/cjs/elements/tt/SwcChooseTemplate.js +0 -1
  161. package/dist/cjs/elements/tt/SwcChooseTemplate.js.map +0 -7
  162. package/dist/cjs/elements/tt/SwcIf.js +0 -1
  163. package/dist/cjs/elements/tt/SwcIf.js.map +0 -7
  164. package/dist/cjs/elements/tt/SwcIfTemplate.js +0 -1
  165. package/dist/cjs/elements/tt/SwcIfTemplate.js.map +0 -7
  166. package/dist/cjs/elements/tt/SwcLoop.js +0 -1
  167. package/dist/cjs/elements/tt/SwcLoop.js.map +0 -7
  168. package/dist/cjs/elements/tt/SwcLoopTemplate.js +0 -1
  169. package/dist/cjs/elements/tt/SwcLoopTemplate.js.map +0 -7
  170. package/dist/cjs/elements/tt/SwcSubTemplates.js +0 -1
  171. package/dist/cjs/elements/tt/SwcSubTemplates.js.map +0 -7
  172. package/dist/cjs/elements/tt/register.js +0 -1
  173. package/dist/cjs/elements/tt/register.js.map +0 -7
  174. package/dist/esm/decorators/queryAll.js +0 -162
  175. package/dist/esm/decorators/queryAll.js.map +0 -7
  176. package/dist/esm/elements/tt/SwcAppMixin.js +0 -1
  177. package/dist/esm/elements/tt/SwcAppMixin.js.map +0 -7
  178. package/dist/esm/elements/tt/SwcAsync.js +0 -1
  179. package/dist/esm/elements/tt/SwcAsync.js.map +0 -7
  180. package/dist/esm/elements/tt/SwcAsyncTemplate.js +0 -1
  181. package/dist/esm/elements/tt/SwcAsyncTemplate.js.map +0 -7
  182. package/dist/esm/elements/tt/SwcChoose.js +0 -1
  183. package/dist/esm/elements/tt/SwcChoose.js.map +0 -7
  184. package/dist/esm/elements/tt/SwcChooseTemplate.js +0 -1
  185. package/dist/esm/elements/tt/SwcChooseTemplate.js.map +0 -7
  186. package/dist/esm/elements/tt/SwcIf.js +0 -1
  187. package/dist/esm/elements/tt/SwcIf.js.map +0 -7
  188. package/dist/esm/elements/tt/SwcIfTemplate.js +0 -1
  189. package/dist/esm/elements/tt/SwcIfTemplate.js.map +0 -7
  190. package/dist/esm/elements/tt/SwcLoop.js +0 -1
  191. package/dist/esm/elements/tt/SwcLoop.js.map +0 -7
  192. package/dist/esm/elements/tt/SwcLoopTemplate.js +0 -1
  193. package/dist/esm/elements/tt/SwcLoopTemplate.js.map +0 -7
  194. package/dist/esm/elements/tt/SwcSubTemplates.js +0 -1
  195. package/dist/esm/elements/tt/SwcSubTemplates.js.map +0 -7
  196. package/dist/esm/elements/tt/register.js +0 -1
  197. package/dist/esm/elements/tt/register.js.map +0 -7
  198. package/dist/types/decorators/queryAll.d.ts +0 -22
  199. package/dist/types/decorators/queryAll.d.ts.map +0 -1
  200. package/dist/types/elements/tt/SwcAppMixin.d.ts +0 -1
  201. package/dist/types/elements/tt/SwcAppMixin.d.ts.map +0 -1
  202. package/dist/types/elements/tt/SwcAsync.d.ts +0 -1
  203. package/dist/types/elements/tt/SwcAsync.d.ts.map +0 -1
  204. package/dist/types/elements/tt/SwcAsyncTemplate.d.ts +0 -1
  205. package/dist/types/elements/tt/SwcAsyncTemplate.d.ts.map +0 -1
  206. package/dist/types/elements/tt/SwcChoose.d.ts +0 -1
  207. package/dist/types/elements/tt/SwcChoose.d.ts.map +0 -1
  208. package/dist/types/elements/tt/SwcChooseTemplate.d.ts +0 -1
  209. package/dist/types/elements/tt/SwcChooseTemplate.d.ts.map +0 -1
  210. package/dist/types/elements/tt/SwcIf.d.ts +0 -1
  211. package/dist/types/elements/tt/SwcIf.d.ts.map +0 -1
  212. package/dist/types/elements/tt/SwcIfTemplate.d.ts +0 -1
  213. package/dist/types/elements/tt/SwcIfTemplate.d.ts.map +0 -1
  214. package/dist/types/elements/tt/SwcLoop.d.ts +0 -1
  215. package/dist/types/elements/tt/SwcLoop.d.ts.map +0 -1
  216. package/dist/types/elements/tt/SwcLoopTemplate.d.ts +0 -1
  217. package/dist/types/elements/tt/SwcLoopTemplate.d.ts.map +0 -1
  218. package/dist/types/elements/tt/SwcSubTemplates.d.ts +0 -1
  219. package/dist/types/elements/tt/SwcSubTemplates.d.ts.map +0 -1
  220. package/dist/types/elements/tt/register.d.ts +0 -1
  221. package/dist/types/elements/tt/register.d.ts.map +0 -1
  222. package/src/decorators/queryAll.ts +0 -186
  223. package/src/elements/tt/SwcAppMixin.ts +0 -13
  224. package/src/elements/tt/SwcAsync.ts +0 -139
  225. package/src/elements/tt/SwcAsyncTemplate.ts +0 -126
  226. package/src/elements/tt/SwcChoose.ts +0 -182
  227. package/src/elements/tt/SwcChooseTemplate.ts +0 -229
  228. package/src/elements/tt/SwcIf.ts +0 -145
  229. package/src/elements/tt/SwcIfTemplate.ts +0 -158
  230. package/src/elements/tt/SwcLoop.ts +0 -222
  231. package/src/elements/tt/SwcLoopTemplate.ts +0 -255
  232. package/src/elements/tt/SwcSubTemplates.ts +0 -6
  233. package/src/elements/tt/register.ts +0 -720
@@ -0,0 +1,48 @@
1
+ import { SpecialSelector, SwcQueryOptions, SwcFnSelector, SwcSelector, HelperHostSet } from '../types';
2
+ export interface ResizeObserverBaseOptions {
3
+ box?: 'content-box' | 'border-box' | 'device-pixel-content-box';
4
+ filter?: (matchedEls: HTMLElement[], meta: {
5
+ currentThis: any;
6
+ helper: HelperHostSet;
7
+ }) => boolean;
8
+ removeObserver?: (target: Element, optionValue: ResizeObserverOptions) => void;
9
+ }
10
+ export type ResizeObserverQueryOptions = ResizeObserverBaseOptions & SwcQueryOptions & {
11
+ delegate?: boolean;
12
+ };
13
+ export type ResizeObserverNonQueryOptions = ResizeObserverBaseOptions;
14
+ export type ResizeObserverOptions = ResizeObserverQueryOptions;
15
+ export type ResizeObserverOptionsOf<S extends SwcSelector> = S extends string ? ResizeObserverQueryOptions : ResizeObserverNonQueryOptions;
16
+ export interface ResizeObserverMetadata {
17
+ propertyKey: string | symbol;
18
+ selector: SwcSelector;
19
+ options: ResizeObserverOptions;
20
+ }
21
+ export declare const RESIZE_OBSERVER_METADATA_KEY: unique symbol;
22
+ export declare function resizeObserver(target: SpecialSelector, options?: ResizeObserverQueryOptions): MethodDecorator;
23
+ export declare function resizeObserver(selector: string, options?: ResizeObserverQueryOptions): MethodDecorator;
24
+ export declare function resizeObserver(selector: SwcFnSelector, options?: ResizeObserverNonQueryOptions): MethodDecorator;
25
+ export declare function resizeObserver(options?: ResizeObserverQueryOptions): MethodDecorator;
26
+ export declare function resizeObserverThis(options?: ResizeObserverQueryOptions): MethodDecorator;
27
+ export declare function resizeObserverDelegateLight(selector: string, options?: Omit<ResizeObserverQueryOptions, 'delegate'>): MethodDecorator;
28
+ export declare function resizeObserverDelegateLight(options?: Omit<ResizeObserverQueryOptions, 'delegate'>): MethodDecorator;
29
+ export declare function resizeObserverDelegateShadow(selector: string, options?: Omit<ResizeObserverQueryOptions, 'delegate'>): MethodDecorator;
30
+ export declare function resizeObserverDelegateShadow(options?: Omit<ResizeObserverQueryOptions, 'delegate'>): MethodDecorator;
31
+ export declare function resizeObserverDelegateAll(selector: string, options?: Omit<ResizeObserverQueryOptions, 'delegate'>): MethodDecorator;
32
+ export declare function resizeObserverDelegateAll(options?: Omit<ResizeObserverQueryOptions, 'delegate'>): MethodDecorator;
33
+ export declare function resizeObserverDelegate(selector: string, options?: Omit<ResizeObserverQueryOptions, 'delegate'>): MethodDecorator;
34
+ export declare function resizeObserverDelegate(options?: Omit<ResizeObserverQueryOptions, 'delegate'>): MethodDecorator;
35
+ export declare function resizeObserverLight(selector: string, options?: ResizeObserverQueryOptions): MethodDecorator;
36
+ export declare function resizeObserverLight(options?: ResizeObserverQueryOptions): MethodDecorator;
37
+ export declare function resizeObserverShadow(selector: string, options?: ResizeObserverQueryOptions): MethodDecorator;
38
+ export declare function resizeObserverShadow(options?: ResizeObserverQueryOptions): MethodDecorator;
39
+ export declare function resizeObserverAll(selector: string, options?: ResizeObserverQueryOptions): MethodDecorator;
40
+ export declare function resizeObserverAll(options?: ResizeObserverQueryOptions): MethodDecorator;
41
+ export declare function getResizeObserverMetadata(target: any): ResizeObserverMetadata[] | undefined;
42
+ import { ElementDefineLifeCycler, OnConnectedResult } from '../types';
43
+ export declare class ResizeObserverLifeCycler implements ElementDefineLifeCycler {
44
+ private readonly removeObserverCallbacksMap;
45
+ onConnected(helperHostSet: HelperHostSet): OnConnectedResult | void;
46
+ onDisconnected(helperHostSet: HelperHostSet): void;
47
+ }
48
+ //# 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,29 @@
1
+ import { ElementDefineLifeCycler, HelperHostSet } from '../types';
2
+ export declare const SET_INTERVAL_METADATA_KEY: unique symbol;
3
+ export interface SetIntervalOptions {
4
+ /** 매 tick마다 데코레이트된 메서드에 넘길 인자를 계산. 없으면 인자 없이 호출. */
5
+ parameter?: (set: HelperHostSet) => any[];
6
+ /** 타이머 등록 직후 1회 호출 (디버깅/로깅용). id는 실제 setInterval 반환값 - cleanup은 자동으로 처리되므로 직접 clear할 필요 없음. */
7
+ created?: (set: HelperHostSet, id: number) => void;
8
+ /**
9
+ * 매 tick마다 데코레이트된 메서드의 리턴값이 객체이고 이 키의 값이 함수이면 (id: number)로 호출한다.
10
+ * applyAttribute.ts의 valueKey와 동일한 컨벤션 - 리턴 객체에서 이 데코레이터 몫만 뽑아 쓴다.
11
+ */
12
+ valueKey?: symbol | string;
13
+ }
14
+ export interface SetIntervalMetadata {
15
+ propertyKey: string | symbol;
16
+ interval: number;
17
+ options: SetIntervalOptions;
18
+ }
19
+ /**
20
+ * connect 시 자동으로 setInterval을 걸고, disconnect 시 자동으로 clearInterval 한다.
21
+ */
22
+ export declare function setInterval(interval: number, options?: SetIntervalOptions): MethodDecorator;
23
+ export declare const findAllSetIntervalMetadata: (target: any) => SetIntervalMetadata[];
24
+ export declare class SetIntervalLifeCycler implements ElementDefineLifeCycler {
25
+ private readonly activeMap;
26
+ onConnected(helperHostSet: HelperHostSet): void;
27
+ onDisconnected(helperHostSet: HelperHostSet): void;
28
+ }
29
+ //# sourceMappingURL=setInterval.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setInterval.d.ts","sourceRoot":"","sources":["../../../src/decorators/setInterval.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAElE,eAAO,MAAM,yBAAyB,eAAkD,CAAC;AAEzF,MAAM,WAAW,kBAAkB;IACjC,oDAAoD;IACpD,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,GAAG,EAAE,CAAC;IAC1C,+FAA+F;IAC/F,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,kBAAkB,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,eAAe,CAU/F;AAED,eAAO,MAAM,0BAA0B,GAAI,QAAQ,GAAG,KAAG,mBAAmB,EAG3E,CAAC;AAEF,qBAAa,qBAAsB,YAAW,uBAAuB;IACnE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgC;IAE1D,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAsB/C,cAAc,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;CAWnD"}
@@ -0,0 +1,29 @@
1
+ import { ElementDefineLifeCycler, HelperHostSet } from '../types';
2
+ export declare const SET_TIMEOUT_METADATA_KEY: unique symbol;
3
+ export interface SetTimeoutOptions {
4
+ /** 실행 시 데코레이트된 메서드에 넘길 인자를 계산. 없으면 인자 없이 호출. */
5
+ parameter?: (set: HelperHostSet) => any[];
6
+ /** 타이머 등록 직후 1회 호출 (디버깅/로깅용). id는 실제 setTimeout 반환값 - cleanup은 자동으로 처리되므로 직접 clear할 필요 없음. */
7
+ created?: (set: HelperHostSet, id: number) => void;
8
+ /**
9
+ * fire 시 데코레이트된 메서드의 리턴값이 객체이고 이 키의 값이 함수이면 (id: number)로 호출한다.
10
+ * applyAttribute.ts의 valueKey와 동일한 컨벤션 - 리턴 객체에서 이 데코레이터 몫만 뽑아 쓴다.
11
+ */
12
+ valueKey?: symbol | string;
13
+ }
14
+ export interface SetTimeoutMetadata {
15
+ propertyKey: string | symbol;
16
+ delay: number;
17
+ options: SetTimeoutOptions;
18
+ }
19
+ /**
20
+ * connect 시 자동으로 setTimeout을 걸고, disconnect 시 (아직 실행 전이라면) 자동으로 clearTimeout 한다.
21
+ */
22
+ export declare function setTimeout(delay: number, options?: SetTimeoutOptions): MethodDecorator;
23
+ export declare const findAllSetTimeoutMetadata: (target: any) => SetTimeoutMetadata[];
24
+ export declare class SetTimeoutLifeCycler implements ElementDefineLifeCycler {
25
+ private readonly activeMap;
26
+ onConnected(helperHostSet: HelperHostSet): void;
27
+ onDisconnected(helperHostSet: HelperHostSet): void;
28
+ }
29
+ //# sourceMappingURL=setTimeout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setTimeout.d.ts","sourceRoot":"","sources":["../../../src/decorators/setTimeout.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAElE,eAAO,MAAM,wBAAwB,eAAiD,CAAC;AAEvF,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,GAAG,EAAE,CAAC;IAC1C,8FAA8F;IAC9F,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,eAAe,CAU1F;AAED,eAAO,MAAM,yBAAyB,GAAI,QAAQ,GAAG,KAAG,kBAAkB,EAGzE,CAAC;AAEF,qBAAa,oBAAqB,YAAW,uBAAuB;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgC;IAE1D,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAsB/C,cAAc,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;CAWnD"}
@@ -1,4 +1,4 @@
1
- import { SwcAppMessage } from '../types';
1
+ import { SwcAppMessage, HelperHostSet } from '../types';
2
2
  export declare const SUBSCRIBE_SWC_APP_MESSAGE_WHILE_CONNECTED_METADATA_KEY: unique symbol;
3
3
  export interface SwcAppMessageSubscriberMetadata {
4
4
  propertyKey: string | symbol;
@@ -14,4 +14,10 @@ export declare function subscribeSwcAppMessageWhileConnected(options: SwcAppMess
14
14
  export declare function subscribeSwcAppMessageWhileConnected(messageType: string, options: SwcAppMessageOptions): MethodDecorator;
15
15
  export declare const receiveMessage: typeof subscribeSwcAppMessageWhileConnected;
16
16
  export declare const getSubscribeSwcAppMessageWhileConnectedMetadata: (target: any) => SwcAppMessageSubscriberMetadata[] | undefined;
17
+ import { ElementDefineLifeCycler } from '../types';
18
+ export declare class MessageSubscribeLifeCycler implements ElementDefineLifeCycler {
19
+ onConnected(_helperHostSet: HelperHostSet): void;
20
+ /** SwcAppMixin 이 구독 대상 메타를 꺼낼 때 사용 */
21
+ getMetadata(helperHostSet: HelperHostSet): SwcAppMessageSubscriberMetadata[] | undefined;
22
+ }
17
23
  //# sourceMappingURL=subscribeSwcAppMessageWhileConnected.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subscribeSwcAppMessageWhileConnected.d.ts","sourceRoot":"","sources":["../../../src/decorators/subscribeSwcAppMessageWhileConnected.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAmD,MAAM,UAAU,CAAC;AAE1F,eAAO,MAAM,sDAAsD,eAA+E,CAAC;AAEnJ,MAAM,WAAW,+BAA+B;IAC9C,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,KAAK,OAAO,CAAC;CAChE;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,KAAK,OAAO,CAAC;CAChE;AAmBD,wBAAgB,oCAAoC,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAAC;AAE9J,wBAAgB,oCAAoC,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CAAC;AAE3F,wBAAgB,oCAAoC,CAAC,OAAO,EAAE,oBAAoB,GAAG,eAAe,CAAC;AAErG,wBAAgB,oCAAoC,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,eAAe,CAAC;AA8B1H,eAAO,MAAM,cAAc,6CAAuC,CAAC;AAEnE,eAAO,MAAM,+CAA+C,GAAI,QAAQ,GAAG,KAAG,+BAA+B,EAAE,GAAG,SAGjH,CAAC"}
1
+ {"version":3,"file":"subscribeSwcAppMessageWhileConnected.d.ts","sourceRoot":"","sources":["../../../src/decorators/subscribeSwcAppMessageWhileConnected.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAoC,aAAa,EAAE,MAAM,UAAU,CAAC;AAE1F,eAAO,MAAM,sDAAsD,eAA+E,CAAC;AAEnJ,MAAM,WAAW,+BAA+B;IAC9C,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,KAAK,OAAO,CAAC;CAChE;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,GAAG,KAAK,OAAO,CAAC;CAChE;AAmBD,wBAAgB,oCAAoC,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAAC;AAE9J,wBAAgB,oCAAoC,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CAAC;AAE3F,wBAAgB,oCAAoC,CAAC,OAAO,EAAE,oBAAoB,GAAG,eAAe,CAAC;AAErG,wBAAgB,oCAAoC,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,eAAe,CAAC;AA8B1H,eAAO,MAAM,cAAc,6CAAuC,CAAC;AAEnE,eAAO,MAAM,+CAA+C,GAAI,QAAQ,GAAG,KAAG,+BAA+B,EAAE,GAAG,SAGjH,CAAC;AAMF,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAEnD,qBAAa,0BAA2B,YAAW,uBAAuB;IACxE,WAAW,CAAC,cAAc,EAAE,aAAa,GAAG,IAAI;IAIhD,sCAAsC;IACtC,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG,+BAA+B,EAAE,GAAG,SAAS;CAGzF"}
@@ -22,4 +22,10 @@ export declare function subscribeSwcAppRouteChangeWhileConnected(pathPattern: Ro
22
22
  export declare function subscribeSwcAppRouteChangeWhileConnected(options: SwcAppRouteChangeOptions): MethodDecorator;
23
23
  export declare const changedRoute: typeof subscribeSwcAppRouteChangeWhileConnected;
24
24
  export declare const getSubscribeSwcAppRouteChangeWhileConnectedMetadata: (target: any) => SwcAppRouteChangeSubscriberMetadata[];
25
+ import { ElementDefineLifeCycler } from '../types';
26
+ export declare class RouteSubscribeLifeCycler implements ElementDefineLifeCycler {
27
+ onConnected(_helperHostSet: HelperHostSet): void;
28
+ /** SwcAppMixin 이 구독 대상 메타를 꺼낼 때 사용 */
29
+ getMetadata(helperHostSet: HelperHostSet): SwcAppRouteChangeSubscriberMetadata[];
30
+ }
25
31
  //# sourceMappingURL=subscribeSwcAppRouteChangeWhileConnected.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"subscribeSwcAppRouteChangeWhileConnected.d.ts","sourceRoot":"","sources":["../../../src/decorators/subscribeSwcAppRouteChangeWhileConnected.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,2DAA2D,eAAoF,CAAC;AAE7J,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAE1F,MAAM,WAAW,mCAAmC;IAClD,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,OAAO,CAAC,EAAE,wBAAwB,CAAC;CACpC;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,WAAW,EAAE,GAAG,CAAC;QAAC,MAAM,EAAE,aAAa,CAAA;KAAE,KAAK,OAAO,CAAC;IACxF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAoBD,wBAAgB,wCAAwC,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAAC;AAElK,wBAAgB,wCAAwC,IAAI,eAAe,CAAC;AAC5E,wBAAgB,wCAAwC,CAAC,WAAW,EAAE,aAAa,GAAG,eAAe,CAAC;AACtG,wBAAgB,wCAAwC,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,GAAG,eAAe,CAAC;AACtJ,wBAAgB,wCAAwC,CAAC,OAAO,EAAE,wBAAwB,GAAG,eAAe,CAAC;AAkC7G,eAAO,MAAM,YAAY,iDAA2C,CAAC;AAGrE,eAAO,MAAM,mDAAmD,GAAI,QAAQ,GAAG,KAAG,mCAAmC,EAOpH,CAAC"}
1
+ {"version":3,"file":"subscribeSwcAppRouteChangeWhileConnected.d.ts","sourceRoot":"","sources":["../../../src/decorators/subscribeSwcAppRouteChangeWhileConnected.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,MAAM,EAAC,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAC;AAEvC,eAAO,MAAM,2DAA2D,eAAoF,CAAC;AAE7J,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;AAE1F,MAAM,WAAW,mCAAmC;IAClD,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,OAAO,CAAC,EAAE,wBAAwB,CAAC;CACpC;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAAE,WAAW,EAAE,GAAG,CAAC;QAAC,MAAM,EAAE,aAAa,CAAA;KAAE,KAAK,OAAO,CAAC;IACxF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAoBD,wBAAgB,wCAAwC,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,kBAAkB,GAAG,IAAI,CAAC;AAElK,wBAAgB,wCAAwC,IAAI,eAAe,CAAC;AAC5E,wBAAgB,wCAAwC,CAAC,WAAW,EAAE,aAAa,GAAG,eAAe,CAAC;AACtG,wBAAgB,wCAAwC,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,GAAG,eAAe,CAAC;AACtJ,wBAAgB,wCAAwC,CAAC,OAAO,EAAE,wBAAwB,GAAG,eAAe,CAAC;AAkC7G,eAAO,MAAM,YAAY,iDAA2C,CAAC;AAGrE,eAAO,MAAM,mDAAmD,GAAI,QAAQ,GAAG,KAAG,mCAAmC,EAOpH,CAAC;AAQF,OAAO,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAEnD,qBAAa,wBAAyB,YAAW,uBAAuB;IACtE,WAAW,CAAC,cAAc,EAAE,aAAa,GAAG,IAAI;IAIhD,sCAAsC;IACtC,WAAW,CAAC,aAAa,EAAE,aAAa,GAAG,mCAAmC,EAAE;CAGjF"}
@@ -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"}
@@ -39,6 +39,8 @@ export type HostSet = {
39
39
  export type HelperHostSet = HelperSet & HostSet & {
40
40
  $this: any;
41
41
  };
42
+ export type SwcFnSelector = (currentThis: any, helper: HelperHostSet) => Node | NodeList | Element | Element[] | null;
43
+ export type SwcSelector = string | SwcFnSelector;
42
44
  export type SwcAppMessage<T = any> = {
43
45
  publisher?: any;
44
46
  data?: T;
@@ -58,4 +60,106 @@ export interface SwcAppInterface extends HTMLElement {
58
60
  export interface SwcElement {
59
61
  _swcId: string;
60
62
  }
63
+ /** observer observe 대상 엔트리. delegate:true 이면 target 은 셀렉터 문자열이며, 실제 요소는 동적 추적으로 observe/unobserve 된다. */
64
+ export interface ObserverObserveTarget<TOptions> {
65
+ target: Element | ShadowRoot | string;
66
+ options?: TOptions;
67
+ delegate?: boolean;
68
+ /** delegate 동적 추적 시 observe/unobserve 를 실행할 루트(스코프). delegate:true 일 때만 의미 있다. */
69
+ delegateRoot?: SwcRootType;
70
+ }
71
+ /** MutationObserver observe 대상 하나. 동일 루트의 여러 대상은 같은 callback 을 공유한다. */
72
+ export interface MutationObserverSetEntry {
73
+ target: Element | ShadowRoot | string;
74
+ options?: MutationObserverInit;
75
+ delegate?: boolean;
76
+ delegateRoot?: SwcRootType;
77
+ callback: (mutations: MutationRecord[], observer: MutationObserver) => void;
78
+ }
79
+ /** observe 할 대상 목록 (엔트리별 콜백 포함). elementDefine 이 하나의 MutationObserver 로 모두 observe 한다. */
80
+ export type MutationObserverSet = MutationObserverSetEntry[];
81
+ /** ResizeObserver observe 대상 하나. 동일 셀렉터의 여러 대상은 같은 callback 을 공유한다. */
82
+ export interface ResizeObserverSetEntry {
83
+ target: Element | ShadowRoot | string;
84
+ options?: ResizeObserverOptions;
85
+ delegate?: boolean;
86
+ delegateRoot?: SwcRootType;
87
+ callback: (entries: ResizeObserverEntry[], observer: ResizeObserver) => void;
88
+ }
89
+ /** observe 할 대상 목록 (엔트리별 콜백 포함). elementDefine 이 하나의 ResizeObserver 로 모두 observe 한다. */
90
+ export type ResizeObserverSet = ResizeObserverSetEntry[];
91
+ /** IntersectionObserver observe 대상 하나. 같은 옵션 그룹의 여러 대상은 같은 callback 을 공유한다. */
92
+ export interface IntersectionObserverSetEntry {
93
+ target: Element | ShadowRoot | string;
94
+ delegate?: boolean;
95
+ delegateRoot?: SwcRootType;
96
+ callback: (entries: IntersectionObserverEntry[], observer: IntersectionObserver) => void;
97
+ }
98
+ /** IntersectionObserver 그룹. observer 는 생성 시점에 옵션이 고정되므로 옵션별로 1개씩 생성된다. */
99
+ export interface IntersectionObserverGroup {
100
+ /** observer 생성 옵션 (threshold/rootMargin/root). 이 값이 같으면 같은 observer 를 공유한다. */
101
+ options: IntersectionObserverInit;
102
+ observeTargets: IntersectionObserverSetEntry[];
103
+ }
104
+ /** observe 할 옵션 그룹 목록. elementDefine 이 그룹마다 IntersectionObserver 를 생성한다. */
105
+ export type IntersectionObserverSet = IntersectionObserverGroup[];
106
+ /**
107
+ * onConnected 의 반환 타입.
108
+ * observer 가 필요 없는 cycler 는 undefined 를 반환해도 된다.
109
+ */
110
+ export interface OnConnectedResult {
111
+ mutationObserverSet?: MutationObserverSet;
112
+ resizeObserverSet?: ResizeObserverSet;
113
+ intersectionObserverSet?: IntersectionObserverSet;
114
+ }
115
+ /**
116
+ * 각 데코레이터 파일이 구현하는 라이프사이클 위임 interface.
117
+ *
118
+ * 구현체는 상태를 갖지 않고, 각 훅의 첫 번째 인자로 HelperHostSet 을 받는다.
119
+ * 관심 있는 훅만 구현하면 된다 (전부 optional).
120
+ *
121
+ * ```ts
122
+ * const eventCycler = new EventListenerLifeCycler();
123
+ * const cyclers: ElementDefineLifeCycler[] = [eventCycler, ...]; // elementDefine 시 1회 생성
124
+ *
125
+ * proto.connectedCallback = async function () {
126
+ * const helperHostSet = SwcUtils.getHelperAndHostSet(win, this);
127
+ * const results = await Promise.all(cyclers.map(c => c.onConnected?.(helperHostSet)));
128
+ * // results 에서 mutationObserverSet / resizeObserverSet 수집
129
+ * // → 필요한 경우에만 MutationObserver / ResizeObserver 생성
130
+ * };
131
+ * proto.disconnectedCallback = function () {
132
+ * for (const c of cyclers) c.onDisconnected?.(helperHostSet);
133
+ * };
134
+ * ```
135
+ */
136
+ export interface ElementDefineLifeCycler {
137
+ /**
138
+ * connectedCallback 시 호출.
139
+ * observer 가 필요하면 OnConnectedResult 를 반환하고,
140
+ * 필요 없으면 void / undefined 를 반환한다.
141
+ * @param helperHostSet 현재 엘리먼트 인스턴스($this)를 포함한 컨텍스트
142
+ * @param resizeObserverSet 이전 시클러가 반환한 resize observer set (mutation 시클러가 주입받아 사용)
143
+ */
144
+ onConnected?(helperHostSet: HelperHostSet, resizeObserverSet?: ResizeObserverSet): OnConnectedResult | void | Promise<OnConnectedResult | void>;
145
+ /** disconnectedCallback 시 호출. 등록한 리소스를 해제한다. */
146
+ onDisconnected?(helperHostSet: HelperHostSet): void;
147
+ /** adoptedCallback 시 호출 (선택적). */
148
+ onAdopted?(helperHostSet: HelperHostSet): void;
149
+ /**
150
+ * attributeChangedCallback 시 호출 (선택적).
151
+ * @param helperHostSet 현재 엘리먼트 인스턴스($this)를 포함한 컨텍스트
152
+ * @param name 변경된 attribute 이름
153
+ * @param oldVal 이전 값
154
+ * @param newVal 새 값 (ActionExpression 처리 후)
155
+ */
156
+ onAttributeChanged?(helperHostSet: HelperHostSet, name: string, oldVal: string | null, newVal: any): void;
157
+ /**
158
+ * observedAttributes 에 포함해야 하는 attribute 이름 목록을 반환한다.
159
+ * elementDefine 이 define-time(constructor)에 호출해 수집한다.
160
+ * 관심 없으면 구현하지 않거나 빈 배열을 반환한다.
161
+ * @param target constructor 또는 element 인스턴스 (메타데이터 조회용)
162
+ */
163
+ getObservedAttributeNames?(target: any): string[];
164
+ }
61
165
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}