ads-fe 0.0.1

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 (608) hide show
  1. package/README.md +99 -0
  2. package/dist/cli.js +545 -0
  3. package/dist/meta.js +93 -0
  4. package/package.json +43 -0
  5. package/skill.md +66 -0
  6. package/skills/core/SKILL.md +66 -0
  7. package/skills/core/references/app-development.md +45 -0
  8. package/skills/core/references/git.md +66 -0
  9. package/skills/core/references/monorepo.md +124 -0
  10. package/skills/element-plus-vue3/LICENSE.md +405 -0
  11. package/skills/element-plus-vue3/LICENSE.txt +202 -0
  12. package/skills/element-plus-vue3/SKILL.md +218 -0
  13. package/skills/element-plus-vue3/SYNC.md +5 -0
  14. package/skills/element-plus-vue3/api/component-api.md +94 -0
  15. package/skills/element-plus-vue3/api/global-config.md +89 -0
  16. package/skills/element-plus-vue3/api/props-and-events.md +101 -0
  17. package/skills/element-plus-vue3/examples/components/button.md +99 -0
  18. package/skills/element-plus-vue3/examples/components/date-picker.md +115 -0
  19. package/skills/element-plus-vue3/examples/components/dialog.md +106 -0
  20. package/skills/element-plus-vue3/examples/components/form.md +127 -0
  21. package/skills/element-plus-vue3/examples/components/input.md +123 -0
  22. package/skills/element-plus-vue3/examples/components/message.md +93 -0
  23. package/skills/element-plus-vue3/examples/components/overview.md +59 -0
  24. package/skills/element-plus-vue3/examples/components/select.md +133 -0
  25. package/skills/element-plus-vue3/examples/components/table.md +166 -0
  26. package/skills/element-plus-vue3/examples/guide/design.md +68 -0
  27. package/skills/element-plus-vue3/examples/guide/global-config.md +95 -0
  28. package/skills/element-plus-vue3/examples/guide/i18n.md +95 -0
  29. package/skills/element-plus-vue3/examples/guide/installation.md +110 -0
  30. package/skills/element-plus-vue3/examples/guide/quick-start.md +103 -0
  31. package/skills/element-plus-vue3/examples/guide/theme.md +78 -0
  32. package/skills/element-plus-vue3/templates/component-usage.md +92 -0
  33. package/skills/element-plus-vue3/templates/installation.md +82 -0
  34. package/skills/element-plus-vue3/templates/project-setup.md +83 -0
  35. package/skills/node/LICENSE.md +21 -0
  36. package/skills/node/SKILL.md +94 -0
  37. package/skills/node/SYNC.md +5 -0
  38. package/skills/node/rules/assets/graceful-server.test.ts +88 -0
  39. package/skills/node/rules/assets/graceful-server.ts +80 -0
  40. package/skills/node/rules/async-patterns.md +136 -0
  41. package/skills/node/rules/caching.md +198 -0
  42. package/skills/node/rules/environment.md +253 -0
  43. package/skills/node/rules/error-handling.md +164 -0
  44. package/skills/node/rules/flaky-tests.md +439 -0
  45. package/skills/node/rules/graceful-shutdown.md +204 -0
  46. package/skills/node/rules/logging.md +205 -0
  47. package/skills/node/rules/modules.md +105 -0
  48. package/skills/node/rules/node-modules-exploration.md +172 -0
  49. package/skills/node/rules/performance.md +130 -0
  50. package/skills/node/rules/profiling.md +183 -0
  51. package/skills/node/rules/streams.md +213 -0
  52. package/skills/node/rules/stuck-processes-and-tests.md +124 -0
  53. package/skills/node/rules/testing.md +218 -0
  54. package/skills/node/rules/typescript.md +262 -0
  55. package/skills/node/tile.json +11 -0
  56. package/skills/nuxt/GENERATION.md +5 -0
  57. package/skills/nuxt/LICENSE.md +21 -0
  58. package/skills/nuxt/SKILL.md +55 -0
  59. package/skills/nuxt/SYNC.md +5 -0
  60. package/skills/nuxt/references/advanced-hooks.md +289 -0
  61. package/skills/nuxt/references/advanced-layers.md +299 -0
  62. package/skills/nuxt/references/advanced-module-authoring.md +554 -0
  63. package/skills/nuxt/references/best-practices-data-fetching.md +357 -0
  64. package/skills/nuxt/references/best-practices-ssr.md +355 -0
  65. package/skills/nuxt/references/core-cli.md +263 -0
  66. package/skills/nuxt/references/core-config.md +162 -0
  67. package/skills/nuxt/references/core-data-fetching.md +236 -0
  68. package/skills/nuxt/references/core-deployment.md +224 -0
  69. package/skills/nuxt/references/core-directory-structure.md +269 -0
  70. package/skills/nuxt/references/core-modules.md +292 -0
  71. package/skills/nuxt/references/core-routing.md +226 -0
  72. package/skills/nuxt/references/features-components-autoimport.md +328 -0
  73. package/skills/nuxt/references/features-components.md +264 -0
  74. package/skills/nuxt/references/features-composables.md +276 -0
  75. package/skills/nuxt/references/features-server.md +265 -0
  76. package/skills/nuxt/references/features-state.md +194 -0
  77. package/skills/nuxt/references/rendering-modes.md +237 -0
  78. package/skills/pinia/GENERATION.md +5 -0
  79. package/skills/pinia/LICENSE.md +21 -0
  80. package/skills/pinia/SKILL.md +59 -0
  81. package/skills/pinia/SYNC.md +5 -0
  82. package/skills/pinia/references/advanced-hmr.md +61 -0
  83. package/skills/pinia/references/advanced-nuxt.md +119 -0
  84. package/skills/pinia/references/advanced-ssr.md +121 -0
  85. package/skills/pinia/references/best-practices-outside-component.md +115 -0
  86. package/skills/pinia/references/best-practices-testing.md +212 -0
  87. package/skills/pinia/references/core-stores.md +389 -0
  88. package/skills/pinia/references/features-composables.md +114 -0
  89. package/skills/pinia/references/features-composing-stores.md +134 -0
  90. package/skills/pinia/references/features-plugins.md +203 -0
  91. package/skills/pnpm/GENERATION.md +5 -0
  92. package/skills/pnpm/LICENSE.md +21 -0
  93. package/skills/pnpm/SKILL.md +42 -0
  94. package/skills/pnpm/SYNC.md +5 -0
  95. package/skills/pnpm/references/best-practices-ci.md +285 -0
  96. package/skills/pnpm/references/best-practices-migration.md +291 -0
  97. package/skills/pnpm/references/best-practices-performance.md +284 -0
  98. package/skills/pnpm/references/core-cli.md +229 -0
  99. package/skills/pnpm/references/core-config.md +188 -0
  100. package/skills/pnpm/references/core-store.md +179 -0
  101. package/skills/pnpm/references/core-workspaces.md +205 -0
  102. package/skills/pnpm/references/features-aliases.md +168 -0
  103. package/skills/pnpm/references/features-catalogs.md +159 -0
  104. package/skills/pnpm/references/features-hooks.md +233 -0
  105. package/skills/pnpm/references/features-overrides.md +184 -0
  106. package/skills/pnpm/references/features-patches.md +201 -0
  107. package/skills/pnpm/references/features-peer-deps.md +250 -0
  108. package/skills/slidev/LICENSE.md +21 -0
  109. package/skills/slidev/README.md +61 -0
  110. package/skills/slidev/SKILL.md +189 -0
  111. package/skills/slidev/SYNC.md +5 -0
  112. package/skills/slidev/references/animation-click-marker.md +37 -0
  113. package/skills/slidev/references/animation-drawing.md +68 -0
  114. package/skills/slidev/references/animation-rough-marker.md +53 -0
  115. package/skills/slidev/references/api-slide-hooks.md +37 -0
  116. package/skills/slidev/references/build-og-image.md +36 -0
  117. package/skills/slidev/references/build-pdf.md +40 -0
  118. package/skills/slidev/references/build-remote-assets.md +34 -0
  119. package/skills/slidev/references/build-seo-meta.md +43 -0
  120. package/skills/slidev/references/code-groups.md +64 -0
  121. package/skills/slidev/references/code-import-snippet.md +55 -0
  122. package/skills/slidev/references/code-line-highlighting.md +50 -0
  123. package/skills/slidev/references/code-line-numbers.md +46 -0
  124. package/skills/slidev/references/code-magic-move.md +57 -0
  125. package/skills/slidev/references/code-max-height.md +37 -0
  126. package/skills/slidev/references/code-twoslash.md +42 -0
  127. package/skills/slidev/references/core-animations.md +196 -0
  128. package/skills/slidev/references/core-cli.md +140 -0
  129. package/skills/slidev/references/core-components.md +197 -0
  130. package/skills/slidev/references/core-exporting.md +148 -0
  131. package/skills/slidev/references/core-frontmatter.md +195 -0
  132. package/skills/slidev/references/core-global-context.md +155 -0
  133. package/skills/slidev/references/core-headmatter.md +188 -0
  134. package/skills/slidev/references/core-hosting.md +152 -0
  135. package/skills/slidev/references/core-layouts.md +286 -0
  136. package/skills/slidev/references/core-syntax.md +155 -0
  137. package/skills/slidev/references/diagram-latex.md +55 -0
  138. package/skills/slidev/references/diagram-mermaid.md +44 -0
  139. package/skills/slidev/references/diagram-plantuml.md +45 -0
  140. package/skills/slidev/references/editor-monaco-run.md +44 -0
  141. package/skills/slidev/references/editor-monaco-write.md +24 -0
  142. package/skills/slidev/references/editor-monaco.md +50 -0
  143. package/skills/slidev/references/editor-prettier.md +40 -0
  144. package/skills/slidev/references/editor-side.md +23 -0
  145. package/skills/slidev/references/editor-vscode.md +55 -0
  146. package/skills/slidev/references/layout-canvas-size.md +25 -0
  147. package/skills/slidev/references/layout-draggable.md +57 -0
  148. package/skills/slidev/references/layout-global-layers.md +50 -0
  149. package/skills/slidev/references/layout-slots.md +75 -0
  150. package/skills/slidev/references/layout-transform.md +33 -0
  151. package/skills/slidev/references/layout-zoom.md +39 -0
  152. package/skills/slidev/references/presenter-notes-ruby.md +35 -0
  153. package/skills/slidev/references/presenter-recording.md +30 -0
  154. package/skills/slidev/references/presenter-remote.md +40 -0
  155. package/skills/slidev/references/presenter-timer.md +34 -0
  156. package/skills/slidev/references/style-direction.md +34 -0
  157. package/skills/slidev/references/style-icons.md +46 -0
  158. package/skills/slidev/references/style-scoped.md +50 -0
  159. package/skills/slidev/references/syntax-block-frontmatter.md +39 -0
  160. package/skills/slidev/references/syntax-comark.md +51 -0
  161. package/skills/slidev/references/syntax-frontmatter-merging.md +49 -0
  162. package/skills/slidev/references/syntax-importing-slides.md +60 -0
  163. package/skills/slidev/references/tool-eject-theme.md +27 -0
  164. package/skills/tsdown/LICENSE.md +22 -0
  165. package/skills/tsdown/README.md +77 -0
  166. package/skills/tsdown/SKILL.md +416 -0
  167. package/skills/tsdown/SYNC.md +5 -0
  168. package/skills/tsdown/references/README.md +139 -0
  169. package/skills/tsdown/references/advanced-benchmark.md +8 -0
  170. package/skills/tsdown/references/advanced-ci.md +89 -0
  171. package/skills/tsdown/references/advanced-hooks.md +363 -0
  172. package/skills/tsdown/references/advanced-plugins.md +381 -0
  173. package/skills/tsdown/references/advanced-programmatic.md +378 -0
  174. package/skills/tsdown/references/advanced-rolldown-options.md +117 -0
  175. package/skills/tsdown/references/guide-getting-started.md +183 -0
  176. package/skills/tsdown/references/guide-introduction.md +42 -0
  177. package/skills/tsdown/references/guide-migrate-from-tsup.md +199 -0
  178. package/skills/tsdown/references/option-cjs-default.md +98 -0
  179. package/skills/tsdown/references/option-cleaning.md +275 -0
  180. package/skills/tsdown/references/option-config-file.md +291 -0
  181. package/skills/tsdown/references/option-css.md +301 -0
  182. package/skills/tsdown/references/option-dependencies.md +385 -0
  183. package/skills/tsdown/references/option-dts.md +251 -0
  184. package/skills/tsdown/references/option-entry.md +211 -0
  185. package/skills/tsdown/references/option-exe.md +120 -0
  186. package/skills/tsdown/references/option-lint.md +127 -0
  187. package/skills/tsdown/references/option-log-level.md +91 -0
  188. package/skills/tsdown/references/option-minification.md +177 -0
  189. package/skills/tsdown/references/option-output-directory.md +272 -0
  190. package/skills/tsdown/references/option-output-format.md +183 -0
  191. package/skills/tsdown/references/option-package-exports.md +320 -0
  192. package/skills/tsdown/references/option-platform.md +256 -0
  193. package/skills/tsdown/references/option-root.md +88 -0
  194. package/skills/tsdown/references/option-shims.md +299 -0
  195. package/skills/tsdown/references/option-sourcemap.md +301 -0
  196. package/skills/tsdown/references/option-target.md +222 -0
  197. package/skills/tsdown/references/option-tree-shaking.md +335 -0
  198. package/skills/tsdown/references/option-unbundle.md +310 -0
  199. package/skills/tsdown/references/option-watch-mode.md +261 -0
  200. package/skills/tsdown/references/recipe-react.md +338 -0
  201. package/skills/tsdown/references/recipe-solid.md +42 -0
  202. package/skills/tsdown/references/recipe-svelte.md +54 -0
  203. package/skills/tsdown/references/recipe-vue.md +387 -0
  204. package/skills/tsdown/references/recipe-wasm.md +125 -0
  205. package/skills/tsdown/references/reference-cli.md +472 -0
  206. package/skills/turborepo/LICENSE.md +7 -0
  207. package/skills/turborepo/SKILL.md +951 -0
  208. package/skills/turborepo/SYNC.md +5 -0
  209. package/skills/turborepo/command/turborepo.md +70 -0
  210. package/skills/turborepo/references/best-practices/RULE.md +241 -0
  211. package/skills/turborepo/references/best-practices/dependencies.md +246 -0
  212. package/skills/turborepo/references/best-practices/packages.md +335 -0
  213. package/skills/turborepo/references/best-practices/structure.md +297 -0
  214. package/skills/turborepo/references/boundaries/RULE.md +126 -0
  215. package/skills/turborepo/references/caching/RULE.md +153 -0
  216. package/skills/turborepo/references/caching/gotchas.md +190 -0
  217. package/skills/turborepo/references/caching/remote-cache.md +127 -0
  218. package/skills/turborepo/references/ci/RULE.md +79 -0
  219. package/skills/turborepo/references/ci/github-actions.md +162 -0
  220. package/skills/turborepo/references/ci/patterns.md +145 -0
  221. package/skills/turborepo/references/ci/vercel.md +103 -0
  222. package/skills/turborepo/references/cli/RULE.md +100 -0
  223. package/skills/turborepo/references/cli/commands.md +297 -0
  224. package/skills/turborepo/references/configuration/RULE.md +235 -0
  225. package/skills/turborepo/references/configuration/global-options.md +239 -0
  226. package/skills/turborepo/references/configuration/gotchas.md +368 -0
  227. package/skills/turborepo/references/configuration/tasks.md +325 -0
  228. package/skills/turborepo/references/environment/RULE.md +123 -0
  229. package/skills/turborepo/references/environment/gotchas.md +175 -0
  230. package/skills/turborepo/references/environment/modes.md +101 -0
  231. package/skills/turborepo/references/filtering/RULE.md +148 -0
  232. package/skills/turborepo/references/filtering/patterns.md +152 -0
  233. package/skills/turborepo/references/watch/RULE.md +99 -0
  234. package/skills/vite/GENERATION.md +5 -0
  235. package/skills/vite/LICENSE.md +21 -0
  236. package/skills/vite/SKILL.md +72 -0
  237. package/skills/vite/SYNC.md +5 -0
  238. package/skills/vite/references/build-and-ssr.md +164 -0
  239. package/skills/vite/references/core-config.md +162 -0
  240. package/skills/vite/references/core-features.md +205 -0
  241. package/skills/vite/references/core-plugin-api.md +235 -0
  242. package/skills/vite/references/environment-api.md +108 -0
  243. package/skills/vite/references/rolldown-migration.md +157 -0
  244. package/skills/vitepress/GENERATION.md +5 -0
  245. package/skills/vitepress/LICENSE.md +21 -0
  246. package/skills/vitepress/SKILL.md +65 -0
  247. package/skills/vitepress/SYNC.md +5 -0
  248. package/skills/vitepress/references/advanced-i18n.md +299 -0
  249. package/skills/vitepress/references/advanced-ssr.md +228 -0
  250. package/skills/vitepress/references/core-cli.md +119 -0
  251. package/skills/vitepress/references/core-config.md +189 -0
  252. package/skills/vitepress/references/core-markdown.md +277 -0
  253. package/skills/vitepress/references/core-routing.md +169 -0
  254. package/skills/vitepress/references/features-code-blocks.md +243 -0
  255. package/skills/vitepress/references/features-data-loading.md +220 -0
  256. package/skills/vitepress/references/features-dynamic-routes.md +235 -0
  257. package/skills/vitepress/references/features-vue.md +224 -0
  258. package/skills/vitepress/references/recipes-deploy.md +240 -0
  259. package/skills/vitepress/references/theme-config.md +315 -0
  260. package/skills/vitepress/references/theme-custom.md +269 -0
  261. package/skills/vitepress/references/theme-customization.md +290 -0
  262. package/skills/vitest/GENERATION.md +5 -0
  263. package/skills/vitest/LICENSE.md +21 -0
  264. package/skills/vitest/SKILL.md +52 -0
  265. package/skills/vitest/SYNC.md +5 -0
  266. package/skills/vitest/references/advanced-environments.md +264 -0
  267. package/skills/vitest/references/advanced-projects.md +300 -0
  268. package/skills/vitest/references/advanced-type-testing.md +237 -0
  269. package/skills/vitest/references/advanced-vi.md +249 -0
  270. package/skills/vitest/references/core-cli.md +166 -0
  271. package/skills/vitest/references/core-config.md +174 -0
  272. package/skills/vitest/references/core-describe.md +193 -0
  273. package/skills/vitest/references/core-expect.md +219 -0
  274. package/skills/vitest/references/core-hooks.md +244 -0
  275. package/skills/vitest/references/core-test-api.md +233 -0
  276. package/skills/vitest/references/features-concurrency.md +250 -0
  277. package/skills/vitest/references/features-context.md +238 -0
  278. package/skills/vitest/references/features-coverage.md +207 -0
  279. package/skills/vitest/references/features-filtering.md +211 -0
  280. package/skills/vitest/references/features-mocking.md +265 -0
  281. package/skills/vitest/references/features-snapshots.md +207 -0
  282. package/skills/vue/GENERATION.md +5 -0
  283. package/skills/vue/LICENSE.md +21 -0
  284. package/skills/vue/SKILL.md +84 -0
  285. package/skills/vue/SYNC.md +5 -0
  286. package/skills/vue/references/advanced-patterns.md +314 -0
  287. package/skills/vue/references/core-new-apis.md +264 -0
  288. package/skills/vue/references/script-setup-macros.md +204 -0
  289. package/skills/vue-best-practices/LICENSE.md +21 -0
  290. package/skills/vue-best-practices/SKILL.md +154 -0
  291. package/skills/vue-best-practices/SYNC.md +5 -0
  292. package/skills/vue-best-practices/references/animation-class-based-technique.md +254 -0
  293. package/skills/vue-best-practices/references/animation-state-driven-technique.md +291 -0
  294. package/skills/vue-best-practices/references/component-async.md +97 -0
  295. package/skills/vue-best-practices/references/component-data-flow.md +307 -0
  296. package/skills/vue-best-practices/references/component-fallthrough-attrs.md +174 -0
  297. package/skills/vue-best-practices/references/component-keep-alive.md +137 -0
  298. package/skills/vue-best-practices/references/component-slots.md +216 -0
  299. package/skills/vue-best-practices/references/component-suspense.md +228 -0
  300. package/skills/vue-best-practices/references/component-teleport.md +108 -0
  301. package/skills/vue-best-practices/references/component-transition-group.md +128 -0
  302. package/skills/vue-best-practices/references/component-transition.md +125 -0
  303. package/skills/vue-best-practices/references/composables.md +290 -0
  304. package/skills/vue-best-practices/references/directives.md +162 -0
  305. package/skills/vue-best-practices/references/perf-avoid-component-abstraction-in-lists.md +159 -0
  306. package/skills/vue-best-practices/references/perf-v-once-v-memo-directives.md +182 -0
  307. package/skills/vue-best-practices/references/perf-virtualize-large-lists.md +187 -0
  308. package/skills/vue-best-practices/references/plugins.md +166 -0
  309. package/skills/vue-best-practices/references/reactivity.md +344 -0
  310. package/skills/vue-best-practices/references/render-functions.md +201 -0
  311. package/skills/vue-best-practices/references/sfc.md +310 -0
  312. package/skills/vue-best-practices/references/state-management.md +135 -0
  313. package/skills/vue-best-practices/references/updated-hook-performance.md +187 -0
  314. package/skills/vue-router-best-practices/LICENSE.md +21 -0
  315. package/skills/vue-router-best-practices/SKILL.md +23 -0
  316. package/skills/vue-router-best-practices/SYNC.md +5 -0
  317. package/skills/vue-router-best-practices/reference/router-beforeenter-no-param-trigger.md +167 -0
  318. package/skills/vue-router-best-practices/reference/router-beforerouteenter-no-this.md +176 -0
  319. package/skills/vue-router-best-practices/reference/router-guard-async-await-pattern.md +227 -0
  320. package/skills/vue-router-best-practices/reference/router-navigation-guard-infinite-loop.md +187 -0
  321. package/skills/vue-router-best-practices/reference/router-navigation-guard-next-deprecated.md +150 -0
  322. package/skills/vue-router-best-practices/reference/router-param-change-no-lifecycle.md +181 -0
  323. package/skills/vue-router-best-practices/reference/router-simple-routing-cleanup.md +209 -0
  324. package/skills/vue-router-best-practices/reference/router-use-vue-router-for-production.md +183 -0
  325. package/skills/vue-testing-best-practices/LICENSE.md +21 -0
  326. package/skills/vue-testing-best-practices/SKILL.md +29 -0
  327. package/skills/vue-testing-best-practices/SYNC.md +5 -0
  328. package/skills/vue-testing-best-practices/reference/async-component-testing.md +163 -0
  329. package/skills/vue-testing-best-practices/reference/teleport-testing-complexity.md +158 -0
  330. package/skills/vue-testing-best-practices/reference/testing-async-await-flushpromises.md +175 -0
  331. package/skills/vue-testing-best-practices/reference/testing-browser-vs-node-runners.md +208 -0
  332. package/skills/vue-testing-best-practices/reference/testing-component-blackbox-approach.md +144 -0
  333. package/skills/vue-testing-best-practices/reference/testing-composables-helper-wrapper.md +238 -0
  334. package/skills/vue-testing-best-practices/reference/testing-e2e-playwright-recommended.md +242 -0
  335. package/skills/vue-testing-best-practices/reference/testing-no-snapshot-only.md +197 -0
  336. package/skills/vue-testing-best-practices/reference/testing-pinia-store-setup.md +228 -0
  337. package/skills/vue-testing-best-practices/reference/testing-suspense-async-components.md +229 -0
  338. package/skills/vue-testing-best-practices/reference/testing-vitest-recommended-for-vue.md +204 -0
  339. package/skills/vueuse-functions/LICENSE.md +21 -0
  340. package/skills/vueuse-functions/SKILL.md +419 -0
  341. package/skills/vueuse-functions/SYNC.md +5 -0
  342. package/skills/vueuse-functions/references/computedAsync.md +195 -0
  343. package/skills/vueuse-functions/references/computedEager.md +62 -0
  344. package/skills/vueuse-functions/references/computedInject.md +137 -0
  345. package/skills/vueuse-functions/references/computedWithControl.md +98 -0
  346. package/skills/vueuse-functions/references/createEventHook.md +86 -0
  347. package/skills/vueuse-functions/references/createGenericProjection.md +25 -0
  348. package/skills/vueuse-functions/references/createGlobalState.md +95 -0
  349. package/skills/vueuse-functions/references/createInjectionState.md +226 -0
  350. package/skills/vueuse-functions/references/createProjection.md +31 -0
  351. package/skills/vueuse-functions/references/createRef.md +54 -0
  352. package/skills/vueuse-functions/references/createReusableTemplate.md +361 -0
  353. package/skills/vueuse-functions/references/createSharedComposable.md +42 -0
  354. package/skills/vueuse-functions/references/createTemplatePromise.md +306 -0
  355. package/skills/vueuse-functions/references/createUnrefFn.md +51 -0
  356. package/skills/vueuse-functions/references/extendRef.md +76 -0
  357. package/skills/vueuse-functions/references/from.md +80 -0
  358. package/skills/vueuse-functions/references/get.md +30 -0
  359. package/skills/vueuse-functions/references/injectLocal.md +35 -0
  360. package/skills/vueuse-functions/references/isDefined.md +31 -0
  361. package/skills/vueuse-functions/references/logicAnd.md +40 -0
  362. package/skills/vueuse-functions/references/logicNot.md +36 -0
  363. package/skills/vueuse-functions/references/logicOr.md +40 -0
  364. package/skills/vueuse-functions/references/makeDestructurable.md +41 -0
  365. package/skills/vueuse-functions/references/onClickOutside.md +228 -0
  366. package/skills/vueuse-functions/references/onElementRemoval.md +88 -0
  367. package/skills/vueuse-functions/references/onKeyStroke.md +212 -0
  368. package/skills/vueuse-functions/references/onLongPress.md +235 -0
  369. package/skills/vueuse-functions/references/onStartTyping.md +53 -0
  370. package/skills/vueuse-functions/references/provideLocal.md +37 -0
  371. package/skills/vueuse-functions/references/reactify.md +144 -0
  372. package/skills/vueuse-functions/references/reactifyObject.md +62 -0
  373. package/skills/vueuse-functions/references/reactiveComputed.md +34 -0
  374. package/skills/vueuse-functions/references/reactiveOmit.md +86 -0
  375. package/skills/vueuse-functions/references/reactivePick.md +106 -0
  376. package/skills/vueuse-functions/references/refAutoReset.md +46 -0
  377. package/skills/vueuse-functions/references/refDebounced.md +81 -0
  378. package/skills/vueuse-functions/references/refDefault.md +36 -0
  379. package/skills/vueuse-functions/references/refManualReset.md +48 -0
  380. package/skills/vueuse-functions/references/refThrottled.md +99 -0
  381. package/skills/vueuse-functions/references/refWithControl.md +146 -0
  382. package/skills/vueuse-functions/references/set.md +30 -0
  383. package/skills/vueuse-functions/references/syncRef.md +195 -0
  384. package/skills/vueuse-functions/references/syncRefs.md +128 -0
  385. package/skills/vueuse-functions/references/templateRef.md +86 -0
  386. package/skills/vueuse-functions/references/toObserver.md +38 -0
  387. package/skills/vueuse-functions/references/toReactive.md +41 -0
  388. package/skills/vueuse-functions/references/toRef.md +74 -0
  389. package/skills/vueuse-functions/references/toRefs.md +78 -0
  390. package/skills/vueuse-functions/references/tryOnBeforeMount.md +34 -0
  391. package/skills/vueuse-functions/references/tryOnBeforeUnmount.md +32 -0
  392. package/skills/vueuse-functions/references/tryOnMounted.md +34 -0
  393. package/skills/vueuse-functions/references/tryOnScopeDispose.md +31 -0
  394. package/skills/vueuse-functions/references/tryOnUnmounted.md +32 -0
  395. package/skills/vueuse-functions/references/unrefElement.md +54 -0
  396. package/skills/vueuse-functions/references/until.md +161 -0
  397. package/skills/vueuse-functions/references/useAbs.md +31 -0
  398. package/skills/vueuse-functions/references/useActiveElement.md +86 -0
  399. package/skills/vueuse-functions/references/useAnimate.md +180 -0
  400. package/skills/vueuse-functions/references/useArrayDifference.md +84 -0
  401. package/skills/vueuse-functions/references/useArrayEvery.md +59 -0
  402. package/skills/vueuse-functions/references/useArrayFilter.md +63 -0
  403. package/skills/vueuse-functions/references/useArrayFind.md +50 -0
  404. package/skills/vueuse-functions/references/useArrayFindIndex.md +59 -0
  405. package/skills/vueuse-functions/references/useArrayFindLast.md +52 -0
  406. package/skills/vueuse-functions/references/useArrayIncludes.md +63 -0
  407. package/skills/vueuse-functions/references/useArrayJoin.md +74 -0
  408. package/skills/vueuse-functions/references/useArrayMap.md +59 -0
  409. package/skills/vueuse-functions/references/useArrayReduce.md +81 -0
  410. package/skills/vueuse-functions/references/useArraySome.md +59 -0
  411. package/skills/vueuse-functions/references/useArrayUnique.md +76 -0
  412. package/skills/vueuse-functions/references/useAsyncQueue.md +136 -0
  413. package/skills/vueuse-functions/references/useAsyncState.md +185 -0
  414. package/skills/vueuse-functions/references/useAsyncValidator.md +70 -0
  415. package/skills/vueuse-functions/references/useAuth.md +123 -0
  416. package/skills/vueuse-functions/references/useAverage.md +36 -0
  417. package/skills/vueuse-functions/references/useAxios.md +325 -0
  418. package/skills/vueuse-functions/references/useBase64.md +136 -0
  419. package/skills/vueuse-functions/references/useBattery.md +80 -0
  420. package/skills/vueuse-functions/references/useBluetooth.md +174 -0
  421. package/skills/vueuse-functions/references/useBreakpoints.md +176 -0
  422. package/skills/vueuse-functions/references/useBroadcastChannel.md +73 -0
  423. package/skills/vueuse-functions/references/useBrowserLocation.md +56 -0
  424. package/skills/vueuse-functions/references/useCached.md +52 -0
  425. package/skills/vueuse-functions/references/useCeil.md +31 -0
  426. package/skills/vueuse-functions/references/useChangeCase.md +79 -0
  427. package/skills/vueuse-functions/references/useClamp.md +85 -0
  428. package/skills/vueuse-functions/references/useClipboard.md +122 -0
  429. package/skills/vueuse-functions/references/useClipboardItems.md +93 -0
  430. package/skills/vueuse-functions/references/useCloned.md +91 -0
  431. package/skills/vueuse-functions/references/useColorMode.md +172 -0
  432. package/skills/vueuse-functions/references/useConfirmDialog.md +159 -0
  433. package/skills/vueuse-functions/references/useCookies.md +162 -0
  434. package/skills/vueuse-functions/references/useCountdown.md +105 -0
  435. package/skills/vueuse-functions/references/useCounter.md +86 -0
  436. package/skills/vueuse-functions/references/useCssSupports.md +33 -0
  437. package/skills/vueuse-functions/references/useCssVar.md +50 -0
  438. package/skills/vueuse-functions/references/useCurrentElement.md +61 -0
  439. package/skills/vueuse-functions/references/useCycleList.md +75 -0
  440. package/skills/vueuse-functions/references/useDark.md +142 -0
  441. package/skills/vueuse-functions/references/useDateFormat.md +145 -0
  442. package/skills/vueuse-functions/references/useDebounceFn.md +100 -0
  443. package/skills/vueuse-functions/references/useDebouncedRefHistory.md +40 -0
  444. package/skills/vueuse-functions/references/useDeviceMotion.md +80 -0
  445. package/skills/vueuse-functions/references/useDeviceOrientation.md +64 -0
  446. package/skills/vueuse-functions/references/useDevicePixelRatio.md +47 -0
  447. package/skills/vueuse-functions/references/useDevicesList.md +89 -0
  448. package/skills/vueuse-functions/references/useDisplayMedia.md +67 -0
  449. package/skills/vueuse-functions/references/useDocumentVisibility.md +44 -0
  450. package/skills/vueuse-functions/references/useDraggable.md +289 -0
  451. package/skills/vueuse-functions/references/useDrauu.md +65 -0
  452. package/skills/vueuse-functions/references/useDropZone.md +83 -0
  453. package/skills/vueuse-functions/references/useElementBounding.md +131 -0
  454. package/skills/vueuse-functions/references/useElementByPoint.md +46 -0
  455. package/skills/vueuse-functions/references/useElementHover.md +79 -0
  456. package/skills/vueuse-functions/references/useElementSize.md +79 -0
  457. package/skills/vueuse-functions/references/useElementVisibility.md +163 -0
  458. package/skills/vueuse-functions/references/useEventBus.md +101 -0
  459. package/skills/vueuse-functions/references/useEventListener.md +226 -0
  460. package/skills/vueuse-functions/references/useEventSource.md +204 -0
  461. package/skills/vueuse-functions/references/useExtractedObservable.md +198 -0
  462. package/skills/vueuse-functions/references/useEyeDropper.md +72 -0
  463. package/skills/vueuse-functions/references/useFavicon.md +69 -0
  464. package/skills/vueuse-functions/references/useFetch.md +546 -0
  465. package/skills/vueuse-functions/references/useFileDialog.md +91 -0
  466. package/skills/vueuse-functions/references/useFileSystemAccess.md +161 -0
  467. package/skills/vueuse-functions/references/useFirestore.md +129 -0
  468. package/skills/vueuse-functions/references/useFloor.md +31 -0
  469. package/skills/vueuse-functions/references/useFocus.md +99 -0
  470. package/skills/vueuse-functions/references/useFocusTrap.md +245 -0
  471. package/skills/vueuse-functions/references/useFocusWithin.md +57 -0
  472. package/skills/vueuse-functions/references/useFps.md +28 -0
  473. package/skills/vueuse-functions/references/useFullscreen.md +74 -0
  474. package/skills/vueuse-functions/references/useFuse.md +75 -0
  475. package/skills/vueuse-functions/references/useGamepad.md +176 -0
  476. package/skills/vueuse-functions/references/useGeolocation.md +63 -0
  477. package/skills/vueuse-functions/references/useIDBKeyval.md +93 -0
  478. package/skills/vueuse-functions/references/useIdle.md +88 -0
  479. package/skills/vueuse-functions/references/useImage.md +90 -0
  480. package/skills/vueuse-functions/references/useInfiniteScroll.md +156 -0
  481. package/skills/vueuse-functions/references/useIntersectionObserver.md +117 -0
  482. package/skills/vueuse-functions/references/useInterval.md +112 -0
  483. package/skills/vueuse-functions/references/useIntervalFn.md +50 -0
  484. package/skills/vueuse-functions/references/useIpcRenderer.md +144 -0
  485. package/skills/vueuse-functions/references/useIpcRendererInvoke.md +58 -0
  486. package/skills/vueuse-functions/references/useIpcRendererOn.md +52 -0
  487. package/skills/vueuse-functions/references/useJwt.md +57 -0
  488. package/skills/vueuse-functions/references/useKeyModifier.md +87 -0
  489. package/skills/vueuse-functions/references/useLastChanged.md +63 -0
  490. package/skills/vueuse-functions/references/useLocalStorage.md +41 -0
  491. package/skills/vueuse-functions/references/useMagicKeys.md +245 -0
  492. package/skills/vueuse-functions/references/useManualRefHistory.md +204 -0
  493. package/skills/vueuse-functions/references/useMath.md +47 -0
  494. package/skills/vueuse-functions/references/useMax.md +36 -0
  495. package/skills/vueuse-functions/references/useMediaControls.md +201 -0
  496. package/skills/vueuse-functions/references/useMediaQuery.md +53 -0
  497. package/skills/vueuse-functions/references/useMemoize.md +175 -0
  498. package/skills/vueuse-functions/references/useMemory.md +70 -0
  499. package/skills/vueuse-functions/references/useMin.md +36 -0
  500. package/skills/vueuse-functions/references/useMounted.md +38 -0
  501. package/skills/vueuse-functions/references/useMouse.md +113 -0
  502. package/skills/vueuse-functions/references/useMouseInElement.md +132 -0
  503. package/skills/vueuse-functions/references/useMousePressed.md +116 -0
  504. package/skills/vueuse-functions/references/useMutationObserver.md +60 -0
  505. package/skills/vueuse-functions/references/useNProgress.md +78 -0
  506. package/skills/vueuse-functions/references/useNavigatorLanguage.md +57 -0
  507. package/skills/vueuse-functions/references/useNetwork.md +106 -0
  508. package/skills/vueuse-functions/references/useNow.md +83 -0
  509. package/skills/vueuse-functions/references/useObjectUrl.md +55 -0
  510. package/skills/vueuse-functions/references/useObservable.md +91 -0
  511. package/skills/vueuse-functions/references/useOffsetPagination.md +199 -0
  512. package/skills/vueuse-functions/references/useOnline.md +41 -0
  513. package/skills/vueuse-functions/references/usePageLeave.md +43 -0
  514. package/skills/vueuse-functions/references/useParallax.md +58 -0
  515. package/skills/vueuse-functions/references/useParentElement.md +54 -0
  516. package/skills/vueuse-functions/references/usePerformanceObserver.md +48 -0
  517. package/skills/vueuse-functions/references/usePermission.md +78 -0
  518. package/skills/vueuse-functions/references/usePointer.md +91 -0
  519. package/skills/vueuse-functions/references/usePointerLock.md +59 -0
  520. package/skills/vueuse-functions/references/usePointerSwipe.md +80 -0
  521. package/skills/vueuse-functions/references/usePrecision.md +49 -0
  522. package/skills/vueuse-functions/references/usePreferredColorScheme.md +42 -0
  523. package/skills/vueuse-functions/references/usePreferredContrast.md +42 -0
  524. package/skills/vueuse-functions/references/usePreferredDark.md +41 -0
  525. package/skills/vueuse-functions/references/usePreferredLanguages.md +41 -0
  526. package/skills/vueuse-functions/references/usePreferredReducedMotion.md +42 -0
  527. package/skills/vueuse-functions/references/usePreferredReducedTransparency.md +42 -0
  528. package/skills/vueuse-functions/references/usePrevious.md +40 -0
  529. package/skills/vueuse-functions/references/useProjection.md +38 -0
  530. package/skills/vueuse-functions/references/useQRCode.md +53 -0
  531. package/skills/vueuse-functions/references/useRTDB.md +83 -0
  532. package/skills/vueuse-functions/references/useRafFn.md +68 -0
  533. package/skills/vueuse-functions/references/useRefHistory.md +285 -0
  534. package/skills/vueuse-functions/references/useResizeObserver.md +108 -0
  535. package/skills/vueuse-functions/references/useRound.md +31 -0
  536. package/skills/vueuse-functions/references/useRouteHash.md +27 -0
  537. package/skills/vueuse-functions/references/useRouteParams.md +38 -0
  538. package/skills/vueuse-functions/references/useRouteQuery.md +79 -0
  539. package/skills/vueuse-functions/references/useSSRWidth.md +47 -0
  540. package/skills/vueuse-functions/references/useScreenOrientation.md +98 -0
  541. package/skills/vueuse-functions/references/useScreenSafeArea.md +60 -0
  542. package/skills/vueuse-functions/references/useScriptTag.md +116 -0
  543. package/skills/vueuse-functions/references/useScroll.md +238 -0
  544. package/skills/vueuse-functions/references/useScrollLock.md +66 -0
  545. package/skills/vueuse-functions/references/useSessionStorage.md +41 -0
  546. package/skills/vueuse-functions/references/useShare.md +67 -0
  547. package/skills/vueuse-functions/references/useSortable.md +276 -0
  548. package/skills/vueuse-functions/references/useSorted.md +90 -0
  549. package/skills/vueuse-functions/references/useSpeechRecognition.md +90 -0
  550. package/skills/vueuse-functions/references/useSpeechSynthesis.md +101 -0
  551. package/skills/vueuse-functions/references/useStepper.md +137 -0
  552. package/skills/vueuse-functions/references/useStorage.md +278 -0
  553. package/skills/vueuse-functions/references/useStorageAsync.md +136 -0
  554. package/skills/vueuse-functions/references/useStyleTag.md +131 -0
  555. package/skills/vueuse-functions/references/useSubject.md +77 -0
  556. package/skills/vueuse-functions/references/useSubscription.md +33 -0
  557. package/skills/vueuse-functions/references/useSum.md +36 -0
  558. package/skills/vueuse-functions/references/useSupported.md +29 -0
  559. package/skills/vueuse-functions/references/useSwipe.md +75 -0
  560. package/skills/vueuse-functions/references/useTemplateRefsList.md +37 -0
  561. package/skills/vueuse-functions/references/useTextDirection.md +75 -0
  562. package/skills/vueuse-functions/references/useTextSelection.md +43 -0
  563. package/skills/vueuse-functions/references/useTextareaAutosize.md +94 -0
  564. package/skills/vueuse-functions/references/useThrottleFn.md +57 -0
  565. package/skills/vueuse-functions/references/useThrottledRefHistory.md +47 -0
  566. package/skills/vueuse-functions/references/useTimeAgo.md +154 -0
  567. package/skills/vueuse-functions/references/useTimeAgoIntl.md +117 -0
  568. package/skills/vueuse-functions/references/useTimeout.md +113 -0
  569. package/skills/vueuse-functions/references/useTimeoutFn.md +51 -0
  570. package/skills/vueuse-functions/references/useTimeoutPoll.md +47 -0
  571. package/skills/vueuse-functions/references/useTimestamp.md +93 -0
  572. package/skills/vueuse-functions/references/useTitle.md +115 -0
  573. package/skills/vueuse-functions/references/useToNumber.md +54 -0
  574. package/skills/vueuse-functions/references/useToString.md +34 -0
  575. package/skills/vueuse-functions/references/useToggle.md +103 -0
  576. package/skills/vueuse-functions/references/useTransition.md +265 -0
  577. package/skills/vueuse-functions/references/useTrunc.md +33 -0
  578. package/skills/vueuse-functions/references/useUrlSearchParams.md +121 -0
  579. package/skills/vueuse-functions/references/useUserMedia.md +96 -0
  580. package/skills/vueuse-functions/references/useVModel.md +182 -0
  581. package/skills/vueuse-functions/references/useVModels.md +67 -0
  582. package/skills/vueuse-functions/references/useVibrate.md +86 -0
  583. package/skills/vueuse-functions/references/useVirtualList.md +182 -0
  584. package/skills/vueuse-functions/references/useWakeLock.md +51 -0
  585. package/skills/vueuse-functions/references/useWebNotification.md +175 -0
  586. package/skills/vueuse-functions/references/useWebSocket.md +299 -0
  587. package/skills/vueuse-functions/references/useWebWorker.md +60 -0
  588. package/skills/vueuse-functions/references/useWebWorkerFn.md +102 -0
  589. package/skills/vueuse-functions/references/useWindowFocus.md +46 -0
  590. package/skills/vueuse-functions/references/useWindowScroll.md +46 -0
  591. package/skills/vueuse-functions/references/useWindowSize.md +78 -0
  592. package/skills/vueuse-functions/references/useZoomFactor.md +53 -0
  593. package/skills/vueuse-functions/references/useZoomLevel.md +53 -0
  594. package/skills/vueuse-functions/references/watchArray.md +53 -0
  595. package/skills/vueuse-functions/references/watchAtMost.md +63 -0
  596. package/skills/vueuse-functions/references/watchDebounced.md +101 -0
  597. package/skills/vueuse-functions/references/watchDeep.md +54 -0
  598. package/skills/vueuse-functions/references/watchExtractedObservable.md +192 -0
  599. package/skills/vueuse-functions/references/watchIgnorable.md +120 -0
  600. package/skills/vueuse-functions/references/watchImmediate.md +44 -0
  601. package/skills/vueuse-functions/references/watchOnce.md +41 -0
  602. package/skills/vueuse-functions/references/watchPausable.md +86 -0
  603. package/skills/vueuse-functions/references/watchThrottled.md +108 -0
  604. package/skills/vueuse-functions/references/watchTriggerable.md +98 -0
  605. package/skills/vueuse-functions/references/watchWithFilter.md +54 -0
  606. package/skills/vueuse-functions/references/whenever.md +108 -0
  607. package/skills/web-design-guidelines/SKILL.md +39 -0
  608. package/skills/web-design-guidelines/SYNC.md +5 -0
@@ -0,0 +1,60 @@
1
+ ---
2
+ category: Browser
3
+ related: useWebWorkerFn
4
+ ---
5
+
6
+ # useWebWorker
7
+
8
+ Simple [Web Workers](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers) registration and communication.
9
+
10
+ ## Usage
11
+
12
+ ```ts
13
+ import { useWebWorker } from '@vueuse/core'
14
+
15
+ const { data, post, terminate, worker } = useWebWorker('/path/to/worker.js')
16
+ ```
17
+
18
+ | State | Type | Description |
19
+ | ------ | --------------------------------- | ---------------------------------------------------------------------------------------------------- |
20
+ | data | `Ref<any>` | Reference to the latest data received via the worker, can be watched to respond to incoming messages |
21
+ | worker | `ShallowRef<Worker \| undefined>` | Reference to the instance of the WebWorker |
22
+
23
+ | Method | Signature | Description |
24
+ | --------- | ----------------------------------------------------------------------------------------------------------------------------- | -------------------------------- |
25
+ | post | `(message: any, transfer: Transferable[]): void`<br>`(message: any, options?: StructuredSerializeOptions \| undefined): void` | Sends data to the worker thread. |
26
+ | terminate | `() => void` | Stops and terminates the worker. |
27
+
28
+ ## Type Declarations
29
+
30
+ ```ts
31
+ type PostMessage = (typeof Worker.prototype)["postMessage"]
32
+ export interface UseWebWorkerReturn<Data = any> {
33
+ data: ShallowRef<Data>
34
+ post: PostMessage
35
+ terminate: () => void
36
+ worker: ShallowRef<Worker | undefined>
37
+ }
38
+ type WorkerFn = (...args: unknown[]) => Worker
39
+ /**
40
+ * Simple Web Workers registration and communication.
41
+ *
42
+ * @see https://vueuse.org/useWebWorker
43
+ * @param url
44
+ * @param workerOptions
45
+ * @param options
46
+ */
47
+ export declare function useWebWorker<T = any>(
48
+ url: string,
49
+ workerOptions?: WorkerOptions,
50
+ options?: ConfigurableWindow,
51
+ ): UseWebWorkerReturn<T>
52
+ /**
53
+ * Simple Web Workers registration and communication.
54
+ *
55
+ * @see https://vueuse.org/useWebWorker
56
+ */
57
+ export declare function useWebWorker<T = any>(
58
+ worker: Worker | WorkerFn,
59
+ ): UseWebWorkerReturn<T>
60
+ ```
@@ -0,0 +1,102 @@
1
+ ---
2
+ category: Browser
3
+ ---
4
+
5
+ # useWebWorkerFn
6
+
7
+ Run expensive functions without blocking the UI, using a simple syntax that makes use of Promise. A port of [alewin/useWorker](https://github.com/alewin/useWorker).
8
+
9
+ ## Usage
10
+
11
+ ### Basic example
12
+
13
+ ```ts
14
+ import { useWebWorkerFn } from '@vueuse/core'
15
+
16
+ const { workerFn } = useWebWorkerFn(() => {
17
+ // some heavy works to do in web worker
18
+ })
19
+ ```
20
+
21
+ ### With dependencies
22
+
23
+ ```ts {7-9}
24
+ import { useWebWorkerFn } from '@vueuse/core'
25
+
26
+ const { workerFn, workerStatus, workerTerminate } = useWebWorkerFn(
27
+ dates => dates.sort(dateFns.compareAsc),
28
+ {
29
+ timeout: 50000,
30
+ dependencies: [
31
+ 'https://cdnjs.cloudflare.com/ajax/libs/date-fns/1.30.1/date_fns.js', // dateFns
32
+ ],
33
+ },
34
+ )
35
+ ```
36
+
37
+ ### With local dependencies
38
+
39
+ ```ts {9-9}
40
+ import { useWebWorkerFn } from '@vueuse/core'
41
+
42
+ const pow = (a: number) => a * a
43
+
44
+ const { workerFn, workerStatus, workerTerminate } = useWebWorkerFn(
45
+ numbers => pow(numbers),
46
+ {
47
+ timeout: 50000,
48
+ localDependencies: [pow]
49
+ },
50
+ )
51
+ ```
52
+
53
+ ## Web Worker
54
+
55
+ Before you start using this function, we suggest you read the [Web Worker](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers) documentation.
56
+
57
+ ## Credit
58
+
59
+ This function is a Vue port of https://github.com/alewin/useWorker by Alessio Koci, with the help of [@Donskelle](https://github.com/Donskelle) to migration.
60
+
61
+ ## Type Declarations
62
+
63
+ ```ts
64
+ export type WebWorkerStatus =
65
+ | "PENDING"
66
+ | "SUCCESS"
67
+ | "RUNNING"
68
+ | "ERROR"
69
+ | "TIMEOUT_EXPIRED"
70
+ export interface UseWebWorkerOptions extends ConfigurableWindow {
71
+ /**
72
+ * Number of milliseconds before killing the worker
73
+ *
74
+ * @default undefined
75
+ */
76
+ timeout?: number
77
+ /**
78
+ * An array that contains the external dependencies needed to run the worker
79
+ */
80
+ dependencies?: string[]
81
+ /**
82
+ * An array that contains the local dependencies needed to run the worker
83
+ */
84
+ localDependencies?: Function[]
85
+ }
86
+ export interface UseWebWorkerFnReturn<T extends (...fnArgs: any[]) => any> {
87
+ workerFn: (...fnArgs: Parameters<T>) => Promise<ReturnType<T>>
88
+ workerStatus: ShallowRef<WebWorkerStatus>
89
+ workerTerminate: (status?: WebWorkerStatus) => void
90
+ }
91
+ /**
92
+ * Run expensive function without blocking the UI, using a simple syntax that makes use of Promise.
93
+ *
94
+ * @see https://vueuse.org/useWebWorkerFn
95
+ * @param fn
96
+ * @param options
97
+ */
98
+ export declare function useWebWorkerFn<T extends (...fnArgs: any[]) => any>(
99
+ fn: T,
100
+ options?: UseWebWorkerOptions,
101
+ ): UseWebWorkerFnReturn<T>
102
+ ```
@@ -0,0 +1,46 @@
1
+ ---
2
+ category: Elements
3
+ ---
4
+
5
+ # useWindowFocus
6
+
7
+ Reactively track window focus with `window.onfocus` and `window.onblur` events.
8
+
9
+ ## Usage
10
+
11
+ ```vue
12
+ <script setup lang="ts">
13
+ import { useWindowFocus } from '@vueuse/core'
14
+
15
+ const focused = useWindowFocus()
16
+ </script>
17
+
18
+ <template>
19
+ <div>{{ focused }}</div>
20
+ </template>
21
+ ```
22
+
23
+ ## Component Usage
24
+
25
+ ```vue
26
+ <template>
27
+ <UseWindowFocus v-slot="{ focused }">
28
+ Document Focus: {{ focused }}
29
+ </UseWindowFocus>
30
+ </template>
31
+ ```
32
+
33
+ ## Type Declarations
34
+
35
+ ```ts
36
+ /**
37
+ * Reactively track window focus with `window.onfocus` and `window.onblur`.
38
+ *
39
+ * @see https://vueuse.org/useWindowFocus
40
+ *
41
+ * @__NO_SIDE_EFFECTS__
42
+ */
43
+ export declare function useWindowFocus(
44
+ options?: ConfigurableWindow,
45
+ ): ShallowRef<boolean>
46
+ ```
@@ -0,0 +1,46 @@
1
+ ---
2
+ category: Elements
3
+ ---
4
+
5
+ # useWindowScroll
6
+
7
+ Reactive window scroll
8
+
9
+ ## Usage
10
+
11
+ ```vue
12
+ <script setup lang="ts">
13
+ import { useWindowScroll } from '@vueuse/core'
14
+
15
+ const { x, y } = useWindowScroll()
16
+ </script>
17
+
18
+ <template>
19
+ <div>
20
+ read current x, y scroll: {{ x }}, {{ y }}
21
+ </div>
22
+ <button @click="x = 100">
23
+ scroll X to 100
24
+ </button>
25
+ <button @click="y = 100">
26
+ scroll Y to 100
27
+ </button>
28
+ </template>
29
+ ```
30
+
31
+ ## Type Declarations
32
+
33
+ ```ts
34
+ export interface UseWindowScrollOptions
35
+ extends ConfigurableWindow, UseScrollOptions {}
36
+ export interface UseWindowScrollReturn extends UseScrollReturn {}
37
+ /**
38
+ * Reactive window scroll.
39
+ *
40
+ * @see https://vueuse.org/useWindowScroll
41
+ * @param options
42
+ */
43
+ export declare function useWindowScroll(
44
+ options?: UseWindowScrollOptions,
45
+ ): UseWindowScrollReturn
46
+ ```
@@ -0,0 +1,78 @@
1
+ ---
2
+ category: Elements
3
+ ---
4
+
5
+ # useWindowSize
6
+
7
+ Reactive window size
8
+
9
+ ## Usage
10
+
11
+ ```vue
12
+ <script setup lang="ts">
13
+ import { useWindowSize } from '@vueuse/core'
14
+
15
+ const { width, height } = useWindowSize()
16
+ </script>
17
+
18
+ <template>
19
+ <div>
20
+ Width: {{ width }}
21
+ Height: {{ height }}
22
+ </div>
23
+ </template>
24
+ ```
25
+
26
+ ## Component Usage
27
+
28
+ ```vue
29
+ <template>
30
+ <UseWindowSize v-slot="{ width, height }">
31
+ Width: {{ width }}
32
+ Height: {{ height }}
33
+ </UseWindowSize>
34
+ </template>
35
+ ```
36
+
37
+ ## Type Declarations
38
+
39
+ ```ts
40
+ export interface UseWindowSizeOptions extends ConfigurableWindow {
41
+ initialWidth?: number
42
+ initialHeight?: number
43
+ /**
44
+ * Listen to window `orientationchange` event
45
+ *
46
+ * @default true
47
+ */
48
+ listenOrientation?: boolean
49
+ /**
50
+ * Whether the scrollbar should be included in the width and height
51
+ * Only effective when `type` is `'inner'`
52
+ *
53
+ * @default true
54
+ */
55
+ includeScrollbar?: boolean
56
+ /**
57
+ * Use `window.innerWidth` or `window.outerWidth` or `window.visualViewport`
58
+ * visualViewport documentation from MDN(https://developer.mozilla.org/zh-CN/docs/Web/API/VisualViewport)
59
+ * @default 'inner'
60
+ */
61
+ type?: "inner" | "outer" | "visual"
62
+ }
63
+ export interface UseWindowSizeReturn {
64
+ width: ShallowRef<number>
65
+ height: ShallowRef<number>
66
+ }
67
+ /**
68
+ * Reactive window size.
69
+ *
70
+ * @see https://vueuse.org/useWindowSize
71
+ * @param options
72
+ *
73
+ * @__NO_SIDE_EFFECTS__
74
+ */
75
+ export declare function useWindowSize(
76
+ options?: UseWindowSizeOptions,
77
+ ): UseWindowSizeReturn
78
+ ```
@@ -0,0 +1,53 @@
1
+ ---
2
+ category: '@Electron'
3
+ ---
4
+
5
+ # useZoomFactor
6
+
7
+ Reactive [WebFrame](https://www.electronjs.org/docs/api/web-frame#webframe) zoom factor.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useZoomFactor } from '@vueuse/electron'
13
+
14
+ // enable nodeIntegration if you don't provide webFrame explicitly
15
+ // see: https://www.electronjs.org/docs/api/webview-tag#nodeintegration
16
+ // Ref result will return
17
+ const factor = useZoomFactor()
18
+ console.log(factor.value) // print current zoom factor
19
+ factor.value = 2 // change current zoom factor
20
+ ```
21
+
22
+ Set initial zoom factor immediately
23
+
24
+ ```ts
25
+ import { useZoomFactor } from '@vueuse/electron'
26
+
27
+ const factor = useZoomFactor(2)
28
+ ```
29
+
30
+ Pass a `ref` and the factor will be updated when the source ref changes
31
+
32
+ ```ts
33
+ import { useZoomFactor } from '@vueuse/electron'
34
+ import { shallowRef } from 'vue'
35
+
36
+ const factor = shallowRef(1)
37
+
38
+ useZoomFactor(factor) // zoom factor will match with the ref
39
+
40
+ factor.value = 2 // zoom factor will change
41
+ ```
42
+
43
+ ## Type Declarations
44
+
45
+ ```ts
46
+ export declare function useZoomFactor(factor: MaybeRef<number>): Ref<number>
47
+ export declare function useZoomFactor(
48
+ webFrame: WebFrame,
49
+ factor: MaybeRef<number>,
50
+ ): Ref<number>
51
+ export declare function useZoomFactor(webFrame: WebFrame): Ref<number>
52
+ export declare function useZoomFactor(): Ref<number>
53
+ ```
@@ -0,0 +1,53 @@
1
+ ---
2
+ category: '@Electron'
3
+ ---
4
+
5
+ # useZoomLevel
6
+
7
+ Reactive [WebFrame](https://www.electronjs.org/docs/api/web-frame#webframe) zoom level.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useZoomLevel } from '@vueuse/electron'
13
+
14
+ // enable nodeIntegration if you don't provide webFrame explicitly
15
+ // see: https://www.electronjs.org/docs/api/webview-tag#nodeintegration
16
+ // Ref result will return
17
+ const level = useZoomLevel()
18
+ console.log(level.value) // print current zoom level
19
+ level.value = 2 // change current zoom level
20
+ ```
21
+
22
+ Set initial zoom level immediately
23
+
24
+ ```ts
25
+ import { useZoomLevel } from '@vueuse/electron'
26
+
27
+ const level = useZoomLevel(2)
28
+ ```
29
+
30
+ Pass a `ref` and the level will be updated when the source ref changes
31
+
32
+ ```ts
33
+ import { useZoomLevel } from '@vueuse/electron'
34
+ import { shallowRef } from 'vue'
35
+
36
+ const level = shallowRef(1)
37
+
38
+ useZoomLevel(level) // zoom level will match with the ref
39
+
40
+ level.value = 2 // zoom level will change
41
+ ```
42
+
43
+ ## Type Declarations
44
+
45
+ ```ts
46
+ export declare function useZoomLevel(level: MaybeRef<number>): Ref<number>
47
+ export declare function useZoomLevel(
48
+ webFrame: WebFrame,
49
+ level: MaybeRef<number>,
50
+ ): Ref<number>
51
+ export declare function useZoomLevel(webFrame: WebFrame): Ref<number>
52
+ export declare function useZoomLevel(): Ref<number>
53
+ ```
@@ -0,0 +1,53 @@
1
+ ---
2
+ category: Watch
3
+ ---
4
+
5
+ # watchArray
6
+
7
+ Watch for an array with additions and removals.
8
+
9
+ ## Usage
10
+
11
+ Similar to `watch`, but provides the added and removed elements to the callback function. Pass `{ deep: true }` if the list is updated in place with `push`, `splice`, etc.
12
+
13
+ ```ts
14
+ import { watchArray } from '@vueuse/core'
15
+
16
+ const list = ref([1, 2, 3])
17
+
18
+ watchArray(list, (newList, oldList, added, removed) => {
19
+ console.log(newList) // [1, 2, 3, 4]
20
+ console.log(oldList) // [1, 2, 3]
21
+ console.log(added) // [4]
22
+ console.log(removed) // []
23
+ })
24
+
25
+ onMounted(() => {
26
+ list.value = [...list.value, 4]
27
+ })
28
+ ```
29
+
30
+ ## Type Declarations
31
+
32
+ ```ts
33
+ export declare type WatchArrayCallback<V = any, OV = any> = (
34
+ value: V,
35
+ oldValue: OV,
36
+ added: V,
37
+ removed: OV,
38
+ onCleanup: (cleanupFn: () => void) => void,
39
+ ) => any
40
+ /**
41
+ * Watch for an array with additions and removals.
42
+ *
43
+ * @see https://vueuse.org/watchArray
44
+ */
45
+ export declare function watchArray<
46
+ T,
47
+ Immediate extends Readonly<boolean> = false,
48
+ >(
49
+ source: WatchSource<T[]> | T[],
50
+ cb: WatchArrayCallback<T[], Immediate extends true ? T[] | undefined : T[]>,
51
+ options?: WatchOptions<Immediate>,
52
+ ): WatchHandle
53
+ ```
@@ -0,0 +1,63 @@
1
+ ---
2
+ category: Watch
3
+ ---
4
+
5
+ # watchAtMost
6
+
7
+ `watch` with the number of times triggered.
8
+
9
+ ## Usage
10
+
11
+ Similar to `watch` with an extra option `count` which set up the number of times the callback function is triggered. After the count is reached, the watch will be stopped automatically.
12
+
13
+ ```ts
14
+ import { watchAtMost } from '@vueuse/core'
15
+
16
+ watchAtMost(
17
+ source,
18
+ () => { console.log('trigger!') }, // triggered it at most 3 times
19
+ {
20
+ count: 3, // the number of times triggered
21
+ },
22
+ )
23
+ ```
24
+
25
+ ## Type Declarations
26
+
27
+ ```ts
28
+ export interface WatchAtMostOptions<
29
+ Immediate,
30
+ > extends WatchWithFilterOptions<Immediate> {
31
+ count: MaybeRefOrGetter<number>
32
+ }
33
+ export interface WatchAtMostReturn {
34
+ stop: WatchStopHandle
35
+ pause: () => void
36
+ resume: () => void
37
+ count: ShallowRef<number>
38
+ }
39
+ export declare function watchAtMost<
40
+ T,
41
+ Immediate extends Readonly<boolean> = false,
42
+ >(
43
+ sources: WatchSource<T>,
44
+ cb: WatchCallback<T, Immediate extends true ? T | undefined : T>,
45
+ options: WatchAtMostOptions<Immediate>,
46
+ ): WatchAtMostReturn
47
+ export declare function watchAtMost<
48
+ T extends Readonly<MultiWatchSources>,
49
+ Immediate extends Readonly<boolean> = false,
50
+ >(
51
+ sources: [...T],
52
+ cb: WatchCallback<MapSources<T>, MapOldSources<T, Immediate>>,
53
+ options: WatchAtMostOptions<Immediate>,
54
+ ): WatchAtMostReturn
55
+ export declare function watchAtMost<
56
+ T extends object,
57
+ Immediate extends Readonly<boolean> = false,
58
+ >(
59
+ sources: T,
60
+ cb: WatchCallback<MapSources<T>, MapOldSources<T, Immediate>>,
61
+ options: WatchAtMostOptions<Immediate>,
62
+ ): WatchAtMostReturn
63
+ ```
@@ -0,0 +1,101 @@
1
+ ---
2
+ category: Watch
3
+ alias: debouncedWatch
4
+ ---
5
+
6
+ # watchDebounced
7
+
8
+ Debounced watch. The callback will only be invoked after the source stops changing for the specified duration.
9
+
10
+ ## Usage
11
+
12
+ Similar to `watch`, but offering extra options `debounce` and `maxWait` which will be applied to the callback function.
13
+
14
+ ```ts
15
+ import { watchDebounced } from '@vueuse/core'
16
+
17
+ watchDebounced(
18
+ source,
19
+ () => { console.log('changed!') },
20
+ { debounce: 500, maxWait: 1000 },
21
+ )
22
+ ```
23
+
24
+ ### Options
25
+
26
+ | Option | Type | Default | Description |
27
+ | ---------- | -------------------------- | ------- | ------------------------------------------ |
28
+ | `debounce` | `MaybeRefOrGetter<number>` | `0` | Debounce delay in ms (can be reactive) |
29
+ | `maxWait` | `MaybeRefOrGetter<number>` | — | Maximum wait time before forced invocation |
30
+
31
+ All standard `watch` options (`deep`, `immediate`, `flush`, etc.) are also supported.
32
+
33
+ ### Reactive Debounce Time
34
+
35
+ The debounce time can be reactive:
36
+
37
+ ```ts
38
+ import { watchDebounced } from '@vueuse/core'
39
+
40
+ const debounceMs = ref(500)
41
+
42
+ watchDebounced(
43
+ source,
44
+ () => { console.log('changed!') },
45
+ { debounce: debounceMs },
46
+ )
47
+
48
+ // Later, change the debounce time
49
+ debounceMs.value = 1000
50
+ ```
51
+
52
+ ## How It Works
53
+
54
+ It's essentially a shorthand for the following code:
55
+
56
+ ```ts
57
+ import { debounceFilter, watchWithFilter } from '@vueuse/core'
58
+
59
+ watchWithFilter(
60
+ source,
61
+ () => { console.log('changed!') },
62
+ {
63
+ eventFilter: debounceFilter(500, { maxWait: 1000 }),
64
+ },
65
+ )
66
+ ```
67
+
68
+ ## Type Declarations
69
+
70
+ ```ts
71
+ export interface WatchDebouncedOptions<Immediate>
72
+ extends WatchOptions<Immediate>, DebounceFilterOptions {
73
+ debounce?: MaybeRefOrGetter<number>
74
+ }
75
+ export declare function watchDebounced<
76
+ T,
77
+ Immediate extends Readonly<boolean> = false,
78
+ >(
79
+ source: WatchSource<T>,
80
+ cb: WatchCallback<T, Immediate extends true ? T | undefined : T>,
81
+ options?: WatchDebouncedOptions<Immediate>,
82
+ ): WatchHandle
83
+ export declare function watchDebounced<
84
+ T extends Readonly<MultiWatchSources>,
85
+ Immediate extends Readonly<boolean> = false,
86
+ >(
87
+ sources: [...T],
88
+ cb: WatchCallback<MapSources<T>, MapOldSources<T, Immediate>>,
89
+ options?: WatchDebouncedOptions<Immediate>,
90
+ ): WatchHandle
91
+ export declare function watchDebounced<
92
+ T extends object,
93
+ Immediate extends Readonly<boolean> = false,
94
+ >(
95
+ source: T,
96
+ cb: WatchCallback<T, Immediate extends true ? T | undefined : T>,
97
+ options?: WatchDebouncedOptions<Immediate>,
98
+ ): WatchHandle
99
+ /** @deprecated use `watchDebounced` instead */
100
+ export declare const debouncedWatch: typeof watchDebounced
101
+ ```