Andrea Fletcher
18c1d02d43
Add tag() action for CollectionService tags
...
Adds a built-in `vide.tag()` action that wraps `Instance:AddTag()` /
`Instance:RemoveTag()` so tags can be applied through `create()` props.
It accepts a static string or array of strings, or a reactive source
returning either. The reactive variant diffs the previous and new tag
sets so only the delta is applied. All tags added by the action are
removed when the surrounding scope is destroyed.
Includes mock support for `AddTag`/`RemoveTag`/`HasTag`/`GetTags`,
tests, API reference docs, and a closing note in the actions tutorial.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-26 22:10:47 -07:00
centauri
cf58410b89
Fix spring impulse control
2025-12-04 14:22:16 +00:00
centauri
ce24f8ade9
Cleanup scope functions
2025-09-01 21:59:35 +01:00
centauri
4b4db9602e
Implement delays for indexes() and values()
2025-08-31 20:37:46 +01:00
centauri
5262ef711c
Implement delays for show() and switch()
2025-08-29 17:44:02 +01:00
aaron
452ca383f7
Optimize indexes() and values()
2025-03-27 19:27:54 +00:00
EwDev
37e8e05206
Support nesting Parent ( #48 )
...
* allow nesting parent property
* update changelog
* fix mock instances Parent property not being a proxy
* add tests
Closes #47
2025-02-23 21:31:26 +00:00
aaron
b7878753bd
Update untrack() type to allow no return
2025-01-07 00:06:39 +00:00
aaron
a383c4ce69
Fix show() edge case
2025-01-06 23:56:49 +00:00
aaron
46a2043356
Ignore false passed as a child
2025-01-04 00:45:55 +00:00
aaron
c796e48173
Add source to show() callback
2025-01-04 00:40:51 +00:00
aaron
b44b9ef2ba
Add implicit effects recursively creating more implicit effects for children
2024-12-27 01:00:45 +00:00
aaron
4c639f8388
Add flag to disable deferral of nested properties
2024-12-26 22:36:58 +00:00
aaron
ccaeb030f3
Remove aggregate construction
2024-12-26 21:17:14 +00:00
aaron
e60aa57ca2
Fix edge case with map functions
2024-11-27 19:43:51 +00:00
11poe
44fe65ee5e
Add create(a, { props }) syntax ( #42 )
...
* Add new create syntax
* Add new create syntax to changelog
* Fix new create syntax test
2024-11-16 20:20:49 +00:00
aaron
fdb4a137a8
Fix test require
2024-11-16 18:41:27 +00:00
aaron
5abd5eee91
Update require paths to relative string
2024-11-13 22:19:20 +00:00
aaron
0897821e1f
Add check for destruction of active scope
2024-11-13 21:56:22 +00:00
aaron
6ead93088a
Make context functions return result
2024-10-09 02:12:25 +01:00
aaron
82eec61c45
Make root() return destructor automatically
2024-10-06 15:37:05 +01:00
aaron
8142acd1c1
Add context()
2024-10-06 15:20:04 +01:00
alicesaidhi
fbe2f01bb9
fix recursive queue flush ( #28 )
...
* fix recursive queue flush
* remove print from test
* swap order of flush
* simplified test case and remove error
* write more in-depth tests
* change approach flush_update_queue
* double diamond test case
* fix indent
* change naming of function
* subsequent updates do not batch test case
* simplify test case
2024-08-20 12:44:56 +01:00
alicesaidhi
b85419088c
allow fragments in implicit effects for children ( #29 )
...
* fix fragments in effects
* add test case
* more descriptive test
2024-08-20 12:40:29 +01:00
aaron
2dc2814d76
Fix regression with derived sources
2024-07-19 11:21:49 +01:00
aaron
7bae2517cd
Improve error reporting
2024-07-15 17:37:26 +01:00
aaron
f2de9b0e63
Refactor
2024-07-03 15:02:52 +01:00
Aaron Smith
c288cb92c4
Minor refactors
...
Also fixed potential bug with `create()` being called recursively if a
property binding passed as a property to `create()` also calls
`create()`
2023-11-20 16:53:30 +00:00
Aaron Smith
8eb5f96c5b
Fix recursive batch() use
2023-11-20 12:27:56 +00:00
Aaron Smith
65fe3fcf47
Fix some graph edge cases
2023-11-16 18:01:45 +00:00
Aaron Smith
ec998ccbc8
Implement batched updates
...
No docs yet, more testing needed.
2023-10-27 16:47:49 +01:00
Aaron Smith
7d82fe353e
Fix error in test
...
Also misc changes
2023-10-27 15:47:43 +01:00
aaron
aca08709b6
Update tests
2023-10-25 20:02:40 +01:00
Aaron Smith
15255855c3
Add repeated read test
2023-10-25 16:58:29 +01:00
Aaron Smith
8218e4702f
Fix diamond graphs
2023-10-25 15:49:35 +01:00
Aaron Smith
c03fb05779
Make changed() run initially
2023-09-28 16:46:32 +01:00
Aaron Smith
2ae65a0194
Update tests
...
Added a case to confirm the behavior of strict mode's double evaluation
and node cached values.
2023-09-27 10:24:14 +01:00
Aaron Smith
d07c705b64
Fix switch() not working in strict mode
...
Fixes #20
2023-09-27 10:02:09 +01:00
Aaron Smith
32fa44f4c5
Cleanup helper for instances
...
Closes #19
2023-09-26 14:34:27 +01:00
Aaron Smith
71bbaa2092
Update reactive scoping docs
2023-09-26 13:27:38 +01:00
aaron
c68d0a6c18
Allow creation of nested tracking scopes
...
It turns out that handling destruction of a nested tracking scope was
not as difficult as I thought and didn't need much changes
2023-09-25 23:37:51 +01:00
aaron
38342b3805
Disallow creation of nested tracking scopes
2023-09-25 11:44:24 +01:00
Aaron Smith
97096f8aff
Add tests for show() and read()
2023-09-20 18:42:02 +01:00
Aaron Smith
cc4b390d3d
Auto strict mode based on optimization level
2023-09-20 12:23:51 +01:00
Richard
a543a24865
Revert "Echo initial value if given a source"
...
This reverts commit 16e2983c54758cabfb1ddd102090f20083820d03.
2023-09-19 19:21:25 +01:00
Richard
109cca45f3
Echo initial value if given a source
2023-09-19 19:21:25 +01:00
Aaron Smith
d8a627c58a
Fix test type error
2023-09-19 17:37:42 +01:00
Aaron Smith
520b0cca32
Update indexes() test
2023-09-19 12:20:03 +01:00
Aaron Smith
250c13e7b8
Fix edge case bugs in reactive graph updates
2023-09-19 12:07:49 +01:00
aaron
c4a0180a2f
Improve error messages for derived sources
...
There seemed to be confusion over reactive-scoping (likely due to
incomplete docs), so I've added more explicit error messages when
deriving in non-reactive scopes to warn the user to use `root()` or
`mount()`.
2023-09-18 09:40:54 +01:00