diff --git a/app/client/package.json b/app/client/package.json index 02f95af730..347bbb8a6a 100644 --- a/app/client/package.json +++ b/app/client/package.json @@ -40,6 +40,7 @@ "@types/react-table": "^7.0.13", "@types/styled-components": "^5.1.3", "@types/tinycolor2": "^1.4.2", + "@types/zipcelx": "^1.5.0", "@uppy/core": "^1.16.0", "@uppy/dashboard": "^1.16.0", "@uppy/file-input": "^1.4.22", @@ -144,7 +145,8 @@ "typescript": "^4.1.3", "unescape-js": "^1.1.4", "url-search-params-polyfill": "^8.0.0", - "worker-loader": "^3.0.2" + "worker-loader": "^3.0.2", + "zipcelx": "^1.6.2" }, "scripts": { "analyze": "source-map-explorer 'build/static/js/*.js'", diff --git a/app/client/src/assets/icons/control/download-data-icon.svg b/app/client/src/assets/icons/control/download-data-icon.svg new file mode 100644 index 0000000000..2045fa1fb3 --- /dev/null +++ b/app/client/src/assets/icons/control/download-data-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/app/client/src/assets/icons/control/download-table.svg b/app/client/src/assets/icons/control/download-table.svg deleted file mode 100755 index 129ee6b5ad..0000000000 --- a/app/client/src/assets/icons/control/download-table.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/client/src/assets/icons/control/filter-icon.svg b/app/client/src/assets/icons/control/filter-icon.svg old mode 100755 new mode 100644 index 1723d3efe8..e5a827016e --- a/app/client/src/assets/icons/control/filter-icon.svg +++ b/app/client/src/assets/icons/control/filter-icon.svg @@ -1 +1,3 @@ - \ No newline at end of file + + + diff --git a/app/client/src/components/designSystems/appsmith/SearchComponent.tsx b/app/client/src/components/designSystems/appsmith/SearchComponent.tsx index df90ccb1a4..5795ba92fa 100644 --- a/app/client/src/components/designSystems/appsmith/SearchComponent.tsx +++ b/app/client/src/components/designSystems/appsmith/SearchComponent.tsx @@ -2,6 +2,7 @@ import React from "react"; import styled from "styled-components"; import { InputGroup } from "@blueprintjs/core"; import { debounce } from "lodash"; +import { Colors } from "constants/Colors"; interface SearchProps { onSearch: (value: any) => void; @@ -13,9 +14,12 @@ const SearchInputWrapper = styled(InputGroup)` &&& input { box-shadow: none; font-size: 12px; + color: ${Colors.SILVER_CHALICE}; } &&& svg { - opacity: 0.6; + path { + fill: ${Colors.SILVER_CHALICE}; + } } margin: 5px 16px; width: 250px; diff --git a/app/client/src/components/designSystems/appsmith/TableComponent/TableAction.tsx b/app/client/src/components/designSystems/appsmith/TableComponent/TableAction.tsx new file mode 100644 index 0000000000..e3c1723f6d --- /dev/null +++ b/app/client/src/components/designSystems/appsmith/TableComponent/TableAction.tsx @@ -0,0 +1,64 @@ +import React, { useCallback } from "react"; +import { IconWrapper } from "constants/IconConstants"; +import { Colors } from "constants/Colors"; +import styled from "styled-components"; + +interface TableActionProps { + selected: boolean; + selectMenu: (selected: boolean) => void; + className: string; + title: string; + children: React.ReactNode; + icon?: React.ReactNode; +} + +export const TableIconWrapper = styled.div<{ + selected?: boolean; + disabled?: boolean; +}>` + background: ${(props) => (props.selected ? Colors.Gallery : "transparent")}; + height: 38px; + display: flex; + align-items: center; + justify-content: center; + opacity: ${(props) => (props.disabled ? 0.6 : 1)}; + cursor: ${(props) => !props.disabled && "pointer"}; + color: ${(props) => (props.selected ? Colors.CODE_GRAY : Colors.GRAY)}; + .action-title { + margin-left: 4px; + } + position: relative; + margin-left: 5px; + padding: 0 5px; + &:hover { + background: ${Colors.ATHENS_GRAY}; + } +`; + +function TableAction(props: TableActionProps) { + const handleIconClick = useCallback( + (e: React.MouseEvent) => { + props.selectMenu(!props.selected); + e.stopPropagation(); + }, + [props.selected], + ); + return ( + + + {props.children} + + {props.title} + + ); +} + +export default TableAction; diff --git a/app/client/src/components/designSystems/appsmith/TableComponent/TableActionIcon.tsx b/app/client/src/components/designSystems/appsmith/TableComponent/TableActionIcon.tsx index d59cdacf23..37b1dac601 100644 --- a/app/client/src/components/designSystems/appsmith/TableComponent/TableActionIcon.tsx +++ b/app/client/src/components/designSystems/appsmith/TableComponent/TableActionIcon.tsx @@ -34,13 +34,12 @@ function TableActionIcon(props: TableActionIconProps) { selected={props.selected} > {props.children} - {props.icon ? props.icon : null} ); diff --git a/app/client/src/components/designSystems/appsmith/TableComponent/TableDataDownload.tsx b/app/client/src/components/designSystems/appsmith/TableComponent/TableDataDownload.tsx index 1a41a1d277..bd195b1c2f 100644 --- a/app/client/src/components/designSystems/appsmith/TableComponent/TableDataDownload.tsx +++ b/app/client/src/components/designSystems/appsmith/TableComponent/TableDataDownload.tsx @@ -1,18 +1,84 @@ import React from "react"; +import { + Popover, + Classes, + PopoverInteractionKind, + Position, +} from "@blueprintjs/core"; import { IconWrapper } from "constants/IconConstants"; import { Colors } from "constants/Colors"; -import { ReactComponent as DownloadIcon } from "assets/icons/control/download-table.svg"; +import { ReactComponent as DownloadIcon } from "assets/icons/control/download-data-icon.svg"; import { ReactTableColumnProps } from "components/designSystems/appsmith/TableComponent/Constants"; -import { TableIconWrapper } from "components/designSystems/appsmith/TableComponent/TableStyledWrappers"; -import TableActionIcon from "components/designSystems/appsmith/TableComponent/TableActionIcon"; +import TableAction, { + TableIconWrapper, +} from "components/designSystems/appsmith/TableComponent/TableAction"; +import styled from "styled-components"; import { transformTableDataIntoCsv } from "./CommonUtilities"; +import zipcelx from "zipcelx"; +const DropDownWrapper = styled.div` + display: flex; + flex-direction: column; + background: white; + z-index: 1; + border-radius: 4px; + box-shadow: 0px 12px 28px -8px rgba(0, 0, 0, 0.1); + padding: 0; +`; + +const OptionWrapper = styled.div` + display: flex; + width: 100%; + justify-content: space-between; + align-items: center; + height: 32px; + box-sizing: border-box; + padding: 6px 12px; + color: ${Colors.CHARCOAL}; + min-width: 200px; + cursor: pointer; + background: ${Colors.WHITE}; + border-left: none; + border-radius: none; + .option-title { + font-weight: 500; + font-size: 13px; + line-height: 20px; + } + &:hover { + background: ${Colors.SEA_SHELL}; + color: ${Colors.CODE_GRAY}; + } +`; interface TableDataDownloadProps { data: Array>; columns: ReactTableColumnProps[]; widgetName: string; } +type FileDownloadType = "CSV" | "EXCEL"; + +type DataCellProps = { + value: string | number; + type: "string" | "number"; +}; + +interface DownloadOptionProps { + label: string; + value: FileDownloadType; +} + +const dowloadOptions: DownloadOptionProps[] = [ + { + label: "Download as CSV", + value: "CSV", + }, + { + label: "Download as Excel", + value: "EXCEL", + }, +]; + const downloadDataAsCSV = (props: { csvData: Array>; fileName: string; @@ -45,9 +111,57 @@ const downloadDataAsCSV = (props: { }; function TableDataDownload(props: TableDataDownloadProps) { - const [selected, toggleButtonClick] = React.useState(false); - const downloadTableData = () => { - toggleButtonClick(true); + const [selected, selectMenu] = React.useState(false); + const downloadFile = (type: string) => { + if (type === "CSV") { + downloadTableDataAsCsv(); + } else if (type === "EXCEL") { + downloadTableDataAsExcel(); + } + }; + const downloadTableDataAsExcel = () => { + const tableData: Array> = []; + const tableHeaders: Array = props.columns + .filter((column: ReactTableColumnProps) => { + return column.metaProperties && !column.metaProperties.isHidden; + }) + .map((column: ReactTableColumnProps) => { + return { + value: column.Header, + type: + column.columnProperties?.columnType === "number" + ? "number" + : "string", + }; + }); + tableData.push(tableHeaders); + for (let row = 0; row < props.data.length; row++) { + const data: { [key: string]: any } = props.data[row]; + const tableRow: Array = []; + for (let colIndex = 0; colIndex < props.columns.length; colIndex++) { + const column = props.columns[colIndex]; + const type = + column.columnProperties?.columnType === "number" + ? "number" + : "string"; + if (column.metaProperties && !column.metaProperties.isHidden) { + tableRow.push({ + value: data[column.accessor], + type: type, + }); + } + } + tableData.push(tableRow); + } + zipcelx({ + filename: props.widgetName, + sheet: { + data: tableData, + }, + }); + }; + const downloadTableDataAsCsv = () => { + selectMenu(true); const csvData = transformTableDataIntoCsv({ columns: props.columns, data: props.data, @@ -56,7 +170,11 @@ function TableDataDownload(props: TableDataDownloadProps) { csvData: csvData, fileName: `${props.widgetName}.csv`, }); - toggleButtonClick(false); + selectMenu(false); + }; + + const handleCloseMenu = () => { + selectMenu(false); }; if (props.columns.length === 0) { @@ -65,20 +183,43 @@ function TableDataDownload(props: TableDataDownloadProps) { + Download ); } return ( - { - downloadTableData(); - }} - selected={selected} - tooltip="Download" + - - + + + + + {dowloadOptions.map((item: DownloadOptionProps, index: number) => { + return ( + { + downloadFile(item.value); + }} + > + {item.label} + + ); + })} + + ); } diff --git a/app/client/src/components/designSystems/appsmith/TableComponent/TableFilters.tsx b/app/client/src/components/designSystems/appsmith/TableComponent/TableFilters.tsx index 145ace9fe5..5347f5235f 100644 --- a/app/client/src/components/designSystems/appsmith/TableComponent/TableFilters.tsx +++ b/app/client/src/components/designSystems/appsmith/TableComponent/TableFilters.tsx @@ -12,7 +12,7 @@ import { ReactComponent as FilterIcon } from "assets/icons/control/filter-icon.s import { TableIconWrapper } from "components/designSystems/appsmith/TableComponent/TableStyledWrappers"; import Button from "components/editorComponents/Button"; import CascadeFields from "components/designSystems/appsmith/TableComponent/CascadeFields"; -import TableActionIcon from "components/designSystems/appsmith/TableComponent/TableActionIcon"; +import TableAction from "components/designSystems/appsmith/TableComponent/TableAction"; import { ReactTableColumnProps, Condition, @@ -173,7 +173,7 @@ function TableFilters(props: TableFilterProps) { position={Position.BOTTOM} usePortal > - - + e.stopPropagation()}> {filters.map((filter: ReactTableFilter, index: number) => { diff --git a/app/client/src/components/designSystems/appsmith/TableComponent/TableHeader.tsx b/app/client/src/components/designSystems/appsmith/TableComponent/TableHeader.tsx index 8c5ae271c1..0c7e5ffc34 100644 --- a/app/client/src/components/designSystems/appsmith/TableComponent/TableHeader.tsx +++ b/app/client/src/components/designSystems/appsmith/TableComponent/TableHeader.tsx @@ -25,11 +25,11 @@ import { EventType } from "constants/AppsmithActionConstants/ActionConstants"; const PageNumberInputWrapper = styled(NumericInput)` &&& input { box-shadow: none; + border: 1px solid ${Colors.DANUBE}; background: linear-gradient(0deg, ${Colors.WHITE}, ${Colors.WHITE}), ${Colors.POLAR}; - border: 1px solid ${Colors.GREEN}; + border-radius: none; box-sizing: border-box; - border-radius: 4px; width: 24px; height: 24px; line-height: 24px; @@ -37,6 +37,9 @@ const PageNumberInputWrapper = styled(NumericInput)` text-align: center; font-size: 12px; } + &&&.bp3-control-group > :only-child { + border-radius: 0; + } margin: 0 8px; `; @@ -173,7 +176,7 @@ function TableHeader(props: TableHeaderProps) { props.updatePageNo(pageNo + 1, EventType.ON_PREV_PAGE); }} > - + Page{" "} @@ -196,7 +199,7 @@ function TableHeader(props: TableHeaderProps) { props.updatePageNo(pageNo + 1, EventType.ON_NEXT_PAGE); }} > - + )} diff --git a/app/client/src/components/designSystems/appsmith/TableComponent/TableStyledWrappers.tsx b/app/client/src/components/designSystems/appsmith/TableComponent/TableStyledWrappers.tsx index e516d2d432..25cc63fcd1 100644 --- a/app/client/src/components/designSystems/appsmith/TableComponent/TableStyledWrappers.tsx +++ b/app/client/src/components/designSystems/appsmith/TableComponent/TableStyledWrappers.tsx @@ -232,18 +232,16 @@ export const PaginationWrapper = styled.div` justify-content: flex-end; align-items: center; padding: 8px 20px; + color: ${Colors.GRAY}; `; export const PaginationItemWrapper = styled.div<{ disabled?: boolean; selected?: boolean; }>` - background: ${(props) => - props.disabled ? Colors.ATHENS_GRAY : Colors.WHITE}; - border: 1px solid - ${(props) => (props.selected ? Colors.GREEN : Colors.GEYSER_LIGHT)}; + background: ${(props) => (props.disabled ? Colors.MERCURY : Colors.WHITE)}; + border: 1px solid ${Colors.ALTO2}; box-sizing: border-box; - border-radius: 4px; width: 24px; height: 24px; display: flex; @@ -477,7 +475,7 @@ export const RowWrapper = styled.div` justify-content: center; font-size: 12px; line-height: 20px; - color: ${Colors.THUNDER}; + color: ${Colors.GRAY}; margin: 0 4px; white-space: nowrap; `; diff --git a/app/client/src/constants/Colors.tsx b/app/client/src/constants/Colors.tsx index b3e9bbe418..0099b1ee0f 100644 --- a/app/client/src/constants/Colors.tsx +++ b/app/client/src/constants/Colors.tsx @@ -29,7 +29,7 @@ export const Colors: Record = { TUNDORA: "#404040", DOVE_GRAY: "#6D6D6D", SLATE_GRAY: "#768896", - SILVER_CHALICE: "#9F9F9F", + SILVER_CHALICE: "#A9A7A7", PORCELAIN: "#EBEEF0", HIT_GRAY: "#A1ACB3", JUNGLE_MIST: "#BCCCD9", @@ -61,7 +61,7 @@ export const Colors: Record = { TROUT_DARK: "#535B62", ALABASTER: "#F9F8F8", WATUSI: "#FFE0D2", - GRAY: "#828282", + GRAY: "#858282", ATHENS_GRAY_DARKER: "#F8F9FA", POMEGRANATE: "#F44336", RIVER_BED: "#4A545B", @@ -75,6 +75,8 @@ export const Colors: Record = { Galliano: "#E0B30E", ROYAL_BLUE: "#457AE6", ALTO2: "#E0DEDE", + SEA_SHELL: "#F1F1F1", + DANUBE: "#6A86CE", }; export type Color = typeof Colors[keyof typeof Colors]; diff --git a/app/client/yarn.lock b/app/client/yarn.lock index a6af49a55e..3c5ddfd8d4 100644 --- a/app/client/yarn.lock +++ b/app/client/yarn.lock @@ -1621,7 +1621,6 @@ "@babel/runtime@7.4.5": version "7.4.5" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.4.5.tgz#582bb531f5f9dc67d2fcb682979894f75e253f12" - integrity sha512-TuI4qpWZP6lGOGIuGWtp9sPluqYICmbk8T/1vpSysqJxRPkudh/ofFWyqdcMsDf2s7KvDL4/YHgKyvcS3g9CJQ== dependencies: regenerator-runtime "^0.13.2" @@ -1634,14 +1633,12 @@ "@babel/runtime@^7.10.1", "@babel/runtime@^7.12.5": version "7.13.10" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.13.10.tgz#47d42a57b6095f4468da440388fdbad8bebf0d7d" - integrity sha512-4QPkjJq6Ns3V/RgpEahRk+AGfL0eO6RHHtTWoNNr5mO49G6B5+X6d6THgWEAvTrznU5xYpbAlVKRYcsCgh/Akw== dependencies: regenerator-runtime "^0.13.4" "@babel/runtime@^7.3.4": version "7.13.17" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.13.17.tgz#8966d1fc9593bf848602f0662d6b4d0069e3a7ec" - integrity sha512-NCdgJEelPTSh+FEFylhnP1ylq848l1z9t9N0j1Lfbcw0+KXGjsTvUmkxy+voLLXB5SOKMbLLx4jxYliGrYQseA== dependencies: regenerator-runtime "^0.13.4" @@ -1740,7 +1737,6 @@ "@blueprintjs/core@^3.43.0": version "3.43.0" resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-3.43.0.tgz#3d5977c52d99466c7d9952004504c2ecf3caa74d" - integrity sha512-96V905Jbmujh5p8bw6uMPFRvS3Xqvssr9kuD30SE7K1Dgp4SbRUjsKN2+hbIdwNpgQoyitDSocnssjL47w38XQ== dependencies: "@blueprintjs/icons" "^3.26.0" "@types/dom4" "^2.0.1" @@ -1781,7 +1777,6 @@ "@blueprintjs/icons@^3.26.0": version "3.26.0" resolved "https://registry.yarnpkg.com/@blueprintjs/icons/-/icons-3.26.0.tgz#d3f0aa0d35a9ebe8648db9651af364dfcc529d9f" - integrity sha512-1+yhYH1Fjj5qGx8drZUL2L1R42MiN0WVHTTKYqGEV9TAzhvFHCSZgALD7WNQa+FEibw/8B4U+79IRgUPJNEjow== dependencies: classnames "^2.2" tslib "~1.13.0" @@ -1789,7 +1784,6 @@ "@blueprintjs/popover2@^0.5.0": version "0.5.0" resolved "https://registry.yarnpkg.com/@blueprintjs/popover2/-/popover2-0.5.0.tgz#b9086a8cb85026467bc9df8661741555d61510a7" - integrity sha512-vVNQPFi3LWw/46AdRTDiV+YupwTlIwrHegBO6AHnHyZI9lei8DhcnPJ7LJjMUqN2r408Lg5aGDEurdRcQc8f1Q== dependencies: "@blueprintjs/core" "^3.43.0" "@popperjs/core" "^2.5.4" @@ -1885,7 +1879,6 @@ "@draft-js-plugins/editor@^4.1.0": version "4.1.0" resolved "https://registry.yarnpkg.com/@draft-js-plugins/editor/-/editor-4.1.0.tgz#1861fb257ba51ecbd031b8a3d84ee0809de1504e" - integrity sha512-i95uGF1GOFwP99qRCjtocGAYanULtkX9/XPeXKwjKx65vnOt/0dvBBdSvzSgrJ9pncHHLUqDfFQKXy/09fTmvg== dependencies: immutable "~3.7.4" prop-types "^15.5.8" @@ -1893,7 +1886,6 @@ "@draft-js-plugins/mention@^4.3.2": version "4.3.2" resolved "https://registry.yarnpkg.com/@draft-js-plugins/mention/-/mention-4.3.2.tgz#f72a5a9c62fd5dec4b33138d98595feeb692801f" - integrity sha512-VdYLhvWRIOoMouKrixn2K9z54t9/neaX+i6Apyf9D/RZl6U8tvGPuB5bFJD+R4tVYH2i9NW62UpiSxaiwW5OBQ== dependencies: clsx "^1.0.4" immutable "~3.7.4" @@ -2377,7 +2369,6 @@ "@jest/types@^26.6.2": version "26.6.2" resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" - integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== dependencies: "@types/istanbul-lib-coverage" "^2.0.0" "@types/istanbul-reports" "^3.0.0" @@ -2439,7 +2430,6 @@ "@mswjs/cookies@^0.1.4": version "0.1.4" resolved "https://registry.yarnpkg.com/@mswjs/cookies/-/cookies-0.1.4.tgz#85ef872997eea2acd888f21af0b2067224dac244" - integrity sha512-gdtmSv21D4wHTnqF4rrZVX6ye7mQ4nRCTIHYnHBr4SkgoXaiqe3sMvUzXm43+H4PnL0EAKvUTxRVSSXz2xebeg== dependencies: "@types/set-cookie-parser" "^2.4.0" set-cookie-parser "^2.4.6" @@ -2447,7 +2437,6 @@ "@mswjs/interceptors@^0.8.0": version "0.8.1" resolved "https://registry.yarnpkg.com/@mswjs/interceptors/-/interceptors-0.8.1.tgz#8ef43a8b7b25c7b9a2bac67b3702167e25e5fc07" - integrity sha512-OI9FYmtURESZG3QDNz4Yt3osy3HY4T3FjlRw+AG4QS1UDdTSZ0tuPFAkp23nGR9ojmbSSj4gSMjf5+R8Oi/qtQ== dependencies: "@open-draft/until" "^1.0.3" debug "^4.3.0" @@ -2485,7 +2474,6 @@ "@open-draft/until@^1.0.3": version "1.0.3" resolved "https://registry.yarnpkg.com/@open-draft/until/-/until-1.0.3.tgz#db9cc719191a62e7d9200f6e7bab21c5b848adca" - integrity sha512-Aq58f5HiWdyDlFffbbSjAlv596h/cOnt2DO1w3DOC7OJ5EHs0hd/nycJfiu9RJbT6Yk6F1knnRRXNSpxoIVZ9Q== "@optimizely/js-sdk-datafile-manager@^0.8.0": version "0.8.0" @@ -2545,7 +2533,6 @@ "@popperjs/core@^2.5.4": version "2.9.2" resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.9.2.tgz#adea7b6953cbb34651766b0548468e743c6a2353" - integrity sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q== "@reach/router@^1.2.1": version "1.3.4" @@ -2632,7 +2619,6 @@ "@sentry/browser@6.2.4": version "6.2.4" resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-6.2.4.tgz#b74757b1f76e7a525e6eaca39668db36db82cb21" - integrity sha512-OV1CQUxNawncpSEcrA+YccOu72rLC0tyYq/Pc4D/ihpfJmvR0o0L8vZYESay55V5lcqnJPFp8IyCJ2bF8IZTsA== dependencies: "@sentry/core" "6.2.4" "@sentry/types" "6.2.4" @@ -2652,7 +2638,6 @@ "@sentry/core@6.2.4": version "6.2.4" resolved "https://registry.yarnpkg.com/@sentry/core/-/core-6.2.4.tgz#613102074208958c580df4e7e06e9aa6b4d5f40c" - integrity sha512-8Z98OTM4wFS2n3T+V8a6cYWHDAk1byWuMb8JquZLdYgR5O1jkSpSFrhksQ+B/wDbVw05VOolSNFJsDTC2D5qXg== dependencies: "@sentry/hub" "6.2.4" "@sentry/minimal" "6.2.4" @@ -2663,7 +2648,6 @@ "@sentry/hub@6.2.4": version "6.2.4" resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-6.2.4.tgz#0e25b851dc04b806713c8d878b1e11696ccf47ea" - integrity sha512-dY8Vj3c4oIirNNNzWkJvoRMzjlU8Nw3PJ/IwhdWjiQhj5/oqOzJwJQSMeOKdOGIhArAifr0hSXdy1+tHGEOOdQ== dependencies: "@sentry/types" "6.2.4" "@sentry/utils" "6.2.4" @@ -2672,7 +2656,6 @@ "@sentry/minimal@6.2.4": version "6.2.4" resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-6.2.4.tgz#7d8d490b0942e14cde544c0a77550693e4702d97" - integrity sha512-KN+Abbz5CCAceSMvwymSG8GIVPaz4Y/xuY7R7dA8IlzncHaWRQ/Ss0PXjYUWL4YoTlTK6id1AW0i3JMICHMVgw== dependencies: "@sentry/hub" "6.2.4" "@sentry/types" "6.2.4" @@ -2681,7 +2664,6 @@ "@sentry/react@^6.2.4": version "6.2.4" resolved "https://registry.yarnpkg.com/@sentry/react/-/react-6.2.4.tgz#7d5a67a6e5f01238bf88e91433841da5180916f0" - integrity sha512-0TqM51HwnAUoDSYyK38Bq/m6xLqWHsOL98Uu4HoMMmx6VXW1xf1UDxhjmIQFfjWfYT5tlld0CoDRfTJJlc82Ow== dependencies: "@sentry/browser" "6.2.4" "@sentry/minimal" "6.2.4" @@ -2693,7 +2675,6 @@ "@sentry/tracing@^6.2.4": version "6.2.4" resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-6.2.4.tgz#4af650c180a41b72e130c7b92838fa9d1040792e" - integrity sha512-FNPTd22Q487SVyGM4BXlVeeRwPr9CG0OV8bz+GRHQtpVDhL+zdkGlIJYbxZnrOcdyYNVgLCJUPDHqyv55nhU4A== dependencies: "@sentry/hub" "6.2.4" "@sentry/minimal" "6.2.4" @@ -2704,12 +2685,10 @@ "@sentry/types@6.2.4": version "6.2.4" resolved "https://registry.yarnpkg.com/@sentry/types/-/types-6.2.4.tgz#5974e64f000e6084d92d752e6ca199dc2ef4438f" - integrity sha512-c+vEExoj8H67NPaskTvxJBSAtDWzfFXOmlkicEZPUWbkL+Yxxlbzp1lI8K6GOks56UYMUBUU/fwQvv/34cO96g== "@sentry/utils@6.2.4": version "6.2.4" resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-6.2.4.tgz#ab6a0bdfa2a32428f6b1ee87082d9bd40a226b11" - integrity sha512-lavbb3yQMUleVffmDkPH7X3dlgbXlyiFNmfER+swJ6WRxa4Yq6I8yea2s6maoqnZMhZe+yztn455DPwXIItfCA== dependencies: "@sentry/types" "6.2.4" tslib "^1.9.3" @@ -3474,7 +3453,6 @@ "@testing-library/dom@^7.28.1": version "7.30.1" resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-7.30.1.tgz#07b6f3ccd7f1f1e34ab0406932073e2971817f3d" - integrity sha512-RQUvqqq2lxTCOffhSNxpX/9fCoR+nwuQPmG5uhuuEH5KBAzNf2bK3OzBoWjm5zKM78SLjnGRAKt8hRjQA4E46A== dependencies: "@babel/code-frame" "^7.10.4" "@babel/runtime" "^7.12.5" @@ -3501,7 +3479,6 @@ "@testing-library/react@^11.2.6": version "11.2.6" resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-11.2.6.tgz#586a23adc63615985d85be0c903f374dab19200b" - integrity sha512-TXMCg0jT8xmuU8BkKMtp8l7Z50Ykew5WNX8UoIKTaLFwKkP2+1YDhOLA2Ga3wY4x29jyntk7EWfum0kjlYiSjQ== dependencies: "@babel/runtime" "^7.12.5" "@testing-library/dom" "^7.28.1" @@ -3509,7 +3486,6 @@ "@testing-library/user-event@^13.1.1": version "13.1.1" resolved "https://registry.yarnpkg.com/@testing-library/user-event/-/user-event-13.1.1.tgz#1e011de944cf4d2a917cef6c3046c26389943e24" - integrity sha512-B4roX+0mpXKGj8ndd38YoIo3IV9pmTTWxr/2cOke5apTtrNabEUE0KMBccpcAcYlfPcr7uMu+dxeeC3HdXd9qQ== dependencies: "@babel/runtime" "^7.12.5" @@ -3581,12 +3557,10 @@ "@types/component-emitter@^1.2.10": version "1.2.10" resolved "https://registry.yarnpkg.com/@types/component-emitter/-/component-emitter-1.2.10.tgz#ef5b1589b9f16544642e473db5ea5639107ef3ea" - integrity sha512-bsjleuRKWmGqajMerkzox19aGbscQX5rmmvvXl3wlIp5gMG1HgkiwPxsN5p070fBDKTNSPgojVbuY1+HWMbFhg== "@types/cookie@^0.4.0": version "0.4.0" resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.4.0.tgz#14f854c0f93d326e39da6e3b6f34f7d37513d108" - integrity sha512-y7mImlc/rNkvCRmg8gC3/lj87S7pTUIJ6QGjwHR9WQJcFs+ZMTOaoPrkdFA/YdbuqVEmEbb5RdhVxMkAcgOnpg== "@types/deep-diff@^1.0.0": version "1.0.0" @@ -3603,7 +3577,6 @@ "@types/draft-js@^0.11.1": version "0.11.1" resolved "https://registry.yarnpkg.com/@types/draft-js/-/draft-js-0.11.1.tgz#f67920c9583054143e263704e250dd3086de3ef3" - integrity sha512-jV4LAXYdVvS0ahIROZehkKqHgfLxaDBl3fzfEVqho8NxFAtEaObdIiu7FpPUu/Y97PlJVxGajar7aSikQqz9sQ== dependencies: "@types/react" "*" immutable "~3.7.4" @@ -3664,7 +3637,6 @@ "@types/inquirer@^7.3.1": version "7.3.1" resolved "https://registry.yarnpkg.com/@types/inquirer/-/inquirer-7.3.1.tgz#1f231224e7df11ccfaf4cf9acbcc3b935fea292d" - integrity sha512-osD38QVIfcdgsPCT0V3lD7eH0OFurX71Jft18bZrsVQWVRt6TuxRzlr0GJLrxoHZR2V5ph7/qP8se/dcnI7o0g== dependencies: "@types/through" "*" rxjs "^6.4.0" @@ -3716,7 +3688,6 @@ "@types/js-levenshtein@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@types/js-levenshtein/-/js-levenshtein-1.1.0.tgz#9541eec4ad6e3ec5633270a3a2b55d981edc44a9" - integrity sha512-14t0v1ICYRtRVcHASzes0v/O+TIeASb8aD55cWF1PidtInhFWSXcmhzhHqGjUWf9SUq1w70cvd1cWKUULubAfQ== "@types/json-schema@*", "@types/json-schema@^7.0.3", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6": version "7.0.6" @@ -3907,7 +3878,6 @@ "@types/react-test-renderer@^17.0.1": version "17.0.1" resolved "https://registry.yarnpkg.com/@types/react-test-renderer/-/react-test-renderer-17.0.1.tgz#3120f7d1c157fba9df0118dae20cb0297ee0e06b" - integrity sha512-3Fi2O6Zzq/f3QR9dRnlnHso9bMl7weKCviFmfF6B4LS1Uat6Hkm15k0ZAQuDz+UBq6B3+g+NM6IT2nr5QgPzCw== dependencies: "@types/react" "*" @@ -3964,7 +3934,6 @@ "@types/set-cookie-parser@^2.4.0": version "2.4.0" resolved "https://registry.yarnpkg.com/@types/set-cookie-parser/-/set-cookie-parser-2.4.0.tgz#10cc0446bad372827671a5195fbd14ebce4a9baf" - integrity sha512-w7BFUq81sy7H/0jN0K5cax8MwRN6NOSURpY4YuO4+mOgoicxCZ33BUYz+gyF/sUf7uDl2We2yGJfppxzEXoAXQ== dependencies: "@types/node" "*" @@ -4032,7 +4001,6 @@ "@types/through@*": version "0.0.30" resolved "https://registry.yarnpkg.com/@types/through/-/through-0.0.30.tgz#e0e42ce77e897bd6aead6f6ea62aeb135b8a3895" - integrity sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg== dependencies: "@types/node" "*" @@ -4093,10 +4061,13 @@ dependencies: "@types/yargs-parser" "*" +"@types/zipcelx@^1.5.0": + version "1.5.0" + resolved "https://registry.yarnpkg.com/@types/zipcelx/-/zipcelx-1.5.0.tgz#e06e9ed51fadbc7fbcf15fbeb2bcbf446750c72e" + "@typescript-eslint/eslint-plugin@^4.15.0": version "4.15.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.15.1.tgz#835f64aa0a403e5e9e64c10ceaf8d05c3f015180" - integrity sha512-yW2epMYZSpNJXZy22Biu+fLdTG8Mn6b22kR3TqblVk50HGNV8Zya15WAXuQCr8tKw4Qf1BL4QtI6kv6PCkLoJw== dependencies: "@typescript-eslint/experimental-utils" "4.15.1" "@typescript-eslint/scope-manager" "4.15.1" @@ -4122,7 +4093,6 @@ "@typescript-eslint/experimental-utils@4.15.1": version "4.15.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.15.1.tgz#d744d1ac40570a84b447f7aa1b526368afd17eec" - integrity sha512-9LQRmOzBRI1iOdJorr4jEnQhadxK4c9R2aEAsm7WE/7dq8wkKD1suaV0S/JucTL8QlYUPU1y2yjqg+aGC0IQBQ== dependencies: "@types/json-schema" "^7.0.3" "@typescript-eslint/scope-manager" "4.15.1" @@ -4155,7 +4125,6 @@ "@typescript-eslint/parser@^4.15.0": version "4.15.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.15.1.tgz#4c91a0602733db63507e1dbf13187d6c71a153c4" - integrity sha512-V8eXYxNJ9QmXi5ETDguB7O9diAXlIyS+e3xzLoP/oVE4WCAjssxLIa0mqCLsCGXulYJUfT+GV70Jv1vHsdKwtA== dependencies: "@typescript-eslint/scope-manager" "4.15.1" "@typescript-eslint/types" "4.15.1" @@ -4174,7 +4143,6 @@ "@typescript-eslint/scope-manager@4.15.1": version "4.15.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.15.1.tgz#f6511eb38def2a8a6be600c530c243bbb56ac135" - integrity sha512-ibQrTFcAm7yG4C1iwpIYK7vDnFg+fKaZVfvyOm3sNsGAerKfwPVFtYft5EbjzByDJ4dj1WD8/34REJfw/9wdVA== dependencies: "@typescript-eslint/types" "4.15.1" "@typescript-eslint/visitor-keys" "4.15.1" @@ -4193,7 +4161,6 @@ "@typescript-eslint/types@4.15.1": version "4.15.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.15.1.tgz#da702f544ef1afae4bc98da699eaecd49cf31c8c" - integrity sha512-iGsaUyWFyLz0mHfXhX4zO6P7O3sExQpBJ2dgXB0G5g/8PRVfBBsmQIc3r83ranEQTALLR3Vko/fnCIVqmH+mPw== "@typescript-eslint/types@4.6.0": version "4.6.0" @@ -4215,7 +4182,6 @@ "@typescript-eslint/typescript-estree@4.15.1": version "4.15.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.15.1.tgz#fa9a9ff88b4a04d901ddbe5b248bc0a00cd610be" - integrity sha512-z8MN3CicTEumrWAEB2e2CcoZa3KP9+SMYLIA2aM49XW3cWIaiVSOAGq30ffR5XHxRirqE90fgLw3e6WmNx5uNw== dependencies: "@typescript-eslint/types" "4.15.1" "@typescript-eslint/visitor-keys" "4.15.1" @@ -4247,7 +4213,6 @@ "@typescript-eslint/visitor-keys@4.15.1": version "4.15.1" resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.15.1.tgz#c76abbf2a3be8a70ed760f0e5756bf62de5865dd" - integrity sha512-tYzaTP9plooRJY8eNlpAewTOqtWW/4ff/5wBjNVaJ0S0wC4Gpq/zDVRTJa5bq2v1pCNQ08xxMCndcvR+h7lMww== dependencies: "@typescript-eslint/types" "4.15.1" eslint-visitor-keys "^2.0.0" @@ -5498,7 +5463,6 @@ babylon@^6.18.0: backo2@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" - integrity sha1-MasayLEpNjRj41s+u2n038+6eUc= bail@^1.0.0: version "1.0.5" @@ -5515,7 +5479,6 @@ base16@^1.0.0: base64-arraybuffer@0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz#9818c79e059b1355f97e0428a017c838e90ba812" - integrity sha1-mBjHngWbE1X5fgQooBfIOOkLqBI= base64-js@^1.0.2: version "1.3.1" @@ -5981,7 +5944,6 @@ caniuse-lite@^1.0.30001125: caniuse-lite@^1.0.30001208: version "1.0.30001208" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001208.tgz#a999014a35cebd4f98c405930a057a0d75352eb9" - integrity sha512-OE5UE4+nBOro8Dyvv0lfx+SRtfVIOM9uhKqFmJeUbGriqhhStgp1A0OyBpgy3OUF8AhYCT+PVwPC1gMl2ZcQMA== capture-exit@^2.0.0: version "2.0.0" @@ -6128,7 +6090,6 @@ chokidar@^3.4.1: chokidar@^3.4.2: version "3.5.1" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" - integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== dependencies: anymatch "~3.1.1" braces "~3.0.2" @@ -6281,7 +6242,6 @@ cliui@^6.0.0: cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" - integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== dependencies: string-width "^4.2.0" strip-ansi "^6.0.0" @@ -6537,7 +6497,6 @@ cookie@0.4.0: cookie@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1" - integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== copy-concurrently@^1.0.0: version "1.0.5" @@ -6586,7 +6545,6 @@ core-js@^3.0.1, core-js@^3.0.4, core-js@^3.6.5: core-js@^3.6.4: version "3.10.1" resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.10.1.tgz#e683963978b6806dcc6c0a4a8bd4ab0bdaf3f21a" - integrity sha512-pwCxEXnj27XG47mu7SXAwhLP3L5CrlvCB91ANUkIz40P27kUcvNfSdvyZJ9CLHiVoKSp+TTChMQMSKQEH/IQxA== core-js@^3.9.1: version "3.9.1" @@ -6670,7 +6628,6 @@ create-react-context@0.3.0, create-react-context@^0.3.0: cross-fetch@^3.0.4: version "3.1.4" resolved "https://registry.yarnpkg.com/cross-fetch/-/cross-fetch-3.1.4.tgz#9723f3a3a247bf8b89039f3a380a9244e8fa2f39" - integrity sha512-1eAtFWdIubi6T4XPy6ei9iUFoKpUkIF971QLN8lIvvvwueI65+Nw5haMNKUwfJxabqlIIDODJKGrQ66gxC0PbQ== dependencies: node-fetch "2.6.1" @@ -6886,7 +6843,6 @@ cssesc@^3.0.0: cssfontparser@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/cssfontparser/-/cssfontparser-1.2.1.tgz#f4022fc8f9700c68029d542084afbaf425a3f3e3" - integrity sha1-9AIvyPlwDGgCnVQghK+69CWj8+M= cssnano-preset-default@^4.0.7: version "4.0.7" @@ -7113,7 +7069,6 @@ debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1: debug@^4.3.0, debug@~4.3.1: version "4.3.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" - integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== dependencies: ms "2.1.2" @@ -7376,7 +7331,6 @@ doctypes@^1.1.0: dom-accessibility-api@^0.5.4: version "0.5.4" resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.4.tgz#b06d059cdd4a4ad9a79275f9d414a5c126241166" - integrity sha512-TvrjBckDy2c6v6RLxPv5QXOnU+SmF9nBII5621Ve5fu6Z/BDrENurBEvlC1f44lKEUVqOpK4w9E5Idc5/EgkLQ== dom-converter@^0.2: version "0.2.0" @@ -7502,7 +7456,6 @@ downloadjs@^1.4.7: draft-js@^0.11.7: version "0.11.7" resolved "https://registry.yarnpkg.com/draft-js/-/draft-js-0.11.7.tgz#be293aaa255c46d8a6647f3860aa4c178484a206" - integrity sha512-ne7yFfN4sEL82QPQEn80xnADR8/Q6ALVworbC5UOSzOvjffmYfFsr3xSZtxbIirti14R7Y33EZC5rivpLgIbsg== dependencies: fbjs "^2.0.0" immutable "~3.7.4" @@ -7579,7 +7532,6 @@ emittery@^0.7.1: emoji-picker-react@^3.4.2: version "3.4.2" resolved "https://registry.yarnpkg.com/emoji-picker-react/-/emoji-picker-react-3.4.2.tgz#593179b2fba3de99fae639f4519d25f43c6b8f15" - integrity sha512-KFtPFmP0akcb9dHIloJ7Ln/0EARQjjDli9JkKpfWglVpxnMRT2F1FIZQnFeDJoRy2mjsg/KLUKj2nay8qnjv+w== "emoji-regex@>=6.0.0 <=6.1.1": version "6.1.1" @@ -7640,7 +7592,6 @@ endent@^2.0.1: engine.io-client@~5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/engine.io-client/-/engine.io-client-5.0.0.tgz#65733887c8999d280e1dd7f241779a2c66e9559e" - integrity sha512-e6GK0Fqvq45Nu/j7YdIVqXtDPvlsggAcfml3QiEiGdJ1qeh7IQU6knxSN3+yy9BmbnXtIfjo1hK4MFyHKdc9mQ== dependencies: base64-arraybuffer "0.1.4" component-emitter "~1.3.0" @@ -7655,7 +7606,6 @@ engine.io-client@~5.0.0: engine.io-parser@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/engine.io-parser/-/engine.io-parser-4.0.2.tgz#e41d0b3fb66f7bf4a3671d2038a154024edb501e" - integrity sha512-sHfEQv6nmtJrq6TKuIz5kyEKH/qSdK56H/A+7DnAuUPWosnIZAS2NHNcPLmyjtY3cGS/MqJdZbUjW97JU72iYg== dependencies: base64-arraybuffer "0.1.4" @@ -8120,7 +8070,6 @@ events@^3.0.0: events@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" - integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== eventsource@^1.0.7: version "1.0.7" @@ -8333,7 +8282,6 @@ extsprintf@^1.2.0: factory.ts@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/factory.ts/-/factory.ts-0.5.1.tgz#4bab72d8457078906aa6ab396c0d341e8a3ab382" - integrity sha512-jwAq8w7MmxUojIFzKezMwTzDc5QoxcqzAA8+n9A0EAWBje2CRHUeBrW9x/ioV2DRjHgkHX7i0G0ipfDhlatIQw== dependencies: clone-deep "^4.0.1" source-map-support "^0.5.9" @@ -8427,7 +8375,6 @@ fbemitter@^2.0.0: fbjs-css-vars@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz#216551136ae02fe255932c3ec8775f18e2c078b8" - integrity sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ== fbjs@^0.8.0, fbjs@^0.8.1, fbjs@^0.8.4: version "0.8.17" @@ -8444,7 +8391,6 @@ fbjs@^0.8.0, fbjs@^0.8.1, fbjs@^0.8.4: fbjs@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-2.0.0.tgz#01fb812138d7e31831ed3e374afe27b9169ef442" - integrity sha512-8XA8ny9ifxrAWlyhAbexXcs3rRMtxWcs3M0lctLfB49jRDHiaxj+Mo0XxbwE7nKZYzgCFoq64FS+WFd4IycPPQ== dependencies: core-js "^3.6.4" cross-fetch "^3.0.4" @@ -8464,7 +8410,6 @@ fd-slicer@~1.1.0: figgy-pudding@^3.5.1: version "3.5.2" resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" - integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== figures@^1.7.0: version "1.7.0" @@ -8505,6 +8450,10 @@ file-loader@^4.2.0: loader-utils "^1.2.3" schema-utils "^2.5.0" +file-saver@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/file-saver/-/file-saver-2.0.5.tgz#d61cfe2ce059f414d899e9dd6d4107ee25670c38" + file-system-cache@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/file-system-cache/-/file-system-cache-1.0.5.tgz#84259b36a2bbb8d3d6eb1021d3132ffe64cfff4f" @@ -8804,7 +8753,6 @@ fsevents@^2.1.2, fsevents@^2.1.3, fsevents@~2.1.1, fsevents@~2.1.2: fsevents@~2.3.1: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== fstream@^1.0.0, fstream@^1.0.12: version "1.0.12" @@ -9114,7 +9062,6 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6 graphql@^15.4.0: version "15.5.0" resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.0.tgz#39d19494dbe69d1ea719915b578bf920344a69d5" - integrity sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA== growl@1.10.5: version "1.10.5" @@ -9163,7 +9110,6 @@ has-ansi@^2.0.0: has-cors@1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/has-cors/-/has-cors-1.1.0.tgz#5e474793f7ea9843d1bb99c23eef49ff126fff39" - integrity sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk= has-flag@^3.0.0: version "3.0.0" @@ -9305,7 +9251,6 @@ he@1.2.0, he@^1.2.0: headers-utils@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/headers-utils/-/headers-utils-3.0.2.tgz#dfc65feae4b0e34357308aefbcafa99c895e59ef" - integrity sha512-xAxZkM1dRyGV2Ou5bzMxBPNLoRCjcX+ya7KSWybQD2KwLphxsapUVK6x/02o7f4VU6GPSXch9vNY2+gkU8tYWQ== hex-color-regex@^1.1.0: version "1.1.0" @@ -9599,7 +9544,6 @@ immer@^8.0.1: immutable@~3.7.4: version "3.7.6" resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.7.6.tgz#13b4d3cb12befa15482a26fe1b2ebae640071e4b" - integrity sha1-E7TTyxK++hVIKib+Gy665kAHHks= import-cwd@^2.0.0: version "2.1.0" @@ -10320,7 +10264,6 @@ jake@^10.6.1: jest-canvas-mock@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/jest-canvas-mock/-/jest-canvas-mock-2.3.1.tgz#9535d14bc18ccf1493be36ac37dd349928387826" - integrity sha512-5FnSZPrX3Q2ZfsbYNE3wqKR3+XorN8qFzDzB5o0golWgt6EOX1+emBnpOc9IAQ+NXFj8Nzm3h7ZdE/9H0ylBcg== dependencies: cssfontparser "^1.2.1" moo-color "^1.0.2" @@ -10749,7 +10692,6 @@ jest-util@^24.9.0: jest-util@^26.1.0: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" - integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== dependencies: "@jest/types" "^26.6.2" "@types/node" "*" @@ -10841,7 +10783,6 @@ js-base64@^2.1.8: js-levenshtein@^1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/js-levenshtein/-/js-levenshtein-1.1.6.tgz#c6cee58eb3550372df8deb85fad5ce66ce01d59d" - integrity sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g== js-sha256@^0.9.0: version "0.9.0" @@ -11034,6 +10975,15 @@ jstransformer@1.0.0: array-includes "^3.1.1" object.assign "^4.1.1" +jszip@^3.1.3: + version "3.6.0" + resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.6.0.tgz#839b72812e3f97819cc13ac4134ffced95dd6af9" + dependencies: + lie "~3.3.0" + pako "~1.0.2" + readable-stream "~2.3.6" + set-immediate-shim "~1.0.1" + killable@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/killable/-/killable-1.0.1.tgz#4c8ce441187a061c7474fb87ca08e2a638194892" @@ -11143,6 +11093,12 @@ lie@3.1.1: dependencies: immediate "~3.0.5" +lie@~3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/lie/-/lie-3.3.0.tgz#dcf82dee545f46074daf200c7c1c5a08e0f40f6a" + dependencies: + immediate "~3.0.5" + line-column@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/line-column/-/line-column-1.0.2.tgz#d25af2936b6f4849172b312e4792d1d987bc34a2" @@ -11306,7 +11262,6 @@ lodash-es@4.17.14: lodash-es@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" - integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== lodash-move@^1.1.1: version "1.1.1" @@ -11330,6 +11285,10 @@ lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" +lodash.escape@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98" + lodash.flow@^3.3.0: version "3.5.0" resolved "https://registry.yarnpkg.com/lodash.flow/-/lodash.flow-3.5.0.tgz#87bf40292b8cf83e4e8ce1a3ae4209e20071675a" @@ -11390,7 +11349,6 @@ lodash.uniq@4.5.0, lodash.uniq@^4.5.0: lodash@4.x, lodash@^4.6.1: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== "lodash@>=3.5 <5", lodash@^4, lodash@^4.0.0, lodash@^4.0.1, lodash@^4.16.2, lodash@^4.17.11, lodash@^4.17.12, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.5, lodash@~4.17.10: version "4.17.20" @@ -12013,7 +11971,6 @@ moment-timezone@*, moment-timezone@^0.5.27, moment-timezone@^0.5.31: moo-color@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/moo-color/-/moo-color-1.0.2.tgz#837c40758d2d58763825d1359a84e330531eca64" - integrity sha512-5iXz5n9LWQzx/C2WesGFfpE6RLamzdHwsn3KpfzShwbfIqs7stnoEpaNErf/7+3mbxwZ4s8Foq7I0tPxw7BWHg== dependencies: color-name "^1.1.4" @@ -12043,7 +12000,6 @@ ms@2.1.2, ms@^2.1.1: msw@^0.28.0: version "0.28.0" resolved "https://registry.yarnpkg.com/msw/-/msw-0.28.0.tgz#abed17416f59241a2100fe6c8740cc1c9a32339b" - integrity sha512-Hh+dPp613tethIFwNg90lvAzrW9T0U39D6AYzV8qIOAWskP49CErrqVWZnmPDQC87o69GzZ9Hl3RGz/65mms3A== dependencies: "@mswjs/cookies" "^0.1.4" "@mswjs/interceptors" "^0.8.0" @@ -12245,7 +12201,6 @@ node-libs-browser@^2.2.1: node-match-path@^0.6.1: version "0.6.2" resolved "https://registry.yarnpkg.com/node-match-path/-/node-match-path-0.6.2.tgz#29a05ed7eda4d325f29d7abb088c12bbf1578e87" - integrity sha512-2VYsUKiovaCZDq1t/3kEqh09743H91WE6B3RzSdjsKh+S/a5z+LQoujMI1JI/RYXqNKFvoqMfye1H0g3Dg9u+g== node-modules-regexp@^1.0.0: version "1.0.0" @@ -12690,7 +12645,7 @@ paging-algorithm@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/paging-algorithm/-/paging-algorithm-1.0.1.tgz#18abe482a6a202bfaab4b023a407c8cc2072cb8a" -pako@~1.0.5: +pako@~1.0.2, pako@~1.0.5: version "1.0.11" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.11.tgz#6c9599d340d54dfd3946380252a35705a6b992bf" @@ -12780,12 +12735,10 @@ parse5@^6.0.0: parseqs@0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/parseqs/-/parseqs-0.0.6.tgz#8e4bb5a19d1cdc844a08ac974d34e273afa670d5" - integrity sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w== parseuri@0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/parseuri/-/parseuri-0.0.6.tgz#e1496e829e3ac2ff47f39a4dd044b32823c4a25a" - integrity sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow== parseurl@~1.3.2, parseurl@~1.3.3: version "1.3.3" @@ -13698,7 +13651,6 @@ pretty-format@^26.6.0, pretty-format@^26.6.1: pretty-format@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" - integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== dependencies: "@jest/types" "^26.6.2" ansi-regex "^5.0.0" @@ -14070,7 +14022,6 @@ raw-loader@^4.0.2: rc-pagination@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/rc-pagination/-/rc-pagination-3.1.3.tgz#afd779839fefab2cb14248d5e7b74027960bb48b" - integrity sha512-Z7CdC4xGkedfAwcUHPtfqNhYwVyDgkmhkvfsmoByCOwAd89p42t5O5T3ORar1wRmVWf3jxk/Bf4k0atenNvlFA== dependencies: "@babel/runtime" "^7.10.1" classnames "^2.2.1" @@ -14426,7 +14377,6 @@ react-lifecycles-compat@^3.0.4: react-mentions@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/react-mentions/-/react-mentions-4.1.1.tgz#9f74928f7a33d587151e95dc7ef303f2002790de" - integrity sha512-+BK8dQzXPZUBFYfbv1hwbve9lp0lGYHOUyb1hk9s13mzvmVD9S+l9oszo1CaumVjYdb9olJ4NMJW2jBRGck9Rw== dependencies: "@babel/runtime" "7.4.5" invariant "^2.2.4" @@ -14482,7 +14432,6 @@ react-popper@^1.3.7: react-popper@^2.2.4: version "2.2.5" resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-2.2.5.tgz#1214ef3cec86330a171671a4fbcbeeb65ee58e96" - integrity sha512-kxGkS80eQGtLl18+uig1UIf9MKixFSyPxglsgLBxlYnyDf65BiY9B3nZSc6C9XUNDgStROB0fMQlTEz1KxGddw== dependencies: react-fast-compare "^3.0.1" warning "^4.0.2" @@ -15547,7 +15496,6 @@ semver@7.3.2: semver@7.x: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" - integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== dependencies: lru-cache "^6.0.0" @@ -15633,7 +15581,10 @@ set-blocking@^2.0.0, set-blocking@~2.0.0: set-cookie-parser@^2.4.6: version "2.4.8" resolved "https://registry.yarnpkg.com/set-cookie-parser/-/set-cookie-parser-2.4.8.tgz#d0da0ed388bc8f24e706a391f9c9e252a13c58b2" - integrity sha512-edRH8mBKEWNVIVMKejNnuJxleqYE/ZSdcT8/Nem9/mmosx12pctd80s2Oy00KNZzrogMZS5mauK2/ymL1bvlvg== + +set-immediate-shim@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" set-value@^2.0.0, set-value@^2.0.1: version "2.0.1" @@ -15825,7 +15776,6 @@ snapdragon@^0.8.1: socket.io-client@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/socket.io-client/-/socket.io-client-4.0.0.tgz#643cc25e5b5bbe37be75ecd317156a3335bb495a" - integrity sha512-27yQxmXJAEYF19Ygyl8FPJ0if0wegpSmkIIbrWJeI7n7ST1JyH8bbD5v3fjjGY5cfCanACJ3dARUAyiVFNrlTQ== dependencies: "@types/component-emitter" "^1.2.10" backo2 "~1.0.2" @@ -15838,7 +15788,6 @@ socket.io-client@^4.0.0: socket.io-parser@~4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/socket.io-parser/-/socket.io-parser-4.0.4.tgz#9ea21b0d61508d18196ef04a2c6b9ab630f4c2b0" - integrity sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g== dependencies: "@types/component-emitter" "^1.2.10" component-emitter "~1.3.0" @@ -16014,7 +15963,6 @@ sshpk@^1.7.0: ssri@^6.0.1: version "6.0.2" resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz#157939134f20464e7301ddba3e90ffa8f7728ac5" - integrity sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q== dependencies: figgy-pudding "^3.5.1" @@ -16067,7 +16015,6 @@ static-extend@^0.1.1: statuses@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== stdout-stream@^1.4.0: version "1.4.1" @@ -16120,12 +16067,10 @@ stream-shift@^1.0.0: strict-event-emitter@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/strict-event-emitter/-/strict-event-emitter-0.1.0.tgz#fd742c1fb7e3852f0b964ecdae2d7666a6fb7ef8" - integrity sha512-8hSYfU+WKLdNcHVXJ0VxRXiPESalzRe7w1l8dg9+/22Ry+iZQUoQuoJ27R30GMD1TiyYINWsIEGY05WrskhSKw== strict-event-emitter@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/strict-event-emitter/-/strict-event-emitter-0.2.0.tgz#78e2f75dc6ea502e5d8a877661065a1e2deedecd" - integrity sha512-zv7K2egoKwkQkZGEaH8m+i2D0XiKzx5jNsiSul6ja2IYFvil10A59Z9Y7PPAAe5OW53dQUf9CfsHKzjZzKkm1w== dependencies: events "^3.3.0" @@ -16376,7 +16321,6 @@ stylehacks@^4.0.0: substyle@^9.1.0: version "9.3.0" resolved "https://registry.yarnpkg.com/substyle/-/substyle-9.3.0.tgz#569af81723f74cd895b08b6b1e6bc06727f2a2bd" - integrity sha512-OK6A6EpqOfRvlwOnrgwFKIi8UDJwCQ2UB5cIJGMEFvl3zUUA83XDbRUJizECj66CdeZ9pGjkmwRxyc/9wBGQMA== dependencies: "@babel/runtime" "^7.3.4" invariant "^2.2.4" @@ -16827,7 +16771,6 @@ ts-dedent@^1.1.0: ts-jest@^26.5.4: version "26.5.4" resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.4.tgz#207f4c114812a9c6d5746dd4d1cdf899eafc9686" - integrity sha512-I5Qsddo+VTm94SukBJ4cPimOoFZsYTeElR2xy6H2TOVs+NsvgYglW8KuQgKoApOKuaU/Ix/vrF9ebFZlb5D2Pg== dependencies: bs-logger "0.x" buffer-from "1.x" @@ -16878,7 +16821,6 @@ tslib@^2.0.0, tslib@^2.0.1: tslib@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" - integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== tslib@~1.13.0: version "1.13.0" @@ -16984,7 +16926,6 @@ typescript-tuple@^2.2.1: typescript@^4.1.3: version "4.1.5" resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.1.5.tgz#123a3b214aaff3be32926f0d8f1f6e704eb89a72" - integrity sha512-6OSu9PTIzmn9TCDiovULTnET6BgXtDYL4Gg4szY+cGsc3JP1dQL8qvE8kShTRx1NIw4Q9IBHlwODjkjWEtMUyA== ua-parser-js@^0.7.18: version "0.7.22" @@ -17853,7 +17794,6 @@ wrap-ansi@^6.2.0: wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" string-width "^4.1.0" @@ -17907,7 +17847,6 @@ ws@^7.2.3: ws@~7.4.2: version "7.4.4" resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.4.tgz#383bc9742cb202292c9077ceab6f6047b17f2d59" - integrity sha512-Qm8k8ojNQIMx7S+Zp8u/uHOx7Qazv3Yv4q68MiWWWOJhiwG5W3x7iqmRtJo8xxrciZUY4vRxUTJCKuRnF28ZZw== xml-name-validator@^3.0.0: version "3.0.0" @@ -17928,12 +17867,10 @@ xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: y18n@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.1.tgz#8db2b83c31c5d75099bb890b23f3094891e247d4" - integrity sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ== y18n@^5.0.5: version "5.0.5" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" - integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== yallist@^2.1.2: version "2.1.2" @@ -17961,7 +17898,6 @@ yargs-parser@13.1.2, yargs-parser@^13.1.2: yargs-parser@20.x, yargs-parser@^20.2.2: version "20.2.7" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.7.tgz#61df85c113edfb5a7a4e36eb8aa60ef423cbc90a" - integrity sha512-FiNkvbeHzB/syOjIUxFDCnhSfzAL8R5vs40MgLFBorXACCOAEaWu0gRZl14vG8MR9AOJIZbmkjhusqBYZ3HTHw== yargs-parser@^15.0.1: version "15.0.1" @@ -18035,7 +17971,6 @@ yargs@^15.4.1: yargs@^16.2.0: version "16.2.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== dependencies: cliui "^7.0.2" escalade "^3.1.1" @@ -18055,7 +17990,14 @@ yauzl@^2.10.0: yeast@0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/yeast/-/yeast-0.1.2.tgz#008e06d8094320c372dbc2f8ed76a0ca6c8ac419" - integrity sha1-AI4G2AlDIMNy28L47XagymyKxBk= + +zipcelx@^1.6.2: + version "1.6.2" + resolved "https://registry.yarnpkg.com/zipcelx/-/zipcelx-1.6.2.tgz#ae99aa8c04f440d17c52fcdcbc6abc79d6993b3b" + dependencies: + file-saver "^2.0.0" + jszip "^3.1.3" + lodash.escape "^4.0.1" zwitch@^1.0.0: version "1.0.5"