MCPcopy Index your code
hub / github.com/plotly/dash / serve_component_suites

Method serve_component_suites

dash/backends/_fastapi.py:490–519  ·  view source on GitHub ↗
(
        self,
        dash_app: Dash,
        package_name: str,
        fingerprinted_path: str,
        request: Request,
    )

Source from the content-addressed store, hash-verified

488 return JSONResponse(content=obj)
489
490 def serve_component_suites(
491 self,
492 dash_app: Dash,
493 package_name: str,
494 fingerprinted_path: str,
495 request: Request,
496 ):
497
498 path_in_pkg, has_fingerprint = check_fingerprint(fingerprinted_path)
499 _validate.validate_js_path(dash_app.registered_paths, package_name, path_in_pkg)
500 extension = "." + path_in_pkg.split(".")[-1]
501 mimetype = mimetypes.types_map.get(extension, "application/octet-stream")
502 package = sys.modules[package_name]
503 dash_app.logger.debug(
504 "serving -- package: %s[%s] resource: %s => location: %s",
505 package_name,
506 package.__version__,
507 path_in_pkg,
508 package.__path__,
509 )
510 data = pkgutil.get_data(package_name, path_in_pkg)
511 headers = {}
512 if has_fingerprint:
513 headers["Cache-Control"] = "public, max-age=31536000"
514 return StarletteResponse(content=data, media_type=mimetype, headers=headers)
515 etag = hashlib.md5(data).hexdigest() if data else ""
516 headers["ETag"] = etag
517 if request.headers.get("if-none-match") == etag:
518 return StarletteResponse(status_code=304)
519 return StarletteResponse(content=data, media_type=mimetype, headers=headers)
520
521 def setup_component_suites(self, dash_app: Dash):
522 async def serve(request: Request, package_name: str, fingerprinted_path: str):

Callers 1

serveMethod · 0.95

Calls 2

check_fingerprintFunction · 0.90
getMethod · 0.45

Tested by

no test coverage detected