Commit 61d9d39f authored by Filip Šenk's avatar Filip Šenk
Browse files

fix: questionnaire import

parent 924c9b83
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -458,6 +458,7 @@ export const loadInjectPattern = async (zip: JSZip, parentNode?: TreeNode) => {
    }
    if (tableName === 'questionnaires') {
      questionnaires = records.map(normalizeQuestionnaire)

      continue
    }
    if (tableName === 'milestones') {
@@ -556,6 +557,7 @@ export const loadInjectPattern = async (zip: JSZip, parentNode?: TreeNode) => {
  const questionnaireNamesSet = new Set(
    (await db.questionnaires.toArray()).map(questionnaire => questionnaire.name)
  )

  const changedQuestionnaires = questionnaires.map(questionnaire => {
    let name = questionnaire.name
    let index = 0
@@ -613,7 +615,7 @@ export const loadInjectPattern = async (zip: JSZip, parentNode?: TreeNode) => {
      }
    })

    return { ...questionnaire, control, questions, repeatable }
    return { ...questionnaire, name, control, questions, repeatable }
  })

  const milestonesWithoutStarting = changedMilestones.map(
@@ -673,14 +675,16 @@ export const exportInjectPattern = async (
    .filter(node => node.type === TreeNodeTypes.QUESTIONNAIRE)
    .map(node => node.data)

  const fileSet = new Set(
  const fileSet = new Set([
    ...injects
      .map(inject => inject.alternatives[0].content?.attachments)
      .filter(notEmpty),
      .filter(notEmpty)
      .flat(),
    ...questionnaires
      .map(questionnaire => questionnaire.content?.attachments)
      .filter(notEmpty)
  )
      .flat(),
  ])

  const files = await db.files.filter(file => fileSet.has(file.name)).toArray()
  const fileMapping: Array<{ name: string; content: string | Blob }> = []