Skip to content

Commit

Permalink
fix(files): fix new folder encoding
Browse files Browse the repository at this point in the history
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
  • Loading branch information
skjnldsv committed Oct 17, 2023
1 parent fbf8a46 commit 9f157d7
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 7 deletions.
14 changes: 10 additions & 4 deletions apps/files/src/newMenu/newFolder.ts
Expand Up @@ -28,18 +28,23 @@ import { Permission, Folder } from '@nextcloud/files'
import { showSuccess } from '@nextcloud/dialogs'
import { translate as t } from '@nextcloud/l10n'
import axios from '@nextcloud/axios'

import FolderPlusSvg from '@mdi/svg/svg/folder-plus.svg?raw'

import logger from '../logger'

type createFolderResponse = {
fileid: number
source: string
}

const createNewFolder = async (root: string, name: string): Promise<createFolderResponse> => {
const source = root + '/' + name
const createNewFolder = async (root: Folder, name: string): Promise<createFolderResponse> => {
const source = root.source + '/' + name
const encodedSource = root.encodedSource + '/' + encodeURIComponent(name)

const response = await axios({
method: 'MKCOL',
url: source,
url: encodedSource,
headers: {
Overwrite: 'F',
},
Expand Down Expand Up @@ -70,7 +75,7 @@ export const entry = {
async handler(context: Folder, content: Node[]) {
const contentNames = content.map((node: Node) => node.basename)
const name = getUniqueName(t('files', 'New folder'), contentNames)
const { fileid, source } = await createNewFolder(context.encodedSource, encodeURIComponent(name))
const { fileid, source } = await createNewFolder(context, name)

// Create the folder in the store
const folder = new Folder({
Expand All @@ -83,6 +88,7 @@ export const entry = {
})

showSuccess(t('files', 'Created new folder "{name}"', { name: basename(source) }))
logger.debug('Created new folder', { folder, source })
emit('files:node:created', folder)
emit('files:node:rename', folder)
},
Expand Down
4 changes: 2 additions & 2 deletions dist/files-init.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/files-init.js.map

Large diffs are not rendered by default.

0 comments on commit 9f157d7

Please sign in to comment.