masoneffect 2.0.4 → 2.0.6

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 (377) hide show
  1. package/README.md +170 -2
  2. package/dist/core/count/index.d.ts +3 -2
  3. package/dist/core/count/index.d.ts.map +1 -1
  4. package/dist/core/index.d.ts +3 -0
  5. package/dist/core/index.d.ts.map +1 -1
  6. package/dist/core/scrollFadeIn/index.d.ts +57 -0
  7. package/dist/core/scrollFadeIn/index.d.ts.map +1 -0
  8. package/dist/core/textToParticle/index.d.ts +3 -3
  9. package/dist/core/textToParticle/index.d.ts.map +1 -1
  10. package/dist/core/typing/index.d.ts +3 -2
  11. package/dist/core/typing/index.d.ts.map +1 -1
  12. package/dist/core/utils/visibilityManager.d.ts +35 -0
  13. package/dist/core/utils/visibilityManager.d.ts.map +1 -0
  14. package/dist/count/core/count/index.d.ts +3 -2
  15. package/dist/count/core/count/index.d.ts.map +1 -1
  16. package/dist/count/core/index.d.ts +3 -0
  17. package/dist/count/core/index.d.ts.map +1 -1
  18. package/dist/count/core/scrollFadeIn/index.d.ts +57 -0
  19. package/dist/count/core/scrollFadeIn/index.d.ts.map +1 -0
  20. package/dist/count/core/textToParticle/index.d.ts +3 -3
  21. package/dist/count/core/textToParticle/index.d.ts.map +1 -1
  22. package/dist/count/core/typing/index.d.ts +3 -2
  23. package/dist/count/core/typing/index.d.ts.map +1 -1
  24. package/dist/count/core/utils/visibilityManager.d.ts +35 -0
  25. package/dist/count/core/utils/visibilityManager.d.ts.map +1 -0
  26. package/dist/count/index.cjs +1 -1
  27. package/dist/count/index.d.ts +3 -0
  28. package/dist/count/index.d.ts.map +1 -1
  29. package/dist/count/index.mjs +1 -1
  30. package/dist/count/react/MasonEffect.d.ts.map +1 -1
  31. package/dist/count/react/index.d.ts +3 -0
  32. package/dist/count/react/index.d.ts.map +1 -1
  33. package/dist/count/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  34. package/dist/count/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  35. package/dist/count/react/scrollFadeIn/index.d.ts +5 -0
  36. package/dist/count/react/scrollFadeIn/index.d.ts.map +1 -0
  37. package/dist/count/react/textToParticle/TextToParticle.d.ts.map +1 -1
  38. package/dist/count/svelte/index.d.ts +1 -0
  39. package/dist/count/svelte/index.d.ts.map +1 -1
  40. package/dist/count/svelte/scrollFadeIn/index.d.ts +2 -0
  41. package/dist/count/svelte/scrollFadeIn/index.d.ts.map +1 -0
  42. package/dist/count/vue/index.d.ts +1 -0
  43. package/dist/count/vue/index.d.ts.map +1 -1
  44. package/dist/count/vue/scrollFadeIn/index.d.ts +2 -0
  45. package/dist/count/vue/scrollFadeIn/index.d.ts.map +1 -0
  46. package/dist/index.cjs +1 -1
  47. package/dist/index.d.ts +3 -0
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.mjs +1 -1
  50. package/dist/index.umd.min.js +1 -1
  51. package/dist/react/MasonEffect.d.ts.map +1 -1
  52. package/dist/react/core/count/index.d.ts +3 -2
  53. package/dist/react/core/index.d.ts +3 -0
  54. package/dist/react/core/scrollFadeIn/index.d.ts +56 -0
  55. package/dist/react/core/textToParticle/index.d.ts +3 -3
  56. package/dist/react/core/typing/index.d.ts +3 -2
  57. package/dist/react/core/utils/visibilityManager.d.ts +34 -0
  58. package/dist/react/count/core/count/index.d.ts +3 -2
  59. package/dist/react/count/core/count/index.d.ts.map +1 -1
  60. package/dist/react/count/core/index.d.ts +3 -0
  61. package/dist/react/count/core/index.d.ts.map +1 -1
  62. package/dist/react/count/core/scrollFadeIn/index.d.ts +57 -0
  63. package/dist/react/count/core/scrollFadeIn/index.d.ts.map +1 -0
  64. package/dist/react/count/core/textToParticle/index.d.ts +3 -3
  65. package/dist/react/count/core/textToParticle/index.d.ts.map +1 -1
  66. package/dist/react/count/core/typing/index.d.ts +3 -2
  67. package/dist/react/count/core/typing/index.d.ts.map +1 -1
  68. package/dist/react/count/core/utils/visibilityManager.d.ts +35 -0
  69. package/dist/react/count/core/utils/visibilityManager.d.ts.map +1 -0
  70. package/dist/react/count/index.cjs +1 -1
  71. package/dist/react/count/index.d.ts +3 -0
  72. package/dist/react/count/index.d.ts.map +1 -1
  73. package/dist/react/count/index.mjs +1 -1
  74. package/dist/react/count/react/MasonEffect.d.ts.map +1 -1
  75. package/dist/react/count/react/index.d.ts +3 -0
  76. package/dist/react/count/react/index.d.ts.map +1 -1
  77. package/dist/react/count/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  78. package/dist/react/count/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  79. package/dist/react/count/react/scrollFadeIn/index.d.ts +5 -0
  80. package/dist/react/count/react/scrollFadeIn/index.d.ts.map +1 -0
  81. package/dist/react/count/react/textToParticle/TextToParticle.d.ts.map +1 -1
  82. package/dist/react/count/svelte/index.d.ts +1 -0
  83. package/dist/react/count/svelte/index.d.ts.map +1 -1
  84. package/dist/react/count/svelte/scrollFadeIn/index.d.ts +2 -0
  85. package/dist/react/count/svelte/scrollFadeIn/index.d.ts.map +1 -0
  86. package/dist/react/count/vue/index.d.ts +1 -0
  87. package/dist/react/count/vue/index.d.ts.map +1 -1
  88. package/dist/react/count/vue/scrollFadeIn/index.d.ts +2 -0
  89. package/dist/react/count/vue/scrollFadeIn/index.d.ts.map +1 -0
  90. package/dist/react/index.cjs +6 -0
  91. package/dist/react/index.d.ts.map +1 -1
  92. package/dist/react/index.mjs +1 -0
  93. package/dist/react/react/index.d.ts +3 -0
  94. package/dist/react/react/scrollFadeIn/ScrollFadeIn.d.ts +18 -0
  95. package/dist/react/react/scrollFadeIn/index.d.ts +4 -0
  96. package/dist/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  97. package/dist/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  98. package/dist/react/scrollFadeIn/core/count/index.d.ts +53 -0
  99. package/dist/react/scrollFadeIn/core/count/index.d.ts.map +1 -0
  100. package/dist/react/scrollFadeIn/core/index.d.ts +23 -0
  101. package/dist/react/scrollFadeIn/core/index.d.ts.map +1 -0
  102. package/dist/react/scrollFadeIn/core/scrollFadeIn/index.d.ts +57 -0
  103. package/dist/react/scrollFadeIn/core/scrollFadeIn/index.d.ts.map +1 -0
  104. package/dist/react/scrollFadeIn/core/textToParticle/index.d.ts +103 -0
  105. package/dist/react/scrollFadeIn/core/textToParticle/index.d.ts.map +1 -0
  106. package/dist/react/scrollFadeIn/core/typing/index.d.ts +54 -0
  107. package/dist/react/scrollFadeIn/core/typing/index.d.ts.map +1 -0
  108. package/dist/react/scrollFadeIn/core/utils/visibilityManager.d.ts +35 -0
  109. package/dist/react/scrollFadeIn/core/utils/visibilityManager.d.ts.map +1 -0
  110. package/dist/react/scrollFadeIn/index.cjs +1 -0
  111. package/dist/react/scrollFadeIn/index.d.ts +21 -0
  112. package/dist/react/scrollFadeIn/index.d.ts.map +1 -0
  113. package/dist/react/scrollFadeIn/index.mjs +1 -0
  114. package/dist/react/scrollFadeIn/index.umd.d.ts +7 -0
  115. package/dist/react/scrollFadeIn/index.umd.d.ts.map +1 -0
  116. package/dist/react/scrollFadeIn/react/MasonEffect.d.ts +32 -0
  117. package/dist/react/scrollFadeIn/react/MasonEffect.d.ts.map +1 -0
  118. package/dist/react/scrollFadeIn/react/count/Count.d.ts +19 -0
  119. package/dist/react/scrollFadeIn/react/count/Count.d.ts.map +1 -0
  120. package/dist/react/scrollFadeIn/react/count/index.d.ts +5 -0
  121. package/dist/react/scrollFadeIn/react/count/index.d.ts.map +1 -0
  122. package/dist/react/scrollFadeIn/react/index.d.ts +17 -0
  123. package/dist/react/scrollFadeIn/react/index.d.ts.map +1 -0
  124. package/dist/react/scrollFadeIn/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  125. package/dist/react/scrollFadeIn/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  126. package/dist/react/scrollFadeIn/react/scrollFadeIn/index.d.ts +5 -0
  127. package/dist/react/scrollFadeIn/react/scrollFadeIn/index.d.ts.map +1 -0
  128. package/dist/react/scrollFadeIn/react/textToParticle/TextToParticle.d.ts +15 -0
  129. package/dist/react/scrollFadeIn/react/textToParticle/TextToParticle.d.ts.map +1 -0
  130. package/dist/react/scrollFadeIn/react/textToParticle/index.d.ts +4 -0
  131. package/dist/react/scrollFadeIn/react/textToParticle/index.d.ts.map +1 -0
  132. package/dist/react/scrollFadeIn/react/typing/Typing.d.ts +18 -0
  133. package/dist/react/scrollFadeIn/react/typing/Typing.d.ts.map +1 -0
  134. package/dist/react/scrollFadeIn/react/typing/index.d.ts +4 -0
  135. package/dist/react/scrollFadeIn/react/typing/index.d.ts.map +1 -0
  136. package/dist/react/scrollFadeIn/svelte/count/index.d.ts +2 -0
  137. package/dist/react/scrollFadeIn/svelte/count/index.d.ts.map +1 -0
  138. package/dist/react/scrollFadeIn/svelte/index.d.ts +10 -0
  139. package/dist/react/scrollFadeIn/svelte/index.d.ts.map +1 -0
  140. package/dist/react/scrollFadeIn/svelte/scrollFadeIn/index.d.ts +2 -0
  141. package/dist/react/scrollFadeIn/svelte/scrollFadeIn/index.d.ts.map +1 -0
  142. package/dist/react/scrollFadeIn/svelte/textToParticle/index.d.ts +2 -0
  143. package/dist/react/scrollFadeIn/svelte/textToParticle/index.d.ts.map +1 -0
  144. package/dist/react/scrollFadeIn/svelte/typing/index.d.ts +3 -0
  145. package/dist/react/scrollFadeIn/svelte/typing/index.d.ts.map +1 -0
  146. package/dist/react/scrollFadeIn/vue/count/index.d.ts +2 -0
  147. package/dist/react/scrollFadeIn/vue/count/index.d.ts.map +1 -0
  148. package/dist/react/scrollFadeIn/vue/index.d.ts +10 -0
  149. package/dist/react/scrollFadeIn/vue/index.d.ts.map +1 -0
  150. package/dist/react/scrollFadeIn/vue/scrollFadeIn/index.d.ts +2 -0
  151. package/dist/react/scrollFadeIn/vue/scrollFadeIn/index.d.ts.map +1 -0
  152. package/dist/react/scrollFadeIn/vue/textToParticle/index.d.ts +2 -0
  153. package/dist/react/scrollFadeIn/vue/textToParticle/index.d.ts.map +1 -0
  154. package/dist/react/scrollFadeIn/vue/typing/index.d.ts +4 -0
  155. package/dist/react/scrollFadeIn/vue/typing/index.d.ts.map +1 -0
  156. package/dist/react/svelte/index.d.ts +1 -0
  157. package/dist/react/svelte/scrollFadeIn/index.d.ts +1 -0
  158. package/dist/react/textToParticle/TextToParticle.d.ts.map +1 -1
  159. package/dist/react/textToParticle/core/count/index.d.ts +3 -2
  160. package/dist/react/textToParticle/core/count/index.d.ts.map +1 -1
  161. package/dist/react/textToParticle/core/index.d.ts +3 -0
  162. package/dist/react/textToParticle/core/index.d.ts.map +1 -1
  163. package/dist/react/textToParticle/core/scrollFadeIn/index.d.ts +57 -0
  164. package/dist/react/textToParticle/core/scrollFadeIn/index.d.ts.map +1 -0
  165. package/dist/react/textToParticle/core/textToParticle/index.d.ts +3 -3
  166. package/dist/react/textToParticle/core/textToParticle/index.d.ts.map +1 -1
  167. package/dist/react/textToParticle/core/typing/index.d.ts +3 -2
  168. package/dist/react/textToParticle/core/typing/index.d.ts.map +1 -1
  169. package/dist/react/textToParticle/core/utils/visibilityManager.d.ts +35 -0
  170. package/dist/react/textToParticle/core/utils/visibilityManager.d.ts.map +1 -0
  171. package/dist/react/textToParticle/index.cjs +1 -1
  172. package/dist/react/textToParticle/index.d.ts +3 -0
  173. package/dist/react/textToParticle/index.d.ts.map +1 -1
  174. package/dist/react/textToParticle/index.mjs +1 -1
  175. package/dist/react/textToParticle/react/MasonEffect.d.ts.map +1 -1
  176. package/dist/react/textToParticle/react/index.d.ts +3 -0
  177. package/dist/react/textToParticle/react/index.d.ts.map +1 -1
  178. package/dist/react/textToParticle/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  179. package/dist/react/textToParticle/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  180. package/dist/react/textToParticle/react/scrollFadeIn/index.d.ts +5 -0
  181. package/dist/react/textToParticle/react/scrollFadeIn/index.d.ts.map +1 -0
  182. package/dist/react/textToParticle/react/textToParticle/TextToParticle.d.ts.map +1 -1
  183. package/dist/react/textToParticle/svelte/index.d.ts +1 -0
  184. package/dist/react/textToParticle/svelte/index.d.ts.map +1 -1
  185. package/dist/react/textToParticle/svelte/scrollFadeIn/index.d.ts +2 -0
  186. package/dist/react/textToParticle/svelte/scrollFadeIn/index.d.ts.map +1 -0
  187. package/dist/react/textToParticle/vue/index.d.ts +1 -0
  188. package/dist/react/textToParticle/vue/index.d.ts.map +1 -1
  189. package/dist/react/textToParticle/vue/scrollFadeIn/index.d.ts +2 -0
  190. package/dist/react/textToParticle/vue/scrollFadeIn/index.d.ts.map +1 -0
  191. package/dist/react/typing/core/count/index.d.ts +3 -2
  192. package/dist/react/typing/core/count/index.d.ts.map +1 -1
  193. package/dist/react/typing/core/index.d.ts +3 -0
  194. package/dist/react/typing/core/index.d.ts.map +1 -1
  195. package/dist/react/typing/core/scrollFadeIn/index.d.ts +57 -0
  196. package/dist/react/typing/core/scrollFadeIn/index.d.ts.map +1 -0
  197. package/dist/react/typing/core/textToParticle/index.d.ts +3 -3
  198. package/dist/react/typing/core/textToParticle/index.d.ts.map +1 -1
  199. package/dist/react/typing/core/typing/index.d.ts +3 -2
  200. package/dist/react/typing/core/typing/index.d.ts.map +1 -1
  201. package/dist/react/typing/core/utils/visibilityManager.d.ts +35 -0
  202. package/dist/react/typing/core/utils/visibilityManager.d.ts.map +1 -0
  203. package/dist/react/typing/index.cjs +1 -1
  204. package/dist/react/typing/index.d.ts +3 -0
  205. package/dist/react/typing/index.d.ts.map +1 -1
  206. package/dist/react/typing/index.mjs +1 -1
  207. package/dist/react/typing/react/MasonEffect.d.ts.map +1 -1
  208. package/dist/react/typing/react/index.d.ts +3 -0
  209. package/dist/react/typing/react/index.d.ts.map +1 -1
  210. package/dist/react/typing/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  211. package/dist/react/typing/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  212. package/dist/react/typing/react/scrollFadeIn/index.d.ts +5 -0
  213. package/dist/react/typing/react/scrollFadeIn/index.d.ts.map +1 -0
  214. package/dist/react/typing/react/textToParticle/TextToParticle.d.ts.map +1 -1
  215. package/dist/react/typing/svelte/index.d.ts +1 -0
  216. package/dist/react/typing/svelte/index.d.ts.map +1 -1
  217. package/dist/react/typing/svelte/scrollFadeIn/index.d.ts +2 -0
  218. package/dist/react/typing/svelte/scrollFadeIn/index.d.ts.map +1 -0
  219. package/dist/react/typing/vue/index.d.ts +1 -0
  220. package/dist/react/typing/vue/index.d.ts.map +1 -1
  221. package/dist/react/typing/vue/scrollFadeIn/index.d.ts +2 -0
  222. package/dist/react/typing/vue/scrollFadeIn/index.d.ts.map +1 -0
  223. package/dist/react/vue/index.d.ts +1 -0
  224. package/dist/react/vue/scrollFadeIn/index.d.ts +1 -0
  225. package/dist/scrollFadeIn/core/count/index.d.ts +53 -0
  226. package/dist/scrollFadeIn/core/count/index.d.ts.map +1 -0
  227. package/dist/scrollFadeIn/core/index.d.ts +23 -0
  228. package/dist/scrollFadeIn/core/index.d.ts.map +1 -0
  229. package/dist/scrollFadeIn/core/scrollFadeIn/index.d.ts +57 -0
  230. package/dist/scrollFadeIn/core/scrollFadeIn/index.d.ts.map +1 -0
  231. package/dist/scrollFadeIn/core/textToParticle/index.d.ts +103 -0
  232. package/dist/scrollFadeIn/core/textToParticle/index.d.ts.map +1 -0
  233. package/dist/scrollFadeIn/core/typing/index.d.ts +54 -0
  234. package/dist/scrollFadeIn/core/typing/index.d.ts.map +1 -0
  235. package/dist/scrollFadeIn/core/utils/visibilityManager.d.ts +35 -0
  236. package/dist/scrollFadeIn/core/utils/visibilityManager.d.ts.map +1 -0
  237. package/dist/scrollFadeIn/index.cjs +1 -0
  238. package/dist/scrollFadeIn/index.d.ts +21 -0
  239. package/dist/scrollFadeIn/index.d.ts.map +1 -0
  240. package/dist/scrollFadeIn/index.mjs +1 -0
  241. package/dist/scrollFadeIn/index.umd.d.ts +7 -0
  242. package/dist/scrollFadeIn/index.umd.d.ts.map +1 -0
  243. package/dist/scrollFadeIn/react/MasonEffect.d.ts +32 -0
  244. package/dist/scrollFadeIn/react/MasonEffect.d.ts.map +1 -0
  245. package/dist/scrollFadeIn/react/count/Count.d.ts +19 -0
  246. package/dist/scrollFadeIn/react/count/Count.d.ts.map +1 -0
  247. package/dist/scrollFadeIn/react/count/index.d.ts +5 -0
  248. package/dist/scrollFadeIn/react/count/index.d.ts.map +1 -0
  249. package/dist/scrollFadeIn/react/index.d.ts +17 -0
  250. package/dist/scrollFadeIn/react/index.d.ts.map +1 -0
  251. package/dist/scrollFadeIn/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  252. package/dist/scrollFadeIn/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  253. package/dist/scrollFadeIn/react/scrollFadeIn/index.d.ts +5 -0
  254. package/dist/scrollFadeIn/react/scrollFadeIn/index.d.ts.map +1 -0
  255. package/dist/scrollFadeIn/react/textToParticle/TextToParticle.d.ts +15 -0
  256. package/dist/scrollFadeIn/react/textToParticle/TextToParticle.d.ts.map +1 -0
  257. package/dist/scrollFadeIn/react/textToParticle/index.d.ts +4 -0
  258. package/dist/scrollFadeIn/react/textToParticle/index.d.ts.map +1 -0
  259. package/dist/scrollFadeIn/react/typing/Typing.d.ts +18 -0
  260. package/dist/scrollFadeIn/react/typing/Typing.d.ts.map +1 -0
  261. package/dist/scrollFadeIn/react/typing/index.d.ts +4 -0
  262. package/dist/scrollFadeIn/react/typing/index.d.ts.map +1 -0
  263. package/dist/scrollFadeIn/svelte/count/index.d.ts +2 -0
  264. package/dist/scrollFadeIn/svelte/count/index.d.ts.map +1 -0
  265. package/dist/scrollFadeIn/svelte/index.d.ts +10 -0
  266. package/dist/scrollFadeIn/svelte/index.d.ts.map +1 -0
  267. package/dist/scrollFadeIn/svelte/scrollFadeIn/index.d.ts +2 -0
  268. package/dist/scrollFadeIn/svelte/scrollFadeIn/index.d.ts.map +1 -0
  269. package/dist/scrollFadeIn/svelte/textToParticle/index.d.ts +2 -0
  270. package/dist/scrollFadeIn/svelte/textToParticle/index.d.ts.map +1 -0
  271. package/dist/scrollFadeIn/svelte/typing/index.d.ts +3 -0
  272. package/dist/scrollFadeIn/svelte/typing/index.d.ts.map +1 -0
  273. package/dist/scrollFadeIn/vue/count/index.d.ts +2 -0
  274. package/dist/scrollFadeIn/vue/count/index.d.ts.map +1 -0
  275. package/dist/scrollFadeIn/vue/index.d.ts +10 -0
  276. package/dist/scrollFadeIn/vue/index.d.ts.map +1 -0
  277. package/dist/scrollFadeIn/vue/scrollFadeIn/index.d.ts +2 -0
  278. package/dist/scrollFadeIn/vue/scrollFadeIn/index.d.ts.map +1 -0
  279. package/dist/scrollFadeIn/vue/textToParticle/index.d.ts +2 -0
  280. package/dist/scrollFadeIn/vue/textToParticle/index.d.ts.map +1 -0
  281. package/dist/scrollFadeIn/vue/typing/index.d.ts +4 -0
  282. package/dist/scrollFadeIn/vue/typing/index.d.ts.map +1 -0
  283. package/dist/svelte/count/index.cjs +1 -1
  284. package/dist/svelte/count/index.d.ts +85 -29
  285. package/dist/svelte/count/index.mjs +120 -42
  286. package/dist/svelte/index.cjs +1 -1
  287. package/dist/svelte/index.d.ts +85 -29
  288. package/dist/svelte/index.mjs +707 -117
  289. package/dist/svelte/scrollFadeIn/index.cjs +1 -0
  290. package/dist/svelte/scrollFadeIn/index.d.ts +272 -0
  291. package/dist/svelte/scrollFadeIn/index.mjs +911 -0
  292. package/dist/svelte/textToParticle/index.cjs +1 -1
  293. package/dist/svelte/textToParticle/index.d.ts +85 -29
  294. package/dist/svelte/textToParticle/index.mjs +119 -33
  295. package/dist/svelte/typing/index.cjs +1 -1
  296. package/dist/svelte/typing/index.d.ts +85 -29
  297. package/dist/svelte/typing/index.mjs +117 -32
  298. package/dist/textToParticle/core/count/index.d.ts +3 -2
  299. package/dist/textToParticle/core/count/index.d.ts.map +1 -1
  300. package/dist/textToParticle/core/index.d.ts +3 -0
  301. package/dist/textToParticle/core/index.d.ts.map +1 -1
  302. package/dist/textToParticle/core/scrollFadeIn/index.d.ts +57 -0
  303. package/dist/textToParticle/core/scrollFadeIn/index.d.ts.map +1 -0
  304. package/dist/textToParticle/core/textToParticle/index.d.ts +3 -3
  305. package/dist/textToParticle/core/textToParticle/index.d.ts.map +1 -1
  306. package/dist/textToParticle/core/typing/index.d.ts +3 -2
  307. package/dist/textToParticle/core/typing/index.d.ts.map +1 -1
  308. package/dist/textToParticle/core/utils/visibilityManager.d.ts +35 -0
  309. package/dist/textToParticle/core/utils/visibilityManager.d.ts.map +1 -0
  310. package/dist/textToParticle/index.cjs +1 -1
  311. package/dist/textToParticle/index.d.ts +3 -0
  312. package/dist/textToParticle/index.d.ts.map +1 -1
  313. package/dist/textToParticle/index.mjs +1 -1
  314. package/dist/textToParticle/react/MasonEffect.d.ts.map +1 -1
  315. package/dist/textToParticle/react/index.d.ts +3 -0
  316. package/dist/textToParticle/react/index.d.ts.map +1 -1
  317. package/dist/textToParticle/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  318. package/dist/textToParticle/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  319. package/dist/textToParticle/react/scrollFadeIn/index.d.ts +5 -0
  320. package/dist/textToParticle/react/scrollFadeIn/index.d.ts.map +1 -0
  321. package/dist/textToParticle/react/textToParticle/TextToParticle.d.ts.map +1 -1
  322. package/dist/textToParticle/svelte/index.d.ts +1 -0
  323. package/dist/textToParticle/svelte/index.d.ts.map +1 -1
  324. package/dist/textToParticle/svelte/scrollFadeIn/index.d.ts +2 -0
  325. package/dist/textToParticle/svelte/scrollFadeIn/index.d.ts.map +1 -0
  326. package/dist/textToParticle/vue/index.d.ts +1 -0
  327. package/dist/textToParticle/vue/index.d.ts.map +1 -1
  328. package/dist/textToParticle/vue/scrollFadeIn/index.d.ts +2 -0
  329. package/dist/textToParticle/vue/scrollFadeIn/index.d.ts.map +1 -0
  330. package/dist/typing/core/count/index.d.ts +3 -2
  331. package/dist/typing/core/count/index.d.ts.map +1 -1
  332. package/dist/typing/core/index.d.ts +3 -0
  333. package/dist/typing/core/index.d.ts.map +1 -1
  334. package/dist/typing/core/scrollFadeIn/index.d.ts +57 -0
  335. package/dist/typing/core/scrollFadeIn/index.d.ts.map +1 -0
  336. package/dist/typing/core/textToParticle/index.d.ts +3 -3
  337. package/dist/typing/core/textToParticle/index.d.ts.map +1 -1
  338. package/dist/typing/core/typing/index.d.ts +3 -2
  339. package/dist/typing/core/typing/index.d.ts.map +1 -1
  340. package/dist/typing/core/utils/visibilityManager.d.ts +35 -0
  341. package/dist/typing/core/utils/visibilityManager.d.ts.map +1 -0
  342. package/dist/typing/index.cjs +1 -1
  343. package/dist/typing/index.d.ts +3 -0
  344. package/dist/typing/index.d.ts.map +1 -1
  345. package/dist/typing/index.mjs +1 -1
  346. package/dist/typing/react/MasonEffect.d.ts.map +1 -1
  347. package/dist/typing/react/index.d.ts +3 -0
  348. package/dist/typing/react/index.d.ts.map +1 -1
  349. package/dist/typing/react/scrollFadeIn/ScrollFadeIn.d.ts +19 -0
  350. package/dist/typing/react/scrollFadeIn/ScrollFadeIn.d.ts.map +1 -0
  351. package/dist/typing/react/scrollFadeIn/index.d.ts +5 -0
  352. package/dist/typing/react/scrollFadeIn/index.d.ts.map +1 -0
  353. package/dist/typing/react/textToParticle/TextToParticle.d.ts.map +1 -1
  354. package/dist/typing/svelte/index.d.ts +1 -0
  355. package/dist/typing/svelte/index.d.ts.map +1 -1
  356. package/dist/typing/svelte/scrollFadeIn/index.d.ts +2 -0
  357. package/dist/typing/svelte/scrollFadeIn/index.d.ts.map +1 -0
  358. package/dist/typing/vue/index.d.ts +1 -0
  359. package/dist/typing/vue/index.d.ts.map +1 -1
  360. package/dist/typing/vue/scrollFadeIn/index.d.ts +2 -0
  361. package/dist/typing/vue/scrollFadeIn/index.d.ts.map +1 -0
  362. package/dist/vue/count/index.cjs +1 -1
  363. package/dist/vue/count/index.d.ts +85 -29
  364. package/dist/vue/count/index.mjs +119 -41
  365. package/dist/vue/index.cjs +1 -1
  366. package/dist/vue/index.d.ts +85 -29
  367. package/dist/vue/index.mjs +506 -116
  368. package/dist/vue/scrollFadeIn/index.cjs +1 -0
  369. package/dist/vue/scrollFadeIn/index.d.ts +272 -0
  370. package/dist/vue/scrollFadeIn/index.mjs +447 -0
  371. package/dist/vue/textToParticle/index.cjs +1 -1
  372. package/dist/vue/textToParticle/index.d.ts +85 -29
  373. package/dist/vue/textToParticle/index.mjs +119 -33
  374. package/dist/vue/typing/index.cjs +1 -1
  375. package/dist/vue/typing/index.d.ts +85 -29
  376. package/dist/vue/typing/index.mjs +116 -31
  377. package/package.json +26 -2
@@ -4,6 +4,13 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
4
4
  import { createEventDispatcher, onMount, onDestroy } from "svelte";
5
5
  function noop() {
6
6
  }
7
+ function assign(tar, src) {
8
+ for (const k in src) tar[k] = src[k];
9
+ return (
10
+ /** @type {T & S} */
11
+ tar
12
+ );
13
+ }
7
14
  function run(fn) {
8
15
  return fn();
9
16
  }
@@ -35,6 +42,36 @@ function subscribe(store, ...callbacks) {
35
42
  function component_subscribe(component, store, callback) {
36
43
  component.$$.on_destroy.push(subscribe(store, callback));
37
44
  }
45
+ function create_slot(definition, ctx, $$scope, fn) {
46
+ if (definition) {
47
+ const slot_ctx = get_slot_context(definition, ctx, $$scope, fn);
48
+ return definition[0](slot_ctx);
49
+ }
50
+ }
51
+ function get_slot_context(definition, ctx, $$scope, fn) {
52
+ return definition[1] && fn ? assign($$scope.ctx.slice(), definition[1](fn(ctx))) : $$scope.ctx;
53
+ }
54
+ function get_slot_changes(definition, $$scope, dirty, fn) {
55
+ if (definition[2] && fn) ;
56
+ return $$scope.dirty;
57
+ }
58
+ function update_slot_base(slot, slot_definition, ctx, $$scope, slot_changes, get_slot_context_fn) {
59
+ if (slot_changes) {
60
+ const slot_context = get_slot_context(slot_definition, ctx, $$scope, get_slot_context_fn);
61
+ slot.p(slot_context, slot_changes);
62
+ }
63
+ }
64
+ function get_all_dirty_from_scope($$scope) {
65
+ if ($$scope.ctx.length > 32) {
66
+ const dirty = [];
67
+ const length = $$scope.ctx.length / 32;
68
+ for (let i = 0; i < length; i++) {
69
+ dirty[i] = -1;
70
+ }
71
+ return dirty;
72
+ }
73
+ return -1;
74
+ }
38
75
  function insert(target, node, anchor) {
39
76
  target.insertBefore(node, anchor || null);
40
77
  }
@@ -130,12 +167,23 @@ function flush_render_callbacks(fns) {
130
167
  render_callbacks = filtered;
131
168
  }
132
169
  const outroing = /* @__PURE__ */ new Set();
170
+ let outros;
133
171
  function transition_in(block, local) {
134
172
  if (block && block.i) {
135
173
  outroing.delete(block);
136
174
  block.i(local);
137
175
  }
138
176
  }
177
+ function transition_out(block, local, detach2, callback) {
178
+ if (block && block.o) {
179
+ if (outroing.has(block)) return;
180
+ outroing.add(block);
181
+ outros.c.push(() => {
182
+ outroing.delete(block);
183
+ });
184
+ block.o(local);
185
+ }
186
+ }
139
187
  function mount_component(component, target, anchor) {
140
188
  const { fragment, after_update } = component.$$;
141
189
  fragment && fragment.m(target, anchor);
@@ -276,6 +324,107 @@ class SvelteComponent {
276
324
  const PUBLIC_VERSION = "4";
277
325
  if (typeof window !== "undefined")
278
326
  (window.__svelte || (window.__svelte = { v: /* @__PURE__ */ new Set() })).v.add(PUBLIC_VERSION);
327
+ class VisibilityManager {
328
+ constructor(container, options = {}) {
329
+ this.container = container;
330
+ this.options = {
331
+ threshold: options.threshold ?? 0.1,
332
+ rootMargin: options.rootMargin ?? "0px",
333
+ onVisible: options.onVisible,
334
+ onHidden: options.onHidden
335
+ };
336
+ this.intersectionObserver = null;
337
+ this.visibilityChangeHandler = null;
338
+ this.isVisible = false;
339
+ this.isPageVisible = typeof document !== "undefined" ? !document.hidden : true;
340
+ this.setupIntersectionObserver();
341
+ this.setupPageVisibility();
342
+ }
343
+ setupIntersectionObserver() {
344
+ if (typeof window === "undefined" || typeof window.IntersectionObserver === "undefined") {
345
+ this.isVisible = true;
346
+ if (this.isPageVisible && this.options.onVisible) {
347
+ this.options.onVisible();
348
+ }
349
+ return;
350
+ }
351
+ this.intersectionObserver = new IntersectionObserver(
352
+ (entries) => {
353
+ for (const entry of entries) {
354
+ if (entry.target !== this.container) continue;
355
+ if (entry.isIntersecting) {
356
+ this.isVisible = true;
357
+ if (this.isPageVisible && this.options.onVisible) {
358
+ this.options.onVisible();
359
+ }
360
+ } else {
361
+ this.isVisible = false;
362
+ if (this.options.onHidden) {
363
+ this.options.onHidden();
364
+ }
365
+ }
366
+ }
367
+ },
368
+ {
369
+ threshold: this.options.threshold,
370
+ rootMargin: this.options.rootMargin
371
+ }
372
+ );
373
+ this.intersectionObserver.observe(this.container);
374
+ }
375
+ setupPageVisibility() {
376
+ if (typeof document === "undefined") return;
377
+ this.visibilityChangeHandler = () => {
378
+ const wasVisible = this.isPageVisible;
379
+ this.isPageVisible = !document.hidden;
380
+ if (document.hidden) {
381
+ if (this.options.onHidden) {
382
+ this.options.onHidden();
383
+ }
384
+ } else if (wasVisible !== this.isPageVisible) {
385
+ if (this.isVisible && this.options.onVisible) {
386
+ this.options.onVisible();
387
+ }
388
+ }
389
+ };
390
+ document.addEventListener("visibilitychange", this.visibilityChangeHandler);
391
+ if (document.hidden && this.isVisible) {
392
+ if (this.options.onHidden) {
393
+ this.options.onHidden();
394
+ }
395
+ }
396
+ }
397
+ /**
398
+ * 현재 요소가 화면에 보이는지 확인
399
+ */
400
+ getIsVisible() {
401
+ return this.isVisible && this.isPageVisible;
402
+ }
403
+ /**
404
+ * 옵션 업데이트
405
+ */
406
+ updateOptions(newOptions) {
407
+ this.options = { ...this.options, ...newOptions };
408
+ if (this.intersectionObserver) {
409
+ this.intersectionObserver.disconnect();
410
+ this.intersectionObserver = null;
411
+ }
412
+ this.setupIntersectionObserver();
413
+ }
414
+ /**
415
+ * 리소스 정리
416
+ */
417
+ destroy() {
418
+ if (this.intersectionObserver) {
419
+ this.intersectionObserver.disconnect();
420
+ this.intersectionObserver = null;
421
+ }
422
+ if (this.visibilityChangeHandler && typeof document !== "undefined") {
423
+ document.removeEventListener("visibilitychange", this.visibilityChangeHandler);
424
+ this.visibilityChangeHandler = null;
425
+ }
426
+ }
427
+ }
279
428
  function debounce(func, wait) {
280
429
  let timeout = null;
281
430
  return function executedFunction(...args) {
@@ -333,8 +482,7 @@ class TextToParticle {
333
482
  this.mouse = { x: 0, y: 0, down: false };
334
483
  this.animationId = null;
335
484
  this.isRunning = false;
336
- this.isVisible = false;
337
- this.intersectionObserver = null;
485
+ this.visibilityManager = null;
338
486
  this.debounceDelay = options.debounceDelay ?? 150;
339
487
  const boundHandleResize = this.handleResize.bind(this);
340
488
  this.handleResize = debounce(boundHandleResize, this.debounceDelay);
@@ -349,39 +497,22 @@ class TextToParticle {
349
497
  init() {
350
498
  this.resize();
351
499
  this.setupEventListeners();
352
- this.setupIntersectionObserver();
500
+ this.setupVisibilityManager();
353
501
  if (this.config.onReady) {
354
502
  this.config.onReady(this);
355
503
  }
356
504
  }
357
- setupIntersectionObserver() {
358
- if (typeof window === "undefined" || typeof window.IntersectionObserver === "undefined") {
359
- this.isVisible = true;
360
- this.start();
361
- return;
362
- }
363
- if (this.intersectionObserver) {
364
- return;
365
- }
366
- this.intersectionObserver = new IntersectionObserver(
367
- (entries) => {
368
- for (const entry of entries) {
369
- if (entry.target !== this.container) continue;
370
- if (entry.isIntersecting) {
371
- this.isVisible = true;
372
- this.start();
373
- } else {
374
- this.isVisible = false;
375
- this.stop();
376
- }
377
- }
505
+ setupVisibilityManager() {
506
+ this.visibilityManager = new VisibilityManager(this.container, {
507
+ threshold: 0.1,
508
+ // 10% 이상 보일 때 동작
509
+ onVisible: () => {
510
+ this.start();
378
511
  },
379
- {
380
- threshold: 0.1
381
- // 10% 이상 보일 때 동작
512
+ onHidden: () => {
513
+ this.stop();
382
514
  }
383
- );
384
- this.intersectionObserver.observe(this.container);
515
+ });
385
516
  }
386
517
  resize() {
387
518
  const width = this.config.width || this.container.clientWidth || window.innerWidth;
@@ -618,7 +749,10 @@ class TextToParticle {
618
749
  p.y += p.vy;
619
750
  }
620
751
  this.ctx.fillStyle = this.config.particleColor;
621
- const r = this.config.pointSize * this.DPR;
752
+ const baseSize = 1920;
753
+ const currentSize = Math.min(this.W, this.H) / this.DPR;
754
+ const sizeRatio = Math.max(0.5, Math.min(2, currentSize / baseSize));
755
+ const r = this.config.pointSize * this.DPR * sizeRatio;
622
756
  for (const p of this.particles) {
623
757
  this.ctx.beginPath();
624
758
  this.ctx.arc(p.x, p.y, r, 0, Math.PI * 2);
@@ -690,16 +824,16 @@ class TextToParticle {
690
824
  destroy() {
691
825
  this.stop();
692
826
  this.removeEventListeners();
693
- if (this.intersectionObserver) {
694
- this.intersectionObserver.disconnect();
695
- this.intersectionObserver = null;
827
+ if (this.visibilityManager) {
828
+ this.visibilityManager.destroy();
829
+ this.visibilityManager = null;
696
830
  }
697
831
  if (this.canvas && this.canvas.parentNode) {
698
832
  this.canvas.parentNode.removeChild(this.canvas);
699
833
  }
700
834
  }
701
835
  }
702
- const easingFunctions = {
836
+ const easingFunctions$1 = {
703
837
  linear: (t) => t
704
838
  };
705
839
  class Count {
@@ -713,7 +847,7 @@ class Count {
713
847
  duration: options.duration ?? 2e3,
714
848
  startValue: options.startValue ?? 0,
715
849
  enabled: options.enabled ?? true,
716
- easing: options.easing ?? easingFunctions.linear,
850
+ easing: options.easing ?? easingFunctions$1.linear,
717
851
  threshold: options.threshold ?? 0.2,
718
852
  rootMargin: options.rootMargin ?? "0px 0px -100px 0px",
719
853
  triggerOnce: options.triggerOnce ?? false,
@@ -723,54 +857,31 @@ class Count {
723
857
  this.currentValue = this.config.startValue;
724
858
  this.startTime = null;
725
859
  this.animationFrameId = null;
726
- this.intersectionObserver = null;
860
+ this.visibilityManager = null;
727
861
  this.isRunning = false;
728
862
  this.hasTriggered = false;
729
863
  this.init();
730
864
  }
731
865
  init() {
732
866
  this.updateDisplay(this.config.startValue);
733
- this.setupIntersectionObserver();
734
- }
735
- setupIntersectionObserver() {
736
- if (typeof window === "undefined" || typeof window.IntersectionObserver === "undefined") {
737
- if (this.config.enabled) {
738
- this.start();
739
- }
740
- return;
741
- }
742
- this.intersectionObserver = new IntersectionObserver(
743
- (entries) => {
744
- var _a;
745
- for (const entry of entries) {
746
- if (entry.target !== this.container) continue;
747
- if (entry.isIntersecting) {
748
- if (!this.hasTriggered && this.config.enabled) {
749
- this.hasTriggered = true;
750
- this.start();
751
- }
752
- if (this.config.triggerOnce) {
753
- (_a = this.intersectionObserver) == null ? void 0 : _a.unobserve(this.container);
754
- }
755
- } else {
756
- if (!this.config.triggerOnce) {
757
- const rect = entry.boundingClientRect;
758
- const viewportHeight = window.innerHeight;
759
- const viewportWidth = window.innerWidth;
760
- const isCompletelyOutOfViewport = rect.bottom <= 0 || rect.top >= viewportHeight || rect.right <= 0 || rect.left >= viewportWidth;
761
- if (isCompletelyOutOfViewport && this.isRunning) {
762
- this.reset();
763
- }
764
- }
765
- }
867
+ this.setupVisibilityManager();
868
+ }
869
+ setupVisibilityManager() {
870
+ this.visibilityManager = new VisibilityManager(this.container, {
871
+ threshold: this.config.threshold,
872
+ rootMargin: this.config.rootMargin,
873
+ onVisible: () => {
874
+ if (!this.hasTriggered && this.config.enabled) {
875
+ this.hasTriggered = true;
876
+ this.start();
766
877
  }
767
878
  },
768
- {
769
- threshold: this.config.threshold,
770
- rootMargin: this.config.rootMargin
879
+ onHidden: () => {
880
+ if (!this.config.triggerOnce && this.isRunning) {
881
+ this.reset();
882
+ }
771
883
  }
772
- );
773
- this.intersectionObserver.observe(this.container);
884
+ });
774
885
  }
775
886
  start() {
776
887
  if (this.isRunning) return;
@@ -854,9 +965,9 @@ class Count {
854
965
  // 파괴 및 정리
855
966
  destroy() {
856
967
  this.stop();
857
- if (this.intersectionObserver) {
858
- this.intersectionObserver.disconnect();
859
- this.intersectionObserver = null;
968
+ if (this.visibilityManager) {
969
+ this.visibilityManager.destroy();
970
+ this.visibilityManager = null;
860
971
  }
861
972
  }
862
973
  }
@@ -946,44 +1057,28 @@ class Typing {
946
1057
  this.currentIndex = 0;
947
1058
  this.displayedText = "";
948
1059
  this.timeoutId = null;
949
- this.intersectionObserver = null;
1060
+ this.visibilityManager = null;
950
1061
  this.isRunning = false;
951
1062
  this.hasTriggered = false;
952
1063
  this.init();
953
1064
  }
954
1065
  init() {
955
1066
  this.updateDisplay("");
956
- this.setupIntersectionObserver();
957
- }
958
- setupIntersectionObserver() {
959
- if (typeof window === "undefined" || typeof window.IntersectionObserver === "undefined") {
960
- if (this.config.enabled) {
961
- setTimeout(() => this.start(), this.config.delay);
962
- }
963
- return;
964
- }
965
- this.intersectionObserver = new IntersectionObserver(
966
- (entries) => {
967
- var _a;
968
- for (const entry of entries) {
969
- if (entry.target !== this.container) continue;
970
- if (entry.isIntersecting && !this.hasTriggered) {
971
- if (this.config.enabled) {
972
- setTimeout(() => this.start(), this.config.delay);
973
- }
974
- this.hasTriggered = true;
975
- if (this.config.triggerOnce) {
976
- (_a = this.intersectionObserver) == null ? void 0 : _a.disconnect();
977
- }
978
- }
1067
+ this.setupVisibilityManager();
1068
+ }
1069
+ setupVisibilityManager() {
1070
+ this.visibilityManager = new VisibilityManager(this.container, {
1071
+ threshold: this.config.threshold,
1072
+ rootMargin: this.config.rootMargin,
1073
+ onVisible: () => {
1074
+ if (!this.hasTriggered && this.config.enabled) {
1075
+ this.hasTriggered = true;
1076
+ setTimeout(() => this.start(), this.config.delay);
979
1077
  }
980
1078
  },
981
- {
982
- threshold: this.config.threshold,
983
- rootMargin: this.config.rootMargin
1079
+ onHidden: () => {
984
1080
  }
985
- );
986
- this.intersectionObserver.observe(this.container);
1081
+ });
987
1082
  }
988
1083
  // 단위들을 다시 합쳐서 실제 표시할 텍스트 생성
989
1084
  // 한글의 경우 자음/모음이 하나씩 보이도록 합성
@@ -1079,13 +1174,236 @@ class Typing {
1079
1174
  }
1080
1175
  destroy() {
1081
1176
  this.stop();
1082
- if (this.intersectionObserver) {
1083
- this.intersectionObserver.disconnect();
1084
- this.intersectionObserver = null;
1177
+ if (this.visibilityManager) {
1178
+ this.visibilityManager.destroy();
1179
+ this.visibilityManager = null;
1085
1180
  }
1086
1181
  }
1087
1182
  }
1088
- function create_fragment$2(ctx) {
1183
+ const easingFunctions = {
1184
+ easeOutCubic: (t) => --t * t * t + 1
1185
+ };
1186
+ class ScrollFadeIn {
1187
+ // 계산된 거리 (px)
1188
+ constructor(container, options = {}) {
1189
+ this.container = typeof container === "string" ? document.querySelector(container) : container;
1190
+ if (!this.container) {
1191
+ throw new Error("Container element not found");
1192
+ }
1193
+ this.config = {
1194
+ direction: options.direction ?? "bottom",
1195
+ distance: options.distance ?? "50px",
1196
+ duration: options.duration ?? 800,
1197
+ easing: options.easing ?? easingFunctions.easeOutCubic,
1198
+ threshold: options.threshold ?? 0.1,
1199
+ rootMargin: options.rootMargin ?? "0px",
1200
+ triggerOnce: options.triggerOnce ?? false,
1201
+ enabled: options.enabled ?? true,
1202
+ onStart: options.onStart || null,
1203
+ onComplete: options.onComplete || null
1204
+ };
1205
+ this.visibilityManager = null;
1206
+ this.animationFrameId = null;
1207
+ this.startTime = null;
1208
+ this.isRunning = false;
1209
+ this.hasTriggered = false;
1210
+ this.initialTransform = "";
1211
+ this.targetDistance = 0;
1212
+ this.init();
1213
+ }
1214
+ init() {
1215
+ const computedStyle = window.getComputedStyle(this.container);
1216
+ this.initialTransform = computedStyle.transform !== "none" ? computedStyle.transform : this.container.style.transform || "";
1217
+ this.targetDistance = this.parseDistance(this.config.distance);
1218
+ this.setInitialPosition();
1219
+ this.setupVisibilityManager();
1220
+ }
1221
+ parseDistance(distance) {
1222
+ const match = distance.match(/^(-?\d+\.?\d*)(px|rem|em|%|vh|vw)$/);
1223
+ if (!match) {
1224
+ const num = parseFloat(distance) || 50;
1225
+ return num;
1226
+ }
1227
+ const value = parseFloat(match[1]);
1228
+ const unit = match[2];
1229
+ switch (unit) {
1230
+ case "px":
1231
+ return value;
1232
+ case "rem":
1233
+ case "em":
1234
+ const fontSize = parseFloat(getComputedStyle(document.documentElement).fontSize) || 16;
1235
+ return value * fontSize;
1236
+ case "%":
1237
+ const rect = this.container.getBoundingClientRect();
1238
+ const dimension = this.config.direction === "top" || this.config.direction === "bottom" ? rect.height : rect.width;
1239
+ return value / 100 * dimension;
1240
+ case "vh":
1241
+ return value / 100 * window.innerHeight;
1242
+ case "vw":
1243
+ return value / 100 * window.innerWidth;
1244
+ default:
1245
+ return value;
1246
+ }
1247
+ }
1248
+ setInitialPosition() {
1249
+ const direction = this.config.direction;
1250
+ let translateX = 0;
1251
+ let translateY = 0;
1252
+ switch (direction) {
1253
+ case "top":
1254
+ translateY = -this.targetDistance;
1255
+ break;
1256
+ case "right":
1257
+ translateX = this.targetDistance;
1258
+ break;
1259
+ case "bottom":
1260
+ translateY = this.targetDistance;
1261
+ break;
1262
+ case "left":
1263
+ translateX = -this.targetDistance;
1264
+ break;
1265
+ }
1266
+ const existingTransform = this.initialTransform || "";
1267
+ const translate = `translate(${translateX}px, ${translateY}px)`;
1268
+ if (existingTransform && existingTransform !== "none") {
1269
+ this.container.style.transform = `${translate} ${existingTransform}`;
1270
+ } else {
1271
+ this.container.style.transform = translate;
1272
+ }
1273
+ this.container.style.opacity = "0";
1274
+ this.container.style.transition = "none";
1275
+ }
1276
+ setupVisibilityManager() {
1277
+ this.visibilityManager = new VisibilityManager(this.container, {
1278
+ threshold: this.config.threshold,
1279
+ rootMargin: this.config.rootMargin,
1280
+ onVisible: () => {
1281
+ if (!this.hasTriggered && this.config.enabled) {
1282
+ this.hasTriggered = true;
1283
+ this.start();
1284
+ }
1285
+ },
1286
+ onHidden: () => {
1287
+ if (!this.config.triggerOnce && this.isRunning) {
1288
+ this.reset();
1289
+ }
1290
+ }
1291
+ });
1292
+ }
1293
+ start() {
1294
+ if (this.isRunning) return;
1295
+ this.isRunning = true;
1296
+ this.startTime = performance.now();
1297
+ if (this.config.onStart) {
1298
+ this.config.onStart();
1299
+ }
1300
+ this.container.style.transition = "none";
1301
+ this.animate();
1302
+ }
1303
+ animate() {
1304
+ if (!this.isRunning) return;
1305
+ const currentTime = performance.now();
1306
+ const elapsed = currentTime - (this.startTime || 0);
1307
+ const progress = Math.min(elapsed / this.config.duration, 1);
1308
+ const easedProgress = this.config.easing(progress);
1309
+ const direction = this.config.direction;
1310
+ let translateX = 0;
1311
+ let translateY = 0;
1312
+ switch (direction) {
1313
+ case "top":
1314
+ translateY = -this.targetDistance * (1 - easedProgress);
1315
+ break;
1316
+ case "right":
1317
+ translateX = this.targetDistance * (1 - easedProgress);
1318
+ break;
1319
+ case "bottom":
1320
+ translateY = this.targetDistance * (1 - easedProgress);
1321
+ break;
1322
+ case "left":
1323
+ translateX = -this.targetDistance * (1 - easedProgress);
1324
+ break;
1325
+ }
1326
+ const existingTransform = this.initialTransform || "";
1327
+ const translate = `translate(${translateX}px, ${translateY}px)`;
1328
+ if (existingTransform && existingTransform !== "none") {
1329
+ this.container.style.transform = `${translate} ${existingTransform}`;
1330
+ } else {
1331
+ this.container.style.transform = translate;
1332
+ }
1333
+ this.container.style.opacity = String(easedProgress);
1334
+ if (progress < 1) {
1335
+ this.animationFrameId = requestAnimationFrame(() => this.animate());
1336
+ } else {
1337
+ this.complete();
1338
+ }
1339
+ }
1340
+ complete() {
1341
+ this.isRunning = false;
1342
+ if (this.initialTransform && this.initialTransform !== "none") {
1343
+ this.container.style.transform = this.initialTransform;
1344
+ } else {
1345
+ this.container.style.transform = "";
1346
+ }
1347
+ this.container.style.opacity = "1";
1348
+ if (this.animationFrameId) {
1349
+ cancelAnimationFrame(this.animationFrameId);
1350
+ this.animationFrameId = null;
1351
+ }
1352
+ if (this.config.onComplete) {
1353
+ this.config.onComplete();
1354
+ }
1355
+ }
1356
+ reset() {
1357
+ this.stop();
1358
+ this.hasTriggered = false;
1359
+ this.setInitialPosition();
1360
+ }
1361
+ stop() {
1362
+ this.isRunning = false;
1363
+ if (this.animationFrameId) {
1364
+ cancelAnimationFrame(this.animationFrameId);
1365
+ this.animationFrameId = null;
1366
+ }
1367
+ }
1368
+ // 설정 업데이트
1369
+ updateConfig(newConfig) {
1370
+ const wasRunning = this.isRunning;
1371
+ this.stop();
1372
+ this.config = {
1373
+ ...this.config,
1374
+ ...newConfig,
1375
+ easing: newConfig.easing ?? this.config.easing,
1376
+ onStart: newConfig.onStart ?? this.config.onStart,
1377
+ onComplete: newConfig.onComplete ?? this.config.onComplete
1378
+ };
1379
+ if (newConfig.distance) {
1380
+ this.targetDistance = this.parseDistance(this.config.distance);
1381
+ }
1382
+ this.setInitialPosition();
1383
+ if (newConfig.threshold !== void 0 || newConfig.rootMargin !== void 0) {
1384
+ if (this.visibilityManager) {
1385
+ this.visibilityManager.destroy();
1386
+ this.visibilityManager = null;
1387
+ }
1388
+ this.setupVisibilityManager();
1389
+ }
1390
+ if (wasRunning && this.config.enabled) {
1391
+ this.start();
1392
+ }
1393
+ }
1394
+ // 파괴 및 정리
1395
+ destroy() {
1396
+ this.stop();
1397
+ if (this.visibilityManager) {
1398
+ this.visibilityManager.destroy();
1399
+ this.visibilityManager = null;
1400
+ }
1401
+ this.container.style.transform = this.initialTransform || "";
1402
+ this.container.style.opacity = "";
1403
+ this.container.style.transition = "";
1404
+ }
1405
+ }
1406
+ function create_fragment$3(ctx) {
1089
1407
  let div;
1090
1408
  return {
1091
1409
  c() {
@@ -1137,7 +1455,7 @@ function create_fragment$2(ctx) {
1137
1455
  }
1138
1456
  };
1139
1457
  }
1140
- function instance_1$1($$self, $$props, $$invalidate) {
1458
+ function instance_1$2($$self, $$props, $$invalidate) {
1141
1459
  let { text = "mason effect" } = $$props;
1142
1460
  let { densityStep = 2 } = $$props;
1143
1461
  let { maxParticles = 3200 } = $$props;
@@ -1283,7 +1601,7 @@ function instance_1$1($$self, $$props, $$invalidate) {
1283
1601
  class TextToParticle_1 extends SvelteComponent {
1284
1602
  constructor(options) {
1285
1603
  super();
1286
- init(this, options, instance_1$1, create_fragment$2, safe_not_equal, {
1604
+ init(this, options, instance_1$2, create_fragment$3, safe_not_equal, {
1287
1605
  text: 3,
1288
1606
  densityStep: 4,
1289
1607
  maxParticles: 5,
@@ -1318,7 +1636,7 @@ class TextToParticle_1 extends SvelteComponent {
1318
1636
  return this.$$.ctx[19];
1319
1637
  }
1320
1638
  }
1321
- function create_fragment$1(ctx) {
1639
+ function create_fragment$2(ctx) {
1322
1640
  let div;
1323
1641
  return {
1324
1642
  c() {
@@ -1370,7 +1688,7 @@ function create_fragment$1(ctx) {
1370
1688
  }
1371
1689
  };
1372
1690
  }
1373
- function instance_1($$self, $$props, $$invalidate) {
1691
+ function instance_1$1($$self, $$props, $$invalidate) {
1374
1692
  let { targetValue = 0 } = $$props;
1375
1693
  let { duration = 2e3 } = $$props;
1376
1694
  let { startValue = 0 } = $$props;
@@ -1510,7 +1828,7 @@ function instance_1($$self, $$props, $$invalidate) {
1510
1828
  class Count_1 extends SvelteComponent {
1511
1829
  constructor(options) {
1512
1830
  super();
1513
- init(this, options, instance_1, create_fragment$1, safe_not_equal, {
1831
+ init(this, options, instance_1$1, create_fragment$2, safe_not_equal, {
1514
1832
  targetValue: 3,
1515
1833
  duration: 4,
1516
1834
  startValue: 5,
@@ -1548,7 +1866,7 @@ class Count_1 extends SvelteComponent {
1548
1866
  return this.$$.ctx[16];
1549
1867
  }
1550
1868
  }
1551
- function create_fragment(ctx) {
1869
+ function create_fragment$1(ctx) {
1552
1870
  let div;
1553
1871
  return {
1554
1872
  c() {
@@ -1656,7 +1974,7 @@ function instance($$self, $$props, $$invalidate) {
1656
1974
  class Typing_1 extends SvelteComponent {
1657
1975
  constructor(options) {
1658
1976
  super();
1659
- init(this, options, instance, create_fragment, safe_not_equal, {
1977
+ init(this, options, instance, create_fragment$1, safe_not_equal, {
1660
1978
  start: 3,
1661
1979
  stop: 4,
1662
1980
  reset: 5,
@@ -1680,9 +1998,281 @@ class Typing_1 extends SvelteComponent {
1680
1998
  return this.$$.ctx[7];
1681
1999
  }
1682
2000
  }
2001
+ function create_fragment(ctx) {
2002
+ let div;
2003
+ let current;
2004
+ const default_slot_template = (
2005
+ /*#slots*/
2006
+ ctx[18].default
2007
+ );
2008
+ const default_slot = create_slot(
2009
+ default_slot_template,
2010
+ ctx,
2011
+ /*$$scope*/
2012
+ ctx[17],
2013
+ null
2014
+ );
2015
+ return {
2016
+ c() {
2017
+ div = element("div");
2018
+ if (default_slot) default_slot.c();
2019
+ attr(
2020
+ div,
2021
+ "class",
2022
+ /*className*/
2023
+ ctx[0]
2024
+ );
2025
+ attr(
2026
+ div,
2027
+ "style",
2028
+ /*style*/
2029
+ ctx[1]
2030
+ );
2031
+ },
2032
+ m(target, anchor) {
2033
+ insert(target, div, anchor);
2034
+ if (default_slot) {
2035
+ default_slot.m(div, null);
2036
+ }
2037
+ ctx[19](div);
2038
+ current = true;
2039
+ },
2040
+ p(ctx2, [dirty]) {
2041
+ if (default_slot) {
2042
+ if (default_slot.p && (!current || dirty & /*$$scope*/
2043
+ 131072)) {
2044
+ update_slot_base(
2045
+ default_slot,
2046
+ default_slot_template,
2047
+ ctx2,
2048
+ /*$$scope*/
2049
+ ctx2[17],
2050
+ !current ? get_all_dirty_from_scope(
2051
+ /*$$scope*/
2052
+ ctx2[17]
2053
+ ) : get_slot_changes(
2054
+ default_slot_template,
2055
+ /*$$scope*/
2056
+ ctx2[17],
2057
+ dirty,
2058
+ null
2059
+ ),
2060
+ null
2061
+ );
2062
+ }
2063
+ }
2064
+ if (!current || dirty & /*className*/
2065
+ 1) {
2066
+ attr(
2067
+ div,
2068
+ "class",
2069
+ /*className*/
2070
+ ctx2[0]
2071
+ );
2072
+ }
2073
+ if (!current || dirty & /*style*/
2074
+ 2) {
2075
+ attr(
2076
+ div,
2077
+ "style",
2078
+ /*style*/
2079
+ ctx2[1]
2080
+ );
2081
+ }
2082
+ },
2083
+ i(local) {
2084
+ if (current) return;
2085
+ transition_in(default_slot, local);
2086
+ current = true;
2087
+ },
2088
+ o(local) {
2089
+ transition_out(default_slot, local);
2090
+ current = false;
2091
+ },
2092
+ d(detaching) {
2093
+ if (detaching) {
2094
+ detach(div);
2095
+ }
2096
+ if (default_slot) default_slot.d(detaching);
2097
+ ctx[19](null);
2098
+ }
2099
+ };
2100
+ }
2101
+ function instance_1($$self, $$props, $$invalidate) {
2102
+ let { $$slots: slots = {}, $$scope } = $$props;
2103
+ let { direction = "bottom" } = $$props;
2104
+ let { distance = "50px" } = $$props;
2105
+ let { duration = 800 } = $$props;
2106
+ let { easing = (t) => t } = $$props;
2107
+ let { threshold = 0.1 } = $$props;
2108
+ let { rootMargin = "0px" } = $$props;
2109
+ let { triggerOnce = false } = $$props;
2110
+ let { enabled = true } = $$props;
2111
+ let { className = "" } = $$props;
2112
+ let { style = {} } = $$props;
2113
+ const dispatch = createEventDispatcher();
2114
+ let container;
2115
+ let instance2 = null;
2116
+ onMount(() => {
2117
+ if (!container) return;
2118
+ const options = {
2119
+ direction,
2120
+ distance,
2121
+ duration,
2122
+ easing,
2123
+ threshold,
2124
+ rootMargin,
2125
+ triggerOnce,
2126
+ enabled,
2127
+ onStart: () => {
2128
+ dispatch("start");
2129
+ },
2130
+ onComplete: () => {
2131
+ dispatch("complete");
2132
+ }
2133
+ };
2134
+ $$invalidate(16, instance2 = new ScrollFadeIn(container, options));
2135
+ });
2136
+ onDestroy(() => {
2137
+ if (instance2) {
2138
+ instance2.destroy();
2139
+ $$invalidate(16, instance2 = null);
2140
+ }
2141
+ });
2142
+ function start() {
2143
+ if (instance2) {
2144
+ instance2.start();
2145
+ }
2146
+ }
2147
+ function stop() {
2148
+ if (instance2) {
2149
+ instance2.stop();
2150
+ }
2151
+ }
2152
+ function reset() {
2153
+ if (instance2) {
2154
+ instance2.reset();
2155
+ }
2156
+ }
2157
+ function updateConfig(config) {
2158
+ if (instance2) {
2159
+ instance2.updateConfig(config);
2160
+ }
2161
+ }
2162
+ function destroy() {
2163
+ if (instance2) {
2164
+ instance2.destroy();
2165
+ $$invalidate(16, instance2 = null);
2166
+ }
2167
+ }
2168
+ function div_binding($$value) {
2169
+ binding_callbacks[$$value ? "unshift" : "push"](() => {
2170
+ container = $$value;
2171
+ $$invalidate(2, container);
2172
+ });
2173
+ }
2174
+ $$self.$$set = ($$props2) => {
2175
+ if ("direction" in $$props2) $$invalidate(3, direction = $$props2.direction);
2176
+ if ("distance" in $$props2) $$invalidate(4, distance = $$props2.distance);
2177
+ if ("duration" in $$props2) $$invalidate(5, duration = $$props2.duration);
2178
+ if ("easing" in $$props2) $$invalidate(6, easing = $$props2.easing);
2179
+ if ("threshold" in $$props2) $$invalidate(7, threshold = $$props2.threshold);
2180
+ if ("rootMargin" in $$props2) $$invalidate(8, rootMargin = $$props2.rootMargin);
2181
+ if ("triggerOnce" in $$props2) $$invalidate(9, triggerOnce = $$props2.triggerOnce);
2182
+ if ("enabled" in $$props2) $$invalidate(10, enabled = $$props2.enabled);
2183
+ if ("className" in $$props2) $$invalidate(0, className = $$props2.className);
2184
+ if ("style" in $$props2) $$invalidate(1, style = $$props2.style);
2185
+ if ("$$scope" in $$props2) $$invalidate(17, $$scope = $$props2.$$scope);
2186
+ };
2187
+ $$self.$$.update = () => {
2188
+ if ($$self.$$.dirty & /*instance, direction, distance, duration, easing, threshold, rootMargin, triggerOnce, enabled*/
2189
+ 67576) {
2190
+ {
2191
+ if (instance2) {
2192
+ instance2.updateConfig({
2193
+ direction,
2194
+ distance,
2195
+ duration,
2196
+ easing,
2197
+ threshold,
2198
+ rootMargin,
2199
+ triggerOnce,
2200
+ enabled,
2201
+ onStart: () => {
2202
+ dispatch("start");
2203
+ },
2204
+ onComplete: () => {
2205
+ dispatch("complete");
2206
+ }
2207
+ });
2208
+ }
2209
+ }
2210
+ }
2211
+ };
2212
+ return [
2213
+ className,
2214
+ style,
2215
+ container,
2216
+ direction,
2217
+ distance,
2218
+ duration,
2219
+ easing,
2220
+ threshold,
2221
+ rootMargin,
2222
+ triggerOnce,
2223
+ enabled,
2224
+ start,
2225
+ stop,
2226
+ reset,
2227
+ updateConfig,
2228
+ destroy,
2229
+ instance2,
2230
+ $$scope,
2231
+ slots,
2232
+ div_binding
2233
+ ];
2234
+ }
2235
+ class ScrollFadeIn_1 extends SvelteComponent {
2236
+ constructor(options) {
2237
+ super();
2238
+ init(this, options, instance_1, create_fragment, safe_not_equal, {
2239
+ direction: 3,
2240
+ distance: 4,
2241
+ duration: 5,
2242
+ easing: 6,
2243
+ threshold: 7,
2244
+ rootMargin: 8,
2245
+ triggerOnce: 9,
2246
+ enabled: 10,
2247
+ className: 0,
2248
+ style: 1,
2249
+ start: 11,
2250
+ stop: 12,
2251
+ reset: 13,
2252
+ updateConfig: 14,
2253
+ destroy: 15
2254
+ });
2255
+ }
2256
+ get start() {
2257
+ return this.$$.ctx[11];
2258
+ }
2259
+ get stop() {
2260
+ return this.$$.ctx[12];
2261
+ }
2262
+ get reset() {
2263
+ return this.$$.ctx[13];
2264
+ }
2265
+ get updateConfig() {
2266
+ return this.$$.ctx[14];
2267
+ }
2268
+ get destroy() {
2269
+ return this.$$.ctx[15];
2270
+ }
2271
+ }
1683
2272
  export {
1684
2273
  Count_1 as Count,
1685
2274
  TextToParticle_1 as MasonEffect,
2275
+ ScrollFadeIn_1 as ScrollFadeIn,
1686
2276
  TextToParticle_1 as TextToParticle,
1687
2277
  Typing_1 as Typing,
1688
2278
  TextToParticle_1 as default