Create new
Bindings
Transitions
Animations
Easing
Component composition
Context API
Special elements
Module context
Debugging
Miscellaneous
App.svelte
PomodoroTimer.svelte
TaskList.svelte
ArrayExtensions.js
Task.js
tasksStore.js
runes
This component is not in runes mode.
To enable runes mode, either start using runes in your code, or add the following to the top of your component:
<svelte:options runes />
999
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
›
⌄
⌄
⌄
⌄
⌄
⌄
⌄
⌄
<script>
let title = "il Pomodoro";
import TaskList from './TaskList.svelte';
import PomodoroTimer from './PomodoroTimer.svelte';
</script>
<main>
<h1>{title}</h1>
<PomodoroTimer/>
<TaskList/>
</main>
<style>
main {
text-align: center;
padding: 1em;
max-width: 240px;
margin: 0 auto;
}
h1 {
color: var(--accent);
text-transform: uppercase;
font-size: 6em;
margin: 0;
font-weight: 100;
}
@media (min-width: 640px) {
main {
max-width: none;
}
}
/* global.css simulated here */
:global(:root) {
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
›
⌄
import 'svelte/internal/disclose-version';
import 'svelte/internal/flags/legacy';
import * as $ from 'svelte/internal/client';
import TaskList from './TaskList.svelte';
import PomodoroTimer from './PomodoroTimer.svelte';
var root = $.template(`<main class="svelte-1tditx8"><h1 class="svelte-1tditx8"></h1> <!> <!></main>`);
export default function App($$anchor) {
let title = "il Pomodoro";
var main = root();
var h1 = $.child(main);
h1.textContent = title;
var node = $.sibling(h1, 2);
PomodoroTimer(node, {});
var node_1 = $.sibling(node, 2);
TaskList(node_1, {});
$.reset(main);
$.append($$anchor, main);
}
result = svelte.compile(source, {
generate: ,
});999
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
›
main.svelte-1tditx8 {
text-align: center;
padding: 1em;
max-width: 240px;
margin: 0 auto;
}
h1.svelte-1tditx8 {
color: var(--accent);
text-transform: uppercase;
font-size: 6em;
margin: 0;
font-weight: 100;
}
@media (min-width: 640px) {
main.svelte-1tditx8 {
max-width: none;
}
}
/* global.css simulated here */
:root {
--black: #333;
--base: white;
--base-light: #f4f4f4;
--base-dark: #ddd;
--white: white;
--accent: orangered;
--accent-light: #ff4500d6;
--accent-dark: #e83f00;
}
html, body {
Root {
css: StyleSheet {...}
- type: "StyleSheet"
- start: 215
- end: 2343
- attributes: []
children: [...] (17)
Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 225
- end: 229
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 225
- end: 229
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "main"
- start: 225
- end: 229
}
]- start: 225
- end: 229
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 230
- end: 319
children: [...] (4)
Declaration {...}
- type: "Declaration"
- start: 236
- end: 254
- property: "text-align"
- value: "center"
} Declaration {...}
- type: "Declaration"
- start: 260
- end: 272
- property: "padding"
- value: "1em"
} Declaration {...}
- type: "Declaration"
- start: 278
- end: 294
- property: "max-width"
- value: "240px"
} Declaration {...}
- type: "Declaration"
- start: 300
- end: 314
- property: "margin"
- value: "0 auto"
}
]
}- start: 225
- end: 319
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 323
- end: 325
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 323
- end: 325
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "h1"
- start: 323
- end: 325
}
]- start: 323
- end: 325
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 326
- end: 445
children: [...] (5)
Declaration {...}
- type: "Declaration"
- start: 332
- end: 352
- property: "color"
- value: "var(--accent)"
} Declaration {...}
- type: "Declaration"
- start: 358
- end: 383
- property: "text-transform"
- value: "uppercase"
} Declaration {...}
- type: "Declaration"
- start: 389
- end: 403
- property: "font-size"
- value: "6em"
} Declaration {...}
- type: "Declaration"
- start: 409
- end: 418
- property: "margin"
- value: "0"
} Declaration {...}
- type: "Declaration"
- start: 424
- end: 440
- property: "font-weight"
- value: "100"
}
]
}- start: 323
- end: 445
} Atrule {...}
- type: "Atrule"
- start: 449
- end: 520
- name: "media"
- prelude: "(min-width: 640px)"
block: Block {...}
- type: "Block"
- start: 475
- end: 520
children: [...] (1)
Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 481
- end: 485
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 481
- end: 485
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "main"
- start: 481
- end: 485
}
]- start: 481
- end: 485
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 486
- end: 516
children: [...] (1)
Declaration {...}
- type: "Declaration"
- start: 494
- end: 509
- property: "max-width"
- value: "none"
}
]
}- start: 481
- end: 516
}
]
}
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 555
- end: 569
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 555
- end: 569
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 563
- end: 568
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 563
- end: 568
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "root"
- args: null
- start: 563
- end: 568
}
]- start: 563
- end: 568
}
]
}
]
}- start: 555
- end: 569
}
]- start: 555
- end: 569
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 570
- end: 742
children: [...] (8)
Declaration {...}
- type: "Declaration"
- start: 573
- end: 586
- property: "--black"
- value: "#333"
} Declaration {...}
- type: "Declaration"
- start: 589
- end: 602
- property: "--base"
- value: "white"
} Declaration {...}
- type: "Declaration"
- start: 605
- end: 626
- property: "--base-light"
- value: "#f4f4f4"
} Declaration {...}
- type: "Declaration"
- start: 629
- end: 646
- property: "--base-dark"
- value: "#ddd"
} Declaration {...}
- type: "Declaration"
- start: 650
- end: 664
- property: "--white"
- value: "white"
} Declaration {...}
- type: "Declaration"
- start: 667
- end: 686
- property: "--accent"
- value: "orangered"
} Declaration {...}
- type: "Declaration"
- start: 689
- end: 714
- property: "--accent-light"
- value: "#ff4500d6"
} Declaration {...}
- type: "Declaration"
- start: 717
- end: 739
- property: "--accent-dark"
- value: "#e83f00"
}
]
}- start: 555
- end: 742
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 744
- end: 763
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 744
- end: 763
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 752
- end: 762
children: [...] (2)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 752
- end: 756
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "html"
- start: 752
- end: 756
}
]- start: 752
- end: 756
}
]
} ComplexSelector {...}
- type: "ComplexSelector"
- start: 758
- end: 762
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "body"
- start: 758
- end: 762
}
]- start: 758
- end: 762
}
]
}
]
}- start: 744
- end: 763
}
]- start: 744
- end: 763
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 764
- end: 820
children: [...] (3)
Declaration {...}
- type: "Declaration"
- start: 768
- end: 786
- property: "position"
- value: "relative"
} Declaration {...}
- type: "Declaration"
- start: 790
- end: 801
- property: "width"
- value: "100%"
} Declaration {...}
- type: "Declaration"
- start: 805
- end: 817
- property: "height"
- value: "100%"
}
]
}- start: 744
- end: 820
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 822
- end: 835
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 822
- end: 835
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 830
- end: 834
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 830
- end: 834
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "body"
- start: 830
- end: 834
}
]- start: 830
- end: 834
}
]
}
]
}- start: 822
- end: 835
}
]- start: 822
- end: 835
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 836
- end: 1069
children: [...] (6)
Declaration {...}
- type: "Declaration"
- start: 840
- end: 859
- property: "color"
- value: "var(--black)"
} Declaration {...}
- type: "Declaration"
- start: 863
- end: 872
- property: "margin"
- value: "0"
} Declaration {...}
- type: "Declaration"
- start: 876
- end: 888
- property: "padding"
- value: "8px"
} Declaration {...}
- type: "Declaration"
- start: 892
- end: 914
- property: "box-sizing"
- value: "border-box"
} Declaration {...}
- type: "Declaration"
- start: 918
- end: 1046
- property: "font-family"
- value: "-apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif"
} Declaration {...}
- type: "Declaration"
- start: 1050
- end: 1066
- property: "font-weight"
- value: "300"
}
]
}- start: 822
- end: 1069
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1071
- end: 1081
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1071
- end: 1081
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1079
- end: 1080
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1079
- end: 1080
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "a"
- start: 1079
- end: 1080
}
]- start: 1079
- end: 1080
}
]
}
]
}- start: 1071
- end: 1081
}
]- start: 1071
- end: 1081
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1082
- end: 1135
children: [...] (2)
Declaration {...}
- type: "Declaration"
- start: 1086
- end: 1107
- property: "color"
- value: "rgb(0,100,200)"
} Declaration {...}
- type: "Declaration"
- start: 1111
- end: 1132
- property: "text-decoration"
- value: "none"
}
]
}- start: 1071
- end: 1135
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1137
- end: 1177
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1137
- end: 1177
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1145
- end: 1176
children: [...] (4)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1145
- end: 1150
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "input"
- start: 1145
- end: 1150
}
]- start: 1145
- end: 1150
}
]
} ComplexSelector {...}
- type: "ComplexSelector"
- start: 1152
- end: 1158
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 1152
- end: 1158
}
]- start: 1152
- end: 1158
}
]
} ComplexSelector {...}
- type: "ComplexSelector"
- start: 1160
- end: 1166
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "select"
- start: 1160
- end: 1166
}
]- start: 1160
- end: 1166
}
]
} ComplexSelector {...}
- type: "ComplexSelector"
- start: 1168
- end: 1176
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "textarea"
- start: 1168
- end: 1176
}
]- start: 1168
- end: 1176
}
]
}
]
}- start: 1137
- end: 1177
}
]- start: 1137
- end: 1177
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1178
- end: 1364
children: [...] (8)
Declaration {...}
- type: "Declaration"
- start: 1182
- end: 1202
- property: "font-family"
- value: "inherit"
} Declaration {...}
- type: "Declaration"
- start: 1206
- end: 1222
- property: "font-size"
- value: "1.5em"
} Declaration {...}
- type: "Declaration"
- start: 1226
- end: 1246
- property: "font-weight"
- value: "inherit"
} Declaration {...}
- type: "Declaration"
- start: 1250
- end: 1264
- property: "padding"
- value: "0.4em"
} Declaration {...}
- type: "Declaration"
- start: 1268
- end: 1287
- property: "margin"
- value: "0 0 0.5em 0"
} Declaration {...}
- type: "Declaration"
- start: 1291
- end: 1313
- property: "box-sizing"
- value: "border-box"
} Declaration {...}
- type: "Declaration"
- start: 1317
- end: 1339
- property: "border"
- value: "1px solid #ccc"
} Declaration {...}
- type: "Declaration"
- start: 1343
- end: 1361
- property: "border-radius"
- value: "2px"
}
]
}- start: 1137
- end: 1364
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1366
- end: 1389
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1366
- end: 1389
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1374
- end: 1388
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1374
- end: 1388
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (2)
TypeSelector {...}
- type: "TypeSelector"
- name: "input"
- start: 1374
- end: 1379
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "disabled"
- args: null
- start: 1379
- end: 1388
}
]- start: 1374
- end: 1388
}
]
}
]
}- start: 1366
- end: 1389
}
]- start: 1366
- end: 1389
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1390
- end: 1408
children: [...] (1)
Declaration {...}
- type: "Declaration"
- start: 1394
- end: 1405
- property: "color"
- value: "#ccc"
}
]
}- start: 1366
- end: 1408
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1410
- end: 1438
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1410
- end: 1438
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1418
- end: 1437
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1418
- end: 1437
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (2)
TypeSelector {...}
- type: "TypeSelector"
- name: "input"
- start: 1418
- end: 1423
} AttributeSelector {...}
- type: "AttributeSelector"
- start: 1423
- end: 1437
- name: "type"
- matcher: "="
- value: "range"
- flags: null
}
]- start: 1418
- end: 1437
}
]
}
]
}- start: 1410
- end: 1438
}
]- start: 1410
- end: 1438
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1439
- end: 1455
children: [...] (1)
Declaration {...}
- type: "Declaration"
- start: 1443
- end: 1452
- property: "height"
- value: "0"
}
]
}- start: 1410
- end: 1455
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1457
- end: 1472
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1457
- end: 1472
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1465
- end: 1471
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1465
- end: 1471
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 1465
- end: 1471
}
]- start: 1465
- end: 1471
}
]
}
]
}- start: 1457
- end: 1472
}
]- start: 1457
- end: 1472
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1473
- end: 1730
children: [...] (8)
Declaration {...}
- type: "Declaration"
- start: 1477
- end: 1506
- property: "background-color"
- value: "var(--base)"
} Declaration {...}
- type: "Declaration"
- start: 1510
- end: 1536
- property: "border-color"
- value: "var(--black)"
} Declaration {...}
- type: "Declaration"
- start: 1540
- end: 1559
- property: "color"
- value: "var(--black)"
} Declaration {...}
- type: "Declaration"
- start: 1563
- end: 1579
- property: "font-size"
- value: "1.5em"
} Declaration {...}
- type: "Declaration"
- start: 1583
- end: 1603
- property: "font-weight"
- value: "inherit"
} Declaration {...}
- type: "Declaration"
- start: 1607
- end: 1620
- property: "outline"
- value: "none"
} Declaration {...}
- type: "Declaration"
- start: 1624
- end: 1649
- property: "text-transform"
- value: "uppercase"
} Declaration {...}
- type: "Declaration"
- start: 1653
- end: 1727
- property: "transition"
- value: "background-color .2s, color .2s, border-color .2s, opacity .2s"
}
]
}- start: 1457
- end: 1730
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1732
- end: 1756
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1732
- end: 1756
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1740
- end: 1755
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1740
- end: 1755
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (2)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 1740
- end: 1746
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "disabled"
- args: null
- start: 1746
- end: 1755
}
]- start: 1740
- end: 1755
}
]
}
]
}- start: 1732
- end: 1756
}
]- start: 1732
- end: 1756
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1757
- end: 1776
children: [...] (1)
Declaration {...}
- type: "Declaration"
- start: 1761
- end: 1773
- property: "opacity"
- value: "0.5"
}
]
}- start: 1732
- end: 1776
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1778
- end: 1837
children: [...] (2)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1778
- end: 1799
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1786
- end: 1798
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1786
- end: 1798
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (2)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 1786
- end: 1792
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "focus"
- args: null
- start: 1792
- end: 1798
}
]- start: 1786
- end: 1798
}
]
}
]
}- start: 1778
- end: 1799
}
]- start: 1778
- end: 1799
}
]
} ComplexSelector {...}
- type: "ComplexSelector"
- start: 1801
- end: 1837
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1809
- end: 1836
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1809
- end: 1836
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (3)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 1809
- end: 1815
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "not"
args: SelectorList {...}
- type: "SelectorList"
- start: 1820
- end: 1829
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1820
- end: 1829
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "disabled"
- args: null
- start: 1820
- end: 1829
}
]- start: 1820
- end: 1829
}
]
}
]
}- start: 1815
- end: 1830
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "hover"
- args: null
- start: 1830
- end: 1836
}
]- start: 1809
- end: 1836
}
]
}
]
}- start: 1801
- end: 1837
}
]- start: 1801
- end: 1837
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1838
- end: 1880
children: [...] (1)
Declaration {...}
- type: "Declaration"
- start: 1842
- end: 1877
- property: "background-color"
- value: "var(--base-light)"
}
]
}- start: 1778
- end: 1880
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1882
- end: 1919
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1882
- end: 1919
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1890
- end: 1918
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1890
- end: 1918
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (3)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 1890
- end: 1896
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "not"
args: SelectorList {...}
- type: "SelectorList"
- start: 1901
- end: 1910
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1901
- end: 1910
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "disabled"
- args: null
- start: 1901
- end: 1910
}
]- start: 1901
- end: 1910
}
]
}
]
}- start: 1896
- end: 1911
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "active"
- args: null
- start: 1911
- end: 1918
}
]- start: 1890
- end: 1918
}
]
}
]
}- start: 1882
- end: 1919
}
]- start: 1882
- end: 1919
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1920
- end: 1961
children: [...] (1)
Declaration {...}
- type: "Declaration"
- start: 1924
- end: 1958
- property: "background-color"
- value: "var(--base-dark)"
}
]
}- start: 1882
- end: 1961
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 1963
- end: 1986
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1963
- end: 1986
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 1971
- end: 1985
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 1971
- end: 1985
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (2)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 1971
- end: 1977
} ClassSelector {...}
- type: "ClassSelector"
- name: "primary"
- start: 1977
- end: 1985
}
]- start: 1971
- end: 1985
}
]
}
]
}- start: 1963
- end: 1986
}
]- start: 1963
- end: 1986
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 1987
- end: 2079
children: [...] (3)
Declaration {...}
- type: "Declaration"
- start: 1991
- end: 2022
- property: "background-color"
- value: "var(--accent)"
} Declaration {...}
- type: "Declaration"
- start: 2026
- end: 2053
- property: "border-color"
- value: "var(--accent)"
} Declaration {...}
- type: "Declaration"
- start: 2057
- end: 2076
- property: "color"
- value: "var(--white)"
}
]
}- start: 1963
- end: 2079
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 2081
- end: 2125
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 2081
- end: 2125
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 2089
- end: 2124
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 2089
- end: 2124
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (4)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 2089
- end: 2095
} ClassSelector {...}
- type: "ClassSelector"
- name: "primary"
- start: 2095
- end: 2103
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "not"
args: SelectorList {...}
- type: "SelectorList"
- start: 2108
- end: 2117
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 2108
- end: 2117
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "disabled"
- args: null
- start: 2108
- end: 2117
}
]- start: 2108
- end: 2117
}
]
}
]
}- start: 2103
- end: 2118
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "hover"
- args: null
- start: 2118
- end: 2124
}
]- start: 2089
- end: 2124
}
]
}
]
}- start: 2081
- end: 2125
}
]- start: 2081
- end: 2125
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 2126
- end: 2207
children: [...] (2)
Declaration {...}
- type: "Declaration"
- start: 2130
- end: 2167
- property: "background-color"
- value: "var(--accent-light)"
} Declaration {...}
- type: "Declaration"
- start: 2171
- end: 2204
- property: "border-color"
- value: "var(--accent-light)"
}
]
}- start: 2081
- end: 2207
} Rule {...}
- type: "Rule"
prelude: SelectorList {...}
- type: "SelectorList"
- start: 2209
- end: 2254
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 2209
- end: 2254
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "global"
args: SelectorList {...}
- type: "SelectorList"
- start: 2217
- end: 2253
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 2217
- end: 2253
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (4)
TypeSelector {...}
- type: "TypeSelector"
- name: "button"
- start: 2217
- end: 2223
} ClassSelector {...}
- type: "ClassSelector"
- name: "primary"
- start: 2223
- end: 2231
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "not"
args: SelectorList {...}
- type: "SelectorList"
- start: 2236
- end: 2245
children: [...] (1)
ComplexSelector {...}
- type: "ComplexSelector"
- start: 2236
- end: 2245
children: [...] (1)
RelativeSelector {...}
- type: "RelativeSelector"
- combinator: null
selectors: [...] (1)
PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "disabled"
- args: null
- start: 2236
- end: 2245
}
]- start: 2236
- end: 2245
}
]
}
]
}- start: 2231
- end: 2246
} PseudoClassSelector {...}
- type: "PseudoClassSelector"
- name: "active"
- args: null
- start: 2246
- end: 2253
}
]- start: 2217
- end: 2253
}
]
}
]
}- start: 2209
- end: 2254
}
]- start: 2209
- end: 2254
}
]
}
]
}block: Block {...}
- type: "Block"
- start: 2255
- end: 2334
children: [...] (2)
Declaration {...}
- type: "Declaration"
- start: 2259
- end: 2295
- property: "background-color"
- value: "var(--accent-dark)"
} Declaration {...}
- type: "Declaration"
- start: 2299
- end: 2331
- property: "border-color"
- value: "var(--accent-dark)"
}
]
}- start: 2209
- end: 2334
}
]content: {...}
- start: 222
- end: 2335
- styles: "\n main {\n text-align: center;\n padding: 1em;\n max-width: 240px;\n margin: 0 auto;\n }\n\n h1 {\n color: var(--accent);\n text-transform: uppercase;\n font-size: 6em;\n margin: 0;\n font-weight: 100;\n }\n\n @media (min-width: 640px) {\n main {\n max-width: none;\n }\n }\n\n\t/* global.css simulated here */\n:global(:root) {\n --black: #333;\n --base: white;\n --base-light: #f4f4f4;\n --base-dark: #ddd;\n\n --white: white;\n --accent: orangered;\n --accent-light: #ff4500d6;\n --accent-dark: #e83f00;\n}\n\n:global(html, body) {\n position: relative;\n width: 100%;\n height: 100%;\n}\n\n:global(body) {\n color: var(--black);\n margin: 0;\n padding: 8px;\n box-sizing: border-box;\n font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Oxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif;\n font-weight: 300;\n}\n\n:global(a) {\n color: rgb(0,100,200);\n text-decoration: none;\n}\n\n:global(input, button, select, textarea) {\n font-family: inherit;\n font-size: 1.5em;\n font-weight: inherit;\n padding: 0.4em;\n margin: 0 0 0.5em 0;\n box-sizing: border-box;\n border: 1px solid #ccc;\n border-radius: 2px;\n}\n\n:global(input:disabled) {\n color: #ccc;\n}\n\n:global(input[type=\"range\"]) {\n height: 0;\n}\n\n:global(button) {\n background-color: var(--base);\n border-color: var(--black);\n color: var(--black);\n font-size: 1.5em;\n font-weight: inherit;\n outline: none;\n text-transform: uppercase;\n transition: background-color .2s, color .2s, border-color .2s, opacity .2s;\n}\n\n:global(button:disabled) {\n opacity: 0.5;\n}\n\n:global(button:focus),\n:global(button:not(:disabled):hover) {\n background-color: var(--base-light);\n}\n\n:global(button:not(:disabled):active) {\n background-color: var(--base-dark);\n}\n\n:global(button.primary) {\n background-color: var(--accent);\n border-color: var(--accent);\n color: var(--white);\n}\n\n:global(button.primary:not(:disabled):hover) {\n background-color: var(--accent-light);\n border-color: var(--accent-light);\n}\n\n:global(button.primary:not(:disabled):active) {\n background-color: var(--accent-dark);\n border-color: var(--accent-dark);\n}\n"
- comment: null
}
}- js: []
- start: 147
- end: 213
- type: "Root"
fragment: Fragment {...}
- type: "Fragment"
nodes: [...] (3)
Text {...}
- type: "Text"
- start: 145
- end: 147
- raw: "\n\n"
- data: "\n\n"
} RegularElement {...}
- type: "RegularElement"
- start: 147
- end: 213
- name: "main"
attributes: [...] (1)
Attribute {...}
- type: "Attribute"
- start: -1
- end: -1
- name: "class"
value: [...] (1)
Text {...}
- type: "Text"
- data: ""
- raw: ""
- start: -1
- end: -1
}
]
}
]fragment: Fragment {...}
- type: "Fragment"
nodes: [...] (7)
Text {...}
- type: "Text"
- start: 153
- end: 156
- raw: "\n "
- data: "\n "
} RegularElement {...}
- type: "RegularElement"
- start: 156
- end: 172
- name: "h1"
attributes: [...] (1)
Attribute {...}
- type: "Attribute"
- start: -1
- end: -1
- name: "class"
value: [...] (1)
Text {...}
- type: "Text"
- data: ""
- raw: ""
- start: -1
- end: -1
}
]
}
]fragment: Fragment {...}
- type: "Fragment"
nodes: [...] (1)
ExpressionTag {...}
- type: "ExpressionTag"
- start: 160
- end: 167
expression: Identifier {...}
- type: "Identifier"
- start: 161
- end: 166
loc: {...}
start: {...}
- line: 8
- column: 7
}end: {...}
- line: 8
- column: 12
}
}- name: "title"
}
}
]
}
} Text {...}
- type: "Text"
- start: 172
- end: 175
- raw: " "
- data: " "
} Component {...}
- type: "Component"
- start: 175
- end: 191
- name: "PomodoroTimer"
- attributes: []
fragment: Fragment {...}
- type: "Fragment"
- nodes: []
}
} Text {...}
- type: "Text"
- start: 191
- end: 194
- raw: " "
- data: " "
} Component {...}
- type: "Component"
- start: 194
- end: 205
- name: "TaskList"
- attributes: []
fragment: Fragment {...}
- type: "Fragment"
- nodes: []
}
} Text {...}
- type: "Text"
- start: 205
- end: 206
- raw: "\n"
- data: "\n"
}
]
}
} Text {...}
- type: "Text"
- start: 213
- end: 215
- raw: "\n\n"
- data: "\n\n"
}
]
}- options: null
instance: Script {...}
- type: "Script"
- start: 0
- end: 145
- context: "default"
content: Program {...}
- type: "Program"
- start: 8
- end: 136
loc: {...}
start: {...}
- line: 1
- column: 0
}end: {...}
- line: 5
- column: 0
}
}body: [...] (3)
VariableDeclaration {...}
- type: "VariableDeclaration"
- start: 11
- end: 37
loc: {...}
start: {...}
- line: 2
- column: 2
}end: {...}
- line: 2
- column: 28
}
}declarations: [...] (1)
VariableDeclarator {...}
- type: "VariableDeclarator"
- start: 15
- end: 36
loc: {...}
start: {...}
- line: 2
- column: 6
}end: {...}
- line: 2
- column: 27
}
}id: Identifier {...}
- type: "Identifier"
- start: 15
- end: 20
loc: {...}
start: {...}
- line: 2
- column: 6
}end: {...}
- line: 2
- column: 11
}
}- name: "title"
}init: Literal {...}
- type: "Literal"
- start: 23
- end: 36
loc: {...}
start: {...}
- line: 2
- column: 14
}end: {...}
- line: 2
- column: 27
}
}- value: "il Pomodoro"
- raw: "\"il Pomodoro\""
}
}
]- kind: "let"
} ImportDeclaration {...}
- type: "ImportDeclaration"
- start: 40
- end: 81
loc: {...}
start: {...}
- line: 3
- column: 2
}end: {...}
- line: 3
- column: 43
}
}specifiers: [...] (1)
ImportDefaultSpecifier {...}
- type: "ImportDefaultSpecifier"
- start: 47
- end: 55
loc: {...}
start: {...}
- line: 3
- column: 9
}end: {...}
- line: 3
- column: 17
}
}local: Identifier {...}
- type: "Identifier"
- start: 47
- end: 55
loc: {...}
start: {...}
- line: 3
- column: 9
}end: {...}
- line: 3
- column: 17
}
}- name: "TaskList"
}
}
]source: Literal {...}
- type: "Literal"
- start: 61
- end: 80
loc: {...}
start: {...}
- line: 3
- column: 23
}end: {...}
- line: 3
- column: 42
}
}- value: "./TaskList.svelte"
- raw: "'./TaskList.svelte'"
}
} ImportDeclaration {...}
- type: "ImportDeclaration"
- start: 84
- end: 135
loc: {...}
start: {...}
- line: 4
- column: 2
}end: {...}
- line: 4
- column: 53
}
}specifiers: [...] (1)
ImportDefaultSpecifier {...}
- type: "ImportDefaultSpecifier"
- start: 91
- end: 104
loc: {...}
start: {...}
- line: 4
- column: 9
}end: {...}
- line: 4
- column: 22
}
}local: Identifier {...}
- type: "Identifier"
- start: 91
- end: 104
loc: {...}
start: {...}
- line: 4
- column: 9
}end: {...}
- line: 4
- column: 22
}
}- name: "PomodoroTimer"
}
}
]source: Literal {...}
- type: "Literal"
- start: 110
- end: 134
loc: {...}
start: {...}
- line: 4
- column: 28
}end: {...}
- line: 4
- column: 52
}
}- value: "./PomodoroTimer.svelte"
- raw: "'./PomodoroTimer.svelte'"
}
}
]- sourceType: "module"
}- attributes: []
}
}
The AST is not public API and may change at any point in time