Updates
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,300 +1 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 2888;
|
||||
exports.ids = [2888];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 7218:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
// ESM COMPAT FLAG
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
|
||||
// EXPORTS
|
||||
__webpack_require__.d(__webpack_exports__, {
|
||||
"default": () => (/* binding */ DataSquirel)
|
||||
});
|
||||
|
||||
// EXTERNAL MODULE: external "react/jsx-runtime"
|
||||
var jsx_runtime_ = __webpack_require__(997);
|
||||
// EXTERNAL MODULE: external "react"
|
||||
var external_react_ = __webpack_require__(6689);
|
||||
var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
|
||||
// EXTERNAL MODULE: ./node_modules/next/script.js
|
||||
var script = __webpack_require__(4298);
|
||||
var script_default = /*#__PURE__*/__webpack_require__.n(script);
|
||||
// EXTERNAL MODULE: external "next/head"
|
||||
var head_ = __webpack_require__(968);
|
||||
var head_default = /*#__PURE__*/__webpack_require__.n(head_);
|
||||
// EXTERNAL MODULE: external "@mui/material/styles"
|
||||
var styles_ = __webpack_require__(8442);
|
||||
// EXTERNAL MODULE: ./functions/frontend/fetchApi.js
|
||||
var fetchApi = __webpack_require__(6729);
|
||||
// EXTERNAL MODULE: ./layouts/GeneralLayout.jsx + 1 modules
|
||||
var GeneralLayout = __webpack_require__(6217);
|
||||
// EXTERNAL MODULE: ./components/general/PageHeadTags.jsx
|
||||
var PageHeadTags = __webpack_require__(4097);
|
||||
;// CONCATENATED MODULE: ./components/ErrorBoundary.jsx
|
||||
// @ts-check
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
class ErrorBoundary extends (external_react_default()).Component {
|
||||
constructor(/** @type {any} */ props){
|
||||
super(props);
|
||||
// Define a state variable to track whether is an error or not
|
||||
this.state = {
|
||||
hasError: false
|
||||
};
|
||||
/**
|
||||
* Javascript Variables
|
||||
*
|
||||
* @abstract Non hook variables and functions
|
||||
*/ const pageTitle = "Error | Datasquirel";
|
||||
const pageDescription = "Datasquirel is a fast and efficient cloud-based SQL data management system that takes away the entire hassle of dealing with data both locally and across different platforms.";
|
||||
let head = /*#__PURE__*/ (0,jsx_runtime_.jsxs)((external_react_default()).Fragment, {
|
||||
children: [
|
||||
/*#__PURE__*/ jsx_runtime_.jsx("title", {
|
||||
children: pageTitle
|
||||
}),
|
||||
/*#__PURE__*/ jsx_runtime_.jsx("meta", {
|
||||
name: "description",
|
||||
content: pageDescription
|
||||
}),
|
||||
/*#__PURE__*/ jsx_runtime_.jsx(PageHeadTags/* default */.Z, {
|
||||
pageTitle: pageTitle,
|
||||
pageDescription: pageDescription,
|
||||
pagePathname: "/"
|
||||
})
|
||||
]
|
||||
});
|
||||
// @ts-ignore
|
||||
this.state.head = head;
|
||||
}
|
||||
static getDerivedStateFromError() {
|
||||
return {
|
||||
hasError: true
|
||||
};
|
||||
}
|
||||
componentDidCatch(/** @type {any} */ error, /** @type {any} */ errorInfo) {
|
||||
(0,fetchApi/* default */.Z)("/api/admin/clientError", {
|
||||
method: "post",
|
||||
body: {
|
||||
component: "ErrorBoundary-class-component",
|
||||
message: error.message + " ==== Error Info => " + errorInfo,
|
||||
user: {}
|
||||
}
|
||||
});
|
||||
}
|
||||
render() {
|
||||
// Check if the error is thrown
|
||||
if (this.state.hasError) {
|
||||
// You can render any custom fallback UI
|
||||
return /*#__PURE__*/ jsx_runtime_.jsx(GeneralLayout/* default */.Z, {
|
||||
// @ts-ignore
|
||||
head: this.state.head,
|
||||
user: null,
|
||||
children: /*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
|
||||
className: "paper items-center px-20",
|
||||
children: [
|
||||
/*#__PURE__*/ jsx_runtime_.jsx("h2", {
|
||||
className: "text-base text-slate-400 m-0",
|
||||
children: "Application Error!"
|
||||
}),
|
||||
/*#__PURE__*/ jsx_runtime_.jsx("h1", {
|
||||
className: "text-2xl m-0 mb-4",
|
||||
children: "Please try again!"
|
||||
}),
|
||||
/*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
|
||||
children: [
|
||||
/*#__PURE__*/ jsx_runtime_.jsx("a", {
|
||||
href: "/",
|
||||
className: "button outlined",
|
||||
children: "Home"
|
||||
}),
|
||||
/*#__PURE__*/ jsx_runtime_.jsx("button", {
|
||||
onClick: (e)=>{
|
||||
window.history.back();
|
||||
},
|
||||
children: "Go Back"
|
||||
})
|
||||
]
|
||||
})
|
||||
]
|
||||
})
|
||||
});
|
||||
}
|
||||
// Return children components in case of no error
|
||||
return this.props.children;
|
||||
}
|
||||
}
|
||||
/* harmony default export */ const components_ErrorBoundary = (ErrorBoundary);
|
||||
|
||||
;// CONCATENATED MODULE: ./functions/theme.js
|
||||
// @ts-check
|
||||
|
||||
const theme = (0,styles_.createTheme)({
|
||||
typography: {
|
||||
fontFamily: "inherit",
|
||||
fontSize: 14
|
||||
},
|
||||
palette: {
|
||||
primary: {
|
||||
main: "#00948a"
|
||||
},
|
||||
secondary: {
|
||||
main: "#107ab8"
|
||||
},
|
||||
light: {
|
||||
main: "#c48ff0"
|
||||
},
|
||||
white: {
|
||||
main: "#ffffff"
|
||||
},
|
||||
grey: {
|
||||
// @ts-ignore
|
||||
main: "#64748b"
|
||||
},
|
||||
gray: {
|
||||
main: "#64748b"
|
||||
},
|
||||
dark: {
|
||||
main: "#1e293b"
|
||||
}
|
||||
}
|
||||
});
|
||||
/* harmony default export */ const functions_theme = (theme);
|
||||
|
||||
;// CONCATENATED MODULE: ./pages/_app.js
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
// import "../styles/main.css";
|
||||
|
||||
|
||||
|
||||
|
||||
// require()();
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* App Component
|
||||
* ==============================================================================
|
||||
* @param {import("next/app").AppProps} props
|
||||
*/ function DataSquirel({ Component , pageProps }) {
|
||||
/**
|
||||
* React Hooks
|
||||
*
|
||||
* @description { useState, useEffect, useRef, etc ... }
|
||||
*/ ////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* Function Return
|
||||
*
|
||||
* @description Main Function Return
|
||||
*/ return /*#__PURE__*/ (0,jsx_runtime_.jsxs)((external_react_default()).Fragment, {
|
||||
children: [
|
||||
/*#__PURE__*/ jsx_runtime_.jsx((head_default()), {
|
||||
children: /*#__PURE__*/ jsx_runtime_.jsx("meta", {
|
||||
name: "viewport",
|
||||
content: "width=device-width, initial-scale=1"
|
||||
})
|
||||
}),
|
||||
/*#__PURE__*/ jsx_runtime_.jsx(components_ErrorBoundary, {
|
||||
children: /*#__PURE__*/ jsx_runtime_.jsx(styles_.ThemeProvider, {
|
||||
theme: functions_theme,
|
||||
children: /*#__PURE__*/ jsx_runtime_.jsx(Component, {
|
||||
...pageProps
|
||||
})
|
||||
})
|
||||
}),
|
||||
/*#__PURE__*/ jsx_runtime_.jsx((script_default()), {
|
||||
src: "/scripts/main.js",
|
||||
strategy: "afterInteractive"
|
||||
})
|
||||
]
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 386:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CottageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5557:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/MenuBookTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8442:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/material/styles");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2423:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lucide-react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2796:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/dist/shared/lib/head-manager-context.js");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 968:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/head");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6689:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 997:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react/jsx-runtime");
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../webpack-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [4298,4017,8313,5264,6729,5449,913,9360,6217,4097], () => (__webpack_exec__(7218)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=636,e.ids=[636],e.modules={66099:e=>{e.exports=require("@mui/system")},37616:e=>{e.exports=require("@mui/system/DefaultPropsProvider")},24509:e=>{e.exports=require("@mui/system/InitColorSchemeScript")},84781:e=>{e.exports=require("@mui/system/colorManipulator")},18215:e=>{e.exports=require("@mui/system/createStyled")},59989:e=>{e.exports=require("@mui/system/createTheme")},16670:e=>{e.exports=require("@mui/system/styleFunctionSx")},88698:e=>{e.exports=require("@mui/system/useThemeProps")},76831:e=>{e.exports=require("@mui/utils")},28578:e=>{e.exports=require("@mui/utils/capitalize")},14036:e=>{e.exports=require("@mui/utils/composeClasses")},31112:e=>{e.exports=require("@mui/utils/createChainedFunction")},21763:e=>{e.exports=require("@mui/utils/debounce")},7546:e=>{e.exports=require("@mui/utils/deepmerge")},5928:e=>{e.exports=require("@mui/utils/deprecatedPropType")},20985:e=>{e.exports=require("@mui/utils/formatMuiErrorMessage")},61119:e=>{e.exports=require("@mui/utils/generateUtilityClass")},81699:e=>{e.exports=require("@mui/utils/generateUtilityClasses")},29823:e=>{e.exports=require("@mui/utils/isMuiElement")},55402:e=>{e.exports=require("@mui/utils/ownerDocument")},46875:e=>{e.exports=require("@mui/utils/ownerWindow")},48080:e=>{e.exports=require("@mui/utils/requirePropFactory")},39597:e=>{e.exports=require("@mui/utils/setRef")},88190:e=>{e.exports=require("@mui/utils/unsupportedProp")},83889:e=>{e.exports=require("@mui/utils/useControlled")},21956:e=>{e.exports=require("@mui/utils/useEnhancedEffect")},4926:e=>{e.exports=require("@mui/utils/useEventCallback")},7376:e=>{e.exports=require("@mui/utils/useForkRef")},63310:e=>{e.exports=require("@mui/utils/useId")},10977:e=>{e.exports=require("@mui/utils/useIsFocusVisible")},74956:e=>{e.exports=require("clsx")},40361:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},27912:e=>{e.exports=require("next/head")},29825:e=>{e.exports=require("prop-types")},82015:e=>{e.exports=require("react")},22326:e=>{e.exports=require("react-dom")},8732:e=>{e.exports=require("react/jsx-runtime")}};var r=require("../webpack-runtime.js");r.C(e);var i=e=>r(r.s=e),s=r.X(0,[9764,8268],()=>i(68268));module.exports=s})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,229 +1 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 660;
|
||||
exports.ids = [660];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 4065:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ Document)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(997);
|
||||
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6689);
|
||||
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var next_document__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6859);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/
|
||||
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* ==============================================================================
|
||||
* Main Component { Functional }
|
||||
* ==============================================================================
|
||||
* @param {Object} props - Server props
|
||||
*/ function Document(props) {
|
||||
/**
|
||||
* Get Contexts
|
||||
*
|
||||
* @abstract { React.useContext }
|
||||
*/ ////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* Javascript Variables
|
||||
*
|
||||
* @abstract Non hook variables and functions
|
||||
*/ ////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* React Hooks
|
||||
*
|
||||
* @abstract { useState, useEffect, useRef, etc ... }
|
||||
*/ ////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* Function Return
|
||||
*
|
||||
* @abstract Main Function Return
|
||||
*/ return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(next_document__WEBPACK_IMPORTED_MODULE_2__.Html, {
|
||||
lang: "en",
|
||||
children: [
|
||||
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(next_document__WEBPACK_IMPORTED_MODULE_2__.Head, {
|
||||
children: [
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
name: "author",
|
||||
content: "Datasquirel"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
name: "Copyright",
|
||||
content: `Copyright (c) ${new Date().getFullYear()} Datasquirel`
|
||||
}),
|
||||
"dev_dev"?.match(/dev/) && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
name: "robots",
|
||||
content: "noindex,nofollow"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("link", {
|
||||
rel: "preconnect",
|
||||
href: "https://fonts.googleapis.com/",
|
||||
crossOrigin: "anonymous"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("link", {
|
||||
rel: "preconnect",
|
||||
href: "https://fonts.gstatic.com",
|
||||
crossOrigin: "anonymous"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("link", {
|
||||
rel: "stylesheet",
|
||||
href: "https://fonts.googleapis.com/css?family=Poppins"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("link", {
|
||||
rel: "stylesheet",
|
||||
href: "https://fonts.googleapis.com/css?family=Inter"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("link", {
|
||||
rel: "stylesheet",
|
||||
href: "https://fonts.googleapis.com/css?family=IBM+Plex+Mono"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("script", {
|
||||
src: "/scripts/themeSelector.js"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
httpEquiv: "Content-Type",
|
||||
content: "text/html; charset=UTF-8"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
property: "og:site_name",
|
||||
content: "DATASQUIREL"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
property: "og:type",
|
||||
content: "website"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
name: "twitter:card",
|
||||
content: "summary"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
property: "og:image",
|
||||
content: "https://static.datasquirel.com/images/user-images/user-2/email-banner.jpeg"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
itemProp: "image",
|
||||
content: "https://static.datasquirel.com/images/user-images/user-2/email-banner.jpeg"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
name: "twitter:image",
|
||||
content: "https://static.datasquirel.com/images/user-images/user-2/email-banner.jpeg"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("link", {
|
||||
rel: "stylesheet",
|
||||
href: "/styles/prism.css"
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("script", {
|
||||
src: "/scripts/prism.js",
|
||||
async: true
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("script", {
|
||||
dangerouslySetInnerHTML: {
|
||||
__html: "var DSQL = {}"
|
||||
}
|
||||
})
|
||||
]
|
||||
}),
|
||||
/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("body", {
|
||||
children: [
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(next_document__WEBPACK_IMPORTED_MODULE_2__.Main, {}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(next_document__WEBPACK_IMPORTED_MODULE_2__.NextScript, {})
|
||||
]
|
||||
})
|
||||
]
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
} /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4140:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/dist/server/get-page-files.js");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 9716:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/dist/server/htmlescape.js");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6368:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/dist/server/utils.js");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6724:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/dist/shared/lib/constants.js");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8743:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/dist/shared/lib/html-context.js");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8524:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/dist/shared/lib/is-plain-object.js");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6689:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 997:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react/jsx-runtime");
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../webpack-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [6859], () => (__webpack_exec__(4065)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=3220,e.ids=[3220],e.modules={49407:(e,t,s)=>{s.r(t),s.d(t,{default:()=>a});var r=s(8732);s(82015);var n=s(20883);function a(e){return(0,r.jsxs)(n.Html,{lang:"en",children:[(0,r.jsxs)(n.Head,{children:[(0,r.jsx)("meta",{name:"author",content:"Datasquirel"}),(0,r.jsx)("meta",{name:"Copyright",content:`Copyright (c) ${new Date().getFullYear()} Datasquirel`}),"dev_dev".match(/dev/)&&(0,r.jsx)("meta",{name:"robots",content:"noindex,nofollow"}),(0,r.jsx)("link",{rel:"preconnect",href:"https://fonts.googleapis.com/",crossOrigin:"anonymous"}),(0,r.jsx)("link",{rel:"preconnect",href:"https://fonts.gstatic.com",crossOrigin:"anonymous"}),(0,r.jsx)("link",{rel:"stylesheet",href:"https://fonts.googleapis.com/css?family=Poppins"}),(0,r.jsx)("link",{rel:"stylesheet",href:"https://fonts.googleapis.com/css?family=Inter"}),(0,r.jsx)("link",{rel:"stylesheet",href:"https://fonts.googleapis.com/css?family=IBM+Plex+Mono"}),(0,r.jsx)("script",{src:"/scripts/themeSelector.js"}),(0,r.jsx)("meta",{httpEquiv:"Content-Type",content:"text/html; charset=UTF-8"}),(0,r.jsx)("meta",{property:"og:site_name",content:"DATASQUIREL"}),(0,r.jsx)("meta",{property:"og:type",content:"website"}),(0,r.jsx)("meta",{name:"twitter:card",content:"summary"}),(0,r.jsx)("meta",{property:"og:image",content:"https://static.datasquirel.com/images/user-images/user-2/email-banner.jpeg"}),(0,r.jsx)("meta",{itemProp:"image",content:"https://static.datasquirel.com/images/user-images/user-2/email-banner.jpeg"}),(0,r.jsx)("meta",{name:"twitter:image",content:"https://static.datasquirel.com/images/user-images/user-2/email-banner.jpeg"}),(0,r.jsx)("link",{rel:"stylesheet",href:"/styles/prism.css"}),(0,r.jsx)("script",{src:"/scripts/prism.js",async:!0}),(0,r.jsx)("script",{dangerouslySetInnerHTML:{__html:"var DSQL = {}"}})]}),(0,r.jsxs)("body",{children:[(0,r.jsx)(n.Main,{}),(0,r.jsx)(n.NextScript,{})]})]})}},63865:(e,t,s)=>{e.exports=s(40361)},40361:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},82015:e=>{e.exports=require("react")},8732:e=>{e.exports=require("react/jsx-runtime")},33873:e=>{e.exports=require("path")},99929:(e,t)=>{t._=function(e){return e&&e.__esModule?e:{default:e}}}};var t=require("../webpack-runtime.js");t.C(e);var s=e=>t(t.s=e),r=t.X(0,[883],()=>s(49407));module.exports=r})();
|
||||
@@ -1 +1 @@
|
||||
{"version":1,"files":["../webpack-runtime.js","../chunks/6859.js","../../package.json","../../../node_modules/next/dist/server/get-page-files.js","../../../node_modules/next/dist/server/htmlescape.js","../../../node_modules/next/dist/server/utils.js","../../../node_modules/next/dist/shared/lib/constants.js","../../../node_modules/next/dist/shared/lib/html-context.js","../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../node_modules/next/package.json","../../../node_modules/react/package.json","../../../node_modules/react/index.js","../../../node_modules/react/jsx-runtime.js","../../../node_modules/react/cjs/react.production.min.js","../../../node_modules/react/cjs/react.development.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/cjs/react-jsx-runtime.production.min.js","../../../node_modules/next/dist/shared/lib/page-path/normalize-page-path.js","../../../node_modules/next/dist/shared/lib/page-path/denormalize-page-path.js","../../../node_modules/next/dist/shared/lib/utils.js","../../../node_modules/@swc/helpers/package.json","../../../node_modules/next/dist/shared/lib/page-path/ensure-leading-slash.js","../../../node_modules/next/dist/shared/lib/page-path/normalize-path-sep.js","../../../node_modules/@swc/helpers/lib/_async_to_generator.js","../../../node_modules/next/dist/shared/lib/router/utils/index.js","../../../node_modules/next/dist/shared/lib/router/utils/sorted-routes.js","../../../node_modules/next/dist/shared/lib/router/utils/is-dynamic.js","../../../package.json"]}
|
||||
{"version":1,"files":["../../../node_modules/client-only/index.js","../../../node_modules/client-only/package.json","../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../node_modules/next/dist/compiled/next-server/pages.runtime.prod.js","../../../node_modules/next/dist/lib/semver-noop.js","../../../node_modules/next/dist/server/lib/trace/constants.js","../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../node_modules/next/package.json","../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.development.js","../../../node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.min.js","../../../node_modules/react-dom/cjs/react-dom-server.browser.development.js","../../../node_modules/react-dom/cjs/react-dom-server.browser.production.min.js","../../../node_modules/react-dom/package.json","../../../node_modules/react-dom/server.browser.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/cjs/react-jsx-runtime.production.min.js","../../../node_modules/react/cjs/react.development.js","../../../node_modules/react/cjs/react.production.min.js","../../../node_modules/react/index.js","../../../node_modules/react/jsx-runtime.js","../../../node_modules/react/package.json","../../../node_modules/styled-jsx/dist/index/index.js","../../../node_modules/styled-jsx/index.js","../../../node_modules/styled-jsx/package.json","../../../package.json","../../../pages/_document.js","../../package.json","../chunks/1137.js","../chunks/1223.js","../chunks/1790.js","../chunks/2332.js","../chunks/2414.js","../chunks/2996.js","../chunks/3247.js","../chunks/3468.js","../chunks/3737.js","../chunks/4050.js","../chunks/4237.js","../chunks/4312.js","../chunks/4417.js","../chunks/5134.js","../chunks/5212.js","../chunks/5674.js","../chunks/615.js","../chunks/6154.js","../chunks/6806.js","../chunks/6946.js","../chunks/7070.js","../chunks/7318.js","../chunks/7488.js","../chunks/7665.js","../chunks/7734.js","../chunks/8153.js","../chunks/8268.js","../chunks/8370.js","../chunks/883.js","../chunks/8842.js","../chunks/9205.js","../chunks/9216.js","../chunks/9621.js","../chunks/9764.js","../chunks/9810.js","../webpack-runtime.js"]}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,339 +1 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 6964;
|
||||
exports.ids = [6964,133,4135];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 1174:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "DashboardContext": () => (/* binding */ DashboardContext),
|
||||
/* harmony export */ "default": () => (/* binding */ Dashboard),
|
||||
/* harmony export */ "getServerSideProps": () => (/* binding */ getServerSideProps)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(997);
|
||||
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6689);
|
||||
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var _layouts_AdminLayout__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4858);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(370);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_3__);
|
||||
/* harmony import */ var _components_admin_dashboard_DashboardContent__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8124);
|
||||
/* harmony import */ var _components_admin_databases_DeleteDatabaseConfirmationPopup__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(5012);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/
|
||||
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** @type {import("@/package-shared/types").DashboardContextType} */ let DashboardContextObject = {};
|
||||
const DashboardContext = /*#__PURE__*/ react__WEBPACK_IMPORTED_MODULE_1___default().createContext(DashboardContextObject);
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* ==============================================================================
|
||||
* Main Component { Functional }
|
||||
* ==============================================================================
|
||||
* @param {Object} props - Server props
|
||||
* @param {import("@/package-shared/types").UserType} props.user - Server props
|
||||
* @param {import("@/package-shared/types").DSQL_MYSQL_user_databases_Type[]} props.databases - Server props
|
||||
* @param {import("@/package-shared/types").MetricsType} props.metrics - Server props
|
||||
*/ function Dashboard({ user , databases , metrics }) {
|
||||
/**
|
||||
* Get Contexts
|
||||
*
|
||||
* @abstract { React.useContext }
|
||||
*/ ////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* Javascript Variables
|
||||
*
|
||||
* @abstract Non hook variables and functions
|
||||
*/ const pageTitle = "User Dashboard | Datasquirel";
|
||||
const pageDescription = "Welcome to your data app";
|
||||
let head = /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
|
||||
children: [
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("title", {
|
||||
children: pageTitle
|
||||
}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("meta", {
|
||||
name: "description",
|
||||
content: pageDescription
|
||||
})
|
||||
]
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* React Hooks
|
||||
*
|
||||
* @abstract { useState, useEffect, useRef, etc ... }
|
||||
*/ /** @type {*} */ const targetDbState = react__WEBPACK_IMPORTED_MODULE_1___default().useState(null);
|
||||
/** @type { [ targetDatabase: import("@/package-shared/types").DSQL_MYSQL_user_databases_Type | undefined, setTargetDatabase: React.Dispatch<React.SetStateAction<import("@/package-shared/types").DSQL_MYSQL_user_databases_Type>> ] } */ const [targetDatabase, setTargetDatabase] = targetDbState;
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* Function Return
|
||||
*
|
||||
* @abstract Main Function Return
|
||||
*/ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_layouts_AdminLayout__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
|
||||
head: head,
|
||||
user: user,
|
||||
children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(DashboardContext.Provider, {
|
||||
value: {
|
||||
user,
|
||||
databases,
|
||||
targetDatabase,
|
||||
setTargetDatabase,
|
||||
metrics
|
||||
},
|
||||
children: [
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_admin_dashboard_DashboardContent__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {}),
|
||||
/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components_admin_databases_DeleteDatabaseConfirmationPopup__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
|
||||
targetDatabase: targetDatabase
|
||||
})
|
||||
]
|
||||
})
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
}
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* ==============================================================================
|
||||
* Server Side Props or Static Props
|
||||
* ==============================================================================
|
||||
* @type {import("next").GetServerSideProps}
|
||||
*/ async function getServerSideProps({ req , res , query }) {
|
||||
/**
|
||||
* User Auth
|
||||
*
|
||||
* @description User Auth
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_3___default()(req, res);
|
||||
if (!user?.logged_in_status) {
|
||||
return {
|
||||
redirect: {
|
||||
destination: "/login",
|
||||
permanent: false
|
||||
}
|
||||
};
|
||||
}
|
||||
return {
|
||||
redirect: {
|
||||
destination: `/admin/${user.id}`,
|
||||
permanent: false
|
||||
}
|
||||
};
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
}
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4003:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/AdminPanelSettingsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 69:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudOffTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4008:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudQueueRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7306:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CollectionsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5050:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CopyAllTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 386:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CottageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7039:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DeleteForeverTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 930:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DifferenceTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8193:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DriveFileRenameOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8979:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DynamicFormTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LanguageOutlined");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2814:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LockTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5557:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/MenuBookTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 9806:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/PeopleOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 36:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/RefreshRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1799:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SchemaTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4063:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/StorageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2423:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lucide-react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 968:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/head");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6689:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 997:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react/jsx-runtime");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../webpack-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [4017,8313,5264,6729,5449,913,4480,370,424,4858,5472,7946,1500,75,9282,7926], () => (__webpack_exec__(1174)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=6309,e.ids=[636,6309],e.modules={34313:(e,r,t)=>{t.r(r),t.d(r,{config:()=>M,default:()=>h,getServerSideProps:()=>v,getStaticPaths:()=>y,getStaticProps:()=>f,reportWebVitals:()=>_,routeModule:()=>E,unstable_getServerProps:()=>w,unstable_getServerSideProps:()=>A,unstable_getStaticParams:()=>D,unstable_getStaticPaths:()=>C,unstable_getStaticProps:()=>j});var s={};t.r(s),t.d(s,{DashboardContext:()=>S,default:()=>P,getServerSideProps:()=>b});var i=t(63865),u=t(9455),o=t(30671),a=t(49407),p=t(68268),l=t(8732),n=t(82015),m=t.n(n),x=t(95222),d=t(20048),c=t.n(d),q=t(43001),g=t(34033);let S=m().createContext({});function P({user:e,databases:r,metrics:t}){let s=(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("title",{children:"User Dashboard | Datasquirel"}),(0,l.jsx)("meta",{name:"description",content:"Welcome to your data app"})]}),[i,u]=m().useState(null);return(0,l.jsx)(x.A,{head:s,user:e,children:(0,l.jsxs)(S.Provider,{value:{user:e,databases:r,targetDatabase:i,setTargetDatabase:u,metrics:t},children:[(0,l.jsx)(q.A,{}),(0,l.jsx)(g.A,{targetDatabase:i})]})})}async function b({req:e,res:r,query:t}){let s=await c()(e,r);return s?.logged_in_status?{redirect:{destination:`/admin/${s.id}`,permanent:!1}}:{redirect:{destination:"/login",permanent:!1}}}let h=(0,o.M)(s,"default"),f=(0,o.M)(s,"getStaticProps"),y=(0,o.M)(s,"getStaticPaths"),v=(0,o.M)(s,"getServerSideProps"),M=(0,o.M)(s,"config"),_=(0,o.M)(s,"reportWebVitals"),j=(0,o.M)(s,"unstable_getStaticProps"),C=(0,o.M)(s,"unstable_getStaticPaths"),D=(0,o.M)(s,"unstable_getStaticParams"),w=(0,o.M)(s,"unstable_getServerProps"),A=(0,o.M)(s,"unstable_getServerSideProps"),E=new i.PagesRouteModule({definition:{kind:u.A.PAGES,page:"/admin",pathname:"/admin",bundlePath:"",filename:""},components:{App:p.default,Document:a.default},userland:s})},66099:e=>{e.exports=require("@mui/system")},37616:e=>{e.exports=require("@mui/system/DefaultPropsProvider")},24509:e=>{e.exports=require("@mui/system/InitColorSchemeScript")},84781:e=>{e.exports=require("@mui/system/colorManipulator")},18215:e=>{e.exports=require("@mui/system/createStyled")},59989:e=>{e.exports=require("@mui/system/createTheme")},16670:e=>{e.exports=require("@mui/system/styleFunctionSx")},88698:e=>{e.exports=require("@mui/system/useThemeProps")},76831:e=>{e.exports=require("@mui/utils")},28578:e=>{e.exports=require("@mui/utils/capitalize")},14036:e=>{e.exports=require("@mui/utils/composeClasses")},31112:e=>{e.exports=require("@mui/utils/createChainedFunction")},21763:e=>{e.exports=require("@mui/utils/debounce")},7546:e=>{e.exports=require("@mui/utils/deepmerge")},5928:e=>{e.exports=require("@mui/utils/deprecatedPropType")},20985:e=>{e.exports=require("@mui/utils/formatMuiErrorMessage")},61119:e=>{e.exports=require("@mui/utils/generateUtilityClass")},81699:e=>{e.exports=require("@mui/utils/generateUtilityClasses")},29823:e=>{e.exports=require("@mui/utils/isMuiElement")},55402:e=>{e.exports=require("@mui/utils/ownerDocument")},46875:e=>{e.exports=require("@mui/utils/ownerWindow")},48080:e=>{e.exports=require("@mui/utils/requirePropFactory")},39597:e=>{e.exports=require("@mui/utils/setRef")},88190:e=>{e.exports=require("@mui/utils/unsupportedProp")},83889:e=>{e.exports=require("@mui/utils/useControlled")},21956:e=>{e.exports=require("@mui/utils/useEnhancedEffect")},4926:e=>{e.exports=require("@mui/utils/useEventCallback")},7376:e=>{e.exports=require("@mui/utils/useForkRef")},63310:e=>{e.exports=require("@mui/utils/useId")},10977:e=>{e.exports=require("@mui/utils/useIsFocusVisible")},74956:e=>{e.exports=require("clsx")},40361:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},27912:e=>{e.exports=require("next/head")},29825:e=>{e.exports=require("prop-types")},82015:e=>{e.exports=require("react")},22326:e=>{e.exports=require("react-dom")},8732:e=>{e.exports=require("react/jsx-runtime")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")}};var r=require("../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[9764,883,8268,7070,1223,3247],()=>t(34313));module.exports=s})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,200 +1 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 4135;
|
||||
exports.ids = [4135,133];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 4003:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/AdminPanelSettingsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 69:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudOffTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4008:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudQueueRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7306:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CollectionsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5050:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CopyAllTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 386:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CottageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7039:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DeleteForeverTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 930:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DifferenceTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8193:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DriveFileRenameOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8979:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DynamicFormTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LanguageOutlined");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2814:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LockTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5557:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/MenuBookTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 9806:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/PeopleOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 36:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/RefreshRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1799:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SchemaTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4063:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/StorageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2423:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lucide-react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 968:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/head");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6689:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 997:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react/jsx-runtime");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [4017,8313,5264,6729,5449,913,4480,370,424,4858,5472,7946,1500,75,9282,7926], () => (__webpack_exec__(1457)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=531,e.ids=[531,636],e.modules={25824:(e,r,t)=>{t.r(r),t.d(r,{config:()=>q,default:()=>l,getServerSideProps:()=>x,getStaticPaths:()=>n,getStaticProps:()=>m,reportWebVitals:()=>c,routeModule:()=>f,unstable_getServerProps:()=>S,unstable_getServerSideProps:()=>b,unstable_getStaticParams:()=>P,unstable_getStaticPaths:()=>g,unstable_getStaticProps:()=>d});var s=t(63865),i=t(9455),u=t(30671),o=t(49407),p=t(68268),a=t(26295);let l=(0,u.M)(a,"default"),m=(0,u.M)(a,"getStaticProps"),n=(0,u.M)(a,"getStaticPaths"),x=(0,u.M)(a,"getServerSideProps"),q=(0,u.M)(a,"config"),c=(0,u.M)(a,"reportWebVitals"),d=(0,u.M)(a,"unstable_getStaticProps"),g=(0,u.M)(a,"unstable_getStaticPaths"),P=(0,u.M)(a,"unstable_getStaticParams"),S=(0,u.M)(a,"unstable_getServerProps"),b=(0,u.M)(a,"unstable_getServerSideProps"),f=new s.PagesRouteModule({definition:{kind:i.A.PAGES,page:"/admin/[user_id]",pathname:"/admin/[user_id]",bundlePath:"",filename:""},components:{App:p.default,Document:o.default},userland:a})},66099:e=>{e.exports=require("@mui/system")},37616:e=>{e.exports=require("@mui/system/DefaultPropsProvider")},24509:e=>{e.exports=require("@mui/system/InitColorSchemeScript")},84781:e=>{e.exports=require("@mui/system/colorManipulator")},18215:e=>{e.exports=require("@mui/system/createStyled")},59989:e=>{e.exports=require("@mui/system/createTheme")},16670:e=>{e.exports=require("@mui/system/styleFunctionSx")},88698:e=>{e.exports=require("@mui/system/useThemeProps")},76831:e=>{e.exports=require("@mui/utils")},28578:e=>{e.exports=require("@mui/utils/capitalize")},14036:e=>{e.exports=require("@mui/utils/composeClasses")},31112:e=>{e.exports=require("@mui/utils/createChainedFunction")},21763:e=>{e.exports=require("@mui/utils/debounce")},7546:e=>{e.exports=require("@mui/utils/deepmerge")},5928:e=>{e.exports=require("@mui/utils/deprecatedPropType")},20985:e=>{e.exports=require("@mui/utils/formatMuiErrorMessage")},61119:e=>{e.exports=require("@mui/utils/generateUtilityClass")},81699:e=>{e.exports=require("@mui/utils/generateUtilityClasses")},29823:e=>{e.exports=require("@mui/utils/isMuiElement")},55402:e=>{e.exports=require("@mui/utils/ownerDocument")},46875:e=>{e.exports=require("@mui/utils/ownerWindow")},48080:e=>{e.exports=require("@mui/utils/requirePropFactory")},39597:e=>{e.exports=require("@mui/utils/setRef")},88190:e=>{e.exports=require("@mui/utils/unsupportedProp")},83889:e=>{e.exports=require("@mui/utils/useControlled")},21956:e=>{e.exports=require("@mui/utils/useEnhancedEffect")},4926:e=>{e.exports=require("@mui/utils/useEventCallback")},7376:e=>{e.exports=require("@mui/utils/useForkRef")},63310:e=>{e.exports=require("@mui/utils/useId")},10977:e=>{e.exports=require("@mui/utils/useIsFocusVisible")},74956:e=>{e.exports=require("clsx")},40361:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},27912:e=>{e.exports=require("next/head")},29825:e=>{e.exports=require("prop-types")},82015:e=>{e.exports=require("react")},22326:e=>{e.exports=require("react-dom")},8732:e=>{e.exports=require("react/jsx-runtime")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")}};var r=require("../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[9764,883,8268,7070,1223,3247],()=>t(25824));module.exports=s})();
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,200 +1 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 133;
|
||||
exports.ids = [133,4135];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 4003:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/AdminPanelSettingsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 69:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudOffTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4008:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudQueueRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7306:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CollectionsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5050:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CopyAllTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 386:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CottageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7039:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DeleteForeverTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 930:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DifferenceTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8193:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DriveFileRenameOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8979:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DynamicFormTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LanguageOutlined");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2814:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LockTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5557:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/MenuBookTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 9806:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/PeopleOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 36:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/RefreshRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1799:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SchemaTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4063:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/StorageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2423:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lucide-react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 968:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/head");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6689:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 997:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react/jsx-runtime");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../../webpack-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [4017,8313,5264,6729,5449,913,4480,370,424,4858,5472,7946,1500,75,9282], () => (__webpack_exec__(2109)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=2564,e.ids=[636,2564],e.modules={86482:(e,r,t)=>{t.r(r),t.d(r,{config:()=>q,default:()=>l,getServerSideProps:()=>x,getStaticPaths:()=>n,getStaticProps:()=>m,reportWebVitals:()=>d,routeModule:()=>f,unstable_getServerProps:()=>S,unstable_getServerSideProps:()=>b,unstable_getStaticParams:()=>P,unstable_getStaticPaths:()=>g,unstable_getStaticProps:()=>c});var s=t(63865),i=t(9455),u=t(30671),o=t(49407),p=t(68268),a=t(86176);let l=(0,u.M)(a,"default"),m=(0,u.M)(a,"getStaticProps"),n=(0,u.M)(a,"getStaticPaths"),x=(0,u.M)(a,"getServerSideProps"),q=(0,u.M)(a,"config"),d=(0,u.M)(a,"reportWebVitals"),c=(0,u.M)(a,"unstable_getStaticProps"),g=(0,u.M)(a,"unstable_getStaticPaths"),P=(0,u.M)(a,"unstable_getStaticParams"),S=(0,u.M)(a,"unstable_getServerProps"),b=(0,u.M)(a,"unstable_getServerSideProps"),f=new s.PagesRouteModule({definition:{kind:i.A.PAGES,page:"/admin/[user_id]/databases",pathname:"/admin/[user_id]/databases",bundlePath:"",filename:""},components:{App:p.default,Document:o.default},userland:a})},66099:e=>{e.exports=require("@mui/system")},37616:e=>{e.exports=require("@mui/system/DefaultPropsProvider")},24509:e=>{e.exports=require("@mui/system/InitColorSchemeScript")},84781:e=>{e.exports=require("@mui/system/colorManipulator")},18215:e=>{e.exports=require("@mui/system/createStyled")},59989:e=>{e.exports=require("@mui/system/createTheme")},16670:e=>{e.exports=require("@mui/system/styleFunctionSx")},88698:e=>{e.exports=require("@mui/system/useThemeProps")},76831:e=>{e.exports=require("@mui/utils")},28578:e=>{e.exports=require("@mui/utils/capitalize")},14036:e=>{e.exports=require("@mui/utils/composeClasses")},31112:e=>{e.exports=require("@mui/utils/createChainedFunction")},21763:e=>{e.exports=require("@mui/utils/debounce")},7546:e=>{e.exports=require("@mui/utils/deepmerge")},5928:e=>{e.exports=require("@mui/utils/deprecatedPropType")},20985:e=>{e.exports=require("@mui/utils/formatMuiErrorMessage")},61119:e=>{e.exports=require("@mui/utils/generateUtilityClass")},81699:e=>{e.exports=require("@mui/utils/generateUtilityClasses")},29823:e=>{e.exports=require("@mui/utils/isMuiElement")},55402:e=>{e.exports=require("@mui/utils/ownerDocument")},46875:e=>{e.exports=require("@mui/utils/ownerWindow")},48080:e=>{e.exports=require("@mui/utils/requirePropFactory")},39597:e=>{e.exports=require("@mui/utils/setRef")},88190:e=>{e.exports=require("@mui/utils/unsupportedProp")},83889:e=>{e.exports=require("@mui/utils/useControlled")},21956:e=>{e.exports=require("@mui/utils/useEnhancedEffect")},4926:e=>{e.exports=require("@mui/utils/useEventCallback")},7376:e=>{e.exports=require("@mui/utils/useForkRef")},63310:e=>{e.exports=require("@mui/utils/useId")},10977:e=>{e.exports=require("@mui/utils/useIsFocusVisible")},74956:e=>{e.exports=require("clsx")},40361:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},27912:e=>{e.exports=require("next/head")},29825:e=>{e.exports=require("prop-types")},82015:e=>{e.exports=require("react")},22326:e=>{e.exports=require("react-dom")},8732:e=>{e.exports=require("react/jsx-runtime")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")}};var r=require("../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[9764,883,8268,7070,1223],()=>t(86482));module.exports=s})();
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-629
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-2415
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1016
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+13
-322
@@ -1,326 +1,17 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 372;
|
||||
exports.ids = [372,8105,133,4135];
|
||||
exports.modules = {
|
||||
"use strict";(()=>{var e={};e.id=6930,e.ids=[636,6930],e.modules={26364:(e,t,r)=>{r.a(e,async(e,i)=>{try{r.r(t),r.d(t,{config:()=>g,default:()=>m,getServerSideProps:()=>x,getStaticPaths:()=>c,getStaticProps:()=>d,reportWebVitals:()=>h,routeModule:()=>S,unstable_getServerProps:()=>I,unstable_getServerSideProps:()=>f,unstable_getStaticParams:()=>y,unstable_getStaticPaths:()=>T,unstable_getStaticProps:()=>q});var s=r(63865),a=r(9455),u=r(30671),o=r(49407),l=r(68268),n=r(98842),p=e([n]);n=(p.then?(await p)():p)[0];let m=(0,u.M)(n,"default"),d=(0,u.M)(n,"getStaticProps"),c=(0,u.M)(n,"getStaticPaths"),x=(0,u.M)(n,"getServerSideProps"),g=(0,u.M)(n,"config"),h=(0,u.M)(n,"reportWebVitals"),q=(0,u.M)(n,"unstable_getStaticProps"),T=(0,u.M)(n,"unstable_getStaticPaths"),y=(0,u.M)(n,"unstable_getStaticParams"),I=(0,u.M)(n,"unstable_getServerProps"),f=(0,u.M)(n,"unstable_getServerSideProps"),S=new s.PagesRouteModule({definition:{kind:a.A.PAGES,page:"/admin/[user_id]/databases/[single]/tables/[single_table]/entries",pathname:"/admin/[user_id]/databases/[single]/tables/[single_table]/entries",bundlePath:"",filename:""},components:{App:l.default,Document:o.default},userland:n});i()}catch(e){i(e)}})},63014:(e,t,r)=>{r.d(t,{A:()=>s});var i=r(64030);function s({paradigm:e,table:t,query:r,user:s}){let a="";try{let s=`DSQL_${r.single}_${r.single_table}`.toUpperCase(),o=t.fields;function u(e){return e?.match(/int/i)?"number":(e?.match(/text|varchar|timestamp/i),"string")}let l=[],n=[];l.push(`type ${s} = {`),n.push(`/**
|
||||
* @typedef {object} ${s}`),o.forEach(e=>{let t=e.nullValue?"?":e.fieldName?.match(i.A)?"?":"";l.push(` ${e.fieldName}${t}: ${u(e.dataType||"")};`),n.push(` * @property {${u(e.dataType||"")}${t}} ${e.fieldName}`)}),l.push("}"),n.push(" */"),e?.match(/javascript/i)&&(a=n.join("\n")),e?.match(/typescript/i)&&(a=l.join("\n"))}catch(e){console.log(e.message),a=null}return a}},39897:(e,t,r)=>{r.d(t,{A:()=>s});var i=r(8732);function s({collapse:e,setCollapse:t}){return(0,i.jsxs)("div",{className:"collapse-block"+(e?" -mt-16 -mb-6 pt-10":" mt-0 mb-0 p-0"),onClick:r=>{e?t(!1):t(!0)},children:[(0,i.jsx)("span",{children:e?"Expand":"Collapse"}),(0,i.jsx)("img",{src:"/images/down-arrow-dark.svg",alt:"Down Arrow",width:16,className:"dark:hidden opacity-30 "+(e?"":"rotate-180")}),(0,i.jsx)("img",{src:"/images/down-arrow-white.svg",alt:"Down Arrow",width:16,className:"opacity-30 hidden dark:flex "+(e?"":"rotate-180")})]})}r(82015)},2817:(e,t,r)=>{r.d(t,{A:()=>s});var i=r(8732);function s({children:e,open:t,setOpen:r,onClose:s,maxWidth:a}){return(0,i.jsx)(i.Fragment,{})}r(82015),r(1976),r(58150)},68942:(e,t,r)=>{let i=r(29021),{IncomingMessage:s}=r(81630);e.exports=async function({user:e,message:t,component:r,noMail:s,req:a}){let u=new Date,o=(()=>{if(!a)return null;try{let e=a.headers["x-forwarded-for"],t=a.headers["x-real-ip"],r=a.headers["cf-connecting-ip"],i=Array.isArray(e)?e[0]:e?.split(",")[0],s=r||i||t||a.socket.remoteAddress;if(!s)return null;return String(s)}catch(e){return null}})();try{let s=`🚀 SERVER ERROR ===========================
|
||||
Error Message: ${t}
|
||||
Component: ${r}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(s+=`
|
||||
User Id: ${e?.id}
|
||||
User Name: ${e?.first_name} ${e?.last_name}
|
||||
User Email: ${e?.email}`),a?.url&&(s+=`
|
||||
URL: ${a.url}`),a?.body&&(s+=`
|
||||
Request Body: ${JSON.stringify(a.body,null,4)}`),o&&(s+=`
|
||||
IP: ${o}`),s+=`
|
||||
Date: ${u.toDateString()}
|
||||
========================================`,i.existsSync("./.tmp/error.log")||i.writeFileSync("./.tmp/error.log","","utf-8");let l=i.readFileSync("./.tmp/error.log","utf-8");i.writeFileSync("./.tmp/error.log",s),i.appendFileSync("./.tmp/error.log",`
|
||||
|
||||
/***/ 2587:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@monaco-editor/react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4003:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/AdminPanelSettingsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3257:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/ArrowBackIosRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1522:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/BackupTableTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 69:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudOffTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4008:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudQueueRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3849:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CodeRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7306:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CollectionsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5050:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CopyAllTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 386:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CottageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7039:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DeleteForeverTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 930:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DifferenceTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8193:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DriveFileRenameOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8979:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DynamicFormTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LanguageOutlined");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 9438:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LibraryAddTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 399:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LockOutlined");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2814:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LockTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5557:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/MenuBookTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5453:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/MoreHoriz");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 9806:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/PeopleOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 36:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/RefreshRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1799:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SchemaTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6500:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SendToMobileTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4063:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/StorageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7428:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SummarizeTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3851:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/TableViewTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 507:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/TipsAndUpdatesTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5692:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/material");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6451:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@tinymce/tinymce-react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2329:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("html-prettify");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2423:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lucide-react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 968:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/head");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6689:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7849:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react-dom/client");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7076:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react-tiny-popover");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 997:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react/jsx-runtime");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../../../../../../webpack-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [4017,8313,5264,6729,5449,913,4480,370,424,4858,5472,1781,9360,4941,7023,7901,4114,8682,2317,1206,5116,8345,4986,9594,8264,9471,464,8515,4559,9035], () => (__webpack_exec__(7722)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
${l}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},64030:(e,t,r)=>{r.d(t,{A:()=>i});let i=/^id$|^uuid$|^date_created$|^date_created_code$|^date_created_timestamp$|^date_updated$|^date_updated_code$|^date_updated_timestamp$/},51859:e=>{e.exports=require("@monaco-editor/react")},66099:e=>{e.exports=require("@mui/system")},37616:e=>{e.exports=require("@mui/system/DefaultPropsProvider")},24509:e=>{e.exports=require("@mui/system/InitColorSchemeScript")},84781:e=>{e.exports=require("@mui/system/colorManipulator")},18215:e=>{e.exports=require("@mui/system/createStyled")},59989:e=>{e.exports=require("@mui/system/createTheme")},16670:e=>{e.exports=require("@mui/system/styleFunctionSx")},88698:e=>{e.exports=require("@mui/system/useThemeProps")},76831:e=>{e.exports=require("@mui/utils")},28578:e=>{e.exports=require("@mui/utils/capitalize")},14036:e=>{e.exports=require("@mui/utils/composeClasses")},31112:e=>{e.exports=require("@mui/utils/createChainedFunction")},21763:e=>{e.exports=require("@mui/utils/debounce")},7546:e=>{e.exports=require("@mui/utils/deepmerge")},5928:e=>{e.exports=require("@mui/utils/deprecatedPropType")},20985:e=>{e.exports=require("@mui/utils/formatMuiErrorMessage")},61119:e=>{e.exports=require("@mui/utils/generateUtilityClass")},81699:e=>{e.exports=require("@mui/utils/generateUtilityClasses")},29823:e=>{e.exports=require("@mui/utils/isMuiElement")},55402:e=>{e.exports=require("@mui/utils/ownerDocument")},46875:e=>{e.exports=require("@mui/utils/ownerWindow")},48080:e=>{e.exports=require("@mui/utils/requirePropFactory")},39597:e=>{e.exports=require("@mui/utils/setRef")},88190:e=>{e.exports=require("@mui/utils/unsupportedProp")},83889:e=>{e.exports=require("@mui/utils/useControlled")},21956:e=>{e.exports=require("@mui/utils/useEnhancedEffect")},4926:e=>{e.exports=require("@mui/utils/useEventCallback")},7376:e=>{e.exports=require("@mui/utils/useForkRef")},63310:e=>{e.exports=require("@mui/utils/useId")},10977:e=>{e.exports=require("@mui/utils/useIsFocusVisible")},40373:e=>{e.exports=require("@tinymce/tinymce-react")},74956:e=>{e.exports=require("clsx")},90317:e=>{e.exports=require("html-prettify")},27825:e=>{e.exports=require("lodash")},40361:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},27912:e=>{e.exports=require("next/head")},29825:e=>{e.exports=require("prop-types")},82015:e=>{e.exports=require("react")},22326:e=>{e.exports=require("react-dom")},1976:e=>{e.exports=require("react-dom/client")},41836:e=>{e.exports=require("react-tiny-popover")},8732:e=>{e.exports=require("react/jsx-runtime")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},75979:e=>{e.exports=import("tailwind-merge")},43431:e=>{e.exports=JSON.parse('[{"title":"VARCHAR","name":"VARCHAR","value":"0-255","argument":true,"description":"Varchar is simply letters and numbers within the range 0 - 255","maxValue":255},{"title":"TINYINT","name":"TINYINT","value":"0-100","description":"TINYINT means Integers: 0 to 100","maxValue":127},{"title":"SMALLINT","name":"SMALLINT","value":"0-255","description":"SMALLINT means Integers: 0 to 240933","maxValue":32767},{"title":"MEDIUMINT","name":"MEDIUMINT","value":"0-255","description":"MEDIUMINT means Integers: 0 to 1245568545560","maxValue":8388607},{"title":"INT","name":"INT","value":"0-255","description":"INT means Integers: 0 to 12560","maxValue":2147483647},{"title":"BIGINT","name":"BIGINT","value":"0-255","description":"BIGINT means Integers: 0 to 1245569056767568545560","maxValue":2e+63},{"title":"TINYTEXT","name":"TINYTEXT","value":"0-255","description":"Text with 255 max characters","maxValue":127},{"title":"TEXT","name":"TEXT","value":"0-100","description":"MEDIUMTEXT is just text with max length 16,777,215","maxValue":127},{"title":"MEDIUMTEXT","name":"MEDIUMTEXT","value":"0-255","description":"MEDIUMTEXT is just text with max length 16,777,215","maxValue":127},{"title":"LONGTEXT","name":"LONGTEXT","value":"0-255","description":"LONGTEXT is just text with max length 4,294,967,295","maxValue":127},{"title":"UUID","name":"UUID","valueLiteral":"UUID()","description":"A Unique ID"}]')}};var t=require("../../../../../../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),i=t.X(0,[9764,883,7734,8268,7070,5134,3737,9621,9216,8842],()=>r(26364));module.exports=i})();
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+13
-934
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+12
-928
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+9
-1050
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1310
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-214
@@ -1,214 +1 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 8105;
|
||||
exports.ids = [8105];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 4003:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/AdminPanelSettingsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3257:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/ArrowBackIosRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 69:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudOffTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4008:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CloudQueueRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3849:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CodeRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7306:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CollectionsTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5050:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CopyAllTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 386:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/CottageTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8979:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/DynamicFormTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LanguageOutlined");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2814:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/LockTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5557:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/MenuBookTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 9806:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/PeopleOutlineTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 36:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/RefreshRounded");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1799:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SchemaTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6500:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SendToMobileTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7428:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/SummarizeTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 507:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("@mui/icons-material/TipsAndUpdatesTwoTone");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2423:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lucide-react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 968:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("next/head");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6689:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 997:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("react/jsx-runtime");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../../../../../webpack-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [4017,8313,5264,6729,5449,913,4480,370,424,4858,5472,1781,4941,7023,8682,1206,5116,6718,2733,7531], () => (__webpack_exec__(7531)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=2602,e.ids=[636,2602],e.modules={68126:(e,r,t)=>{t.a(e,async(e,s)=>{try{t.r(r),t.d(r,{config:()=>d,default:()=>n,getServerSideProps:()=>c,getStaticPaths:()=>q,getStaticProps:()=>x,reportWebVitals:()=>g,routeModule:()=>M,unstable_getServerProps:()=>y,unstable_getServerSideProps:()=>f,unstable_getStaticParams:()=>b,unstable_getStaticPaths:()=>S,unstable_getStaticProps:()=>P});var i=t(63865),u=t(9455),o=t(30671),a=t(49407),p=t(68268),l=t(87730),m=e([l]);l=(m.then?(await m)():m)[0];let n=(0,o.M)(l,"default"),x=(0,o.M)(l,"getStaticProps"),q=(0,o.M)(l,"getStaticPaths"),c=(0,o.M)(l,"getServerSideProps"),d=(0,o.M)(l,"config"),g=(0,o.M)(l,"reportWebVitals"),P=(0,o.M)(l,"unstable_getStaticProps"),S=(0,o.M)(l,"unstable_getStaticPaths"),b=(0,o.M)(l,"unstable_getStaticParams"),y=(0,o.M)(l,"unstable_getServerProps"),f=(0,o.M)(l,"unstable_getServerSideProps"),M=new i.PagesRouteModule({definition:{kind:u.A.PAGES,page:"/admin/[user_id]/databases/[single]/users/[user]",pathname:"/admin/[user_id]/databases/[single]/users/[user]",bundlePath:"",filename:""},components:{App:p.default,Document:a.default},userland:l});s()}catch(e){s(e)}})},66099:e=>{e.exports=require("@mui/system")},37616:e=>{e.exports=require("@mui/system/DefaultPropsProvider")},24509:e=>{e.exports=require("@mui/system/InitColorSchemeScript")},84781:e=>{e.exports=require("@mui/system/colorManipulator")},18215:e=>{e.exports=require("@mui/system/createStyled")},59989:e=>{e.exports=require("@mui/system/createTheme")},16670:e=>{e.exports=require("@mui/system/styleFunctionSx")},88698:e=>{e.exports=require("@mui/system/useThemeProps")},76831:e=>{e.exports=require("@mui/utils")},28578:e=>{e.exports=require("@mui/utils/capitalize")},14036:e=>{e.exports=require("@mui/utils/composeClasses")},31112:e=>{e.exports=require("@mui/utils/createChainedFunction")},21763:e=>{e.exports=require("@mui/utils/debounce")},7546:e=>{e.exports=require("@mui/utils/deepmerge")},5928:e=>{e.exports=require("@mui/utils/deprecatedPropType")},20985:e=>{e.exports=require("@mui/utils/formatMuiErrorMessage")},61119:e=>{e.exports=require("@mui/utils/generateUtilityClass")},81699:e=>{e.exports=require("@mui/utils/generateUtilityClasses")},29823:e=>{e.exports=require("@mui/utils/isMuiElement")},55402:e=>{e.exports=require("@mui/utils/ownerDocument")},46875:e=>{e.exports=require("@mui/utils/ownerWindow")},48080:e=>{e.exports=require("@mui/utils/requirePropFactory")},39597:e=>{e.exports=require("@mui/utils/setRef")},88190:e=>{e.exports=require("@mui/utils/unsupportedProp")},83889:e=>{e.exports=require("@mui/utils/useControlled")},21956:e=>{e.exports=require("@mui/utils/useEnhancedEffect")},4926:e=>{e.exports=require("@mui/utils/useEventCallback")},7376:e=>{e.exports=require("@mui/utils/useForkRef")},63310:e=>{e.exports=require("@mui/utils/useId")},10977:e=>{e.exports=require("@mui/utils/useIsFocusVisible")},74956:e=>{e.exports=require("clsx")},40361:e=>{e.exports=require("next/dist/compiled/next-server/pages.runtime.prod.js")},27912:e=>{e.exports=require("next/head")},29825:e=>{e.exports=require("prop-types")},82015:e=>{e.exports=require("react")},22326:e=>{e.exports=require("react-dom")},8732:e=>{e.exports=require("react/jsx-runtime")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},75979:e=>{e.exports=import("tailwind-merge")}};var r=require("../../../../../../webpack-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[9764,883,8268,7070,5134,2332,8370],()=>t(68126));module.exports=s})();
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+1
-502
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-735
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+9
-635
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-640
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
@@ -1,222 +1,16 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 9361;
|
||||
exports.ids = [9361];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6109:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("sanitize-html");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6765:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2163);
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6517);
|
||||
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_2__);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2224);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3__);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(5338);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_4__);
|
||||
// @ts-check
|
||||
const fs = __webpack_require__(7147);
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
"use strict";(()=>{var e={};e.id=8935,e.ids=[8935],e.modules={27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},72583:e=>{e.exports=require("sanitize-html")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},27118:(e,t,r)=>{r.r(t),r.d(t,{config:()=>S,default:()=>v,routeModule:()=>h});var i={};r.r(i),r.d(i,{default:()=>E});var a=r(89947),s=r(2706),n=r(96762),l=r(6420),u=r.n(l),o=r(77538),d=r.n(o),c=r(27825),_=r.n(c),m=r(51348),p=r.n(m),f=r(47670),g=r.n(f);async function E(e,t){if("POST"!==e.method)return t.json({user:null,msg:"Registration Failed!"});let r=await u()(e,t,!0);if(!r)return t.json({success:!1,msg:"Unauthorized"});let i=_().cloneDeep(e.body),a=i.inviting_user_id,s=i.invited_user_email,n=i.database_access,l=i.priviledge;try{let e=await p()("SELECT email FROM user_users WHERE user_id=? AND invited_user_id=? AND user_type='admin' AND email=?",[a,r.id,r.email]);if(e&&e[0])return t.json({success:!1});let i=await g()({dbFullName:"datasquirel",tableName:"user_users",data:{user_id:a,invited_user_id:r.id,database_access:n,user_priviledge:l,user_type:"admin",first_name:r.first_name,last_name:r.last_name,email:r.email,username:r.first_name,image:r.image,image_thumbnail:r.image_thumbnail}});await p()("UPDATE invitations SET invitation_status='Accepted' WHERE inviting_user_id=? AND invited_user_email=?",[a,s]);let u=await p()("SELECT db_tables_data FROM invitations WHERE inviting_user_id=?",[a]);if(await p()(`DELETE FROM delegated_user_tables WHERE root_user_id='${a}' AND delegated_user_id='${r.id}'`),u&&u[0]){let e=u[0].db_tables_data.split("|");for(let t=0;t<e.length;t++){let[i,s]=e[t].split("-");await g()({dbFullName:"datasquirel",tableName:"delegated_user_tables",data:{delegated_user_id:r.id,root_user_id:a,database:i,table:s,priviledge:l}})}}t.json({success:!!i?.insertId})}catch(i){d()({component:"/api/acceptUserInvitation/catch-error",message:i.message,user:r,req:e}),t.json({success:!1})}}r(29021);let v=(0,n.M)(i,"default"),S=(0,n.M)(i,"config"),h=new a.PagesAPIRouteModule({definition:{kind:s.A.PAGES_API,page:"/api/acceptUserInvitation",pathname:"/api/acceptUserInvitation",bundlePath:"",filename:""},userland:i})},77538:(e,t,r)=>{let i=r(29021),{IncomingMessage:a}=r(81630);e.exports=async function({user:e,message:t,component:r,noMail:a,req:s}){let n=new Date,l=(()=>{if(!s)return null;try{let e=s.headers["x-forwarded-for"],t=s.headers["x-real-ip"],r=s.headers["cf-connecting-ip"],i=Array.isArray(e)?e[0]:e?.split(",")[0],a=r||i||t||s.socket.remoteAddress;if(!a)return null;return String(a)}catch(e){return null}})();try{let a=`🚀 SERVER ERROR ===========================
|
||||
Error Message: ${t}
|
||||
Component: ${r}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(a+=`
|
||||
User Id: ${e?.id}
|
||||
User Name: ${e?.first_name} ${e?.last_name}
|
||||
User Email: ${e?.email}`),s?.url&&(a+=`
|
||||
URL: ${s.url}`),s?.body&&(a+=`
|
||||
Request Body: ${JSON.stringify(s.body,null,4)}`),l&&(a+=`
|
||||
IP: ${l}`),a+=`
|
||||
Date: ${n.toDateString()}
|
||||
========================================`,i.existsSync("./.tmp/error.log")||i.writeFileSync("./.tmp/error.log","","utf-8");let u=i.readFileSync("./.tmp/error.log","utf-8");i.writeFileSync("./.tmp/error.log",a),i.appendFileSync("./.tmp/error.log",`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
user: null,
|
||||
msg: "Registration Failed!"
|
||||
});
|
||||
/**
|
||||
* User Auth
|
||||
*
|
||||
* @description User Auth
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_0___default()(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* Validate Form
|
||||
*
|
||||
* @description Check if request body is valid
|
||||
*/ // const { id, inviting_user_id, invited_user_email, invitation_status, database_access, priviledge } = req.body;
|
||||
const sanitizedReqBody = lodash__WEBPACK_IMPORTED_MODULE_2___default().cloneDeep(req.body);
|
||||
const inviting_user_id = sanitizedReqBody.inviting_user_id;
|
||||
const invited_user_email = sanitizedReqBody.invited_user_email;
|
||||
const database_access = sanitizedReqBody.database_access;
|
||||
const priviledge = sanitizedReqBody.priviledge;
|
||||
/**
|
||||
* Validate Form
|
||||
*
|
||||
* @description Check if request body is valid
|
||||
*/ try {
|
||||
const existingUserUser = await _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3___default()(`SELECT email FROM user_users WHERE user_id=? AND invited_user_id=? AND user_type='admin' AND email=?`, [
|
||||
inviting_user_id,
|
||||
user.id,
|
||||
user.email
|
||||
]);
|
||||
if (existingUserUser && existingUserUser[0]) {
|
||||
return res.json({
|
||||
success: false
|
||||
});
|
||||
}
|
||||
/** @type {any} */ const newUserUser = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_4___default()({
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "user_users",
|
||||
data: {
|
||||
user_id: inviting_user_id,
|
||||
invited_user_id: user.id,
|
||||
database_access: database_access,
|
||||
user_priviledge: priviledge,
|
||||
user_type: "admin",
|
||||
first_name: user.first_name,
|
||||
last_name: user.last_name,
|
||||
email: user.email,
|
||||
username: user.first_name,
|
||||
image: user.image,
|
||||
image_thumbnail: user.image_thumbnail
|
||||
}
|
||||
});
|
||||
const inviteAccepted = await _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3___default()(`UPDATE invitations SET invitation_status='Accepted' WHERE inviting_user_id=? AND invited_user_email=?`, [
|
||||
inviting_user_id,
|
||||
invited_user_email
|
||||
]);
|
||||
const dbTableData = await _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3___default()(`SELECT db_tables_data FROM invitations WHERE inviting_user_id=?`, [
|
||||
inviting_user_id
|
||||
]);
|
||||
// const dbTableData = await DB_HANDLER(`SELECT db_tables_data FROM invitations WHERE inviting_user_id='${inviting_user_id}' AND invited_user_email='${invited_user_email}'`);
|
||||
const clearEntries = await _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3___default()(`DELETE FROM delegated_user_tables WHERE root_user_id='${inviting_user_id}' AND delegated_user_id='${user.id}'`);
|
||||
if (dbTableData && dbTableData[0]) {
|
||||
const dbTableEntries = dbTableData[0].db_tables_data.split("|");
|
||||
for(let i = 0; i < dbTableEntries.length; i++){
|
||||
const dbTableEntry = dbTableEntries[i];
|
||||
const dbTableEntryArray = dbTableEntry.split("-");
|
||||
const [db_slug, table_slug] = dbTableEntryArray;
|
||||
const newEntry = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_4___default()({
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "delegated_user_tables",
|
||||
data: {
|
||||
delegated_user_id: user.id,
|
||||
root_user_id: inviting_user_id,
|
||||
database: db_slug,
|
||||
table: table_slug,
|
||||
priviledge: priviledge
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
res.json({
|
||||
success: newUserUser?.insertId ? true : false
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
} catch (/** @type {any} */ error) {
|
||||
_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1___default()({
|
||||
component: "/api/acceptUserInvitation/catch-error",
|
||||
message: error.message,
|
||||
user: user
|
||||
});
|
||||
res.json({
|
||||
success: false
|
||||
});
|
||||
}
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
}
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,2163,6825,3017,3403,7547,5886,5338], () => (__webpack_exec__(6765)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
${u}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},6420:(e,t,r)=>{r(81630);let i=r(51348),a=r(72907),s=r(29021);async function n(e,t,r,n){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let l=a(e.cookies.datasquirelAuthKey);if(!l)return null;let u=JSON.parse(l);if(!u.csrf_k||r&&!e.headers["x-csrf-auth"]?.match(RegExp(`${u.csrf_k}`)))return null;let o=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!o)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(r&&!s.existsSync(`${o}/${u.csrf_k}`))return null;if(0==u.verification_status&&!r){let e=await i(`SELECT verification_status FROM users WHERE id='${u.id}'`);e&&e[0]&&1==e[0].verification_status&&t.setHeader("Set-Cookie",["user_refresh=1"])}return u?.date&&Date.now()-u.date>6048e5?null:u}e.exports=n},72907:(e,t,r)=>{let{scryptSync:i,createDecipheriv:a}=r(55511),{Buffer:s}=r(79428);e.exports=e=>{let t=a("aes-192-cbc",i(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),s.alloc(16,0));try{let r=t.update(e,"hex","utf8");return r+=t.final("utf8")}catch(e){return null}}}};var t=require("../../webpack-api-runtime.js");t.C(e);var r=e=>t(t.s=e),i=t.X(0,[4050],()=>r(27118));module.exports=i})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,144 +1,16 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 3488;
|
||||
exports.ids = [3488];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 9538:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("datasquirel");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6109:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("sanitize-html");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3278:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _functions_backend_addAdminUserOnLogin__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(613);
|
||||
/* harmony import */ var _functions_backend_addAdminUserOnLogin__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_addAdminUserOnLogin__WEBPACK_IMPORTED_MODULE_1__);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_0___default()(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ console.log("Invitation Received by current logged in user, Loggin in VIA API ...");
|
||||
const acceptInvitation = await _functions_backend_addAdminUserOnLogin__WEBPACK_IMPORTED_MODULE_1___default()({
|
||||
// @ts-ignore
|
||||
query: req.body.query,
|
||||
user
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
res.json({
|
||||
success: true,
|
||||
result: acceptInvitation
|
||||
});
|
||||
}
|
||||
"use strict";(()=>{var e={};e.id=9785,e.ids=[9785],e.modules={28187:e=>{e.exports=require("@moduletrace/datasquirel")},27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},72583:e=>{e.exports=require("sanitize-html")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},81764:(e,r,t)=>{t.r(r),t.d(r,{config:()=>m,default:()=>c,routeModule:()=>p});var i={};t.r(i),t.d(i,{default:()=>_});var a=t(89947),s=t(2706),n=t(96762),l=t(6420),u=t.n(l),d=t(98968),o=t.n(d);async function _(e,r){if("POST"!==e.method)return r.json({msg:"Failed!"});let t=await u()(e,r,!0);if(!t)return r.json({success:!1,msg:"Unauthorized"});console.log("Invitation Received by current logged in user, Loggin in VIA API ...");let i=await o()({query:e.body.query,user:t});r.json({success:!0,result:i})}let c=(0,n.M)(i,"default"),m=(0,n.M)(i,"config"),p=new a.PagesAPIRouteModule({definition:{kind:s.A.PAGES_API,page:"/api/addAdminUserUser",pathname:"/api/addAdminUserUser",bundlePath:"",filename:""},userland:i})},98968:(e,r,t)=>{t(29021),t(28187);let i=t(77538),a=t(51348),s=t(47670);e.exports=async function({query:e,user:r}){try{let{invite:t,database_access:i,priviledge:n,email:l}=e,u=await a("SELECT date_created_code FROM invitations WHERE inviting_user_id=? AND invited_user_email=?",[t,l]);if(!u||!u[0])throw Error("No Invitation Found");let d=await a("SELECT first_name,last_name,email FROM users WHERE id=?",[t]);if(d?.[0]){let e=await a("SELECT email FROM user_users WHERE user_id=? AND invited_user_id=? AND user_type='admin' AND email=?",[t,r.id,l]);if(e?.[0])console.log("User already added");else{s({dbFullName:"datasquirel",tableName:"user_users",data:{user_id:t,invited_user_id:r.id,database_access:i,first_name:r.first_name,last_name:r.last_name,phone:r.phone,email:r.email,username:r.username,user_type:"admin",user_priviledge:n,image:r.image,image_thumbnail:r.image_thumbnail}});let e=await a("SELECT db_tables_data FROM invitations WHERE inviting_user_id=? AND invited_user_email=?",[t,l]);if(await a("DELETE FROM delegated_user_tables WHERE root_user_id=? AND delegated_user_id=?",[t,r.id]),e&&e[0]){let i=e[0].db_tables_data.split("|");for(let e=0;e<i.length;e++){let[a,l]=i[e].split("-");await s({dbFullName:"datasquirel",tableName:"delegated_user_tables",data:{delegated_user_id:r.id,root_user_id:t,database:a,table:l,priviledge:n}})}}}await a("UPDATE invitations SET invitation_status='Accepted' WHERE inviting_user_id=? AND invited_user_email=?",[t,l])}}catch(e){i({component:"addAdminUserOnLogin",message:e.message,user:r})}}},77538:(e,r,t)=>{let i=t(29021),{IncomingMessage:a}=t(81630);e.exports=async function({user:e,message:r,component:t,noMail:a,req:s}){let n=new Date,l=(()=>{if(!s)return null;try{let e=s.headers["x-forwarded-for"],r=s.headers["x-real-ip"],t=s.headers["cf-connecting-ip"],i=Array.isArray(e)?e[0]:e?.split(",")[0],a=t||i||r||s.socket.remoteAddress;if(!a)return null;return String(a)}catch(e){return null}})();try{let a=`🚀 SERVER ERROR ===========================
|
||||
Error Message: ${r}
|
||||
Component: ${t}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(a+=`
|
||||
User Id: ${e?.id}
|
||||
User Name: ${e?.first_name} ${e?.last_name}
|
||||
User Email: ${e?.email}`),s?.url&&(a+=`
|
||||
URL: ${s.url}`),s?.body&&(a+=`
|
||||
Request Body: ${JSON.stringify(s.body,null,4)}`),l&&(a+=`
|
||||
IP: ${l}`),a+=`
|
||||
Date: ${n.toDateString()}
|
||||
========================================`,i.existsSync("./.tmp/error.log")||i.writeFileSync("./.tmp/error.log","","utf-8");let u=i.readFileSync("./.tmp/error.log","utf-8");i.writeFileSync("./.tmp/error.log",a),i.appendFileSync("./.tmp/error.log",`
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,2163,6825,3017,3403,7547,5886,5338,613], () => (__webpack_exec__(3278)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
${u}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},6420:(e,r,t)=>{t(81630);let i=t(51348),a=t(72907),s=t(29021);async function n(e,r,t,n){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let l=a(e.cookies.datasquirelAuthKey);if(!l)return null;let u=JSON.parse(l);if(!u.csrf_k||t&&!e.headers["x-csrf-auth"]?.match(RegExp(`${u.csrf_k}`)))return null;let d=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!d)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(t&&!s.existsSync(`${d}/${u.csrf_k}`))return null;if(0==u.verification_status&&!t){let e=await i(`SELECT verification_status FROM users WHERE id='${u.id}'`);e&&e[0]&&1==e[0].verification_status&&r.setHeader("Set-Cookie",["user_refresh=1"])}return u?.date&&Date.now()-u.date>6048e5?null:u}e.exports=n},72907:(e,r,t)=>{let{scryptSync:i,createDecipheriv:a}=t(55511),{Buffer:s}=t(79428);e.exports=e=>{let r=a("aes-192-cbc",i(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),s.alloc(16,0));try{let t=r.update(e,"hex","utf8");return t+=r.final("utf8")}catch(e){return null}}}};var r=require("../../webpack-api-runtime.js");r.C(e);var t=e=>r(r.s=e),i=r.X(0,[4050],()=>t(81764));module.exports=i})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,239 +1,16 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 1600;
|
||||
exports.ids = [1600];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 3785:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("generate-password");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6109:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("sanitize-html");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2081:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("child_process");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5241:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var _package_shared_functions_backend_encrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7547);
|
||||
/* harmony import */ var _package_shared_functions_backend_encrypt__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_encrypt__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2163);
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2__);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5338);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3__);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/ const fs = __webpack_require__(7147);
|
||||
const path = __webpack_require__(1017);
|
||||
const { execSync } = __webpack_require__(2081);
|
||||
const generator = __webpack_require__(3785);
|
||||
"use strict";(()=>{var e={};e.id=1385,e.ids=[1385],e.modules={47795:e=>{e.exports=require("generate-password")},27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},72583:e=>{e.exports=require("sanitize-html")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},79646:e=>{e.exports=require("child_process")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},87256:(e,r,t)=>{t.r(r),t.d(r,{config:()=>x,default:()=>h,routeModule:()=>A});var s={};t.r(s),t.d(s,{default:()=>g});var a=t(89947),i=t(2706),n=t(96762),o=t(82703),l=t.n(o),u=t(77538),c=t.n(u),d=t(6420),p=t.n(d),f=t(47670),m=t.n(f);let y=t(29021);t(33873);let{execSync:S}=t(79646),_=t(47795);async function g(e,r){if("POST"!==e.method)return r.json({msg:"Failed!"});let t=await p()(e,r,!0);if(!t)return r.json({success:!1,msg:"Unauthorized"});let{api_key_name:s,api_key_slug:a,api_key_scope:i,target_database:n,target_table:o}=e.body;if(!s?.match(/./)||!a?.match(/./)||!i?.match(/./))return r.json({success:!1,msg:"Wrong Input"});try{let e=process.env.DSQL_API_KEYS_PATH;if(!e)throw Error("process.env.DSQL_API_KEYS_PATH variable not found");y.existsSync(e)||y.mkdirSync(e,{recursive:!0});let u=_.generate({length:24,numbers:!0,uppercase:!0,lowercase:!0,symbols:"-"})+"-"+Date.now(),c={user_id:t.id,date_code:Date.now(),sign:u,target_database:n,target_table:o};"fullAccess"==i&&(c={...c,full_access:!0});let d=l()(JSON.stringify(c));if(!d)return r.json({success:!1,msg:"Couldn't encrypt API key"});let p=l()(d),f={dbFullName:"datasquirel",tableName:"api_keys",data:{user_id:t.id,name:s,slug:a,key:p,scope:i}};if(u&&(f.data.csrf=u),!(await m()(f)).insertId)throw Error("Api Key Couldn't be added");y.writeFileSync(`${e}/${u}`,JSON.stringify(c),"utf-8"),r.json({success:!0})}catch(e){c()({component:"/api/addApiKey/catch-error",message:e.message,user:t}),r.json({success:!1,msg:"Database Files could not be written!"})}}let h=(0,n.M)(s,"default"),x=(0,n.M)(s,"config"),A=new a.PagesAPIRouteModule({definition:{kind:i.A.PAGES_API,page:"/api/addApiKey",pathname:"/api/addApiKey",bundlePath:"",filename:""},userland:s})},77538:(e,r,t)=>{let s=t(29021),{IncomingMessage:a}=t(81630);e.exports=async function({user:e,message:r,component:t,noMail:a,req:i}){let n=new Date,o=(()=>{if(!i)return null;try{let e=i.headers["x-forwarded-for"],r=i.headers["x-real-ip"],t=i.headers["cf-connecting-ip"],s=Array.isArray(e)?e[0]:e?.split(",")[0],a=t||s||r||i.socket.remoteAddress;if(!a)return null;return String(a)}catch(e){return null}})();try{let a=`🚀 SERVER ERROR ===========================
|
||||
Error Message: ${r}
|
||||
Component: ${t}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(a+=`
|
||||
User Id: ${e?.id}
|
||||
User Name: ${e?.first_name} ${e?.last_name}
|
||||
User Email: ${e?.email}`),i?.url&&(a+=`
|
||||
URL: ${i.url}`),i?.body&&(a+=`
|
||||
Request Body: ${JSON.stringify(i.body,null,4)}`),o&&(a+=`
|
||||
IP: ${o}`),a+=`
|
||||
Date: ${n.toDateString()}
|
||||
========================================`,s.existsSync("./.tmp/error.log")||s.writeFileSync("./.tmp/error.log","","utf-8");let l=s.readFileSync("./.tmp/error.log","utf-8");s.writeFileSync("./.tmp/error.log",a),s.appendFileSync("./.tmp/error.log",`
|
||||
|
||||
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2___default()(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ /** @type {import("@/package-shared/types").AddApiKeyRequestBody} */ const reqBody = req.body;
|
||||
const { api_key_name , api_key_slug , api_key_scope , target_database , target_table , } = reqBody;
|
||||
/**
|
||||
* Input Validation
|
||||
*
|
||||
* @description Input Validation
|
||||
*/ if (!api_key_name?.match(/./) || !api_key_slug?.match(/./) || !api_key_scope?.match(/./)) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Wrong Input"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* Send Response
|
||||
*
|
||||
* @description Send a boolean response
|
||||
*/ try {
|
||||
const allowedKeysPath = process.env.DSQL_API_KEYS_PATH;
|
||||
if (!allowedKeysPath) throw new Error("process.env.DSQL_API_KEYS_PATH variable not found");
|
||||
if (!fs.existsSync(allowedKeysPath)) {
|
||||
fs.mkdirSync(allowedKeysPath, {
|
||||
recursive: true
|
||||
});
|
||||
}
|
||||
let sign = generator.generate({
|
||||
length: 24,
|
||||
numbers: true,
|
||||
uppercase: true,
|
||||
lowercase: true,
|
||||
symbols: "-"
|
||||
}) + "-" + Date.now();
|
||||
/** @type {import("@/package-shared/types").ApiKeyObject} */ let payload = {
|
||||
user_id: user.id,
|
||||
date_code: Date.now(),
|
||||
sign,
|
||||
target_database,
|
||||
target_table
|
||||
};
|
||||
if (api_key_scope == "fullAccess") {
|
||||
const extraPayload = {
|
||||
full_access: true
|
||||
};
|
||||
payload = {
|
||||
...payload,
|
||||
...extraPayload
|
||||
};
|
||||
}
|
||||
const apiKey = _package_shared_functions_backend_encrypt__WEBPACK_IMPORTED_MODULE_0___default()(JSON.stringify(payload));
|
||||
if (!apiKey) return res.json({
|
||||
success: false,
|
||||
msg: "Couldn't encrypt API key"
|
||||
});
|
||||
const encryptedApiKey = _package_shared_functions_backend_encrypt__WEBPACK_IMPORTED_MODULE_0___default()(apiKey);
|
||||
/**
|
||||
* Create new user folder and file
|
||||
*
|
||||
* @description Create new user folder and file
|
||||
*/ /** @type {any} */ let dbEntryObject = {
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "api_keys",
|
||||
data: {
|
||||
user_id: user.id,
|
||||
name: api_key_name,
|
||||
slug: api_key_slug,
|
||||
key: encryptedApiKey,
|
||||
scope: api_key_scope
|
||||
}
|
||||
};
|
||||
if (sign) dbEntryObject.data.csrf = sign;
|
||||
let newApiKey = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3___default()(dbEntryObject);
|
||||
if (!newApiKey.insertId) {
|
||||
throw new Error("Api Key Couldn't be added");
|
||||
}
|
||||
fs.writeFileSync(`${allowedKeysPath}/${sign}`, JSON.stringify(payload), "utf-8");
|
||||
res.json({
|
||||
success: true
|
||||
});
|
||||
////////////////////////////////////////
|
||||
} catch (/** @type {any} */ error) {
|
||||
////////////////////////////////////////
|
||||
_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1___default()({
|
||||
component: "/api/addApiKey/catch-error",
|
||||
message: error.message,
|
||||
user: user
|
||||
});
|
||||
res.json({
|
||||
success: false,
|
||||
msg: "Database Files could not be written!"
|
||||
});
|
||||
////////////////////////////////////////
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,2163,6825,3017,3403,7547,5886,5338], () => (__webpack_exec__(5241)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
${l}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},6420:(e,r,t)=>{t(81630);let s=t(51348),a=t(72907),i=t(29021);async function n(e,r,t,n){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let o=a(e.cookies.datasquirelAuthKey);if(!o)return null;let l=JSON.parse(o);if(!l.csrf_k||t&&!e.headers["x-csrf-auth"]?.match(RegExp(`${l.csrf_k}`)))return null;let u=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!u)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(t&&!i.existsSync(`${u}/${l.csrf_k}`))return null;if(0==l.verification_status&&!t){let e=await s(`SELECT verification_status FROM users WHERE id='${l.id}'`);e&&e[0]&&1==e[0].verification_status&&r.setHeader("Set-Cookie",["user_refresh=1"])}return l?.date&&Date.now()-l.date>6048e5?null:l}e.exports=n},72907:(e,r,t)=>{let{scryptSync:s,createDecipheriv:a}=t(55511),{Buffer:i}=t(79428);e.exports=e=>{let r=a("aes-192-cbc",s(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),i.alloc(16,0));try{let t=r.update(e,"hex","utf8");return t+=r.final("utf8")}catch(e){return null}}}};var r=require("../../webpack-api-runtime.js");r.C(e);var t=e=>r(r.s=e),s=r.X(0,[4050],()=>t(87256));module.exports=s})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,171 +1 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 8066;
|
||||
exports.ids = [8066];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 2029:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("datasquirel/functions/hashPassword");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6109:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("sanitize-html");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5078:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var datasquirel_functions_hashPassword__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2029);
|
||||
/* harmony import */ var datasquirel_functions_hashPassword__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(datasquirel_functions_hashPassword__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5338);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_2__);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1___default()(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const sanitizedReqBody = req.body;
|
||||
const { payload , dbFullName , dbId } = sanitizedReqBody;
|
||||
/**
|
||||
* Input Validation
|
||||
*
|
||||
* @description Input Validation
|
||||
*/ const newUser = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_2___default()({
|
||||
dbContext: "Dsql User",
|
||||
paradigm: "Full Access",
|
||||
dbFullName: dbFullName,
|
||||
tableName: "users",
|
||||
data: (()=>{
|
||||
const reqBodyKeys = Object.keys(payload);
|
||||
/** @type {any} */ let finalData = {};
|
||||
reqBodyKeys.forEach((key)=>{
|
||||
if (key?.match(/paradigm|priviledge|database_access|databases|confirm/)) return;
|
||||
finalData[key] = payload[key];
|
||||
});
|
||||
finalData["password"] = datasquirel_functions_hashPassword__WEBPACK_IMPORTED_MODULE_0___default()({
|
||||
encryptionKey: process.env.DSQL_ENCRYPTION_PASSWORD || "",
|
||||
password: payload.password
|
||||
});
|
||||
finalData["email"] = payload.email_address;
|
||||
finalData["image"] = "/images/user-preset.png";
|
||||
finalData["image_thumbnail"] = "/images/user-preset-thumbnail.png";
|
||||
delete finalData["email_address"];
|
||||
return finalData;
|
||||
})()
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
res.json({
|
||||
success: newUser?.insertId ? true : false,
|
||||
msg: "New User User Added",
|
||||
newUserId: newUser.insertId
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,6825,3017,3403,7547,5886,5338], () => (__webpack_exec__(5078)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=9187,e.ids=[9187],e.modules={43499:e=>{e.exports=require("@moduletrace/datasquirel/functions/hashPassword")},27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},72583:e=>{e.exports=require("sanitize-html")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},49915:(e,r,s)=>{s.r(r),s.d(r,{config:()=>_,default:()=>m,routeModule:()=>h});var t={};s.r(t),s.d(t,{default:()=>f});var a=s(89947),i=s(2706),n=s(96762),u=s(43499),l=s.n(u),o=s(6420),d=s.n(o),c=s(47670),p=s.n(c);async function f(e,r){if("POST"!==e.method)return r.json({msg:"Failed!"});if(!await d()(e,r,!0))return r.json({success:!1,msg:"Unauthorized"});let{payload:s,dbFullName:t,dbId:a}=e.body,i=await p()({dbContext:"Dsql User",paradigm:"Full Access",dbFullName:t,tableName:"users",data:(()=>{let e=Object.keys(s),r={};return e.forEach(e=>{e?.match(/paradigm|priviledge|database_access|databases|confirm/)||(r[e]=s[e])}),r.password=l()({encryptionKey:process.env.DSQL_ENCRYPTION_PASSWORD||"",password:s.password}),r.email=s.email_address,r.image="/images/user-preset.png",r.image_thumbnail="/images/user-preset-thumbnail.png",delete r.email_address,r})()});r.json({success:!!i?.insertId,msg:"New User User Added",newUserId:i.insertId})}let m=(0,n.M)(t,"default"),_=(0,n.M)(t,"config"),h=new a.PagesAPIRouteModule({definition:{kind:i.A.PAGES_API,page:"/api/addDbUser",pathname:"/api/addDbUser",bundlePath:"",filename:""},userland:t})},6420:(e,r,s)=>{s(81630);let t=s(51348),a=s(72907),i=s(29021);async function n(e,r,s,n){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let u=a(e.cookies.datasquirelAuthKey);if(!u)return null;let l=JSON.parse(u);if(!l.csrf_k||s&&!e.headers["x-csrf-auth"]?.match(RegExp(`${l.csrf_k}`)))return null;let o=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!o)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(s&&!i.existsSync(`${o}/${l.csrf_k}`))return null;if(0==l.verification_status&&!s){let e=await t(`SELECT verification_status FROM users WHERE id='${l.id}'`);e&&e[0]&&1==e[0].verification_status&&r.setHeader("Set-Cookie",["user_refresh=1"])}return l?.date&&Date.now()-l.date>6048e5?null:l}e.exports=n},72907:(e,r,s)=>{let{scryptSync:t,createDecipheriv:a}=s(55511),{Buffer:i}=s(79428);e.exports=e=>{let r=a("aes-192-cbc",t(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),i.alloc(16,0));try{let s=r.update(e,"hex","utf8");return s+=r.final("utf8")}catch(e){return null}}}};var r=require("../../webpack-api-runtime.js");r.C(e);var s=e=>r(r.s=e),t=r.X(0,[4050],()=>s(49915));module.exports=t})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,312 +1 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 8336;
|
||||
exports.ids = [8336];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2250:
|
||||
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
|
||||
|
||||
// @ts-check
|
||||
|
||||
const _ = __webpack_require__(6517);
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
* Sanitize SQL function
|
||||
* ==============================================================================
|
||||
* @description this function takes in a text(or number) and returns a sanitized
|
||||
* text, usually without spaces
|
||||
*
|
||||
* @param {any} text - Text or number or object
|
||||
* @param {boolean} [spaces] - Allow spaces
|
||||
* @param {RegExp?} [regex] - Regular expression, removes any match
|
||||
*
|
||||
* @returns {any}
|
||||
*/ function sanitizeSql(text, spaces, regex) {
|
||||
/**
|
||||
* Initial Checks
|
||||
*
|
||||
* @description Initial Checks
|
||||
*/ if (!text) return "";
|
||||
if (typeof text == "number" || typeof text == "boolean") return text;
|
||||
if (typeof text == "string" && !text?.toString()?.match(/./)) return "";
|
||||
if (typeof text == "object" && !Array.isArray(text)) {
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
const newObject = sanitizeObjects(text, spaces);
|
||||
return newObject;
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
} else if (typeof text == "object" && Array.isArray(text)) {
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
const newArray = sanitizeArrays(text, spaces);
|
||||
return newArray;
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
}
|
||||
// if (text?.toString()?.match(/\'|\"/)) {
|
||||
// console.log("TEXT containing commas =>", text);
|
||||
// return "";
|
||||
// }
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* Declare variables
|
||||
*
|
||||
* @description Declare "results" variable
|
||||
*/ let finalText = text;
|
||||
if (regex) {
|
||||
finalText = text.toString().replace(regex, "");
|
||||
}
|
||||
if (spaces) {} else {
|
||||
finalText = text.toString().replace(/\n|\r|\n\r|\r\n/g, "").replace(/ /g, "");
|
||||
}
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
const escapeRegex = /select |insert |drop |delete |alter |create |exec | union | or | like | concat|LOAD_FILE|ASCII| COLLATE | HAVING | information_schema|DECLARE |\#|WAITFOR |delay |BENCHMARK |\/\*.*\*\//gi;
|
||||
finalText = finalText.replace(/(?<!\\)\'/g, "\\'").replace(/(?<!\\)\`/g, "\\`")// .replace(/(?<!\\)\"/g, '\\"')
|
||||
.replace(/\/\*\*\//g, "").replace(escapeRegex, "\\$&");
|
||||
// const injectionRegexp = /select .* from|\*|delete from|drop database|drop table|update .* set/i;
|
||||
// if (text?.toString()?.match(injectionRegexp)) {
|
||||
// console.log("ATTEMPTED INJECTION =>", text);
|
||||
// return "";
|
||||
// }
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
return finalText;
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
}
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
* Sanitize Objects Function
|
||||
* ==============================================================================
|
||||
* @description Sanitize objects in the form { key: "value" }
|
||||
*
|
||||
* @param {any} object - Database Full Name
|
||||
* @param {boolean} [spaces] - Allow spaces
|
||||
*
|
||||
* @returns {object}
|
||||
*/ function sanitizeObjects(object, spaces) {
|
||||
/** @type {any} */ let objectUpdated = {
|
||||
...object
|
||||
};
|
||||
const keys = Object.keys(objectUpdated);
|
||||
keys.forEach((key)=>{
|
||||
const value = objectUpdated[key];
|
||||
if (!value) {
|
||||
delete objectUpdated[key];
|
||||
return;
|
||||
}
|
||||
if (typeof value == "string" || typeof value == "number") {
|
||||
objectUpdated[key] = sanitizeSql(value, spaces);
|
||||
} else if (typeof value == "object" && !Array.isArray(value)) {
|
||||
objectUpdated[key] = sanitizeObjects(value, spaces);
|
||||
} else if (typeof value == "object" && Array.isArray(value)) {
|
||||
objectUpdated[key] = sanitizeArrays(value, spaces);
|
||||
}
|
||||
});
|
||||
return objectUpdated;
|
||||
}
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/**
|
||||
* Sanitize Objects Function
|
||||
* ==============================================================================
|
||||
* @description Sanitize objects in the form { key: "value" }
|
||||
*
|
||||
* @param {any[]} array - Database Full Name
|
||||
* @param {boolean} [spaces] - Allow spaces
|
||||
*
|
||||
* @returns {string[]|number[]|object[]}
|
||||
*/ function sanitizeArrays(array, spaces) {
|
||||
let arrayUpdated = _.cloneDeep(array);
|
||||
arrayUpdated.forEach((item, index)=>{
|
||||
const value = item;
|
||||
if (!value) {
|
||||
arrayUpdated.splice(index, 1);
|
||||
return;
|
||||
}
|
||||
if (typeof item == "string" || typeof item == "number") {
|
||||
arrayUpdated[index] = sanitizeSql(value, spaces);
|
||||
} else if (typeof item == "object" && !Array.isArray(value)) {
|
||||
arrayUpdated[index] = sanitizeObjects(value, spaces);
|
||||
} else if (typeof item == "object" && Array.isArray(value)) {
|
||||
arrayUpdated[index] = sanitizeArrays(item, spaces);
|
||||
}
|
||||
});
|
||||
return arrayUpdated;
|
||||
}
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
module.exports = sanitizeSql;
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4373:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(1017);
|
||||
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_sanitizeSql__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2250);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_sanitizeSql__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_db_sanitizeSql__WEBPACK_IMPORTED_MODULE_2__);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/ const fs = __webpack_require__(7147);
|
||||
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1___default()(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const sanitizedReqBody = _package_shared_functions_backend_db_sanitizeSql__WEBPACK_IMPORTED_MODULE_2___default()(req.body);
|
||||
const { name } = sanitizedReqBody;
|
||||
const STATIC_ROOT = process.env.DSQL_STATIC_SERVER_DIR;
|
||||
if (!STATIC_ROOT) {
|
||||
console.log("Static File ENV not Found!");
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "No Static File Path"
|
||||
});
|
||||
}
|
||||
const folderPath = path__WEBPACK_IMPORTED_MODULE_0___default().join(STATIC_ROOT, `images/user-images/user-${user.id}/`);
|
||||
const newFolderPath = folderPath + name;
|
||||
const doesFolderExist = fs.existsSync(newFolderPath);
|
||||
if (doesFolderExist) return res.json({
|
||||
success: false
|
||||
});
|
||||
fs.mkdirSync(newFolderPath);
|
||||
/**
|
||||
* Send Response
|
||||
*
|
||||
* @description Send a boolean response
|
||||
*/ res.json({
|
||||
success: true
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,6825], () => (__webpack_exec__(4373)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=6534,e.ids=[6534],e.modules={27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},96762:(e,r)=>{Object.defineProperty(r,"M",{enumerable:!0,get:function(){return function e(r,t){return t in r?r[t]:"then"in r&&"function"==typeof r.then?r.then(r=>e(r,t)):"function"==typeof r&&"default"===t?r:void 0}}})},68336:(e,r,t)=>{t.r(r),t.d(r,{config:()=>A,default:()=>y,routeModule:()=>_});var n={};t.r(n),t.d(n,{default:()=>S});var s=t(89947),o=t(2706),i=t(96762),a=t(33873),u=t.n(a),c=t(6420),l=t.n(c),f=t(80304),p=t.n(f);let d=t(29021);async function S(e,r){if("POST"!==e.method)return r.json({msg:"Failed!"});let t=await l()(e,r,!0);if(!t)return r.json({success:!1,msg:"Unauthorized"});let{name:n}=p()(e.body),s=process.env.DSQL_STATIC_SERVER_DIR;if(!s)return console.log("Static File ENV not Found!"),r.json({success:!1,msg:"No Static File Path"});let o=u().join(s,`images/user-images/user-${t.id}/`)+n;if(d.existsSync(o))return r.json({success:!1});d.mkdirSync(o),r.json({success:!0})}let y=(0,i.M)(n,"default"),A=(0,i.M)(n,"config"),_=new s.PagesAPIRouteModule({definition:{kind:o.A.PAGES_API,page:"/api/addNewMediaFolder",pathname:"/api/addNewMediaFolder",bundlePath:"",filename:""},userland:n})},6420:(e,r,t)=>{t(81630);let n=t(51348),s=t(72907),o=t(29021);async function i(e,r,t,i){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let a=s(e.cookies.datasquirelAuthKey);if(!a)return null;let u=JSON.parse(a);if(!u.csrf_k||t&&!e.headers["x-csrf-auth"]?.match(RegExp(`${u.csrf_k}`)))return null;let c=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!c)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(t&&!o.existsSync(`${c}/${u.csrf_k}`))return null;if(0==u.verification_status&&!t){let e=await n(`SELECT verification_status FROM users WHERE id='${u.id}'`);e&&e[0]&&1==e[0].verification_status&&r.setHeader("Set-Cookie",["user_refresh=1"])}return u?.date&&Date.now()-u.date>6048e5?null:u}e.exports=i},80304:(e,r,t)=>{let n=t(27825);function s(e,r,t){if(!e)return"";if("number"==typeof e||"boolean"==typeof e)return e;if("string"==typeof e&&!e?.toString()?.match(/./))return"";if("object"==typeof e&&!Array.isArray(e))return o(e,r);if("object"==typeof e&&Array.isArray(e))return i(e,r);let n=e;return t&&(n=e.toString().replace(t,"")),r||(n=e.toString().replace(/\n|\r|\n\r|\r\n/g,"").replace(/ /g,"")),n=n.replace(/(?<!\\)\'/g,"\\'").replace(/(?<!\\)\`/g,"\\`").replace(/\/\*\*\//g,"").replace(/select |insert |drop |delete |alter |create |exec | union | or | like | concat|LOAD_FILE|ASCII| COLLATE | HAVING | information_schema|DECLARE |\#|WAITFOR |delay |BENCHMARK |\/\*.*\*\//gi,"\\$&")}function o(e,r){let t={...e};return Object.keys(t).forEach(e=>{let n=t[e];if(!n){delete t[e];return}"string"==typeof n||"number"==typeof n?t[e]=s(n,r):"object"!=typeof n||Array.isArray(n)?"object"==typeof n&&Array.isArray(n)&&(t[e]=i(n,r)):t[e]=o(n,r)}),t}function i(e,r){let t=n.cloneDeep(e);return t.forEach((e,n)=>{if(!e){t.splice(n,1);return}"string"==typeof e||"number"==typeof e?t[n]=s(e,r):"object"!=typeof e||Array.isArray(e)?"object"==typeof e&&Array.isArray(e)&&(t[n]=i(e,r)):t[n]=o(e,r)}),t}e.exports=s},72907:(e,r,t)=>{let{scryptSync:n,createDecipheriv:s}=t(55511),{Buffer:o}=t(79428);e.exports=e=>{let r=s("aes-192-cbc",n(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),o.alloc(16,0));try{let t=r.update(e,"hex","utf8");return t+=r.final("utf8")}catch(e){return null}}},51348:(e,r,t)=>{let n=t(9973),s=t(21580),o=n({config:{host:process.env.DSQL_DB_HOST,user:process.env.DSQL_DB_USERNAME,password:process.env.DSQL_DB_PASSWORD,database:process.env.DSQL_DB_NAME,port:process.env.DSQL_DB_PORT?Number(process.env.DSQL_DB_PORT):void 0,charset:"utf8mb4",ssl:s()}});async function i(...e){try{let r=await o.query(...e);return await o.end(),JSON.parse(JSON.stringify(r))}catch(e){return console.log("DB Error =>",e),{success:!1,error:e.message}}}e.exports=i},21580:(e,r,t)=>{let n=t(29021);e.exports=function(){let e=process.env.DSQL_SSL_DIR;if(!e?.match(/./))return;let r=`${e}/ca-cert.pem`;if(!n.existsSync(r)){console.log(`${r} does not exist`);return}return{ca:n.readFileSync(`${e}/ca-cert.pem`)}}},2706:(e,r)=>{var t;Object.defineProperty(r,"A",{enumerable:!0,get:function(){return t}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE",e.IMAGE="IMAGE"}(t||(t={}))},89947:(e,r,t)=>{e.exports=t(75600)}};var r=require("../../webpack-api-runtime.js");r.C(e);var t=r(r.s=68336);module.exports=t})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,225 +1,16 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 5012;
|
||||
exports.ids = [5012];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2081:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("child_process");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1541:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2163);
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1__);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/ const fs = __webpack_require__(7147);
|
||||
const path = __webpack_require__(1017);
|
||||
const { execSync } = __webpack_require__(2081);
|
||||
"use strict";(()=>{var e={};e.id=3292,e.ids=[3292],e.modules={75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},79646:e=>{e.exports=require("child_process")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},96762:(e,r)=>{Object.defineProperty(r,"M",{enumerable:!0,get:function(){return function e(r,t){return t in r?r[t]:"then"in r&&"function"==typeof r.then?r.then(r=>e(r,t)):"function"==typeof r&&"default"===t?r:void 0}}})},25858:(e,r,t)=>{t.r(r),t.d(r,{config:()=>m,default:()=>S,routeModule:()=>_});var s={};t.r(s),t.d(s,{default:()=>d});var n=t(89947),o=t(2706),a=t(96762),i=t(77538),l=t.n(i),c=t(6420),u=t.n(c);let p=t(29021);t(33873);let{execSync:f}=t(79646);async function d(e,r){if("POST"!==e.method)return r.json({msg:"Failed!"});let t=await u()(e,r,!0);if(!t)return r.json({success:!1,msg:"Unauthorized"});let{dbFullName:s,dbSlug:n,paradigm:o,platforms:a}=e.body;try{let e=`${process.env.DSQL_USER_DB_SCHEMA_PATH}/user-${t.id}/env.json`;p.existsSync(e)||p.writeFileSync(e,"{}","utf8");let n=JSON.parse(p.readFileSync(e,"utf8")),i=n[s];i||(i={social:[]},n[s]=i);let l=i.social;l=[];for(let e=0;e<a.length;e++){let r=a[e],{clientId:t,clientSecret:s,domain1:n,domain2:i,callbackUrl:c}=r;if(o?.match(/personal/)&&!t?.match(/./))throw Error("Client Id Must be present");if(o?.match(/personal/)&&!s?.match(/./))throw Error("Client Secret Must be present");if(o?.match(/datasquirel/)&&!n?.match(/./))throw Error("Atleast one Domain Must be present");o?.match(/personal/)?l.push({platform:r.platform,paradigm:o,clientId:t,clientSecret:s,callbackUrl:c}):l.push({platform:r.platform,paradigm:o,domain1:n,domain2:i})}i.social=l,p.writeFileSync(e,JSON.stringify(n,null,4),"utf-8"),r.json({success:!0})}catch(e){console.log(e.message),l()({component:"/api/addSocialLogin/catch-error",message:e.message,user:t}),r.json({success:!1,msg:e.message})}}let S=(0,a.M)(s,"default"),m=(0,a.M)(s,"config"),_=new n.PagesAPIRouteModule({definition:{kind:o.A.PAGES_API,page:"/api/addSocialLogin",pathname:"/api/addSocialLogin",bundlePath:"",filename:""},userland:s})},77538:(e,r,t)=>{let s=t(29021),{IncomingMessage:n}=t(81630);e.exports=async function({user:e,message:r,component:t,noMail:n,req:o}){let a=new Date,i=(()=>{if(!o)return null;try{let e=o.headers["x-forwarded-for"],r=o.headers["x-real-ip"],t=o.headers["cf-connecting-ip"],s=Array.isArray(e)?e[0]:e?.split(",")[0],n=t||s||r||o.socket.remoteAddress;if(!n)return null;return String(n)}catch(e){return null}})();try{let n=`🚀 SERVER ERROR ===========================
|
||||
Error Message: ${r}
|
||||
Component: ${t}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(n+=`
|
||||
User Id: ${e?.id}
|
||||
User Name: ${e?.first_name} ${e?.last_name}
|
||||
User Email: ${e?.email}`),o?.url&&(n+=`
|
||||
URL: ${o.url}`),o?.body&&(n+=`
|
||||
Request Body: ${JSON.stringify(o.body,null,4)}`),i&&(n+=`
|
||||
IP: ${i}`),n+=`
|
||||
Date: ${a.toDateString()}
|
||||
========================================`,s.existsSync("./.tmp/error.log")||s.writeFileSync("./.tmp/error.log","","utf-8");let l=s.readFileSync("./.tmp/error.log","utf-8");s.writeFileSync("./.tmp/error.log",n),s.appendFileSync("./.tmp/error.log",`
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ // import { get, set } from "lodash";
|
||||
// const rateLimit = 10; // Number of allowed requests per minute
|
||||
// const rateLimiter = {};
|
||||
// const rateLimiterMiddleware = (ip) => {
|
||||
// const now = Date.now();
|
||||
// const windowStart = now - 60 * 1000; // 1 minute ago
|
||||
// const requestTimestamps = get(rateLimiter, ip, []).filter((timestamp) => timestamp > windowStart);
|
||||
// requestTimestamps.push(now);
|
||||
// set(rateLimiter, ip, requestTimestamps);
|
||||
// return requestTimestamps.length <= rateLimit;
|
||||
// };
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ // const ip = req.headers["x-real-ip"] || req.connection.remoteAddress;
|
||||
// if (!rateLimiterMiddleware(ip)) {
|
||||
// // res.status(429).json({ message: "Too Many Requests" });
|
||||
// return res.status(429).json({ msg: "Too Many Requests" });
|
||||
// }
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1___default()(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const sanitizedReqBody = req.body;
|
||||
const { dbFullName , dbSlug , paradigm , platforms } = sanitizedReqBody;
|
||||
/**
|
||||
* Send Response
|
||||
*
|
||||
* @description Send a boolean response
|
||||
*/ try {
|
||||
/**
|
||||
* Create new user folder and file
|
||||
*
|
||||
* @description Create new user folder and file
|
||||
*/ const userEnvFilePath = `${process.env.DSQL_USER_DB_SCHEMA_PATH}/user-${user.id}/env.json`;
|
||||
if (!fs.existsSync(userEnvFilePath)) {
|
||||
fs.writeFileSync(userEnvFilePath, "{}", "utf8");
|
||||
}
|
||||
const envObject = JSON.parse(fs.readFileSync(userEnvFilePath, "utf8"));
|
||||
let databseObject = envObject[dbFullName];
|
||||
if (!databseObject) {
|
||||
databseObject = {
|
||||
social: []
|
||||
};
|
||||
envObject[dbFullName] = databseObject;
|
||||
}
|
||||
/** @type {object[]} */ let socialLogins = databseObject.social;
|
||||
socialLogins = [];
|
||||
for(let i = 0; i < platforms.length; i++){
|
||||
const platform = platforms[i];
|
||||
const { clientId , clientSecret , domain1 , domain2 , callbackUrl } = platform;
|
||||
if (paradigm?.match(/personal/) && !clientId?.match(/./)) {
|
||||
throw new Error("Client Id Must be present");
|
||||
}
|
||||
if (paradigm?.match(/personal/) && !clientSecret?.match(/./)) {
|
||||
throw new Error("Client Secret Must be present");
|
||||
}
|
||||
if (paradigm?.match(/datasquirel/) && !domain1?.match(/./)) {
|
||||
throw new Error("Atleast one Domain Must be present");
|
||||
}
|
||||
// const existingPlatformIndex = socialLogins.findIndex((scObj) => scObj.platform === platform.platform);
|
||||
// console.log(existingPlatformIndex);
|
||||
// if (existingPlatformIndex >= 0) {
|
||||
// if (paradigm?.match(/personal/)) {
|
||||
// socialLogins[existingPlatformIndex] = { ...platform, paradigm };
|
||||
// } else {
|
||||
// socialLogins[existingPlatformIndex] = { paradigm, platform: platform.platform };
|
||||
// }
|
||||
// } else {
|
||||
// socialLogins.push({ paradigm, ...platform });
|
||||
// }
|
||||
if (paradigm?.match(/personal/)) {
|
||||
socialLogins.push({
|
||||
platform: platform.platform,
|
||||
paradigm,
|
||||
clientId,
|
||||
clientSecret,
|
||||
callbackUrl
|
||||
});
|
||||
} else {
|
||||
socialLogins.push({
|
||||
platform: platform.platform,
|
||||
paradigm,
|
||||
domain1,
|
||||
domain2
|
||||
});
|
||||
}
|
||||
}
|
||||
databseObject.social = socialLogins;
|
||||
fs.writeFileSync(userEnvFilePath, JSON.stringify(envObject, null, 4), "utf-8");
|
||||
res.json({
|
||||
success: true
|
||||
});
|
||||
////////////////////////////////////////
|
||||
} catch (/** @type {any} */ error) {
|
||||
console.log(error.message);
|
||||
////////////////////////////////////////
|
||||
_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0___default()({
|
||||
component: "/api/addSocialLogin/catch-error",
|
||||
message: error.message,
|
||||
user: user
|
||||
});
|
||||
res.json({
|
||||
success: false,
|
||||
msg: error.message
|
||||
});
|
||||
////////////////////////////////////////
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,2163,6825], () => (__webpack_exec__(1541)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
${l}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},6420:(e,r,t)=>{t(81630);let s=t(51348),n=t(72907),o=t(29021);async function a(e,r,t,a){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let i=n(e.cookies.datasquirelAuthKey);if(!i)return null;let l=JSON.parse(i);if(!l.csrf_k||t&&!e.headers["x-csrf-auth"]?.match(RegExp(`${l.csrf_k}`)))return null;let c=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!c)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(t&&!o.existsSync(`${c}/${l.csrf_k}`))return null;if(0==l.verification_status&&!t){let e=await s(`SELECT verification_status FROM users WHERE id='${l.id}'`);e&&e[0]&&1==e[0].verification_status&&r.setHeader("Set-Cookie",["user_refresh=1"])}return l?.date&&Date.now()-l.date>6048e5?null:l}e.exports=a},72907:(e,r,t)=>{let{scryptSync:s,createDecipheriv:n}=t(55511),{Buffer:o}=t(79428);e.exports=e=>{let r=n("aes-192-cbc",s(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),o.alloc(16,0));try{let t=r.update(e,"hex","utf8");return t+=r.final("utf8")}catch(e){return null}}},51348:(e,r,t)=>{let s=t(9973),n=t(21580),o=s({config:{host:process.env.DSQL_DB_HOST,user:process.env.DSQL_DB_USERNAME,password:process.env.DSQL_DB_PASSWORD,database:process.env.DSQL_DB_NAME,port:process.env.DSQL_DB_PORT?Number(process.env.DSQL_DB_PORT):void 0,charset:"utf8mb4",ssl:n()}});async function a(...e){try{let r=await o.query(...e);return await o.end(),JSON.parse(JSON.stringify(r))}catch(e){return console.log("DB Error =>",e),{success:!1,error:e.message}}}e.exports=a},21580:(e,r,t)=>{let s=t(29021);e.exports=function(){let e=process.env.DSQL_SSL_DIR;if(!e?.match(/./))return;let r=`${e}/ca-cert.pem`;if(!s.existsSync(r)){console.log(`${r} does not exist`);return}return{ca:s.readFileSync(`${e}/ca-cert.pem`)}}},2706:(e,r)=>{var t;Object.defineProperty(r,"A",{enumerable:!0,get:function(){return t}}),function(e){e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE",e.IMAGE="IMAGE"}(t||(t={}))},89947:(e,r,t)=>{e.exports=t(75600)}};var r=require("../../webpack-api-runtime.js");r.C(e);var t=r(r.s=25858);module.exports=t})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,216 +1,16 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 8325;
|
||||
exports.ids = [8325];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6109:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("sanitize-html");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2771:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var _functions_backend_handleTableEntryOrder__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(766);
|
||||
/* harmony import */ var _functions_backend_handleTableEntryOrder__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_handleTableEntryOrder__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5338);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(2224);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_2__);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DSQL_USER_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3403);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DSQL_USER_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_package_shared_utils_backend_global_db_DSQL_USER_DB_HANDLER__WEBPACK_IMPORTED_MODULE_3__);
|
||||
// @ts-check
|
||||
"use strict";(()=>{var e={};e.id=460,e.ids=[460],e.modules={27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},72583:e=>{e.exports=require("sanitize-html")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},14373:(e,r,t)=>{t.r(r),t.d(r,{config:()=>_,default:()=>E,routeModule:()=>b});var a={};t.r(a),t.d(a,{default:()=>f});var s=t(89947),l=t(2706),i=t(96762),o=t(96771),n=t.n(o),d=t(47670),u=t.n(d);t(51348),t(21339);let c=t(73677),p=t(39831),g=t(77538),m=t(6420);async function f(e,r){if("POST"!==e.method)return r.json({msg:"Failed!"});let t=await m(e,r,!0);if(!t)return r.json({success:!1,msg:"User Auth Failed"});let{tableName:a,payload:s,tableSchema:l,dbSlug:i,dbId:o,delegated:d}=e.body;try{let d=await p({databaseSlug:i,request:e,user:t,query:e.query});if(!await c({user:t,confirmedDelegetedUser:d,database:i,table:a,dbId:o,priviledgeRegex:/Update Entries/i}))return r.json({success:!1,msg:"Unauthorized"});let g=d?.rootUserId?`datasquirel_user_${d.rootUserId}_${i}`:`datasquirel_user_${t.id}_${i}`,m=await u()({dbContext:"Dsql User",paradigm:"Full Access",dbFullName:g,tableName:a,data:s,tableSchema:l});if(!m.insertId)throw console.log("Table Insertion Failed =>",m),Error("Table Insertion Failed");await n()({dbName:g,entryId:m.insertId,entryOrder:s.order,tableName:a,tableSchema:l}),r.json({success:!0})}catch(e){g({component:"/api/addTableEntry/catch-error",message:e.message,user:t}),r.json({success:!1,msg:"Database Files could not be written!",err:e.message})}}let E=(0,i.M)(a,"default"),_=(0,i.M)(a,"config"),b=new s.PagesAPIRouteModule({definition:{kind:l.A.PAGES_API,page:"/api/addTableEntry",pathname:"/api/addTableEntry",bundlePath:"",filename:""},userland:a})},73677:(e,r,t)=>{let a=t(51348),s=t(77538);e.exports=async function({user:e,confirmedDelegetedUser:r,database:t,table:l,priviledgeRegex:i,dbId:o}){let n,d;try{r?.delegated?(n=await a("SELECT priviledge FROM delegated_user_tables WHERE root_user_id=? AND delegated_user_id=? AND `database`=? AND `table`=?",[r.rootUserId,e.id,t,l]),d=n[0]?.priviledge?.match(i)):(n=await a("SELECT table_slug FROM user_database_tables WHERE user_id=? AND table_slug=? AND db_id=?",[e.id,l,o]),d=!0)}catch(r){s({component:"checkUserRights",message:r.message,user:e})}return!!n&&!!n[0]&&!!d}},39831:(e,r,t)=>{t(81630);let a=t(72907);e.exports=async function({request:e,databaseSlug:r,user:t,query:s}){try{let l=t.id,i=null;if(!s?.delegated)return{dbUserId:l};let o=s.dbUserId,n=`${process.env.DSQL_USER_DB_PREFIX}${o}_${r}`,d=`${process.env.DSQL_USER_DELEGATED_DB_COOKIE_PREFIX}${n}`;try{if(!e.cookies?.[d])throw Error("Cookie not present");let t=a(e.cookies[d]);if(!t)throw Error("Invalid Token");if((i=JSON.parse(t)).databaseSlug===r)return{dbUserId:l=i.rootUserId,rootUserId:i.rootUserId,rootUserName:i.rootUserName,rootUserEmail:i.rootUserEmail,rootUserImage:i.rootUserImage,databaseFullName:i.databaseFullName,databaseSlug:i.databaseSlug,allowedTables:i.allowedTables,priviledges:i.priviledges,database:i.databaseSlug,delegated:!0}}catch(e){}return{dbUserId:l}}catch(e){return null}}},96771:(e,r,t)=>{let a=t(21339);e.exports=async function({dbName:e,entryId:r,entryOrder:t,tableName:s,tableSchema:l}){try{if(l.fields.find(e=>!!e.fieldName?.match(/^order$/i))&&t){let l=await a({database:e,paradigm:"Full Access",queryString:`SELECT * FROM ${s} WHERE \`order\` = '${t}' AND id != ?`,queryValues:[String(r)]});if(!l?.[0])throw Error("No Existing Order");await a({database:e,paradigm:"Full Access",queryString:`UPDATE ${s} SET \`order\` = \`order\` + 1 WHERE \`order\` >= ${t} AND id != ?`,queryValues:[String(r)]})}return!0}catch(e){return!1}}},77538:(e,r,t)=>{let a=t(29021),{IncomingMessage:s}=t(81630);e.exports=async function({user:e,message:r,component:t,noMail:s,req:l}){let i=new Date,o=(()=>{if(!l)return null;try{let e=l.headers["x-forwarded-for"],r=l.headers["x-real-ip"],t=l.headers["cf-connecting-ip"],a=Array.isArray(e)?e[0]:e?.split(",")[0],s=t||a||r||l.socket.remoteAddress;if(!s)return null;return String(s)}catch(e){return null}})();try{let s=`🚀 SERVER ERROR ===========================
|
||||
Error Message: ${r}
|
||||
Component: ${t}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(s+=`
|
||||
User Id: ${e?.id}
|
||||
User Name: ${e?.first_name} ${e?.last_name}
|
||||
User Email: ${e?.email}`),l?.url&&(s+=`
|
||||
URL: ${l.url}`),l?.body&&(s+=`
|
||||
Request Body: ${JSON.stringify(l.body,null,4)}`),o&&(s+=`
|
||||
IP: ${o}`),s+=`
|
||||
Date: ${i.toDateString()}
|
||||
========================================`,a.existsSync("./.tmp/error.log")||a.writeFileSync("./.tmp/error.log","","utf-8");let n=a.readFileSync("./.tmp/error.log","utf-8");a.writeFileSync("./.tmp/error.log",s),a.appendFileSync("./.tmp/error.log",`
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/ const checkUserRights = __webpack_require__(8999);
|
||||
const grabDelegatedUserFromCookie = __webpack_require__(1352);
|
||||
const serverError = __webpack_require__(2163);
|
||||
const userAuth = __webpack_require__(6825);
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* @typedef {object} AddTableEntryRequestBody
|
||||
* @property {string} tableName
|
||||
* @property {any} payload
|
||||
* @property {import("@/package-shared/types").DSQL_TableSchemaType} tableSchema
|
||||
* @property {string} dbSlug
|
||||
* @property {number} dbId
|
||||
* @property {boolean} delegated
|
||||
*/ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await userAuth(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "User Auth Failed"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ /** @type {AddTableEntryRequestBody} */ const sanitizedReqBody = req.body;
|
||||
const { tableName , payload , tableSchema , dbSlug , dbId , delegated } = sanitizedReqBody;
|
||||
/**
|
||||
* Send Response
|
||||
*
|
||||
* @description Send a boolean response
|
||||
*/ try {
|
||||
/**
|
||||
* Check if user has rights to this table
|
||||
*
|
||||
* @description Check if user has rights to this table
|
||||
*/ const delegatedUser = await grabDelegatedUserFromCookie({
|
||||
databaseSlug: dbSlug,
|
||||
request: req,
|
||||
user: user,
|
||||
query: req.query
|
||||
});
|
||||
const checkUserRightsBoolean = await checkUserRights({
|
||||
user: user,
|
||||
confirmedDelegetedUser: delegatedUser,
|
||||
database: dbSlug,
|
||||
table: tableName,
|
||||
dbId: dbId,
|
||||
priviledgeRegex: /Update Entries/i
|
||||
});
|
||||
if (!checkUserRightsBoolean) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
const dbFullName = delegatedUser?.rootUserId ? `datasquirel_user_${delegatedUser.rootUserId}_${dbSlug}` : `datasquirel_user_${user.id}_${dbSlug}`;
|
||||
/**
|
||||
* Create new user folder and file
|
||||
*
|
||||
* @description Create new user folder and file
|
||||
*/ const newTableEntry = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_1___default()({
|
||||
dbContext: "Dsql User",
|
||||
paradigm: "Full Access",
|
||||
dbFullName: dbFullName,
|
||||
tableName: tableName,
|
||||
data: payload,
|
||||
tableSchema: tableSchema
|
||||
});
|
||||
if (!newTableEntry.insertId) {
|
||||
console.log("Table Insertion Failed =>", newTableEntry);
|
||||
throw new Error("Table Insertion Failed");
|
||||
}
|
||||
const handleOrder = await _functions_backend_handleTableEntryOrder__WEBPACK_IMPORTED_MODULE_0___default()({
|
||||
dbName: dbFullName,
|
||||
entryId: newTableEntry.insertId,
|
||||
entryOrder: payload.order,
|
||||
tableName: tableName,
|
||||
tableSchema: tableSchema
|
||||
});
|
||||
////////////////////////////////////////
|
||||
res.json({
|
||||
success: true
|
||||
});
|
||||
////////////////////////////////////////
|
||||
} catch (/** @type {any} */ error) {
|
||||
////////////////////////////////////////
|
||||
serverError({
|
||||
component: "/api/addTableEntry/catch-error",
|
||||
message: error.message,
|
||||
user: user
|
||||
});
|
||||
res.json({
|
||||
success: false,
|
||||
msg: "Database Files could not be written!",
|
||||
err: error.message
|
||||
});
|
||||
////////////////////////////////////////
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,2163,6825,3017,3403,7547,5886,5338,1352,8999,766], () => (__webpack_exec__(2771)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
${n}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},6420:(e,r,t)=>{t(81630);let a=t(51348),s=t(72907),l=t(29021);async function i(e,r,t,i){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let o=s(e.cookies.datasquirelAuthKey);if(!o)return null;let n=JSON.parse(o);if(!n.csrf_k||t&&!e.headers["x-csrf-auth"]?.match(RegExp(`${n.csrf_k}`)))return null;let d=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!d)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(t&&!l.existsSync(`${d}/${n.csrf_k}`))return null;if(0==n.verification_status&&!t){let e=await a(`SELECT verification_status FROM users WHERE id='${n.id}'`);e&&e[0]&&1==e[0].verification_status&&r.setHeader("Set-Cookie",["user_refresh=1"])}return n?.date&&Date.now()-n.date>6048e5?null:n}e.exports=i},72907:(e,r,t)=>{let{scryptSync:a,createDecipheriv:s}=t(55511),{Buffer:l}=t(79428);e.exports=e=>{let r=s("aes-192-cbc",a(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),l.alloc(16,0));try{let t=r.update(e,"hex","utf8");return t+=r.final("utf8")}catch(e){return null}}}};var r=require("../../webpack-api-runtime.js");r.C(e);var t=e=>r(r.s=e),a=r.X(0,[4050],()=>t(14373));module.exports=a})();
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,304 +1,16 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 8448;
|
||||
exports.ids = [8448];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6109:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("sanitize-html");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2081:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("child_process");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 8583:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2163);
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var _functions_backend_grabUserSchemaData__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(8164);
|
||||
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6517);
|
||||
/* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_3__);
|
||||
/* harmony import */ var _functions_backend_setUserSchemaData__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(7638);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(2224);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_5__);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(5338);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_6__);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/ const fs = __webpack_require__(7147);
|
||||
const path = __webpack_require__(1017);
|
||||
const { execSync } = __webpack_require__(2081);
|
||||
"use strict";(()=>{var e={};e.id=8275,e.ids=[8275],e.modules={27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},72583:e=>{e.exports=require("sanitize-html")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},79646:e=>{e.exports=require("child_process")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},13441:(e,a,t)=>{t.r(a),t.d(a,{config:()=>F,default:()=>E,routeModule:()=>D});var r={};t.r(r),t.d(r,{default:()=>y});var l=t(89947),s=t(2706),n=t(96762),i=t(77538),d=t.n(i),u=t(6420),o=t.n(u),c=t(49827),b=t(27825),m=t.n(b),f=t(19857),p=t(51348),_=t.n(p),h=t(47670),g=t.n(h);t(29021);let N=t(33873),{execSync:S}=t(79646);async function y(e,a){if("POST"!==e.method)return a.json({msg:"Failed!"});let t=await o()(e,a,!0);if(!t)return console.log("No User"),a.json({success:!1,msg:"Unauthorized"});let{payload:r}=e.body,l=e.body.dbFullName.replace(/[^a-z\_0-9]/g,""),s=e.body.dbSlug,n=e.body.dbId,i=e.body.parentDatabase,u=e.body.parentTable;try{let e=(0,c.default)({userId:t.id});if(!e)throw Error("No User Schema found!");let o=e.findIndex(e=>e.dbFullName===l),b=e[o];if(!b)throw Error("No Target Database Found!");let p=b.tables.findIndex(e=>e.tableName===r.tableName);if(p>=0?e[o].tables[p]=r:e[o].tables.push(r),r?.childTable){let a=e.find(e=>e.dbFullName===i),t=a?.tables.find(e=>{if(e.tableName===u)return!0});if(!t)throw Error("Child Table Parent Doesn't Exist!");t.childrenTables?.[0]?t.childrenTables.push({dbNameFull:l,tableName:r.tableName,tableNameFull:r.tableNameFull}):t.childrenTables=[{dbNameFull:l,tableName:r.tableName,tableNameFull:r.tableFullName}]}if(b.childrenDatabases)for(let a=0;a<b.childrenDatabases.length;a++){let l=b.childrenDatabases[a];try{let a=e.findIndex(e=>e.dbFullName===l.dbFullName);e[a]&&(e[a].tables=m().cloneDeep(b.tables));let s=await _()("SELECT * FROM user_databases WHERE user_id = ? AND db_full_name = ?",[t.id,l.dbFullName]),n=await _()("SELECT * FROM user_database_tables WHERE db_id=? AND user_id=? AND table_slug=?",[s[0].id,t.id,r.tableName]);if(n?.[0])continue;await g()({dbFullName:"datasquirel",tableName:"user_database_tables",data:{user_id:t.id,db_id:s[0].id,db_slug:s[0].db_slug,table_name:r.tableFullName,table_slug:r.tableName}})}catch(e){d()({component:"/api/addUserTable/lines-124-140",message:e.message,user:t})}}(0,f.default)({userId:t.id,schemaData:e});let h={user_id:t.id,db_id:n,db_slug:s,table_name:r.tableFullName,table_slug:r.tableName};r?.childTable&&(h.child_table="1",h.child_table_parent_database=i,h.child_table_parent_table=u),await g()({dbFullName:"datasquirel",tableName:"user_database_tables",data:h});let y=N.join(process.cwd(),"/shell");S(`node createDbFromSchema.js --user ${t.id} --database ${l}${r?.childTable?" --clone":""}`,{cwd:y}),a.json({success:!0})}catch(e){console.log(e.message),d()({component:"/api/addUserTable/main-catch-error",message:e.message,user:t}),a.json({success:!1,msg:"Database Files could not be written!"})}}let E=(0,n.M)(r,"default"),F=(0,n.M)(r,"config"),D=new l.PagesAPIRouteModule({definition:{kind:s.A.PAGES_API,page:"/api/addUserTable",pathname:"/api/addUserTable",bundlePath:"",filename:""},userland:r})},49827:(e,a,t)=>{t.r(a),t.d(a,{default:()=>n});let r=t(77538),l=t(29021),s=t(33873);function n({userId:e}){try{let a=s.resolve(process.cwd(),`${process.env.DSQL_USER_DB_SCHEMA_PATH}/user-${e}/main.json`);return JSON.parse(l.readFileSync(a,"utf-8"))}catch(e){return r({component:"/functions/backend/grabUserSchemaData",message:e.message}),null}}},77538:(e,a,t)=>{let r=t(29021),{IncomingMessage:l}=t(81630);e.exports=async function({user:e,message:a,component:t,noMail:l,req:s}){let n=new Date,i=(()=>{if(!s)return null;try{let e=s.headers["x-forwarded-for"],a=s.headers["x-real-ip"],t=s.headers["cf-connecting-ip"],r=Array.isArray(e)?e[0]:e?.split(",")[0],l=t||r||a||s.socket.remoteAddress;if(!l)return null;return String(l)}catch(e){return null}})();try{let l=`🚀 SERVER ERROR ===========================
|
||||
Error Message: ${a}
|
||||
Component: ${t}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(l+=`
|
||||
User Id: ${e?.id}
|
||||
User Name: ${e?.first_name} ${e?.last_name}
|
||||
User Email: ${e?.email}`),s?.url&&(l+=`
|
||||
URL: ${s.url}`),s?.body&&(l+=`
|
||||
Request Body: ${JSON.stringify(s.body,null,4)}`),i&&(l+=`
|
||||
IP: ${i}`),l+=`
|
||||
Date: ${n.toDateString()}
|
||||
========================================`,r.existsSync("./.tmp/error.log")||r.writeFileSync("./.tmp/error.log","","utf-8");let d=r.readFileSync("./.tmp/error.log","utf-8");r.writeFileSync("./.tmp/error.log",l),r.appendFileSync("./.tmp/error.log",`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_1___default()(req, res, true);
|
||||
if (!user) {
|
||||
console.log("No User");
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const { payload } = req.body;
|
||||
const dbFullName = req.body.dbFullName.replace(/[^a-z\_0-9]/g, "");
|
||||
const dbSlug = req.body.dbSlug;
|
||||
const dbId = req.body.dbId;
|
||||
const parentDatabase = req.body.parentDatabase;
|
||||
const parentTable = req.body.parentTable;
|
||||
/**
|
||||
* Send Response
|
||||
*
|
||||
* @description Send a boolean response
|
||||
*/ try {
|
||||
let userSchemaData = (0,_functions_backend_grabUserSchemaData__WEBPACK_IMPORTED_MODULE_2__["default"])({
|
||||
userId: user.id
|
||||
});
|
||||
if (!userSchemaData) {
|
||||
throw new Error("No User Schema found!");
|
||||
}
|
||||
let targetDatabaseIndex = userSchemaData.findIndex((db)=>db.dbFullName === dbFullName);
|
||||
/** @type {import("@/package-shared/types").DSQL_DatabaseSchemaType | undefined} */ let targetDatabase = userSchemaData[targetDatabaseIndex];
|
||||
if (!targetDatabase) {
|
||||
throw new Error("No Target Database Found!");
|
||||
}
|
||||
let existingTableIndex = targetDatabase.tables.findIndex((table)=>table.tableName === payload.tableName);
|
||||
if (existingTableIndex >= 0) {
|
||||
userSchemaData[targetDatabaseIndex].tables[existingTableIndex] = payload;
|
||||
} else {
|
||||
userSchemaData[targetDatabaseIndex].tables.push(payload);
|
||||
}
|
||||
if (payload?.childTable) {
|
||||
/** @type {import("@/package-shared/types").DSQL_DatabaseSchemaType | undefined} */ const parentDb = userSchemaData.find((db)=>db.dbFullName === parentDatabase);
|
||||
const parentTableObject = parentDb?.tables.find((table)=>{
|
||||
if (table.tableName === parentTable) {
|
||||
return true;
|
||||
}
|
||||
});
|
||||
if (!parentTableObject) {
|
||||
throw new Error("Child Table Parent Doesn't Exist!");
|
||||
}
|
||||
if (parentTableObject.childrenTables?.[0]) {
|
||||
parentTableObject.childrenTables.push({
|
||||
dbNameFull: dbFullName,
|
||||
tableName: payload.tableName,
|
||||
tableNameFull: payload.tableNameFull
|
||||
});
|
||||
} else {
|
||||
parentTableObject.childrenTables = [
|
||||
{
|
||||
dbNameFull: dbFullName,
|
||||
tableName: payload.tableName,
|
||||
tableNameFull: payload.tableFullName
|
||||
},
|
||||
];
|
||||
}
|
||||
}
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* Check Children Databases
|
||||
*
|
||||
* @description Check Children Databases
|
||||
*/ if (targetDatabase.childrenDatabases) {
|
||||
for(let i = 0; i < targetDatabase.childrenDatabases.length; i++){
|
||||
const childDb = targetDatabase.childrenDatabases[i];
|
||||
try {
|
||||
const targetChildIndex = userSchemaData.findIndex((db)=>db.dbFullName === childDb.dbFullName);
|
||||
if (userSchemaData[targetChildIndex]) userSchemaData[targetChildIndex].tables = lodash__WEBPACK_IMPORTED_MODULE_3___default().cloneDeep(targetDatabase.tables);
|
||||
const targetDbRecord = await _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_5___default()(`SELECT * FROM user_databases WHERE user_id = ? AND db_full_name = ?`, [
|
||||
user.id,
|
||||
childDb.dbFullName
|
||||
]);
|
||||
const existingEntry = await _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_5___default()(`SELECT * FROM user_database_tables WHERE db_id=? AND user_id=? AND table_slug=?`, [
|
||||
targetDbRecord[0].id,
|
||||
user.id,
|
||||
payload.tableName
|
||||
]);
|
||||
if (existingEntry?.[0]) continue;
|
||||
const newChildTableEntry = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_6___default()({
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "user_database_tables",
|
||||
data: {
|
||||
user_id: user.id,
|
||||
db_id: targetDbRecord[0].id,
|
||||
db_slug: targetDbRecord[0].db_slug,
|
||||
table_name: payload.tableFullName,
|
||||
table_slug: payload.tableName
|
||||
}
|
||||
});
|
||||
} catch (/** @type {any} */ error) {
|
||||
_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0___default()({
|
||||
component: "/api/addUserTable/lines-124-140",
|
||||
message: error.message,
|
||||
user: user
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
// console.log("Done ...");
|
||||
// fs.writeFileSync(
|
||||
// "./.tmp/newTableSchema.json",
|
||||
// JSON.stringify(userSchemaData, null, 4),
|
||||
// "utf8"
|
||||
// );
|
||||
// return res.json({
|
||||
// success: false,
|
||||
// msg: "Testing",
|
||||
// });
|
||||
(0,_functions_backend_setUserSchemaData__WEBPACK_IMPORTED_MODULE_4__["default"])({
|
||||
userId: user.id,
|
||||
schemaData: userSchemaData
|
||||
});
|
||||
////////////////////////////////////////
|
||||
/** @type {any} */ const newTableInsertObject = {
|
||||
user_id: user.id,
|
||||
db_id: dbId,
|
||||
db_slug: dbSlug,
|
||||
table_name: payload.tableFullName,
|
||||
table_slug: payload.tableName
|
||||
};
|
||||
if (payload?.childTable) {
|
||||
newTableInsertObject["child_table"] = "1";
|
||||
newTableInsertObject["child_table_parent_database"] = parentDatabase;
|
||||
newTableInsertObject["child_table_parent_table"] = parentTable;
|
||||
}
|
||||
const newTableEntry = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_6___default()({
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "user_database_tables",
|
||||
data: newTableInsertObject
|
||||
});
|
||||
////////////////////////////////////////
|
||||
const targetPath = path.join(process.cwd(), "/shell");
|
||||
const dbShellUpdate = execSync(`node createDbFromSchema.js --user ${user.id} --database ${dbFullName}${payload?.childTable ? " --clone" : ""}`, {
|
||||
cwd: targetPath
|
||||
});
|
||||
////////////////////////////////////////
|
||||
res.json({
|
||||
success: true
|
||||
});
|
||||
////////////////////////////////////////
|
||||
} catch (/** @type {any} */ error1) {
|
||||
////////////////////////////////////////
|
||||
console.log(error1.message);
|
||||
_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_0___default()({
|
||||
component: "/api/addUserTable/main-catch-error",
|
||||
message: error1.message,
|
||||
user: user
|
||||
});
|
||||
res.json({
|
||||
success: false,
|
||||
msg: "Database Files could not be written!"
|
||||
});
|
||||
////////////////////////////////////////
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,2163,6825,3017,3403,7547,5886,5338,8164,7638], () => (__webpack_exec__(8583)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
${d}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},19857:(e,a,t)=>{t.r(a),t.d(a,{default:()=>n});let r=t(77538),l=t(29021),s=t(33873);function n({userId:e,schemaData:a}){try{let t=s.resolve(process.cwd(),`${process.env.DSQL_USER_DB_SCHEMA_PATH}/user-${e}/main.json`);return l.writeFileSync(t,JSON.stringify(a),"utf8"),!0}catch(e){return r({component:"/functions/backend/setUserSchemaData",message:e.message}),!1}}},6420:(e,a,t)=>{t(81630);let r=t(51348),l=t(72907),s=t(29021);async function n(e,a,t,n){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let i=l(e.cookies.datasquirelAuthKey);if(!i)return null;let d=JSON.parse(i);if(!d.csrf_k||t&&!e.headers["x-csrf-auth"]?.match(RegExp(`${d.csrf_k}`)))return null;let u=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!u)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(t&&!s.existsSync(`${u}/${d.csrf_k}`))return null;if(0==d.verification_status&&!t){let e=await r(`SELECT verification_status FROM users WHERE id='${d.id}'`);e&&e[0]&&1==e[0].verification_status&&a.setHeader("Set-Cookie",["user_refresh=1"])}return d?.date&&Date.now()-d.date>6048e5?null:d}e.exports=n},72907:(e,a,t)=>{let{scryptSync:r,createDecipheriv:l}=t(55511),{Buffer:s}=t(79428);e.exports=e=>{let a=l("aes-192-cbc",r(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),s.alloc(16,0));try{let t=a.update(e,"hex","utf8");return t+=a.final("utf8")}catch(e){return null}}}};var a=require("../../webpack-api-runtime.js");a.C(e);var t=e=>a(a.s=e),r=a.X(0,[4050],()=>t(13441));module.exports=r})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,231 +1,4 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 5402;
|
||||
exports.ids = [5402];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 2029:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("datasquirel/functions/hashPassword");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 5184:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("nodemailer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6109:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("sanitize-html");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 9210:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var _functions_backend_handleNodemailer__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6926);
|
||||
/* harmony import */ var _functions_backend_handleNodemailer__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_handleNodemailer__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var datasquirel_functions_hashPassword__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2029);
|
||||
/* harmony import */ var datasquirel_functions_hashPassword__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(datasquirel_functions_hashPassword__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2__);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5338);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3__);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(2224);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_4__);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2___default()(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ // const sanitizedReqBody = sanitizeSql(req.body);
|
||||
const sanitizedReqBody = req.body;
|
||||
const paradigm = sanitizedReqBody.paradigm;
|
||||
/**
|
||||
* Input Validation
|
||||
*
|
||||
* @description Input Validation
|
||||
*/ if (paradigm?.match(/database/)) {
|
||||
const newUser = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3___default()({
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "user_users",
|
||||
data: (()=>{
|
||||
const reqBodyKeys = Object.keys(sanitizedReqBody);
|
||||
/** @type {any} */ const finalData = {};
|
||||
reqBodyKeys.forEach((key)=>{
|
||||
if (key?.match(/paradigm|priviledge|database_access|databases|confirm/)) return;
|
||||
finalData[key] = sanitizedReqBody[key];
|
||||
});
|
||||
finalData["user_id"] = user.id;
|
||||
finalData["password"] = datasquirel_functions_hashPassword__WEBPACK_IMPORTED_MODULE_1___default()({
|
||||
encryptionKey: process.env.DSQL_ENCRYPTION_PASSWORD || "",
|
||||
password: sanitizedReqBody.password
|
||||
});
|
||||
finalData["user_type"] = "database";
|
||||
finalData["email"] = sanitizedReqBody.email_address;
|
||||
finalData["image"] = "/images/user-preset.png";
|
||||
finalData["image_thumbnail"] = "/images/user-preset-thumbnail.png";
|
||||
delete finalData["email_address"];
|
||||
return finalData;
|
||||
})()
|
||||
});
|
||||
res.json({
|
||||
success: newUser?.insertId ? true : false,
|
||||
msg: "New User User Added",
|
||||
newUserId: newUser.insertId
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
} else {
|
||||
if (user?.email === sanitizedReqBody.email_address) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Can't Invite yourself"
|
||||
});
|
||||
}
|
||||
const existingInvitation = await _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_4___default()(`SELECT * FROM invitations WHERE invited_user_email=? AND inviting_user_id=?`, [
|
||||
sanitizedReqBody.email_address,
|
||||
user.id
|
||||
]);
|
||||
if (existingInvitation && existingInvitation[0]) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "User Already Invited"
|
||||
});
|
||||
}
|
||||
const newInvitation = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3___default()({
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "invitations",
|
||||
data: {
|
||||
inviting_user_id: user.id,
|
||||
invited_user_email: sanitizedReqBody.email_address,
|
||||
database_access: sanitizedReqBody.database_access,
|
||||
priviledge: sanitizedReqBody.priviledge,
|
||||
db_tables_data: sanitizedReqBody.db_tables
|
||||
}
|
||||
});
|
||||
const sendInvitationMail = await _functions_backend_handleNodemailer__WEBPACK_IMPORTED_MODULE_0___default()({
|
||||
to: sanitizedReqBody.email_address,
|
||||
subject: `${user.first_name} ${user.last_name} Invited you`,
|
||||
text: `${user.first_name} ${user.last_name} has invited you to manage a datasquirel account`,
|
||||
html: `
|
||||
<h2>${user.first_name} ${user.last_name} has invited you to manage a datasquirel account.</h2>
|
||||
<a href="${process.env.DSQL_HOST}/create-account?invite=${user.id}&database_access=${sanitizedReqBody.database_access}&priviledge=${sanitizedReqBody.priviledge}&email=${sanitizedReqBody.email_address}">Accept Invitation</a>
|
||||
`
|
||||
});
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
res.json({
|
||||
success: sendInvitationMail?.accepted ? true : false,
|
||||
msg: "This is an invitation request"
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,6825,3017,3403,7547,5886,5338,6926], () => (__webpack_exec__(9210)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
"use strict";(()=>{var e={};e.id=3812,e.ids=[3812],e.modules={43499:e=>{e.exports=require("@moduletrace/datasquirel/functions/hashPassword")},27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},21572:e=>{e.exports=require("nodemailer")},72583:e=>{e.exports=require("sanitize-html")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},21110:(e,s,a)=>{a.r(s),a.d(s,{config:()=>g,default:()=>S,routeModule:()=>b});var t={};a.r(t),a.d(t,{default:()=>h});var r=a(89947),i=a(2706),n=a(96762),l=a(79531),d=a.n(l),u=a(43499),o=a.n(u),c=a(6420),_=a.n(c),p=a(47670),m=a.n(p),f=a(51348),v=a.n(f);async function h(e,s){if("POST"!==e.method)return s.json({msg:"Failed!"});let a=await _()(e,s,!0);if(!a)return s.json({success:!1,msg:"Unauthorized"});let t=e.body,r=t.paradigm;if(r?.match(/database/)){let e=await m()({dbFullName:"datasquirel",tableName:"user_users",data:(()=>{let e=Object.keys(t),s={};return e.forEach(e=>{e?.match(/paradigm|priviledge|database_access|databases|confirm/)||(s[e]=t[e])}),s.user_id=a.id,s.password=o()({encryptionKey:process.env.DSQL_ENCRYPTION_PASSWORD||"",password:t.password}),s.user_type="database",s.email=t.email_address,s.image="/images/user-preset.png",s.image_thumbnail="/images/user-preset-thumbnail.png",delete s.email_address,s})()});s.json({success:!!e?.insertId,msg:"New User User Added",newUserId:e.insertId})}else{if(a?.email===t.email_address)return s.json({success:!1,msg:"Can't Invite yourself"});let e=await v()("SELECT * FROM invitations WHERE invited_user_email=? AND inviting_user_id=?",[t.email_address,a.id]);if(e&&e[0])return s.json({success:!1,msg:"User Already Invited"});await m()({dbFullName:"datasquirel",tableName:"invitations",data:{inviting_user_id:a.id,invited_user_email:t.email_address,database_access:t.database_access,priviledge:t.priviledge,db_tables_data:t.db_tables}});let r=await d()({to:t.email_address,subject:`${a.first_name} ${a.last_name} Invited you`,text:`${a.first_name} ${a.last_name} has invited you to manage a datasquirel account`,html:`
|
||||
<h2>${a.first_name} ${a.last_name} has invited you to manage a datasquirel account.</h2>
|
||||
<a href="${process.env.DSQL_HOST}/create-account?invite=${a.id}&database_access=${t.database_access}&priviledge=${t.priviledge}&email=${t.email_address}">Accept Invitation</a>
|
||||
`});s.json({success:!!r?.accepted,msg:"This is an invitation request"})}}let S=(0,n.M)(t,"default"),g=(0,n.M)(t,"config"),b=new r.PagesAPIRouteModule({definition:{kind:i.A.PAGES_API,page:"/api/addUserUser",pathname:"/api/addUserUser",bundlePath:"",filename:""},userland:t})},79531:(e,s,a)=>{let t=a(29021),r=a(21572).createTransport({host:process.env.DSQL_MAIL_HOST,port:465,secure:!0,auth:{user:process.env.DSQL_MAIL_EMAIL,pass:process.env.DSQL_MAIL_PASSWORD}});e.exports=async function({to:e,subject:s,text:a,html:i,alias:n}){let l;if(!process.env.DSQL_MAIL_HOST||!process.env.DSQL_MAIL_EMAIL||!process.env.DSQL_MAIL_PASSWORD)return null;let d=(n?.match(/support/i),process.env.DSQL_MAIL_EMAIL);if(!t.existsSync("./email/index.html"))return;let u=t.readFileSync("./email/index.html","utf8").replace(/{{email_body}}/,i||"").replace(/{{issue_date}}/,Date().substring(0,24));try{let t={};t.from=`"Datasquirel" <${d}>`,t.sender=d,n&&(t["replyTo "]=d),t.to=e,t.subject=s,t.text=a,t.html=u,l=await r.sendMail(t)}catch(e){console.log("ERROR in handleNodemailer Function =>",e.message)}return l}},6420:(e,s,a)=>{a(81630);let t=a(51348),r=a(72907),i=a(29021);async function n(e,s,a,n){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let l=r(e.cookies.datasquirelAuthKey);if(!l)return null;let d=JSON.parse(l);if(!d.csrf_k||a&&!e.headers["x-csrf-auth"]?.match(RegExp(`${d.csrf_k}`)))return null;let u=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!u)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(a&&!i.existsSync(`${u}/${d.csrf_k}`))return null;if(0==d.verification_status&&!a){let e=await t(`SELECT verification_status FROM users WHERE id='${d.id}'`);e&&e[0]&&1==e[0].verification_status&&s.setHeader("Set-Cookie",["user_refresh=1"])}return d?.date&&Date.now()-d.date>6048e5?null:d}e.exports=n},72907:(e,s,a)=>{let{scryptSync:t,createDecipheriv:r}=a(55511),{Buffer:i}=a(79428);e.exports=e=>{let s=r("aes-192-cbc",t(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),i.alloc(16,0));try{let a=s.update(e,"hex","utf8");return a+=s.final("utf8")}catch(e){return null}}}};var s=require("../../webpack-api-runtime.js");s.C(e);var a=e=>s(s.s=e),t=s.X(0,[4050],()=>a(21110));module.exports=t})();
|
||||
File diff suppressed because one or more lines are too long
@@ -1,265 +1,16 @@
|
||||
"use strict";
|
||||
(() => {
|
||||
var exports = {};
|
||||
exports.id = 9372;
|
||||
exports.ids = [9372];
|
||||
exports.modules = {
|
||||
|
||||
/***/ 6517:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("lodash");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6109:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("sanitize-html");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2261:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("serverless-mysql");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 4300:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("buffer");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2081:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("child_process");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 6113:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("crypto");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 7147:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("fs");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 3685:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("http");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 1017:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = require("path");
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2066:
|
||||
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
||||
|
||||
__webpack_require__.r(__webpack_exports__);
|
||||
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
||||
/* harmony export */ "default": () => (/* binding */ handler)
|
||||
/* harmony export */ });
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2224);
|
||||
/* harmony import */ var _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_0__);
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2163);
|
||||
/* harmony import */ var _functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1__);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6825);
|
||||
/* harmony import */ var _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2__);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5338);
|
||||
/* harmony import */ var _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3__);
|
||||
// @ts-check
|
||||
/**
|
||||
* ==============================================================================
|
||||
* Imports
|
||||
* ==============================================================================
|
||||
*/ const fs = __webpack_require__(7147);
|
||||
const path = __webpack_require__(1017);
|
||||
const { execSync } = __webpack_require__(2081);
|
||||
"use strict";(()=>{var e={};e.id=4436,e.ids=[4436],e.modules={27825:e=>{e.exports=require("lodash")},75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},72583:e=>{e.exports=require("sanitize-html")},9973:e=>{e.exports=require("serverless-mysql")},79428:e=>{e.exports=require("buffer")},79646:e=>{e.exports=require("child_process")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},81630:e=>{e.exports=require("http")},33873:e=>{e.exports=require("path")},13461:(e,a,t)=>{t.r(a),t.d(a,{config:()=>A,default:()=>y,routeModule:()=>b});var l={};t.r(l),t.d(l,{default:()=>R});var r=t(89947),s=t(2706),i=t(96762),d=t(51348),u=t.n(d),n=t(77538),o=t.n(n),p=t(6420),m=t.n(p),f=t(47670),c=t.n(f);let _=t(29021),N=t(33873),{execSync:T}=t(79646);async function R(e,a){if("POST"!==e.method)return a.json({msg:"Failed!"});let l=await m()(e,a,!0);if(!l)return a.json({success:!1,msg:"Unauthorized"});let{dbFullName:r,dbSlug:s,dbId:i}=e.body,d=t(87924),n=t(83434),p=[...n.slice(0,2),...d.fields,...n.slice(2)];d.fields=[...p];try{let e;let t=`${process.env.DSQL_USER_DB_SCHEMA_PATH}/user-${l.id}/main.json`,n=JSON.parse(_.readFileSync(t,"utf8")),p=n.filter(e=>e.dbFullName===r)[0],m=p.tables.filter((a,t)=>{if("users"===a.tableName)return e=t,!0});if(m?.[0]&&"number"==typeof e?p.tables[e]=d:p.tables.push(d),p.childrenDatabases)for(let e=0;e<p.childrenDatabases.length;e++){let a=p.childrenDatabases[e];try{n.filter(e=>e.dbFullName===a.dbFullName)[0].tables=p.tables;let e=await u()("SELECT * FROM user_databases WHERE user_id = ? AND db_full_name = ?",[l.id,a.dbFullName]);await c()({dbFullName:"datasquirel",tableName:"user_database_tables",data:{user_id:l.id,db_id:e[0].id,db_slug:e[0].db_slug,table_name:"Users",table_slug:"users"}})}catch(e){o()({component:"/api/addUsersTableToDatabase/lines-100-115",message:e.message,user:l})}}_.writeFileSync(`${t}`,JSON.stringify(n),"utf8"),await c()({dbFullName:"datasquirel",tableName:"user_database_tables",data:{user_id:l.id,db_id:i,db_slug:s,table_name:"Users",table_slug:"users"}});let f=N.join(process.cwd(),"/shell"),R=r.replace(/[^a-z\_0-9]/g,""),y=T(`node createDbFromSchema.js --user ${l.id} --database ${R}`,{cwd:f});console.log(y.toString()),a.json({success:!0})}catch(e){o()({component:"/api/addUsersTableToDatabase/main-catch-error",message:e.message,user:l}),a.json({success:!1,msg:"Database Files could not be written!"})}}let y=(0,i.M)(l,"default"),A=(0,i.M)(l,"config"),b=new r.PagesAPIRouteModule({definition:{kind:s.A.PAGES_API,page:"/api/addUsersTableToDatabase",pathname:"/api/addUsersTableToDatabase",bundlePath:"",filename:""},userland:l})},77538:(e,a,t)=>{let l=t(29021),{IncomingMessage:r}=t(81630);e.exports=async function({user:e,message:a,component:t,noMail:r,req:s}){let i=new Date,d=(()=>{if(!s)return null;try{let e=s.headers["x-forwarded-for"],a=s.headers["x-real-ip"],t=s.headers["cf-connecting-ip"],l=Array.isArray(e)?e[0]:e?.split(",")[0],r=t||l||a||s.socket.remoteAddress;if(!r)return null;return String(r)}catch(e){return null}})();try{let r=`🚀 SERVER ERROR ===========================
|
||||
Error Message: ${a}
|
||||
Component: ${t}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(r+=`
|
||||
User Id: ${e?.id}
|
||||
User Name: ${e?.first_name} ${e?.last_name}
|
||||
User Email: ${e?.email}`),s?.url&&(r+=`
|
||||
URL: ${s.url}`),s?.body&&(r+=`
|
||||
Request Body: ${JSON.stringify(s.body,null,4)}`),d&&(r+=`
|
||||
IP: ${d}`),r+=`
|
||||
Date: ${i.toDateString()}
|
||||
========================================`,l.existsSync("./.tmp/error.log")||l.writeFileSync("./.tmp/error.log","","utf-8");let u=l.readFileSync("./.tmp/error.log","utf-8");l.writeFileSync("./.tmp/error.log",r),l.appendFileSync("./.tmp/error.log",`
|
||||
|
||||
|
||||
|
||||
|
||||
/** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /** ****************************************************************************** */ /**
|
||||
* API handler
|
||||
* ==============================================================================
|
||||
* @type {import("next").NextApiHandler}
|
||||
*/ async function handler(req, res) {
|
||||
/**
|
||||
* Check method
|
||||
*
|
||||
* @description Check request method and return if invalid
|
||||
*/ if (req.method !== "POST") return res.json({
|
||||
msg: "Failed!"
|
||||
});
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const user = await _functions_backend_userAuth__WEBPACK_IMPORTED_MODULE_2___default()(req, res, true);
|
||||
if (!user) {
|
||||
return res.json({
|
||||
success: false,
|
||||
msg: "Unauthorized"
|
||||
});
|
||||
}
|
||||
/**
|
||||
* User auth
|
||||
*
|
||||
* @description Authenticate user
|
||||
*/ const sanitizedReqBody = req.body;
|
||||
const { dbFullName , dbSlug , dbId } = sanitizedReqBody;
|
||||
const userPreset = __webpack_require__(9258);
|
||||
const defaultFields = __webpack_require__(2439);
|
||||
const finalFields = [
|
||||
...defaultFields.slice(0, 2),
|
||||
...userPreset.fields,
|
||||
...defaultFields.slice(2),
|
||||
];
|
||||
userPreset.fields = [
|
||||
...finalFields
|
||||
];
|
||||
/**
|
||||
* Send Response
|
||||
*
|
||||
* @description Send a boolean response
|
||||
*/ try {
|
||||
/**
|
||||
* Create new user folder and file
|
||||
*
|
||||
* @description Create new user folder and file
|
||||
*/ const userSchemaMainFilePath = `${process.env.DSQL_USER_DB_SCHEMA_PATH}/user-${user.id}/main.json`;
|
||||
/** @type {import("@/package-shared/types").DSQL_DatabaseSchemaType[]} */ let userSchemaData = JSON.parse(fs.readFileSync(userSchemaMainFilePath, "utf8"));
|
||||
let targetDatabase = userSchemaData.filter((db)=>db.dbFullName === dbFullName)[0];
|
||||
/** @type {number | undefined} */ let existingTableIndex;
|
||||
let existingTable = targetDatabase.tables.filter((table, index)=>{
|
||||
if (table.tableName === "users") {
|
||||
existingTableIndex = index;
|
||||
return true;
|
||||
}
|
||||
});
|
||||
// if (typeof existingTableIndex !== "number")
|
||||
// return res.json({ success: false });
|
||||
if (existingTable?.[0] && typeof existingTableIndex == "number") {
|
||||
targetDatabase.tables[existingTableIndex] = userPreset;
|
||||
} else {
|
||||
targetDatabase.tables.push(userPreset);
|
||||
}
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
/**
|
||||
* Check Children Databases
|
||||
*
|
||||
* @description Check Children Databases
|
||||
*/ if (targetDatabase.childrenDatabases) {
|
||||
for(let i = 0; i < targetDatabase.childrenDatabases.length; i++){
|
||||
const childDb = targetDatabase.childrenDatabases[i];
|
||||
try {
|
||||
const targetChild = userSchemaData.filter((db)=>db.dbFullName === childDb.dbFullName)[0];
|
||||
targetChild.tables = targetDatabase.tables;
|
||||
const targetDbRecord = await _package_shared_utils_backend_global_db_DB_HANDLER__WEBPACK_IMPORTED_MODULE_0___default()(`SELECT * FROM user_databases WHERE user_id = ? AND db_full_name = ?`, [
|
||||
user.id,
|
||||
childDb.dbFullName
|
||||
]);
|
||||
const newChildTableEntry = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3___default()({
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "user_database_tables",
|
||||
data: {
|
||||
user_id: user.id,
|
||||
db_id: targetDbRecord[0].id,
|
||||
db_slug: targetDbRecord[0].db_slug,
|
||||
table_name: "Users",
|
||||
table_slug: "users"
|
||||
}
|
||||
});
|
||||
} catch (/** @type {any} */ error) {
|
||||
_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1___default()({
|
||||
component: "/api/addUsersTableToDatabase/lines-100-115",
|
||||
message: error.message,
|
||||
user: user
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
fs.writeFileSync(`${userSchemaMainFilePath}`, JSON.stringify(userSchemaData), "utf8");
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
////////////////////////////////////////
|
||||
const newTableEntry = await _package_shared_functions_backend_db_addDbEntry__WEBPACK_IMPORTED_MODULE_3___default()({
|
||||
dbFullName: "datasquirel",
|
||||
tableName: "user_database_tables",
|
||||
data: {
|
||||
user_id: user.id,
|
||||
db_id: dbId,
|
||||
db_slug: dbSlug,
|
||||
table_name: "Users",
|
||||
table_slug: "users"
|
||||
}
|
||||
});
|
||||
////////////////////////////////////////
|
||||
const targetPath = path.join(process.cwd(), "/shell");
|
||||
const sanitizedDbName = dbFullName.replace(/[^a-z\_0-9]/g, "");
|
||||
const dbShellUpdate = execSync(`node createDbFromSchema.js --user ${user.id} --database ${sanitizedDbName}`, {
|
||||
cwd: targetPath
|
||||
});
|
||||
console.log(dbShellUpdate.toString());
|
||||
////////////////////////////////////////
|
||||
res.json({
|
||||
success: true
|
||||
});
|
||||
////////////////////////////////////////
|
||||
} catch (/** @type {any} */ error1) {
|
||||
////////////////////////////////////////
|
||||
_functions_backend_serverError__WEBPACK_IMPORTED_MODULE_1___default()({
|
||||
component: "/api/addUsersTableToDatabase/main-catch-error",
|
||||
message: error1.message,
|
||||
user: user
|
||||
});
|
||||
res.json({
|
||||
success: false,
|
||||
msg: "Database Files could not be written!"
|
||||
});
|
||||
////////////////////////////////////////
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/***/ }),
|
||||
|
||||
/***/ 2439:
|
||||
/***/ ((module) => {
|
||||
|
||||
module.exports = JSON.parse('[{"fieldName":"id","dataType":"BIGINT","notNullValue":true,"primaryKey":true,"autoIncrement":true},{"fieldName":"uuid","dataType":"UUID","defaultValueLiteral":"UUID()"},{"fieldName":"date_created","dataType":"VARCHAR(250)","nullValue":true},{"fieldName":"date_created_code","dataType":"BIGINT","nullValue":true},{"fieldName":"date_created_timestamp","dataType":"TIMESTAMP","defaultValueLiteral":"CURRENT_TIMESTAMP"},{"fieldName":"date_updated","dataType":"VARCHAR(250)","nullValue":true},{"fieldName":"date_updated_code","dataType":"BIGINT","nullValue":true},{"fieldName":"date_updated_timestamp","dataType":"TIMESTAMP","defaultValueLiteral":"CURRENT_TIMESTAMP","onUpdateLiteral":"CURRENT_TIMESTAMP"}]');
|
||||
|
||||
/***/ })
|
||||
|
||||
};
|
||||
;
|
||||
|
||||
// load runtime
|
||||
var __webpack_require__ = require("../../webpack-api-runtime.js");
|
||||
__webpack_require__.C(exports);
|
||||
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
||||
var __webpack_exports__ = __webpack_require__.X(0, [2224,2163,6825,3017,3403,7547,5886,5338,9258], () => (__webpack_exec__(2066)));
|
||||
module.exports = __webpack_exports__;
|
||||
|
||||
})();
|
||||
${u}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},6420:(e,a,t)=>{t(81630);let l=t(51348),r=t(72907),s=t(29021);async function i(e,a,t,i){if(!e.cookies?.datasquirelAuthKey?.match(/./))return null;let d=r(e.cookies.datasquirelAuthKey);if(!d)return null;let u=JSON.parse(d);if(!u.csrf_k||t&&!e.headers["x-csrf-auth"]?.match(RegExp(`${u.csrf_k}`)))return null;let n=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!n)return console.log("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable."),null;if(t&&!s.existsSync(`${n}/${u.csrf_k}`))return null;if(0==u.verification_status&&!t){let e=await l(`SELECT verification_status FROM users WHERE id='${u.id}'`);e&&e[0]&&1==e[0].verification_status&&a.setHeader("Set-Cookie",["user_refresh=1"])}return u?.date&&Date.now()-u.date>6048e5?null:u}e.exports=i},72907:(e,a,t)=>{let{scryptSync:l,createDecipheriv:r}=t(55511),{Buffer:s}=t(79428);e.exports=e=>{let a=r("aes-192-cbc",l(process.env.DSQL_ENCRYPTION_PASSWORD||"",process.env.DSQL_ENCRYPTION_SALT||"",24),s.alloc(16,0));try{let t=a.update(e,"hex","utf8");return t+=a.final("utf8")}catch(e){return null}}},83434:e=>{e.exports=JSON.parse('[{"fieldName":"id","dataType":"BIGINT","notNullValue":true,"primaryKey":true,"autoIncrement":true},{"fieldName":"uuid","dataType":"UUID","defaultValueLiteral":"UUID()"},{"fieldName":"date_created","dataType":"VARCHAR(250)","nullValue":true},{"fieldName":"date_created_code","dataType":"BIGINT","nullValue":true},{"fieldName":"date_created_timestamp","dataType":"TIMESTAMP","defaultValueLiteral":"CURRENT_TIMESTAMP"},{"fieldName":"date_updated","dataType":"VARCHAR(250)","nullValue":true},{"fieldName":"date_updated_code","dataType":"BIGINT","nullValue":true},{"fieldName":"date_updated_timestamp","dataType":"TIMESTAMP","defaultValueLiteral":"CURRENT_TIMESTAMP","onUpdateLiteral":"CURRENT_TIMESTAMP"}]')},87924:e=>{e.exports=JSON.parse('{"tableName":"users","tableFullName":"Users","fields":[{"fieldName":"first_name","dataType":"VARCHAR(100)","notNullValue":true},{"fieldName":"last_name","dataType":"VARCHAR(100)","notNullValue":true},{"fieldName":"email","dataType":"VARCHAR(200)","notNullValue":true},{"fieldName":"phone","dataType":"VARCHAR(50)"},{"fieldName":"user_type","dataType":"VARCHAR(20)","defaultValue":"default"},{"fieldName":"username","dataType":"VARCHAR(100)","nullValue":true},{"fieldName":"password","dataType":"VARCHAR(250)","notNullValue":true},{"fieldName":"image","dataType":"VARCHAR(250)","defaultValue":"/images/user-preset.png"},{"fieldName":"image_thumbnail","dataType":"VARCHAR(250)","defaultValue":"/images/user-preset-thumbnail.png"},{"fieldName":"address","dataType":"VARCHAR(255)"},{"fieldName":"city","dataType":"VARCHAR(50)"},{"fieldName":"state","dataType":"VARCHAR(50)"},{"fieldName":"country","dataType":"VARCHAR(50)"},{"fieldName":"zip_code","dataType":"VARCHAR(50)"},{"fieldName":"social_login","dataType":"TINYINT","defaultValue":"0"},{"fieldName":"social_platform","dataType":"VARCHAR(50)","nullValue":true},{"fieldName":"social_id","dataType":"VARCHAR(250)","nullValue":true},{"fieldName":"more_user_data","dataType":"BIGINT","defaultValue":"0"},{"fieldName":"verification_status","dataType":"TINYINT","defaultValue":"0"},{"fieldName":"temp_login_code","dataType":"VARCHAR(50)","nullValue":true}]}')}};var a=require("../../webpack-api-runtime.js");a.C(e);var t=e=>a(a.s=e),l=a.X(0,[4050],()=>t(13461));module.exports=l})();
|
||||
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user