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,93 @@
1
+ ---
2
+ category: Animation
3
+ ---
4
+
5
+ # useTimestamp
6
+
7
+ Reactive current timestamp
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useTimestamp } from '@vueuse/core'
13
+
14
+ const timestamp = useTimestamp({ offset: 0 })
15
+ ```
16
+
17
+ ```ts
18
+ import { useTimestamp } from '@vueuse/core'
19
+ // ---cut---
20
+ const { timestamp, pause, resume } = useTimestamp({ controls: true })
21
+ ```
22
+
23
+ ## Component Usage
24
+
25
+ ```vue
26
+ <template>
27
+ <UseTimestamp v-slot="{ timestamp, pause, resume }">
28
+ Current Time: {{ timestamp }}
29
+ <button @click="pause()">
30
+ Pause
31
+ </button>
32
+ <button @click="resume()">
33
+ Resume
34
+ </button>
35
+ </UseTimestamp>
36
+ </template>
37
+ ```
38
+
39
+ ## Type Declarations
40
+
41
+ ```ts
42
+ export interface UseTimestampOptions<
43
+ Controls extends boolean,
44
+ > extends ConfigurableScheduler {
45
+ /**
46
+ * Expose more controls
47
+ *
48
+ * @default false
49
+ */
50
+ controls?: Controls
51
+ /**
52
+ * Offset value adding to the value
53
+ *
54
+ * @default 0
55
+ */
56
+ offset?: number
57
+ /**
58
+ * Update the timestamp immediately
59
+ *
60
+ * @deprecated Please use `scheduler` option instead
61
+ * @default true
62
+ */
63
+ immediate?: boolean
64
+ /**
65
+ * Update interval, or use requestAnimationFrame
66
+ *
67
+ * @deprecated Please use `scheduler` option instead
68
+ * @default requestAnimationFrame
69
+ */
70
+ interval?: "requestAnimationFrame" | number
71
+ /**
72
+ * Callback on each update
73
+ */
74
+ callback?: (timestamp: number) => void
75
+ }
76
+ export type UseTimestampReturn<Controls extends boolean> = Controls extends true
77
+ ? {
78
+ timestamp: ShallowRef<number>
79
+ } & Pausable
80
+ : ShallowRef<number>
81
+ /**
82
+ * Reactive current timestamp.
83
+ *
84
+ * @see https://vueuse.org/useTimestamp
85
+ * @param options
86
+ */
87
+ export declare function useTimestamp(
88
+ options?: UseTimestampOptions<false>,
89
+ ): ShallowRef<number>
90
+ export declare function useTimestamp(options: UseTimestampOptions<true>): {
91
+ timestamp: ShallowRef<number>
92
+ } & Pausable
93
+ ```
@@ -0,0 +1,115 @@
1
+ ---
2
+ category: Browser
3
+ ---
4
+
5
+ # useTitle
6
+
7
+ Reactive document title.
8
+
9
+ ::: warning
10
+ This composable isn't compatible with SSR.
11
+ :::
12
+
13
+ ## Usage
14
+
15
+ ```ts
16
+ import { useTitle } from '@vueuse/core'
17
+
18
+ const title = useTitle()
19
+ console.log(title.value) // print current title
20
+ title.value = 'Hello' // change current title
21
+ ```
22
+
23
+ Set initial title immediately:
24
+
25
+ ```ts
26
+ import { useTitle } from '@vueuse/core'
27
+ // ---cut---
28
+ const title = useTitle('New Title')
29
+ ```
30
+
31
+ Pass a `ref` and the title will be updated when the source ref changes:
32
+
33
+ ```ts
34
+ import { useTitle } from '@vueuse/core'
35
+ import { shallowRef } from 'vue'
36
+
37
+ const messages = shallowRef(0)
38
+
39
+ const title = computed(() => {
40
+ return !messages.value ? 'No message' : `${messages.value} new messages`
41
+ })
42
+
43
+ useTitle(title) // document title will match with the ref "title"
44
+ ```
45
+
46
+ Pass an optional template tag [Vue Meta Title Template](https://vue-meta.nuxtjs.org/guide/metainfo.html) to update the title to be injected into this template:
47
+
48
+ ```ts
49
+ import { useTitle } from '@vueuse/core'
50
+ // ---cut---
51
+ const title = useTitle('New Title', {
52
+ titleTemplate: '%s | My Awesome Website'
53
+ })
54
+ ```
55
+
56
+ ::: warning
57
+ `observe` is incompatible with `titleTemplate`.
58
+ :::
59
+
60
+ ## Type Declarations
61
+
62
+ ```ts
63
+ export type UseTitleOptionsBase = {
64
+ /**
65
+ * Restore the original title when unmounted
66
+ * @param originTitle original title
67
+ * @returns restored title
68
+ */
69
+ restoreOnUnmount?:
70
+ | false
71
+ | ((
72
+ originalTitle: string,
73
+ currentTitle: string,
74
+ ) => string | null | undefined)
75
+ } & (
76
+ | {
77
+ /**
78
+ * Observe `document.title` changes using MutationObserve
79
+ * Cannot be used together with `titleTemplate` option.
80
+ *
81
+ * @default false
82
+ */
83
+ observe?: boolean
84
+ }
85
+ | {
86
+ /**
87
+ * The template string to parse the title (e.g., '%s | My Website')
88
+ * Cannot be used together with `observe` option.
89
+ *
90
+ * @default '%s'
91
+ */
92
+ titleTemplate?: MaybeRef<string> | ((title: string) => string)
93
+ }
94
+ )
95
+ export type UseTitleOptions = ConfigurableDocument & UseTitleOptionsBase
96
+ export type UseTitleReturn =
97
+ | ComputedRef<string | null | undefined>
98
+ | Ref<string | null | undefined>
99
+ /**
100
+ * Reactive document title.
101
+ *
102
+ * @see https://vueuse.org/useTitle
103
+ * @param newTitle
104
+ * @param options
105
+ * @description It's not SSR compatible. Your value will be applied only on client-side.
106
+ */
107
+ export declare function useTitle(
108
+ newTitle: ReadonlyRefOrGetter<string | null | undefined>,
109
+ options?: UseTitleOptions,
110
+ ): ComputedRef<string | null | undefined>
111
+ export declare function useTitle(
112
+ newTitle?: MaybeRef<string | null | undefined>,
113
+ options?: UseTitleOptions,
114
+ ): Ref<string | null | undefined>
115
+ ```
@@ -0,0 +1,54 @@
1
+ ---
2
+ category: Utilities
3
+ ---
4
+
5
+ # useToNumber
6
+
7
+ Reactively convert a string ref to number.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useToNumber } from '@vueuse/core'
13
+ import { shallowRef } from 'vue'
14
+
15
+ const str = shallowRef('123')
16
+ const number = useToNumber(str)
17
+
18
+ number.value // 123
19
+ ```
20
+
21
+ ## Type Declarations
22
+
23
+ ```ts
24
+ export interface UseToNumberOptions {
25
+ /**
26
+ * Method to use to convert the value to a number.
27
+ *
28
+ * Or a custom function for the conversion.
29
+ *
30
+ * @default 'parseFloat'
31
+ */
32
+ method?: "parseFloat" | "parseInt" | ((value: string | number) => number)
33
+ /**
34
+ * The base in mathematical numeral systems passed to `parseInt`.
35
+ * Only works with `method: 'parseInt'`
36
+ */
37
+ radix?: number
38
+ /**
39
+ * Replace NaN with zero
40
+ *
41
+ * @default false
42
+ */
43
+ nanToZero?: boolean
44
+ }
45
+ /**
46
+ * Reactively convert a string ref to number.
47
+ *
48
+ * @__NO_SIDE_EFFECTS__
49
+ */
50
+ export declare function useToNumber(
51
+ value: MaybeRefOrGetter<number | string>,
52
+ options?: UseToNumberOptions,
53
+ ): ComputedRef<number>
54
+ ```
@@ -0,0 +1,34 @@
1
+ ---
2
+ category: Utilities
3
+ ---
4
+
5
+ # useToString
6
+
7
+ Reactively convert a ref to string.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useToString } from '@vueuse/core'
13
+ import { shallowRef } from 'vue'
14
+
15
+ const number = shallowRef(3.14)
16
+ const str = useToString(number)
17
+
18
+ str.value // '3.14'
19
+ ```
20
+
21
+ ## Type Declarations
22
+
23
+ ```ts
24
+ /**
25
+ * Reactively convert a ref to string.
26
+ *
27
+ * @see https://vueuse.org/useToString
28
+ *
29
+ * @__NO_SIDE_EFFECTS__
30
+ */
31
+ export declare function useToString(
32
+ value: MaybeRefOrGetter<unknown>,
33
+ ): ComputedRef<string>
34
+ ```
@@ -0,0 +1,103 @@
1
+ ---
2
+ category: Utilities
3
+ ---
4
+
5
+ # useToggle
6
+
7
+ A boolean switcher with utility functions.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useToggle } from '@vueuse/core'
13
+
14
+ const [value, toggle] = useToggle()
15
+ ```
16
+
17
+ When you pass a ref, `useToggle` will return a simple toggle function instead:
18
+
19
+ ```ts
20
+ import { useDark, useToggle } from '@vueuse/core'
21
+
22
+ const isDark = useDark()
23
+ const toggleDark = useToggle(isDark)
24
+ ```
25
+
26
+ ### Toggle Function
27
+
28
+ The toggle function can be called in two ways:
29
+
30
+ ```ts
31
+ const [value, toggle] = useToggle()
32
+
33
+ toggle() // toggle between true and false
34
+ toggle(true) // set to specific value
35
+
36
+ // The toggle function returns the new value
37
+ const newValue = toggle() // returns the new value after toggling
38
+ ```
39
+
40
+ ### Custom Values
41
+
42
+ You can use custom truthy and falsy values instead of `true` and `false`:
43
+
44
+ ```ts
45
+ import { useToggle } from '@vueuse/core'
46
+
47
+ const [value, toggle] = useToggle('on', {
48
+ truthyValue: 'on',
49
+ falsyValue: 'off',
50
+ })
51
+
52
+ toggle() // 'off'
53
+ toggle() // 'on'
54
+ ```
55
+
56
+ The custom values can also be reactive:
57
+
58
+ ```ts
59
+ import { useToggle } from '@vueuse/core'
60
+ import { ref } from 'vue'
61
+
62
+ const truthy = ref('yes')
63
+ const falsy = ref('no')
64
+
65
+ const [value, toggle] = useToggle('yes', {
66
+ truthyValue: truthy,
67
+ falsyValue: falsy,
68
+ })
69
+ ```
70
+
71
+ ## Caution
72
+
73
+ Be aware that the toggle function accepts the first argument as the override value. You might want to avoid directly passing the function to events in the template, as the event object will be passed in.
74
+
75
+ ```html
76
+ <!-- caution: $event will be passed in -->
77
+ <button @click="toggleDark" />
78
+ <!-- recommended to do this -->
79
+ <button @click="toggleDark()" />
80
+ ```
81
+
82
+ ## Type Declarations
83
+
84
+ ```ts
85
+ export type ToggleFn = (value?: boolean) => void
86
+ export type UseToggleReturn = [ShallowRef<boolean>, ToggleFn] | ToggleFn
87
+ export interface UseToggleOptions<Truthy, Falsy> {
88
+ truthyValue?: MaybeRefOrGetter<Truthy>
89
+ falsyValue?: MaybeRefOrGetter<Falsy>
90
+ }
91
+ export declare function useToggle<Truthy, Falsy, T = Truthy | Falsy>(
92
+ initialValue: Ref<T>,
93
+ options?: UseToggleOptions<Truthy, Falsy>,
94
+ ): (value?: T) => T
95
+ export declare function useToggle<
96
+ Truthy = true,
97
+ Falsy = false,
98
+ T = Truthy | Falsy,
99
+ >(
100
+ initialValue?: T,
101
+ options?: UseToggleOptions<Truthy, Falsy>,
102
+ ): [ShallowRef<T>, (value?: T) => T]
103
+ ```
@@ -0,0 +1,265 @@
1
+ ---
2
+ category: Animation
3
+ ---
4
+
5
+ # useTransition
6
+
7
+ Transition between values
8
+
9
+ ## Usage
10
+
11
+ Define a source value to follow, and when changed the output will transition to the new value. If the source changes while a transition is in progress, a new transition will begin from where the previous one was interrupted.
12
+
13
+ ```ts
14
+ import { TransitionPresets, useTransition } from '@vueuse/core'
15
+ import { shallowRef } from 'vue'
16
+
17
+ const source = shallowRef(0)
18
+
19
+ const output = useTransition(source, {
20
+ duration: 1000,
21
+ easing: TransitionPresets.easeInOutCubic,
22
+ })
23
+ ```
24
+
25
+ Transition easing can be customized using [cubic bezier curves](https://developer.mozilla.org/en-US/docs/Web/CSS/easing-function/cubic-bezier#description).
26
+
27
+ ```ts
28
+ import { useTransition } from '@vueuse/core'
29
+ // ---cut---
30
+ useTransition(source, {
31
+ easing: [0.75, 0, 0.25, 1],
32
+ })
33
+ ```
34
+
35
+ The following transitions are available via the `TransitionPresets` constant.
36
+
37
+ - [`linear`](https://cubic-bezier.com/#0,0,1,1)
38
+ - [`easeInSine`](https://cubic-bezier.com/#.12,0,.39,0)
39
+ - [`easeOutSine`](https://cubic-bezier.com/#.61,1,.88,1)
40
+ - [`easeInOutSine`](https://cubic-bezier.com/#.37,0,.63,1)
41
+ - [`easeInQuad`](https://cubic-bezier.com/#.11,0,.5,0)
42
+ - [`easeOutQuad`](https://cubic-bezier.com/#.5,1,.89,1)
43
+ - [`easeInOutQuad`](https://cubic-bezier.com/#.45,0,.55,1)
44
+ - [`easeInCubic`](https://cubic-bezier.com/#.32,0,.67,0)
45
+ - [`easeOutCubic`](https://cubic-bezier.com/#.33,1,.68,1)
46
+ - [`easeInOutCubic`](https://cubic-bezier.com/#.65,0,.35,1)
47
+ - [`easeInQuart`](https://cubic-bezier.com/#.5,0,.75,0)
48
+ - [`easeOutQuart`](https://cubic-bezier.com/#.25,1,.5,1)
49
+ - [`easeInOutQuart`](https://cubic-bezier.com/#.76,0,.24,1)
50
+ - [`easeInQuint`](https://cubic-bezier.com/#.64,0,.78,0)
51
+ - [`easeOutQuint`](https://cubic-bezier.com/#.22,1,.36,1)
52
+ - [`easeInOutQuint`](https://cubic-bezier.com/#.83,0,.17,1)
53
+ - [`easeInExpo`](https://cubic-bezier.com/#.7,0,.84,0)
54
+ - [`easeOutExpo`](https://cubic-bezier.com/#.16,1,.3,1)
55
+ - [`easeInOutExpo`](https://cubic-bezier.com/#.87,0,.13,1)
56
+ - [`easeInCirc`](https://cubic-bezier.com/#.55,0,1,.45)
57
+ - [`easeOutCirc`](https://cubic-bezier.com/#0,.55,.45,1)
58
+ - [`easeInOutCirc`](https://cubic-bezier.com/#.85,0,.15,1)
59
+ - [`easeInBack`](https://cubic-bezier.com/#.36,0,.66,-.56)
60
+ - [`easeOutBack`](https://cubic-bezier.com/#.34,1.56,.64,1)
61
+ - [`easeInOutBack`](https://cubic-bezier.com/#.68,-.6,.32,1.6)
62
+
63
+ For more complex easing, a custom function can be provided.
64
+
65
+ ```ts
66
+ import { useTransition } from '@vueuse/core'
67
+ // ---cut---
68
+ function easeOutElastic(n) {
69
+ return n === 0
70
+ ? 0
71
+ : n === 1
72
+ ? 1
73
+ : (2 ** (-10 * n)) * Math.sin((n * 10 - 0.75) * ((2 * Math.PI) / 3)) + 1
74
+ }
75
+
76
+ useTransition(source, {
77
+ easing: easeOutElastic,
78
+ })
79
+ ```
80
+
81
+ By default the `source` must be a number, or array of numbers. For more complex values, define a custom `interpolation` function. For example, the following would transition a Three.js rotation.
82
+
83
+ ```ts
84
+ import { useTransition } from '@vueuse/core'
85
+ // ---cut---
86
+ import { Quaternion } from 'three'
87
+
88
+ const source = ref(new Quaternion())
89
+
90
+ const output = useTransition(source, {
91
+ interpolation: (q1, q2, t) => new Quaternion().slerpQuaternions(q1, q2, t)
92
+ })
93
+ ```
94
+
95
+ To control when a transition starts, set a `delay` value. To choreograph behavior around a transition, define `onStarted` or `onFinished` callbacks.
96
+
97
+ ```ts
98
+ import { useTransition } from '@vueuse/core'
99
+ // ---cut---
100
+ useTransition(source, {
101
+ delay: 1000,
102
+ onStarted() {
103
+ // called after the transition starts
104
+ },
105
+ onFinished() {
106
+ // called after the transition ends
107
+ },
108
+ })
109
+ ```
110
+
111
+ To stop transitioning, define a boolean `disabled` property. Be aware, this is not the same a `duration` of `0`. Disabled transitions track the source value **_synchronously_**. They do not respect a `delay`, and do not fire `onStarted` or `onFinished` callbacks.
112
+
113
+ For even more control, transitions can be executed manually via the `transition` function. This function returns a promise that resolves when the transition is complete. Manual transitions can be cancelled by defining an `abort` function that returns a truthy value.
114
+
115
+ ```ts
116
+ import { transition } from '@vueuse/core'
117
+
118
+ await transition(source, from, to, {
119
+ abort() {
120
+ if (shouldAbort)
121
+ return true
122
+ }
123
+ })
124
+ ```
125
+
126
+ ## Type Declarations
127
+
128
+ ```ts
129
+ /**
130
+ * Cubic bezier points
131
+ */
132
+ export type CubicBezierPoints = [number, number, number, number]
133
+ /**
134
+ * Easing function
135
+ */
136
+ export type EasingFunction = (n: number) => number
137
+ /**
138
+ * Interpolation function
139
+ */
140
+ export type InterpolationFunction<T> = (from: T, to: T, t: number) => T
141
+ /**
142
+ * Transition options
143
+ */
144
+ export interface TransitionOptions<T> extends ConfigurableWindow {
145
+ /**
146
+ * Manually abort a transition
147
+ */
148
+ abort?: () => any
149
+ /**
150
+ * Transition duration in milliseconds
151
+ */
152
+ duration?: MaybeRef<number>
153
+ /**
154
+ * Easing function or cubic bezier points to calculate transition progress
155
+ */
156
+ easing?: MaybeRef<EasingFunction | CubicBezierPoints>
157
+ /**
158
+ * Custom interpolation function
159
+ */
160
+ interpolation?: InterpolationFunction<T>
161
+ /**
162
+ * Easing function or cubic bezier points to calculate transition progress
163
+ * @deprecated The `transition` option is deprecated, use `easing` instead.
164
+ */
165
+ transition?: MaybeRef<EasingFunction | CubicBezierPoints>
166
+ }
167
+ export interface UseTransitionOptions<T> extends TransitionOptions<T> {
168
+ /**
169
+ * Milliseconds to wait before starting transition
170
+ */
171
+ delay?: MaybeRef<number>
172
+ /**
173
+ * Disables the transition
174
+ */
175
+ disabled?: MaybeRef<boolean>
176
+ /**
177
+ * Callback to execute after transition finishes
178
+ */
179
+ onFinished?: () => void
180
+ /**
181
+ * Callback to execute after transition starts
182
+ */
183
+ onStarted?: () => void
184
+ }
185
+ declare const _TransitionPresets: {
186
+ readonly easeInSine: readonly [0.12, 0, 0.39, 0]
187
+ readonly easeOutSine: readonly [0.61, 1, 0.88, 1]
188
+ readonly easeInOutSine: readonly [0.37, 0, 0.63, 1]
189
+ readonly easeInQuad: readonly [0.11, 0, 0.5, 0]
190
+ readonly easeOutQuad: readonly [0.5, 1, 0.89, 1]
191
+ readonly easeInOutQuad: readonly [0.45, 0, 0.55, 1]
192
+ readonly easeInCubic: readonly [0.32, 0, 0.67, 0]
193
+ readonly easeOutCubic: readonly [0.33, 1, 0.68, 1]
194
+ readonly easeInOutCubic: readonly [0.65, 0, 0.35, 1]
195
+ readonly easeInQuart: readonly [0.5, 0, 0.75, 0]
196
+ readonly easeOutQuart: readonly [0.25, 1, 0.5, 1]
197
+ readonly easeInOutQuart: readonly [0.76, 0, 0.24, 1]
198
+ readonly easeInQuint: readonly [0.64, 0, 0.78, 0]
199
+ readonly easeOutQuint: readonly [0.22, 1, 0.36, 1]
200
+ readonly easeInOutQuint: readonly [0.83, 0, 0.17, 1]
201
+ readonly easeInExpo: readonly [0.7, 0, 0.84, 0]
202
+ readonly easeOutExpo: readonly [0.16, 1, 0.3, 1]
203
+ readonly easeInOutExpo: readonly [0.87, 0, 0.13, 1]
204
+ readonly easeInCirc: readonly [0.55, 0, 1, 0.45]
205
+ readonly easeOutCirc: readonly [0, 0.55, 0.45, 1]
206
+ readonly easeInOutCirc: readonly [0.85, 0, 0.15, 1]
207
+ readonly easeInBack: readonly [0.36, 0, 0.66, -0.56]
208
+ readonly easeOutBack: readonly [0.34, 1.56, 0.64, 1]
209
+ readonly easeInOutBack: readonly [0.68, -0.6, 0.32, 1.6]
210
+ }
211
+ /**
212
+ * Common transitions
213
+ *
214
+ * @see https://easings.net
215
+ */
216
+ export declare const TransitionPresets: Record<
217
+ keyof typeof _TransitionPresets,
218
+ CubicBezierPoints
219
+ > & {
220
+ linear: EasingFunction
221
+ }
222
+ /**
223
+ * Transition from one value to another.
224
+ *
225
+ * @param source
226
+ * @param from
227
+ * @param to
228
+ * @param options
229
+ */
230
+ export declare function transition<T>(
231
+ source: Ref<T>,
232
+ from: MaybeRefOrGetter<T>,
233
+ to: MaybeRefOrGetter<T>,
234
+ options?: TransitionOptions<T>,
235
+ ): PromiseLike<void>
236
+ /**
237
+ * Transition from one value to another.
238
+ * @deprecated The `executeTransition` function is deprecated, use `transition` instead.
239
+ *
240
+ * @param source
241
+ * @param from
242
+ * @param to
243
+ * @param options
244
+ */
245
+ export declare function executeTransition<T>(
246
+ source: Ref<T>,
247
+ from: MaybeRefOrGetter<T>,
248
+ to: MaybeRefOrGetter<T>,
249
+ options?: TransitionOptions<T>,
250
+ ): PromiseLike<void>
251
+ export declare function useTransition<T extends MaybeRefOrGetter<number>[]>(
252
+ source: [...T],
253
+ options?: UseTransitionOptions<T>,
254
+ ): ComputedRef<{
255
+ [K in keyof T]: number
256
+ }>
257
+ export declare function useTransition<T extends MaybeRefOrGetter<number[]>>(
258
+ source: T,
259
+ options?: UseTransitionOptions<T>,
260
+ ): ComputedRef<number[]>
261
+ export declare function useTransition<T>(
262
+ source: MaybeRefOrGetter<T>,
263
+ options?: UseTransitionOptions<T>,
264
+ ): ComputedRef<T>
265
+ ```
@@ -0,0 +1,33 @@
1
+ ---
2
+ category: '@Math'
3
+ ---
4
+
5
+ # useTrunc
6
+
7
+ Reactive `Math.trunc`.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useTrunc } from '@vueuse/math'
13
+
14
+ const value1 = ref(0.95)
15
+ const value2 = ref(-2.34)
16
+ const result1 = useTrunc(value1) // 0
17
+ const result2 = useTrunc(value2) // -2
18
+ ```
19
+
20
+ ## Type Declarations
21
+
22
+ ```ts
23
+ /**
24
+ * Reactive `Math.trunc`.
25
+ *
26
+ * @see https://vueuse.org/useTrunc
27
+ *
28
+ * @__NO_SIDE_EFFECTS__
29
+ */
30
+ export declare function useTrunc(
31
+ value: MaybeRefOrGetter<number>,
32
+ ): ComputedRef<number>
33
+ ```