| 1292 | return meta_tags + self.config.meta_tags |
| 1293 | |
| 1294 | def index(self, *_args, **_kwargs): |
| 1295 | scripts = self._generate_scripts_html() |
| 1296 | css = self._generate_css_dist_html() |
| 1297 | config = self._generate_config_html() |
| 1298 | metas = self._generate_meta() |
| 1299 | renderer = self._generate_renderer() |
| 1300 | title = self.title |
| 1301 | # Refactored: direct access to global request adapter |
| 1302 | request = self.backend.request_adapter() |
| 1303 | |
| 1304 | if self.use_pages and self.config.include_pages_meta and request: |
| 1305 | metas = _page_meta_tags(self, request) + metas |
| 1306 | |
| 1307 | if self._favicon: |
| 1308 | favicon_mod_time = os.path.getmtime( |
| 1309 | os.path.join(self.config.assets_folder, self._favicon) |
| 1310 | ) |
| 1311 | favicon_url = f"{self.get_asset_url(self._favicon)}?m={favicon_mod_time}" |
| 1312 | else: |
| 1313 | prefix = self.config.requests_pathname_prefix |
| 1314 | favicon_url = f"{prefix}_favicon.ico?v={__version__}" |
| 1315 | |
| 1316 | favicon = format_tag( |
| 1317 | "link", |
| 1318 | {"rel": "icon", "type": "image/x-icon", "href": favicon_url}, |
| 1319 | opened=True, |
| 1320 | ) |
| 1321 | |
| 1322 | tags = "\n ".join( |
| 1323 | format_tag("meta", x, opened=True, sanitize=True) for x in metas |
| 1324 | ) |
| 1325 | |
| 1326 | index = self.interpolate_index( |
| 1327 | metas=tags, |
| 1328 | title=title, |
| 1329 | css=css, |
| 1330 | config=config, |
| 1331 | scripts=scripts, |
| 1332 | app_entry=_app_entry, |
| 1333 | favicon=favicon, |
| 1334 | renderer=renderer, |
| 1335 | ) |
| 1336 | |
| 1337 | for hook in self._hooks.get_hooks("index"): |
| 1338 | index = hook(index) |
| 1339 | |
| 1340 | checks = ( |
| 1341 | _re_index_entry_id, |
| 1342 | _re_index_config_id, |
| 1343 | _re_index_scripts_id, |
| 1344 | _re_renderer_scripts_id, |
| 1345 | ) |
| 1346 | _validate.validate_index("index", checks, index) |
| 1347 | return index |
| 1348 | |
| 1349 | def interpolate_index( |
| 1350 | self, |