| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import { lintInfoMap } from '../Linter/Linter.utils'
- import { LintException } from '@/data/lint/lint-rules-query'
- import { Member } from '@/data/organizations/organization-members-query'
- export const generateRuleText = (e: LintException, member?: Member) => {
- const lintName = lintInfoMap.find((x) => x.name === e.lint_name)?.title
- if (e.is_disabled) {
- return `Ignore "${lintName}" for ${!e.assigned_to ? 'all project members' : `${member?.username ?? member?.primary_email}`}`
- } else {
- return `"${lintName}" is only visible to ${member?.username} `
- }
- }
- export const generateRuleDescription = ({
- name,
- member,
- disabled,
- }: {
- name?: string
- member?: Member
- disabled: boolean
- }) => {
- const lint = lintInfoMap.find((x) => x.name === name)
- return (
- <>
- <p className="font-mono uppercase text-xs text-foreground-lighter">What this rule means:</p>
- <p className="mb-0!">
- The "{lint?.title}" lint will be{' '}
- {disabled
- ? `ignored for ${!!member ? `this user only` : 'this project'}`
- : `visible to ${!!member ? `this user only` : ''}`}
- </p>
- <p className="text-foreground-light">
- {!!member ? (
- disabled ? (
- <>
- Only {member.username ?? member.primary_email} will no longer see this lint in the{' '}
- <span className="capitalize">{lint?.category}</span> Advisor, the lint will still be
- visible to all other project members
- </>
- ) : (
- <>
- Only {member.username ?? member.primary_email} will see this lint in the{' '}
- <span className="capitalize">{lint?.category}</span> Advisor, the lint will no longer
- be visible to all other project members
- </>
- )
- ) : (
- <>
- All project members will no longer see this lint in the{' '}
- <span className="capitalize">{lint?.category}</span> Advisor, nor receive notifications
- via emails about this lint
- </>
- )}
- </p>
- </>
- )
- }
|