Rich-Harris
5980f0752c
fix element spread SSR
7 years ago
Rich-Harris
60305dd31d
component spread SSR
7 years ago
Rich-Harris
36290cb6cd
component spread
7 years ago
Rich-Harris
0c62db5db9
prep for component spread
7 years ago
Rich-Harris
8e280c5b1f
minor tidy up
7 years ago
Rich-Harris
5a45b0e7b4
tidy up/notes to self
7 years ago
Rich-Harris
8813ee3b0f
SSR spread elements
7 years ago
Rich-Harris
f6dd6edc9d
fix CompileError constructor
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
6e5523cb89
Revert "fix handler in-place"
...
This reverts commit 6ebf46ad67
.
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
ekhaled
6ebf46ad67
fix handler in-place
7 years ago
Rich-Harris
50ed9252de
handle empty each blocks
7 years ago
Rich Harris
77aca3c69b
Merge pull request #1292 from sveltejs/gh-1291
...
allow keyed each block to have static content
7 years ago
Rich-Harris
6860d09c72
only delete applicable transition animations - fixes #1290
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
ekhaled
b8c0ab2949
support both destroy and teardown in custom event handlers
7 years ago
Rich-Harris
40cf29b2b7
basic attribute spreading on elements
7 years ago
Conduitry
c067bcb112
Merge pull request #1288 from sveltejs/ff-transition-bug
...
remove transition styles in Firefox
7 years ago
Rich-Harris
be678c680d
remove transition styles in Firefox
7 years ago
Rich-Harris
f6f8f66c90
remove some stuff we wont need
7 years ago
Josh Duff
864fd313bb
Accept backtick string literals in tag/props properties
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
416fc0c81b
include spread with other attributes
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
Rich Harris
48643ca3ea
Merge pull request #1280 from sveltejs/dynamic-component-mount-ref
...
when mounting dynamic components, set ref if required
7 years ago
Luke Edwards
688ecf754e
fix methods + prototype assignment
7 years ago
Luke Edwards
aa8f57d001
apply nested `assign` usage
7 years ago
Luke Edwards
c753396cab
update `util/assign` for 5x gain
7 years ago
Conduitry
6ff60db212
use addBlock instead of addLine
7 years ago
Conduitry
d3451a530f
when mounting dynamic components, set ref if required
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
d4dd015ffd
fix interfaces
7 years ago
Rich-Harris
61d3ab0215
Merge branch 'preserve-comments-option' of https://github.com/zzolo/svelte into zzolo-preserve-comments-option
7 years ago
Rich-Harris
99afa99565
simplify
7 years ago
Rich-Harris
105ab41d63
simplify a bit
7 years ago
Rich-Harris
0672e7bae9
remove unused argument
7 years ago
Rich-Harris
f4145099f4
remove linked list stuff
7 years ago
Rich-Harris
174975c93e
remove some unused stuff
7 years ago
Rich-Harris
fb84d729d8
tidy up
7 years ago
Rich-Harris
5f8f2139e0
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
Rich-Harris
5349184e75
more minor edits
7 years ago
Rich-Harris
2923e6a677
minor edits
7 years ago
Rich-Harris
5a7f7a00ec
reinstate previous code from before i ballsed it up
7 years ago
Alan Palazzolo
3c61655e93
Add option preserve comments in SSR rendering.
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
5b2e810fc2
Merge branch 'master' into gh-1254
7 years ago
Rich Harris
35a7fc6d32
Merge pull request #1256 from sveltejs/each-keyed-helper
...
[WIP] move keyed each diffing into a shared helper
7 years ago
Rich Harris
4b5d465a97
prevent name collisions with each block index - fixes #1254
7 years ago
Rich Harris
5b086df061
Merge pull request #1250 from UnwrittenFun/feat/warn-end-pos
...
Add end position to warnings and errors
7 years ago
Rich Harris
ffa45dd8be
tweaks
7 years ago
Rich Harris
a2d09c2136
simplify updateKeyedEach
7 years ago
Rich Harris
dab1f6a0fa
more keyed each diffing into a shared helper
7 years ago
James Birtles
40dccd2480
export stylesheet
7 years ago
James Birtles
4081a8a363
pass node through where possible
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
Rich Harris
86a151a7ea
Merge pull request #1243 from sveltejs/gh-1240
...
fix #1240
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
Andrew Shu
baff9bc6d1
DEBUG testing btakita EachBlock changes
7 years ago
mrkishi
0177418ce8
Remove spread attribute checks if unnecessary
7 years ago
mrkishi
9b80eee51a
Prioritize named over spread attributes
7 years ago
mrkishi
b5102f4f1b
Add spread -- rough idea
7 years ago
James Birtles
da6a74016f
add end position to errors
7 years ago
James Birtles
d07721cd50
add end position to warnings
7 years ago
Rich Harris
7c25eb32fa
skip missing property warning for computed/global properties
7 years ago
Rich Harris
f2ab5545dc
tidy up
7 years ago
Rich Harris
ce607d5ab3
add local variable for list values - fixes #1240
7 years ago
Rich Harris
39694c31c3
nicer error messages
7 years ago
Rich Harris
f97036dd39
error if ref:foo has a value
7 years ago
Rich Harris
bd74929920
dont treat :foo as a directive
7 years ago
Rich Harris
12c7d1c86d
flawed solution to #1240
7 years ago
Rich Harris
6f866bbb4c
Merge pull request #1242 from jacwright/directive-parsing-cleanup
...
Refactor directive parsing for code reuse
7 years ago
Jacob Wright
6d4f8d889a
Refactor directive parsing for code reuse
...
This removes the copy-pasta for directive parsing and removes the need for special if-else cases for each directive.
7 years ago
Rich Harris
26239463c5
Merge pull request #1237 from sveltejs/gh-1209
...
use setAttribute with inputs, for benefit of IE - fixes #1209
7 years ago
Rich Harris
d893eef513
Merge pull request #1239 from sveltejs/gh-1221
...
scale transition duration by delta
7 years ago
Rich Harris
140e2271f7
scale transition duration by delta - fixes #1221
7 years ago
Rich Harris
4e99eb8d37
use setAttribute with inputs, for benefit of IE - fixes #1209
7 years ago
Rich Harris
01f6f9fa4d
alias listName to deconflict with shared helpers - fixes #1229
7 years ago
Rich Harris
b35aab3736
only apply stylesheet once
7 years ago
Conduitry
92452ef356
separate AST modification into Stylesheet#reify
7 years ago
Conduitry
e4032ea543
apply CSS scoping classes directly to AST (WIP)
7 years ago
Rich Harris
eae98f952d
add CSS scoping classes when stringifying child nodes - fixes #1223
7 years ago
Rich Harris
6131963551
use setAttribute for any namespaced element
7 years ago
Rich Harris
9037e93934
set arbitrary compile options when calling SSR register function
7 years ago
Rich Harris
b763714222
allow SVG elements to have scoped CSS - fixes #1224
7 years ago
Rich Harris
ddd67dd844
add each_value to contextProps - fixes #1206
7 years ago
Rich Harris
3f7f237a9a
switch back to using svelte- instead of name-
7 years ago
Rich Harris
428784d570
Merge branch 'gh-1118' into gh-1118-base36
7 years ago
Rich Harris
2f01115a41
merge master -> gh-1118
7 years ago
Rich Harris
0c66e9e2f7
merge
7 years ago
Rich Harris
91a04cfb88
Merge pull request #1200 from leereamsnyder/process-atsupports
...
process code in @supports queries with cascade: false
7 years ago
Rich Harris
fad5ccdf59
prevent context variables being called component or state - fixes #1213
7 years ago
ekhaled
6b886d628c
move `|| null`
7 years ago
ekhaled
e2d50617c2
fixes #1188 , fixes #1201
7 years ago
Rich Harris
7b4c486be9
only apply key to keyed each block, not its children - fixes #1202
7 years ago
Lee Reamsnyder
cbdbff54bf
process code in @supports queries with cascade: false
...
with the cascade: false compiler option, CSS in @supports blocks was getting removed
7 years ago
Conduitry
2e2ae8fdc9
unhoist select_block_type function for now ( resolves #1195 )
7 years ago
Rich Harris
f8d6d99930
implement remount on individual nodes
7 years ago
Rich Harris
7638964fc0
use else instead of if (!previousCondition) where possible
7 years ago
Rich Harris
da155878a8
refactor IfBlock slightly
7 years ago
Rich Harris
c6bba03f1d
use external is-reference library
7 years ago
Rich Harris
1bc675da50
fix a couple of TODOs
7 years ago
Rich Harris
e95a0b60a9
Merge branch 'master' into gh-1175
7 years ago
Rich Harris
a5cc451c9c
only use page[XY]Offset
7 years ago
Rich Harris
1ad28e6fe6
use base36 for style classes
7 years ago
Rich Harris
cbd1a11548
use classes instead of attributes - fixes #1118
7 years ago
Rich Harris
e6c1cdf25b
generate a class selector instead of an attribute selector
7 years ago
Rich Harris
0131216a1a
Merge branch 'master' into gh-1144
7 years ago
Rich Harris
cb8071acd4
allow observing $foo in dev mode - #1181
7 years ago
Rich Harris
c2bb549901
wrap <slot> updates in conditional - fixes #1144
7 years ago
Rich Harris
805c72fefc
Merge pull request #1173 from sveltejs/gh-1122
...
[WIP] Simplify everything
7 years ago
Rich Harris
4ccc2ade2f
Merge pull request #1169 from sveltejs/gh-1166
...
use ["default"] instead of .default in legacy mode
7 years ago
Rich Harris
c62bc6c9b8
Merge branch 'master' into gh-1122
7 years ago
Rich Harris
72a65c48da
Merge pull request #1179 from sveltejs/fix-capitalize-warning
...
fix capitalize warning
7 years ago
Conduitry
8c1f09db1f
upgrade acorn and parse as ES2018
7 years ago
Rich Harris
6e31efce11
fix capitalize warning
7 years ago
Robert Hall
836cc36598
Using pageYOffset & pageXOffset
7 years ago
Rich Harris
d162ce9968
Merge branch 'master' into gh-1122
7 years ago
Rich Harris
1b599bd57b
put _differs on prototype, remove runtime option
7 years ago
Rich Harris
81b12e030e
Merge branch 'immutable-support' of https://github.com/jacwright/svelte into jacwright-immutable-support
7 years ago
Rich Harris
9dcf59868d
revert to component.get() in _bind
7 years ago
Rich Harris
ec488fe347
dont create context for pending block
7 years ago
Rich Harris
27f6d560b5
remove some unused code etc
7 years ago
Rich Harris
7baba8bf8c
all tests passing
7 years ago
Rich Harris
71f2c350ec
remove _context stuff
7 years ago
Rich Harris
b94f63ed70
everything working except some destructuring stuff
7 years ago
Rich Harris
242f08e328
temporary hack around context issue
7 years ago
Rich Harris
dd5e0f7358
Merge branch 'master' into gh-1122
7 years ago
Rich Harris
b3049a6fa0
Merge pull request #1158 from sveltejs/gh-1156
...
[WIP] Error on unclosed comments and blocks with no content
7 years ago
Rich Harris
fcae19b5d8
fix
7 years ago
Rich Harris
c3a08788e6
get destructuring working
7 years ago
Rich Harris
a0aeb98685
various fixes
7 years ago
Rich Harris
0b39cafc67
start implementing context
7 years ago
Jacob Wright
405c4f6371
Adding compiler option for immutable back in
...
This will keep existing code smaller and _mostly_ only add size when using the `immutable` compiler option.
7 years ago
Rich Harris
bc6ee3ef9f
increase test coverage, handle immediately-closed blocks
7 years ago
Rich Harris
72776b0b2a
fix store bindings
7 years ago
Rich Harris
b3382aa7a3
combine component binding init/update
7 years ago
Rich Harris
a16c775690
remove some more junk
7 years ago
Jacob Wright
9e877d9da1
Makes immutable a component option rather than a compile option
...
This allows components to opt in (or out) of using immutable data checking for greater flexibility in app design. It also removes the compiler option.
7 years ago
Rich Harris
4b8eb251c7
tidy up
7 years ago
Jacob Wright
9a1d87494d
Removes date checks and simplifies NaN checks, adds tests
7 years ago
Rich Harris
38bf5b1d3f
use ["default"] instead of .default in legacy mode - fixes #1166
7 years ago
Rich Harris
ff67b137c4
empty blocks are a dev warning, not an error
7 years ago
Rich Harris
d6dc60285e
Merge branch 'master' into gh-1117
7 years ago
Rich Harris
e5e6959281
Merge pull request #1153 from sveltejs/gh-1100
...
component store bindings
7 years ago
Rich Harris
41a2592708
Merge pull request #1165 from sveltejs/sigil-component-attribute-ssr
...
SSR: more sigil and template string escaping fixes
7 years ago
Rich Harris
25b1f05ee8
Merge pull request #1154 from sveltejs/gh-1065
...
prevent erroneous missing data warnings for custom elements
7 years ago
Conduitry
7b282e58a0
Merge branch 'master' into sigil-component-attribute-ssr
7 years ago
Conduitry
f606aee209
do not escape html characters in tags in non-root <style> in SSR mode
7 years ago
Rich Harris
a33dfe5bf3
Merge pull request #1160 from sveltejs/gh-1108
...
remove <noscript> elements in DOM mode (#1108 )
7 years ago
Conduitry
205bb37d2d
fix escaping of template string characters
7 years ago
Conduitry
132901bbe7
fix escaping of sigils in component attribute values in SSR
7 years ago
Jacob Wright
d2f8e472a5
Add support to computed and store for immutable structures
...
Adds optional performance support for apps using an immutable data structure such as redux. Adds the `immutable` boolean option for compile and an `immutable` option to store as well. When these options are used, computed will not recompute if the object has not changed. If your data structure is not immutable you should not use this as svelte cannot know if a mutation was made on objects.
This PR also adds support for Dates and NaN values so computed properties will not recompute if a date has not changed or a value did not change from NaN.
This closes out these issues:
* https://github.com/sveltejs/svelte/issues/1146
* https://github.com/sveltejs/svelte/issues/1161
This is my first PR for Svelte. Any feedback would be appreciated!
7 years ago
Conduitry
7d51484631
simplify toHTML by relying on node.parent
7 years ago
Conduitry
5d0f44ef41
rework handling of non-root <script> and <style>
7 years ago
Conduitry
50d95e1642
remove <noscript> elements in DOM mode ( #1108 )
7 years ago
Rich Harris
a4d08c205a
error on unclosed comments and blocks with only whitespace
7 years ago
Rich Harris
0ef8229077
Merge pull request #1155 from sveltejs/ssr-escape-attribute-values
...
escape attribute values in SSR
7 years ago
Rich Harris
5b9f254087
Merge pull request #1149 from sveltejs/gh-1138
...
remove empty style blocks in prod mode
7 years ago
Conduitry
c481c8d2b3
escape attribute values in SSR
7 years ago
Rich Harris
9dda4b0563
prevent erroneous missing data warnings for custom elements - fixes #1065
7 years ago
Rich Harris
99fbb69c74
component store bindings - fixes #1100
7 years ago
Rich Harris
009c082d23
in custom elements, call oncreate in connectedCallback - fixes #1117
7 years ago
Rich Harris
bf25248f9e
prevent await blocks using stale state - fixes #1131
7 years ago
Rich Harris
cfd43f4fa7
remove empty style blocks in prod mode - fixes #1138
7 years ago
Rich Harris
ca779a452d
Merge pull request #1145 from jacobmischka/fix-destructured-hoisting
...
Add destructured context container to usedContexts
7 years ago
Jacob Mischka
b5a3e2224d
Add audio video volume binding ( #1148 )
...
* Add audio/video volume binding
Fixes #1143
* Update test and add volumechange event
* Set volume on initial update
* Update test after setting volume initially
Oops.
7 years ago
Jacob Mischka
2635de84a8
Further improve a block with useless variables
7 years ago
Jacob Mischka
31de60ece6
Add destructured context container to usedContexts
...
Fixes #1139
7 years ago
Rich Harris
3cd9779b37
Merge pull request #1137 from sveltejs/gh-1135
...
Fix order of `oncreate` in sibling components
7 years ago
Rich Harris
935d4a2955
Merge pull request #1134 from sveltejs/gh-1132
...
fix handling of CRs in debugging comments (#1132 )
7 years ago
Rich Harris
6f5b6ddda9
Merge branch 'master' into gh-1135
7 years ago
Rich Harris
1bb275bc55
Merge branch 'master' into gh-1132
7 years ago
Rich Harris
c3bec8f632
Merge branch 'master' into gh-1062-again
7 years ago
Rich Harris
5e41ecb34a
run oncreate functions in sensible order ( #1135 )
7 years ago
Conduitry
7fa293ee6b
fix handling of CRs in debugging comments ( #1132 )
7 years ago
Conduitry
94da329305
another stab at #1062 ; also fix attribute case in static HTML
7 years ago
Nolan Lawson
0a0b8bf7cb
Add "feed" aria role
...
This role is defined in https://www.w3.org/TR/wai-aria-practices-1.1/#feed
7 years ago
Conduitry
57b737b3bc
fix handling of boolean attributes in SSR ( #1109 )
7 years ago
Rich Harris
9fbcddf338
base stylesheet.hash on css content, and revert parsed.hash
7 years ago
Rich Harris
df5a32a577
Merge branch 'issue-1091' of https://github.com/emilos/svelte into emilos-issue-1091
7 years ago
Rich Harris
d0be845190
Merge pull request #1106 from sveltejs/gh-1083
...
Enforce valid names for computed properties
7 years ago
Rich Harris
a85b09ea97
handle wacky identifier names in templates
7 years ago
Rich Harris
66b64e254d
types
7 years ago
Rich Harris
24ea1afe78
Merge pull request #1112 from sveltejs/gh-1110
...
do not run a11y validation on child component elements
7 years ago
James Birtles
b180f8a67b
create store in _render, fixes #1107
7 years ago
Conduitry
49135161bc
do not run a11y validation on child component elements ( #1110 )
7 years ago
Rich Harris
1833bc194f
use acorn.isIdentifierStart and isIdentifierChar to determine validity
7 years ago
Rich Harris
cfdc8902ab
run prettier (spaces -> tabs)
7 years ago
Rich Harris
25a18ab495
Merge branch 'master' of https://github.com/asweingarten/svelte into asweingarten-master
7 years ago
Rich Harris
8057884cb6
Merge pull request #1097 from sveltejs/gh-1082-b
...
fix escaping of sigils in SSR non-top-level <script> and <style>
7 years ago
Rich Harris
49bc092db6
Merge pull request #1094 from sveltejs/gh-1061-b
...
fire oncreate handlers for components inside await blocks
7 years ago