function (ContainerInterface $container): string { return $container->get('ppcp.plugin-version'); }, 'assets.asset_getter_factory' => function (ContainerInterface $container): AssetGetterFactory { $properties = $container->get(Package::PROPERTIES); assert($properties instanceof Properties); return new AssetGetterFactory((string) $properties->baseUrl(), $properties->basePath()); }, 'http.redirector' => function (ContainerInterface $container): RedirectorInterface { return new WpRedirector(); }, 'ppcp.plugin-version' => function (ContainerInterface $container): string { /** @var Properties $properties */ $properties = $container->get(Package::PROPERTIES); return $properties->version(); }, 'ppcp.base-name' => function (ContainerInterface $container): string { /** @var Properties $properties */ $properties = $container->get(Package::PROPERTIES); return $properties->baseName(); }, 'ppcp.path-to-plugin-folder' => function (ContainerInterface $container): string { /** @var Properties $properties */ $properties = $container->get(Package::PROPERTIES); return $properties->basePath(); }, 'ppcp.path-to-plugin-main-file' => function (ContainerInterface $container): string { /** @var PluginProperties $properties */ $properties = $container->get(Package::PROPERTIES); /** @psalm-suppress UndefinedInterfaceMethod */ return $properties->pluginMainFile(); });