mirror of
https://github.com/OneUptime/oneuptime.git
synced 2026-04-06 00:32:12 +02:00
Merge pull request #74 from OneUptime/compile-accounts
Compile accounts
This commit is contained in:
10692
Accounts/package-lock.json
generated
10692
Accounts/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -9,7 +9,7 @@
|
||||
"@stripe/react-stripe-js": "^1.7.2",
|
||||
"@stripe/stripe-js": "^1.29.0",
|
||||
"@types/compression": "^1.7.2",
|
||||
"@types/react-dom": "^18.0.3",
|
||||
"@types/react-dom": "^17.0.2",
|
||||
"@types/react-redux": "^7.1.24",
|
||||
"@types/react-router-redux": "^5.0.21",
|
||||
"@types/redux-form": "^8.3.5",
|
||||
@@ -29,9 +29,9 @@
|
||||
"prop-types": "^15.8.1",
|
||||
"puppeteer": "^13.7.0",
|
||||
"query-string": "^7.1.1",
|
||||
"react": "^18.1.0",
|
||||
"react": "^17.0.2",
|
||||
"react-awesome-reveal": "^3.8.1",
|
||||
"react-dom": "^18.1.0",
|
||||
"react-dom": "^17.0.2",
|
||||
"react-frontload": "^2.0.0",
|
||||
"react-ga": "^3.3.0",
|
||||
"react-redux": "^8.0.1",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import BackendAPI from 'CommonUI/src/utils/api/backend';
|
||||
import BackendAPI from 'CommonUI/src/Utils/API/Backend';
|
||||
import { Dispatch } from 'redux';
|
||||
import Route from 'Common/Types/api/route';
|
||||
import * as types from '../constants/changePassword';
|
||||
@@ -1,7 +0,0 @@
|
||||
export const companySize: $TSFixMe = [
|
||||
{ name: '1-10', code: '1-10' },
|
||||
{ name: '11-50', code: '11-50' },
|
||||
{ name: '51-200', code: '51-200' },
|
||||
{ name: '200-1000', code: '200-1000' },
|
||||
{ name: '1000+', code: '1000+' },
|
||||
];
|
||||
@@ -1,245 +0,0 @@
|
||||
export const countries: $TSFixMe = [
|
||||
{ name: 'Afghanistan', code: 'AF' },
|
||||
{ name: 'Åland Islands', code: 'AX' },
|
||||
{ name: 'Albania', code: 'AL' },
|
||||
{ name: 'Algeria', code: 'DZ' },
|
||||
{ name: 'American Samoa', code: 'AS' },
|
||||
{ name: 'Andorra', code: 'AD' },
|
||||
{ name: 'Angola', code: 'AO' },
|
||||
{ name: 'Anguilla', code: 'AI' },
|
||||
{ name: 'Antarctica', code: 'AQ' },
|
||||
{ name: 'Antigua and Barbuda', code: 'AG' },
|
||||
{ name: 'Argentina', code: 'AR' },
|
||||
{ name: 'Armenia', code: 'AM' },
|
||||
{ name: 'Aruba', code: 'AW' },
|
||||
{ name: 'Australia', code: 'AU' },
|
||||
{ name: 'Austria', code: 'AT' },
|
||||
{ name: 'Azerbaijan', code: 'AZ' },
|
||||
{ name: 'Bahamas', code: 'BS' },
|
||||
{ name: 'Bahrain', code: 'BH' },
|
||||
{ name: 'Bangladesh', code: 'BD' },
|
||||
{ name: 'Barbados', code: 'BB' },
|
||||
{ name: 'Belarus', code: 'BY' },
|
||||
{ name: 'Belgium', code: 'BE' },
|
||||
{ name: 'Belize', code: 'BZ' },
|
||||
{ name: 'Benin', code: 'BJ' },
|
||||
{ name: 'Bermuda', code: 'BM' },
|
||||
{ name: 'Bhutan', code: 'BT' },
|
||||
{ name: 'Bolivia', code: 'BO' },
|
||||
{ name: 'Bosnia and Herzegovina', code: 'BA' },
|
||||
{ name: 'Botswana', code: 'BW' },
|
||||
{ name: 'Bouvet Island', code: 'BV' },
|
||||
{ name: 'Brazil', code: 'BR' },
|
||||
{ name: 'British Indian Ocean Territory', code: 'IO' },
|
||||
{ name: 'Brunei Darussalam', code: 'BN' },
|
||||
{ name: 'Bulgaria', code: 'BG' },
|
||||
{ name: 'Burkina Faso', code: 'BF' },
|
||||
{ name: 'Burundi', code: 'BI' },
|
||||
{ name: 'Cambodia', code: 'KH' },
|
||||
{ name: 'Cameroon', code: 'CM' },
|
||||
{ name: 'Canada', code: 'CA' },
|
||||
{ name: 'Cape Verde', code: 'CV' },
|
||||
{ name: 'Cayman Islands', code: 'KY' },
|
||||
{ name: 'Central African Republic', code: 'CF' },
|
||||
{ name: 'Chad', code: 'TD' },
|
||||
{ name: 'Chile', code: 'CL' },
|
||||
{ name: 'China', code: 'CN' },
|
||||
{ name: 'Christmas Island', code: 'CX' },
|
||||
{ name: 'Cocos (Keeling) Islands', code: 'CC' },
|
||||
{ name: 'Colombia', code: 'CO' },
|
||||
{ name: 'Comoros', code: 'KM' },
|
||||
{ name: 'Congo', code: 'CG' },
|
||||
{ name: 'Congo, The Democratic Republic of the', code: 'CD' },
|
||||
{ name: 'Cook Islands', code: 'CK' },
|
||||
{ name: 'Costa Rica', code: 'CR' },
|
||||
{ name: "Cote d'Ivoire", code: 'CI' },
|
||||
{ name: 'Croatia', code: 'HR' },
|
||||
{ name: 'Cuba', code: 'CU' },
|
||||
{ name: 'Cyprus', code: 'CY' },
|
||||
{ name: 'Czech Republic', code: 'CZ' },
|
||||
{ name: 'Denmark', code: 'DK' },
|
||||
{ name: 'Djibouti', code: 'DJ' },
|
||||
{ name: 'Dominica', code: 'DM' },
|
||||
{ name: 'Dominican Republic', code: 'DO' },
|
||||
{ name: 'Ecuador', code: 'EC' },
|
||||
{ name: 'Egypt', code: 'EG' },
|
||||
{ name: 'El Salvador', code: 'SV' },
|
||||
{ name: 'Equatorial Guinea', code: 'GQ' },
|
||||
{ name: 'Eritrea', code: 'ER' },
|
||||
{ name: 'Estonia', code: 'EE' },
|
||||
{ name: 'Ethiopia', code: 'ET' },
|
||||
{ name: 'Falkland Islands (Malvinas)', code: 'FK' },
|
||||
{ name: 'Faroe Islands', code: 'FO' },
|
||||
{ name: 'Fiji', code: 'FJ' },
|
||||
{ name: 'Finland', code: 'FI' },
|
||||
{ name: 'France', code: 'FR' },
|
||||
{ name: 'French Guiana', code: 'GF' },
|
||||
{ name: 'French Polynesia', code: 'PF' },
|
||||
{ name: 'French Southern Territories', code: 'TF' },
|
||||
{ name: 'Gabon', code: 'GA' },
|
||||
{ name: 'Gambia', code: 'GM' },
|
||||
{ name: 'Georgia', code: 'GE' },
|
||||
{ name: 'Germany', code: 'DE' },
|
||||
{ name: 'Ghana', code: 'GH' },
|
||||
{ name: 'Gibraltar', code: 'GI' },
|
||||
{ name: 'Greece', code: 'GR' },
|
||||
{ name: 'Greenland', code: 'GL' },
|
||||
{ name: 'Grenada', code: 'GD' },
|
||||
{ name: 'Guadeloupe', code: 'GP' },
|
||||
{ name: 'Guam', code: 'GU' },
|
||||
{ name: 'Guatemala', code: 'GT' },
|
||||
{ name: 'Guernsey', code: 'GG' },
|
||||
{ name: 'Guinea', code: 'GN' },
|
||||
{ name: 'Guinea-Bissau', code: 'GW' },
|
||||
{ name: 'Guyana', code: 'GY' },
|
||||
{ name: 'Haiti', code: 'HT' },
|
||||
{ name: 'Heard Island and Mcdonald Islands', code: 'HM' },
|
||||
{ name: 'Holy See (Vatican City State)', code: 'VA' },
|
||||
{ name: 'Honduras', code: 'HN' },
|
||||
{ name: 'Hong Kong', code: 'HK' },
|
||||
{ name: 'Hungary', code: 'HU' },
|
||||
{ name: 'Iceland', code: 'IS' },
|
||||
{ name: 'India', code: 'IN' },
|
||||
{ name: 'Indonesia', code: 'ID' },
|
||||
{ name: 'Iran, Islamic Republic Of', code: 'IR' },
|
||||
{ name: 'Iraq', code: 'IQ' },
|
||||
{ name: 'Ireland', code: 'IE' },
|
||||
{ name: 'Isle of Man', code: 'IM' },
|
||||
{ name: 'Israel', code: 'IL' },
|
||||
{ name: 'Italy', code: 'IT' },
|
||||
{ name: 'Jamaica', code: 'JM' },
|
||||
{ name: 'Japan', code: 'JP' },
|
||||
{ name: 'Jersey', code: 'JE' },
|
||||
{ name: 'Jordan', code: 'JO' },
|
||||
{ name: 'Kazakhstan', code: 'KZ' },
|
||||
{ name: 'Kenya', code: 'KE' },
|
||||
{ name: 'Kiribati', code: 'KI' },
|
||||
{ name: "Korea, Democratic People's Republic of", code: 'KP' },
|
||||
{ name: 'Korea, Republic of', code: 'KR' },
|
||||
{ name: 'Kuwait', code: 'KW' },
|
||||
{ name: 'Kyrgyzstan', code: 'KG' },
|
||||
{ name: "Lao People's Democratic Republic", code: 'LA' },
|
||||
{ name: 'Latvia', code: 'LV' },
|
||||
{ name: 'Lebanon', code: 'LB' },
|
||||
{ name: 'Lesotho', code: 'LS' },
|
||||
{ name: 'Liberia', code: 'LR' },
|
||||
{ name: 'Libyan Arab Jamahiriya', code: 'LY' },
|
||||
{ name: 'Liechtenstein', code: 'LI' },
|
||||
{ name: 'Lithuania', code: 'LT' },
|
||||
{ name: 'Luxembourg', code: 'LU' },
|
||||
{ name: 'Macao', code: 'MO' },
|
||||
{ name: 'Macedonia, The Former Yugoslav Republic of', code: 'MK' },
|
||||
{ name: 'Madagascar', code: 'MG' },
|
||||
{ name: 'Malawi', code: 'MW' },
|
||||
{ name: 'Malaysia', code: 'MY' },
|
||||
{ name: 'Maldives', code: 'MV' },
|
||||
{ name: 'Mali', code: 'ML' },
|
||||
{ name: 'Malta', code: 'MT' },
|
||||
{ name: 'Marshall Islands', code: 'MH' },
|
||||
{ name: 'Martinique', code: 'MQ' },
|
||||
{ name: 'Mauritania', code: 'MR' },
|
||||
{ name: 'Mauritius', code: 'MU' },
|
||||
{ name: 'Mayotte', code: 'YT' },
|
||||
{ name: 'Mexico', code: 'MX' },
|
||||
{ name: 'Micronesia, Federated States of', code: 'FM' },
|
||||
{ name: 'Moldova, Republic of', code: 'MD' },
|
||||
{ name: 'Monaco', code: 'MC' },
|
||||
{ name: 'Mongolia', code: 'MN' },
|
||||
{ name: 'Montserrat', code: 'MS' },
|
||||
{ name: 'Morocco', code: 'MA' },
|
||||
{ name: 'Mozambique', code: 'MZ' },
|
||||
{ name: 'Myanmar', code: 'MM' },
|
||||
{ name: 'Namibia', code: 'NA' },
|
||||
{ name: 'Nauru', code: 'NR' },
|
||||
{ name: 'Nepal', code: 'NP' },
|
||||
{ name: 'Netherlands', code: 'NL' },
|
||||
{ name: 'Netherlands Antilles', code: 'AN' },
|
||||
{ name: 'New Caledonia', code: 'NC' },
|
||||
{ name: 'New Zealand', code: 'NZ' },
|
||||
{ name: 'Nicaragua', code: 'NI' },
|
||||
{ name: 'Niger', code: 'NE' },
|
||||
{ name: 'Nigeria', code: 'NG' },
|
||||
{ name: 'Niue', code: 'NU' },
|
||||
{ name: 'Norfolk Island', code: 'NF' },
|
||||
{ name: 'Northern Mariana Islands', code: 'MP' },
|
||||
{ name: 'Norway', code: 'NO' },
|
||||
{ name: 'Oman', code: 'OM' },
|
||||
{ name: 'Pakistan', code: 'PK' },
|
||||
{ name: 'Palau', code: 'PW' },
|
||||
{ name: 'Palestinian Territory, Occupied', code: 'PS' },
|
||||
{ name: 'Panama', code: 'PA' },
|
||||
{ name: 'Papua New Guinea', code: 'PG' },
|
||||
{ name: 'Paraguay', code: 'PY' },
|
||||
{ name: 'Peru', code: 'PE' },
|
||||
{ name: 'Philippines', code: 'PH' },
|
||||
{ name: 'Pitcairn', code: 'PN' },
|
||||
{ name: 'Poland', code: 'PL' },
|
||||
{ name: 'Portugal', code: 'PT' },
|
||||
{ name: 'Puerto Rico', code: 'PR' },
|
||||
{ name: 'Qatar', code: 'QA' },
|
||||
{ name: 'Reunion', code: 'RE' },
|
||||
{ name: 'Romania', code: 'RO' },
|
||||
{ name: 'Russian Federation', code: 'RU' },
|
||||
{ name: 'RWANDA', code: 'RW' },
|
||||
{ name: 'Saint Helena', code: 'SH' },
|
||||
{ name: 'Saint Kitts and Nevis', code: 'KN' },
|
||||
{ name: 'Saint Lucia', code: 'LC' },
|
||||
{ name: 'Saint Pierre and Miquelon', code: 'PM' },
|
||||
{ name: 'Saint Vincent and the Grenadines', code: 'VC' },
|
||||
{ name: 'Samoa', code: 'WS' },
|
||||
{ name: 'San Marino', code: 'SM' },
|
||||
{ name: 'Sao Tome and Principe', code: 'ST' },
|
||||
{ name: 'Saudi Arabia', code: 'SA' },
|
||||
{ name: 'Senegal', code: 'SN' },
|
||||
{ name: 'Serbia and Montenegro', code: 'CS' },
|
||||
{ name: 'Seychelles', code: 'SC' },
|
||||
{ name: 'Sierra Leone', code: 'SL' },
|
||||
{ name: 'Singapore', code: 'SG' },
|
||||
{ name: 'Slovakia', code: 'SK' },
|
||||
{ name: 'Slovenia', code: 'SI' },
|
||||
{ name: 'Solomon Islands', code: 'SB' },
|
||||
{ name: 'Somalia', code: 'SO' },
|
||||
{ name: 'South Africa', code: 'ZA' },
|
||||
{ name: 'South Georgia and the South Sandwich Islands', code: 'GS' },
|
||||
{ name: 'Spain', code: 'ES' },
|
||||
{ name: 'Sri Lanka', code: 'LK' },
|
||||
{ name: 'Sudan', code: 'SD' },
|
||||
{ name: 'Suriname', code: 'SR' },
|
||||
{ name: 'Svalbard and Jan Mayen', code: 'SJ' },
|
||||
{ name: 'Swaziland', code: 'SZ' },
|
||||
{ name: 'Sweden', code: 'SE' },
|
||||
{ name: 'Switzerland', code: 'CH' },
|
||||
{ name: 'Syrian Arab Republic', code: 'SY' },
|
||||
{ name: 'Taiwan, Province of China', code: 'TW' },
|
||||
{ name: 'Tajikistan', code: 'TJ' },
|
||||
{ name: 'Tanzania, United Republic of', code: 'TZ' },
|
||||
{ name: 'Thailand', code: 'TH' },
|
||||
{ name: 'Timor-Leste', code: 'TL' },
|
||||
{ name: 'Togo', code: 'TG' },
|
||||
{ name: 'Tokelau', code: 'TK' },
|
||||
{ name: 'Tonga', code: 'TO' },
|
||||
{ name: 'Trinidad and Tobago', code: 'TT' },
|
||||
{ name: 'Tunisia', code: 'TN' },
|
||||
{ name: 'Turkey', code: 'TR' },
|
||||
{ name: 'Turkmenistan', code: 'TM' },
|
||||
{ name: 'Turks and Caicos Islands', code: 'TC' },
|
||||
{ name: 'Tuvalu', code: 'TV' },
|
||||
{ name: 'Uganda', code: 'UG' },
|
||||
{ name: 'Ukraine', code: 'UA' },
|
||||
{ name: 'United Arab Emirates', code: 'AE' },
|
||||
{ name: 'United Kingdom', code: 'GB' },
|
||||
{ name: 'United States', code: 'US' },
|
||||
{ name: 'United States Minor Outlying Islands', code: 'UM' },
|
||||
{ name: 'Uruguay', code: 'UY' },
|
||||
{ name: 'Uzbekistan', code: 'UZ' },
|
||||
{ name: 'Vanuatu', code: 'VU' },
|
||||
{ name: 'Venezuela', code: 'VE' },
|
||||
{ name: 'Viet Nam', code: 'VN' },
|
||||
{ name: 'Virgin Islands, British', code: 'VG' },
|
||||
{ name: 'Virgin Islands, U.S.', code: 'VI' },
|
||||
{ name: 'Wallis and Futuna', code: 'WF' },
|
||||
{ name: 'Western Sahara', code: 'EH' },
|
||||
{ name: 'Yemen', code: 'YE' },
|
||||
{ name: 'Zambia', code: 'ZM' },
|
||||
{ name: 'Zimbabwe', code: 'ZW' },
|
||||
];
|
||||
@@ -11,6 +11,7 @@ import './index.css';
|
||||
if (!isApiServer) {
|
||||
ReactGA.initialize('UA-115085157-1');
|
||||
}
|
||||
|
||||
const target: $TSFixMe = document.getElementById('root');
|
||||
|
||||
render(
|
||||
7
Accounts/src/Reducers/ChangePassword.ts
Executable file
7
Accounts/src/Reducers/ChangePassword.ts
Executable file
@@ -0,0 +1,7 @@
|
||||
import ApiBase from 'CommonUI/src/Reducers/ApiBase';
|
||||
|
||||
export default class ChangePassword extends ApiBase {
|
||||
public constructor() {
|
||||
super('ChangePassword');
|
||||
}
|
||||
}
|
||||
25
Accounts/src/Reducers/Index.ts
Executable file
25
Accounts/src/Reducers/Index.ts
Executable file
@@ -0,0 +1,25 @@
|
||||
import { combineReducers } from 'redux';
|
||||
import Action from 'CommonUI/src/Types/Action';
|
||||
import { routerReducer } from 'react-router-redux';
|
||||
import Login from './Login';
|
||||
import Register from './Register';
|
||||
import { RootState } from '../store';
|
||||
import Modal from 'CommonUI/src/Reducers/Modal';
|
||||
import ResetPassword from './ResetPassword';
|
||||
import ChangePassword from './ChangePassword';
|
||||
import ResendToken from './ResendVerifyEmail';
|
||||
|
||||
export default (state: RootState, action: Action): void => {
|
||||
if (action.type === 'CLEAR_STORE') {
|
||||
state = undefined;
|
||||
}
|
||||
return combineReducers({
|
||||
Routing: routerReducer,
|
||||
Modal: Modal,
|
||||
Login: new Login().getReducer(),
|
||||
Register: new Register().getReducer(),
|
||||
ResetPassword: new ResetPassword().getReducer(),
|
||||
ChangePassword: new ChangePassword().getReducer(),
|
||||
ResendToken: new ResendToken().getReducer(),
|
||||
})(state, action);
|
||||
};
|
||||
7
Accounts/src/Reducers/Login.ts
Executable file
7
Accounts/src/Reducers/Login.ts
Executable file
@@ -0,0 +1,7 @@
|
||||
import ApiBase from 'CommonUI/src/Reducers/ApiBase';
|
||||
|
||||
export default class ChangePassword extends ApiBase {
|
||||
public constructor() {
|
||||
super('Login');
|
||||
}
|
||||
}
|
||||
7
Accounts/src/Reducers/Register.ts
Executable file
7
Accounts/src/Reducers/Register.ts
Executable file
@@ -0,0 +1,7 @@
|
||||
import ApiBase from 'CommonUI/src/Reducers/ApiBase';
|
||||
|
||||
export default class ChangePassword extends ApiBase {
|
||||
public constructor() {
|
||||
super('Register');
|
||||
}
|
||||
}
|
||||
7
Accounts/src/Reducers/ResendVerifyEmail.ts
Executable file
7
Accounts/src/Reducers/ResendVerifyEmail.ts
Executable file
@@ -0,0 +1,7 @@
|
||||
import ApiBase from 'CommonUI/src/Reducers/ApiBase';
|
||||
|
||||
export default class ResendVerifyEmail extends ApiBase {
|
||||
public constructor() {
|
||||
super('ResendVerifyEmail');
|
||||
}
|
||||
}
|
||||
7
Accounts/src/Reducers/ResetPassword.ts
Executable file
7
Accounts/src/Reducers/ResetPassword.ts
Executable file
@@ -0,0 +1,7 @@
|
||||
import ApiBase from 'CommonUI/src/Reducers/ApiBase';
|
||||
|
||||
export default class ResetPassword extends ApiBase {
|
||||
public constructor() {
|
||||
super('ResetPassword');
|
||||
}
|
||||
}
|
||||
@@ -1,48 +0,0 @@
|
||||
import * as types from '../constants/changePassword';
|
||||
|
||||
/*
|
||||
* The auth reducer. The starting state sets authentication
|
||||
* Based on a token being in local storage. In a real app,
|
||||
* We would also want a util to check if the token is expired.
|
||||
*/
|
||||
|
||||
import Action from 'CommonUI/src/Types/Action';
|
||||
|
||||
const initialState: $TSFixMe = {
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: false,
|
||||
};
|
||||
|
||||
export default function register(
|
||||
state: $TSFixMe = initialState,
|
||||
action: Action
|
||||
): void {
|
||||
switch (action.type) {
|
||||
case types.CHANGEPASSWORD_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
requesting: true,
|
||||
error: null,
|
||||
});
|
||||
|
||||
case types.CHANGEPASSWORD_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: true,
|
||||
error: null,
|
||||
});
|
||||
|
||||
case types.CHANGEPASSWORD_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: false,
|
||||
error: action.payload,
|
||||
});
|
||||
|
||||
case types.RESET_CHANGEPASSWORD:
|
||||
return Object.assign({}, state, initialState);
|
||||
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
@@ -1,29 +0,0 @@
|
||||
import { combineReducers } from 'redux';
|
||||
import Action from 'CommonUI/src/Types/Action';
|
||||
import { routerReducer } from 'react-router-redux';
|
||||
import login from './login';
|
||||
import register from './register';
|
||||
import { RootState } from '../store';
|
||||
import { reducer as formReducer } from 'redux-form';
|
||||
import modal from 'CommonUI/src/reducers/Modal';
|
||||
import resetPassword from './resetPassword';
|
||||
import changePassword from './changePassword';
|
||||
import resendToken from './resendToken';
|
||||
|
||||
const appReducer: $TSFixMe = combineReducers({
|
||||
routing: routerReducer,
|
||||
login,
|
||||
register,
|
||||
form: formReducer,
|
||||
modal,
|
||||
resetPassword,
|
||||
changePassword,
|
||||
resendToken,
|
||||
});
|
||||
|
||||
export default (state: RootState, action: Action): void => {
|
||||
if (action.type === 'CLEAR_STORE') {
|
||||
state = undefined;
|
||||
}
|
||||
return appReducer(state, action);
|
||||
};
|
||||
@@ -1,211 +0,0 @@
|
||||
import {
|
||||
LOGIN_REQUEST,
|
||||
LOGIN_SUCCESS,
|
||||
LOGIN_FAILED,
|
||||
RESET_LOGIN,
|
||||
SAVE_STATUS_PAGE,
|
||||
CHANGE_LOGIN,
|
||||
AUTH_VERIFICATION_FAILED,
|
||||
AUTH_VERIFICATION_REQUEST,
|
||||
AUTH_VERIFICATION_SUCCESS,
|
||||
RESET_AUTH_VERIFICATION,
|
||||
BACKUP_CODE_VERIFICATION_FAILED,
|
||||
BACKUP_CODE_VERIFICATION_REQUEST,
|
||||
BACKUP_CODE_VERIFICATION_SUCCESS,
|
||||
RESET_BACKUP_CODE_VERIFICATION,
|
||||
MASTER_ADMIN_EXISTS_REQUEST,
|
||||
MASTER_ADMIN_EXISTS_FAILED,
|
||||
MASTER_ADMIN_EXISTS_SUCCESS,
|
||||
RESET_MASTER_ADMIN_EXISTS,
|
||||
LOGIN_STATE,
|
||||
} from '../constants/login';
|
||||
|
||||
/*
|
||||
* The auth reducer. The starting state sets authentication
|
||||
* Based on a token being in local storage. In a real app,
|
||||
* We would also want a util to check if the token is expired.
|
||||
*/
|
||||
|
||||
import Action from 'CommonUI/src/Types/Action';
|
||||
|
||||
const initialState: $TSFixMe = {
|
||||
requesting: false,
|
||||
user: {},
|
||||
error: null,
|
||||
success: false,
|
||||
statusPageLogin: false,
|
||||
statusPageURL: null,
|
||||
authToken: {
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: false,
|
||||
},
|
||||
backupCode: {
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: false,
|
||||
},
|
||||
masterAdmin: {
|
||||
exists: null,
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: false,
|
||||
},
|
||||
loginMethod: 'standard',
|
||||
};
|
||||
|
||||
export default function register(
|
||||
state: $TSFixMe = initialState,
|
||||
action: Action
|
||||
): void {
|
||||
switch (action.type) {
|
||||
case CHANGE_LOGIN:
|
||||
return Object.assign({}, state, {
|
||||
loginMethod: action.payload,
|
||||
});
|
||||
case LOGIN_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
requesting: true,
|
||||
error: null,
|
||||
});
|
||||
case LOGIN_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: true,
|
||||
error: null,
|
||||
user: action.payload,
|
||||
});
|
||||
case LOGIN_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: false,
|
||||
error: action.payload,
|
||||
});
|
||||
case LOGIN_STATE:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: false,
|
||||
error: state.error,
|
||||
user: action.payload,
|
||||
});
|
||||
case RESET_LOGIN:
|
||||
return Object.assign({}, state, initialState);
|
||||
|
||||
case MASTER_ADMIN_EXISTS_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
masterAdmin: {
|
||||
...state.masterAdmin,
|
||||
requesting: true,
|
||||
error: null,
|
||||
},
|
||||
});
|
||||
|
||||
case MASTER_ADMIN_EXISTS_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
masterAdmin: {
|
||||
requesting: false,
|
||||
success: true,
|
||||
error: null,
|
||||
exists: action.payload.result,
|
||||
},
|
||||
});
|
||||
|
||||
case MASTER_ADMIN_EXISTS_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
masterAdmin: {
|
||||
...state.masterAdmin,
|
||||
requesting: false,
|
||||
success: false,
|
||||
error: action.payload,
|
||||
},
|
||||
});
|
||||
|
||||
case RESET_MASTER_ADMIN_EXISTS:
|
||||
return Object.assign({}, state, {
|
||||
masterAdmin: initialState.masterAdmin,
|
||||
});
|
||||
|
||||
case AUTH_VERIFICATION_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
...initialState,
|
||||
authToken: {
|
||||
...initialState.authToken,
|
||||
requesting: true,
|
||||
error: null,
|
||||
success: true,
|
||||
},
|
||||
user: { ...state.user },
|
||||
});
|
||||
case AUTH_VERIFICATION_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
...initialState,
|
||||
authToken: {
|
||||
...initialState.authToken,
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: true,
|
||||
},
|
||||
});
|
||||
case AUTH_VERIFICATION_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
...initialState,
|
||||
authToken: {
|
||||
...initialState.authToken,
|
||||
requesting: false,
|
||||
error: action.payload,
|
||||
success: false,
|
||||
},
|
||||
user: { ...state.user },
|
||||
});
|
||||
|
||||
case RESET_AUTH_VERIFICATION:
|
||||
return Object.assign({}, state, initialState);
|
||||
|
||||
// Use back up code to login a user
|
||||
|
||||
case BACKUP_CODE_VERIFICATION_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
...initialState,
|
||||
backupCode: {
|
||||
...initialState.backupCode,
|
||||
requesting: true,
|
||||
error: null,
|
||||
success: true,
|
||||
},
|
||||
user: { ...state.user },
|
||||
});
|
||||
case BACKUP_CODE_VERIFICATION_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
...initialState,
|
||||
backupCode: {
|
||||
...initialState.backupCode,
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: true,
|
||||
},
|
||||
});
|
||||
case BACKUP_CODE_VERIFICATION_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
...initialState,
|
||||
backupCode: {
|
||||
...initialState.backupCode,
|
||||
requesting: false,
|
||||
error: action.payload,
|
||||
success: false,
|
||||
},
|
||||
user: { ...state.user },
|
||||
});
|
||||
|
||||
case RESET_BACKUP_CODE_VERIFICATION:
|
||||
return Object.assign({}, state, initialState);
|
||||
|
||||
case SAVE_STATUS_PAGE:
|
||||
return Object.assign({}, state, {
|
||||
statusPageLogin: action.payload.isStatusPageLogin,
|
||||
statusPageURL: action.payload.statusPageURL,
|
||||
});
|
||||
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
@@ -1,205 +0,0 @@
|
||||
import {
|
||||
SIGNUP_SUCCESS,
|
||||
SIGNUP_FAILED,
|
||||
SIGNUP_STEP_INC,
|
||||
SIGNUP_STEP_DEC,
|
||||
SIGNUP_REQUEST,
|
||||
RESET_SIGNUP,
|
||||
SAVE_CARD_STATE,
|
||||
SAVE_USER_STATE,
|
||||
SAVE_COMPANY_STATE,
|
||||
IS_USER_INVITED_FAILED,
|
||||
IS_USER_INVITED_REQUEST,
|
||||
IS_USER_INVITED_RESET,
|
||||
IS_USER_INVITED_SUCCESS,
|
||||
SKIP_CARD_STEP,
|
||||
ADD_CARD_REQUEST,
|
||||
ADD_CARD_SUCCESS,
|
||||
ADD_CARD_FAILED,
|
||||
SAVE_PLAN_ID,
|
||||
GET_EMAIL_FROM_TOKEN,
|
||||
} from '../constants/register.js';
|
||||
|
||||
// The register state reducer.
|
||||
import Action from 'CommonUI/src/Types/Action';
|
||||
|
||||
const initialState: $TSFixMe = {
|
||||
addCard: {
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: false,
|
||||
card: {},
|
||||
},
|
||||
requesting: false,
|
||||
step: 1,
|
||||
user: {},
|
||||
card: {},
|
||||
company: {},
|
||||
error: null,
|
||||
success: false,
|
||||
planId: null,
|
||||
isUserInvited: {
|
||||
requesting: false,
|
||||
isUserInvited: null,
|
||||
error: null,
|
||||
success: false,
|
||||
},
|
||||
email: null,
|
||||
};
|
||||
|
||||
export default function register(
|
||||
state: $TSFixMe = initialState,
|
||||
action: Action
|
||||
): void {
|
||||
let incCount: $TSFixMe, decCount: $TSFixMe, stage: $TSFixMe;
|
||||
switch (action.type) {
|
||||
case SIGNUP_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
requesting: true,
|
||||
error: null,
|
||||
});
|
||||
case SIGNUP_SUCCESS:
|
||||
state.user.cardRegistered = action.payload.cardRegistered;
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: true,
|
||||
error: null,
|
||||
user: { ...state.user },
|
||||
});
|
||||
case SIGNUP_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
isAuthenticated: false,
|
||||
error: action.payload,
|
||||
isUserInvited: {
|
||||
...state.isUserInvited,
|
||||
requesting: false,
|
||||
},
|
||||
});
|
||||
|
||||
case SIGNUP_STEP_INC:
|
||||
incCount = state.step + 1;
|
||||
|
||||
return Object.assign({}, state, {
|
||||
step: incCount,
|
||||
error: null,
|
||||
});
|
||||
|
||||
case SKIP_CARD_STEP:
|
||||
stage = 3;
|
||||
|
||||
return Object.assign({}, state, {
|
||||
step: stage,
|
||||
error: null,
|
||||
});
|
||||
|
||||
case SIGNUP_STEP_DEC:
|
||||
decCount = state.step - 1;
|
||||
|
||||
return Object.assign({}, state, {
|
||||
step: decCount,
|
||||
error: null,
|
||||
});
|
||||
case SAVE_USER_STATE:
|
||||
return Object.assign({}, state, {
|
||||
user: action.payload,
|
||||
});
|
||||
case SAVE_CARD_STATE:
|
||||
return Object.assign({}, state, {
|
||||
card: action.payload,
|
||||
});
|
||||
case SAVE_COMPANY_STATE:
|
||||
return Object.assign({}, state, {
|
||||
company: action.payload,
|
||||
});
|
||||
|
||||
case RESET_SIGNUP:
|
||||
return Object.assign({}, state, initialState);
|
||||
|
||||
case IS_USER_INVITED_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
isUserInvited: {
|
||||
requesting: false,
|
||||
isUserInvited: null,
|
||||
error: action.payload,
|
||||
success: false,
|
||||
},
|
||||
});
|
||||
case IS_USER_INVITED_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
isUserInvited: {
|
||||
requesting: true,
|
||||
isUserInvited: null,
|
||||
error: null,
|
||||
success: false,
|
||||
},
|
||||
});
|
||||
|
||||
case IS_USER_INVITED_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
...state,
|
||||
isUserInvited: {
|
||||
requesting: false,
|
||||
isUserInvited: action.payload,
|
||||
error: null,
|
||||
success: false,
|
||||
},
|
||||
});
|
||||
|
||||
case IS_USER_INVITED_RESET:
|
||||
return Object.assign({}, state, {
|
||||
...state,
|
||||
isUserInvited: {
|
||||
requesting: false,
|
||||
isUserInvited: null,
|
||||
error: null,
|
||||
success: false,
|
||||
},
|
||||
});
|
||||
case ADD_CARD_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
...state,
|
||||
addCard: {
|
||||
...state.addCard,
|
||||
requesting: true,
|
||||
},
|
||||
});
|
||||
|
||||
case ADD_CARD_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
...state,
|
||||
addCard: {
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: true,
|
||||
card: action.payload,
|
||||
},
|
||||
});
|
||||
|
||||
case ADD_CARD_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
...state,
|
||||
addCard: {
|
||||
requesting: false,
|
||||
success: false,
|
||||
error: action.payload,
|
||||
},
|
||||
});
|
||||
case SAVE_PLAN_ID:
|
||||
return Object.assign({}, state, {
|
||||
planId: action.payload,
|
||||
});
|
||||
|
||||
case GET_EMAIL_FROM_TOKEN:
|
||||
return Object.assign({}, state, {
|
||||
...state,
|
||||
email:
|
||||
action.payload && action.payload.token
|
||||
? { email: action.payload.token.userId.email }
|
||||
: null,
|
||||
});
|
||||
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
@@ -1,47 +0,0 @@
|
||||
import {
|
||||
RESENDTOKEN_FAILED,
|
||||
RESENDTOKEN_REQUEST,
|
||||
RESENDTOKEN_SUCCESS,
|
||||
RESENDTOKEN_RESET,
|
||||
} from '../constants/resendToken';
|
||||
|
||||
import Action from 'CommonUI/src/Types/Action';
|
||||
|
||||
const initialState: $TSFixMe = {
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: false,
|
||||
};
|
||||
|
||||
export default function register(
|
||||
state: $TSFixMe = initialState,
|
||||
action: Action
|
||||
): void {
|
||||
switch (action.type) {
|
||||
case RESENDTOKEN_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
...state,
|
||||
requesting: true,
|
||||
});
|
||||
case RESENDTOKEN_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: true,
|
||||
error: null,
|
||||
});
|
||||
case RESENDTOKEN_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: false,
|
||||
error: action.payload,
|
||||
});
|
||||
case RESENDTOKEN_RESET:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: false,
|
||||
error: null,
|
||||
});
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
@@ -1,51 +0,0 @@
|
||||
import {
|
||||
PASSWORDRESET_REQUEST,
|
||||
PASSWORDRESET_SUCCESS,
|
||||
PASSWORDRESET_FAILED,
|
||||
RESET_PASSWORDRESET,
|
||||
} from '../constants/resetPassword';
|
||||
|
||||
/*
|
||||
* The auth reducer. The starting state sets authentication
|
||||
* Based on a token being in local storage. In a real app,
|
||||
* We would also want a util to check if the token is expired.
|
||||
*/
|
||||
|
||||
import Action from 'CommonUI/src/Types/Action';
|
||||
|
||||
const initialState: $TSFixMe = {
|
||||
requesting: false,
|
||||
error: null,
|
||||
success: false,
|
||||
};
|
||||
|
||||
export default function register(
|
||||
state: $TSFixMe = initialState,
|
||||
action: Action
|
||||
): void {
|
||||
switch (action.type) {
|
||||
case PASSWORDRESET_REQUEST:
|
||||
return Object.assign({}, state, {
|
||||
requesting: true,
|
||||
error: null,
|
||||
});
|
||||
case PASSWORDRESET_SUCCESS:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: true,
|
||||
error: null,
|
||||
});
|
||||
case PASSWORDRESET_FAILED:
|
||||
return Object.assign({}, state, {
|
||||
requesting: false,
|
||||
success: false,
|
||||
error: action.payload,
|
||||
});
|
||||
|
||||
case RESET_PASSWORDRESET:
|
||||
return Object.assign({}, state, initialState);
|
||||
|
||||
default:
|
||||
return state;
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "oneuptime-AdminDashboard",
|
||||
"name": "admin-dashboard",
|
||||
"version": "3.0.0",
|
||||
"private": false,
|
||||
"type": "module",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "oneuptime-ApiDocs",
|
||||
"name": "api-docs",
|
||||
"version": "3.0.0",
|
||||
"description": "oneuptime api refernce",
|
||||
"main": "Gruntfile.js",
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
64
Common/Models/EmailVerificationToken.ts
Executable file
64
Common/Models/EmailVerificationToken.ts
Executable file
@@ -0,0 +1,64 @@
|
||||
import { Column, Entity, Index, JoinColumn, ManyToOne } from 'typeorm';
|
||||
import ColumnType from '../Types/Database/ColumnType';
|
||||
import ObjectID from '../Types/ObjectID';
|
||||
import BaseModel from './BaseModel';
|
||||
import RequiredColumn from '../Types/Database/RequiredColumn';
|
||||
import UniqueColumn from '../Types/Database/UniqueColumn';
|
||||
|
||||
import User from './User';
|
||||
import ColumnLength from '../Types/Database/ColumnLength';
|
||||
import Email from '../Types/Email';
|
||||
|
||||
@Entity({
|
||||
name: 'EmailVerificationToken',
|
||||
})
|
||||
export default class EmailVerificationToken extends BaseModel {
|
||||
@RequiredColumn()
|
||||
@ManyToOne(
|
||||
(_type: string) => {
|
||||
return User;
|
||||
},
|
||||
{
|
||||
eager: false,
|
||||
nullable: false,
|
||||
onDelete: 'CASCADE',
|
||||
orphanedRowAction: 'nullify',
|
||||
}
|
||||
)
|
||||
@JoinColumn({ name: 'userId' })
|
||||
public user!: User;
|
||||
|
||||
@Column({
|
||||
type: ColumnType.ObjectID,
|
||||
nullable: false,
|
||||
transformer: ObjectID.getDatabaseTransformer(),
|
||||
})
|
||||
public userId!: ObjectID;
|
||||
|
||||
@Column({
|
||||
type: ColumnType.Email,
|
||||
length: ColumnLength.Email,
|
||||
nullable: false,
|
||||
transformer: Email.getDatabaseTransformer(),
|
||||
})
|
||||
public email!: Email;
|
||||
|
||||
@Index()
|
||||
@RequiredColumn()
|
||||
@UniqueColumn()
|
||||
@Column({
|
||||
type: ColumnType.ObjectID,
|
||||
nullable: false,
|
||||
unique: true,
|
||||
length: ColumnLength.ObjectID,
|
||||
transformer: ObjectID.getDatabaseTransformer(),
|
||||
})
|
||||
public token!: ObjectID;
|
||||
|
||||
@RequiredColumn()
|
||||
@Column({
|
||||
nullable: false,
|
||||
type: ColumnType.Date,
|
||||
})
|
||||
public expires!: Date;
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
import User from './User';
|
||||
import Probe from './Probe';
|
||||
import Project from './Project';
|
||||
import EmailVerificationToken from './EmailVerificationToken';
|
||||
|
||||
export default [User, Probe, Project];
|
||||
export default [User, Probe, Project, EmailVerificationToken];
|
||||
|
||||
@@ -5,17 +5,19 @@ import ColumnType from '../Types/Database/ColumnType';
|
||||
import Project from './Project';
|
||||
import ObjectID from '../Types/ObjectID';
|
||||
import Version from '../Types/Version';
|
||||
import RequiredColumn from '../Types/Database/RequiredColumnDecorator';
|
||||
import UniqueColumn from '../Types/Database/UniqueColumnDecorator';
|
||||
import SlugifyColumn from '../Types/Database/SlugifyColumnDecorator';
|
||||
import RequiredColumn from '../Types/Database/RequiredColumn';
|
||||
import UniqueColumn from '../Types/Database/UniqueColumn';
|
||||
import SlugifyColumn from '../Types/Database/SlugifyColumn';
|
||||
import URL from '../Types/API/URL';
|
||||
import User from './User';
|
||||
import TableColumn from '../Types/Database/TableColumn';
|
||||
|
||||
@SlugifyColumn('name', 'slug')
|
||||
@Entity({
|
||||
name: 'Probe',
|
||||
})
|
||||
export default class Probe extends BaseModel {
|
||||
@TableColumn()
|
||||
@RequiredColumn()
|
||||
@UniqueColumn()
|
||||
@Column({
|
||||
@@ -27,6 +29,7 @@ export default class Probe extends BaseModel {
|
||||
})
|
||||
public key!: ObjectID;
|
||||
|
||||
@TableColumn()
|
||||
@RequiredColumn()
|
||||
@Column({
|
||||
nullable: false,
|
||||
@@ -35,6 +38,7 @@ export default class Probe extends BaseModel {
|
||||
})
|
||||
public name!: string;
|
||||
|
||||
@TableColumn()
|
||||
@RequiredColumn()
|
||||
@UniqueColumn()
|
||||
@Column({
|
||||
@@ -44,6 +48,7 @@ export default class Probe extends BaseModel {
|
||||
})
|
||||
public slug!: string;
|
||||
|
||||
@TableColumn()
|
||||
@RequiredColumn()
|
||||
@Column({
|
||||
nullable: false,
|
||||
@@ -53,6 +58,7 @@ export default class Probe extends BaseModel {
|
||||
})
|
||||
public probeVersion!: Version;
|
||||
|
||||
@TableColumn()
|
||||
@RequiredColumn()
|
||||
@Column({
|
||||
nullable: false,
|
||||
@@ -63,6 +69,7 @@ export default class Probe extends BaseModel {
|
||||
})
|
||||
public lastAlive!: Date;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortURL,
|
||||
nullable: true,
|
||||
@@ -72,6 +79,7 @@ export default class Probe extends BaseModel {
|
||||
public iconUrl?: URL;
|
||||
|
||||
// If this probe is custom to the project and only monitoring reosurces in this project.
|
||||
@TableColumn()
|
||||
@ManyToOne(
|
||||
(_type: string) => {
|
||||
return Project;
|
||||
@@ -87,6 +95,7 @@ export default class Probe extends BaseModel {
|
||||
@JoinColumn({ name: 'projectId' })
|
||||
public project?: Project;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ObjectID,
|
||||
nullable: true,
|
||||
@@ -94,6 +103,7 @@ export default class Probe extends BaseModel {
|
||||
})
|
||||
public projectId?: ObjectID;
|
||||
|
||||
@TableColumn()
|
||||
@ManyToOne(
|
||||
(_type: string) => {
|
||||
return User;
|
||||
@@ -109,6 +119,7 @@ export default class Probe extends BaseModel {
|
||||
@JoinColumn({ name: 'deletedByUserId' })
|
||||
public deletedByUser?: User;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ObjectID,
|
||||
nullable: true,
|
||||
@@ -116,6 +127,7 @@ export default class Probe extends BaseModel {
|
||||
})
|
||||
public deletedByUserId?: ObjectID;
|
||||
|
||||
@TableColumn()
|
||||
@ManyToOne(
|
||||
(_type: string) => {
|
||||
return User;
|
||||
@@ -130,6 +142,7 @@ export default class Probe extends BaseModel {
|
||||
@JoinColumn({ name: 'createdByUserId' })
|
||||
public createdByUser?: User;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ObjectID,
|
||||
nullable: true,
|
||||
|
||||
@@ -1,19 +1,21 @@
|
||||
import { Column, Entity, JoinColumn, ManyToOne } from 'typeorm';
|
||||
import BaseModel from './BaseModel';
|
||||
import RequiredColumn from '../Types/Database/RequiredColumnDecorator';
|
||||
import UniqueColumn from '../Types/Database/UniqueColumnDecorator';
|
||||
import RequiredColumn from '../Types/Database/RequiredColumn';
|
||||
import UniqueColumn from '../Types/Database/UniqueColumn';
|
||||
import User from './User';
|
||||
import Project from './Project';
|
||||
import ColumnType from '../Types/Database/ColumnType';
|
||||
import PositiveNumber from '../Types/PositiveNumber';
|
||||
import ObjectID from '../Types/ObjectID';
|
||||
import ColumnLength from '../Types/Database/ColumnLength';
|
||||
import TableColumn from '../Types/Database/TableColumn';
|
||||
|
||||
@Entity({
|
||||
name: 'Project',
|
||||
})
|
||||
export default class Model extends BaseModel {
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
nullable: false,
|
||||
type: ColumnType.Name,
|
||||
@@ -23,6 +25,7 @@ export default class Model extends BaseModel {
|
||||
|
||||
@RequiredColumn()
|
||||
@UniqueColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
nullable: false,
|
||||
type: ColumnType.Slug,
|
||||
@@ -30,6 +33,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public slug!: string;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -38,6 +42,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public paymentProviderPlanId?: string;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -46,6 +51,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public paymentProviderSubscriptionId?: string;
|
||||
|
||||
@TableColumn()
|
||||
@ManyToOne(
|
||||
(_type: string) => {
|
||||
return Project;
|
||||
@@ -61,6 +67,7 @@ export default class Model extends BaseModel {
|
||||
@JoinColumn({ name: 'parentProjectId' })
|
||||
public parentProject?: Project;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ObjectID,
|
||||
nullable: true,
|
||||
@@ -68,6 +75,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public parentProjectId?: ObjectID;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.SmallPositiveNumber,
|
||||
nullable: false,
|
||||
@@ -76,6 +84,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public numberOfLicensesIssued!: PositiveNumber;
|
||||
|
||||
@TableColumn()
|
||||
@ManyToOne(
|
||||
(_type: string) => {
|
||||
return User;
|
||||
@@ -90,6 +99,7 @@ export default class Model extends BaseModel {
|
||||
@JoinColumn({ name: 'createdByUserId' })
|
||||
public createdByUser?: User;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ObjectID,
|
||||
nullable: true,
|
||||
@@ -97,6 +107,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public createdByUserId?: ObjectID;
|
||||
|
||||
@TableColumn()
|
||||
@ManyToOne(
|
||||
(_type: string) => {
|
||||
return User;
|
||||
@@ -112,6 +123,7 @@ export default class Model extends BaseModel {
|
||||
@JoinColumn({ name: 'deletedByUserId' })
|
||||
public deletedByUser?: User;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ObjectID,
|
||||
nullable: false,
|
||||
@@ -121,6 +133,7 @@ export default class Model extends BaseModel {
|
||||
public apiKey!: ObjectID;
|
||||
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Boolean,
|
||||
nullable: false,
|
||||
@@ -130,6 +143,7 @@ export default class Model extends BaseModel {
|
||||
public alertsEnabled!: boolean;
|
||||
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.SmallPositiveNumber,
|
||||
nullable: false,
|
||||
@@ -139,6 +153,7 @@ export default class Model extends BaseModel {
|
||||
public alertAccountBalance!: number;
|
||||
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Boolean,
|
||||
nullable: false,
|
||||
@@ -147,6 +162,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public isBlocked!: boolean;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.SmallPositiveNumber,
|
||||
nullable: true,
|
||||
@@ -154,6 +170,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public unpaidSubscriptionNotificationCount!: PositiveNumber;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Date,
|
||||
nullable: true,
|
||||
@@ -161,6 +178,7 @@ export default class Model extends BaseModel {
|
||||
})
|
||||
public paymentFailedDate?: Date;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Date,
|
||||
nullable: true,
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
import { Column, Entity } from 'typeorm';
|
||||
import BaseModel from './BaseModel';
|
||||
import EncryptedColumn from '../Types/Database/EncryptedColumnDecorator';
|
||||
import ColumnType from '../Types/Database/ColumnType';
|
||||
import ColumnLength from '../Types/Database/ColumnLength';
|
||||
import RequiredColumn from '../Types/Database/RequiredColumnDecorator';
|
||||
import UniqueColumn from '../Types/Database/UniqueColumnDecorator';
|
||||
import SlugifyColumn from '../Types/Database/SlugifyColumnDecorator';
|
||||
import RequiredColumn from '../Types/Database/RequiredColumn';
|
||||
import UniqueColumn from '../Types/Database/UniqueColumn';
|
||||
import SlugifyColumn from '../Types/Database/SlugifyColumn';
|
||||
import Phone from '../Types/Phone';
|
||||
import Email from '../Types/Email';
|
||||
import Name from '../Types/Name';
|
||||
@@ -13,20 +12,48 @@ import URL from '../Types/API/URL';
|
||||
import Timezone from '../Types/Timezone';
|
||||
import CompanySize from '../Types/Company/CompanySize';
|
||||
import JobRole from '../Types/Company/JobRole';
|
||||
import HashedColumn from '../Types/Database/HashedColumn';
|
||||
import HashedString from '../Types/HashedString';
|
||||
import PublicRecordPermissions from '../Types/Database/AccessControls/Public/PublicRecordPermissions';
|
||||
import TableColumn from '../Types/Database/TableColumn';
|
||||
import PublicColumnPermissions from '../Types/Database/AccessControls/Public/PublicColumnPermissions';
|
||||
|
||||
@PublicRecordPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@SlugifyColumn('name', 'slug')
|
||||
@Entity({
|
||||
name: 'User',
|
||||
})
|
||||
class User extends BaseModel {
|
||||
@RequiredColumn()
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Name,
|
||||
length: ColumnLength.Name,
|
||||
nullable: false,
|
||||
nullable: true,
|
||||
unique: false,
|
||||
})
|
||||
public name!: Name;
|
||||
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@UniqueColumn()
|
||||
@RequiredColumn()
|
||||
@Column({
|
||||
@@ -37,6 +64,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public email!: Email;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Email,
|
||||
length: ColumnLength.Email,
|
||||
@@ -45,48 +73,86 @@ class User extends BaseModel {
|
||||
})
|
||||
public newUnverifiedTemporaryEmail?: string;
|
||||
|
||||
@EncryptedColumn()
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@HashedColumn()
|
||||
@Column({
|
||||
type: ColumnType.Password,
|
||||
length: ColumnLength.Password,
|
||||
type: ColumnType.HashedString,
|
||||
length: ColumnLength.HashedString,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
})
|
||||
public password?: string;
|
||||
public password?: HashedString;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Boolean,
|
||||
default: false,
|
||||
})
|
||||
public isEmailVerified!: boolean;
|
||||
|
||||
@RequiredColumn()
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Name,
|
||||
length: ColumnLength.Name,
|
||||
nullable: false,
|
||||
nullable: true,
|
||||
unique: false,
|
||||
})
|
||||
public companyName!: string;
|
||||
|
||||
@RequiredColumn()
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
nullable: false,
|
||||
nullable: true,
|
||||
unique: false,
|
||||
})
|
||||
public jobRole!: JobRole;
|
||||
|
||||
@RequiredColumn()
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
nullable: false,
|
||||
nullable: true,
|
||||
unique: false,
|
||||
})
|
||||
public companySize!: CompanySize;
|
||||
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -95,16 +161,24 @@ class User extends BaseModel {
|
||||
})
|
||||
public referral?: string;
|
||||
|
||||
@RequiredColumn()
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Phone,
|
||||
length: ColumnLength.Phone,
|
||||
nullable: false,
|
||||
nullable: true,
|
||||
unique: false,
|
||||
transformer: Phone.getDatabaseTransformer(),
|
||||
})
|
||||
public companyPhoneNumber!: Phone;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortURL,
|
||||
length: ColumnLength.ShortURL,
|
||||
@@ -115,6 +189,7 @@ class User extends BaseModel {
|
||||
public profilePicImageUrl?: URL;
|
||||
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Boolean,
|
||||
default: false,
|
||||
@@ -123,6 +198,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public twoFactorAuthEnabled!: boolean;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -131,6 +207,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public twoFactorSecretCode?: string;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortURL,
|
||||
length: ColumnLength.ShortURL,
|
||||
@@ -138,8 +215,9 @@ class User extends BaseModel {
|
||||
unique: false,
|
||||
transformer: URL.getDatabaseTransformer(),
|
||||
})
|
||||
public otpAuthUrl?: URL;
|
||||
public twoFactorAuthUrl?: URL;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Array,
|
||||
nullable: true,
|
||||
@@ -147,6 +225,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public backupCodes?: Array<string>;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -155,6 +234,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public jwtRefreshToken?: string;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -163,6 +243,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public paymentProviderCustomerId?: string;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -171,6 +252,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public resetPasswordToken!: string;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Date,
|
||||
nullable: true,
|
||||
@@ -178,6 +260,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public resetPasswordExpires?: Date;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -186,14 +269,22 @@ class User extends BaseModel {
|
||||
})
|
||||
public timezone?: Timezone;
|
||||
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Date,
|
||||
nullable: false,
|
||||
nullable: true,
|
||||
unique: false,
|
||||
})
|
||||
public lastActive!: Date;
|
||||
|
||||
@PublicColumnPermissions({
|
||||
create: true,
|
||||
readAsList: false,
|
||||
readAsItem: false,
|
||||
update: false,
|
||||
delete: false,
|
||||
})
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.ShortText,
|
||||
length: ColumnLength.ShortText,
|
||||
@@ -203,6 +294,7 @@ class User extends BaseModel {
|
||||
public promotionName!: string;
|
||||
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Boolean,
|
||||
nullable: false,
|
||||
@@ -211,6 +303,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public isDisabled!: boolean;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Date,
|
||||
nullable: true,
|
||||
@@ -219,6 +312,7 @@ class User extends BaseModel {
|
||||
public paymentFailedDate!: Date;
|
||||
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Boolean,
|
||||
nullable: false,
|
||||
@@ -228,6 +322,7 @@ class User extends BaseModel {
|
||||
public isMasterAdmin!: boolean;
|
||||
|
||||
@RequiredColumn()
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Boolean,
|
||||
nullable: false,
|
||||
@@ -236,6 +331,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public isBlocked!: boolean;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Phone,
|
||||
length: ColumnLength.Phone,
|
||||
@@ -244,6 +340,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public alertPhoneNumber?: Phone;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.OTP,
|
||||
length: ColumnLength.OTP,
|
||||
@@ -252,6 +349,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public alertPhoneVerificationCode?: string;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Date,
|
||||
nullable: true,
|
||||
@@ -259,6 +357,7 @@ class User extends BaseModel {
|
||||
})
|
||||
public alertPhoneVerificationCodeRequestTime?: Date;
|
||||
|
||||
@TableColumn()
|
||||
@Column({
|
||||
type: ColumnType.Phone,
|
||||
length: ColumnLength.Phone,
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
import { Column, Entity, Index } from 'typeorm';
|
||||
import BaseModel from './BaseModel';
|
||||
|
||||
import User from './User';
|
||||
|
||||
@Entity({
|
||||
name: 'UserVerificationToken',
|
||||
})
|
||||
export default class UserVerificationToken extends BaseModel {
|
||||
@Column({ nullable: false })
|
||||
public user!: User;
|
||||
|
||||
@Index()
|
||||
@Column({ nullable: false })
|
||||
public token!: string;
|
||||
|
||||
@Column({ nullable: false })
|
||||
public expires!: Date;
|
||||
}
|
||||
247
Common/Types/Countries.ts
Normal file
247
Common/Types/Countries.ts
Normal file
@@ -0,0 +1,247 @@
|
||||
enum Countries {
|
||||
'Afghanistan' = 'Afghanistan',
|
||||
'Åland Islands' = 'Åland Islands',
|
||||
'Albania' = 'Albania',
|
||||
'Algeria' = 'Algeria',
|
||||
'American Samoa' = 'American Samoa',
|
||||
'Andorra' = 'Andorra',
|
||||
'Angola' = 'Angola',
|
||||
'Anguilla' = 'Anguilla',
|
||||
'Antarctica' = 'Antarctica',
|
||||
'Antigua and Barbuda' = 'Antigua and Barbuda',
|
||||
'Argentina' = 'Argentina',
|
||||
'Armenia' = 'Armenia',
|
||||
'Aruba' = 'Aruba',
|
||||
'Australia' = 'Australia',
|
||||
'Austria' = 'Austria',
|
||||
'Azerbaijan' = 'Azerbaijan',
|
||||
'Bahamas' = 'Bahamas',
|
||||
'Bahrain' = 'Bahrain',
|
||||
'Bangladesh' = 'Bangladesh',
|
||||
'Barbados' = 'Barbados',
|
||||
'Belarus' = 'Belarus',
|
||||
'Belgium' = 'Belgium',
|
||||
'Belize' = 'Belize',
|
||||
'Benin' = 'Benin',
|
||||
'Bermuda' = 'Bermuda',
|
||||
'Bhutan' = 'Bhutan',
|
||||
'Bolivia' = 'Bolivia',
|
||||
'Bosnia and Herzegovina' = 'Bosnia and Herzegovina',
|
||||
'Botswana' = 'Botswana',
|
||||
'Bouvet Island' = 'Bouvet Island',
|
||||
'Brazil' = 'Brazil',
|
||||
'British Indian Ocean Territory' = 'British Indian Ocean Territory',
|
||||
'Brunei Darussalam' = 'Brunei Darussalam',
|
||||
'Bulgaria' = 'Bulgaria',
|
||||
'Burkina Faso' = 'Burkina Faso',
|
||||
'Burundi' = 'Burundi',
|
||||
'Cambodia' = 'Cambodia',
|
||||
'Cameroon' = 'Cameroon',
|
||||
'Canada' = 'Canada',
|
||||
'Cape Verde' = 'Cape Verde',
|
||||
'Cayman Islands' = 'Cayman Islands',
|
||||
'Central African Republic' = 'Central African Republic',
|
||||
'Chad' = 'Chad',
|
||||
'Chile' = 'Chile',
|
||||
'China' = 'China',
|
||||
'Christmas Island' = 'Christmas Island',
|
||||
'Cocos (Keeling) Islands' = 'Cocos (Keeling) Islands',
|
||||
'Colombia' = 'Colombia',
|
||||
'Comoros' = 'Comoros',
|
||||
'Congo' = 'Congo',
|
||||
'Congo, The Democratic Republic of the' = 'Congo, The Democratic Republic of the',
|
||||
'Cook Islands' = 'Cook Islands',
|
||||
'Costa Rica' = 'Costa Rica',
|
||||
"Cote d'Ivoire" = "Cote d'Ivoire",
|
||||
'Croatia' = 'Croatia',
|
||||
'Cuba' = 'Cuba',
|
||||
'Cyprus' = 'Cyprus',
|
||||
'Czech Republic' = 'Czech Republic',
|
||||
'Denmark' = 'Denmark',
|
||||
'Djibouti' = 'Djibouti',
|
||||
'Dominica' = 'Dominica',
|
||||
'Dominican Republic' = 'Dominican Republic',
|
||||
'Ecuador' = 'Ecuador',
|
||||
'Egypt' = 'Egypt',
|
||||
'El Salvador' = 'El Salvador',
|
||||
'Equatorial Guinea' = 'Equatorial Guinea',
|
||||
'Eritrea' = 'Eritrea',
|
||||
'Estonia' = 'Estonia',
|
||||
'Ethiopia' = 'Ethiopia',
|
||||
'Falkland Islands (Malvinas)' = 'Falkland Islands (Malvinas)',
|
||||
'Faroe Islands' = 'Faroe Islands',
|
||||
'Fiji' = 'Fiji',
|
||||
'Finland' = 'Finland',
|
||||
'France' = 'France',
|
||||
'French Guiana' = 'French Guiana',
|
||||
'French Polynesia' = 'French Polynesia',
|
||||
'French Southern Territories' = 'French Southern Territories',
|
||||
'Gabon' = 'Gabon',
|
||||
'Gambia' = 'Gambia',
|
||||
'Georgia' = 'Georgia',
|
||||
'Germany' = 'Germany',
|
||||
'Ghana' = 'Ghana',
|
||||
'Gibraltar' = 'Gibraltar',
|
||||
'Greece' = 'Greece',
|
||||
'Greenland' = 'Greenland',
|
||||
'Grenada' = 'Grenada',
|
||||
'Guadeloupe' = 'Guadeloupe',
|
||||
'Guam' = 'Guam',
|
||||
'Guatemala' = 'Guatemala',
|
||||
'Guernsey' = 'Guernsey',
|
||||
'Guinea' = 'Guinea',
|
||||
'Guinea-Bissau' = 'Guinea-Bissau',
|
||||
'Guyana' = 'Guyana',
|
||||
'Haiti' = 'Haiti',
|
||||
'Heard Island and Mcdonald Islands' = 'Heard Island and Mcdonald Islands',
|
||||
'Holy See (Vatican City State)' = 'Holy See (Vatican City State)',
|
||||
'Honduras' = 'Honduras',
|
||||
'Hong Kong' = 'Hong Kong',
|
||||
'Hungary' = 'Hungary',
|
||||
'Iceland' = 'Iceland',
|
||||
'India' = 'India',
|
||||
'Indonesia' = 'Indonesia',
|
||||
'Iran, Islamic Republic Of' = 'Iran, Islamic Republic Of',
|
||||
'Iraq' = 'Iraq',
|
||||
'Ireland' = 'Ireland',
|
||||
'Isle of Man' = 'Isle of Man',
|
||||
'Israel' = 'Israel',
|
||||
'Italy' = 'Italy',
|
||||
'Jamaica' = 'Jamaica',
|
||||
'Japan' = 'Japan',
|
||||
'Jersey' = 'Jersey',
|
||||
'Jordan' = 'Jordan',
|
||||
'Kazakhstan' = 'Kazakhstan',
|
||||
'Kenya' = 'Kenya',
|
||||
'Kiribati' = 'Kiribati',
|
||||
"Korea, Democratic People's Republic of" = "Korea, Democratic People's Republic of",
|
||||
'Korea, Republic of' = 'Korea, Republic of',
|
||||
'Kuwait' = 'Kuwait',
|
||||
'Kyrgyzstan' = 'Kyrgyzstan',
|
||||
"Lao People's Democratic Republic" = "Lao People's Democratic Republic",
|
||||
'Latvia' = 'Latvia',
|
||||
'Lebanon' = 'Lebanon',
|
||||
'Lesotho' = 'Lesotho',
|
||||
'Liberia' = 'Liberia',
|
||||
'Libyan Arab Jamahiriya' = 'Libyan Arab Jamahiriya',
|
||||
'Liechtenstein' = 'Liechtenstein',
|
||||
'Lithuania' = 'Lithuania',
|
||||
'Luxembourg' = 'Luxembourg',
|
||||
'Macao' = 'Macao',
|
||||
'Macedonia, The Former Yugoslav Republic of' = 'Macedonia, The Former Yugoslav Republic of',
|
||||
'Madagascar' = 'Madagascar',
|
||||
'Malawi' = 'Malawi',
|
||||
'Malaysia' = 'Malaysia',
|
||||
'Maldives' = 'Maldives',
|
||||
'Mali' = 'Mali',
|
||||
'Malta' = 'Malta',
|
||||
'Marshall Islands' = 'Marshall Islands',
|
||||
'Martinique' = 'Martinique',
|
||||
'Mauritania' = 'Mauritania',
|
||||
'Mauritius' = 'Mauritius',
|
||||
'Mayotte' = 'Mayotte',
|
||||
'Mexico' = 'Mexico',
|
||||
'Micronesia, Federated States of' = 'Micronesia, Federated States of',
|
||||
'Moldova, Republic of' = 'Moldova, Republic of',
|
||||
'Monaco' = 'Monaco',
|
||||
'Mongolia' = 'Mongolia',
|
||||
'Montserrat' = 'Montserrat',
|
||||
'Morocco' = 'Morocco',
|
||||
'Mozambique' = 'Mozambique',
|
||||
'Myanmar' = 'Myanmar',
|
||||
'Namibia' = 'Namibia',
|
||||
'Nauru' = 'Nauru',
|
||||
'Nepal' = 'Nepal',
|
||||
'Netherlands' = 'Netherlands',
|
||||
'Netherlands Antilles' = 'Netherlands Antilles',
|
||||
'New Caledonia' = 'New Caledonia',
|
||||
'New Zealand' = 'New Zealand',
|
||||
'Nicaragua' = 'Nicaragua',
|
||||
'Niger' = 'Niger',
|
||||
'Nigeria' = 'Nigeria',
|
||||
'Niue' = 'Niue',
|
||||
'Norfolk Island' = 'Norfolk Island',
|
||||
'Northern Mariana Islands' = 'Northern Mariana Islands',
|
||||
'Norway' = 'Norway',
|
||||
'Oman' = 'Oman',
|
||||
'Pakistan' = 'Pakistan',
|
||||
'Palau' = 'Palau',
|
||||
'Palestinian Territory, Occupied' = 'Palestinian Territory, Occupied',
|
||||
'Panama' = 'Panama',
|
||||
'Papua New Guinea' = 'Papua New Guinea',
|
||||
'Paraguay' = 'Paraguay',
|
||||
'Peru' = 'Peru',
|
||||
'Philippines' = 'Philippines',
|
||||
'Pitcairn' = 'Pitcairn',
|
||||
'Poland' = 'Poland',
|
||||
'Portugal' = 'Portugal',
|
||||
'Puerto Rico' = 'Puerto Rico',
|
||||
'Qatar' = 'Qatar',
|
||||
'Reunion' = 'Reunion',
|
||||
'Romania' = 'Romania',
|
||||
'Russian Federation' = 'Russian Federation',
|
||||
'RWANDA' = 'RWANDA',
|
||||
'Saint Helena' = 'Saint Helena',
|
||||
'Saint Kitts and Nevis' = 'Saint Kitts and Nevis',
|
||||
'Saint Lucia' = 'Saint Lucia',
|
||||
'Saint Pierre and Miquelon' = 'Saint Pierre and Miquelon',
|
||||
'Saint Vincent and the Grenadines' = 'Saint Vincent and the Grenadines',
|
||||
'Samoa' = 'Samoa',
|
||||
'San Marino' = 'San Marino',
|
||||
'Sao Tome and Principe' = 'Sao Tome and Principe',
|
||||
'Saudi Arabia' = 'Saudi Arabia',
|
||||
'Senegal' = 'Senegal',
|
||||
'Serbia and Montenegro' = 'Serbia and Montenegro',
|
||||
'Seychelles' = 'Seychelles',
|
||||
'Sierra Leone' = 'Sierra Leone',
|
||||
'Singapore' = 'Singapore',
|
||||
'Slovakia' = 'Slovakia',
|
||||
'Slovenia' = 'Slovenia',
|
||||
'Solomon Islands' = 'Solomon Islands',
|
||||
'Somalia' = 'Somalia',
|
||||
'South Africa' = 'South Africa',
|
||||
'South Georgia and the South Sandwich Islands' = 'South Georgia and the South Sandwich Islands',
|
||||
'Spain' = 'Spain',
|
||||
'Sri Lanka' = 'Sri Lanka',
|
||||
'Sudan' = 'Sudan',
|
||||
'Suriname' = 'Suriname',
|
||||
'Svalbard and Jan Mayen' = 'Svalbard and Jan Mayen',
|
||||
'Swaziland' = 'Swaziland',
|
||||
'Sweden' = 'Sweden',
|
||||
'Switzerland' = 'Switzerland',
|
||||
'Syrian Arab Republic' = 'Syrian Arab Republic',
|
||||
'Taiwan, Province of China' = 'Taiwan, Province of China',
|
||||
'Tajikistan' = 'Tajikistan',
|
||||
'Tanzania, United Republic of' = 'Tanzania, United Republic of',
|
||||
'Thailand' = 'Thailand',
|
||||
'Timor-Leste' = 'Timor-Leste',
|
||||
'Togo' = 'Togo',
|
||||
'Tokelau' = 'Tokelau',
|
||||
'Tonga' = 'Tonga',
|
||||
'Trinidad and Tobago' = 'Trinidad and Tobago',
|
||||
'Tunisia' = 'Tunisia',
|
||||
'Turkey' = 'Turkey',
|
||||
'Turkmenistan' = 'Turkmenistan',
|
||||
'Turks and Caicos Islands' = 'Turks and Caicos Islands',
|
||||
'Tuvalu' = 'Tuvalu',
|
||||
'Uganda' = 'Uganda',
|
||||
'Ukraine' = 'Ukraine',
|
||||
'United Arab Emirates' = 'United Arab Emirates',
|
||||
'United Kingdom' = 'United Kingdom',
|
||||
'United States' = 'United States',
|
||||
'United States Minor Outlying Islands' = 'United States Minor Outlying Islands',
|
||||
'Uruguay' = 'Uruguay',
|
||||
'Uzbekistan' = 'Uzbekistan',
|
||||
'Vanuatu' = 'Vanuatu',
|
||||
'Venezuela' = 'Venezuela',
|
||||
'Viet Nam' = 'Viet Nam',
|
||||
'Virgin Islands, British' = 'Virgin Islands, British',
|
||||
'Virgin Islands, U.S.' = 'Virgin Islands, U.S.',
|
||||
'Wallis and Futuna' = 'Wallis and Futuna',
|
||||
'Western Sahara' = 'Western Sahara',
|
||||
'Yemen' = 'Yemen',
|
||||
'Zambia' = 'Zambia',
|
||||
'Zimbabwe' = 'Zimbabwe',
|
||||
}
|
||||
|
||||
export default Countries;
|
||||
7
Common/Types/Database/AccessControls/AccessControl.ts
Normal file
7
Common/Types/Database/AccessControls/AccessControl.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
export default interface AccessControl {
|
||||
create: boolean;
|
||||
readAsItem: boolean;
|
||||
readAsList: boolean;
|
||||
update: boolean;
|
||||
delete: boolean;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
import AccessControl from '../AccessControl';
|
||||
|
||||
export default (accessControl: AccessControl) => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
if (accessControl.create) {
|
||||
baseModel.addAdminCreateableColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.delete) {
|
||||
baseModel.addAdminDeleteableColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.readAsItem) {
|
||||
baseModel.addAdminReadableAsItemColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.readAsList) {
|
||||
baseModel.addAdminReadableAsListColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.update) {
|
||||
baseModel.addAdminUpdateableColumn(propertyKey);
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,25 @@
|
||||
import AccessControl from '../AccessControl';
|
||||
|
||||
export default (accessControl: AccessControl) => {
|
||||
return (ctr: Function) => {
|
||||
if (accessControl.create) {
|
||||
ctr.prototype.canAdminCreateRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.readAsItem) {
|
||||
ctr.prototype.canAdminReadItemRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.readAsList) {
|
||||
ctr.prototype.canAdminReadListRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.update) {
|
||||
ctr.prototype.canAdminUpdateRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.delete) {
|
||||
ctr.prototype.canAdminDeleteRecord = true;
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addAdminCreateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addAdminDeleteableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addAdminReadableAsItemColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addAdminReadableAsListColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addAdminUpdateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canAdminCreateRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canAdminDeleteRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canAdminReadItemRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canAdminReadListRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canAdminUpdateRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addMemberCreateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addMemberDeleteableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addAdminReadableAsItemColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addAdminReadableAsListColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addMemberUpdateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canMemberCreateRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canMemberDeleteRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canMemberReadItemRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canMemberReadListRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canMemberUpdateRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,27 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
import AccessControl from '../AccessControl';
|
||||
|
||||
export default (accessControl: AccessControl) => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
if (accessControl.create) {
|
||||
baseModel.addMemberCreateableColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.delete) {
|
||||
baseModel.addMemberDeleteableColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.readAsItem) {
|
||||
baseModel.addMemberReadableAsItemColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.readAsList) {
|
||||
baseModel.addMemberReadableAsListColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.update) {
|
||||
baseModel.addMemberUpdateableColumn(propertyKey);
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,25 @@
|
||||
import AccessControl from '../AccessControl';
|
||||
|
||||
export default (accessControl: AccessControl) => {
|
||||
return (ctr: Function) => {
|
||||
if (accessControl.create) {
|
||||
ctr.prototype.canMemberCreateRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.readAsItem) {
|
||||
ctr.prototype.canMemberReadItemRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.readAsList) {
|
||||
ctr.prototype.canMemberReadListRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.update) {
|
||||
ctr.prototype.canMemberUpdateRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.delete) {
|
||||
ctr.prototype.canMemberDeleteRecord = true;
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addOwnerCreateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addOwnerDeleteableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addOwnerReadableAsItemColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addOwnerReadableAsListColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addOwnerUpdateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canOwnerCreateRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canOwnerDeleteRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canOwnerReadItemRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canOwnerReadListRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canOwnerUpdateRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,27 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
import AccessControl from '../AccessControl';
|
||||
|
||||
export default (accessControl: AccessControl) => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
if (accessControl.create) {
|
||||
baseModel.addOwnerCreateableColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.delete) {
|
||||
baseModel.addOwnerDeleteableColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.readAsItem) {
|
||||
baseModel.addOwnerReadableAsItemColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.readAsList) {
|
||||
baseModel.addOwnerReadableAsListColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.update) {
|
||||
baseModel.addOwnerUpdateableColumn(propertyKey);
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,25 @@
|
||||
import AccessControl from '../AccessControl';
|
||||
|
||||
export default (accessControl: AccessControl) => {
|
||||
return (ctr: Function) => {
|
||||
if (accessControl.create) {
|
||||
ctr.prototype.canOwnerCreateRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.readAsItem) {
|
||||
ctr.prototype.canOwnerReadItemRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.readAsList) {
|
||||
ctr.prototype.canOwnerReadListRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.update) {
|
||||
ctr.prototype.canOwnerUpdateRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.delete) {
|
||||
ctr.prototype.canOwnerDeleteRecord = true;
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addPublicCreateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addPublicDeleteableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addPublicReadableAsItemColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addPublicReadableAsListColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addPublicUpdateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canPublicCreateRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canPublicDeleteRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canPublicReadItemRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canPublicReadListRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canPublicUpdateRecord = true;
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,27 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
import AccessControl from '../AccessControl';
|
||||
|
||||
export default (accessControl: AccessControl) => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
if (accessControl.create) {
|
||||
baseModel.addPublicCreateableColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.delete) {
|
||||
baseModel.addPublicDeleteableColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.readAsItem) {
|
||||
baseModel.addPublicReadableAsItemColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.readAsList) {
|
||||
baseModel.addPublicReadableAsListColumn(propertyKey);
|
||||
}
|
||||
|
||||
if (accessControl.update) {
|
||||
baseModel.addPublicUpdateableColumn(propertyKey);
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,25 @@
|
||||
import AccessControl from '../AccessControl';
|
||||
|
||||
export default (accessControl: AccessControl) => {
|
||||
return (ctr: Function) => {
|
||||
if (accessControl.create) {
|
||||
ctr.prototype.canPublicCreateRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.readAsItem) {
|
||||
ctr.prototype.canPublicReadItemRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.readAsList) {
|
||||
ctr.prototype.canPublicReadListRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.update) {
|
||||
ctr.prototype.canPublicUpdateRecord = true;
|
||||
}
|
||||
|
||||
if (accessControl.delete) {
|
||||
ctr.prototype.canPublicDeleteRecord = true;
|
||||
}
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addUserCreateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addUserDeleteableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addUserReadableAsItemColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addUserReadableAsListColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,8 @@
|
||||
import BaseModel from '../../../../Models/BaseModel';
|
||||
|
||||
export default () => {
|
||||
return (target: Object, propertyKey: string) => {
|
||||
const baseModel: BaseModel = target as BaseModel;
|
||||
baseModel.addUserUpdateableColumn(propertyKey);
|
||||
};
|
||||
};
|
||||
@@ -0,0 +1,5 @@
|
||||
export default () => {
|
||||
return (ctr: Function) => {
|
||||
ctr.prototype.canUserCreateRecord = true;
|
||||
};
|
||||
};
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user