1
0
Эх сурвалжийг харах

fix ui.aggrid, ui.mermaid and ui.plotly

Falko Schindler 1 жил өмнө
parent
commit
5a122e49f7
1 өөрчлөгдсөн 10 нэмэгдсэн , 9 устгасан
  1. 10 9
      nicegui/dependencies.py

+ 10 - 9
nicegui/dependencies.py

@@ -43,7 +43,8 @@ def register_library(name: str, path: Path, *, expose: bool = False) -> None:
 
 
 def generate_resources(prefix: str, elements: List[Element]) -> Tuple[str, str, str, str, str]:
-    done: Set[str] = set()
+    done_libraries: Set[str] = set()
+    done_components: Set[str] = set()
     vue_scripts = ''
     vue_html = ''
     vue_styles = ''
@@ -52,31 +53,31 @@ def generate_resources(prefix: str, elements: List[Element]) -> Tuple[str, str,
 
     # Build the importmap structure for exposed libraries.
     for key in libraries:
-        if key not in done and libraries[key]['expose']:
+        if key not in done_libraries and libraries[key]['expose']:
             name = libraries[key]['name']
             import_maps['imports'][name] = f'{prefix}/_nicegui/{__version__}/library/{key}/include'
-            done.add(key)
+            done_libraries.add(key)
     # Build the none optimized component (ie, the vue component).
     for key in vue_components:
-        if key not in done:
+        if key not in done_components:
             vue_html += f'{vue_components[key].html}\n'
             vue_scripts += f'{vue_components[key].script.replace("Vue.component", "app.component", 1)}\n'
             vue_styles += f'{vue_components[key].style}\n'
-            done.add(key)
+            done_components.add(key)
 
     # Build the resources associated with the elements.
     for element in elements:
         for key in element.libraries:
-            if key in libraries and key not in done:
+            if key in libraries and key not in done_libraries:
                 if not libraries[key]['expose']:
                     js_imports += f'import "{prefix}/_nicegui/{__version__}/library/{key}/include";\n'
-                done.add(key)
+                done_libraries.add(key)
         for key in element.components:
-            if key in js_components and key not in done:
+            if key in js_components and key not in done_components:
                 name = js_components[key]['name']
                 js_imports += f'import {{ default as {key} }} from "{prefix}/_nicegui/{__version__}/components/{key}";\n'
                 js_imports += f'app.component("{name}", {key});\n'
-                done.add(key)
+                done_components.add(key)
 
     vue_styles = f'<style>{vue_styles}</style>'
     import_maps = f'<script type="importmap">{json.dumps(import_maps)}</script>'