pulse-framework 0.1.51__py3-none-any.whl → 0.1.53__py3-none-any.whl

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 (84) hide show
  1. pulse/__init__.py +542 -562
  2. pulse/_examples.py +29 -0
  3. pulse/app.py +0 -14
  4. pulse/cli/cmd.py +96 -80
  5. pulse/cli/dependencies.py +10 -41
  6. pulse/cli/folder_lock.py +3 -3
  7. pulse/cli/helpers.py +40 -67
  8. pulse/cli/logging.py +102 -0
  9. pulse/cli/packages.py +16 -0
  10. pulse/cli/processes.py +40 -23
  11. pulse/codegen/codegen.py +70 -35
  12. pulse/codegen/js.py +2 -4
  13. pulse/codegen/templates/route.py +94 -146
  14. pulse/component.py +115 -0
  15. pulse/components/for_.py +1 -1
  16. pulse/components/if_.py +1 -1
  17. pulse/components/react_router.py +16 -22
  18. pulse/{html → dom}/events.py +1 -1
  19. pulse/{html → dom}/props.py +6 -6
  20. pulse/{html → dom}/tags.py +11 -11
  21. pulse/dom/tags.pyi +480 -0
  22. pulse/form.py +7 -6
  23. pulse/hooks/init.py +1 -13
  24. pulse/js/__init__.py +37 -41
  25. pulse/js/__init__.pyi +22 -2
  26. pulse/js/_types.py +5 -3
  27. pulse/js/array.py +121 -38
  28. pulse/js/console.py +9 -9
  29. pulse/js/date.py +22 -19
  30. pulse/js/document.py +8 -4
  31. pulse/js/error.py +12 -14
  32. pulse/js/json.py +4 -3
  33. pulse/js/map.py +17 -7
  34. pulse/js/math.py +2 -2
  35. pulse/js/navigator.py +4 -4
  36. pulse/js/number.py +8 -8
  37. pulse/js/object.py +9 -13
  38. pulse/js/promise.py +25 -9
  39. pulse/js/regexp.py +6 -6
  40. pulse/js/set.py +20 -8
  41. pulse/js/string.py +7 -7
  42. pulse/js/weakmap.py +6 -6
  43. pulse/js/weakset.py +6 -6
  44. pulse/js/window.py +17 -14
  45. pulse/messages.py +1 -4
  46. pulse/react_component.py +3 -1001
  47. pulse/render_session.py +74 -66
  48. pulse/renderer.py +311 -238
  49. pulse/routing.py +1 -10
  50. pulse/transpiler/__init__.py +84 -114
  51. pulse/transpiler/builtins.py +661 -343
  52. pulse/transpiler/errors.py +78 -2
  53. pulse/transpiler/function.py +463 -133
  54. pulse/transpiler/id.py +18 -0
  55. pulse/transpiler/imports.py +230 -325
  56. pulse/transpiler/js_module.py +218 -209
  57. pulse/transpiler/modules/__init__.py +16 -13
  58. pulse/transpiler/modules/asyncio.py +45 -26
  59. pulse/transpiler/modules/json.py +12 -8
  60. pulse/transpiler/modules/math.py +161 -216
  61. pulse/transpiler/modules/pulse/__init__.py +5 -0
  62. pulse/transpiler/modules/pulse/tags.py +231 -0
  63. pulse/transpiler/modules/typing.py +33 -28
  64. pulse/transpiler/nodes.py +1607 -923
  65. pulse/transpiler/py_module.py +118 -95
  66. pulse/transpiler/react_component.py +51 -0
  67. pulse/transpiler/transpiler.py +593 -437
  68. pulse/transpiler/vdom.py +255 -0
  69. {pulse_framework-0.1.51.dist-info → pulse_framework-0.1.53.dist-info}/METADATA +1 -1
  70. pulse_framework-0.1.53.dist-info/RECORD +120 -0
  71. pulse/html/tags.pyi +0 -470
  72. pulse/transpiler/constants.py +0 -110
  73. pulse/transpiler/context.py +0 -26
  74. pulse/transpiler/ids.py +0 -16
  75. pulse/transpiler/modules/re.py +0 -466
  76. pulse/transpiler/modules/tags.py +0 -268
  77. pulse/transpiler/utils.py +0 -4
  78. pulse/vdom.py +0 -599
  79. pulse_framework-0.1.51.dist-info/RECORD +0 -119
  80. /pulse/{html → dom}/__init__.py +0 -0
  81. /pulse/{html → dom}/elements.py +0 -0
  82. /pulse/{html → dom}/svg.py +0 -0
  83. {pulse_framework-0.1.51.dist-info → pulse_framework-0.1.53.dist-info}/WHEEL +0 -0
  84. {pulse_framework-0.1.51.dist-info → pulse_framework-0.1.53.dist-info}/entry_points.txt +0 -0
pulse/__init__.py CHANGED
@@ -39,6 +39,14 @@ from pulse.channel import (
39
39
  # Codegen
40
40
  from pulse.codegen.codegen import CodegenConfig as CodegenConfig
41
41
 
42
+ # VDOM (transpiler)
43
+ from pulse.component import (
44
+ Component as Component,
45
+ )
46
+ from pulse.component import (
47
+ component as component,
48
+ )
49
+
42
50
  # Built-in components
43
51
  from pulse.components.for_ import For as For
44
52
  from pulse.components.if_ import If as If
@@ -55,1232 +63,1232 @@ from pulse.cookies import SetCookie as SetCookie
55
63
  # Decorators
56
64
  from pulse.decorators import computed as computed
57
65
  from pulse.decorators import effect as effect
58
-
59
- # Environment
60
- from pulse.env import PulseEnv as PulseEnv
61
- from pulse.env import env as env
62
- from pulse.env import mode as mode
63
-
64
- # Forms
65
- from pulse.form import (
66
- Form as Form,
67
- )
68
- from pulse.form import (
69
- FormData as FormData,
70
- )
71
- from pulse.form import (
72
- FormValue as FormValue,
73
- )
74
- from pulse.form import (
75
- ManualForm as ManualForm,
76
- )
77
-
78
- # Helpers
79
- from pulse.helpers import (
80
- CSSProperties as CSSProperties,
81
- )
82
- from pulse.helpers import (
83
- later as later,
84
- )
85
- from pulse.helpers import (
86
- repeat as repeat,
87
- )
88
-
89
- # Hooks - Core
90
- from pulse.hooks.core import (
91
- HOOK_CONTEXT as HOOK_CONTEXT,
92
- )
93
- from pulse.hooks.core import (
94
- MISSING as MISSING,
95
- )
96
- from pulse.hooks.core import (
97
- Hook as Hook,
98
- )
99
- from pulse.hooks.core import (
100
- HookAlreadyRegisteredError as HookAlreadyRegisteredError,
101
- )
102
- from pulse.hooks.core import (
103
- HookContext as HookContext,
104
- )
105
- from pulse.hooks.core import (
106
- HookError as HookError,
107
- )
108
- from pulse.hooks.core import (
109
- HookInit as HookInit,
110
- )
111
- from pulse.hooks.core import (
112
- HookMetadata as HookMetadata,
113
- )
114
- from pulse.hooks.core import (
115
- HookNamespace as HookNamespace,
116
- )
117
- from pulse.hooks.core import (
118
- HookNotFoundError as HookNotFoundError,
119
- )
120
- from pulse.hooks.core import (
121
- HookRegistry as HookRegistry,
122
- )
123
- from pulse.hooks.core import (
124
- HookRenameCollisionError as HookRenameCollisionError,
125
- )
126
- from pulse.hooks.core import (
127
- HooksAPI as HooksAPI,
128
- )
129
- from pulse.hooks.core import (
130
- HookState as HookState,
131
- )
132
- from pulse.hooks.core import (
133
- hooks as hooks,
134
- )
135
-
136
- # Hooks - Effects
137
- from pulse.hooks.effects import EffectsHookState as EffectsHookState
138
- from pulse.hooks.effects import effects as effects
139
-
140
- # Hooks - Init
141
- from pulse.hooks.init import (
142
- init as init,
143
- )
144
- from pulse.hooks.runtime import (
145
- GLOBAL_STATES as GLOBAL_STATES,
146
- )
147
- from pulse.hooks.runtime import (
148
- GlobalStateAccessor as GlobalStateAccessor,
149
- )
150
- from pulse.hooks.runtime import (
151
- NotFoundInterrupt as NotFoundInterrupt,
152
- )
153
-
154
- # Hooks - Runtime
155
- from pulse.hooks.runtime import (
156
- RedirectInterrupt as RedirectInterrupt,
157
- )
158
- from pulse.hooks.runtime import (
159
- call_api as call_api,
160
- )
161
- from pulse.hooks.runtime import (
162
- client_address as client_address,
163
- )
164
- from pulse.hooks.runtime import (
165
- global_state as global_state,
166
- )
167
- from pulse.hooks.runtime import (
168
- navigate as navigate,
169
- )
170
- from pulse.hooks.runtime import (
171
- not_found as not_found,
172
- )
173
- from pulse.hooks.runtime import (
174
- redirect as redirect,
175
- )
176
- from pulse.hooks.runtime import (
177
- route as route,
178
- )
179
- from pulse.hooks.runtime import (
180
- server_address as server_address,
181
- )
182
- from pulse.hooks.runtime import (
183
- session as session,
184
- )
185
- from pulse.hooks.runtime import (
186
- session_id as session_id,
187
- )
188
- from pulse.hooks.runtime import (
189
- set_cookie as set_cookie,
190
- )
191
- from pulse.hooks.runtime import (
192
- websocket_id as websocket_id,
193
- )
194
-
195
- # Hooks - Setup
196
- from pulse.hooks.setup import (
197
- SetupHookState as SetupHookState,
198
- )
199
- from pulse.hooks.setup import (
200
- setup as setup,
201
- )
202
- from pulse.hooks.setup import (
203
- setup_key as setup_key,
204
- )
205
- from pulse.hooks.stable import (
206
- StableEntry as StableEntry,
207
- )
208
- from pulse.hooks.stable import (
209
- StableRegistry as StableRegistry,
210
- )
211
-
212
- # Hooks - Stable
213
- from pulse.hooks.stable import (
214
- stable as stable,
215
- )
216
-
217
- # Hooks - States
218
- from pulse.hooks.states import StatesHookState as StatesHookState
219
- from pulse.hooks.states import states as states
220
- from pulse.html.elements import (
66
+ from pulse.dom.elements import (
221
67
  GenericHTMLElement as GenericHTMLElement,
222
68
  )
223
- from pulse.html.elements import (
69
+ from pulse.dom.elements import (
224
70
  HTMLAnchorElement as HTMLAnchorElement,
225
71
  )
226
- from pulse.html.elements import (
72
+ from pulse.dom.elements import (
227
73
  HTMLAreaElement as HTMLAreaElement,
228
74
  )
229
- from pulse.html.elements import (
75
+ from pulse.dom.elements import (
230
76
  HTMLAudioElement as HTMLAudioElement,
231
77
  )
232
- from pulse.html.elements import (
78
+ from pulse.dom.elements import (
233
79
  HTMLBaseElement as HTMLBaseElement,
234
80
  )
235
- from pulse.html.elements import (
81
+ from pulse.dom.elements import (
236
82
  HTMLBodyElement as HTMLBodyElement,
237
83
  )
238
- from pulse.html.elements import (
84
+ from pulse.dom.elements import (
239
85
  HTMLBRElement as HTMLBRElement,
240
86
  )
241
- from pulse.html.elements import (
87
+ from pulse.dom.elements import (
242
88
  HTMLButtonElement as HTMLButtonElement,
243
89
  )
244
- from pulse.html.elements import (
90
+ from pulse.dom.elements import (
245
91
  HTMLCiteElement as HTMLCiteElement,
246
92
  )
247
- from pulse.html.elements import (
93
+ from pulse.dom.elements import (
248
94
  HTMLDataElement as HTMLDataElement,
249
95
  )
250
- from pulse.html.elements import (
96
+ from pulse.dom.elements import (
251
97
  HTMLDetailsElement as HTMLDetailsElement,
252
98
  )
253
- from pulse.html.elements import (
99
+ from pulse.dom.elements import (
254
100
  HTMLDialogElement as HTMLDialogElement,
255
101
  )
256
- from pulse.html.elements import (
102
+ from pulse.dom.elements import (
257
103
  HTMLDivElement as HTMLDivElement,
258
104
  )
259
- from pulse.html.elements import (
105
+ from pulse.dom.elements import (
260
106
  HTMLDListElement as HTMLDListElement,
261
107
  )
262
- from pulse.html.elements import (
108
+ from pulse.dom.elements import (
263
109
  HTMLElement as HTMLElement,
264
110
  )
265
- from pulse.html.elements import (
111
+ from pulse.dom.elements import (
266
112
  HTMLElementBase as HTMLElementBase,
267
113
  )
268
- from pulse.html.elements import (
114
+ from pulse.dom.elements import (
269
115
  HTMLEmbedElement as HTMLEmbedElement,
270
116
  )
271
- from pulse.html.elements import (
117
+ from pulse.dom.elements import (
272
118
  HTMLFieldSetElement as HTMLFieldSetElement,
273
119
  )
274
- from pulse.html.elements import (
120
+ from pulse.dom.elements import (
275
121
  HTMLFormElement as HTMLFormElement,
276
122
  )
277
- from pulse.html.elements import (
123
+ from pulse.dom.elements import (
278
124
  HTMLHeadElement as HTMLHeadElement,
279
125
  )
280
- from pulse.html.elements import (
126
+ from pulse.dom.elements import (
281
127
  HTMLHeadingElement as HTMLHeadingElement,
282
128
  )
283
- from pulse.html.elements import (
129
+ from pulse.dom.elements import (
284
130
  HTMLHRElement as HTMLHRElement,
285
131
  )
286
- from pulse.html.elements import (
132
+ from pulse.dom.elements import (
287
133
  HTMLHtmlElement as HTMLHtmlElement,
288
134
  )
289
- from pulse.html.elements import (
135
+ from pulse.dom.elements import (
290
136
  HTMLIFrameElement as HTMLIFrameElement,
291
137
  )
292
- from pulse.html.elements import (
138
+ from pulse.dom.elements import (
293
139
  HTMLImageElement as HTMLImageElement,
294
140
  )
295
- from pulse.html.elements import (
141
+ from pulse.dom.elements import (
296
142
  HTMLInputElement as HTMLInputElement,
297
143
  )
298
- from pulse.html.elements import (
144
+ from pulse.dom.elements import (
299
145
  HTMLLabelElement as HTMLLabelElement,
300
146
  )
301
- from pulse.html.elements import (
147
+ from pulse.dom.elements import (
302
148
  HTMLLiElement as HTMLLiElement,
303
149
  )
304
- from pulse.html.elements import (
150
+ from pulse.dom.elements import (
305
151
  HTMLLinkElement as HTMLLinkElement,
306
152
  )
307
- from pulse.html.elements import (
153
+ from pulse.dom.elements import (
308
154
  HTMLMapElement as HTMLMapElement,
309
155
  )
310
- from pulse.html.elements import (
156
+ from pulse.dom.elements import (
311
157
  HTMLMediaElement as HTMLMediaElement,
312
158
  )
313
- from pulse.html.elements import (
159
+ from pulse.dom.elements import (
314
160
  HTMLMenuElement as HTMLMenuElement,
315
161
  )
316
- from pulse.html.elements import (
162
+ from pulse.dom.elements import (
317
163
  HTMLMetaElement as HTMLMetaElement,
318
164
  )
319
- from pulse.html.elements import (
165
+ from pulse.dom.elements import (
320
166
  HTMLMeterElement as HTMLMeterElement,
321
167
  )
322
- from pulse.html.elements import (
168
+ from pulse.dom.elements import (
323
169
  HTMLModElement as HTMLModElement,
324
170
  )
325
- from pulse.html.elements import (
171
+ from pulse.dom.elements import (
326
172
  HTMLObjectElement as HTMLObjectElement,
327
173
  )
328
- from pulse.html.elements import (
174
+ from pulse.dom.elements import (
329
175
  HTMLOListElement as HTMLOListElement,
330
176
  )
331
- from pulse.html.elements import (
177
+ from pulse.dom.elements import (
332
178
  HTMLOptGroupElement as HTMLOptGroupElement,
333
179
  )
334
- from pulse.html.elements import (
180
+ from pulse.dom.elements import (
335
181
  HTMLOptionElement as HTMLOptionElement,
336
182
  )
337
183
 
338
184
  # HTML Elements
339
- from pulse.html.elements import (
185
+ from pulse.dom.elements import (
340
186
  HTMLOrSVGElement as HTMLOrSVGElement,
341
187
  )
342
- from pulse.html.elements import (
188
+ from pulse.dom.elements import (
343
189
  HTMLOutputElement as HTMLOutputElement,
344
190
  )
345
- from pulse.html.elements import (
191
+ from pulse.dom.elements import (
346
192
  HTMLParagraphElement as HTMLParagraphElement,
347
193
  )
348
- from pulse.html.elements import (
194
+ from pulse.dom.elements import (
349
195
  HTMLPictureElement as HTMLPictureElement,
350
196
  )
351
- from pulse.html.elements import (
197
+ from pulse.dom.elements import (
352
198
  HTMLPreElement as HTMLPreElement,
353
199
  )
354
- from pulse.html.elements import (
200
+ from pulse.dom.elements import (
355
201
  HTMLProgressElement as HTMLProgressElement,
356
202
  )
357
- from pulse.html.elements import (
203
+ from pulse.dom.elements import (
358
204
  HTMLQuoteElement as HTMLQuoteElement,
359
205
  )
360
- from pulse.html.elements import (
206
+ from pulse.dom.elements import (
361
207
  HTMLScriptElement as HTMLScriptElement,
362
208
  )
363
- from pulse.html.elements import (
209
+ from pulse.dom.elements import (
364
210
  HTMLSelectElement as HTMLSelectElement,
365
211
  )
366
- from pulse.html.elements import (
212
+ from pulse.dom.elements import (
367
213
  HTMLSlotElement as HTMLSlotElement,
368
214
  )
369
- from pulse.html.elements import (
215
+ from pulse.dom.elements import (
370
216
  HTMLSourceElement as HTMLSourceElement,
371
217
  )
372
- from pulse.html.elements import (
218
+ from pulse.dom.elements import (
373
219
  HTMLSpanElement as HTMLSpanElement,
374
220
  )
375
- from pulse.html.elements import (
221
+ from pulse.dom.elements import (
376
222
  HTMLStyleElement as HTMLStyleElement,
377
223
  )
378
- from pulse.html.elements import (
224
+ from pulse.dom.elements import (
379
225
  HTMLTableCaptionElement as HTMLTableCaptionElement,
380
226
  )
381
- from pulse.html.elements import (
227
+ from pulse.dom.elements import (
382
228
  HTMLTableCellElement as HTMLTableCellElement,
383
229
  )
384
- from pulse.html.elements import (
230
+ from pulse.dom.elements import (
385
231
  HTMLTableColElement as HTMLTableColElement,
386
232
  )
387
- from pulse.html.elements import (
233
+ from pulse.dom.elements import (
388
234
  HTMLTableElement as HTMLTableElement,
389
235
  )
390
- from pulse.html.elements import (
236
+ from pulse.dom.elements import (
391
237
  HTMLTableRowElement as HTMLTableRowElement,
392
238
  )
393
- from pulse.html.elements import (
239
+ from pulse.dom.elements import (
394
240
  HTMLTableSectionElement as HTMLTableSectionElement,
395
241
  )
396
- from pulse.html.elements import (
242
+ from pulse.dom.elements import (
397
243
  HTMLTemplateElement as HTMLTemplateElement,
398
244
  )
399
- from pulse.html.elements import (
245
+ from pulse.dom.elements import (
400
246
  HTMLTextAreaElement as HTMLTextAreaElement,
401
247
  )
402
- from pulse.html.elements import (
248
+ from pulse.dom.elements import (
403
249
  HTMLTimeElement as HTMLTimeElement,
404
250
  )
405
- from pulse.html.elements import (
251
+ from pulse.dom.elements import (
406
252
  HTMLTitleElement as HTMLTitleElement,
407
253
  )
408
- from pulse.html.elements import (
254
+ from pulse.dom.elements import (
409
255
  HTMLTrackElement as HTMLTrackElement,
410
256
  )
411
- from pulse.html.elements import (
257
+ from pulse.dom.elements import (
412
258
  HTMLUListElement as HTMLUListElement,
413
259
  )
414
- from pulse.html.elements import (
260
+ from pulse.dom.elements import (
415
261
  HTMLVideoElement as HTMLVideoElement,
416
262
  )
417
- from pulse.html.events import (
263
+ from pulse.dom.events import (
418
264
  AnimationEvent as AnimationEvent,
419
265
  )
420
- from pulse.html.events import (
266
+ from pulse.dom.events import (
421
267
  ChangeEvent as ChangeEvent,
422
268
  )
423
- from pulse.html.events import (
269
+ from pulse.dom.events import (
424
270
  ClipboardEvent as ClipboardEvent,
425
271
  )
426
- from pulse.html.events import (
272
+ from pulse.dom.events import (
427
273
  CompositionEvent as CompositionEvent,
428
274
  )
429
- from pulse.html.events import (
275
+ from pulse.dom.events import (
430
276
  DataTransfer as DataTransfer,
431
277
  )
432
278
 
433
279
  # HTML Events
434
- from pulse.html.events import (
280
+ from pulse.dom.events import (
435
281
  DataTransferItem as DataTransferItem,
436
282
  )
437
- from pulse.html.events import (
283
+ from pulse.dom.events import (
438
284
  DialogDOMEvents as DialogDOMEvents,
439
285
  )
440
- from pulse.html.events import (
286
+ from pulse.dom.events import (
441
287
  DOMEvents as DOMEvents,
442
288
  )
443
- from pulse.html.events import (
289
+ from pulse.dom.events import (
444
290
  DragEvent as DragEvent,
445
291
  )
446
- from pulse.html.events import (
292
+ from pulse.dom.events import (
447
293
  FocusEvent as FocusEvent,
448
294
  )
449
- from pulse.html.events import (
295
+ from pulse.dom.events import (
450
296
  FormControlDOMEvents as FormControlDOMEvents,
451
297
  )
452
- from pulse.html.events import (
298
+ from pulse.dom.events import (
453
299
  FormEvent as FormEvent,
454
300
  )
455
- from pulse.html.events import (
301
+ from pulse.dom.events import (
456
302
  InputDOMEvents as InputDOMEvents,
457
303
  )
458
- from pulse.html.events import (
304
+ from pulse.dom.events import (
459
305
  InvalidEvent as InvalidEvent,
460
306
  )
461
- from pulse.html.events import (
307
+ from pulse.dom.events import (
462
308
  KeyboardEvent as KeyboardEvent,
463
309
  )
464
- from pulse.html.events import (
310
+ from pulse.dom.events import (
465
311
  MouseEvent as MouseEvent,
466
312
  )
467
- from pulse.html.events import (
313
+ from pulse.dom.events import (
468
314
  PointerEvent as PointerEvent,
469
315
  )
470
- from pulse.html.events import (
316
+ from pulse.dom.events import (
471
317
  SelectDOMEvents as SelectDOMEvents,
472
318
  )
473
- from pulse.html.events import (
319
+ from pulse.dom.events import (
474
320
  SyntheticEvent as SyntheticEvent,
475
321
  )
476
- from pulse.html.events import (
322
+ from pulse.dom.events import (
477
323
  TextAreaDOMEvents as TextAreaDOMEvents,
478
324
  )
479
- from pulse.html.events import (
325
+ from pulse.dom.events import (
480
326
  ToggleEvent as ToggleEvent,
481
327
  )
482
- from pulse.html.events import (
328
+ from pulse.dom.events import (
483
329
  Touch as Touch,
484
330
  )
485
- from pulse.html.events import (
331
+ from pulse.dom.events import (
486
332
  TouchEvent as TouchEvent,
487
333
  )
488
- from pulse.html.events import (
334
+ from pulse.dom.events import (
489
335
  TransitionEvent as TransitionEvent,
490
336
  )
491
- from pulse.html.events import (
337
+ from pulse.dom.events import (
492
338
  UIEvent as UIEvent,
493
339
  )
494
- from pulse.html.events import (
340
+ from pulse.dom.events import (
495
341
  WheelEvent as WheelEvent,
496
342
  )
497
- from pulse.html.props import (
343
+ from pulse.dom.props import (
498
344
  BaseHTMLProps as BaseHTMLProps,
499
345
  )
500
346
 
501
347
  # HTML Props
502
- from pulse.html.props import (
348
+ from pulse.dom.props import (
503
349
  ClassName as ClassName,
504
350
  )
505
- from pulse.html.props import (
351
+ from pulse.dom.props import (
506
352
  HTMLAbbrProps as HTMLAbbrProps,
507
353
  )
508
- from pulse.html.props import (
354
+ from pulse.dom.props import (
509
355
  HTMLAddressProps as HTMLAddressProps,
510
356
  )
511
- from pulse.html.props import (
357
+ from pulse.dom.props import (
512
358
  HTMLAnchorProps as HTMLAnchorProps,
513
359
  )
514
- from pulse.html.props import (
360
+ from pulse.dom.props import (
515
361
  HTMLAreaProps as HTMLAreaProps,
516
362
  )
517
- from pulse.html.props import (
363
+ from pulse.dom.props import (
518
364
  HTMLArticleProps as HTMLArticleProps,
519
365
  )
520
- from pulse.html.props import (
366
+ from pulse.dom.props import (
521
367
  HTMLAsideProps as HTMLAsideProps,
522
368
  )
523
- from pulse.html.props import (
369
+ from pulse.dom.props import (
524
370
  HTMLAudioProps as HTMLAudioProps,
525
371
  )
526
- from pulse.html.props import (
372
+ from pulse.dom.props import (
527
373
  HTMLBaseProps as HTMLBaseProps,
528
374
  )
529
- from pulse.html.props import (
375
+ from pulse.dom.props import (
530
376
  HTMLBDIProps as HTMLBDIProps,
531
377
  )
532
- from pulse.html.props import (
378
+ from pulse.dom.props import (
533
379
  HTMLBDOProps as HTMLBDOProps,
534
380
  )
535
- from pulse.html.props import (
381
+ from pulse.dom.props import (
536
382
  HTMLBlockquoteProps as HTMLBlockquoteProps,
537
383
  )
538
- from pulse.html.props import (
384
+ from pulse.dom.props import (
539
385
  HTMLBodyProps as HTMLBodyProps,
540
386
  )
541
- from pulse.html.props import (
387
+ from pulse.dom.props import (
542
388
  HTMLBProps as HTMLBProps,
543
389
  )
544
- from pulse.html.props import (
390
+ from pulse.dom.props import (
545
391
  HTMLBRProps as HTMLBRProps,
546
392
  )
547
- from pulse.html.props import (
393
+ from pulse.dom.props import (
548
394
  HTMLButtonProps as HTMLButtonProps,
549
395
  )
550
- from pulse.html.props import (
396
+ from pulse.dom.props import (
551
397
  HTMLCanvasProps as HTMLCanvasProps,
552
398
  )
553
- from pulse.html.props import (
399
+ from pulse.dom.props import (
554
400
  HTMLCaptionProps as HTMLCaptionProps,
555
401
  )
556
- from pulse.html.props import (
402
+ from pulse.dom.props import (
557
403
  HTMLCircleProps as HTMLCircleProps,
558
404
  )
559
- from pulse.html.props import (
405
+ from pulse.dom.props import (
560
406
  HTMLCiteProps as HTMLCiteProps,
561
407
  )
562
- from pulse.html.props import (
408
+ from pulse.dom.props import (
563
409
  HTMLClipPathProps as HTMLClipPathProps,
564
410
  )
565
- from pulse.html.props import (
411
+ from pulse.dom.props import (
566
412
  HTMLCodeProps as HTMLCodeProps,
567
413
  )
568
- from pulse.html.props import (
414
+ from pulse.dom.props import (
569
415
  HTMLColgroupProps as HTMLColgroupProps,
570
416
  )
571
- from pulse.html.props import (
417
+ from pulse.dom.props import (
572
418
  HTMLColProps as HTMLColProps,
573
419
  )
574
- from pulse.html.props import (
420
+ from pulse.dom.props import (
575
421
  HTMLDatalistProps as HTMLDatalistProps,
576
422
  )
577
- from pulse.html.props import (
423
+ from pulse.dom.props import (
578
424
  HTMLDataProps as HTMLDataProps,
579
425
  )
580
- from pulse.html.props import (
426
+ from pulse.dom.props import (
581
427
  HTMLDDProps as HTMLDDProps,
582
428
  )
583
- from pulse.html.props import (
429
+ from pulse.dom.props import (
584
430
  HTMLDefsProps as HTMLDefsProps,
585
431
  )
586
- from pulse.html.props import (
432
+ from pulse.dom.props import (
587
433
  HTMLDelProps as HTMLDelProps,
588
434
  )
589
- from pulse.html.props import (
435
+ from pulse.dom.props import (
590
436
  HTMLDetailsProps as HTMLDetailsProps,
591
437
  )
592
- from pulse.html.props import (
438
+ from pulse.dom.props import (
593
439
  HTMLDFNProps as HTMLDFNProps,
594
440
  )
595
- from pulse.html.props import (
441
+ from pulse.dom.props import (
596
442
  HTMLDialogProps as HTMLDialogProps,
597
443
  )
598
- from pulse.html.props import (
444
+ from pulse.dom.props import (
599
445
  HTMLDivProps as HTMLDivProps,
600
446
  )
601
- from pulse.html.props import (
447
+ from pulse.dom.props import (
602
448
  HTMLDLProps as HTMLDLProps,
603
449
  )
604
- from pulse.html.props import (
450
+ from pulse.dom.props import (
605
451
  HTMLDTProps as HTMLDTProps,
606
452
  )
607
- from pulse.html.props import (
453
+ from pulse.dom.props import (
608
454
  HTMLEllipseProps as HTMLEllipseProps,
609
455
  )
610
- from pulse.html.props import (
456
+ from pulse.dom.props import (
611
457
  HTMLEmbedProps as HTMLEmbedProps,
612
458
  )
613
- from pulse.html.props import (
459
+ from pulse.dom.props import (
614
460
  HTMLEMProps as HTMLEMProps,
615
461
  )
616
- from pulse.html.props import (
462
+ from pulse.dom.props import (
617
463
  HTMLFieldsetProps as HTMLFieldsetProps,
618
464
  )
619
- from pulse.html.props import (
465
+ from pulse.dom.props import (
620
466
  HTMLFigcaptionProps as HTMLFigcaptionProps,
621
467
  )
622
- from pulse.html.props import (
468
+ from pulse.dom.props import (
623
469
  HTMLFigureProps as HTMLFigureProps,
624
470
  )
625
- from pulse.html.props import (
471
+ from pulse.dom.props import (
626
472
  HTMLFooterProps as HTMLFooterProps,
627
473
  )
628
- from pulse.html.props import (
474
+ from pulse.dom.props import (
629
475
  HTMLFormProps as HTMLFormProps,
630
476
  )
631
- from pulse.html.props import (
477
+ from pulse.dom.props import (
632
478
  HTMLFragmentProps as HTMLFragmentProps,
633
479
  )
634
- from pulse.html.props import (
480
+ from pulse.dom.props import (
635
481
  HTMLGProps as HTMLGProps,
636
482
  )
637
- from pulse.html.props import (
483
+ from pulse.dom.props import (
638
484
  HTMLH1Props as HTMLH1Props,
639
485
  )
640
- from pulse.html.props import (
486
+ from pulse.dom.props import (
641
487
  HTMLH2Props as HTMLH2Props,
642
488
  )
643
- from pulse.html.props import (
489
+ from pulse.dom.props import (
644
490
  HTMLH3Props as HTMLH3Props,
645
491
  )
646
- from pulse.html.props import (
492
+ from pulse.dom.props import (
647
493
  HTMLH4Props as HTMLH4Props,
648
494
  )
649
- from pulse.html.props import (
495
+ from pulse.dom.props import (
650
496
  HTMLH5Props as HTMLH5Props,
651
497
  )
652
- from pulse.html.props import (
498
+ from pulse.dom.props import (
653
499
  HTMLH6Props as HTMLH6Props,
654
500
  )
655
- from pulse.html.props import (
501
+ from pulse.dom.props import (
656
502
  HTMLHeaderProps as HTMLHeaderProps,
657
503
  )
658
- from pulse.html.props import (
504
+ from pulse.dom.props import (
659
505
  HTMLHeadProps as HTMLHeadProps,
660
506
  )
661
- from pulse.html.props import (
507
+ from pulse.dom.props import (
662
508
  HTMLHgroupProps as HTMLHgroupProps,
663
509
  )
664
- from pulse.html.props import (
510
+ from pulse.dom.props import (
665
511
  HTMLHRProps as HTMLHRProps,
666
512
  )
667
- from pulse.html.props import (
513
+ from pulse.dom.props import (
668
514
  HTMLHtmlProps as HTMLHtmlProps,
669
515
  )
670
- from pulse.html.props import (
516
+ from pulse.dom.props import (
671
517
  HTMLIframeProps as HTMLIframeProps,
672
518
  )
673
- from pulse.html.props import (
519
+ from pulse.dom.props import (
674
520
  HTMLImgProps as HTMLImgProps,
675
521
  )
676
- from pulse.html.props import (
522
+ from pulse.dom.props import (
677
523
  HTMLInputProps as HTMLInputProps,
678
524
  )
679
- from pulse.html.props import (
525
+ from pulse.dom.props import (
680
526
  HTMLInsProps as HTMLInsProps,
681
527
  )
682
- from pulse.html.props import (
528
+ from pulse.dom.props import (
683
529
  HTMLIProps as HTMLIProps,
684
530
  )
685
- from pulse.html.props import (
531
+ from pulse.dom.props import (
686
532
  HTMLKBDProps as HTMLKBDProps,
687
533
  )
688
- from pulse.html.props import (
534
+ from pulse.dom.props import (
689
535
  HTMLKeygenProps as HTMLKeygenProps,
690
536
  )
691
- from pulse.html.props import (
537
+ from pulse.dom.props import (
692
538
  HTMLLabelProps as HTMLLabelProps,
693
539
  )
694
- from pulse.html.props import (
540
+ from pulse.dom.props import (
695
541
  HTMLLegendProps as HTMLLegendProps,
696
542
  )
697
- from pulse.html.props import (
543
+ from pulse.dom.props import (
698
544
  HTMLLineProps as HTMLLineProps,
699
545
  )
700
- from pulse.html.props import (
546
+ from pulse.dom.props import (
701
547
  HTMLLinkProps as HTMLLinkProps,
702
548
  )
703
- from pulse.html.props import (
549
+ from pulse.dom.props import (
704
550
  HTMLLiProps as HTMLLiProps,
705
551
  )
706
- from pulse.html.props import (
552
+ from pulse.dom.props import (
707
553
  HTMLMainProps as HTMLMainProps,
708
554
  )
709
- from pulse.html.props import (
555
+ from pulse.dom.props import (
710
556
  HTMLMapProps as HTMLMapProps,
711
557
  )
712
- from pulse.html.props import (
558
+ from pulse.dom.props import (
713
559
  HTMLMarkProps as HTMLMarkProps,
714
560
  )
715
- from pulse.html.props import (
561
+ from pulse.dom.props import (
716
562
  HTMLMaskProps as HTMLMaskProps,
717
563
  )
718
- from pulse.html.props import (
564
+ from pulse.dom.props import (
719
565
  HTMLMediaProps as HTMLMediaProps,
720
566
  )
721
- from pulse.html.props import (
567
+ from pulse.dom.props import (
722
568
  HTMLMenuProps as HTMLMenuProps,
723
569
  )
724
- from pulse.html.props import (
570
+ from pulse.dom.props import (
725
571
  HTMLMetaProps as HTMLMetaProps,
726
572
  )
727
- from pulse.html.props import (
573
+ from pulse.dom.props import (
728
574
  HTMLMeterProps as HTMLMeterProps,
729
575
  )
730
- from pulse.html.props import (
576
+ from pulse.dom.props import (
731
577
  HTMLNavProps as HTMLNavProps,
732
578
  )
733
- from pulse.html.props import (
579
+ from pulse.dom.props import (
734
580
  HTMLNoscriptProps as HTMLNoscriptProps,
735
581
  )
736
- from pulse.html.props import (
582
+ from pulse.dom.props import (
737
583
  HTMLObjectProps as HTMLObjectProps,
738
584
  )
739
- from pulse.html.props import (
585
+ from pulse.dom.props import (
740
586
  HTMLOlProps as HTMLOlProps,
741
587
  )
742
- from pulse.html.props import (
588
+ from pulse.dom.props import (
743
589
  HTMLOptgroupProps as HTMLOptgroupProps,
744
590
  )
745
- from pulse.html.props import (
591
+ from pulse.dom.props import (
746
592
  HTMLOptionProps as HTMLOptionProps,
747
593
  )
748
- from pulse.html.props import (
594
+ from pulse.dom.props import (
749
595
  HTMLOutputProps as HTMLOutputProps,
750
596
  )
751
- from pulse.html.props import (
597
+ from pulse.dom.props import (
752
598
  HTMLParamProps as HTMLParamProps,
753
599
  )
754
- from pulse.html.props import (
600
+ from pulse.dom.props import (
755
601
  HTMLPathProps as HTMLPathProps,
756
602
  )
757
- from pulse.html.props import (
603
+ from pulse.dom.props import (
758
604
  HTMLPatternProps as HTMLPatternProps,
759
605
  )
760
- from pulse.html.props import (
606
+ from pulse.dom.props import (
761
607
  HTMLPictureProps as HTMLPictureProps,
762
608
  )
763
- from pulse.html.props import (
609
+ from pulse.dom.props import (
764
610
  HTMLPolygonProps as HTMLPolygonProps,
765
611
  )
766
- from pulse.html.props import (
612
+ from pulse.dom.props import (
767
613
  HTMLPolylineProps as HTMLPolylineProps,
768
614
  )
769
- from pulse.html.props import (
615
+ from pulse.dom.props import (
770
616
  HTMLPProps as HTMLPProps,
771
617
  )
772
- from pulse.html.props import (
618
+ from pulse.dom.props import (
773
619
  HTMLPreProps as HTMLPreProps,
774
620
  )
775
- from pulse.html.props import (
621
+ from pulse.dom.props import (
776
622
  HTMLProgressProps as HTMLProgressProps,
777
623
  )
778
- from pulse.html.props import (
624
+ from pulse.dom.props import (
779
625
  HTMLProps as HTMLProps,
780
626
  )
781
- from pulse.html.props import (
627
+ from pulse.dom.props import (
782
628
  HTMLQProps as HTMLQProps,
783
629
  )
784
- from pulse.html.props import (
630
+ from pulse.dom.props import (
785
631
  HTMLQuoteProps as HTMLQuoteProps,
786
632
  )
787
- from pulse.html.props import (
633
+ from pulse.dom.props import (
788
634
  HTMLRectProps as HTMLRectProps,
789
635
  )
790
- from pulse.html.props import (
636
+ from pulse.dom.props import (
791
637
  HTMLRPProps as HTMLRPProps,
792
638
  )
793
- from pulse.html.props import (
639
+ from pulse.dom.props import (
794
640
  HTMLRTProps as HTMLRTProps,
795
641
  )
796
- from pulse.html.props import (
642
+ from pulse.dom.props import (
797
643
  HTMLRubyProps as HTMLRubyProps,
798
644
  )
799
- from pulse.html.props import (
645
+ from pulse.dom.props import (
800
646
  HTMLSampProps as HTMLSampProps,
801
647
  )
802
- from pulse.html.props import (
648
+ from pulse.dom.props import (
803
649
  HTMLScriptProps as HTMLScriptProps,
804
650
  )
805
- from pulse.html.props import (
651
+ from pulse.dom.props import (
806
652
  HTMLSectionProps as HTMLSectionProps,
807
653
  )
808
- from pulse.html.props import (
654
+ from pulse.dom.props import (
809
655
  HTMLSelectProps as HTMLSelectProps,
810
656
  )
811
- from pulse.html.props import (
657
+ from pulse.dom.props import (
812
658
  HTMLSlotProps as HTMLSlotProps,
813
659
  )
814
- from pulse.html.props import (
660
+ from pulse.dom.props import (
815
661
  HTMLSmallProps as HTMLSmallProps,
816
662
  )
817
- from pulse.html.props import (
663
+ from pulse.dom.props import (
818
664
  HTMLSourceProps as HTMLSourceProps,
819
665
  )
820
- from pulse.html.props import (
666
+ from pulse.dom.props import (
821
667
  HTMLSpanProps as HTMLSpanProps,
822
668
  )
823
- from pulse.html.props import (
669
+ from pulse.dom.props import (
824
670
  HTMLSProps as HTMLSProps,
825
671
  )
826
- from pulse.html.props import (
672
+ from pulse.dom.props import (
827
673
  HTMLStrongProps as HTMLStrongProps,
828
674
  )
829
- from pulse.html.props import (
675
+ from pulse.dom.props import (
830
676
  HTMLStyleProps as HTMLStyleProps,
831
677
  )
832
- from pulse.html.props import (
678
+ from pulse.dom.props import (
833
679
  HTMLSubProps as HTMLSubProps,
834
680
  )
835
- from pulse.html.props import (
681
+ from pulse.dom.props import (
836
682
  HTMLSummaryProps as HTMLSummaryProps,
837
683
  )
838
- from pulse.html.props import (
684
+ from pulse.dom.props import (
839
685
  HTMLSupProps as HTMLSupProps,
840
686
  )
841
- from pulse.html.props import (
687
+ from pulse.dom.props import (
842
688
  HTMLSVGProps as HTMLSVGProps,
843
689
  )
844
- from pulse.html.props import (
690
+ from pulse.dom.props import (
845
691
  HTMLTableProps as HTMLTableProps,
846
692
  )
847
- from pulse.html.props import (
693
+ from pulse.dom.props import (
848
694
  HTMLTBODYProps as HTMLTBODYProps,
849
695
  )
850
- from pulse.html.props import (
696
+ from pulse.dom.props import (
851
697
  HTMLTdProps as HTMLTdProps,
852
698
  )
853
- from pulse.html.props import (
699
+ from pulse.dom.props import (
854
700
  HTMLTemplateProps as HTMLTemplateProps,
855
701
  )
856
- from pulse.html.props import (
702
+ from pulse.dom.props import (
857
703
  HTMLTextareaProps as HTMLTextareaProps,
858
704
  )
859
- from pulse.html.props import (
705
+ from pulse.dom.props import (
860
706
  HTMLTextProps as HTMLTextProps,
861
707
  )
862
- from pulse.html.props import (
708
+ from pulse.dom.props import (
863
709
  HTMLThProps as HTMLThProps,
864
710
  )
865
- from pulse.html.props import (
711
+ from pulse.dom.props import (
866
712
  HTMLTimeProps as HTMLTimeProps,
867
713
  )
868
- from pulse.html.props import (
714
+ from pulse.dom.props import (
869
715
  HTMLTitleProps as HTMLTitleProps,
870
716
  )
871
- from pulse.html.props import (
717
+ from pulse.dom.props import (
872
718
  HTMLTrackProps as HTMLTrackProps,
873
719
  )
874
- from pulse.html.props import (
720
+ from pulse.dom.props import (
875
721
  HTMLTspanProps as HTMLTspanProps,
876
722
  )
877
- from pulse.html.props import (
723
+ from pulse.dom.props import (
878
724
  HTMLULProps as HTMLULProps,
879
725
  )
880
- from pulse.html.props import (
726
+ from pulse.dom.props import (
881
727
  HTMLUProps as HTMLUProps,
882
728
  )
883
- from pulse.html.props import (
729
+ from pulse.dom.props import (
884
730
  HTMLUseProps as HTMLUseProps,
885
731
  )
886
- from pulse.html.props import (
732
+ from pulse.dom.props import (
887
733
  HTMLVarProps as HTMLVarProps,
888
734
  )
889
- from pulse.html.props import (
735
+ from pulse.dom.props import (
890
736
  HTMLVideoProps as HTMLVideoProps,
891
737
  )
892
- from pulse.html.props import (
738
+ from pulse.dom.props import (
893
739
  HTMLWBRProps as HTMLWBRProps,
894
740
  )
895
- from pulse.html.props import (
741
+ from pulse.dom.props import (
896
742
  WebViewAttributes as WebViewAttributes,
897
743
  )
898
744
 
899
745
  # HTML Tags
900
- from pulse.html.tags import (
746
+ from pulse.dom.tags import (
901
747
  a as a,
902
748
  )
903
- from pulse.html.tags import (
749
+ from pulse.dom.tags import (
904
750
  abbr as abbr,
905
751
  )
906
- from pulse.html.tags import (
752
+ from pulse.dom.tags import (
907
753
  address as address,
908
754
  )
909
- from pulse.html.tags import (
755
+ from pulse.dom.tags import (
910
756
  area as area,
911
757
  )
912
- from pulse.html.tags import (
758
+ from pulse.dom.tags import (
913
759
  article as article,
914
760
  )
915
- from pulse.html.tags import (
761
+ from pulse.dom.tags import (
916
762
  aside as aside,
917
763
  )
918
- from pulse.html.tags import (
764
+ from pulse.dom.tags import (
919
765
  audio as audio,
920
766
  )
921
- from pulse.html.tags import (
767
+ from pulse.dom.tags import (
922
768
  b as b,
923
769
  )
924
- from pulse.html.tags import (
770
+ from pulse.dom.tags import (
925
771
  base as base,
926
772
  )
927
- from pulse.html.tags import (
773
+ from pulse.dom.tags import (
928
774
  bdi as bdi,
929
775
  )
930
- from pulse.html.tags import (
776
+ from pulse.dom.tags import (
931
777
  bdo as bdo,
932
778
  )
933
- from pulse.html.tags import (
779
+ from pulse.dom.tags import (
934
780
  blockquote as blockquote,
935
781
  )
936
- from pulse.html.tags import (
782
+ from pulse.dom.tags import (
937
783
  body as body,
938
784
  )
939
- from pulse.html.tags import (
785
+ from pulse.dom.tags import (
940
786
  br as br,
941
787
  )
942
- from pulse.html.tags import (
788
+ from pulse.dom.tags import (
943
789
  button as button,
944
790
  )
945
- from pulse.html.tags import (
791
+ from pulse.dom.tags import (
946
792
  canvas as canvas,
947
793
  )
948
- from pulse.html.tags import (
794
+ from pulse.dom.tags import (
949
795
  caption as caption,
950
796
  )
951
- from pulse.html.tags import (
797
+ from pulse.dom.tags import (
952
798
  circle as circle,
953
799
  )
954
- from pulse.html.tags import (
800
+ from pulse.dom.tags import (
955
801
  cite as cite,
956
802
  )
957
- from pulse.html.tags import (
803
+ from pulse.dom.tags import (
958
804
  clipPath as clipPath,
959
805
  )
960
- from pulse.html.tags import (
806
+ from pulse.dom.tags import (
961
807
  code as code,
962
808
  )
963
- from pulse.html.tags import (
809
+ from pulse.dom.tags import (
964
810
  col as col,
965
811
  )
966
- from pulse.html.tags import (
812
+ from pulse.dom.tags import (
967
813
  colgroup as colgroup,
968
814
  )
969
- from pulse.html.tags import (
815
+ from pulse.dom.tags import (
970
816
  data as data,
971
817
  )
972
- from pulse.html.tags import (
818
+ from pulse.dom.tags import (
973
819
  datalist as datalist,
974
820
  )
975
- from pulse.html.tags import (
821
+ from pulse.dom.tags import (
976
822
  dd as dd,
977
823
  )
978
- from pulse.html.tags import (
824
+ from pulse.dom.tags import (
979
825
  defs as defs,
980
826
  )
981
- from pulse.html.tags import (
827
+ from pulse.dom.tags import (
982
828
  del_ as del_,
983
829
  )
984
- from pulse.html.tags import (
830
+ from pulse.dom.tags import (
985
831
  details as details,
986
832
  )
987
- from pulse.html.tags import (
833
+ from pulse.dom.tags import (
988
834
  dfn as dfn,
989
835
  )
990
- from pulse.html.tags import (
836
+ from pulse.dom.tags import (
991
837
  dialog as dialog,
992
838
  )
993
- from pulse.html.tags import (
839
+ from pulse.dom.tags import (
994
840
  div as div,
995
841
  )
996
- from pulse.html.tags import (
842
+ from pulse.dom.tags import (
997
843
  dl as dl,
998
844
  )
999
- from pulse.html.tags import (
845
+ from pulse.dom.tags import (
1000
846
  dt as dt,
1001
847
  )
1002
- from pulse.html.tags import (
848
+ from pulse.dom.tags import (
1003
849
  ellipse as ellipse,
1004
850
  )
1005
- from pulse.html.tags import (
851
+ from pulse.dom.tags import (
1006
852
  em as em,
1007
853
  )
1008
- from pulse.html.tags import (
854
+ from pulse.dom.tags import (
1009
855
  embed as embed,
1010
856
  )
1011
- from pulse.html.tags import (
857
+ from pulse.dom.tags import (
1012
858
  fieldset as fieldset,
1013
859
  )
1014
- from pulse.html.tags import (
860
+ from pulse.dom.tags import (
1015
861
  figcaption as figcaption,
1016
862
  )
1017
- from pulse.html.tags import (
863
+ from pulse.dom.tags import (
1018
864
  figure as figure,
1019
865
  )
1020
- from pulse.html.tags import (
866
+ from pulse.dom.tags import (
1021
867
  footer as footer,
1022
868
  )
1023
- from pulse.html.tags import (
869
+ from pulse.dom.tags import (
1024
870
  form as form,
1025
871
  )
1026
- from pulse.html.tags import (
872
+ from pulse.dom.tags import (
1027
873
  fragment as fragment,
1028
874
  )
1029
- from pulse.html.tags import (
875
+ from pulse.dom.tags import (
1030
876
  g as g,
1031
877
  )
1032
- from pulse.html.tags import (
878
+ from pulse.dom.tags import (
1033
879
  h1 as h1,
1034
880
  )
1035
- from pulse.html.tags import (
881
+ from pulse.dom.tags import (
1036
882
  h2 as h2,
1037
883
  )
1038
- from pulse.html.tags import (
884
+ from pulse.dom.tags import (
1039
885
  h3 as h3,
1040
886
  )
1041
- from pulse.html.tags import (
887
+ from pulse.dom.tags import (
1042
888
  h4 as h4,
1043
889
  )
1044
- from pulse.html.tags import (
890
+ from pulse.dom.tags import (
1045
891
  h5 as h5,
1046
892
  )
1047
- from pulse.html.tags import (
893
+ from pulse.dom.tags import (
1048
894
  h6 as h6,
1049
895
  )
1050
- from pulse.html.tags import (
896
+ from pulse.dom.tags import (
1051
897
  head as head,
1052
898
  )
1053
- from pulse.html.tags import (
899
+ from pulse.dom.tags import (
1054
900
  header as header,
1055
901
  )
1056
- from pulse.html.tags import (
902
+ from pulse.dom.tags import (
1057
903
  hgroup as hgroup,
1058
904
  )
1059
- from pulse.html.tags import (
905
+ from pulse.dom.tags import (
1060
906
  hr as hr,
1061
907
  )
1062
- from pulse.html.tags import (
908
+ from pulse.dom.tags import (
1063
909
  html as html,
1064
910
  )
1065
- from pulse.html.tags import (
911
+ from pulse.dom.tags import (
1066
912
  i as i,
1067
913
  )
1068
- from pulse.html.tags import (
914
+ from pulse.dom.tags import (
1069
915
  iframe as iframe,
1070
916
  )
1071
- from pulse.html.tags import (
917
+ from pulse.dom.tags import (
1072
918
  img as img,
1073
919
  )
1074
- from pulse.html.tags import (
920
+ from pulse.dom.tags import (
1075
921
  input as input,
1076
922
  )
1077
- from pulse.html.tags import (
923
+ from pulse.dom.tags import (
1078
924
  ins as ins,
1079
925
  )
1080
- from pulse.html.tags import (
926
+ from pulse.dom.tags import (
1081
927
  kbd as kbd,
1082
928
  )
1083
- from pulse.html.tags import (
929
+ from pulse.dom.tags import (
1084
930
  label as label,
1085
931
  )
1086
- from pulse.html.tags import (
932
+ from pulse.dom.tags import (
1087
933
  legend as legend,
1088
934
  )
1089
- from pulse.html.tags import (
935
+ from pulse.dom.tags import (
1090
936
  li as li,
1091
937
  )
1092
- from pulse.html.tags import (
938
+ from pulse.dom.tags import (
1093
939
  line as line,
1094
940
  )
1095
- from pulse.html.tags import (
941
+ from pulse.dom.tags import (
1096
942
  link as link,
1097
943
  )
1098
- from pulse.html.tags import (
944
+ from pulse.dom.tags import (
1099
945
  main as main,
1100
946
  )
1101
- from pulse.html.tags import (
947
+ from pulse.dom.tags import (
1102
948
  map_ as map_,
1103
949
  )
1104
- from pulse.html.tags import (
950
+ from pulse.dom.tags import (
1105
951
  mark as mark,
1106
952
  )
1107
- from pulse.html.tags import (
953
+ from pulse.dom.tags import (
1108
954
  mask as mask,
1109
955
  )
1110
- from pulse.html.tags import (
956
+ from pulse.dom.tags import (
1111
957
  menu as menu,
1112
958
  )
1113
- from pulse.html.tags import (
959
+ from pulse.dom.tags import (
1114
960
  meta as meta,
1115
961
  )
1116
- from pulse.html.tags import (
962
+ from pulse.dom.tags import (
1117
963
  meter as meter,
1118
964
  )
1119
- from pulse.html.tags import (
965
+ from pulse.dom.tags import (
1120
966
  nav as nav,
1121
967
  )
1122
- from pulse.html.tags import (
968
+ from pulse.dom.tags import (
1123
969
  noscript as noscript,
1124
970
  )
1125
- from pulse.html.tags import (
971
+ from pulse.dom.tags import (
1126
972
  object_ as object_,
1127
973
  )
1128
- from pulse.html.tags import (
974
+ from pulse.dom.tags import (
1129
975
  ol as ol,
1130
976
  )
1131
- from pulse.html.tags import (
977
+ from pulse.dom.tags import (
1132
978
  optgroup as optgroup,
1133
979
  )
1134
- from pulse.html.tags import (
980
+ from pulse.dom.tags import (
1135
981
  option as option,
1136
982
  )
1137
- from pulse.html.tags import (
983
+ from pulse.dom.tags import (
1138
984
  output as output,
1139
985
  )
1140
- from pulse.html.tags import (
986
+ from pulse.dom.tags import (
1141
987
  p as p,
1142
988
  )
1143
- from pulse.html.tags import (
989
+ from pulse.dom.tags import (
1144
990
  param as param,
1145
991
  )
1146
- from pulse.html.tags import (
992
+ from pulse.dom.tags import (
1147
993
  path as path,
1148
994
  )
1149
- from pulse.html.tags import (
995
+ from pulse.dom.tags import (
1150
996
  pattern as pattern,
1151
997
  )
1152
- from pulse.html.tags import (
998
+ from pulse.dom.tags import (
1153
999
  picture as picture,
1154
1000
  )
1155
- from pulse.html.tags import (
1001
+ from pulse.dom.tags import (
1156
1002
  polygon as polygon,
1157
1003
  )
1158
- from pulse.html.tags import (
1004
+ from pulse.dom.tags import (
1159
1005
  polyline as polyline,
1160
1006
  )
1161
- from pulse.html.tags import (
1007
+ from pulse.dom.tags import (
1162
1008
  pre as pre,
1163
1009
  )
1164
- from pulse.html.tags import (
1010
+ from pulse.dom.tags import (
1165
1011
  progress as progress,
1166
1012
  )
1167
- from pulse.html.tags import (
1013
+ from pulse.dom.tags import (
1168
1014
  q as q,
1169
1015
  )
1170
- from pulse.html.tags import (
1016
+ from pulse.dom.tags import (
1171
1017
  rect as rect,
1172
1018
  )
1173
- from pulse.html.tags import (
1019
+ from pulse.dom.tags import (
1174
1020
  rp as rp,
1175
1021
  )
1176
- from pulse.html.tags import (
1022
+ from pulse.dom.tags import (
1177
1023
  rt as rt,
1178
1024
  )
1179
- from pulse.html.tags import (
1025
+ from pulse.dom.tags import (
1180
1026
  ruby as ruby,
1181
1027
  )
1182
- from pulse.html.tags import (
1028
+ from pulse.dom.tags import (
1183
1029
  s as s,
1184
1030
  )
1185
- from pulse.html.tags import (
1031
+ from pulse.dom.tags import (
1186
1032
  samp as samp,
1187
1033
  )
1188
- from pulse.html.tags import (
1034
+ from pulse.dom.tags import (
1189
1035
  script as script,
1190
1036
  )
1191
- from pulse.html.tags import (
1037
+ from pulse.dom.tags import (
1192
1038
  section as section,
1193
1039
  )
1194
- from pulse.html.tags import (
1040
+ from pulse.dom.tags import (
1195
1041
  select as select,
1196
1042
  )
1197
- from pulse.html.tags import (
1043
+ from pulse.dom.tags import (
1198
1044
  small as small,
1199
1045
  )
1200
- from pulse.html.tags import (
1046
+ from pulse.dom.tags import (
1201
1047
  source as source,
1202
1048
  )
1203
- from pulse.html.tags import (
1049
+ from pulse.dom.tags import (
1204
1050
  span as span,
1205
1051
  )
1206
- from pulse.html.tags import (
1052
+ from pulse.dom.tags import (
1207
1053
  strong as strong,
1208
1054
  )
1209
- from pulse.html.tags import (
1055
+ from pulse.dom.tags import (
1210
1056
  style as style,
1211
1057
  )
1212
- from pulse.html.tags import (
1058
+ from pulse.dom.tags import (
1213
1059
  sub as sub,
1214
1060
  )
1215
- from pulse.html.tags import (
1061
+ from pulse.dom.tags import (
1216
1062
  summary as summary,
1217
1063
  )
1218
- from pulse.html.tags import (
1064
+ from pulse.dom.tags import (
1219
1065
  sup as sup,
1220
1066
  )
1221
- from pulse.html.tags import (
1067
+ from pulse.dom.tags import (
1222
1068
  svg as svg,
1223
1069
  )
1224
- from pulse.html.tags import (
1070
+ from pulse.dom.tags import (
1225
1071
  table as table,
1226
1072
  )
1227
- from pulse.html.tags import (
1073
+ from pulse.dom.tags import (
1228
1074
  tbody as tbody,
1229
1075
  )
1230
- from pulse.html.tags import (
1076
+ from pulse.dom.tags import (
1231
1077
  td as td,
1232
1078
  )
1233
- from pulse.html.tags import (
1079
+ from pulse.dom.tags import (
1234
1080
  template as template,
1235
1081
  )
1236
- from pulse.html.tags import (
1082
+ from pulse.dom.tags import (
1237
1083
  text as text,
1238
1084
  )
1239
- from pulse.html.tags import (
1085
+ from pulse.dom.tags import (
1240
1086
  textarea as textarea,
1241
1087
  )
1242
- from pulse.html.tags import (
1088
+ from pulse.dom.tags import (
1243
1089
  tfoot as tfoot,
1244
1090
  )
1245
- from pulse.html.tags import (
1091
+ from pulse.dom.tags import (
1246
1092
  th as th,
1247
1093
  )
1248
- from pulse.html.tags import (
1094
+ from pulse.dom.tags import (
1249
1095
  thead as thead,
1250
1096
  )
1251
- from pulse.html.tags import (
1097
+ from pulse.dom.tags import (
1252
1098
  time as time,
1253
1099
  )
1254
- from pulse.html.tags import (
1100
+ from pulse.dom.tags import (
1255
1101
  title as title,
1256
1102
  )
1257
- from pulse.html.tags import (
1103
+ from pulse.dom.tags import (
1258
1104
  tr as tr,
1259
1105
  )
1260
- from pulse.html.tags import (
1106
+ from pulse.dom.tags import (
1261
1107
  track as track,
1262
1108
  )
1263
- from pulse.html.tags import (
1109
+ from pulse.dom.tags import (
1264
1110
  tspan as tspan,
1265
1111
  )
1266
- from pulse.html.tags import (
1112
+ from pulse.dom.tags import (
1267
1113
  u as u,
1268
1114
  )
1269
- from pulse.html.tags import (
1115
+ from pulse.dom.tags import (
1270
1116
  ul as ul,
1271
1117
  )
1272
- from pulse.html.tags import (
1118
+ from pulse.dom.tags import (
1273
1119
  use as use,
1274
1120
  )
1275
- from pulse.html.tags import (
1121
+ from pulse.dom.tags import (
1276
1122
  var as var,
1277
1123
  )
1278
- from pulse.html.tags import (
1124
+ from pulse.dom.tags import (
1279
1125
  video as video,
1280
1126
  )
1281
- from pulse.html.tags import (
1127
+ from pulse.dom.tags import (
1282
1128
  wbr as wbr,
1283
1129
  )
1130
+
1131
+ # Environment
1132
+ from pulse.env import PulseEnv as PulseEnv
1133
+ from pulse.env import env as env
1134
+ from pulse.env import mode as mode
1135
+
1136
+ # Forms
1137
+ from pulse.form import (
1138
+ Form as Form,
1139
+ )
1140
+ from pulse.form import (
1141
+ FormData as FormData,
1142
+ )
1143
+ from pulse.form import (
1144
+ FormValue as FormValue,
1145
+ )
1146
+ from pulse.form import (
1147
+ ManualForm as ManualForm,
1148
+ )
1149
+
1150
+ # Helpers
1151
+ from pulse.helpers import (
1152
+ CSSProperties as CSSProperties,
1153
+ )
1154
+ from pulse.helpers import (
1155
+ later as later,
1156
+ )
1157
+ from pulse.helpers import (
1158
+ repeat as repeat,
1159
+ )
1160
+
1161
+ # Hooks - Core
1162
+ from pulse.hooks.core import (
1163
+ HOOK_CONTEXT as HOOK_CONTEXT,
1164
+ )
1165
+ from pulse.hooks.core import (
1166
+ MISSING as MISSING,
1167
+ )
1168
+ from pulse.hooks.core import (
1169
+ Hook as Hook,
1170
+ )
1171
+ from pulse.hooks.core import (
1172
+ HookAlreadyRegisteredError as HookAlreadyRegisteredError,
1173
+ )
1174
+ from pulse.hooks.core import (
1175
+ HookContext as HookContext,
1176
+ )
1177
+ from pulse.hooks.core import (
1178
+ HookError as HookError,
1179
+ )
1180
+ from pulse.hooks.core import (
1181
+ HookInit as HookInit,
1182
+ )
1183
+ from pulse.hooks.core import (
1184
+ HookMetadata as HookMetadata,
1185
+ )
1186
+ from pulse.hooks.core import (
1187
+ HookNamespace as HookNamespace,
1188
+ )
1189
+ from pulse.hooks.core import (
1190
+ HookNotFoundError as HookNotFoundError,
1191
+ )
1192
+ from pulse.hooks.core import (
1193
+ HookRegistry as HookRegistry,
1194
+ )
1195
+ from pulse.hooks.core import (
1196
+ HookRenameCollisionError as HookRenameCollisionError,
1197
+ )
1198
+ from pulse.hooks.core import (
1199
+ HooksAPI as HooksAPI,
1200
+ )
1201
+ from pulse.hooks.core import (
1202
+ HookState as HookState,
1203
+ )
1204
+ from pulse.hooks.core import (
1205
+ hooks as hooks,
1206
+ )
1207
+
1208
+ # Hooks - Effects
1209
+ from pulse.hooks.effects import EffectsHookState as EffectsHookState
1210
+ from pulse.hooks.effects import effects as effects
1211
+
1212
+ # Hooks - Init
1213
+ from pulse.hooks.init import (
1214
+ init as init,
1215
+ )
1216
+ from pulse.hooks.runtime import (
1217
+ GLOBAL_STATES as GLOBAL_STATES,
1218
+ )
1219
+ from pulse.hooks.runtime import (
1220
+ GlobalStateAccessor as GlobalStateAccessor,
1221
+ )
1222
+ from pulse.hooks.runtime import (
1223
+ NotFoundInterrupt as NotFoundInterrupt,
1224
+ )
1225
+
1226
+ # Hooks - Runtime
1227
+ from pulse.hooks.runtime import (
1228
+ RedirectInterrupt as RedirectInterrupt,
1229
+ )
1230
+ from pulse.hooks.runtime import (
1231
+ call_api as call_api,
1232
+ )
1233
+ from pulse.hooks.runtime import (
1234
+ client_address as client_address,
1235
+ )
1236
+ from pulse.hooks.runtime import (
1237
+ global_state as global_state,
1238
+ )
1239
+ from pulse.hooks.runtime import (
1240
+ navigate as navigate,
1241
+ )
1242
+ from pulse.hooks.runtime import (
1243
+ not_found as not_found,
1244
+ )
1245
+ from pulse.hooks.runtime import (
1246
+ redirect as redirect,
1247
+ )
1248
+ from pulse.hooks.runtime import (
1249
+ route as route,
1250
+ )
1251
+ from pulse.hooks.runtime import (
1252
+ server_address as server_address,
1253
+ )
1254
+ from pulse.hooks.runtime import (
1255
+ session as session,
1256
+ )
1257
+ from pulse.hooks.runtime import (
1258
+ session_id as session_id,
1259
+ )
1260
+ from pulse.hooks.runtime import (
1261
+ set_cookie as set_cookie,
1262
+ )
1263
+ from pulse.hooks.runtime import (
1264
+ websocket_id as websocket_id,
1265
+ )
1266
+
1267
+ # Hooks - Setup
1268
+ from pulse.hooks.setup import (
1269
+ SetupHookState as SetupHookState,
1270
+ )
1271
+ from pulse.hooks.setup import (
1272
+ setup as setup,
1273
+ )
1274
+ from pulse.hooks.setup import (
1275
+ setup_key as setup_key,
1276
+ )
1277
+ from pulse.hooks.stable import (
1278
+ StableEntry as StableEntry,
1279
+ )
1280
+ from pulse.hooks.stable import (
1281
+ StableRegistry as StableRegistry,
1282
+ )
1283
+
1284
+ # Hooks - Stable
1285
+ from pulse.hooks.stable import (
1286
+ stable as stable,
1287
+ )
1288
+
1289
+ # Hooks - States
1290
+ from pulse.hooks.states import StatesHookState as StatesHookState
1291
+ from pulse.hooks.states import states as states
1284
1292
  from pulse.messages import ClientMessage as ClientMessage
1285
1293
  from pulse.messages import Directives as Directives
1286
1294
  from pulse.messages import Prerender as Prerender
@@ -1337,31 +1345,13 @@ from pulse.queries.mutation import mutation as mutation
1337
1345
  from pulse.queries.protocol import QueryResult as QueryResult
1338
1346
  from pulse.queries.query import query as query
1339
1347
 
1340
- # React component registry
1341
- from pulse.react_component import (
1342
- COMPONENT_REGISTRY as COMPONENT_REGISTRY,
1343
- )
1344
- from pulse.react_component import (
1345
- DEFAULT as DEFAULT,
1346
- )
1348
+ # React components (v2)
1347
1349
  from pulse.react_component import (
1348
- ComponentRegistry as ComponentRegistry,
1349
- )
1350
- from pulse.react_component import (
1351
- Prop as Prop,
1352
- )
1353
- from pulse.react_component import (
1354
- ReactComponent as ReactComponent,
1355
- )
1356
- from pulse.react_component import (
1357
- prop as prop,
1350
+ default_signature as default_signature,
1358
1351
  )
1359
1352
  from pulse.react_component import (
1360
1353
  react_component as react_component,
1361
1354
  )
1362
- from pulse.react_component import (
1363
- registered_react_components as registered_react_components,
1364
- )
1365
1355
 
1366
1356
  # Reactivity primitives
1367
1357
  from pulse.reactive import (
@@ -1431,11 +1421,27 @@ from pulse.serializer import serialize as serialize
1431
1421
 
1432
1422
  # State and routing
1433
1423
  from pulse.state import State as State
1424
+
1425
+ # Transpiler v2
1434
1426
  from pulse.transpiler.function import JsFunction as JsFunction
1435
1427
  from pulse.transpiler.function import javascript as javascript
1436
- from pulse.transpiler.imports import CssImport as CssImport
1437
1428
  from pulse.transpiler.imports import Import as Import
1438
- from pulse.transpiler.imports import import_js as import_js
1429
+ from pulse.transpiler.nodes import (
1430
+ Element as Element,
1431
+ )
1432
+ from pulse.transpiler.nodes import Jsx as Jsx
1433
+ from pulse.transpiler.nodes import (
1434
+ Node as Node,
1435
+ )
1436
+ from pulse.transpiler.nodes import (
1437
+ Primitive as Primitive,
1438
+ )
1439
+ from pulse.transpiler.nodes import (
1440
+ PulseNode as PulseNode,
1441
+ )
1442
+ from pulse.transpiler.vdom import (
1443
+ VDOMNode as VDOMNode,
1444
+ )
1439
1445
 
1440
1446
  # Types
1441
1447
  from pulse.types.event_handler import (
@@ -1485,30 +1491,4 @@ from pulse.user_session import (
1485
1491
  from pulse.user_session import (
1486
1492
  UserSession as UserSession,
1487
1493
  )
1488
-
1489
- # VDOM
1490
- from pulse.vdom import (
1491
- Child as Child,
1492
- )
1493
- from pulse.vdom import (
1494
- Component as Component,
1495
- )
1496
- from pulse.vdom import (
1497
- ComponentNode as ComponentNode,
1498
- )
1499
- from pulse.vdom import (
1500
- Element as Element,
1501
- )
1502
- from pulse.vdom import (
1503
- Node as Node,
1504
- )
1505
- from pulse.vdom import (
1506
- Primitive as Primitive,
1507
- )
1508
- from pulse.vdom import (
1509
- VDOMNode as VDOMNode,
1510
- )
1511
- from pulse.vdom import (
1512
- component as component,
1513
- )
1514
1494
  from pulse.version import __version__ as __version__