diff --git a/002_source/cms/public/locales/dev/translation.json b/002_source/cms/public/locales/dev/translation.json
index d551b3a..75986b8 100644
--- a/002_source/cms/public/locales/dev/translation.json
+++ b/002_source/cms/public/locales/dev/translation.json
@@ -165,13 +165,14 @@
"Cancel": "取消",
"Delete": "刪除",
"All": "全部",
- "categories": "課程分類",
+ "categories": "問題分類",
"listening-practice": "聽講練習",
"matching-frenzy": "配對練習",
"connective-revision": "連接詞練習",
"teachers": "導師",
"students": "學生",
"word-count": "字數",
+ "questions": "題目",
"loading": "載入中",
"Notifications": "通知",
"Mark all as read": "標記所有為已讀",
diff --git a/002_source/cms/src/app/dashboard/ListeningPractice/Categories/[customerId]/page.tsx b/002_source/cms/src/app/dashboard/ListeningPractice/Categories/[customerId]/page.tsx
deleted file mode 100644
index edf064e..0000000
--- a/002_source/cms/src/app/dashboard/ListeningPractice/Categories/[customerId]/page.tsx
+++ /dev/null
@@ -1,308 +0,0 @@
-import * as React from 'react';
-import type { Metadata } from 'next';
-import RouterLink from 'next/link';
-import Avatar from '@mui/material/Avatar';
-import Box from '@mui/material/Box';
-import Button from '@mui/material/Button';
-import Card from '@mui/material/Card';
-import CardContent from '@mui/material/CardContent';
-import CardHeader from '@mui/material/CardHeader';
-import Chip from '@mui/material/Chip';
-import Divider from '@mui/material/Divider';
-import IconButton from '@mui/material/IconButton';
-import LinearProgress from '@mui/material/LinearProgress';
-import Link from '@mui/material/Link';
-import Stack from '@mui/material/Stack';
-import Typography from '@mui/material/Typography';
-import Grid from '@mui/material/Unstable_Grid2';
-import { ArrowLeft as ArrowLeftIcon } from '@phosphor-icons/react/dist/ssr/ArrowLeft';
-import { CaretDown as CaretDownIcon } from '@phosphor-icons/react/dist/ssr/CaretDown';
-import { CheckCircle as CheckCircleIcon } from '@phosphor-icons/react/dist/ssr/CheckCircle';
-import { CreditCard as CreditCardIcon } from '@phosphor-icons/react/dist/ssr/CreditCard';
-import { House as HouseIcon } from '@phosphor-icons/react/dist/ssr/House';
-import { PencilSimple as PencilSimpleIcon } from '@phosphor-icons/react/dist/ssr/PencilSimple';
-import { Plus as PlusIcon } from '@phosphor-icons/react/dist/ssr/Plus';
-import { ShieldWarning as ShieldWarningIcon } from '@phosphor-icons/react/dist/ssr/ShieldWarning';
-import { User as UserIcon } from '@phosphor-icons/react/dist/ssr/User';
-
-import { config } from '@/config';
-import { paths } from '@/paths';
-import { dayjs } from '@/lib/dayjs';
-import { PropertyItem } from '@/components/core/property-item';
-import { PropertyList } from '@/components/core/property-list';
-import { Notifications } from '@/components/dashboard/customer/notifications';
-import { Payments } from '@/components/dashboard/customer/payments';
-import type { Address } from '@/components/dashboard/customer/shipping-address';
-import { ShippingAddress } from '@/components/dashboard/customer/shipping-address';
-
-export const metadata = { title: `Details | Customers | Dashboard | ${config.site.name}` } satisfies Metadata;
-
-export default function Page(): React.JSX.Element {
- return (
-
-
-
-
-
-
-
- MV
-
-
-
- Miron Vitold
- }
- label="Active"
- size="small"
- variant="outlined"
- />
-
-
- miron.vitold@domain.com
-
-
-
-
- } variant="contained">
- Action
-
-
-
-
-
-
-
-
-
-
-
- }
- avatar={
-
-
-
- }
- title="Basic details"
- />
- }
- orientation="vertical"
- sx={{ '--PropertyItem-padding': '12px 24px' }}
- >
- {(
- [
- { key: 'Customer ID', value: },
- { key: 'Name', value: 'Miron Vitold' },
- { key: 'Email', value: 'miron.vitold@domain.com' },
- { key: 'Phone', value: '(425) 434-5535' },
- { key: 'Company', value: 'Devias IO' },
- {
- key: 'Quota',
- value: (
-
-
-
- 50%
-
-
- ),
- },
- ] satisfies { key: string; value: React.ReactNode }[]
- ).map(
- (item): React.JSX.Element => (
-
- )
- )}
-
-
-
-
-
-
- }
- title="Security"
- />
-
-
-
-
-
-
- A deleted customer cannot be restored. All data will be permanently removed.
-
-
-
-
-
-
-
-
-
-
- }>
- Edit
-
- }
- avatar={
-
-
-
- }
- title="Billing details"
- />
-
-
- } sx={{ '--PropertyItem-padding': '16px' }}>
- {(
- [
- { key: 'Credit card', value: '**** 4142' },
- { key: 'Country', value: 'United States' },
- { key: 'State', value: 'Michigan' },
- { key: 'City', value: 'Southfield' },
- { key: 'Address', value: '1721 Bartlett Avenue, 48034' },
- { key: 'Tax ID', value: 'EU87956621' },
- ] satisfies { key: string; value: React.ReactNode }[]
- ).map(
- (item): React.JSX.Element => (
-
- )
- )}
-
-
-
-
-
- }>
- Add
-
- }
- avatar={
-
-
-
- }
- title="Shipping addresses"
- />
-
-
- {(
- [
- {
- id: 'ADR-001',
- country: 'United States',
- state: 'Michigan',
- city: 'Lansing',
- zipCode: '48933',
- street: '480 Haven Lane',
- primary: true,
- },
- {
- id: 'ADR-002',
- country: 'United States',
- state: 'Missouri',
- city: 'Springfield',
- zipCode: '65804',
- street: '4807 Lighthouse Drive',
- },
- ] satisfies Address[]
- ).map((address) => (
-
-
-
- ))}
-
-
-
-
-
-
-
-
-
- );
-}
diff --git a/002_source/cms/src/app/dashboard/ListeningPractice/Categories/create/page.tsx b/002_source/cms/src/app/dashboard/ListeningPractice/Categories/create/page.tsx
deleted file mode 100644
index a0460ab..0000000
--- a/002_source/cms/src/app/dashboard/ListeningPractice/Categories/create/page.tsx
+++ /dev/null
@@ -1,48 +0,0 @@
-import * as React from 'react';
-import type { Metadata } from 'next';
-import RouterLink from 'next/link';
-import Box from '@mui/material/Box';
-import Link from '@mui/material/Link';
-import Stack from '@mui/material/Stack';
-import Typography from '@mui/material/Typography';
-import { ArrowLeft as ArrowLeftIcon } from '@phosphor-icons/react/dist/ssr/ArrowLeft';
-
-import { config } from '@/config';
-import { paths } from '@/paths';
-import { CustomerCreateForm } from '@/components/dashboard/customer/customer-create-form';
-
-export const metadata = { title: `Create | Customers | Dashboard | ${config.site.name}` } satisfies Metadata;
-
-export default function Page(): React.JSX.Element {
- return (
-
-
-
-
-
- Create customer
-
-
-
-
-
- );
-}
diff --git a/002_source/cms/src/app/dashboard/ListeningPractice/Categories/page.tsx b/002_source/cms/src/app/dashboard/ListeningPractice/Categories/page.tsx
deleted file mode 100644
index 552f8dd..0000000
--- a/002_source/cms/src/app/dashboard/ListeningPractice/Categories/page.tsx
+++ /dev/null
@@ -1,255 +0,0 @@
-import * as React from 'react';
-import type { Metadata } from 'next';
-import Box from '@mui/material/Box';
-import Button from '@mui/material/Button';
-import Card from '@mui/material/Card';
-import Divider from '@mui/material/Divider';
-import Stack from '@mui/material/Stack';
-import Typography from '@mui/material/Typography';
-import { Plus as PlusIcon } from '@phosphor-icons/react/dist/ssr/Plus';
-
-import { config } from '@/config';
-import { dayjs } from '@/lib/dayjs';
-import { CustomersFilters } from '@/components/dashboard/customer/customers-filters';
-import type { Filters } from '@/components/dashboard/customer/customers-filters';
-import { CustomersPagination } from '@/components/dashboard/customer/customers-pagination';
-import { CustomersSelectionProvider } from '@/components/dashboard/customer/customers-selection-context';
-import { CustomersTable } from '@/components/dashboard/customer/customers-table';
-import type { Customer } from '@/components/dashboard/customer/customers-table';
-
-export const metadata = { title: `List | Customers | Dashboard | ${config.site.name}` } satisfies Metadata;
-
-const customers = [
- {
- id: 'USR-005',
- name: 'Fran Perez',
- avatar: '/assets/avatar-5.png',
- email: 'fran.perez@domain.com',
- phone: '(815) 704-0045',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(1, 'hour').toDate(),
- },
- {
- id: 'USR-004',
- name: 'Penjani Inyene',
- avatar: '/assets/avatar-4.png',
- email: 'penjani.inyene@domain.com',
- phone: '(803) 937-8925',
- quota: 100,
- status: 'active',
- createdAt: dayjs().subtract(3, 'hour').toDate(),
- },
- {
- id: 'USR-003',
- name: 'Carson Darrin',
- avatar: '/assets/avatar-3.png',
- email: 'carson.darrin@domain.com',
- phone: '(715) 278-5041',
- quota: 10,
- status: 'blocked',
- createdAt: dayjs().subtract(1, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-002',
- name: 'Siegbert Gottfried',
- avatar: '/assets/avatar-2.png',
- email: 'siegbert.gottfried@domain.com',
- phone: '(603) 766-0431',
- quota: 0,
- status: 'pending',
- createdAt: dayjs().subtract(7, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-001',
- name: 'Miron Vitold',
- avatar: '/assets/avatar-1.png',
- email: 'miron.vitold@domain.com',
- phone: '(425) 434-5535',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(2, 'hour').subtract(2, 'day').toDate(),
- },
- {
- id: 'USR-005',
- name: 'Fran Perez',
- avatar: '/assets/avatar-5.png',
- email: 'fran.perez@domain.com',
- phone: '(815) 704-0045',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(1, 'hour').toDate(),
- },
- {
- id: 'USR-004',
- name: 'Penjani Inyene',
- avatar: '/assets/avatar-4.png',
- email: 'penjani.inyene@domain.com',
- phone: '(803) 937-8925',
- quota: 100,
- status: 'active',
- createdAt: dayjs().subtract(3, 'hour').toDate(),
- },
- {
- id: 'USR-003',
- name: 'Carson Darrin',
- avatar: '/assets/avatar-3.png',
- email: 'carson.darrin@domain.com',
- phone: '(715) 278-5041',
- quota: 10,
- status: 'blocked',
- createdAt: dayjs().subtract(1, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-002',
- name: 'Siegbert Gottfried',
- avatar: '/assets/avatar-2.png',
- email: 'siegbert.gottfried@domain.com',
- phone: '(603) 766-0431',
- quota: 0,
- status: 'pending',
- createdAt: dayjs().subtract(7, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-001',
- name: 'Miron Vitold',
- avatar: '/assets/avatar-1.png',
- email: 'miron.vitold@domain.com',
- phone: '(425) 434-5535',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(2, 'hour').subtract(2, 'day').toDate(),
- },
- {
- id: 'USR-005',
- name: 'Fran Perez',
- avatar: '/assets/avatar-5.png',
- email: 'fran.perez@domain.com',
- phone: '(815) 704-0045',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(1, 'hour').toDate(),
- },
- {
- id: 'USR-004',
- name: 'Penjani Inyene',
- avatar: '/assets/avatar-4.png',
- email: 'penjani.inyene@domain.com',
- phone: '(803) 937-8925',
- quota: 100,
- status: 'active',
- createdAt: dayjs().subtract(3, 'hour').toDate(),
- },
- {
- id: 'USR-003',
- name: 'Carson Darrin',
- avatar: '/assets/avatar-3.png',
- email: 'carson.darrin@domain.com',
- phone: '(715) 278-5041',
- quota: 10,
- status: 'blocked',
- createdAt: dayjs().subtract(1, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-002',
- name: 'Siegbert Gottfried',
- avatar: '/assets/avatar-2.png',
- email: 'siegbert.gottfried@domain.com',
- phone: '(603) 766-0431',
- quota: 0,
- status: 'pending',
- createdAt: dayjs().subtract(7, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-001',
- name: 'Miron Vitold',
- avatar: '/assets/avatar-1.png',
- email: 'miron.vitold@domain.com',
- phone: '(425) 434-5535',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(2, 'hour').subtract(2, 'day').toDate(),
- },
-] satisfies Customer[];
-
-interface PageProps {
- searchParams: { email?: string; phone?: string; sortDir?: 'asc' | 'desc'; status?: string };
-}
-
-export default function Page({ searchParams }: PageProps): React.JSX.Element {
- const { email, phone, sortDir, status } = searchParams;
-
- const sortedCustomers = applySort(customers, sortDir);
- const filteredCustomers = applyFilters(sortedCustomers, { email, phone, status });
-
- return (
-
-
-
-
- Customers
-
-
- } variant="contained">
- Add
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- );
-}
-
-// Sorting and filtering has to be done on the server.
-
-function applySort(row: Customer[], sortDir: 'asc' | 'desc' | undefined): Customer[] {
- return row.sort((a, b) => {
- if (sortDir === 'asc') {
- return a.createdAt.getTime() - b.createdAt.getTime();
- }
-
- return b.createdAt.getTime() - a.createdAt.getTime();
- });
-}
-
-function applyFilters(row: Customer[], { email, phone, status }: Filters): Customer[] {
- return row.filter((item) => {
- if (email) {
- if (!item.email?.toLowerCase().includes(email.toLowerCase())) {
- return false;
- }
- }
-
- if (phone) {
- if (!item.phone?.toLowerCase().includes(phone.toLowerCase())) {
- return false;
- }
- }
-
- if (status) {
- if (item.status !== status) {
- return false;
- }
- }
-
- return true;
- });
-}
diff --git a/002_source/cms/src/app/dashboard/ListeningPractice/Questions/[customerId]/page.tsx b/002_source/cms/src/app/dashboard/ListeningPractice/Questions/[customerId]/page.tsx
deleted file mode 100644
index edf064e..0000000
--- a/002_source/cms/src/app/dashboard/ListeningPractice/Questions/[customerId]/page.tsx
+++ /dev/null
@@ -1,308 +0,0 @@
-import * as React from 'react';
-import type { Metadata } from 'next';
-import RouterLink from 'next/link';
-import Avatar from '@mui/material/Avatar';
-import Box from '@mui/material/Box';
-import Button from '@mui/material/Button';
-import Card from '@mui/material/Card';
-import CardContent from '@mui/material/CardContent';
-import CardHeader from '@mui/material/CardHeader';
-import Chip from '@mui/material/Chip';
-import Divider from '@mui/material/Divider';
-import IconButton from '@mui/material/IconButton';
-import LinearProgress from '@mui/material/LinearProgress';
-import Link from '@mui/material/Link';
-import Stack from '@mui/material/Stack';
-import Typography from '@mui/material/Typography';
-import Grid from '@mui/material/Unstable_Grid2';
-import { ArrowLeft as ArrowLeftIcon } from '@phosphor-icons/react/dist/ssr/ArrowLeft';
-import { CaretDown as CaretDownIcon } from '@phosphor-icons/react/dist/ssr/CaretDown';
-import { CheckCircle as CheckCircleIcon } from '@phosphor-icons/react/dist/ssr/CheckCircle';
-import { CreditCard as CreditCardIcon } from '@phosphor-icons/react/dist/ssr/CreditCard';
-import { House as HouseIcon } from '@phosphor-icons/react/dist/ssr/House';
-import { PencilSimple as PencilSimpleIcon } from '@phosphor-icons/react/dist/ssr/PencilSimple';
-import { Plus as PlusIcon } from '@phosphor-icons/react/dist/ssr/Plus';
-import { ShieldWarning as ShieldWarningIcon } from '@phosphor-icons/react/dist/ssr/ShieldWarning';
-import { User as UserIcon } from '@phosphor-icons/react/dist/ssr/User';
-
-import { config } from '@/config';
-import { paths } from '@/paths';
-import { dayjs } from '@/lib/dayjs';
-import { PropertyItem } from '@/components/core/property-item';
-import { PropertyList } from '@/components/core/property-list';
-import { Notifications } from '@/components/dashboard/customer/notifications';
-import { Payments } from '@/components/dashboard/customer/payments';
-import type { Address } from '@/components/dashboard/customer/shipping-address';
-import { ShippingAddress } from '@/components/dashboard/customer/shipping-address';
-
-export const metadata = { title: `Details | Customers | Dashboard | ${config.site.name}` } satisfies Metadata;
-
-export default function Page(): React.JSX.Element {
- return (
-
-
-
-
-
-
-
- MV
-
-
-
- Miron Vitold
- }
- label="Active"
- size="small"
- variant="outlined"
- />
-
-
- miron.vitold@domain.com
-
-
-
-
- } variant="contained">
- Action
-
-
-
-
-
-
-
-
-
-
-
- }
- avatar={
-
-
-
- }
- title="Basic details"
- />
- }
- orientation="vertical"
- sx={{ '--PropertyItem-padding': '12px 24px' }}
- >
- {(
- [
- { key: 'Customer ID', value: },
- { key: 'Name', value: 'Miron Vitold' },
- { key: 'Email', value: 'miron.vitold@domain.com' },
- { key: 'Phone', value: '(425) 434-5535' },
- { key: 'Company', value: 'Devias IO' },
- {
- key: 'Quota',
- value: (
-
-
-
- 50%
-
-
- ),
- },
- ] satisfies { key: string; value: React.ReactNode }[]
- ).map(
- (item): React.JSX.Element => (
-
- )
- )}
-
-
-
-
-
-
- }
- title="Security"
- />
-
-
-
-
-
-
- A deleted customer cannot be restored. All data will be permanently removed.
-
-
-
-
-
-
-
-
-
-
- }>
- Edit
-
- }
- avatar={
-
-
-
- }
- title="Billing details"
- />
-
-
- } sx={{ '--PropertyItem-padding': '16px' }}>
- {(
- [
- { key: 'Credit card', value: '**** 4142' },
- { key: 'Country', value: 'United States' },
- { key: 'State', value: 'Michigan' },
- { key: 'City', value: 'Southfield' },
- { key: 'Address', value: '1721 Bartlett Avenue, 48034' },
- { key: 'Tax ID', value: 'EU87956621' },
- ] satisfies { key: string; value: React.ReactNode }[]
- ).map(
- (item): React.JSX.Element => (
-
- )
- )}
-
-
-
-
-
- }>
- Add
-
- }
- avatar={
-
-
-
- }
- title="Shipping addresses"
- />
-
-
- {(
- [
- {
- id: 'ADR-001',
- country: 'United States',
- state: 'Michigan',
- city: 'Lansing',
- zipCode: '48933',
- street: '480 Haven Lane',
- primary: true,
- },
- {
- id: 'ADR-002',
- country: 'United States',
- state: 'Missouri',
- city: 'Springfield',
- zipCode: '65804',
- street: '4807 Lighthouse Drive',
- },
- ] satisfies Address[]
- ).map((address) => (
-
-
-
- ))}
-
-
-
-
-
-
-
-
-
- );
-}
diff --git a/002_source/cms/src/app/dashboard/ListeningPractice/Questions/create/page.tsx b/002_source/cms/src/app/dashboard/ListeningPractice/Questions/create/page.tsx
deleted file mode 100644
index a0460ab..0000000
--- a/002_source/cms/src/app/dashboard/ListeningPractice/Questions/create/page.tsx
+++ /dev/null
@@ -1,48 +0,0 @@
-import * as React from 'react';
-import type { Metadata } from 'next';
-import RouterLink from 'next/link';
-import Box from '@mui/material/Box';
-import Link from '@mui/material/Link';
-import Stack from '@mui/material/Stack';
-import Typography from '@mui/material/Typography';
-import { ArrowLeft as ArrowLeftIcon } from '@phosphor-icons/react/dist/ssr/ArrowLeft';
-
-import { config } from '@/config';
-import { paths } from '@/paths';
-import { CustomerCreateForm } from '@/components/dashboard/customer/customer-create-form';
-
-export const metadata = { title: `Create | Customers | Dashboard | ${config.site.name}` } satisfies Metadata;
-
-export default function Page(): React.JSX.Element {
- return (
-
-
-
-
-
- Create customer
-
-
-
-
-
- );
-}
diff --git a/002_source/cms/src/app/dashboard/ListeningPractice/Questions/page.tsx b/002_source/cms/src/app/dashboard/ListeningPractice/Questions/page.tsx
deleted file mode 100644
index 552f8dd..0000000
--- a/002_source/cms/src/app/dashboard/ListeningPractice/Questions/page.tsx
+++ /dev/null
@@ -1,255 +0,0 @@
-import * as React from 'react';
-import type { Metadata } from 'next';
-import Box from '@mui/material/Box';
-import Button from '@mui/material/Button';
-import Card from '@mui/material/Card';
-import Divider from '@mui/material/Divider';
-import Stack from '@mui/material/Stack';
-import Typography from '@mui/material/Typography';
-import { Plus as PlusIcon } from '@phosphor-icons/react/dist/ssr/Plus';
-
-import { config } from '@/config';
-import { dayjs } from '@/lib/dayjs';
-import { CustomersFilters } from '@/components/dashboard/customer/customers-filters';
-import type { Filters } from '@/components/dashboard/customer/customers-filters';
-import { CustomersPagination } from '@/components/dashboard/customer/customers-pagination';
-import { CustomersSelectionProvider } from '@/components/dashboard/customer/customers-selection-context';
-import { CustomersTable } from '@/components/dashboard/customer/customers-table';
-import type { Customer } from '@/components/dashboard/customer/customers-table';
-
-export const metadata = { title: `List | Customers | Dashboard | ${config.site.name}` } satisfies Metadata;
-
-const customers = [
- {
- id: 'USR-005',
- name: 'Fran Perez',
- avatar: '/assets/avatar-5.png',
- email: 'fran.perez@domain.com',
- phone: '(815) 704-0045',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(1, 'hour').toDate(),
- },
- {
- id: 'USR-004',
- name: 'Penjani Inyene',
- avatar: '/assets/avatar-4.png',
- email: 'penjani.inyene@domain.com',
- phone: '(803) 937-8925',
- quota: 100,
- status: 'active',
- createdAt: dayjs().subtract(3, 'hour').toDate(),
- },
- {
- id: 'USR-003',
- name: 'Carson Darrin',
- avatar: '/assets/avatar-3.png',
- email: 'carson.darrin@domain.com',
- phone: '(715) 278-5041',
- quota: 10,
- status: 'blocked',
- createdAt: dayjs().subtract(1, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-002',
- name: 'Siegbert Gottfried',
- avatar: '/assets/avatar-2.png',
- email: 'siegbert.gottfried@domain.com',
- phone: '(603) 766-0431',
- quota: 0,
- status: 'pending',
- createdAt: dayjs().subtract(7, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-001',
- name: 'Miron Vitold',
- avatar: '/assets/avatar-1.png',
- email: 'miron.vitold@domain.com',
- phone: '(425) 434-5535',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(2, 'hour').subtract(2, 'day').toDate(),
- },
- {
- id: 'USR-005',
- name: 'Fran Perez',
- avatar: '/assets/avatar-5.png',
- email: 'fran.perez@domain.com',
- phone: '(815) 704-0045',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(1, 'hour').toDate(),
- },
- {
- id: 'USR-004',
- name: 'Penjani Inyene',
- avatar: '/assets/avatar-4.png',
- email: 'penjani.inyene@domain.com',
- phone: '(803) 937-8925',
- quota: 100,
- status: 'active',
- createdAt: dayjs().subtract(3, 'hour').toDate(),
- },
- {
- id: 'USR-003',
- name: 'Carson Darrin',
- avatar: '/assets/avatar-3.png',
- email: 'carson.darrin@domain.com',
- phone: '(715) 278-5041',
- quota: 10,
- status: 'blocked',
- createdAt: dayjs().subtract(1, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-002',
- name: 'Siegbert Gottfried',
- avatar: '/assets/avatar-2.png',
- email: 'siegbert.gottfried@domain.com',
- phone: '(603) 766-0431',
- quota: 0,
- status: 'pending',
- createdAt: dayjs().subtract(7, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-001',
- name: 'Miron Vitold',
- avatar: '/assets/avatar-1.png',
- email: 'miron.vitold@domain.com',
- phone: '(425) 434-5535',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(2, 'hour').subtract(2, 'day').toDate(),
- },
- {
- id: 'USR-005',
- name: 'Fran Perez',
- avatar: '/assets/avatar-5.png',
- email: 'fran.perez@domain.com',
- phone: '(815) 704-0045',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(1, 'hour').toDate(),
- },
- {
- id: 'USR-004',
- name: 'Penjani Inyene',
- avatar: '/assets/avatar-4.png',
- email: 'penjani.inyene@domain.com',
- phone: '(803) 937-8925',
- quota: 100,
- status: 'active',
- createdAt: dayjs().subtract(3, 'hour').toDate(),
- },
- {
- id: 'USR-003',
- name: 'Carson Darrin',
- avatar: '/assets/avatar-3.png',
- email: 'carson.darrin@domain.com',
- phone: '(715) 278-5041',
- quota: 10,
- status: 'blocked',
- createdAt: dayjs().subtract(1, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-002',
- name: 'Siegbert Gottfried',
- avatar: '/assets/avatar-2.png',
- email: 'siegbert.gottfried@domain.com',
- phone: '(603) 766-0431',
- quota: 0,
- status: 'pending',
- createdAt: dayjs().subtract(7, 'hour').subtract(1, 'day').toDate(),
- },
- {
- id: 'USR-001',
- name: 'Miron Vitold',
- avatar: '/assets/avatar-1.png',
- email: 'miron.vitold@domain.com',
- phone: '(425) 434-5535',
- quota: 50,
- status: 'active',
- createdAt: dayjs().subtract(2, 'hour').subtract(2, 'day').toDate(),
- },
-] satisfies Customer[];
-
-interface PageProps {
- searchParams: { email?: string; phone?: string; sortDir?: 'asc' | 'desc'; status?: string };
-}
-
-export default function Page({ searchParams }: PageProps): React.JSX.Element {
- const { email, phone, sortDir, status } = searchParams;
-
- const sortedCustomers = applySort(customers, sortDir);
- const filteredCustomers = applyFilters(sortedCustomers, { email, phone, status });
-
- return (
-
-
-
-
- Customers
-
-
- } variant="contained">
- Add
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- );
-}
-
-// Sorting and filtering has to be done on the server.
-
-function applySort(row: Customer[], sortDir: 'asc' | 'desc' | undefined): Customer[] {
- return row.sort((a, b) => {
- if (sortDir === 'asc') {
- return a.createdAt.getTime() - b.createdAt.getTime();
- }
-
- return b.createdAt.getTime() - a.createdAt.getTime();
- });
-}
-
-function applyFilters(row: Customer[], { email, phone, status }: Filters): Customer[] {
- return row.filter((item) => {
- if (email) {
- if (!item.email?.toLowerCase().includes(email.toLowerCase())) {
- return false;
- }
- }
-
- if (phone) {
- if (!item.phone?.toLowerCase().includes(phone.toLowerCase())) {
- return false;
- }
- }
-
- if (status) {
- if (item.status !== status) {
- return false;
- }
- }
-
- return true;
- });
-}
diff --git a/002_source/pocketbase/pb_hooks/seed.pb.js b/002_source/pocketbase/pb_hooks/seed.pb.js
index 38e98e1..71ab7df 100644
--- a/002_source/pocketbase/pb_hooks/seed.pb.js
+++ b/002_source/pocketbase/pb_hooks/seed.pb.js
@@ -15,8 +15,13 @@ $app.rootCmd.addCommand(
require(`${__hooks}/seed/001_seed_LessonsTypes.js`)($app);
require(`${__hooks}/seed/002_LessonsCategories.js`)($app);
require(`${__hooks}/seed/003_Categories.js`)($app);
- require(`${__hooks}/seed/004_Users.js`)($app);
+ require(`${__hooks}/seed/004_clean_users.js`)($app);
+ require(`${__hooks}/seed/005_Users_teacher.js`)($app);
+ require(`${__hooks}/seed/006_Users_student.js`)($app);
require(`${__hooks}/seed/010_Vocabularies.js`)($app);
+ //
+ require(`${__hooks}/seed/020_QuizLPCategories.js`)($app);
+ require(`${__hooks}/seed/021_QuizLPQuestions.js`)($app);
$app.reloadCachedCollections();
$app.reloadSettings();
diff --git a/002_source/pocketbase/pb_hooks/seed/001_seed_LessonsTypes.js b/002_source/pocketbase/pb_hooks/seed/001_seed_LessonsTypes.js
index 856e0b2..1c87e8c 100644
--- a/002_source/pocketbase/pb_hooks/seed/001_seed_LessonsTypes.js
+++ b/002_source/pocketbase/pb_hooks/seed/001_seed_LessonsTypes.js
@@ -26,7 +26,7 @@ module.exports = ($app) => {
$app.save(record);
}
- console.log("seeding done");
+ console.log("001 lesson types seeding done");
};
const dirtyTruncateTable = (COLLECTION_NAME) => {
diff --git a/002_source/pocketbase/pb_hooks/seed/002_LessonsCategories.js b/002_source/pocketbase/pb_hooks/seed/002_LessonsCategories.js
index 23db253..64e5aab 100644
--- a/002_source/pocketbase/pb_hooks/seed/002_LessonsCategories.js
+++ b/002_source/pocketbase/pb_hooks/seed/002_LessonsCategories.js
@@ -39,7 +39,7 @@ module.exports = ($app) => {
$app.save(record);
}
- console.log("seeding done");
+ console.log("002 lesson categories seeding done");
};
const dirtyTruncateTable = (COLLECTION_NAME) => {
diff --git a/002_source/pocketbase/pb_hooks/seed/003_Categories.js b/002_source/pocketbase/pb_hooks/seed/003_Categories.js
index 8558f4c..b7a9306 100644
--- a/002_source/pocketbase/pb_hooks/seed/003_Categories.js
+++ b/002_source/pocketbase/pb_hooks/seed/003_Categories.js
@@ -1,48 +1,48 @@
-module.exports = $app => {
- const ASSETS_DIR = '/pb_hooks/assets';
- const getAsset = name => $filesystem.fileFromPath(ASSETS_DIR + '/' + name);
- const id_v = '1'.padStart(15, 0); //id_vocabulary
- const id_c = '2'.padStart(15, 0); //id_connectives
+module.exports = ($app) => {
+ const ASSETS_DIR = "/pb_hooks/assets";
+ const getAsset = (name) => $filesystem.fileFromPath(ASSETS_DIR + "/" + name);
+ const id_v = "1".padStart(15, 0); //id_vocabulary
+ const id_c = "2".padStart(15, 0); //id_connectives
let row_array = [
- ['1'.padStart(15, 0), 'news', '', getAsset('ci_news.jpg'), 1, 'visible', id_v, 'desc', 'remarks'],
- ['2'.padStart(15, 0), 'sports', '', getAsset('ci_sports.jpg'), 1, 'visible', id_v, 'desc', 'remarks'],
- ['3'.padStart(15, 0), 'technology', '', getAsset('ci_technology.jpg'), 1, 'visible', id_v, 'desc', 'remarks'],
- ['4'.padStart(15, 0), 'art', '', getAsset('ci_art.jpg'), 1, 'visible', id_v, 'desc', 'remarks'],
- ['5'.padStart(15, 0), 'basic', '', getAsset('ci_basic.jpg'), 1, 'visible', id_v, 'desc', 'remarks'],
- ['6'.padStart(15, 0), 'nature', '', getAsset('ci_nature.jpg'), 1, 'visible', id_v, 'desc', 'remarks'],
- ['7'.padStart(15, 0), 'workplace', '', getAsset('ci_workplace.jpg'), 1, 'visible', id_v, 'desc', 'remarks'],
- ['99'.padStart(15, 0), 'connectives', '', getAsset('1.png'), 1, 'visible', id_c, 'desc', 'remarks'],
+ ["1".padStart(15, 0), "news", "", getAsset("ci_news.jpg"), 1, "visible", id_v, "desc", "remarks"],
+ ["2".padStart(15, 0), "sports", "", getAsset("ci_sports.jpg"), 1, "visible", id_v, "desc", "remarks"],
+ ["3".padStart(15, 0), "technology", "", getAsset("ci_technology.jpg"), 1, "visible", id_v, "desc", "remarks"],
+ ["4".padStart(15, 0), "art", "", getAsset("ci_art.jpg"), 1, "visible", id_v, "desc", "remarks"],
+ ["5".padStart(15, 0), "basic", "", getAsset("ci_basic.jpg"), 1, "visible", id_v, "desc", "remarks"],
+ ["6".padStart(15, 0), "nature", "", getAsset("ci_nature.jpg"), 1, "visible", id_v, "desc", "remarks"],
+ ["7".padStart(15, 0), "workplace", "", getAsset("ci_workplace.jpg"), 1, "visible", id_v, "desc", "remarks"],
+ ["99".padStart(15, 0), "connectives", "", getAsset("1.png"), 1, "visible", id_c, "desc", "remarks"],
// ["2".padStart(15, 0), "Connectives", "connectivse", 1, "visible"],
// ["3".padStart(15, 0), "Testing visible", "testing", 3, "visible"],
// ["4".padStart(15, 0), "Testing hidden", "testing", 3, "hidden"],
];
- dirtyTruncateTable('Categories');
+ dirtyTruncateTable("Categories");
- let lt_collection = $app.findCollectionByNameOrId('Categories');
+ let lt_collection = $app.findCollectionByNameOrId("Categories");
for (let i = 0; i < row_array.length; i++) {
let lesson_type = row_array[i];
let record = new Record(lt_collection);
- record.set('id', lesson_type[0]);
- record.set('cat_name', lesson_type[1]);
- record.set('cat_image_url', lesson_type[2]);
- record.set('cat_image', lesson_type[3]);
- record.set('pos', lesson_type[4]);
- record.set('visible', lesson_type[5]);
- record.set('lesson_id', lesson_type[6]);
- record.set('description', lesson_type[7]);
- record.set('remarks', lesson_type[8]);
+ record.set("id", lesson_type[0]);
+ record.set("cat_name", lesson_type[1]);
+ record.set("cat_image_url", lesson_type[2]);
+ record.set("cat_image", lesson_type[3]);
+ record.set("pos", lesson_type[4]);
+ record.set("visible", lesson_type[5]);
+ record.set("lesson_id", lesson_type[6]);
+ record.set("description", lesson_type[7]);
+ record.set("remarks", lesson_type[8]);
$app.save(record);
}
- console.log('seeding done');
+ console.log("003 categories seeding done");
};
-const dirtyTruncateTable = COLLECTION_NAME => {
+const dirtyTruncateTable = (COLLECTION_NAME) => {
console.log(`perform dirty method to truncate table "${COLLECTION_NAME}"`);
- const cmd_to_exec = $os.cmd('sqlite3', '/pb_data/data.db', `DELETE from ${COLLECTION_NAME};`);
+ const cmd_to_exec = $os.cmd("sqlite3", "/pb_data/data.db", `DELETE from ${COLLECTION_NAME};`);
cmd_to_exec.output();
};
diff --git a/002_source/pocketbase/pb_hooks/seed/004_Users.js b/002_source/pocketbase/pb_hooks/seed/004_Users.js
deleted file mode 100644
index 6645ac9..0000000
--- a/002_source/pocketbase/pb_hooks/seed/004_Users.js
+++ /dev/null
@@ -1,58 +0,0 @@
-module.exports = ($app) => {
- const ASSETS_DIR = "/pb_hooks/assets";
- const getAsset = (name) => $filesystem.fileFromPath(ASSETS_DIR + "/" + name);
- const id_v = "1".padStart(15, 0); //id_vocabulary
- const id_c = "2".padStart(15, 0); //id_connectives
-
- let row_array = [
- ["1".padStart(15, 0), "user1@123.com", "user1@123.com", "user1@123.com", true, true, "test_user_1"],
- ["2".padStart(15, 0), "user2@123.com", "user2@123.com", "user2@123.com", true, true, "test_user_2"],
- ["3".padStart(15, 0), "user3@123.com", "user3@123.com", "user3@123.com", true, true, "test_user_3"],
- ["4".padStart(15, 0), "user4@123.com", "user4@123.com", "user4@123.com", true, true, "test_user_4"],
- ["5".padStart(15, 0), "user5@123.com", "user5@123.com", "user5@123.com", true, true, "test_user_5"],
- ];
- dirtyTruncateTable("Users");
-
- let um_row_array = [
- ["1".padStart(15, 0), "user1@123.com", "active", "1".padStart(15, 0), JSON.stringify({})],
- ["2".padStart(15, 0), "user2@123.com", "active", "2".padStart(15, 0), JSON.stringify({})],
- ["3".padStart(15, 0), "user3@123.com", "active", "3".padStart(15, 0), JSON.stringify({})],
- ["4".padStart(15, 0), "user4@123.com", "active", "4".padStart(15, 0), JSON.stringify({})],
- ["5".padStart(15, 0), "user5@123.com", "active", "5".padStart(15, 0), JSON.stringify({})],
- ];
- dirtyTruncateTable("UserMetas");
-
- let users_collection = $app.findCollectionByNameOrId("users");
- let user_metas_collection = $app.findCollectionByNameOrId("UserMetas");
-
- for (let i = 0; i < row_array.length; i++) {
- let user = row_array[i];
- let um = um_row_array[i];
-
- let record = new Record(users_collection);
- record.set("id", user[0]);
- record.set("password", user[1]);
- record.set("passwordConfirm", user[2]);
- record.set("email", user[3]);
- record.set("emailVisibility", user[4]);
- record.set("verified", user[5]);
- record.set("name", user[6]);
- $app.save(record);
-
- let um_record = new Record(user_metas_collection);
- um_record.set("id", um[0]);
- um_record.set("helloworld", um[1]);
- um_record.set("state", um[2]);
- um_record.set("user_id", um[3]);
- um_record.set("meta", um[4]);
- $app.save(um_record);
- }
-
- console.log("seeding done");
-};
-
-const dirtyTruncateTable = (COLLECTION_NAME) => {
- console.log(`perform dirty method to truncate table "${COLLECTION_NAME}"`);
- const cmd_to_exec = $os.cmd("sqlite3", "/pb_data/data.db", `DELETE from ${COLLECTION_NAME};`);
- cmd_to_exec.output();
-};
diff --git a/002_source/pocketbase/pb_hooks/seed/schema copy 2.json b/002_source/pocketbase/pb_hooks/seed/schema copy 2.json
deleted file mode 100644
index 9e1bcd0..0000000
--- a/002_source/pocketbase/pb_hooks/seed/schema copy 2.json
+++ /dev/null
@@ -1,2584 +0,0 @@
-[
- {
- "id": "pbc_3142635823",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "_superusers",
- "type": "auth",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "cost": 0,
- "hidden": true,
- "id": "password901924565",
- "max": 0,
- "min": 8,
- "name": "password",
- "pattern": "",
- "presentable": false,
- "required": true,
- "system": true,
- "type": "password"
- },
- {
- "autogeneratePattern": "[a-zA-Z0-9]{50}",
- "hidden": true,
- "id": "text2504183744",
- "max": 60,
- "min": 30,
- "name": "tokenKey",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "exceptDomains": null,
- "hidden": false,
- "id": "email3885137012",
- "name": "email",
- "onlyDomains": null,
- "presentable": false,
- "required": true,
- "system": true,
- "type": "email"
- },
- {
- "hidden": false,
- "id": "bool1547992806",
- "name": "emailVisibility",
- "presentable": false,
- "required": false,
- "system": true,
- "type": "bool"
- },
- {
- "hidden": false,
- "id": "bool256245529",
- "name": "verified",
- "presentable": false,
- "required": false,
- "system": true,
- "type": "bool"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE UNIQUE INDEX `idx_tokenKey_pbc_3142635823` ON `_superusers` (`tokenKey`)",
- "CREATE UNIQUE INDEX `idx_email_pbc_3142635823` ON `_superusers` (`email`) WHERE `email` != ''"
- ],
- "system": true,
- "authRule": "",
- "manageRule": null,
- "authAlert": {
- "enabled": true,
- "emailTemplate": {
- "subject": "Login from a new location",
- "body": "
Hello,
\nWe noticed a login to your {APP_NAME} account from a new location.
\nIf this was you, you may disregard this email.
\nIf this wasn't you, you should immediately change your {APP_NAME} account password to revoke access from all other locations.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- "oauth2": {
- "mappedFields": {
- "id": "",
- "name": "",
- "username": "",
- "avatarURL": ""
- },
- "enabled": false
- },
- "passwordAuth": {
- "enabled": true,
- "identityFields": [
- "email"
- ]
- },
- "mfa": {
- "enabled": false,
- "duration": 1800,
- "rule": ""
- },
- "otp": {
- "enabled": false,
- "duration": 180,
- "length": 8,
- "emailTemplate": {
- "subject": "OTP for {APP_NAME}",
- "body": "Hello,
\nYour one-time password is: {OTP}
\nIf you didn't ask for the one-time password, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- "authToken": {
- "duration": 86400
- },
- "passwordResetToken": {
- "duration": 1800
- },
- "emailChangeToken": {
- "duration": 1800
- },
- "verificationToken": {
- "duration": 259200
- },
- "fileToken": {
- "duration": 180
- },
- "verificationTemplate": {
- "subject": "Verify your {APP_NAME} email",
- "body": "Hello,
\nThank you for joining us at {APP_NAME}.
\nClick on the button below to verify your email address.
\n\n Verify\n
\n\n Thanks,
\n {APP_NAME} team\n
"
- },
- "resetPasswordTemplate": {
- "subject": "Reset your {APP_NAME} password",
- "body": "Hello,
\nClick on the button below to reset your password.
\n\n Reset password\n
\nIf you didn't ask to reset your password, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- },
- "confirmEmailChangeTemplate": {
- "subject": "Confirm your {APP_NAME} new email address",
- "body": "Hello,
\nClick on the button below to confirm your new email address.
\n\n Confirm new email\n
\nIf you didn't ask to change your email address, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- {
- "id": "_pb_users_auth_",
- "listRule": "id = @request.auth.id",
- "viewRule": "id = @request.auth.id",
- "createRule": "",
- "updateRule": "id = @request.auth.id",
- "deleteRule": "id = @request.auth.id",
- "name": "users",
- "type": "auth",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "cost": 0,
- "hidden": true,
- "id": "password901924565",
- "max": 0,
- "min": 8,
- "name": "password",
- "pattern": "",
- "presentable": false,
- "required": true,
- "system": true,
- "type": "password"
- },
- {
- "autogeneratePattern": "[a-zA-Z0-9]{50}",
- "hidden": true,
- "id": "text2504183744",
- "max": 60,
- "min": 30,
- "name": "tokenKey",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "exceptDomains": null,
- "hidden": false,
- "id": "email3885137012",
- "name": "email",
- "onlyDomains": null,
- "presentable": false,
- "required": true,
- "system": true,
- "type": "email"
- },
- {
- "hidden": false,
- "id": "bool1547992806",
- "name": "emailVisibility",
- "presentable": false,
- "required": false,
- "system": true,
- "type": "bool"
- },
- {
- "hidden": false,
- "id": "bool256245529",
- "name": "verified",
- "presentable": false,
- "required": false,
- "system": true,
- "type": "bool"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1579384326",
- "max": 255,
- "min": 0,
- "name": "name",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file376926767",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [
- "image/jpeg",
- "image/png",
- "image/svg+xml",
- "image/gif",
- "image/webp"
- ],
- "name": "avatar",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": null,
- "type": "file"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE UNIQUE INDEX `idx_tokenKey__pb_users_auth_` ON `users` (`tokenKey`)",
- "CREATE UNIQUE INDEX `idx_email__pb_users_auth_` ON `users` (`email`) WHERE `email` != ''"
- ],
- "system": false,
- "authRule": "",
- "manageRule": null,
- "authAlert": {
- "enabled": true,
- "emailTemplate": {
- "subject": "Login from a new location",
- "body": "Hello,
\nWe noticed a login to your {APP_NAME} account from a new location.
\nIf this was you, you may disregard this email.
\nIf this wasn't you, you should immediately change your {APP_NAME} account password to revoke access from all other locations.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- "oauth2": {
- "mappedFields": {
- "id": "",
- "name": "name",
- "username": "",
- "avatarURL": "avatar"
- },
- "enabled": false
- },
- "passwordAuth": {
- "enabled": true,
- "identityFields": [
- "email"
- ]
- },
- "mfa": {
- "enabled": false,
- "duration": 1800,
- "rule": ""
- },
- "otp": {
- "enabled": false,
- "duration": 180,
- "length": 8,
- "emailTemplate": {
- "subject": "OTP for {APP_NAME}",
- "body": "Hello,
\nYour one-time password is: {OTP}
\nIf you didn't ask for the one-time password, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- "authToken": {
- "duration": 604800
- },
- "passwordResetToken": {
- "duration": 1800
- },
- "emailChangeToken": {
- "duration": 1800
- },
- "verificationToken": {
- "duration": 259200
- },
- "fileToken": {
- "duration": 180
- },
- "verificationTemplate": {
- "subject": "Verify your {APP_NAME} email",
- "body": "Hello,
\nThank you for joining us at {APP_NAME}.
\nClick on the button below to verify your email address.
\n\n Verify\n
\n\n Thanks,
\n {APP_NAME} team\n
"
- },
- "resetPasswordTemplate": {
- "subject": "Reset your {APP_NAME} password",
- "body": "Hello,
\nClick on the button below to reset your password.
\n\n Reset password\n
\nIf you didn't ask to reset your password, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- },
- "confirmEmailChangeTemplate": {
- "subject": "Confirm your {APP_NAME} new email address",
- "body": "Hello,
\nClick on the button below to confirm your new email address.
\n\n Confirm new email\n
\nIf you didn't ask to change your email address, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- {
- "id": "pbc_1430376151",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "Categories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2034676914",
- "max": 0,
- "min": 0,
- "name": "cat_image_url",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2739402623",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": true,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_2328411368",
- "hidden": false,
- "id": "relation3455582614",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "lesson_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1156222427",
- "max": 0,
- "min": 0,
- "name": "remarks",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2058414169",
- "max": 0,
- "min": 0,
- "name": "visible",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_1196309394",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "LessonsCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1137421714",
- "max": 0,
- "min": 0,
- "name": "cat_image_url",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": true,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_2328411368",
- "hidden": false,
- "id": "relation3455582614",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "lesson_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "convertURLs": false,
- "hidden": false,
- "id": "editor1843675174",
- "maxSize": 0,
- "name": "description",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "editor"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1156222427",
- "max": 0,
- "min": 0,
- "name": "remarks",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2058414169",
- "max": 0,
- "min": 0,
- "name": "visible",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_2328411368",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "LessonsTypes",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1579384326",
- "max": 0,
- "min": 0,
- "name": "name",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2363381545",
- "max": 0,
- "min": 0,
- "name": "type",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": true,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2058414169",
- "max": 0,
- "min": 0,
- "name": "visible",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_4061499106",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizCRCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": false,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "hidden": false,
- "id": "json3915970527",
- "maxSize": 0,
- "name": "init_answer",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_3141885671",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizCRQuestions",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2416551515",
- "max": 0,
- "min": 0,
- "name": "question_fh",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2814132303",
- "max": 0,
- "min": 0,
- "name": "question_sh",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1249130051",
- "max": 0,
- "min": 0,
- "name": "modal_ans",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_4061499106",
- "hidden": false,
- "id": "relation1827623476",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "json3493198471",
- "maxSize": 0,
- "name": "options",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_3571292172",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2034676914",
- "max": 0,
- "min": 0,
- "name": "cat_image",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "json3915970527",
- "maxSize": 0,
- "name": "init_answer",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_96745150",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizConnectives",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2416551515",
- "max": 0,
- "min": 0,
- "name": "question_fh",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2814132303",
- "max": 0,
- "min": 0,
- "name": "question_sh",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1249130051",
- "max": 0,
- "min": 0,
- "name": "modal_ans",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_342761728",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 999,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_342761728",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizConnectivesCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_3639453778",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizLPCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": false,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "hidden": false,
- "id": "json3915970527",
- "maxSize": 0,
- "name": "init_answer",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_742947356",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizLPQuestions",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file4170105732",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "sound",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_3639453778",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_2511066072",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizListenings",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file4170105732",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "sound",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_3571292172",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 999,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_84667061",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizMFCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": false,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "hidden": false,
- "id": "json3915970527",
- "maxSize": 0,
- "name": "init_answer",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_3346420851",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizMFQuestions",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3690399444",
- "max": 0,
- "min": 0,
- "name": "word_c",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_84667061",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_2936646783",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizMatchings",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3690399444",
- "max": 0,
- "min": 0,
- "name": "word_c",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_3571292172",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 999,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_1305841361",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "UserMetas",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text4192936109",
- "max": 0,
- "min": 0,
- "name": "helloworld",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "json3622966325",
- "maxSize": 0,
- "name": "meta",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "cascadeDelete": false,
- "collectionId": "_pb_users_auth_",
- "hidden": false,
- "id": "relation2809058197",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "user_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_1638686383",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "Vocabularies",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file3309110367",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "file4170105732",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "sound",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3690399444",
- "max": 0,
- "min": 0,
- "name": "word_c",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text412313404",
- "max": 0,
- "min": 0,
- "name": "sample_e",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text4059087369",
- "max": 0,
- "min": 0,
- "name": "sample_c",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_1430376151",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text105650625",
- "max": 0,
- "min": 0,
- "name": "category",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_2328411368",
- "hidden": false,
- "id": "relation808508980",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "lesson_type_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_4275539003",
- "listRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "viewRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "createRule": null,
- "updateRule": null,
- "deleteRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "name": "_authOrigins",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text455797646",
- "max": 0,
- "min": 0,
- "name": "collectionRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text127846527",
- "max": 0,
- "min": 0,
- "name": "recordRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text4228609354",
- "max": 0,
- "min": 0,
- "name": "fingerprint",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE UNIQUE INDEX `idx_authOrigins_unique_pairs` ON `_authOrigins` (collectionRef, recordRef, fingerprint)"
- ],
- "system": true
- },
- {
- "id": "pbc_2281828961",
- "listRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "viewRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "createRule": null,
- "updateRule": null,
- "deleteRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "name": "_externalAuths",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text455797646",
- "max": 0,
- "min": 0,
- "name": "collectionRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text127846527",
- "max": 0,
- "min": 0,
- "name": "recordRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2462348188",
- "max": 0,
- "min": 0,
- "name": "provider",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1044722854",
- "max": 0,
- "min": 0,
- "name": "providerId",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE UNIQUE INDEX `idx_externalAuths_record_provider` ON `_externalAuths` (collectionRef, recordRef, provider)",
- "CREATE UNIQUE INDEX `idx_externalAuths_collection_provider` ON `_externalAuths` (collectionRef, provider, providerId)"
- ],
- "system": true
- },
- {
- "id": "pbc_2279338944",
- "listRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "viewRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "_mfas",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text455797646",
- "max": 0,
- "min": 0,
- "name": "collectionRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text127846527",
- "max": 0,
- "min": 0,
- "name": "recordRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1582905952",
- "max": 0,
- "min": 0,
- "name": "method",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE INDEX `idx_mfas_collectionRef_recordRef` ON `_mfas` (collectionRef,recordRef)"
- ],
- "system": true
- },
- {
- "id": "pbc_1638494021",
- "listRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "viewRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "_otps",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text455797646",
- "max": 0,
- "min": 0,
- "name": "collectionRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text127846527",
- "max": 0,
- "min": 0,
- "name": "recordRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "cost": 8,
- "hidden": true,
- "id": "password901924565",
- "max": 0,
- "min": 0,
- "name": "password",
- "pattern": "",
- "presentable": false,
- "required": true,
- "system": true,
- "type": "password"
- },
- {
- "autogeneratePattern": "",
- "hidden": true,
- "id": "text3866985172",
- "max": 0,
- "min": 0,
- "name": "sentTo",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE INDEX `idx_otps_collectionRef_recordRef` ON `_otps` (collectionRef, recordRef)"
- ],
- "system": true
- },
- {
- "id": "pbc_123408445",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "helloworlds",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text907060870",
- "max": 0,
- "min": 0,
- "name": "hello",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_2109205374",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "t1",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text907060870",
- "max": 0,
- "min": 0,
- "name": "hello",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- }
-]
diff --git a/002_source/pocketbase/pb_hooks/seed/schema copy.json b/002_source/pocketbase/pb_hooks/seed/schema copy.json
deleted file mode 100644
index 9e1bcd0..0000000
--- a/002_source/pocketbase/pb_hooks/seed/schema copy.json
+++ /dev/null
@@ -1,2584 +0,0 @@
-[
- {
- "id": "pbc_3142635823",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "_superusers",
- "type": "auth",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "cost": 0,
- "hidden": true,
- "id": "password901924565",
- "max": 0,
- "min": 8,
- "name": "password",
- "pattern": "",
- "presentable": false,
- "required": true,
- "system": true,
- "type": "password"
- },
- {
- "autogeneratePattern": "[a-zA-Z0-9]{50}",
- "hidden": true,
- "id": "text2504183744",
- "max": 60,
- "min": 30,
- "name": "tokenKey",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "exceptDomains": null,
- "hidden": false,
- "id": "email3885137012",
- "name": "email",
- "onlyDomains": null,
- "presentable": false,
- "required": true,
- "system": true,
- "type": "email"
- },
- {
- "hidden": false,
- "id": "bool1547992806",
- "name": "emailVisibility",
- "presentable": false,
- "required": false,
- "system": true,
- "type": "bool"
- },
- {
- "hidden": false,
- "id": "bool256245529",
- "name": "verified",
- "presentable": false,
- "required": false,
- "system": true,
- "type": "bool"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE UNIQUE INDEX `idx_tokenKey_pbc_3142635823` ON `_superusers` (`tokenKey`)",
- "CREATE UNIQUE INDEX `idx_email_pbc_3142635823` ON `_superusers` (`email`) WHERE `email` != ''"
- ],
- "system": true,
- "authRule": "",
- "manageRule": null,
- "authAlert": {
- "enabled": true,
- "emailTemplate": {
- "subject": "Login from a new location",
- "body": "Hello,
\nWe noticed a login to your {APP_NAME} account from a new location.
\nIf this was you, you may disregard this email.
\nIf this wasn't you, you should immediately change your {APP_NAME} account password to revoke access from all other locations.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- "oauth2": {
- "mappedFields": {
- "id": "",
- "name": "",
- "username": "",
- "avatarURL": ""
- },
- "enabled": false
- },
- "passwordAuth": {
- "enabled": true,
- "identityFields": [
- "email"
- ]
- },
- "mfa": {
- "enabled": false,
- "duration": 1800,
- "rule": ""
- },
- "otp": {
- "enabled": false,
- "duration": 180,
- "length": 8,
- "emailTemplate": {
- "subject": "OTP for {APP_NAME}",
- "body": "Hello,
\nYour one-time password is: {OTP}
\nIf you didn't ask for the one-time password, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- "authToken": {
- "duration": 86400
- },
- "passwordResetToken": {
- "duration": 1800
- },
- "emailChangeToken": {
- "duration": 1800
- },
- "verificationToken": {
- "duration": 259200
- },
- "fileToken": {
- "duration": 180
- },
- "verificationTemplate": {
- "subject": "Verify your {APP_NAME} email",
- "body": "Hello,
\nThank you for joining us at {APP_NAME}.
\nClick on the button below to verify your email address.
\n\n Verify\n
\n\n Thanks,
\n {APP_NAME} team\n
"
- },
- "resetPasswordTemplate": {
- "subject": "Reset your {APP_NAME} password",
- "body": "Hello,
\nClick on the button below to reset your password.
\n\n Reset password\n
\nIf you didn't ask to reset your password, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- },
- "confirmEmailChangeTemplate": {
- "subject": "Confirm your {APP_NAME} new email address",
- "body": "Hello,
\nClick on the button below to confirm your new email address.
\n\n Confirm new email\n
\nIf you didn't ask to change your email address, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- {
- "id": "_pb_users_auth_",
- "listRule": "id = @request.auth.id",
- "viewRule": "id = @request.auth.id",
- "createRule": "",
- "updateRule": "id = @request.auth.id",
- "deleteRule": "id = @request.auth.id",
- "name": "users",
- "type": "auth",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "cost": 0,
- "hidden": true,
- "id": "password901924565",
- "max": 0,
- "min": 8,
- "name": "password",
- "pattern": "",
- "presentable": false,
- "required": true,
- "system": true,
- "type": "password"
- },
- {
- "autogeneratePattern": "[a-zA-Z0-9]{50}",
- "hidden": true,
- "id": "text2504183744",
- "max": 60,
- "min": 30,
- "name": "tokenKey",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "exceptDomains": null,
- "hidden": false,
- "id": "email3885137012",
- "name": "email",
- "onlyDomains": null,
- "presentable": false,
- "required": true,
- "system": true,
- "type": "email"
- },
- {
- "hidden": false,
- "id": "bool1547992806",
- "name": "emailVisibility",
- "presentable": false,
- "required": false,
- "system": true,
- "type": "bool"
- },
- {
- "hidden": false,
- "id": "bool256245529",
- "name": "verified",
- "presentable": false,
- "required": false,
- "system": true,
- "type": "bool"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1579384326",
- "max": 255,
- "min": 0,
- "name": "name",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file376926767",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [
- "image/jpeg",
- "image/png",
- "image/svg+xml",
- "image/gif",
- "image/webp"
- ],
- "name": "avatar",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": null,
- "type": "file"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE UNIQUE INDEX `idx_tokenKey__pb_users_auth_` ON `users` (`tokenKey`)",
- "CREATE UNIQUE INDEX `idx_email__pb_users_auth_` ON `users` (`email`) WHERE `email` != ''"
- ],
- "system": false,
- "authRule": "",
- "manageRule": null,
- "authAlert": {
- "enabled": true,
- "emailTemplate": {
- "subject": "Login from a new location",
- "body": "Hello,
\nWe noticed a login to your {APP_NAME} account from a new location.
\nIf this was you, you may disregard this email.
\nIf this wasn't you, you should immediately change your {APP_NAME} account password to revoke access from all other locations.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- "oauth2": {
- "mappedFields": {
- "id": "",
- "name": "name",
- "username": "",
- "avatarURL": "avatar"
- },
- "enabled": false
- },
- "passwordAuth": {
- "enabled": true,
- "identityFields": [
- "email"
- ]
- },
- "mfa": {
- "enabled": false,
- "duration": 1800,
- "rule": ""
- },
- "otp": {
- "enabled": false,
- "duration": 180,
- "length": 8,
- "emailTemplate": {
- "subject": "OTP for {APP_NAME}",
- "body": "Hello,
\nYour one-time password is: {OTP}
\nIf you didn't ask for the one-time password, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- "authToken": {
- "duration": 604800
- },
- "passwordResetToken": {
- "duration": 1800
- },
- "emailChangeToken": {
- "duration": 1800
- },
- "verificationToken": {
- "duration": 259200
- },
- "fileToken": {
- "duration": 180
- },
- "verificationTemplate": {
- "subject": "Verify your {APP_NAME} email",
- "body": "Hello,
\nThank you for joining us at {APP_NAME}.
\nClick on the button below to verify your email address.
\n\n Verify\n
\n\n Thanks,
\n {APP_NAME} team\n
"
- },
- "resetPasswordTemplate": {
- "subject": "Reset your {APP_NAME} password",
- "body": "Hello,
\nClick on the button below to reset your password.
\n\n Reset password\n
\nIf you didn't ask to reset your password, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- },
- "confirmEmailChangeTemplate": {
- "subject": "Confirm your {APP_NAME} new email address",
- "body": "Hello,
\nClick on the button below to confirm your new email address.
\n\n Confirm new email\n
\nIf you didn't ask to change your email address, you can ignore this email.
\n\n Thanks,
\n {APP_NAME} team\n
"
- }
- },
- {
- "id": "pbc_1430376151",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "Categories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2034676914",
- "max": 0,
- "min": 0,
- "name": "cat_image_url",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2739402623",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": true,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_2328411368",
- "hidden": false,
- "id": "relation3455582614",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "lesson_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1156222427",
- "max": 0,
- "min": 0,
- "name": "remarks",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2058414169",
- "max": 0,
- "min": 0,
- "name": "visible",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_1196309394",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "LessonsCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1137421714",
- "max": 0,
- "min": 0,
- "name": "cat_image_url",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": true,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_2328411368",
- "hidden": false,
- "id": "relation3455582614",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "lesson_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "convertURLs": false,
- "hidden": false,
- "id": "editor1843675174",
- "maxSize": 0,
- "name": "description",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "editor"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1156222427",
- "max": 0,
- "min": 0,
- "name": "remarks",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2058414169",
- "max": 0,
- "min": 0,
- "name": "visible",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_2328411368",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "LessonsTypes",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1579384326",
- "max": 0,
- "min": 0,
- "name": "name",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2363381545",
- "max": 0,
- "min": 0,
- "name": "type",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": true,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2058414169",
- "max": 0,
- "min": 0,
- "name": "visible",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_4061499106",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizCRCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": false,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "hidden": false,
- "id": "json3915970527",
- "maxSize": 0,
- "name": "init_answer",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_3141885671",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizCRQuestions",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2416551515",
- "max": 0,
- "min": 0,
- "name": "question_fh",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2814132303",
- "max": 0,
- "min": 0,
- "name": "question_sh",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1249130051",
- "max": 0,
- "min": 0,
- "name": "modal_ans",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_4061499106",
- "hidden": false,
- "id": "relation1827623476",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "json3493198471",
- "maxSize": 0,
- "name": "options",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_3571292172",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2034676914",
- "max": 0,
- "min": 0,
- "name": "cat_image",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "json3915970527",
- "maxSize": 0,
- "name": "init_answer",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_96745150",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizConnectives",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2416551515",
- "max": 0,
- "min": 0,
- "name": "question_fh",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2814132303",
- "max": 0,
- "min": 0,
- "name": "question_sh",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1249130051",
- "max": 0,
- "min": 0,
- "name": "modal_ans",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_342761728",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 999,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_342761728",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizConnectivesCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_3639453778",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizLPCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": false,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "hidden": false,
- "id": "json3915970527",
- "maxSize": 0,
- "name": "init_answer",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_742947356",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizLPQuestions",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file4170105732",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "sound",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_3639453778",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_2511066072",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizListenings",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file4170105732",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "sound",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_3571292172",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 999,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_84667061",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizMFCategories",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1125157303",
- "max": 0,
- "min": 0,
- "name": "cat_name",
- "pattern": "",
- "presentable": true,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file2034676914",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "cat_image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "number2161764012",
- "max": null,
- "min": null,
- "name": "pos",
- "onlyInt": false,
- "presentable": false,
- "required": false,
- "system": false,
- "type": "number"
- },
- {
- "hidden": false,
- "id": "json3915970527",
- "maxSize": 0,
- "name": "init_answer",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_3346420851",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "QuizMFQuestions",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3690399444",
- "max": 0,
- "min": 0,
- "name": "word_c",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_84667061",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_2936646783",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "QuizMatchings",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3690399444",
- "max": 0,
- "min": 0,
- "name": "word_c",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_3571292172",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 999,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_1305841361",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "UserMetas",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text4192936109",
- "max": 0,
- "min": 0,
- "name": "helloworld",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "json3622966325",
- "maxSize": 0,
- "name": "meta",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "json"
- },
- {
- "cascadeDelete": false,
- "collectionId": "_pb_users_auth_",
- "hidden": false,
- "id": "relation2809058197",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "user_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_1638686383",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "Vocabularies",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "file3309110367",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "image",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "hidden": false,
- "id": "file4170105732",
- "maxSelect": 1,
- "maxSize": 0,
- "mimeTypes": [],
- "name": "sound",
- "presentable": false,
- "protected": false,
- "required": false,
- "system": false,
- "thumbs": [],
- "type": "file"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3287381265",
- "max": 0,
- "min": 0,
- "name": "word",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text3690399444",
- "max": 0,
- "min": 0,
- "name": "word_c",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text412313404",
- "max": 0,
- "min": 0,
- "name": "sample_e",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text4059087369",
- "max": 0,
- "min": 0,
- "name": "sample_c",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_1430376151",
- "hidden": false,
- "id": "relation3870140739",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "cat_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text105650625",
- "max": 0,
- "min": 0,
- "name": "category",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "cascadeDelete": false,
- "collectionId": "pbc_2328411368",
- "hidden": false,
- "id": "relation808508980",
- "maxSelect": 1,
- "minSelect": 0,
- "name": "lesson_type_id",
- "presentable": false,
- "required": false,
- "system": false,
- "type": "relation"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_4275539003",
- "listRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "viewRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "createRule": null,
- "updateRule": null,
- "deleteRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "name": "_authOrigins",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text455797646",
- "max": 0,
- "min": 0,
- "name": "collectionRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text127846527",
- "max": 0,
- "min": 0,
- "name": "recordRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text4228609354",
- "max": 0,
- "min": 0,
- "name": "fingerprint",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE UNIQUE INDEX `idx_authOrigins_unique_pairs` ON `_authOrigins` (collectionRef, recordRef, fingerprint)"
- ],
- "system": true
- },
- {
- "id": "pbc_2281828961",
- "listRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "viewRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "createRule": null,
- "updateRule": null,
- "deleteRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "name": "_externalAuths",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text455797646",
- "max": 0,
- "min": 0,
- "name": "collectionRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text127846527",
- "max": 0,
- "min": 0,
- "name": "recordRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text2462348188",
- "max": 0,
- "min": 0,
- "name": "provider",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1044722854",
- "max": 0,
- "min": 0,
- "name": "providerId",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE UNIQUE INDEX `idx_externalAuths_record_provider` ON `_externalAuths` (collectionRef, recordRef, provider)",
- "CREATE UNIQUE INDEX `idx_externalAuths_collection_provider` ON `_externalAuths` (collectionRef, provider, providerId)"
- ],
- "system": true
- },
- {
- "id": "pbc_2279338944",
- "listRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "viewRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "_mfas",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text455797646",
- "max": 0,
- "min": 0,
- "name": "collectionRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text127846527",
- "max": 0,
- "min": 0,
- "name": "recordRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text1582905952",
- "max": 0,
- "min": 0,
- "name": "method",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE INDEX `idx_mfas_collectionRef_recordRef` ON `_mfas` (collectionRef,recordRef)"
- ],
- "system": true
- },
- {
- "id": "pbc_1638494021",
- "listRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "viewRule": "@request.auth.id != '' && recordRef = @request.auth.id && collectionRef = @request.auth.collectionId",
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "_otps",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text455797646",
- "max": 0,
- "min": 0,
- "name": "collectionRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text127846527",
- "max": 0,
- "min": 0,
- "name": "recordRef",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "cost": 8,
- "hidden": true,
- "id": "password901924565",
- "max": 0,
- "min": 0,
- "name": "password",
- "pattern": "",
- "presentable": false,
- "required": true,
- "system": true,
- "type": "password"
- },
- {
- "autogeneratePattern": "",
- "hidden": true,
- "id": "text3866985172",
- "max": 0,
- "min": 0,
- "name": "sentTo",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": true,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": true,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": true,
- "type": "autodate"
- }
- ],
- "indexes": [
- "CREATE INDEX `idx_otps_collectionRef_recordRef` ON `_otps` (collectionRef, recordRef)"
- ],
- "system": true
- },
- {
- "id": "pbc_123408445",
- "listRule": "",
- "viewRule": "",
- "createRule": "",
- "updateRule": "",
- "deleteRule": "",
- "name": "helloworlds",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text907060870",
- "max": 0,
- "min": 0,
- "name": "hello",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- },
- {
- "id": "pbc_2109205374",
- "listRule": null,
- "viewRule": null,
- "createRule": null,
- "updateRule": null,
- "deleteRule": null,
- "name": "t1",
- "type": "base",
- "fields": [
- {
- "autogeneratePattern": "[a-z0-9]{15}",
- "hidden": false,
- "id": "text3208210256",
- "max": 15,
- "min": 15,
- "name": "id",
- "pattern": "^[a-z0-9]+$",
- "presentable": false,
- "primaryKey": true,
- "required": true,
- "system": true,
- "type": "text"
- },
- {
- "autogeneratePattern": "",
- "hidden": false,
- "id": "text907060870",
- "max": 0,
- "min": 0,
- "name": "hello",
- "pattern": "",
- "presentable": false,
- "primaryKey": false,
- "required": false,
- "system": false,
- "type": "text"
- },
- {
- "hidden": false,
- "id": "autodate2990389176",
- "name": "created",
- "onCreate": true,
- "onUpdate": false,
- "presentable": false,
- "system": false,
- "type": "autodate"
- },
- {
- "hidden": false,
- "id": "autodate3332085495",
- "name": "updated",
- "onCreate": true,
- "onUpdate": true,
- "presentable": false,
- "system": false,
- "type": "autodate"
- }
- ],
- "indexes": [],
- "system": false
- }
-]
diff --git a/002_source/pocketbase/pb_hooks/seed/schema.json b/002_source/pocketbase/pb_hooks/seed/schema.json
index 8409a59..1548ff9 100644
--- a/002_source/pocketbase/pb_hooks/seed/schema.json
+++ b/002_source/pocketbase/pb_hooks/seed/schema.json
@@ -771,6 +771,17 @@
"presentable": false,
"system": false,
"type": "autodate"
+ },
+ {
+ "hidden": false,
+ "id": "date1542800728",
+ "max": "",
+ "min": "",
+ "name": "field",
+ "presentable": false,
+ "required": false,
+ "system": false,
+ "type": "date"
}
],
"indexes": [],
@@ -1884,6 +1895,48 @@
"presentable": false,
"system": false,
"type": "autodate"
+ },
+ {
+ "autogeneratePattern": "",
+ "hidden": false,
+ "id": "text2744374011",
+ "max": 0,
+ "min": 0,
+ "name": "state",
+ "pattern": "",
+ "presentable": false,
+ "primaryKey": false,
+ "required": false,
+ "system": false,
+ "type": "text"
+ },
+ {
+ "hidden": false,
+ "id": "file376926767",
+ "maxSelect": 1,
+ "maxSize": 0,
+ "mimeTypes": [],
+ "name": "avatar",
+ "presentable": false,
+ "protected": false,
+ "required": false,
+ "system": false,
+ "thumbs": [],
+ "type": "file"
+ },
+ {
+ "autogeneratePattern": "",
+ "hidden": false,
+ "id": "text1466534506",
+ "max": 0,
+ "min": 0,
+ "name": "role",
+ "pattern": "",
+ "presentable": false,
+ "primaryKey": false,
+ "required": false,
+ "system": false,
+ "type": "text"
}
],
"indexes": [],
@@ -2576,9 +2629,23 @@
"presentable": false,
"system": false,
"type": "autodate"
+ },
+ {
+ "hidden": false,
+ "id": "file2313559263",
+ "maxSelect": 1,
+ "maxSize": 0,
+ "mimeTypes": [],
+ "name": "test_file",
+ "presentable": false,
+ "protected": false,
+ "required": false,
+ "system": false,
+ "thumbs": [],
+ "type": "file"
}
],
"indexes": [],
"system": false
}
-]
\ No newline at end of file
+]