where('vault_id', $vaultId) ->where('parent_id', $parentId) ->where('is_file', true) ->where('name', 'LIKE', $pathParts['filename']) ->where('extension', 'LIKE', $pathParts['extension'] ?? 'md') ->first(); } /** @var VaultNode $node */ $node = VaultNode::query() ->where('vault_id', $vaultId) ->where('parent_id', $parentId) ->where('is_file', false) ->where('name', 'LIKE', $pieces[0]) ->first(); $path = Str::after($path, '/'); return $this->handle($vaultId, $path, $node->id); } }