getFileName(), 2); return $pluginRoot . "/resources/views/" . trim($name, "/"); } public function trans($name): string { return nexus_trans($this->getTransKey($name)); } public function getTransKey($name): string { return sprintf("%s::%s", static::ID, $name); } public static function getInstance(): static { return Plugin::getById(static::ID); } public function getVersion(): string { $constantName = "static::VERSION"; return defined($constantName) ? constant($constantName) : ''; } public function getId(): string { $className = str_replace("Repository", "", get_called_class()); $plugin = call_user_func([$className, "make"]); return $plugin->getId(); } }