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,59 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayEvery
6
+
7
+ Reactive `Array.every`
8
+
9
+ ## Usage
10
+
11
+ ### Use with array of multiple refs
12
+
13
+ ```ts
14
+ import { useArrayEvery } from '@vueuse/core'
15
+
16
+ const item1 = ref(0)
17
+ const item2 = ref(2)
18
+ const item3 = ref(4)
19
+ const item4 = ref(6)
20
+ const item5 = ref(8)
21
+ const list = [item1, item2, item3, item4, item5]
22
+ const result = useArrayEvery(list, i => i % 2 === 0)
23
+ // result.value: true
24
+ item1.value = 1
25
+ // result.value: false
26
+ ```
27
+
28
+ ### Use with reactive array
29
+
30
+ ```ts
31
+ import { useArrayEvery } from '@vueuse/core'
32
+
33
+ const list = ref([0, 2, 4, 6, 8])
34
+ const result = useArrayEvery(list, i => i % 2 === 0)
35
+ // result.value: true
36
+ list.value.push(9)
37
+ // result.value: false
38
+ ```
39
+
40
+ ## Type Declarations
41
+
42
+ ```ts
43
+ export type UseArrayEveryReturn = ComputedRef<boolean>
44
+ /**
45
+ * Reactive `Array.every`
46
+ *
47
+ * @see https://vueuse.org/useArrayEvery
48
+ * @param list - the array was called upon.
49
+ * @param fn - a function to test each element.
50
+ *
51
+ * @returns **true** if the `fn` function returns a **truthy** value for every element from the array. Otherwise, **false**.
52
+ *
53
+ * @__NO_SIDE_EFFECTS__
54
+ */
55
+ export declare function useArrayEvery<T>(
56
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
57
+ fn: (element: T, index: number, array: MaybeRefOrGetter<T>[]) => unknown,
58
+ ): UseArrayEveryReturn
59
+ ```
@@ -0,0 +1,63 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayFilter
6
+
7
+ Reactive `Array.filter`
8
+
9
+ ## Usage
10
+
11
+ ### Use with array of multiple refs
12
+
13
+ ```ts
14
+ import { useArrayFilter } from '@vueuse/core'
15
+
16
+ const item1 = ref(0)
17
+ const item2 = ref(2)
18
+ const item3 = ref(4)
19
+ const item4 = ref(6)
20
+ const item5 = ref(8)
21
+ const list = [item1, item2, item3, item4, item5]
22
+ const result = useArrayFilter(list, i => i % 2 === 0)
23
+ // result.value: [0, 2, 4, 6, 8]
24
+ item2.value = 1
25
+ // result.value: [0, 4, 6, 8]
26
+ ```
27
+
28
+ ### Use with reactive array
29
+
30
+ ```ts
31
+ import { useArrayFilter } from '@vueuse/core'
32
+
33
+ const list = ref([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
34
+ const result = useArrayFilter(list, i => i % 2 === 0)
35
+ // result.value: [0, 2, 4, 6, 8]
36
+ list.value.shift()
37
+ // result.value: [2, 4, 6, 8]
38
+ ```
39
+
40
+ ## Type Declarations
41
+
42
+ ```ts
43
+ export type UseArrayFilterReturn<T = any> = ComputedRef<T[]>
44
+ /**
45
+ * Reactive `Array.filter`
46
+ *
47
+ * @see https://vueuse.org/useArrayFilter
48
+ * @param list - the array was called upon.
49
+ * @param fn - a function that is called for every element of the given `list`. Each time `fn` executes, the returned value is added to the new array.
50
+ *
51
+ * @returns a shallow copy of a portion of the given array, filtered down to just the elements from the given array that pass the test implemented by the provided function. If no elements pass the test, an empty array will be returned.
52
+ *
53
+ * @__NO_SIDE_EFFECTS__
54
+ */
55
+ export declare function useArrayFilter<T, S extends T>(
56
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
57
+ fn: (element: T, index: number, array: T[]) => element is S,
58
+ ): UseArrayFilterReturn<S>
59
+ export declare function useArrayFilter<T>(
60
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
61
+ fn: (element: T, index: number, array: T[]) => unknown,
62
+ ): UseArrayFilterReturn<T>
63
+ ```
@@ -0,0 +1,50 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayFind
6
+
7
+ Reactive `Array.find`.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useArrayFind } from '@vueuse/core'
13
+
14
+ const list = [ref(1), ref(-1), ref(2)]
15
+ const positive = useArrayFind(list, val => val > 0)
16
+ // positive.value: 1
17
+ ```
18
+
19
+ ### Use with reactive array
20
+
21
+ ```ts
22
+ import { useArrayFind } from '@vueuse/core'
23
+
24
+ const list = reactive([-1, -2])
25
+ const positive = useArrayFind(list, val => val > 0)
26
+ // positive.value: undefined
27
+ list.push(1)
28
+ // positive.value: 1
29
+ ```
30
+
31
+ ## Type Declarations
32
+
33
+ ```ts
34
+ export type UseArrayFindReturn<T = any> = ComputedRef<T | undefined>
35
+ /**
36
+ * Reactive `Array.find`
37
+ *
38
+ * @see https://vueuse.org/useArrayFind
39
+ * @param list - the array was called upon.
40
+ * @param fn - a function to test each element.
41
+ *
42
+ * @returns the first element in the array that satisfies the provided testing function. Otherwise, undefined is returned.
43
+ *
44
+ * @__NO_SIDE_EFFECTS__
45
+ */
46
+ export declare function useArrayFind<T>(
47
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
48
+ fn: (element: T, index: number, array: MaybeRefOrGetter<T>[]) => boolean,
49
+ ): UseArrayFindReturn<T>
50
+ ```
@@ -0,0 +1,59 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayFindIndex
6
+
7
+ Reactive `Array.findIndex`
8
+
9
+ ## Usage
10
+
11
+ ### Use with array of multiple refs
12
+
13
+ ```ts
14
+ import { useArrayFindIndex } from '@vueuse/core'
15
+
16
+ const item1 = ref(0)
17
+ const item2 = ref(2)
18
+ const item3 = ref(4)
19
+ const item4 = ref(6)
20
+ const item5 = ref(8)
21
+ const list = [item1, item2, item3, item4, item5]
22
+ const result = useArrayFindIndex(list, i => i % 2 === 0)
23
+ // result.value: 0
24
+ item1.value = 1
25
+ // result.value: 1
26
+ ```
27
+
28
+ ### Use with reactive array
29
+
30
+ ```ts
31
+ import { useArrayFindIndex } from '@vueuse/core'
32
+
33
+ const list = ref([0, 2, 4, 6, 8])
34
+ const result = useArrayFindIndex(list, i => i % 2 === 0)
35
+ // result.value: 0
36
+ list.value.unshift(-1)
37
+ // result.value: 1
38
+ ```
39
+
40
+ ## Type Declarations
41
+
42
+ ```ts
43
+ export type UseArrayFindIndexReturn = ComputedRef<number>
44
+ /**
45
+ * Reactive `Array.findIndex`
46
+ *
47
+ * @see https://vueuse.org/useArrayFindIndex
48
+ * @param list - the array was called upon.
49
+ * @param fn - a function to test each element.
50
+ *
51
+ * @returns the index of the first element in the array that passes the test. Otherwise, "-1".
52
+ *
53
+ * @__NO_SIDE_EFFECTS__
54
+ */
55
+ export declare function useArrayFindIndex<T>(
56
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
57
+ fn: (element: T, index: number, array: MaybeRefOrGetter<T>[]) => unknown,
58
+ ): UseArrayFindIndexReturn
59
+ ```
@@ -0,0 +1,52 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayFindLast
6
+
7
+ Reactive `Array.findLast`.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useArrayFindLast } from '@vueuse/core'
13
+
14
+ const list = [ref(1), ref(-1), ref(2)]
15
+ const positive = useArrayFindLast(list, val => val > 0)
16
+ // positive.value: 2
17
+ ```
18
+
19
+ ### Use with reactive array
20
+
21
+ ```ts
22
+ import { useArrayFindLast } from '@vueuse/core'
23
+
24
+ const list = reactive([-1, -2])
25
+ const positive = useArrayFindLast(list, val => val > 0)
26
+ // positive.value: undefined
27
+ list.push(10)
28
+ // positive.value: 10
29
+ list.push(5)
30
+ // positive.value: 5
31
+ ```
32
+
33
+ ## Type Declarations
34
+
35
+ ```ts
36
+ export type UseArrayFindLastReturn<T = any> = ComputedRef<T | undefined>
37
+ /**
38
+ * Reactive `Array.findLast`
39
+ *
40
+ * @see https://vueuse.org/useArrayFindLast
41
+ * @param list - the array was called upon.
42
+ * @param fn - a function to test each element.
43
+ *
44
+ * @returns the last element in the array that satisfies the provided testing function. Otherwise, undefined is returned.
45
+ *
46
+ * @__NO_SIDE_EFFECTS__
47
+ */
48
+ export declare function useArrayFindLast<T>(
49
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
50
+ fn: (element: T, index: number, array: MaybeRefOrGetter<T>[]) => boolean,
51
+ ): UseArrayFindLastReturn<T>
52
+ ```
@@ -0,0 +1,63 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayIncludes
6
+
7
+ Reactive `Array.includes`
8
+
9
+ ## Usage
10
+
11
+ ### Use with reactive array
12
+
13
+ ```ts
14
+ import { useArrayIncludes } from '@vueuse/core'
15
+
16
+ const list = ref([0, 2, 4, 6, 8])
17
+ const result = useArrayIncludes(list, 10)
18
+ // result.value: false
19
+ list.value.push(10)
20
+ // result.value: true
21
+ list.value.pop()
22
+ // result.value: false
23
+ ```
24
+
25
+ ## Type Declarations
26
+
27
+ ```ts
28
+ export type UseArrayIncludesComparatorFn<T, V> = (
29
+ element: T,
30
+ value: V,
31
+ index: number,
32
+ array: MaybeRefOrGetter<T>[],
33
+ ) => boolean
34
+ export interface UseArrayIncludesOptions<T, V> {
35
+ fromIndex?: number
36
+ comparator?: UseArrayIncludesComparatorFn<T, V> | keyof T
37
+ }
38
+ export type UseArrayIncludesReturn = ComputedRef<boolean>
39
+ /**
40
+ * Reactive `Array.includes`
41
+ *
42
+ * @see https://vueuse.org/useArrayIncludes
43
+ *
44
+ * @returns true if the `value` is found in the array. Otherwise, false.
45
+ *
46
+ * @__NO_SIDE_EFFECTS__
47
+ */
48
+ export declare function useArrayIncludes<T, V = any>(
49
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
50
+ value: MaybeRefOrGetter<V>,
51
+ comparator?: UseArrayIncludesComparatorFn<T, V>,
52
+ ): UseArrayIncludesReturn
53
+ export declare function useArrayIncludes<T, V = any>(
54
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
55
+ value: MaybeRefOrGetter<V>,
56
+ comparator?: keyof T,
57
+ ): UseArrayIncludesReturn
58
+ export declare function useArrayIncludes<T, V = any>(
59
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
60
+ value: MaybeRefOrGetter<V>,
61
+ options?: UseArrayIncludesOptions<T, V>,
62
+ ): UseArrayIncludesReturn
63
+ ```
@@ -0,0 +1,74 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayJoin
6
+
7
+ Reactive `Array.join`
8
+
9
+ ## Usage
10
+
11
+ ### Use with array of multiple refs
12
+
13
+ ```ts
14
+ import { useArrayJoin } from '@vueuse/core'
15
+
16
+ const item1 = ref('foo')
17
+ const item2 = ref(0)
18
+ const item3 = ref({ prop: 'val' })
19
+ const list = [item1, item2, item3]
20
+ const result = useArrayJoin(list)
21
+ // result.value: foo,0,[object Object]
22
+ item1.value = 'bar'
23
+ // result.value: bar,0,[object Object]
24
+ ```
25
+
26
+ ### Use with reactive array
27
+
28
+ ```ts
29
+ import { useArrayJoin } from '@vueuse/core'
30
+
31
+ const list = ref(['string', 0, { prop: 'val' }, false, [1], [[2]], null, undefined, []])
32
+ const result = useArrayJoin(list)
33
+ // result.value: string,0,[object Object],false,1,2,,,
34
+ list.value.push(true)
35
+ // result.value: string,0,[object Object],false,1,2,,,,true
36
+ list.value = [null, 'string', undefined]
37
+ // result.value: ,string,
38
+ ```
39
+
40
+ ### Use with reactive separator
41
+
42
+ ```ts
43
+ import { useArrayJoin } from '@vueuse/core'
44
+
45
+ const list = ref(['string', 0, { prop: 'val' }])
46
+ const separator = ref()
47
+ const result = useArrayJoin(list, separator)
48
+ // result.value: string,0,[object Object]
49
+ separator.value = ''
50
+ // result.value: string0[object Object]
51
+ separator.value = '--'
52
+ // result.value: string--0--[object Object]
53
+ ```
54
+
55
+ ## Type Declarations
56
+
57
+ ```ts
58
+ export type UseArrayJoinReturn = ComputedRef<string>
59
+ /**
60
+ * Reactive `Array.join`
61
+ *
62
+ * @see https://vueuse.org/useArrayJoin
63
+ * @param list - the array was called upon.
64
+ * @param separator - a string to separate each pair of adjacent elements of the array. If omitted, the array elements are separated with a comma (",").
65
+ *
66
+ * @returns a string with all array elements joined. If arr.length is 0, the empty string is returned.
67
+ *
68
+ * @__NO_SIDE_EFFECTS__
69
+ */
70
+ export declare function useArrayJoin(
71
+ list: MaybeRefOrGetter<MaybeRefOrGetter<any>[]>,
72
+ separator?: MaybeRefOrGetter<string>,
73
+ ): UseArrayJoinReturn
74
+ ```
@@ -0,0 +1,59 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayMap
6
+
7
+ Reactive `Array.map`
8
+
9
+ ## Usage
10
+
11
+ ### Use with array of multiple refs
12
+
13
+ ```ts
14
+ import { useArrayMap } from '@vueuse/core'
15
+
16
+ const item1 = ref(0)
17
+ const item2 = ref(2)
18
+ const item3 = ref(4)
19
+ const item4 = ref(6)
20
+ const item5 = ref(8)
21
+ const list = [item1, item2, item3, item4, item5]
22
+ const result = useArrayMap(list, i => i * 2)
23
+ // result.value: [0, 4, 8, 12, 16]
24
+ item1.value = 1
25
+ // result.value: [2, 4, 8, 12, 16]
26
+ ```
27
+
28
+ ### Use with reactive array
29
+
30
+ ```ts
31
+ import { useArrayMap } from '@vueuse/core'
32
+
33
+ const list = ref([0, 1, 2, 3, 4])
34
+ const result = useArrayMap(list, i => i * 2)
35
+ // result.value: [0, 2, 4, 6, 8]
36
+ list.value.pop()
37
+ // result.value: [0, 2, 4, 6]
38
+ ```
39
+
40
+ ## Type Declarations
41
+
42
+ ```ts
43
+ export type UseArrayMapReturn<T = any> = ComputedRef<T[]>
44
+ /**
45
+ * Reactive `Array.map`
46
+ *
47
+ * @see https://vueuse.org/useArrayMap
48
+ * @param list - the array was called upon.
49
+ * @param fn - a function that is called for every element of the given `list`. Each time `fn` executes, the returned value is added to the new array.
50
+ *
51
+ * @returns a new array with each element being the result of the callback function.
52
+ *
53
+ * @__NO_SIDE_EFFECTS__
54
+ */
55
+ export declare function useArrayMap<T, U = T>(
56
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
57
+ fn: (element: T, index: number, array: T[]) => U,
58
+ ): UseArrayMapReturn<U>
59
+ ```
@@ -0,0 +1,81 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayReduce
6
+
7
+ Reactive `Array.reduce`.
8
+
9
+ ## Usage
10
+
11
+ ```ts
12
+ import { useArrayReduce } from '@vueuse/core'
13
+
14
+ const sum = useArrayReduce([ref(1), ref(2), ref(3)], (sum, val) => sum + val)
15
+ // sum.value: 6
16
+ ```
17
+
18
+ ### Use with reactive array
19
+
20
+ ```ts
21
+ import { useArrayReduce } from '@vueuse/core'
22
+
23
+ const list = reactive([1, 2])
24
+ const sum = useArrayReduce(list, (sum, val) => sum + val)
25
+
26
+ list.push(3)
27
+ // sum.value: 6
28
+ ```
29
+
30
+ ### Use with initialValue
31
+
32
+ ```ts
33
+ import { useArrayReduce } from '@vueuse/core'
34
+
35
+ const list = reactive([{ num: 1 }, { num: 2 }])
36
+ const sum = useArrayReduce(list, (sum, val) => sum + val.num, 0)
37
+ // sum.value: 3
38
+ ```
39
+
40
+ ## Type Declarations
41
+
42
+ ```ts
43
+ export type UseArrayReducer<PV, CV, R> = (
44
+ previousValue: PV,
45
+ currentValue: CV,
46
+ currentIndex: number,
47
+ ) => R
48
+ export type UseArrayReduceReturn<T = any> = ComputedRef<T>
49
+ /**
50
+ * Reactive `Array.reduce`
51
+ *
52
+ * @see https://vueuse.org/useArrayReduce
53
+ * @param list - the array was called upon.
54
+ * @param reducer - a "reducer" function.
55
+ *
56
+ * @returns the value that results from running the "reducer" callback function to completion over the entire array.
57
+ *
58
+ * @__NO_SIDE_EFFECTS__
59
+ */
60
+ export declare function useArrayReduce<T>(
61
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
62
+ reducer: UseArrayReducer<T, T, T>,
63
+ ): UseArrayReduceReturn<T>
64
+ /**
65
+ * Reactive `Array.reduce`
66
+ *
67
+ * @see https://vueuse.org/useArrayReduce
68
+ * @param list - the array was called upon.
69
+ * @param reducer - a "reducer" function.
70
+ * @param initialValue - a value to be initialized the first time when the callback is called.
71
+ *
72
+ * @returns the value that results from running the "reducer" callback function to completion over the entire array.
73
+ *
74
+ * @__NO_SIDE_EFFECTS__
75
+ */
76
+ export declare function useArrayReduce<T, U>(
77
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
78
+ reducer: UseArrayReducer<U, T, U>,
79
+ initialValue: MaybeRefOrGetter<U>,
80
+ ): UseArrayReduceReturn<U>
81
+ ```
@@ -0,0 +1,59 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArraySome
6
+
7
+ Reactive `Array.some`
8
+
9
+ ## Usage
10
+
11
+ ### Use with array of multiple refs
12
+
13
+ ```ts
14
+ import { useArraySome } from '@vueuse/core'
15
+
16
+ const item1 = ref(0)
17
+ const item2 = ref(2)
18
+ const item3 = ref(4)
19
+ const item4 = ref(6)
20
+ const item5 = ref(8)
21
+ const list = [item1, item2, item3, item4, item5]
22
+ const result = useArraySome(list, i => i > 10)
23
+ // result.value: false
24
+ item1.value = 11
25
+ // result.value: true
26
+ ```
27
+
28
+ ### Use with reactive array
29
+
30
+ ```ts
31
+ import { useArraySome } from '@vueuse/core'
32
+
33
+ const list = ref([0, 2, 4, 6, 8])
34
+ const result = useArraySome(list, i => i > 10)
35
+ // result.value: false
36
+ list.value.push(11)
37
+ // result.value: true
38
+ ```
39
+
40
+ ## Type Declarations
41
+
42
+ ```ts
43
+ export type UseArraySomeReturn = ComputedRef<boolean>
44
+ /**
45
+ * Reactive `Array.some`
46
+ *
47
+ * @see https://vueuse.org/useArraySome
48
+ * @param list - the array was called upon.
49
+ * @param fn - a function to test each element.
50
+ *
51
+ * @returns **true** if the `fn` function returns a **truthy** value for any element from the array. Otherwise, **false**.
52
+ *
53
+ * @__NO_SIDE_EFFECTS__
54
+ */
55
+ export declare function useArraySome<T>(
56
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
57
+ fn: (element: T, index: number, array: MaybeRefOrGetter<T>[]) => unknown,
58
+ ): UseArraySomeReturn
59
+ ```
@@ -0,0 +1,76 @@
1
+ ---
2
+ category: Array
3
+ ---
4
+
5
+ # useArrayUnique
6
+
7
+ reactive unique array
8
+
9
+ ## Usage
10
+
11
+ ### Use with array of multiple refs
12
+
13
+ ```ts
14
+ import { useArrayUnique } from '@vueuse/core'
15
+
16
+ const item1 = ref(0)
17
+ const item2 = ref(1)
18
+ const item3 = ref(1)
19
+ const item4 = ref(2)
20
+ const item5 = ref(3)
21
+ const list = [item1, item2, item3, item4, item5]
22
+ const result = useArrayUnique(list)
23
+ // result.value: [0, 1, 2, 3]
24
+ item5.value = 1
25
+ // result.value: [0, 1, 2]
26
+ ```
27
+
28
+ ### Use with reactive array
29
+
30
+ ```ts
31
+ import { useArrayUnique } from '@vueuse/core'
32
+
33
+ const list = reactive([1, 2, 2, 3])
34
+ const result = useArrayUnique(list)
35
+ // result.value: [1, 2, 3]
36
+
37
+ list.push(1)
38
+ // result.value: [1, 2, 3]
39
+ ```
40
+
41
+ ### Use with custom function
42
+
43
+ ```ts
44
+ import { useArrayUnique } from '@vueuse/core'
45
+
46
+ const list = reactive([
47
+ { id: 1, name: 'foo' },
48
+ { id: 2, name: 'bar' },
49
+ { id: 1, name: 'baz' },
50
+ ])
51
+
52
+ const result = useArrayUnique(list, (a, b) => a.id === b.id)
53
+ // result.value: [{ id: 1, name: 'foo' }, { id: 2, name: 'bar' }]
54
+
55
+ list.push({ id: 1, name: 'qux' })
56
+ // result.value: [{ id: 1, name: 'foo' }, { id: 2, name: 'bar' }]
57
+ ```
58
+
59
+ ## Type Declarations
60
+
61
+ ```ts
62
+ export type UseArrayUniqueReturn<T = any> = ComputedRef<T[]>
63
+ /**
64
+ * reactive unique array
65
+ * @see https://vueuse.org/useArrayUnique
66
+ * @param list - the array was called upon.
67
+ * @param compareFn
68
+ * @returns A computed ref that returns a unique array of items.
69
+ *
70
+ * @__NO_SIDE_EFFECTS__
71
+ */
72
+ export declare function useArrayUnique<T>(
73
+ list: MaybeRefOrGetter<MaybeRefOrGetter<T>[]>,
74
+ compareFn?: (a: T, b: T, array: T[]) => boolean,
75
+ ): UseArrayUniqueReturn<T>
76
+ ```