ctrl-fx 0.1.0 → 0.1.2

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 (152) hide show
  1. package/README.md +13 -0
  2. package/dist/chunk-BDTTV33M.js +4050 -0
  3. package/dist/chunk-EKBLRHWK.js +916 -0
  4. package/dist/chunk-OSIRHKDB.js +1812 -0
  5. package/dist/chunk-PKBMQBKP.js +7 -0
  6. package/dist/chunk-XICUXW4T.js +252 -0
  7. package/dist/db/index.d.ts +218 -16
  8. package/dist/db/index.js +53 -19
  9. package/dist/dom/index.d.ts +2 -248
  10. package/dist/dom/index.js +30 -266
  11. package/dist/effects.d.ts +2 -580
  12. package/dist/effects.js +111 -1556
  13. package/dist/index-DeEjNrg-.d.ts +1399 -0
  14. package/dist/index.d.ts +2 -41
  15. package/dist/index.js +18 -78
  16. package/dist/router.d.ts +11 -12
  17. package/dist/router.js +57 -68
  18. package/dist/testing.d.ts +67 -60
  19. package/dist/testing.js +46 -158
  20. package/dist/webcomponent.d.ts +7 -4
  21. package/dist/webcomponent.js +48 -40
  22. package/package.json +4 -3
  23. package/dist/clipboard.d.ts +0 -7
  24. package/dist/clipboard.d.ts.map +0 -1
  25. package/dist/clipboard.js +0 -3
  26. package/dist/db/effects.d.ts +0 -78
  27. package/dist/db/effects.d.ts.map +0 -1
  28. package/dist/db/effects.js +0 -98
  29. package/dist/db/errors.d.ts +0 -21
  30. package/dist/db/errors.d.ts.map +0 -1
  31. package/dist/db/errors.js +0 -13
  32. package/dist/db/index.d.ts.map +0 -1
  33. package/dist/db/keypath.d.ts +0 -40
  34. package/dist/db/keypath.d.ts.map +0 -1
  35. package/dist/db/keypath.js +0 -20
  36. package/dist/db/setup.d.ts +0 -83
  37. package/dist/db/setup.d.ts.map +0 -1
  38. package/dist/db/setup.js +0 -100
  39. package/dist/db/testdb.d.ts +0 -19
  40. package/dist/db/testdb.d.ts.map +0 -1
  41. package/dist/db/testdb.js +0 -34
  42. package/dist/dom/attrs.d.ts +0 -67
  43. package/dist/dom/attrs.d.ts.map +0 -1
  44. package/dist/dom/attrs.js +0 -154
  45. package/dist/dom/components.d.ts +0 -43
  46. package/dist/dom/components.d.ts.map +0 -1
  47. package/dist/dom/components.js +0 -86
  48. package/dist/dom/elems.d.ts +0 -121
  49. package/dist/dom/elems.d.ts.map +0 -1
  50. package/dist/dom/elems.js +0 -52
  51. package/dist/dom/events.d.ts +0 -232
  52. package/dist/dom/events.d.ts.map +0 -1
  53. package/dist/dom/events.js +0 -289
  54. package/dist/dom/index.d.ts.map +0 -1
  55. package/dist/dom/nodeid.d.ts +0 -9
  56. package/dist/dom/nodeid.d.ts.map +0 -1
  57. package/dist/dom/nodeid.js +0 -27
  58. package/dist/dom/svg.d.ts +0 -23
  59. package/dist/dom/svg.d.ts.map +0 -1
  60. package/dist/dom/svg.js +0 -1
  61. package/dist/dom/views.d.ts +0 -60
  62. package/dist/dom/views.d.ts.map +0 -1
  63. package/dist/dom/views.js +0 -154
  64. package/dist/effects.d.ts.map +0 -1
  65. package/dist/index.d.ts.map +0 -1
  66. package/dist/internal/clipboard.d.ts +0 -5
  67. package/dist/internal/clipboard.d.ts.map +0 -1
  68. package/dist/internal/clipboard.js +0 -33
  69. package/dist/internal/cmpmgr.d.ts +0 -46
  70. package/dist/internal/cmpmgr.d.ts.map +0 -1
  71. package/dist/internal/cmpmgr.js +0 -561
  72. package/dist/internal/dbmgr.d.ts +0 -11
  73. package/dist/internal/dbmgr.d.ts.map +0 -1
  74. package/dist/internal/dbmgr.js +0 -200
  75. package/dist/internal/dominterpreter.d.ts +0 -5
  76. package/dist/internal/dominterpreter.d.ts.map +0 -1
  77. package/dist/internal/dominterpreter.js +0 -337
  78. package/dist/internal/eventmgr.d.ts +0 -41
  79. package/dist/internal/eventmgr.d.ts.map +0 -1
  80. package/dist/internal/eventmgr.js +0 -696
  81. package/dist/internal/index.d.ts +0 -19
  82. package/dist/internal/index.d.ts.map +0 -1
  83. package/dist/internal/index.js +0 -38
  84. package/dist/internal/interpreter.d.ts +0 -10
  85. package/dist/internal/interpreter.d.ts.map +0 -1
  86. package/dist/internal/interpreter.js +0 -1
  87. package/dist/internal/locutils.d.ts +0 -4
  88. package/dist/internal/locutils.d.ts.map +0 -1
  89. package/dist/internal/locutils.js +0 -22
  90. package/dist/internal/net.d.ts +0 -4
  91. package/dist/internal/net.d.ts.map +0 -1
  92. package/dist/internal/net.js +0 -64
  93. package/dist/internal/realdom.d.ts +0 -249
  94. package/dist/internal/realdom.d.ts.map +0 -1
  95. package/dist/internal/realdom.js +0 -1
  96. package/dist/internal/styleregistry.d.ts +0 -6
  97. package/dist/internal/styleregistry.d.ts.map +0 -1
  98. package/dist/internal/styleregistry.js +0 -18
  99. package/dist/internal/taskreg.d.ts +0 -9
  100. package/dist/internal/taskreg.d.ts.map +0 -1
  101. package/dist/internal/taskreg.js +0 -28
  102. package/dist/internal/testing.d.ts +0 -12
  103. package/dist/internal/testing.d.ts.map +0 -1
  104. package/dist/internal/testing.js +0 -974
  105. package/dist/internal/testinginterpreter.d.ts +0 -10
  106. package/dist/internal/testinginterpreter.d.ts.map +0 -1
  107. package/dist/internal/testinginterpreter.js +0 -646
  108. package/dist/internal/vdom.d.ts +0 -93
  109. package/dist/internal/vdom.d.ts.map +0 -1
  110. package/dist/internal/vdom.js +0 -470
  111. package/dist/json/index.d.ts +0 -5
  112. package/dist/json/index.d.ts.map +0 -1
  113. package/dist/json/index.js +0 -2
  114. package/dist/json/validation.d.ts +0 -28
  115. package/dist/json/validation.d.ts.map +0 -1
  116. package/dist/json/validation.js +0 -8
  117. package/dist/net/fragment.d.ts +0 -10
  118. package/dist/net/fragment.d.ts.map +0 -1
  119. package/dist/net/fragment.js +0 -27
  120. package/dist/net/index.d.ts +0 -42
  121. package/dist/net/index.d.ts.map +0 -1
  122. package/dist/net/index.js +0 -60
  123. package/dist/net/location.d.ts +0 -21
  124. package/dist/net/location.d.ts.map +0 -1
  125. package/dist/net/location.js +0 -41
  126. package/dist/net/path.d.ts +0 -12
  127. package/dist/net/path.d.ts.map +0 -1
  128. package/dist/net/path.js +0 -29
  129. package/dist/net/queryparam.d.ts +0 -10
  130. package/dist/net/queryparam.d.ts.map +0 -1
  131. package/dist/net/queryparam.js +0 -34
  132. package/dist/router.d.ts.map +0 -1
  133. package/dist/scroll.d.ts +0 -7
  134. package/dist/scroll.d.ts.map +0 -1
  135. package/dist/scroll.js +0 -3
  136. package/dist/testing.d.ts.map +0 -1
  137. package/dist/utils/apply.d.ts +0 -9
  138. package/dist/utils/apply.d.ts.map +0 -1
  139. package/dist/utils/apply.js +0 -10
  140. package/dist/utils/index.d.ts +0 -22
  141. package/dist/utils/index.d.ts.map +0 -1
  142. package/dist/utils/index.js +0 -138
  143. package/dist/utils/lens.d.ts +0 -18
  144. package/dist/utils/lens.d.ts.map +0 -1
  145. package/dist/utils/lens.js +0 -27
  146. package/dist/utils/match.d.ts +0 -17
  147. package/dist/utils/match.d.ts.map +0 -1
  148. package/dist/utils/match.js +0 -28
  149. package/dist/utils/result.d.ts +0 -47
  150. package/dist/utils/result.d.ts.map +0 -1
  151. package/dist/utils/result.js +0 -97
  152. package/dist/webcomponent.d.ts.map +0 -1
@@ -1,121 +0,0 @@
1
- import type { FlowContent, PhrasingContent } from '.';
2
- import { type Effect } from '../effects';
3
- import { type SupportsApply } from '../utils/apply';
4
- import { type Attr, type Prop, type AttrOrNodeIdArgs } from './attrs';
5
- import { type ChangeData, type EventListener, type EventListenerResult, type EventOptions, type KeyData, type MouseMoveData, type ScrollData, type TextState, type TouchData, type WheelData } from './events';
6
- import { type NodeId } from './nodeid';
7
- import { type Svg, type SvgGraphicElement } from './svg';
8
- /**
9
- * Base interface for all virtual DOM elements. Provides typed event handler methods that
10
- * each return `this`, so calls can be chained: `button_('Save').onClick(save).onFocus(highlight)`.
11
- */
12
- export interface BaseElement<State, Event, Tag> extends SupportsApply {
13
- readonly _type: 'Element';
14
- readonly tag: Tag;
15
- readonly nodeId?: NodeId;
16
- readonly attrs: readonly Attr[];
17
- readonly props: readonly Prop[];
18
- readonly eventListeners: readonly EventListener<State, Event>[];
19
- onClick(effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
20
- onDblClick(effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
21
- onFocus(effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
22
- onBlur(effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
23
- onChange(f: (data: ChangeData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
24
- onTextInput(f: (textState: TextState) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
25
- onKeyDown(effect: (key: KeyData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
26
- onKeyUp(effect: (key: KeyData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
27
- onMouseEnter(effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
28
- onMouseLeave(effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
29
- onMouseMove(f: (data: MouseMoveData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
30
- onScroll(f: (data: ScrollData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
31
- onScrollEnd(f: (data: ScrollData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
32
- onWheel(f: (data: WheelData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
33
- onTouchStart(effect: (touchData: readonly TouchData[]) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
34
- onTouchMove(effect: (touchData: readonly TouchData[]) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
35
- onTouchEnd(effect: (touchData: readonly TouchData[]) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
36
- onTouchCancel(effect: (touchData: readonly TouchData[]) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
37
- onEvent(eventName: string, effect: (detail: unknown) => Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
38
- onSubmit(effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): this;
39
- prop(name: string, value: unknown): this;
40
- }
41
- /** A virtual DOM element that cannot have children (e.g. `br`, `hr`, `img`, `input`). */
42
- export interface VoidElement<State, Event, Tag> extends BaseElement<State, Event, Tag> {
43
- }
44
- /** A virtual DOM element with typed children. */
45
- export interface NonVoidElement<State, Event, Tag, Children> extends BaseElement<State, Event, Tag> {
46
- readonly children: readonly Children[];
47
- }
48
- export type ButtonContent<State, Event> = NonVoidInlineElement<State, Event> | string | Svg<State, Event>;
49
- export type Button<State, Event> = NonVoidElement<State, Event, 'button', ButtonContent<State, Event>>;
50
- export type Div<State, Event> = NonVoidElement<State, Event, 'div', FlowContent<State, Event>>;
51
- export type H1<State, Event> = NonVoidElement<State, Event, 'h1', FlowContent<State, Event>>;
52
- export type H2<State, Event> = NonVoidElement<State, Event, 'h2', FlowContent<State, Event>>;
53
- export type H3<State, Event> = NonVoidElement<State, Event, 'h3', FlowContent<State, Event>>;
54
- export type H4<State, Event> = NonVoidElement<State, Event, 'h4', FlowContent<State, Event>>;
55
- export type H5<State, Event> = NonVoidElement<State, Event, 'h5', FlowContent<State, Event>>;
56
- export type H6<State, Event> = NonVoidElement<State, Event, 'h6', FlowContent<State, Event>>;
57
- export type Header<State, Event> = NonVoidElement<State, Event, 'header', FlowContent<State, Event>>;
58
- export type Li<State, Event> = NonVoidElement<State, Event, 'li', FlowContent<State, Event>>;
59
- export type Main<State, Event> = NonVoidElement<State, Event, 'main', FlowContent<State, Event>>;
60
- export type Nav<State, Event> = NonVoidElement<State, Event, 'nav', FlowContent<State, Event>>;
61
- export type Ol<State, Event> = NonVoidElement<State, Event, 'ol', Li<State, Event>>;
62
- export type P<State, Event> = NonVoidElement<State, Event, 'p', FlowContent<State, Event>>;
63
- export type Ul<State, Event> = NonVoidElement<State, Event, 'ul', Li<State, Event>>;
64
- export type Address<State, Event> = NonVoidElement<State, Event, 'address', FlowContent<State, Event>>;
65
- export type Article<State, Event> = NonVoidElement<State, Event, 'article', FlowContent<State, Event>>;
66
- export type Aside<State, Event> = NonVoidElement<State, Event, 'aside', FlowContent<State, Event>>;
67
- export type Blockquote<State, Event> = NonVoidElement<State, Event, 'blockquote', FlowContent<State, Event>>;
68
- export type Dd<State, Event> = NonVoidElement<State, Event, 'dd', FlowContent<State, Event>>;
69
- export type Details<State, Event> = NonVoidElement<State, Event, 'details', FlowContent<State, Event>>;
70
- export type Dt<State, Event> = NonVoidElement<State, Event, 'dt', PhrasingContent<State, Event>>;
71
- export type Dl<State, Event> = NonVoidElement<State, Event, 'dl', Dt<State, Event> | Dd<State, Event>>;
72
- export type Fieldset<State, Event> = NonVoidElement<State, Event, 'fieldset', FlowContent<State, Event>>;
73
- export type Figcaption<State, Event> = NonVoidElement<State, Event, 'figcaption', FlowContent<State, Event>>;
74
- export type Figure<State, Event> = NonVoidElement<State, Event, 'figure', FlowContent<State, Event>>;
75
- export type Footer<State, Event> = NonVoidElement<State, Event, 'footer', FlowContent<State, Event>>;
76
- export type Form<State, Event> = NonVoidElement<State, Event, 'form', FlowContent<State, Event>>;
77
- export type Hr<State, Event> = VoidElement<State, Event, 'hr'>;
78
- export type Pre<State, Event> = NonVoidElement<State, Event, 'pre', PhrasingContent<State, Event>>;
79
- export type Section<State, Event> = NonVoidElement<State, Event, 'section', FlowContent<State, Event>>;
80
- export type Summary<State, Event> = NonVoidElement<State, Event, 'summary', PhrasingContent<State, Event>>;
81
- export type Td<State, Event> = NonVoidElement<State, Event, 'td', FlowContent<State, Event>>;
82
- export type Th<State, Event> = NonVoidElement<State, Event, 'th', FlowContent<State, Event>>;
83
- export type Tr<State, Event> = NonVoidElement<State, Event, 'tr', Th<State, Event> | Td<State, Event>>;
84
- export type Tbody<State, Event> = NonVoidElement<State, Event, 'tbody', Tr<State, Event>>;
85
- export type Tfoot<State, Event> = NonVoidElement<State, Event, 'tfoot', Tr<State, Event>>;
86
- export type Thead<State, Event> = NonVoidElement<State, Event, 'thead', Tr<State, Event>>;
87
- export type Table<State, Event> = NonVoidElement<State, Event, 'table', Thead<State, Event> | Tbody<State, Event> | Tfoot<State, Event> | Tr<State, Event>>;
88
- export type BlockElement<State, Event> = Address<State, Event> | Article<State, Event> | Aside<State, Event> | Blockquote<State, Event> | Button<State, Event> | Dd<State, Event> | Details<State, Event> | Dl<State, Event> | Dt<State, Event> | Div<State, Event> | Fieldset<State, Event> | Figcaption<State, Event> | Figure<State, Event> | Footer<State, Event> | Form<State, Event> | H1<State, Event> | H2<State, Event> | H3<State, Event> | H4<State, Event> | H5<State, Event> | H6<State, Event> | Header<State, Event> | Hr<State, Event> | Li<State, Event> | Main<State, Event> | Nav<State, Event> | Ol<State, Event> | P<State, Event> | Pre<State, Event> | Section<State, Event> | Summary<State, Event> | Table<State, Event> | Tbody<State, Event> | Td<State, Event> | Tfoot<State, Event> | Th<State, Event> | Thead<State, Event> | Tr<State, Event> | Ul<State, Event>;
89
- export type Br<State, Event> = VoidElement<State, Event, 'br'>;
90
- export type Img<State, Event> = VoidElement<State, Event, 'img'>;
91
- export type Input<State, Event> = VoidElement<State, Event, 'input'>;
92
- export type VoidInlineElement<State, Event> = Br<State, Event> | Img<State, Event> | Input<State, Event>;
93
- export type A<State, Event> = NonVoidElement<State, Event, 'a', FlowContent<State, Event>>;
94
- export type Abbr<State, Event> = NonVoidElement<State, Event, 'abbr', PhrasingContent<State, Event>>;
95
- export type B<State, Event> = NonVoidElement<State, Event, 'b', PhrasingContent<State, Event>>;
96
- export type Cite<State, Event> = NonVoidElement<State, Event, 'cite', PhrasingContent<State, Event>>;
97
- export type Code<State, Event> = NonVoidElement<State, Event, 'code', PhrasingContent<State, Event>>;
98
- export type Em<State, Event> = NonVoidElement<State, Event, 'em', PhrasingContent<State, Event>>;
99
- export type I<State, Event> = NonVoidElement<State, Event, 'i', PhrasingContent<State, Event>>;
100
- export type Kbd<State, Event> = NonVoidElement<State, Event, 'kbd', PhrasingContent<State, Event>>;
101
- export type Label<State, Event> = NonVoidElement<State, Event, 'label', PhrasingContent<State, Event>>;
102
- export type Mark<State, Event> = NonVoidElement<State, Event, 'mark', PhrasingContent<State, Event>>;
103
- export type Option<State, Event> = NonVoidElement<State, Event, 'option', string>;
104
- export type Q<State, Event> = NonVoidElement<State, Event, 'q', PhrasingContent<State, Event>>;
105
- export type S<State, Event> = NonVoidElement<State, Event, 's', PhrasingContent<State, Event>>;
106
- export type Select<State, Event> = NonVoidElement<State, Event, 'select', Option<State, Event>>;
107
- export type Small<State, Event> = NonVoidElement<State, Event, 'small', PhrasingContent<State, Event>>;
108
- export type Span<State, Event> = NonVoidElement<State, Event, 'span', PhrasingContent<State, Event>>;
109
- export type Strong<State, Event> = NonVoidElement<State, Event, 'strong', PhrasingContent<State, Event>>;
110
- export type Sub<State, Event> = NonVoidElement<State, Event, 'sub', PhrasingContent<State, Event>>;
111
- export type Sup<State, Event> = NonVoidElement<State, Event, 'sup', PhrasingContent<State, Event>>;
112
- export type Textarea<State, Event> = NonVoidElement<State, Event, 'textarea', string>;
113
- export type Time<State, Event> = NonVoidElement<State, Event, 'time', PhrasingContent<State, Event>>;
114
- export type U<State, Event> = NonVoidElement<State, Event, 'u', PhrasingContent<State, Event>>;
115
- export type NonVoidInlineElement<State, Event> = A<State, Event> | Abbr<State, Event> | B<State, Event> | Cite<State, Event> | Code<State, Event> | Em<State, Event> | I<State, Event> | Kbd<State, Event> | Label<State, Event> | Mark<State, Event> | Option<State, Event> | Q<State, Event> | S<State, Event> | Select<State, Event> | Small<State, Event> | Span<State, Event> | Strong<State, Event> | Sub<State, Event> | Sup<State, Event> | Textarea<State, Event> | Time<State, Event> | U<State, Event>;
116
- export type InlineElement<State, Event> = VoidInlineElement<State, Event> | NonVoidInlineElement<State, Event>;
117
- export type Element<State, Event> = BlockElement<State, Event> | InlineElement<State, Event> | ReplacedElement<State, Event> | SvgGraphicElement<State, Event>;
118
- export type ReplacedElement<State, Event> = Svg<State, Event>;
119
- export declare function makeNonVoidElement<State, Event, Children, Elem extends NonVoidElement<State, Event, Elem['tag'], Children>>(tag: Elem['tag']): (...attrs: AttrOrNodeIdArgs) => (...children: readonly Children[]) => Elem;
120
- export declare function makeVoidElement<State, Event, Elem extends VoidElement<State, Event, string>>(tag: Elem['tag']): (...attrs: AttrOrNodeIdArgs) => Elem;
121
- //# sourceMappingURL=elems.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"elems.d.ts","sourceRoot":"","sources":["../../src/dom/elems.ts"],"names":[],"mappings":"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"}
package/dist/dom/elems.js DELETED
@@ -1,52 +0,0 @@
1
- import {} from '../effects';
2
- import { applySupport } from '../utils/apply';
3
- import { normalizeAttrArgs } from './attrs';
4
- import { eventSupport, } from './events';
5
- import { findNodeId } from './nodeid';
6
- import {} from './svg';
7
- //| View<State, any, Event>
8
- //| View<State, never, Event>
9
- function propSupport() {
10
- return {
11
- prop(name, value) {
12
- return {
13
- ...this,
14
- props: [...this.props, { name, value }],
15
- ...propSupport(),
16
- };
17
- },
18
- };
19
- }
20
- export function makeNonVoidElement(tag) {
21
- return (...attrs) => {
22
- return (...children) => {
23
- return {
24
- _type: 'Element',
25
- tag,
26
- nodeId: findNodeId(attrs),
27
- attrs: normalizeAttrArgs(attrs),
28
- props: [],
29
- children,
30
- eventListeners: [],
31
- ...eventSupport(),
32
- ...propSupport(),
33
- ...applySupport(),
34
- };
35
- };
36
- };
37
- }
38
- export function makeVoidElement(tag) {
39
- return (...attrs) => {
40
- return {
41
- _type: 'Element',
42
- tag,
43
- nodeId: findNodeId(attrs),
44
- attrs: normalizeAttrArgs(attrs),
45
- props: [],
46
- eventListeners: [],
47
- ...eventSupport(),
48
- ...propSupport(),
49
- ...applySupport(),
50
- };
51
- };
52
- }
@@ -1,232 +0,0 @@
1
- import type { Dimensions } from '..';
2
- import { type Effect } from '../effects';
3
- import type { InternalLocation } from '../net/location';
4
- export declare const eventTypes: readonly ["blur", "change", "click", "dblclick", "focus", "keydown", "keyup", "mouseenter", "mouseleave", "mousemove", "scroll", "scrollend", "submit", "textinput", "touchstart", "touchmove", "touchend", "touchcancel", "wheel"];
5
- export type EventType = (typeof eventTypes)[number];
6
- /** Current value and cursor position of a text input, passed to `onTextInput` handlers. */
7
- export type TextState = {
8
- value: string;
9
- selectionStart: number | null;
10
- selectionEnd: number | null;
11
- };
12
- export type TextInputListener<State, Event> = {
13
- _type: 'textinput';
14
- effect: (textState: TextState) => Effect<State, Event, EventListenerResult>;
15
- options: EventOptions;
16
- };
17
- /** Key name and code from a keyboard event, passed to `onKeyDown`/`onKeyUp` handlers. */
18
- export type KeyData = {
19
- key: string;
20
- code: string;
21
- };
22
- export type KeyDownListener<State, Event> = {
23
- _type: 'keydown';
24
- effect: (key: KeyData) => Effect<State, Event, EventListenerResult>;
25
- options: EventOptions;
26
- };
27
- export type KeyUpListener<State, Event> = {
28
- _type: 'keyup';
29
- effect: (key: KeyData) => Effect<State, Event, EventListenerResult>;
30
- options: EventOptions;
31
- };
32
- /** Touch-point coordinates from a touch event, passed to `onTouchStart`/`onTouchMove`/`onTouchEnd` handlers. */
33
- export type TouchData = {
34
- clientX: number;
35
- clientY: number;
36
- pageX: number;
37
- pageY: number;
38
- };
39
- export type TouchStartListener<State, Event> = {
40
- _type: 'touchstart';
41
- effect: (touches: readonly TouchData[]) => Effect<State, Event, EventListenerResult>;
42
- options: EventOptions;
43
- };
44
- export type TouchMoveListener<State, Event> = {
45
- _type: 'touchmove';
46
- effect: (touches: readonly TouchData[]) => Effect<State, Event, EventListenerResult>;
47
- options: EventOptions;
48
- };
49
- export type TouchCancelListener<State, Event> = {
50
- _type: 'touchcancel';
51
- effect: (touches: readonly TouchData[]) => Effect<State, Event, EventListenerResult>;
52
- options: EventOptions;
53
- };
54
- export type TouchEndListener<State, Event> = {
55
- _type: 'touchend';
56
- effect: (touches: readonly TouchData[]) => Effect<State, Event, EventListenerResult>;
57
- options: EventOptions;
58
- };
59
- /** Options forwarded to `addEventListener`. */
60
- export type EventOptions = {
61
- capture?: boolean;
62
- passive?: boolean;
63
- };
64
- /** Browser event modifiers an event handler can request. Return from a handler to call `preventDefault` or `stopPropagation`. */
65
- export type EventActions = {
66
- stopPropagation?: boolean;
67
- preventDefault?: boolean;
68
- };
69
- /** Return type of event handlers: `void` or an `EventActions` object to modify browser behavior. */
70
- export type EventListenerResult = void | EventActions;
71
- export type BlurListener<State, Event> = {
72
- _type: 'blur';
73
- effect: Effect<State, Event, EventListenerResult>;
74
- options: EventOptions;
75
- };
76
- /** Current value and checked state of a form element, passed to `onChange` handlers. */
77
- export type ChangeData = {
78
- value: string;
79
- checked: boolean;
80
- };
81
- export type ChangeListener<State, Event> = {
82
- _type: 'change';
83
- effect: (data: ChangeData) => Effect<State, Event, EventListenerResult>;
84
- options: EventOptions;
85
- };
86
- export type ClickListener<State, Event> = {
87
- _type: 'click';
88
- effect: Effect<State, Event, EventListenerResult>;
89
- options: EventOptions;
90
- };
91
- export type DblClickListener<State, Event> = {
92
- _type: 'dblclick';
93
- effect: Effect<State, Event, EventListenerResult>;
94
- options: EventOptions;
95
- };
96
- /** Mouse position and movement delta, passed to `onMouseMove` handlers. */
97
- export type MouseMoveData = {
98
- clientX: number;
99
- clientY: number;
100
- pageX: number;
101
- pageY: number;
102
- movementX: number;
103
- movementY: number;
104
- };
105
- export type MouseMoveListener<State, Event> = {
106
- _type: 'mousemove';
107
- effect: (data: MouseMoveData) => Effect<State, Event, EventListenerResult>;
108
- options: EventOptions;
109
- };
110
- /** Scroll deltas from a wheel event, passed to `onWheel` handlers. */
111
- export type WheelData = {
112
- deltaX: number;
113
- deltaY: number;
114
- deltaZ: number;
115
- deltaMode: number;
116
- };
117
- export type WheelListener<State, Event> = {
118
- _type: 'wheel';
119
- effect: (data: WheelData) => Effect<State, Event, EventListenerResult>;
120
- options: EventOptions;
121
- };
122
- export type FocusListener<State, Event> = {
123
- _type: 'focus';
124
- effect: Effect<State, Event, EventListenerResult>;
125
- options: EventOptions;
126
- };
127
- export type MouseEnterListener<State, Event> = {
128
- _type: 'mouseenter';
129
- effect: Effect<State, Event, EventListenerResult>;
130
- options: EventOptions;
131
- };
132
- export type MouseLeaveListener<State, Event> = {
133
- _type: 'mouseleave';
134
- effect: Effect<State, Event, EventListenerResult>;
135
- options: EventOptions;
136
- };
137
- /** Scroll offset of the element, passed to `onScroll`/`onScrollEnd` handlers. */
138
- export type ScrollData = {
139
- scrollTop: number;
140
- scrollLeft: number;
141
- };
142
- export type ScrollListener<State, Event> = {
143
- _type: 'scroll';
144
- effect: (data: ScrollData) => Effect<State, Event, EventListenerResult>;
145
- options: EventOptions;
146
- };
147
- export type ScrollEndListener<State, Event> = {
148
- _type: 'scrollend';
149
- effect: (data: ScrollData) => Effect<State, Event, EventListenerResult>;
150
- options: EventOptions;
151
- };
152
- export type SubmitListener<State, Event> = {
153
- _type: 'submit';
154
- effect: Effect<State, Event, EventListenerResult>;
155
- options: EventOptions;
156
- };
157
- export type SupportsEvents<State, Event> = {
158
- readonly eventListeners: readonly EventListener<State, Event>[];
159
- };
160
- export type CustomEventListener<State, Event> = {
161
- _type: 'custom';
162
- eventName: string;
163
- effect: (detail: unknown) => Effect<State, Event, EventListenerResult>;
164
- options: EventOptions;
165
- };
166
- export type EventListener<State, Event> = BlurListener<State, Event> | ChangeListener<State, Event> | ClickListener<State, Event> | CustomEventListener<State, Event> | SubmitListener<State, Event> | DblClickListener<State, Event> | FocusListener<State, Event> | KeyDownListener<State, Event> | KeyUpListener<State, Event> | MouseEnterListener<State, Event> | MouseLeaveListener<State, Event> | MouseMoveListener<State, Event> | ScrollListener<State, Event> | ScrollEndListener<State, Event> | TextInputListener<State, Event> | TouchCancelListener<State, Event> | TouchEndListener<State, Event> | TouchMoveListener<State, Event> | TouchStartListener<State, Event> | WheelListener<State, Event>;
167
- export declare function eventSupport<State, Event, Elem extends SupportsEvents<State, Event>>(): {
168
- onTouchStart(this: Elem, effect: (touchData: readonly TouchData[]) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
169
- onTouchMove(this: Elem, effect: (touchData: readonly TouchData[]) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
170
- onTouchEnd(this: Elem, effect: (touchData: readonly TouchData[]) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
171
- onTouchCancel(this: Elem, effect: (touchData: readonly TouchData[]) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
172
- onTextInput(this: Elem, effect: (textState: TextState) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
173
- onWheel(this: Elem, effect: (data: WheelData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
174
- onSubmit(this: Elem, effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
175
- onScroll(this: Elem, effect: (data: ScrollData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
176
- onScrollEnd(this: Elem, effect: (data: ScrollData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
177
- onMouseMove(this: Elem, effect: (data: MouseMoveData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
178
- onMouseEnter(this: Elem, effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
179
- onMouseLeave(this: Elem, effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
180
- onDblClick(this: Elem, effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
181
- onKeyDown(this: Elem, effect: (key: KeyData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
182
- onKeyUp(this: Elem, effect: (key: KeyData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
183
- onEvent(this: Elem, eventName: string, effect: (detail: unknown) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
184
- onClick(this: Elem, effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
185
- onChange(this: Elem, effect: (data: ChangeData) => Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
186
- onFocus(this: Elem, effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
187
- onBlur(this: Elem, effect: Effect<State, Event, EventListenerResult>, options?: EventOptions): Elem;
188
- };
189
- /** Wraps `effect` and instructs the runtime to call `event.preventDefault()` after it runs. */
190
- export declare function preventDefault<State, Event>(effect: Effect<State, Event, void>): Effect<State, Event, EventActions>;
191
- /** Wraps `effect` and instructs the runtime to call `event.stopPropagation()` after it runs. */
192
- export declare function stopPropagation<State, Event>(effect: Effect<State, Event, void>): Effect<State, Event, EventActions>;
193
- /** Wraps `effect` and instructs the runtime to call both `event.stopPropagation()` and `event.preventDefault()`. */
194
- export declare function stopPropagationAndPreventDefault<State, Event>(effect: Effect<State, Event, void>): Effect<State, Event, EventActions>;
195
- export type ResizeListener<State, Event> = {
196
- _type: 'resize';
197
- onChange: (dimensions: Dimensions) => Effect<State, Event, void>;
198
- options: EventOptions;
199
- };
200
- export type PopStateListener<State, Event> = {
201
- _type: 'popstate';
202
- onChange: (location: InternalLocation) => Effect<State, Event, void>;
203
- options: EventOptions;
204
- };
205
- export type LocationChangeListener<State, Event> = {
206
- _type: 'locationchange';
207
- onChange: (location: InternalLocation) => Effect<State, Event, void>;
208
- options: EventOptions;
209
- };
210
- export type VisibilityChangeListener<State, Event> = {
211
- _type: 'visibilitychange';
212
- onChange: (state: 'visible' | 'hidden') => Effect<State, Event, void>;
213
- options: EventOptions;
214
- };
215
- export type OnlineListener<State, Event> = {
216
- _type: 'online';
217
- effect: Effect<State, Event, void>;
218
- options: EventOptions;
219
- };
220
- export type OfflineListener<State, Event> = {
221
- _type: 'offline';
222
- effect: Effect<State, Event, void>;
223
- options: EventOptions;
224
- };
225
- export type ContainerListener<State, Event> = ResizeListener<State, Event> | PopStateListener<State, Event> | LocationChangeListener<State, Event> | KeyDownListener<State, Event> | KeyUpListener<State, Event> | VisibilityChangeListener<State, Event> | OnlineListener<State, Event> | OfflineListener<State, Event>;
226
- export declare const windowContainerEventTypes: readonly ["resize", "popstate", "locationchange", "online", "offline"];
227
- export declare const documentContainerEventTypes: readonly ["keydown", "keyup", "visibilitychange"];
228
- export declare const containerEventTypes: ("keydown" | "keyup" | "resize" | "popstate" | "locationchange" | "visibilitychange" | "online" | "offline")[];
229
- export type WindowContainerEventType = (typeof windowContainerEventTypes)[number];
230
- export type DocumentContainerEventType = (typeof documentContainerEventTypes)[number];
231
- export type ContainerEventType = WindowContainerEventType | DocumentContainerEventType;
232
- //# sourceMappingURL=events.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/dom/events.ts"],"names":[],"mappings":"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"}