fix(typos): add github action to prevent typos + fix typos (#9598)

* feat(ci): fix typos

* [create-pull-request] automated change

* Update index.tsx

* Update README.fr.md

* Create .misspell-fixer.ignore

* Update constant.dart

* [create-pull-request] automated change

* Update database.tsx

* [create-pull-request] automated change

* [create-pull-request] automated change

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
This commit is contained in:
Sara Tavaresandgithub-actions[bot] authored and GitHub committed 2022-10-27 23:32:02 -03:00
1 parent 1e0afa72e7
commit 80d0624262
83 files changed
+172 -152

No files matched your search

+19
View File
@@ -0,0 +1,19 @@
name: Automatically fix typos
on:
push:
branches:
- master
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: master
- uses: sobolevn/misspell-fixer-action@master
- uses: peter-evans/create-pull-request@v2.4.4
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
with:
token: ${{ secrets.GITHUB_TOKEN }}
+1
View File
@@ -0,0 +1 @@
^./i18n
@@ -160,7 +160,7 @@ In the example above, we have:
1. created a column called `id`
1. assigned the data type `bigint`
1. instructed the database that this should be `generated always as identity`, which means that Postgres will automatically assign a unique number to this column.
1. Becuase it's unique, we can also use it as our `primary key`.
1. Because it's unique, we can also use it as our `primary key`.
We could also use `generated by default as identity`, which would allow us to insert our own unique values.
@@ -48,7 +48,7 @@ Your cache is now created. PolyScale automatically checks to see that your datab
## Step 2: Connect to your PolyScale Cache
Using your PolyScale cache is simple -- instead of connecting to your Supabase database directly, you'll replace your orignal connection string with the PolyScale connection string in your application.
Using your PolyScale cache is simple -- instead of connecting to your Supabase database directly, you'll replace your original connection string with the PolyScale connection string in your application.
For example, if your original connection string was: `postgres://postgres:zqSPGHFAbPLvVCKw@db.rogpiubvixysbakciwqz.supabase.co:5432`
+9 -9
View File
@@ -249,7 +249,7 @@ class _LoginPageState extends State<LoginPage> {
} on AuthException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected error occured');
context.showErrorSnackBar(message: 'Unexpected error occurred');
}
setState(() {
@@ -346,7 +346,7 @@ class _AccountPageState extends State<AccountPage> {
} on PostgrestException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected exception occured');
context.showErrorSnackBar(message: 'Unexpected exception occurred');
}
setState(() {
@@ -376,7 +376,7 @@ class _AccountPageState extends State<AccountPage> {
} on PostgrestException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpeted error occured');
context.showErrorSnackBar(message: 'Unexpeted error occurred');
}
setState(() {
_loading = false;
@@ -389,7 +389,7 @@ class _AccountPageState extends State<AccountPage> {
} on AuthException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected error occured');
context.showErrorSnackBar(message: 'Unexpected error occurred');
}
if (mounted) {
Navigator.of(context).pushReplacementNamed('/');
@@ -619,7 +619,7 @@ class _AvatarState extends State<Avatar> {
}
} catch (error) {
if (mounted) {
context.showErrorSnackBar(message: 'Unexpected error occured');
context.showErrorSnackBar(message: 'Unexpected error occurred');
}
}
@@ -670,7 +670,7 @@ class _AccountPageState extends State<AccountPage> {
} on PostgrestException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected exception occured');
context.showErrorSnackBar(message: 'Unexpected exception occurred');
}
setState(() {
@@ -700,7 +700,7 @@ class _AccountPageState extends State<AccountPage> {
} on PostgrestException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpeted error occured');
context.showErrorSnackBar(message: 'Unexpeted error occurred');
}
setState(() {
_loading = false;
@@ -713,7 +713,7 @@ class _AccountPageState extends State<AccountPage> {
} on AuthException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected error occured');
context.showErrorSnackBar(message: 'Unexpected error occurred');
}
if (mounted) {
Navigator.of(context).pushReplacementNamed('/');
@@ -734,7 +734,7 @@ class _AccountPageState extends State<AccountPage> {
} on PostgrestException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected error has occured');
context.showErrorSnackBar(message: 'Unexpected error has occurred');
}
if (!mounted) {
return;
+2 -2
View File
@@ -54,7 +54,7 @@ export default async function gen(inputFileName: string, outputDir: string) {
const description =
pageSpec.description ||
tsDocCommentToMdComment(getDescriptionFromDefintion(tsDefinition))
tsDocCommentToMdComment(getDescriptionFromDefinition(tsDefinition))
// Create page
const content = Page({
@@ -107,7 +107,7 @@ function generateParameters(tsDefinition: any) {
return methodListGroup(parameters)
}
function getDescriptionFromDefintion(tsDefinition) {
function getDescriptionFromDefinition(tsDefinition) {
if (!tsDefinition) return null
if (
['Method', 'Constructor', 'Constructor signature'].includes(
+1 -1
View File
@@ -153,7 +153,7 @@ docker run supabase/pgadmin-schema-diff \
> diff_demo.sql
Starting schema diff...
Comparision started......0%
Comparison started......0%
Comparing Event Triggers...2%
Comparing Extensions...4%
Comparing Languages...8%
+1 -1
View File
@@ -186,7 +186,7 @@ const supabase = createClient(apiURL, apiKey, {
})
```
This is clearer for developers - if you're only using some parts of Supabase, you only recieve the hints for those parts.
This is clearer for developers - if you're only using some parts of Supabase, you only receive the hints for those parts.
<details>
@@ -32,7 +32,7 @@ If our application receives data via a webhook:
},
"payload": {
{
"sucess": true,
"success": true,
"content": {
"account_id": "d928b484-16bd-4f10-a827-3eb959b4cc14",
"event": "SUBSCRIBED",
@@ -1307,7 +1307,7 @@ To continue, bring up the **src/app/services/data.service.ts** and add this addi
Now that we can easily get all the updates to our relevant tables in realtime, we just need to handle them accordingly.
This is just a matter of finding out which **event** occured (INSERT, UPDATE, DELETE) and then applying the changes to our local data to add, change or remove data.
This is just a matter of finding out which **event** occurred (INSERT, UPDATE, DELETE) and then applying the changes to our local data to add, change or remove data.
Go ahead by finally implementing our function in the **src/app/components/inside/board/board.component.ts** that we left open until now:
+1 -1
View File
@@ -39,7 +39,7 @@ function Blog(props: any) {
const router = useRouter()
useEffect(() => {
// contruct an array of blog posts
// construct an array of blog posts
// not inluding the first blog post
const shiftedBlogs = [...props.blogs]
shiftedBlogs.shift()
+1 -1
View File
@@ -156,7 +156,7 @@ h6 { */
/* Database page */
.dashboard-tabs div[role='seperator'] {
.dashboard-tabs div[role='separator'] {
@apply border border-gray-50 dark:border-gray-700;
}
@@ -80,7 +80,7 @@ class _AvatarState extends State<Avatar> {
}
} catch (error) {
if (mounted) {
context.showErrorSnackBar(message: 'Unexpected error occured');
context.showErrorSnackBar(message: 'Unexpected error occurred');
}
}
@@ -35,7 +35,7 @@ class _AccountPageState extends State<AccountPage> {
} on PostgrestException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected exception occured');
context.showErrorSnackBar(message: 'Unexpected exception occurred');
}
setState(() {
@@ -65,7 +65,7 @@ class _AccountPageState extends State<AccountPage> {
} on PostgrestException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpeted error occured');
context.showErrorSnackBar(message: 'Unexpeted error occurred');
}
setState(() {
_loading = false;
@@ -78,7 +78,7 @@ class _AccountPageState extends State<AccountPage> {
} on AuthException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected error occured');
context.showErrorSnackBar(message: 'Unexpected error occurred');
}
if (mounted) {
Navigator.of(context).pushReplacementNamed('/');
@@ -99,7 +99,7 @@ class _AccountPageState extends State<AccountPage> {
} on PostgrestException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected error has occured');
context.showErrorSnackBar(message: 'Unexpected error has occurred');
}
if (!mounted) {
return;
@@ -36,7 +36,7 @@ class _LoginPageState extends State<LoginPage> {
} on AuthException catch (error) {
context.showErrorSnackBar(message: error.message);
} catch (error) {
context.showErrorSnackBar(message: 'Unexpected error occured');
context.showErrorSnackBar(message: 'Unexpected error occurred');
}
setState(() {
@@ -11,14 +11,14 @@ interface Props {
const Breadcrumb = ({ className, style, children, spacing = 'small' }: Props) => {
let classes = [BreadcrumbStyle['sbui-breadcrumb--container']]
let seperatorClasses = [BreadcrumbStyle['sbui-breadcrumb--separator']]
let separatorClasses = [BreadcrumbStyle['sbui-breadcrumb--separator']]
if (className) {
classes.push(className)
}
if (spacing) {
seperatorClasses.push(`sbui-breadcrumb--separator-${spacing}`)
separatorClasses.push(`sbui-breadcrumb--separator-${spacing}`)
}
return (
@@ -27,7 +27,7 @@ const Breadcrumb = ({ className, style, children, spacing = 'small' }: Props) =>
<li className={BreadcrumbStyle['sbui-breadcrumb--item-container']}>
{child}
{idx + 1 < children!.length && (
<IconChevronRight size={12} className={seperatorClasses.join(' ')} aria-hidden="true" />
<IconChevronRight size={12} className={separatorClasses.join(' ')} aria-hidden="true" />
)}
</li>
))}
@@ -37,7 +37,7 @@ export default function Divider({
return (
<div
// className={classes.join(' ')}
role="seperator"
role="separator"
style={style}
>
{children && (
@@ -68,7 +68,7 @@ export const DefaultFull = (args: any) => {
</Typography.Text>
</div>
</Dropdown.Misc>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Label>Group label</Dropdown.Label>,
<Dropdown.Item onClick={() => console.log('clicked')}>
Account
@@ -76,17 +76,17 @@ export const DefaultFull = (args: any) => {
<Dropdown.Item>
Settings <Dropdown.RightSlot>⌘+T</Dropdown.RightSlot>
</Dropdown.Item>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Checkbox checked={checked} onChange={setChecked}>
Show subtitles
</Dropdown.Checkbox>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.RadioGroup value={value} onChange={setValue}>
<Dropdown.Radio value={'red'}>Red</Dropdown.Radio>
<Dropdown.Radio value={'blue'}>Blue</Dropdown.Radio>
<Dropdown.Radio value={'green'}>Green</Dropdown.Radio>
</Dropdown.RadioGroup>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown
isNested
overlay={[
@@ -95,7 +95,7 @@ export const DefaultFull = (args: any) => {
<Dropdown.Radio value={'blue'}>Blue</Dropdown.Radio>
<Dropdown.Radio value={'green'}>Green</Dropdown.Radio>
</Dropdown.RadioGroup>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Label>Group label</Dropdown.Label>,
<Dropdown.Item onClick={() => console.log('clicked')}>
Account
@@ -112,7 +112,7 @@ export const DefaultFull = (args: any) => {
</Dropdown.RightSlot>
</Dropdown.TriggerItem>
</Dropdown>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Item icon={<IconLogIn size="tiny" />}>
Log out
</Dropdown.Item>,
@@ -142,7 +142,7 @@ export const Default = (args: any) => (
</Typography.Text>
</div>
</Dropdown.Misc>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Label>Group label</Dropdown.Label>,
<Dropdown.Item onClick={() => console.log('clicked')}>
Account
@@ -150,7 +150,7 @@ export const Default = (args: any) => (
<Dropdown.Item>
Settings <Dropdown.RightSlot>⌘+T</Dropdown.RightSlot>
</Dropdown.Item>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Item icon={<IconLogIn size="tiny" />}>Log out</Dropdown.Item>,
]}
>
@@ -172,7 +172,7 @@ export const doNotcloseOverlay = (args: any) => (
<Typography.Text>Signed in as </Typography.Text>
<Typography.Text strong>tom@example.com </Typography.Text>
</Dropdown.Misc>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Item>Account</Dropdown.Item>,
<Dropdown.Item>Settings</Dropdown.Item>,
<Dropdown.Item>
@@ -207,10 +207,10 @@ export const withCustomStyles = (args: any) => (
<Typography.Text>Signed in as </Typography.Text>
<Typography.Text strong>tom@example.com </Typography.Text>
</Dropdown.Item>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Item>Account</Dropdown.Item>,
<Dropdown.Item>Settings</Dropdown.Item>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Item>
<Button type="default" icon={<IconLogOut />}>
Log out
@@ -243,7 +243,7 @@ export const SearchList = (args: any) => (
<Typography.Text>Signed in as </Typography.Text>
<Typography.Text strong>tom@example.com </Typography.Text>
</Dropdown.Item>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Item icon={<IconLogIn />}>
<Typography.Text>Log out</Typography.Text>
</Dropdown.Item>,
@@ -270,7 +270,7 @@ export const Checkbox = (args: any) => {
Account
</Dropdown.Item>,
<Dropdown.Item>Settings</Dropdown.Item>,
<Dropdown.Seperator />,
<Dropdown.Separator />,
<Dropdown.Checkbox checked={checked} onChange={setChecked}>
Show subtitles
</Dropdown.Checkbox>,
@@ -126,10 +126,10 @@ interface CheckboxProps {
ItemIndicator?: React.ReactNode
}
export function Seperator() {
export function Separator() {
let __styles = styleHandler('dropdown')
return <RadixDropdown.Separator className={__styles.seperator} />
return <RadixDropdown.Separator className={__styles.separator} />
}
export function Checkbox({
@@ -220,7 +220,7 @@ Dropdown.Checkbox = Checkbox
Dropdown.Radio = Radio
Dropdown.RadioGroup = RadioGroup
Dropdown.Label = Label
Dropdown.Seperator = Seperator
Dropdown.Separator = Separator
Dropdown.RightSlot = RightSlot
Dropdown.TriggerItem = TriggerItem
export default Dropdown
@@ -588,7 +588,7 @@ customFooterOneButton.args = {
icon: <IconCheck background="brand" size="xxxlarge" />,
onCancel: action('onCancel'),
onConfirm: action('onConfirm'),
title: 'Payment succesful',
title: 'Payment successful',
description:
'Lorem ipsum dolor sit amet consectetur adipisicing elit. Consequatur amet labore.',
layout: 'vertical',
+3 -3
View File
@@ -186,12 +186,12 @@ function Content({ children }: { children: React.ReactNode }) {
return <div className={__styles.content}>{children}</div>
}
export function Seperator() {
export function Separator() {
const __styles = styleHandler('modal')
return <div className={__styles.seperator}></div>
return <div className={__styles.separator}></div>
}
Modal.Content = Content
Modal.Seperator = Seperator
Modal.Separator = Separator
export default Modal
@@ -41,7 +41,7 @@ export const Default = (args: any) => (
descriptionText="Set the width of something"
layout="horizontal"
/>
<Popover.Seperator />
<Popover.Separator />
<Input
className="px-3"
size="tiny"
@@ -50,7 +50,7 @@ export const Default = (args: any) => (
descriptionText="Set the width of something"
layout="horizontal"
/>
<Popover.Seperator />
<Popover.Separator />
<Input
className="px-3"
size="tiny"
@@ -101,12 +101,12 @@ function Close() {
)
}
function Seperator() {
function Separator() {
const __styles = styleHandler('popover')
return <div className={__styles.seperator}></div>
return <div className={__styles.separator}></div>
}
Popover.Seperator = Seperator
Popover.Separator = Separator
Popover.Close = Close
export default Popover
@@ -115,10 +115,10 @@ const SidePanel = ({
)
}
export function Seperator() {
export function Separator() {
let __styles = styleHandler('sidepanel')
return <div className={__styles.seperator}></div>
return <div className={__styles.separator}></div>
}
export function Content({ children }: { children: React.ReactNode }) {
@@ -128,5 +128,5 @@ export function Content({ children }: { children: React.ReactNode }) {
}
SidePanel.Content = Content
SidePanel.Seperator = Seperator
SidePanel.Separator = Separator
export default SidePanel
+4 -4
View File
@@ -982,7 +982,7 @@ export default {
data-closed:animate-panel-slide-right-in
`,
},
seperator: `
separator: `
w-full
h-px
my-2
@@ -1216,7 +1216,7 @@ export default {
px-4 flex items-center space-x-2 py-1.5
text-xs
`,
seperator: `
separator: `
w-full
h-px
my-2
@@ -1297,7 +1297,7 @@ export default {
transition
text-scale-900 hover:text-scale-1100
`,
seperator: `
separator: `
w-full
h-px
my-2
@@ -1453,7 +1453,7 @@ export default {
overflow-y-auto
data-open:animate-overlay-show data-closed:animate-overlay-hide
`,
seperator: `
separator: `
w-full
h-px
my-2
@@ -146,7 +146,7 @@ export const ForeignTableModal: React.FC<ForeignTableModalProps> = ({
onChange={onFilterChange}
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="foreign-table-modal__content-container">
<div
@@ -65,7 +65,7 @@ const Filter: FC = () => {
</div>
)}
</div>
<Popover.Seperator />
<Popover.Separator />
<div className="px-3">
<Button icon={<IconPlus />} type="text" onClick={onAddFilter}>
Add filter
@@ -70,7 +70,7 @@ const Sort: FC = () => {
</div>
)}
<Popover.Seperator />
<Popover.Separator />
<div className="px-3">
{columns && columns.length > 0 ? (
<DropdownControl
@@ -77,7 +77,7 @@ const NewAccessTokenButton = observer(() => {
className="w-full"
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<Button htmlType="submit" loading={isSubmitting} size="small" block danger>
Generate Token
@@ -45,7 +45,7 @@ const PolicyEditor: FC<Props> = ({
onUpdatePolicyName={(name) => onUpdatePolicyFormFields({ name })}
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
{isNewPolicy && (
<>
<Modal.Content>
@@ -54,7 +54,7 @@ const PolicyEditor: FC<Props> = ({
onSelectOperation={(command) => onUpdatePolicyFormFields({ command })}
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
</>
)}
<Modal.Content>
@@ -64,7 +64,7 @@ const PolicyEditor: FC<Props> = ({
onUpdateSelectedRoles={(roles) => onUpdatePolicyFormFields({ roles })}
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<PolicyDefinition
operation={operation}
@@ -55,7 +55,7 @@ const PolicyRow: FC<Props> = ({
>
Edit
</Dropdown.Item>
<Dropdown.Seperator />
<Dropdown.Separator />
<Dropdown.Item
icon={<IconTrash size={14} />}
onClick={() => onSelectDeletePolicy(policy)}
@@ -140,7 +140,7 @@ const UserDropdown: FC<Props> = ({ user, canRemoveUser }) => {
Send OTP
</Dropdown.Item>
) : null}
<Dropdown.Seperator />
<Dropdown.Separator />
<Tooltip.Root delayDuration={0}>
<Tooltip.Trigger className="w-full">
<Dropdown.Item
@@ -61,7 +61,7 @@ const AddPaymentMethodForm: FC<Props> = ({ returnUrl, onCancel }) => {
<PaymentElement />
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center space-x-2 pt-2">
<Button block htmlType="submit" type="primary" loading={isSaving}>
@@ -275,7 +275,7 @@ const ExitSurvey: FC<Props> = ({ freeTier, subscription, onSelectBack }) => {
<Modal.Content>
<p className="text-sm text-scale-1200">Would you like to update your project now?</p>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center gap-2">
<Button block type="default" onClick={() => setShowConfirmModal(false)}>
@@ -291,7 +291,7 @@ const PaymentSummaryPanel: FC<Props> = ({
<Modal.Content>
<p className="text-sm text-scale-1200">Would you like to update your project now?</p>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center gap-2">
<Button block type="default" onClick={() => setShowConfirmModal(false)}>
@@ -346,7 +346,7 @@ const ProUpgrade: FC<Props> = ({
</div>
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center gap-2">
<Button block type="primary" onClick={() => setShowSpendCapHelperModal(false)}>
@@ -347,7 +347,7 @@ const PITRSelection = ({}) => {
<Modal.Content>
<p>Point in time recovery review</p>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="py-2 space-y-1">
<p className="text-sm text-scale-1100"> Your database will be restored to</p>
@@ -355,7 +355,7 @@ const PITRSelection = ({}) => {
<p className="text-lg">{selectedTimezone?.text}</p>
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<Alert withIcon variant="warning" title="Warning: This action cannot be undone">
<div className="space-y-3">
@@ -366,7 +366,7 @@ const PITRSelection = ({}) => {
</div>
</Alert>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<p className="text-sm">
Restores may take from a few minutes up to several hours depending on the size of your
@@ -151,7 +151,7 @@ const EnableExtensionModal: FC<Props> = ({ visible, extension, onCancel }) => {
>
Create a new schema "{extension.name}"
</Listbox.Option>
<Modal.Seperator />
<Modal.Separator />
{/* @ts-ignore */}
{schemas.map((schema: PostgresSchema) => {
return (
@@ -176,7 +176,7 @@ const EnableExtensionModal: FC<Props> = ({ visible, extension, onCancel }) => {
</Modal.Content>
)}
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center justify-end space-x-2">
<Button type="default" disabled={isSubmitting} onClick={() => onCancel()}>
@@ -18,7 +18,7 @@ const ExtensionCard: FC<Props> = ({ extension }) => {
const [loading, setLoading] = useState(false)
const [showConfirmEnableModal, setShowConfirmEnableModal] = useState(false)
const canUpdateExtentions = checkPermissions(
const canUpdateExtensions = checkPermissions(
PermissionAction.TENANT_SQL_ADMIN_WRITE,
'extensions'
)
@@ -84,7 +84,7 @@ const ExtensionCard: FC<Props> = ({ extension }) => {
<Toggle
size="tiny"
checked={isOn}
disabled={!canUpdateExtentions}
disabled={!canUpdateExtensions}
onChange={() => (isOn ? disableExtension() : enableExtension())}
/>
)}
@@ -33,7 +33,7 @@ const Extensions: FC<Props> = ({}) => {
(ext: any) => !isNull(ext.installed_version)
)
const canUpdateExtentions = checkPermissions(
const canUpdateExtensions = checkPermissions(
PermissionAction.TENANT_SQL_ADMIN_WRITE,
'extensions'
)
@@ -49,7 +49,7 @@ const Extensions: FC<Props> = ({}) => {
onChange={(e) => setFilterString(e.target.value)}
icon={<IconSearch size="tiny" />}
/>
{!canUpdateExtentions && (
{!canUpdateExtensions && (
<div className="w-[500px]">
<InformationBox
icon={<IconAlertCircle className="text-scale-1100" strokeWidth={2} />}
@@ -372,11 +372,11 @@ const CreateFunction: FC<CreateFunctionProps> = ({ func, visible, setVisible })
<SelectSchema />
</div>
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<InputMultiArguments readonly={true} />
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<InputDefinition />
</SidePanel.Content>
@@ -386,22 +386,22 @@ const CreateFunction: FC<CreateFunctionProps> = ({ func, visible, setVisible })
<SidePanel.Content>
<InputName />
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<div className="space-y-4">
<SelectSchema />
<SelectReturnType />
</div>
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<InputMultiArguments />
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<InputDefinition />
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<Panel>
<div className={`space-y-8 rounded bg-bg-alt-light py-4 dark:bg-bg-alt-dark`}>
@@ -425,11 +425,11 @@ const CreateFunction: FC<CreateFunctionProps> = ({ func, visible, setVisible })
<SelectBehavior />
</div>
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<InputMultiConfigParams />
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<RadioSecurity />
</SidePanel.Content>
@@ -15,18 +15,18 @@ const ServiceConfigForm: FC = observer(({}) => {
<>
{_localState.formState.hookService.value === 'http_request' ? (
<>
<SidePanel.Seperator />
<SidePanel.Separator />
<div className="space-y-10">
<div className="space-y-6 px-6">
<h5>HTTP Request</h5>
<SelectServiceMethod />
<InputServiceUrl />
</div>
<SidePanel.Seperator />
<SidePanel.Separator />
<div className="px-6">
<InputMultiServiceHeaders />
</div>
<SidePanel.Seperator />
<SidePanel.Separator />
<div className="px-6">
<InputMultiServiceParams />
</div>
@@ -412,7 +412,7 @@ const CreateHook: FC<CreateHookProps> = ({ hook, visible = true, setVisible }) =
{_localState.formState.serviceHeaders.value.length > 0 && (
<>
<SidePanel.Seperator />
<SidePanel.Separator />
<div className="space-y-2 px-6">
<div className="flex items-center space-x-2">
<h5 className="text-base text-scale-1200">HTTP Headers</h5>
@@ -451,7 +451,7 @@ const CreateHook: FC<CreateHookProps> = ({ hook, visible = true, setVisible }) =
{_localState.formState.serviceParams.value.length > 0 && (
<>
<SidePanel.Seperator />
<SidePanel.Separator />
<div className="space-y-2 px-6">
<div className="flex items-center space-x-2">
<h5 className="text-base text-scale-1200">HTTP Parameters</h5>
@@ -489,13 +489,13 @@ const CreateHook: FC<CreateHookProps> = ({ hook, visible = true, setVisible }) =
<div className="px-6">
<InputName />
</div>
<SidePanel.Seperator />
<SidePanel.Separator />
<div className="space-y-6 px-6">
<h5 className="text-base text-scale-1200">Conditions to fire hook</h5>
<TableSelection />
<CheckboxEvents />
</div>
<SidePanel.Seperator />
<SidePanel.Separator />
<div className="space-y-6 px-6">
<h5 className="text-base text-scale-1200">Type of hook</h5>
<RadioGroupHookService />
@@ -350,7 +350,7 @@ const CreateTrigger: FC<CreateTriggerProps> = ({ trigger, visible, setVisible })
<div className="px-6">
<InputName />
</div>
<SidePanel.Seperator />
<SidePanel.Separator />
<div className="space-y-12 px-6">
<h5>Conditions to fire trigger</h5>
<ListboxTable />
@@ -358,7 +358,7 @@ const CreateTrigger: FC<CreateTriggerProps> = ({ trigger, visible, setVisible })
<ListboxActivation />
<SelectOrientation />
</div>
<SidePanel.Seperator />
<SidePanel.Separator />
<FunctionForm />
</>
)}
@@ -94,7 +94,7 @@ const DeleteOrganizationButton = observer(() => {
organization and remove all of its projects.
</p>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<Input
id="orgName"
@@ -109,7 +109,7 @@ const DeleteOrganizationButton = observer(() => {
className="w-full"
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<Button
block
@@ -180,7 +180,7 @@ const InviteMemberButton: FC<Props> = ({ user, members = [], roles = [], rolesAd
</div>
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="pt-2 pb-3">
<Button
@@ -197,7 +197,7 @@ const MemberActions: FC<Props> = ({ members, member, roles }) => {
<p className="block opacity-50">Transfer ownership of "{orgName}"</p>
</div>
</Dropdown.Item>
<Dropdown.Seperator />
<Dropdown.Separator />
</>
)}
{isPendingInviteAcceptance ? (
@@ -212,7 +212,7 @@ const MemberActions: FC<Props> = ({ members, member, roles }) => {
)}
{canResendInvite && isExpired && (
<>
<Dropdown.Seperator />
<Dropdown.Separator />
<Dropdown.Item onClick={() => handleResendInvite(member)}>
<div className="flex flex-col">
<p>Resend invitation</p>
@@ -266,7 +266,7 @@ const MembersView = () => {
By changing the role of this member their permissions will change.
</p>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex gap-3">
<Button
@@ -199,7 +199,7 @@ const JWTSettings: FC<Props> = ({}) => {
>
Generate a random secret
</Dropdown.Item>
<Dropdown.Seperator />
<Dropdown.Separator />
<Dropdown.Item
onClick={() => setIsCreatingKey(true)}
icon={<IconPenTool size={16} />}
@@ -202,7 +202,7 @@ const LogTable = ({
return (
<div className="flex w-1/2 justify-center px-5">
<Alert variant="danger" title="Sorry! An error occured when fetching data." withIcon>
<Alert variant="danger" title="Sorry! An error occurred when fetching data." withIcon>
<Renderer {...childProps} />
</Alert>
</div>
@@ -55,7 +55,7 @@ export const ErrorRenderers = () => (
<Alert
key={i}
variant="danger"
title="Sorry! An error occured when fetching data."
title="Sorry! An error occurred when fetching data."
withIcon
className="w-1/2"
>
@@ -61,7 +61,7 @@ const LogsFilterPopover: React.FC<Props> = ({
size="medium"
defaultChecked={(filters?.[options.key] as Filters)?.[x.key] as boolean}
/>
{i !== options.options.length - 1 && <Popover.Seperator />}
{i !== options.options.length - 1 && <Popover.Separator />}
</React.Fragment>
))}
</div>
@@ -51,7 +51,7 @@ const UpgradePrompt: React.FC<Props> = ({ show, setShowUpgradePrompt }) => {
</div>
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex justify-between">
<Button type="default" onClick={() => setShowUpgradePrompt(false)}>
@@ -190,7 +190,7 @@ const ColumnEditor: FC<Props> = ({
</div>
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<div className="space-y-10 py-6">
@@ -202,7 +202,7 @@ const ColumnEditor: FC<Props> = ({
/>
</div>
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<div className="space-y-10 py-6">
<ColumnType
@@ -90,7 +90,7 @@ const InputWithSuggestions: FC<Props> = ({
overlay={
<>
<Dropdown.Label>{suggestionsHeader || 'Suggestions'}</Dropdown.Label>
<Dropdown.Seperator />
<Dropdown.Separator />
{filteredSuggestions.map((suggestion: Suggestion) => (
<Dropdown.Item
key={suggestion.name}
@@ -184,7 +184,7 @@ const RowEditor: FC<Props> = ({
</SidePanel.Content>
{optionalFields.length > 0 && (
<>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<div className="space-y-10 py-6">
<div>
@@ -157,7 +157,7 @@ const Column: FC<Props> = ({
className="p-4"
onChange={() => onUpdateColumn({ isNullable: !column.isNullable })}
/>
<Popover.Seperator />
<Popover.Separator />
</>
)}
@@ -170,7 +170,7 @@ const Column: FC<Props> = ({
className="p-4"
onChange={() => onUpdateColumn({ isUnique: !column.isUnique })}
/>
<Popover.Seperator />
<Popover.Separator />
</>
)}
{column.format.includes('int') && (
@@ -186,7 +186,7 @@ const Column: FC<Props> = ({
onUpdateColumn({ isIdentity, isArray })
}}
/>
<Popover.Seperator />
<Popover.Separator />
</>
)}
@@ -197,7 +197,7 @@ const TableEditor: FC<Props> = ({
/>
</div>
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<div className="space-y-10 py-6">
<Checkbox
@@ -231,7 +231,7 @@ const TableEditor: FC<Props> = ({
/>
</div>
</SidePanel.Content>
<SidePanel.Seperator />
<SidePanel.Separator />
<SidePanel.Content>
<div className="space-y-10 py-6">
{!isDuplicating && (
@@ -99,7 +99,7 @@ const FeedbackWidget: FC<Props> = ({ onClose }) => {
value={feedback}
onChange={onFeedbackChange}
/>
<Popover.Seperator />
<Popover.Separator />
<div className="w-80 space-y-3 px-3 py-2 pb-4">
<div className="flex justify-between space-x-2">
<Button type="default" onClick={onClose} className="hover:border-gray-500">
@@ -57,7 +57,7 @@ const HelpPopover: FC<Props> = () => {
prioritised.
</p>
</div>
<Popover.Seperator />
<Popover.Separator />
<div className="mb-4 space-y-2">
<div className="mb-4 px-5">
<h5 className={'mb-2'}>Reach out to the community</h5>
@@ -102,7 +102,7 @@ const NotificationsPopover: FC<Props> = () => {
await app.projects.fetchDetail(projectToApplyMigration.ref, (project) => meta.setProjectDetails(project))
ui.setNotification({
category: 'success',
message: `Succesfully applied migration for project "${projectToApplyMigration.name}"`,
message: `Successfully applied migration for project "${projectToApplyMigration.name}"`,
})
} else {
ui.setNotification({
@@ -124,7 +124,7 @@ const NotificationsPopover: FC<Props> = () => {
await app.projects.fetchDetail(projectToRollbackMigration.ref, (project) => meta.setProjectDetails(project))
ui.setNotification({
category: 'success',
message: `Succesfully rolled back migration for project "${projectToRollbackMigration.name}"`,
message: `Successfully rolled back migration for project "${projectToRollbackMigration.name}"`,
})
} else {
ui.setNotification({
@@ -146,7 +146,7 @@ const NotificationsPopover: FC<Props> = () => {
await app.projects.fetchDetail(projectToFinalizeMigration.ref, (project) => meta.setProjectDetails(project))
ui.setNotification({
category: 'success',
message: `Succesfully finalized migration for project "${projectToFinalizeMigration.name}"`,
message: `Successfully finalized migration for project "${projectToFinalizeMigration.name}"`,
})
} else {
ui.setNotification({
@@ -204,7 +204,7 @@ const NotificationsPopover: FC<Props> = () => {
setTargetNotification(notification)
}}
/>
{i !== notifications.length - 1 && <Popover.Seperator />}
{i !== notifications.length - 1 && <Popover.Separator />}
</Fragment>
))}
</>
@@ -25,7 +25,7 @@ const OrgDropdown = () => {
{x.name}
</Dropdown.Item>
))}
<Dropdown.Seperator />
<Dropdown.Separator />
<Dropdown.Item icon={<IconPlus size="tiny" />} onClick={() => router.push(`/new`)}>
New organization
</Dropdown.Item>
@@ -52,7 +52,7 @@ const ProjectDropdown = () => {
</a>
</Link>
))}
<Popover.Seperator />
<Popover.Separator />
<Link href={`/new/${selectedOrganizationSlug}`}>
<a className="block">
<Dropdown.Item icon={<IconPlus size="tiny" />}>New project</Dropdown.Item>
@@ -82,7 +82,7 @@ const NavigationBar: FC<Props> = ({}) => {
Account Preferences
</Dropdown.Item>
</Link>
<Dropdown.Seperator />
<Dropdown.Separator />
</>
)}
<Dropdown.Label>Theme</Dropdown.Label>
@@ -135,7 +135,7 @@ const ProjectPausedState: FC<Props> = ({ project }) => {
</p>
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center gap-2">
<Button
@@ -73,7 +73,7 @@ const DropdownMenu = observer(({ tabInfo }: { tabInfo: QueryTab }) => {
<Dropdown.Item onClick={renameQuery} icon={<IconEdit2 size="tiny" />}>
Rename query
</Dropdown.Item>
<Dropdown.Seperator />
<Dropdown.Separator />
<Dropdown.Item onClick={() => setDeleteModalOpen(true)} icon={<IconTrash size="tiny" />}>
Remove query
</Dropdown.Item>
@@ -153,7 +153,7 @@ const BucketRow = ({
>
{bucket.public ? 'Make private' : 'Make public'}
</Dropdown.Item>,
<Dropdown.Seperator key="bucket-separator" />,
<Dropdown.Separator key="bucket-separator" />,
<Dropdown.Item
icon={<IconTrash size="tiny" />}
key="delete-bucket"
@@ -267,7 +267,7 @@ const TableEditorMenu: FC<Props> = ({
>
Duplicate Table
</Dropdown.Item>,
<Dropdown.Seperator key="separator" />,
<Dropdown.Separator key="separator" />,
<Dropdown.Item
key="delete-table"
icon={<IconTrash size="tiny" />}
@@ -29,7 +29,7 @@ const OrganizationDropdown = ({ organizations }) => {
{x.name}
</Dropdown.Item>
))}
<Dropdown.Seperator />
<Dropdown.Separator />
<Dropdown.Item icon={<IconPlus size="tiny" />} onClick={() => router.push(`/new`)}>
New organization
</Dropdown.Item>
@@ -73,7 +73,7 @@ const RenameQuery = observer(({ tabId, onComplete, visible, onCancel }) => {
<Modal.Content>
<Input label="Description" id="desc" placeholder="Describe query" />
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center justify-end gap-2">
<Button htmlType="reset" type="default" onClick={onCancel}>
@@ -87,7 +87,7 @@ const CreateBucketModal: FC<Props> = ({
/>
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="space-y-4">
<Toggle
@@ -321,7 +321,7 @@ const FileExplorerRow = ({
overlay={[
rowOptions.map((option) => {
if (option.name === 'Separator') {
return <Dropdown.Seperator key="row-separator" />
return <Dropdown.Separator key="row-separator" />
} else {
return (
<Dropdown.Item
@@ -85,7 +85,7 @@ const StoragePolicies = () => {
/*
Functions that involve the CRUD for policies
For each API call within the Promise.all, return true if an error occured, else return false
For each API call within the Promise.all, return true if an error occurred, else return false
*/
const onCreatePolicies = async (payloads) => {
return await Promise.all(
@@ -33,7 +33,7 @@ const PolicyRow = ({
>
Edit
</Dropdown.Item>
<Dropdown.Seperator />
<Dropdown.Separator />
<Dropdown.Item
icon={<IconTrash size={14} />}
type="outline"
@@ -117,14 +117,14 @@ const StoragePoliciesEditor = ({
onUpdatePolicyName={onUpdatePolicyName}
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<PolicyAllowedOperations
allowedOperations={policyFormFields.allowedOperations}
onToggleOperation={onToggleOperation}
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<PolicyRoles
roles={roles}
@@ -132,7 +132,7 @@ const StoragePoliciesEditor = ({
onUpdateSelectedRoles={onUpdatePolicyRoles}
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<PolicyDefinition
definition={definition}
@@ -80,7 +80,7 @@ const StorageConfig = ({ config, projectRef }: any) => {
fileSizeLimit: updatedValue.value,
unformattedFileSizeLimit: res.fileSizeLimit,
}
ui.setNotification({ category: 'success', message: 'Sucessfully updated settings' })
ui.setNotification({ category: 'success', message: 'Successfully updated settings' })
}
}
}
@@ -211,7 +211,7 @@ function _DatePicker({
from: startDate?.toISOString() || null,
to: endDate?.toISOString() || null,
})}
<Popover.Seperator />
<Popover.Separator />
<div className="flex items-center justify-end gap-2 py-2 px-3 pb-4">
<Button type="default" onClick={() => handleClear()}>
Clear
@@ -53,7 +53,7 @@ const ConfirmModal = ({
<Modal.Content>
<p className="text-sm text-scale-1100">{description}</p>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center gap-2">
<Button htmlType="button" type="default" onClick={onSelectCancel} block>
@@ -60,7 +60,7 @@ const TextConfirmModal: FC<Props> = ({
<Modal.Content>
<p className="mb-2 block text-sm">{text}</p>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<Input
id="confirmValue"
@@ -72,7 +72,7 @@ const TextConfirmModal: FC<Props> = ({
placeholder={confirmPlaceholder}
/>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<Button
block
+2 -2
View File
@@ -3,7 +3,7 @@ import { isUndefined } from 'lodash'
import { SupaResponse } from 'types/base'
export function handleError<T>(e: any, requestId: string): SupaResponse<T> {
const message = e?.message ? `An error has occured: ${e.message}` : 'An error has occured'
const message = e?.message ? `An error has occurred: ${e.message}` : 'An error has occurred'
const error = { code: 500, message, requestId }
return { error } as unknown as SupaResponse<T>
}
@@ -77,7 +77,7 @@ export async function handleResponseError<T = unknown>(
} else if (resJson.error && resJson.error.message) {
return { error: { code: response.status, ...resJson.error } } as unknown as SupaResponse<T>
} else {
const message = resTxt ?? `An error has occured: ${response.status}`
const message = resTxt ?? `An error has occurred: ${response.status}`
const error = { code: response.status, message, requestId }
return { error } as unknown as SupaResponse<T>
}
@@ -163,7 +163,7 @@ const BillingUpdate: NextPageWithLayout = () => {
</p>
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex items-center gap-2">
<Button
@@ -289,7 +289,7 @@ const ResetDbPassword: FC<any> = () => {
/>
</div>
</Modal.Content>
<Modal.Seperator />
<Modal.Separator />
<Modal.Content>
<div className="flex space-x-2 pb-2">
<Button type="default" onClick={() => setShowResetDbPass(false)}>
@@ -299,7 +299,7 @@ test('bug: load older btn does not error out when previous page is empty', async
// clicking load older multiple times should not give error
await waitFor(() => {
expect(screen.queryByText(/Sorry/)).toBeNull()
expect(screen.queryByText(/An error occured/)).toBeNull()
expect(screen.queryByText(/An error occurred/)).toBeNull()
expect(screen.queryByText(/undefined/)).toBeNull()
})
})