the only thing that matters
This commit is contained in:
parent
4b07490837
commit
ec2e00ef90
@ -1291,10 +1291,10 @@ class Component(BaseComponent, ABC):
|
|||||||
event_imports = Imports.EVENTS if self.event_triggers else {}
|
event_imports = Imports.EVENTS if self.event_triggers else {}
|
||||||
|
|
||||||
# Collect imports from Vars used directly by this component.
|
# Collect imports from Vars used directly by this component.
|
||||||
var_datas = tuple(var._get_all_var_data() for var in self._get_vars())
|
var_datas = [var._get_all_var_data() for var in self._get_vars()]
|
||||||
var_imports: Sequence[ImmutableParsedImportDict] = tuple(
|
var_imports: List[ImmutableParsedImportDict] = [
|
||||||
var_data.imports for var_data in var_datas if var_data is not None
|
var_data.imports for var_data in var_datas if var_data is not None
|
||||||
)
|
]
|
||||||
|
|
||||||
added_import_dicts: list[ParsedImportDict] = []
|
added_import_dicts: list[ParsedImportDict] = []
|
||||||
for clz in self._iter_parent_classes_with_method("add_imports"):
|
for clz in self._iter_parent_classes_with_method("add_imports"):
|
||||||
@ -1566,24 +1566,8 @@ class Component(BaseComponent, ABC):
|
|||||||
An import var.
|
An import var.
|
||||||
"""
|
"""
|
||||||
# If the tag is dot-qualified, only import the left-most name.
|
# If the tag is dot-qualified, only import the left-most name.
|
||||||
tag = (
|
tag = self.tag.partition(".")[0] if self.tag else None
|
||||||
(
|
alias = self.alias.partition(".")[0] if self.alias else None
|
||||||
self.tag[:tag_index]
|
|
||||||
if (tag_index := self.tag.find(".")) != -1
|
|
||||||
else self.tag
|
|
||||||
)
|
|
||||||
if self.tag
|
|
||||||
else None
|
|
||||||
)
|
|
||||||
alias = (
|
|
||||||
(
|
|
||||||
self.alias[:alias_index]
|
|
||||||
if (alias_index := self.alias.find(".")) != -1
|
|
||||||
else self.alias
|
|
||||||
)
|
|
||||||
if self.alias
|
|
||||||
else None
|
|
||||||
)
|
|
||||||
return ImportVar(
|
return ImportVar(
|
||||||
tag=tag,
|
tag=tag,
|
||||||
is_default=self.is_default,
|
is_default=self.is_default,
|
||||||
@ -2106,19 +2090,13 @@ class StatefulComponent(BaseComponent):
|
|||||||
A list of var names created by the hook declaration.
|
A list of var names created by the hook declaration.
|
||||||
"""
|
"""
|
||||||
# Ensure that the hook is a var declaration.
|
# Ensure that the hook is a var declaration.
|
||||||
var_decl = (
|
var_decl = hook.partition("=")[0].strip()
|
||||||
hook[:hook_index] if (hook_index := hook.find("=")) != -1 else hook
|
|
||||||
).strip()
|
|
||||||
|
|
||||||
if not any(var_decl.startswith(kw) for kw in ["const ", "let ", "var "]):
|
if not any(var_decl.startswith(kw) for kw in ["const ", "let ", "var "]):
|
||||||
return []
|
return []
|
||||||
|
|
||||||
# Extract the var name from the declaration.
|
# Extract the var name from the declaration.
|
||||||
var_name = (
|
_, _, var_name = var_decl.partition(" ")
|
||||||
var_decl[var_decl_index + 1 :]
|
var_name = var_name.strip()
|
||||||
if (var_decl_index := var_decl.find(" ")) != -1
|
|
||||||
else ""
|
|
||||||
).strip()
|
|
||||||
|
|
||||||
# Break up array and object destructuring if used.
|
# Break up array and object destructuring if used.
|
||||||
if var_name.startswith("[") or var_name.startswith("{"):
|
if var_name.startswith("[") or var_name.startswith("{"):
|
||||||
@ -2448,18 +2426,13 @@ def render_dict_to_var(tag: dict | Component | str, imported_names: set[str]) ->
|
|||||||
|
|
||||||
contents = tag["contents"][1:-1] if tag["contents"] else None
|
contents = tag["contents"][1:-1] if tag["contents"] else None
|
||||||
|
|
||||||
raw_tag_name: str = tag["name"]
|
raw_tag_name = tag.get("name")
|
||||||
tag_name = Var(raw_tag_name or "Fragment")
|
tag_name = Var(raw_tag_name or "Fragment")
|
||||||
|
|
||||||
tag_name = (
|
tag_name = (
|
||||||
Var.create(raw_tag_name)
|
Var.create(raw_tag_name)
|
||||||
if raw_tag_name
|
if raw_tag_name
|
||||||
and (
|
and raw_tag_name.split(".")[0] not in imported_names
|
||||||
raw_tag_name[:raw_tag_name_index]
|
|
||||||
if (raw_tag_name_index := raw_tag_name.find(".")) != -1
|
|
||||||
else raw_tag_name
|
|
||||||
)
|
|
||||||
not in imported_names
|
|
||||||
and raw_tag_name.lower() == raw_tag_name
|
and raw_tag_name.lower() == raw_tag_name
|
||||||
else tag_name
|
else tag_name
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user