MCPcopy Index your code
hub / github.com/pyscript/pyscript / _create_element_classes

Function _create_element_classes

core/src/stdlib/pyscript/web.py:1334–1364  ·  view source on GitHub ↗

Create element classes dynamically and register them. Generates classes for all standard HTML elements, using the appropriate base class (ContainerElement or Element) for each tag.

()

Source from the content-addressed store, hash-verified

1332
1333
1334def _create_element_classes():
1335 """
1336 Create element classes dynamically and register them.
1337
1338 Generates classes for all standard HTML elements, using the appropriate
1339 base class (ContainerElement or Element) for each tag.
1340 """
1341 # The existing special element classes defined above.
1342 classes = [canvas, video, datalist, optgroup, select]
1343 for tag in CONTAINER_TAGS:
1344 # Tags that clash with Python keywords get a trailing underscore.
1345 class_name = f"{tag}_" if tag in ("del", "map", "object") else tag
1346 doc = (
1347 f"HTML <{tag}> element. "
1348 f"Ref: https://developer.mozilla.org/en-US/docs/Web/HTML/"
1349 f"Element/{tag}"
1350 )
1351 cls = type(class_name, (ContainerElement,), {"__doc__": doc})
1352 globals()[class_name] = cls
1353 classes.append(cls)
1354 for tag in VOID_TAGS:
1355 class_name = f"{tag}_" if tag == "input" else tag
1356 doc = (
1357 f"HTML <{tag}> element. "
1358 f"Ref: https://developer.mozilla.org/en-US/docs/Web/HTML/"
1359 f"Element/{tag}"
1360 )
1361 cls = type(class_name, (Element,), {"__doc__": doc})
1362 globals()[class_name] = cls
1363 classes.append(cls)
1364 Element.register_element_classes(classes)
1365
1366
1367# Initialize element classes at module load time. :-)

Callers 1

web.pyFile · 0.85

Calls 2

appendMethod · 0.45

Tested by

no test coverage detected