diff --git a/.gitignore b/.gitignore
index 7c9138808..c2727221d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -27,4 +27,5 @@ yarn-error.log*
.idea
.env.example
-.cosine
\ No newline at end of file
+.cosine
+bun.lockb
\ No newline at end of file
diff --git a/.husky/pre-commit b/.husky/pre-commit
index 5a182ef10..d24fdfc60 100755
--- a/.husky/pre-commit
+++ b/.husky/pre-commit
@@ -1,4 +1,4 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"
-yarn lint-staged
+npx lint-staged
diff --git a/.nvmrc b/.nvmrc
index dac255d28..91f7588a1 100644
--- a/.nvmrc
+++ b/.nvmrc
@@ -1 +1 @@
-v16.15.1
+v18.20.0
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 312efbb26..25e417a45 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,4 +1,10 @@
{
"typescript.tsdk": "node_modules/typescript/lib",
- "svg.preview.background": "black"
+ "svg.preview.background": "black",
+ "cSpell.words": [
+ "offchain"
+ ],
+ "editor.autoClosingBrackets": "always",
+ "editor.formatOnSave": true,
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
}
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index c0b790fee..0108d1c04 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Sending XTZ directly to DAO address
- Delegating DAO's XTZ to baker
- Changing DAO configuration parameters
+- Added Searchbar on Treasury Page
## [1.0.6] - 2022-01-05
### Added
@@ -72,4 +73,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Treasury page style
### Breaking changes
-- Upgraded BaseDAO contracts to [v0.4](https://github.com/tezos-commons/baseDAO/tree/b3aa7886950d4f1eb65816ed726ce69e77e14472) - DAOs created prior to this upgrade are deprecated
\ No newline at end of file
+- Upgraded BaseDAO contracts to [v0.4](https://github.com/tezos-commons/baseDAO/tree/b3aa7886950d4f1eb65816ed726ce69e77e14472) - DAOs created prior to this upgrade are deprecated
diff --git a/package.json b/package.json
index 1411b9f6a..28ddd03c2 100644
--- a/package.json
+++ b/package.json
@@ -43,6 +43,7 @@
"blockies-ts": "^1.0.0",
"crypto-browserify": "^3.12.0",
"dayjs": "^1.10.4",
+ "export-to-csv": "^1.2.4",
"formik": "^2.2.6",
"formik-material-ui": "^3.0.1",
"formik-material-ui-lab": "^0.0.8",
@@ -92,15 +93,15 @@
"@types/react-html-parser": "^2.0.2",
"@types/react-router-dom": "^5.1.6",
"@types/yup": "^0.29.11",
- "@typescript-eslint/eslint-plugin": "^4.18.0",
- "@typescript-eslint/parser": "^4.18.0",
+ "@typescript-eslint/eslint-plugin": "^6.21.0",
+ "@typescript-eslint/parser": "^6.21.0",
"eslint": "^7.22.0",
"eslint-config-prettier": "^8.1.0",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-react": "^7.21.5",
"eslint-plugin-react-hooks": "^4.2.0",
- "husky": "^8.0.1",
- "lint-staged": "^13.0.3",
+ "husky": "8.0.3",
+ "lint-staged": "15.2.2",
"prettier": "^2.2.0",
"source-map-explorer": "2.5.2",
"typescript": "^5.0.4"
@@ -133,7 +134,7 @@
},
"lint-staged": {
"src/**/*.{js,jsx,ts,tsx}": [
- "yarn lint:check"
+ "npm run lint:check"
]
}
}
diff --git a/src/assets/img/download_csv.svg b/src/assets/img/download_csv.svg
new file mode 100644
index 000000000..f0203c1ad
--- /dev/null
+++ b/src/assets/img/download_csv.svg
@@ -0,0 +1,3 @@
+
diff --git a/src/index.tsx b/src/index.tsx
index e55d28a0a..d3dc348b9 100644
--- a/src/index.tsx
+++ b/src/index.tsx
@@ -9,6 +9,7 @@ import dayjs from "dayjs"
dayjs.extend(localizedFormat)
+// eslint-disable-next-line react/no-deprecated
ReactDOM.render(
diff --git a/src/models/Choice.ts b/src/models/Choice.ts
index 5af12cc85..e012039e2 100644
--- a/src/models/Choice.ts
+++ b/src/models/Choice.ts
@@ -9,4 +9,8 @@ export interface Choice {
export interface WalletAddress {
address: string
balanceAtReferenceBlock: string
+ cidLink: string
+ choiceId: string
+ payloadBytes: string
+ signature: string
}
diff --git a/src/models/Polls.ts b/src/models/Polls.ts
index 0d16afa84..800ca70f3 100644
--- a/src/models/Polls.ts
+++ b/src/models/Polls.ts
@@ -25,6 +25,8 @@ export interface Poll {
endTimeHours?: number | null
endTimeDays?: number | null
isXTZ: boolean
+ id?: string
+ getStatus?: any
}
export interface Vote {
diff --git a/src/modules/explorer/components/BatchBar.tsx b/src/modules/explorer/components/BatchBar.tsx
index ad03453a4..8e830fdc8 100644
--- a/src/modules/explorer/components/BatchBar.tsx
+++ b/src/modules/explorer/components/BatchBar.tsx
@@ -1,7 +1,7 @@
import React from "react"
import { Grid, Paper, styled, Switch, Typography } from "@material-ui/core"
import { ProposalFormInput } from "./ProposalFormInput"
-
+import AddIcon from "@mui/icons-material/Add"
const BatchBarContainer = styled(Grid)(({ theme }) => ({
height: 47,
alignItems: "start",
@@ -41,8 +41,6 @@ const TransferActive = styled(Grid)({
const AddButton = styled(Paper)({
"marginLeft": 12,
- "minHeight": 31,
- "minWidth": 31,
"textAlign": "center",
"padding": 0,
"background": "inherit",
@@ -90,13 +88,13 @@ export const BatchBar = ({ isBatch, handleIsBatchChange, onClickAdd, items, acti
item
key={index}
onClick={() => setActiveItem(index)}
- style={Number(index + 1) === activeItem ? { background: "#81FEB7" } : { background: "inherit" }}
+ style={Number(index + 1) === activeItem ? { background: "#24282D" } : { background: "inherit" }}
>
@@ -106,7 +104,10 @@ export const BatchBar = ({ isBatch, handleIsBatchChange, onClickAdd, items, acti
)
})}
- +
+
+ {" "}
+ {" "}
+
) : null}
diff --git a/src/modules/explorer/components/Dropdown.tsx b/src/modules/explorer/components/Dropdown.tsx
index 856209f6e..e40b7cd57 100644
--- a/src/modules/explorer/components/Dropdown.tsx
+++ b/src/modules/explorer/components/Dropdown.tsx
@@ -5,6 +5,7 @@ interface DropdownProps extends SelectProps {
value?: string | undefined
onSelected?: (item: string | undefined) => void
isFirst?: boolean
+ isFilter?: boolean
}
const useStyles = makeStyles((theme: Theme) => ({
@@ -24,17 +25,29 @@ const useStyles = makeStyles((theme: Theme) => ({
minHeight: 24
},
option: {
- "padding": 8,
+ "padding": 12,
"fontFamily": "Roboto Flex",
"cursor": "pointer",
"text-transform": "capitalize",
"&:hover": {
background: "rgba(129, 254, 183, .4)"
}
+ },
+ selectFilter: {
+ "backgroundColor": "#2F3438",
+ "padding": 12,
+ "borderRadius": 8,
+ "paddingRight": "36px !important",
+ "&:focus": {
+ backgroundColor: "#2F3438",
+ padding: 12,
+ borderRadius: 8,
+ paddingRight: 36
+ }
}
}))
-export const Dropdown: React.FC = ({ options, value, onSelected }) => {
+export const Dropdown: React.FC = ({ options, value, onSelected, isFilter = false }) => {
const classes = useStyles()
const [selected, setSelected] = useState(value)
@@ -49,11 +62,11 @@ export const Dropdown: React.FC = ({ options, value, onSelected }
return (