import { freeSewingConfig as config } from 'shared/config/freesewing.config.mjs'
// Hooks
import { useTranslation } from 'next-i18next'
import { useState, Fragment } from 'react'
import { useLoadingStatus } from 'shared/hooks/use-loading-status.mjs'
import { useAccount } from 'shared/hooks/use-account.mjs'
import { useBackend } from 'shared/hooks/use-backend.mjs'
// Components
import { Popout } from 'shared/components/popout/index.mjs'
import {
HeartIcon,
ChatIcon,
BugIcon,
SettingsIcon,
DocsIcon,
LockIcon,
KeyIcon,
DesignIcon,
HelpIcon,
LeftIcon,
} from 'shared/components/icons.mjs'
import {
ActiveImageInput,
ButtonFrame,
DesignDropdown,
StringInput,
MarkdownInput,
} from 'shared/components/inputs.mjs'
import { cloudflareImageUrl } from 'shared/utils.mjs'
import { CodeBox } from 'shared/components/code-box.mjs'
import { WebLink } from 'shared/components/link.mjs'
// Translation namespaces used on this page
export const ns = ['support', 'designs', 'account', 'status']
const types = [
'bugReport',
'designIssue',
'accountIssue',
'docsUpdate',
'question',
'featureRequest',
'security',
'patronSponsor',
'other',
]
const userCard = (id) =>
`[](https://next.freesewing.org/users/${id})`
const templates = {
bugReport: {
title: ({ title }) => `[bug]: ${title}`,
labels: () => [':bug: bug'],
},
designIssue: {
title: ({ title, design }) => `[${design}]: ${title}`,
labels: ({ design }) => [`:shirt: ${design}`],
},
accountIssue: {
title: ({ title }) => `[accounts]: ${title}`,
labels: () => ['account'],
},
docsUpdate: {
title: ({ title }) => `[docs]: ${title}`,
labels: () => [':book: documentation'],
},
question: {
title: ({ title }) => title,
labels: () => [],
},
featureRequest: {
title: ({ title }) => `[featureRequest]: ${title}`,
labels: () => [':gem: enhancement'],
},
security: {
title: ({ title }) => `[security]: ${title}`,
labels: () => ['security'],
},
patronSponsor: {
title: ({ title }) => `[patrons]: ${title}`,
labels: () => ['impacts-patron'],
},
other: {
title: ({ title }) => `[other]: ${title}`,
labels: () => [],
},
}
const commonLabels = [':robot: robot', 'needs-triage']
const iconProps = { className: 'w-8 h-8 shrink-0' }
const icons = {
bugReport:
We have created your request, you can find it here:
{t('titleDocs1')}
{t('titleDocs2')}
{t('designDocs1')}
{t('descriptionDocs1')}
{t('imageDocs1')}