diff --git a/client/package-lock.json b/client/package-lock.json
index 41a7747c..316ab27d 100644
--- a/client/package-lock.json
+++ b/client/package-lock.json
@@ -29,6 +29,7 @@
"react-input-mask": "^2.0.4",
"react-jss": "^10.8.2",
"react-loader": "^2.4.7",
+ "react-modal": "^3.16.1",
"react-quill": "^2.0.0",
"react-router-dom": "^6.18.0",
"react-select": "^5.2.2",
@@ -8103,6 +8104,11 @@
"url": "https://github.com/sindresorhus/execa?sponsor=1"
}
},
+ "node_modules/exenv": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz",
+ "integrity": "sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw=="
+ },
"node_modules/exit": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
@@ -14515,6 +14521,11 @@
"react": ">=16.8.6"
}
},
+ "node_modules/react-lifecycles-compat": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
+ "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA=="
+ },
"node_modules/react-loader": {
"version": "2.4.7",
"license": "MIT",
@@ -14528,6 +14539,24 @@
"react-dom": "^0.14.0 || ^15.0.0 || ^16.0.0"
}
},
+ "node_modules/react-modal": {
+ "version": "3.16.1",
+ "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz",
+ "integrity": "sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==",
+ "dependencies": {
+ "exenv": "^1.2.0",
+ "prop-types": "^15.7.2",
+ "react-lifecycles-compat": "^3.0.0",
+ "warning": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "peerDependencies": {
+ "react": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18",
+ "react-dom": "^0.14.0 || ^15.0.0 || ^16 || ^17 || ^18"
+ }
+ },
"node_modules/react-onclickoutside": {
"version": "6.13.0",
"resolved": "https://registry.npmjs.org/react-onclickoutside/-/react-onclickoutside-6.13.0.tgz",
@@ -24425,6 +24454,11 @@
"strip-final-newline": "^2.0.0"
}
},
+ "exenv": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz",
+ "integrity": "sha512-Z+ktTxTwv9ILfgKCk32OX3n/doe+OcLTRtqK9pcL+JsP3J1/VW8Uvl4ZjLlKqeW4rzK4oesDOGMEMRIZqtP4Iw=="
+ },
"exit": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
@@ -28466,6 +28500,11 @@
"tiny-warning": "^1.0.2"
}
},
+ "react-lifecycles-compat": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
+ "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA=="
+ },
"react-loader": {
"version": "2.4.7",
"requires": {
@@ -28474,6 +28513,17 @@
"spin.js": "2.x"
}
},
+ "react-modal": {
+ "version": "3.16.1",
+ "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.16.1.tgz",
+ "integrity": "sha512-VStHgI3BVcGo7OXczvnJN7yT2TWHJPDXZWyI/a0ssFNhGZWsPmB8cF0z33ewDXq4VfYMO1vXgiv/g8Nj9NDyWg==",
+ "requires": {
+ "exenv": "^1.2.0",
+ "prop-types": "^15.7.2",
+ "react-lifecycles-compat": "^3.0.0",
+ "warning": "^4.0.3"
+ }
+ },
"react-onclickoutside": {
"version": "6.13.0",
"resolved": "https://registry.npmjs.org/react-onclickoutside/-/react-onclickoutside-6.13.0.tgz",
diff --git a/client/package.json b/client/package.json
index f5af8ec1..bc4c467c 100644
--- a/client/package.json
+++ b/client/package.json
@@ -50,6 +50,7 @@
"react-input-mask": "^2.0.4",
"react-jss": "^10.8.2",
"react-loader": "^2.4.7",
+ "react-modal": "^3.16.1",
"react-quill": "^2.0.0",
"react-router-dom": "^6.18.0",
"react-select": "^5.2.2",
diff --git a/client/src/components/Checklist/ChecklistModal.js b/client/src/components/Checklist/ChecklistModal.js
index 0517e2db..2e7ea291 100644
--- a/client/src/components/Checklist/ChecklistModal.js
+++ b/client/src/components/Checklist/ChecklistModal.js
@@ -1,19 +1,78 @@
import React from "react";
-import ModalDialog from "../UI/AriaModal/ModalDialog";
+import { createUseStyles } from "react-jss";
+import Modal from "react-modal";
import PropTypes from "prop-types";
import ChecklistContent from "./ChecklistContent";
+import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
+import { faX } from "@fortawesome/free-solid-svg-icons";
+
+import "./ChecklistModal.css";
+
+const useStyles = createUseStyles({
+ modalActions: {
+ display: "flex",
+ justifyContent: "flex-end",
+ margin: "42px auto"
+ },
+ close: {
+ display: "flex",
+ justifyContent: "flex-end",
+ border: "0 solid white",
+ backgroundColor: "transparent",
+ "&:hover": {
+ cursor: "pointer"
+ }
+ }
+});
+
+const modalStyleDefaultOverrides = {
+ overlay: {
+ zIndex: "999",
+ position: "fixed",
+ width: "100vw",
+ height: "100vh",
+ display: "flex",
+ flexDirection: "column",
+ justifyContent: "center",
+ alignItems: "center",
+ backgroundColor: "rgba(255, 255, 255, 0.7)",
+ fontSize: "1rem",
+ fontWeight: "normal"
+ },
+ content: {
+ maxWidth: "90vw",
+ minWidth: "40vw",
+ padding: "1rem",
+ position: "relative",
+ display: "flex",
+ flexDirection: "column",
+ alignItems: "stretch",
+ border: "1px solid #d8dce3",
+ borderRadius: "0",
+ boxSizing: "border-box",
+ boxShadow: "0px 5px 10px rgba(0, 46, 109, 0.5)",
+ backgroundColor: "rgba(255, 255, 255, 1)"
+ }
+};
const ChecklistModal = ({ checklistModalOpen, toggleChecklistModal }) => {
- if (!checklistModalOpen) return null;
+ const classes = useStyles();
return (
-
handleSort(header.id)}
+ key={header.id}
+ className={
+ header.id === "contextMenu"
+ ? `${classes.td}`
+ : `${classes.td} ${classes.theadLabel}`
+ }
+ onClick={
+ header.id == "contextMenu"
+ ? null
+ : () => handleSort(header.id)
+ }
>
{orderBy === header.id ? (
@@ -601,6 +633,9 @@ const ProjectsPage = ({ account, contentContainerRef }) => {
handleCopyModalOpen={handleCopyModalOpen}
handleDeleteModalOpen={handleDeleteModalOpen}
handleSnapshotModalOpen={handleSnapshotModalOpen}
+ handleRenameSnapshotModalOpen={
+ handleRenameSnapshotModalOpen
+ }
handleHide={handleHide}
handleCheckboxChange={handleCheckboxChange}
checkedProjects={checkedProjects}
@@ -629,18 +664,21 @@ const ProjectsPage = ({ account, contentContainerRef }) => {
onClose={handleCopyModalClose}
selectedProjectName={selectedProjectName}
/>
-
diff --git a/client/src/components/Projects/RenameSnapshotModal.js b/client/src/components/Projects/RenameSnapshotModal.js
new file mode 100644
index 00000000..17817459
--- /dev/null
+++ b/client/src/components/Projects/RenameSnapshotModal.js
@@ -0,0 +1,77 @@
+import React, { useState } from "react";
+import PropTypes from "prop-types";
+import { createUseStyles, useTheme } from "react-jss";
+import Button from "../Button/Button";
+import ModalDialog from "../UI/AriaModal/ModalDialog";
+
+const useStyles = createUseStyles(theme => ({
+ buttonFlexBox: {
+ display: "flex",
+ flexDirection: "row",
+ justifyContent: "center",
+ margin: 0
+ },
+ heading1: theme.typography.heading1,
+ buttonColor: {
+ backgroundColor: "#eaeff2"
+ }
+}));
+
+export default function RenameSnapshotModal({
+ mounted,
+ onClose,
+ selectedProjectName
+}) {
+ const theme = useTheme();
+ const classes = useStyles({ theme });
+ const [snapshotProjectName, setSnapshotProjectName] = useState(
+ `${selectedProjectName}`
+ );
+
+ return (
+
+ Rename Snapshot?
+
+
+ What would you like to rename your snapshot to?
+
+
+ setSnapshotProjectName(e.target.value)}
+ />
+
+
+
+
+
+
@@ -7515,6 +7518,641 @@
See the License for the specific language governing permissions and
limitations under the License.
+-->
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+No code analysis report available yet + +
+
+
+
+
+
+
+
+
+
+
+Migration reportDatabase version: 20240104.1705 1 script migrated Execution Time: 00:00.088s
+
+Database version: 20240104.1705 1 script migrated Execution Time: 00:00.088s
+You can read more about the migrate report here
+
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Change reporting is not included in your current Flyway license. Upgrade to Flyway Enterprise to gain access. + + +
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Drift reporting is not included in your current Flyway license. Upgrade to Flyway Enterprise to gain access. + + +
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Dry Run is not included in your current Flyway license. Upgrade to Flyway Teams or Enterprise to gain access. + + +
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+No code analysis report available yet + +
+
+
+
+
+
+
+
+
+
+
+Migration reportDatabase version: 20240104.1714 1 script migrated Execution Time: 00:00.081s
+
+Database version: 20240104.1714 1 script migrated Execution Time: 00:00.081s
+You can read more about the migrate report here
+
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Change reporting is not included in your current Flyway license. Upgrade to Flyway Enterprise to gain access. + + +
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Drift reporting is not included in your current Flyway license. Upgrade to Flyway Enterprise to gain access. + + +
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Dry Run is not included in your current Flyway license. Upgrade to Flyway Teams or Enterprise to gain access. + + +
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+No code analysis report available yet + +
+
+
+
+
+
+
+
+
+
+Migration reportDatabase version: 20240104.1714 5 scripts migrated Execution Time: 00:01.046s
+
+Database version: 20240104.1714 5 scripts migrated Execution Time: 00:01.046s
+You can read more about the migrate report here
+
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Change reporting is not included in your current Flyway license. Upgrade to Flyway Enterprise to gain access. + + +
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Drift reporting is not included in your current Flyway license. Upgrade to Flyway Enterprise to gain access. + + +
+
+
+
+
+
+
+
+
+
+ Explore how to get this report and what it can do for you.
+
+
+
+
+
+Dry Run is not included in your current Flyway license. Upgrade to Flyway Teams or Enterprise to gain access. + + +
+
diff --git a/server/report.json b/server/report.json
index 639eb084..fe03c5a3 100644
--- a/server/report.json
+++ b/server/report.json
@@ -4237,6 +4237,110 @@
"operation": "migrate",
"exception": null,
"licenseFailed": false
+ },
+ {
+ "initialSchemaVersion": "20231121.1647",
+ "targetSchemaVersion": "20240104.1705",
+ "schemaName": "",
+ "migrations": [
+ {
+ "category": "Versioned",
+ "version": "20240104.1705",
+ "description": "add-project-rename-sproc",
+ "type": "SQL",
+ "filepath": "C:\\git\\hackforla\\tdm-calculator\\server\\db\\migration\\V20240104.1705__add-project-rename-sproc.sql",
+ "executionTime": 88
+ }
+ ],
+ "migrationsExecuted": 1,
+ "success": true,
+ "flywayVersion": "9.22.3",
+ "database": "tdmdev",
+ "warnings": [],
+ "timestamp": "2024-01-04T17:08:36.474312200",
+ "operation": "migrate",
+ "exception": null,
+ "licenseFailed": false
+ },
+ {
+ "initialSchemaVersion": "20240104.1705",
+ "targetSchemaVersion": "20240104.1714",
+ "schemaName": "",
+ "migrations": [
+ {
+ "category": "Versioned",
+ "version": "20240104.1714",
+ "description": "add about table to db 1531",
+ "type": "SQL",
+ "filepath": "C:\\git\\hackforla\\tdm-calculator\\server\\db\\migration\\V20240104.1714__add_about_table_to_db_1531.sql",
+ "executionTime": 81
+ }
+ ],
+ "migrationsExecuted": 1,
+ "success": true,
+ "flywayVersion": "9.22.3",
+ "database": "tdmdev",
+ "warnings": [],
+ "timestamp": "2024-01-04T17:20:42.092964500",
+ "operation": "migrate",
+ "exception": null,
+ "licenseFailed": false
+ },
+ {
+ "initialSchemaVersion": "20231003.1432",
+ "targetSchemaVersion": "20240104.1714",
+ "schemaName": "",
+ "migrations": [
+ {
+ "category": "Versioned",
+ "version": "20231102.0946",
+ "description": "modify project snpshot sproc 1437",
+ "type": "SQL",
+ "filepath": "C:\\git\\hackforla\\tdm-calculator\\server\\db\\migration\\V20231102.0946__modify_project_snpshot_sproc_1437.sql",
+ "executionTime": 190
+ },
+ {
+ "category": "Versioned",
+ "version": "20231120.0924",
+ "description": "rename publiccomment to feedback 670",
+ "type": "SQL",
+ "filepath": "C:\\git\\hackforla\\tdm-calculator\\server\\db\\migration\\V20231120.0924__rename_publiccomment_to_feedback_670.sql",
+ "executionTime": 742
+ },
+ {
+ "category": "Versioned",
+ "version": "20231121.1647",
+ "description": "disable car share parking when no parking provided 1434",
+ "type": "SQL",
+ "filepath": "C:\\git\\hackforla\\tdm-calculator\\server\\db\\migration\\V20231121.1647__disable_car_share_parking_when_no_parking_provided_1434.sql",
+ "executionTime": 71
+ },
+ {
+ "category": "Versioned",
+ "version": "20240104.1705",
+ "description": "add-project-rename-sproc",
+ "type": "SQL",
+ "filepath": "C:\\git\\hackforla\\tdm-calculator\\server\\db\\migration\\V20240104.1705__add-project-rename-sproc.sql",
+ "executionTime": 17
+ },
+ {
+ "category": "Versioned",
+ "version": "20240104.1714",
+ "description": "add about table to db 1531",
+ "type": "SQL",
+ "filepath": "C:\\git\\hackforla\\tdm-calculator\\server\\db\\migration\\V20240104.1714__add_about_table_to_db_1531.sql",
+ "executionTime": 26
+ }
+ ],
+ "migrationsExecuted": 5,
+ "success": true,
+ "flywayVersion": "9.22.3",
+ "database": "tdmdev",
+ "warnings": [],
+ "timestamp": "2024-01-04T17:21:17.944758900",
+ "operation": "migrate",
+ "exception": null,
+ "licenseFailed": false
}
]
}
\ No newline at end of file
|