Rich Harris
e8a780676d
Abort outro if block is recreated — fixes #1425
7 years ago
Rich Harris
e1db82773d
Group outro callbacks — fixes #648
7 years ago
Conduitry
b45b264b72
fix handling of shorthand event handler in dynamic components
7 years ago
Rich Harris
103f278cfc
update tests
7 years ago
Rich Harris
08480b7022
ugh
7 years ago
Rich Harris
c355b02b8c
support transitions in await blocks - fixes #956
7 years ago
Rich Harris
d8d9c58c63
Merge branch 'await-helper' into gh-956
7 years ago
Rich Harris
8d772b163b
fix #1417
7 years ago
Rich Harris
6437d7bfa7
failing test for #1417
7 years ago
Rich Harris
f65d56b027
failing test for #956
7 years ago
Rich Harris
2aea2ea842
failing test for #1413
7 years ago
Rich Harris
bea1265cae
Merge pull request #1395 from sveltejs/gh-1327
...
Update store state when new computed properties are added
7 years ago
Conduitry
aba5929697
mark elements with refs as ineligible for innerhtml ( #1407 )
7 years ago
Rich Harris
c8d55aa90a
update state with new computed properties
7 years ago
Rich Harris
ba7fc6b580
Merge branch 'master' into gh-1327
7 years ago
Rich Harris
7f58701085
evaluate each block key in child scope - fixes #1397
7 years ago
Rich Harris
9ac0c40d65
failing test for #1327
7 years ago
Rich Harris
49a09ef847
only overwrite this in event handlers for custom events - fixes #1390
7 years ago
Rich Harris
70034ea997
bind to destructured properties
7 years ago
Rich Harris
9607593705
sparse array patterns
7 years ago
Rich Harris
506ab3952e
destructuring
7 years ago
Rich Harris
8dc17b77db
allow arbitrary expressions in each block keys - fixes #703
7 years ago
Rich Harris
bf58a20909
Merge pull request #1376 from sveltejs/gh-1297
...
overwrite this in custom event handlers
7 years ago
Rich Harris
ddf2d9dbcf
Merge pull request #1377 from sveltejs/gh-1303
...
implement full-state computed properties
7 years ago
Rich Harris
5fd4965b64
preserve outer context for await blocks - fixes #1251
7 years ago
Rich Harris
0dafc34de0
implement full-state computed properties - fixes #1303
7 years ago
Rich Harris
1fb4041519
overwrite this in custom event handlers - fixes #1297
7 years ago
Rich Harris
32774a821d
more stuff
7 years ago
Rich Harris
9ff1beec48
WIP
7 years ago
Rich Harris
d3afc4c0f3
baby steps towards #1316
7 years ago
Rich Harris
6534fef37d
Merge pull request #1364 from sveltejs/gh-1356
...
Report initial `changed` based on state, not expected properties
7 years ago
Rich Harris
4734382e69
Merge pull request #1365 from sveltejs/gh-1354
...
set state to blank object on destroy, not null
7 years ago
Rich Harris
35a5d8f537
prevent stale state in component event handlers - fixes #1353
7 years ago
Rich Harris
f8b076b2f3
set state to blank object on destroy, not null - fixes #1354
7 years ago
Rich Harris
991bd9dce8
correctly report changed properties in initial state/update events - fixes #1356
7 years ago
pk
00fb978924
Failing test for #1356
7 years ago
Rich Harris
0dd7bf047f
Merge pull request #1358 from sveltejs/gh-1038
...
Add support for shorthand imports of components
7 years ago
Conduitry
f90091bb58
add test
7 years ago
Rich Harris
a0404f7331
update spread props in each blocks without other dynamic attributes - fixes #1337
7 years ago
Rich Harris
aaab6853ce
support $method(...) calls, and warn on store.method(...)
7 years ago
Rich Harris
d2a5b366d8
remove redundant test
7 years ago
Rich Harris
dadf21c6b7
skip test, fix post-v2
7 years ago
Rich Harris
73e83e5571
tidy up
7 years ago
Rich Harris
87a8e37150
remove cascade option
7 years ago
Rich Harris
4b3da75480
remove v1 runtime tests
7 years ago
Rich Harris
4fe8d95a6d
dont typecast numeric attributes
7 years ago
Rich Harris
2f86bd339d
update tests to account for removal of observe
7 years ago
Rich Harris
daa2635cd3
update snapshot tests
7 years ago
Rich Harris
34d2fbfa58
remove ES5 constraint
7 years ago
Rich Harris
6249fa6bc8
Merge pull request #1345 from sveltejs/gh-1069
...
use destructuring syntax for computed props in v2 mode - fixes #1069
7 years ago
Rich Harris
99ea7539af
use destructuring syntax for computed props in v2 mode - fixes #1069
7 years ago
Rich Harris
c1573dbf2c
implement onstate and onupdate
7 years ago
Rich Harris
33afb7e49a
add some onstate/onupdate tests
7 years ago
Conduitry
bed13d2147
in v2, don't parse for interpolations in non-root style elements ( #1339 )
7 years ago
Rich Harris
2b3fe0edc1
attribute shorthand test
7 years ago
Rich Harris
7576d7dc93
update keyed each block syntax
7 years ago
Rich Harris
9bba8d18d1
implement dynamic components etc
7 years ago
Rich Harris
07a53e55de
Merge pull request #1311 from sveltejs/gh-1278
...
treat component events the same as element events
7 years ago
Rich Harris
4a6807eab1
Merge pull request #1312 from sveltejs/gh-1275
...
deconflict against inherited contexts
7 years ago
Rich-Harris
6ef808c941
support custom events on <:Window> - fixes #1268
7 years ago
Rich-Harris
34bedcc299
deconflict against inherited contexts - fixes #1275
7 years ago
Rich-Harris
029e952171
treat component events the same as element events - fixes #1278
7 years ago
Rich-Harris
dd247447c0
ensure correct order of DOM insertions with neighbouring keyed each blocks - fixes #1306
7 years ago
Rich-Harris
ee7f6769c4
spread on dynamic component - fixes #1307
7 years ago
Rich Harris
f27b29d5cb
Merge pull request #1289 from sveltejs/gh-195
...
Multi-spread
7 years ago
Rich-Harris
7c47cc19f7
handle boolean attributes
7 years ago
Rich-Harris
5980f0752c
fix element spread SSR
7 years ago
Rich-Harris
5a45b0e7b4
tidy up/notes to self
7 years ago
Rich Harris
47da7d1ed6
Merge pull request #1295 from sveltejs/each-block-keyed-empty
...
handle empty each blocks
7 years ago
Rich-Harris
e585ccf242
Merge branch 'custom-event-teardown' of https://github.com/ekhaled/svelte into ekhaled-custom-event-teardown
7 years ago
Rich-Harris
50ed9252de
handle empty each blocks
7 years ago
Rich-Harris
01a10d9511
argh, need a precommit check for this
7 years ago
Rich-Harris
2c670a43ac
allow keyed each block to have static content - fixes #1291
7 years ago
ekhaled
298a339df9
add dev mode warning when teardown is returned instead of destroy
7 years ago
Rich-Harris
40cf29b2b7
basic attribute spreading on elements
7 years ago
Josh Duff
e81fb88f41
Fix backtick string literals not being recognized for the svg property
...
Failing test for #1284
Fixes #1284
7 years ago
Rich-Harris
3f32be8c04
Merge branch 'master' into mrkishi-spread
7 years ago
Conduitry
7b6f206003
fix assembly of initial state object
7 years ago
Rich-Harris
d0c696bb2b
merge master -> mrkishi-spreadh
7 years ago
Rich Harris
c9435fc87f
Merge pull request #1279 from jacwright/action-this
...
Make actions execute with the component context
7 years ago
Conduitry
d3451a530f
when mounting dynamic components, set ref if required
7 years ago
Jacob Wright
297ee65737
Make tests work when running all of them together.
...
They were only passing when running just the runtime tests, but failing with `<button>undefined</button>` when running all the tests.
7 years ago
Jacob Wright
9b0a884035
Make actions execute with the component context
7 years ago
Rich Harris
e77988b195
Merge pull request #1247 from jacwright/behaviors
...
Adds actions to components
7 years ago
Rich-Harris
fb84d729d8
tidy up
7 years ago
Rich-Harris
4b2a01f2e9
all tests passing
7 years ago
Rich-Harris
a3e91eb267
holy shit i think i did it
7 years ago
Rich-Harris
7c953a6622
am close...
7 years ago
Jacob Wright
04f5d5c975
Adds actions to components
...
Actions add additional functionality to elements within your component's template that may be difficult to add with other mechanisms. Examples of functionality which actions makes trivial to attach are:
* tooltips
* image lazy loaders
* drag and drop functionality
Actions can be added to an element with the `use` directive.
```html
<img use:lazyload data-src="giant-photo.jpg>
```
Data may be passed to the action as an object literal (e.g. `use:b="{ setting: true }"`, a literal value (e.g. `use:b="'a string'"`), or a value or function from your component's state (e.g. `add:b="foo"` or `add:b="foo()"`).
Actions are defined in a "actions" property on your component definition.
```html
<script>
export default {
actions: {
b(node, data) {
// do something
return {
update(data) {},
destroy() {}
}
}
}
}
</script>
```
A action is a function which receives a reference to an element and optionally the data if it is added in the HTML. This function can then attach listeners or alter the element as needed. The action can optionally return an object with the methods `update(data)` and `destroy()`.
When data is added in the HTML and comes from state, the action's `update(data)` will be called if defined whenever the state is changed.
When the element is removed from the DOM `destroy()` will be called if provided, allowing for cleanup of event listeners, etc.
See https://github.com/sveltejs/svelte/issues/469 for discussion around this feature and more examples of how it could be used.
7 years ago
Rich Harris
4b5d465a97
prevent name collisions with each block index - fixes #1254
7 years ago
Rich Harris
4cb8effccd
failing test for #1254
7 years ago
Rich Harris
a2d09c2136
simplify updateKeyedEach
7 years ago
Rich Harris
10600eb776
Merge pull request #1249 from btakita/issues/588
...
Speed up keyed swap rows benchmark by moving existing DOM elements instead of creating new elements
7 years ago
Brian Takita
66e4df11a7
Implement https://github.com/sveltejs/svelte/issues/588
...
* Performance Improvement with Keyed EachBlock
* All DOM nodes for existing data are reused between changes to state
* Speed up Keyed Swap Rows Benchmark
* https://github.com/krausest/js-framework-benchmark
* Fixed Build
* Introduced jsdom.VirtualConsole
7 years ago
mrkishi
9b80eee51a
Prioritize named over spread attributes
7 years ago
mrkishi
b5102f4f1b
Add spread -- rough idea
7 years ago
Rich Harris
6f65554c93
failing test for #1240
7 years ago
Rich Harris
38b34bbe1d
reenable all tests
7 years ago
Rich Harris
140e2271f7
scale transition duration by delta - fixes #1221
7 years ago
Rich Harris
b763714222
allow SVG elements to have scoped CSS - fixes #1224
7 years ago